Skip to content

fix(spawn): refuse missing harness binaries before launch - #7

Merged
Amplify-Logic merged 4 commits into
mainfrom
fm/firstmate-spawn-binary-preflight-m6
Jul 20, 2026
Merged

Amplify-Logic merged 4 commits into
mainfrom
fm/firstmate-spawn-binary-preflight-m6

Conversation

@Amplify-Logic

Copy link
Copy Markdown
Owner

Summary

  • Fail closed in fm-spawn when a verified harness launch binary is missing or fails a cheap --version probe, before any pane/endpoint or task meta is created.
  • Resolve the binary through the shared backend executable resolver (same path as bootstrap) and surface a one-line refusal with the install hint.
  • Raw launch-command spawns stay exempt (documented in the script header): arbitrary shell syntax cannot be probed safely without executing the unverified command.
  • Colocated coverage in tests/fm-spawn-launch-preflight.test.sh for missing-binary refusal, healthy six-adapter spawn, raw-command exemption, and probe timeout/kill behavior.

Test plan

  • bash tests/fm-spawn-launch-preflight.test.sh (all cases passed locally)
  • Confirm healthy spawns still work for claude, codex, opencode, pi, grok, and cursor when their CLIs are present
  • Confirm a deliberate missing-CLI spawn refuses loudly with the install hint and leaves no dead pane

Amplify-Logic and others added 4 commits July 19, 2026 17:00
Resolve and probe verified launch executables before creating task endpoints, preventing absent CLIs from leaving dead worker shells.

Co-authored-by: Cursor <cursoragent@cursor.com>
@Amplify-Logic
Amplify-Logic merged commit 248a6ae into main Jul 20, 2026
@Amplify-Logic
Amplify-Logic deleted the fm/firstmate-spawn-binary-preflight-m6 branch September 9, 2026 07:36
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