Skip to content

fix(continuity): allow fm-watch-checkpoint.sh as a recovery command - #1216

Open
martinstroher wants to merge 1 commit into
kunchenguid:mainfrom
martinstroher:fm/fix-continuity-copilot
Open

fix(continuity): allow fm-watch-checkpoint.sh as a recovery command#1216
martinstroher wants to merge 1 commit into
kunchenguid:mainfrom
martinstroher:fm/fix-continuity-copilot

Conversation

@martinstroher

Copy link
Copy Markdown

The continuity gate RECOVERY_SCRIPTS only had fm-wake-drain.sh and fm-watch-arm.sh. Copilot/Codex primaries use fm-watch-checkpoint.sh for foreground supervision, but the gate blocked it — deadlocking spawning, steering, and teardown while any worker was in flight.

Changes:

  • bin/fm-continuity-command-policy.mjs: add fm-watch-checkpoint.sh to RECOVERY_SCRIPTS
  • bin/fm-continuity-pretool-check.sh: update denial message to mention both paths
  • tests/fm-continuity-pretool-check.test.sh: add expect_allow "watch checkpoint recovery" test case

All 4 tests pass, lint clean.

Adds fm-watch-checkpoint.sh to the RECOVERY_SCRIPTS allowlist in the
watcher-continuity PreToolUse gate so Copilot primaries can run foreground
supervision checkpoints when workers are in flight.

- fm-continuity-command-policy.mjs: add fm-watch-checkpoint.sh to RECOVERY_SCRIPTS
- fm-continuity-pretool-check.sh: update denial reason to mention both arm and
  checkpoint paths, with harness annotations (Claude/Grok vs Copilot/Codex)
- tests/fm-continuity-pretool-check.test.sh: add checkpoint recovery expect_allow
  case and update expected denial message
- .claude/settings.json: register fm-continuity-pretool-check.sh as a Bash
  PreToolUse hook so the gate is active for Claude sessions
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant