Skip to content

fix: check native subagent spawn before fan-out - #2

Merged
revfactory merged 1 commit into
mainfrom
fix/issue-1-native-spawn-preflight
Sep 16, 2026
Merged

revfactory merged 1 commit into
mainfrom
fix/issue-1-native-spawn-preflight

Conversation

@revfactory

@revfactory revfactory commented Sep 14, 2026 •

Copy link
Copy Markdown
Owner

Change

Fixes #1.

When native tools were exposed but child creation failed with collab spawn failed: no thread with id, Harness could continue trying other roles without a usable child ID. The shipped skill, orchestrator guidance, and live-smoke prompt now check the first standby spawn before wider fan-out, reuse that child on success, and stop missing-thread retries on failure.

Document ordinary CLI invocation and parent-sequential fallback while preserving the chosen persistence mode. Unstarted native tasks stay pending, and sequential work cannot pass a native-only smoke. Historical CLI 0.153.4 failure and the limited 0.154.0 ephemeral report remain separate; this change makes no universal incompatibility or fixed-version claim.

Verification

  • python3 scripts/validate.py --project . — 5 agents, 1 skill, 0 errors.
  • python3 scripts/validate.py --project examples/service-migration — 2 agents, 1 skill, 0 errors.
  • python3 -m unittest discover -s tests -v — 94 tests passed.
  • git diff --check.
  • GitHub Actions on Python 3.11 and 3.13 — PR run and push run passed.
  • Independent QA of the integrated change; local links/anchors and shell examples passed.
  • python3 scripts/live_smoke.py run --target _workspace/live-tests/issue-1-20260914 --baseline-file /tmp/codex-harness-issue-1-20260914-baseline.json --timeout 900 — exited 0 on Codex CLI 0.154.0; deliberate failure gating, partial resume, protected-file preservation and both final tests passed. Native tool metadata separately confirmed first child ID before second spawn and exactly two workers plus QA, with no extra probe. Transport records remain reported rather than independently authenticated.

The bounded CLI 0.154.0 --ephemeral probe exited 0 and reported a child response, but its JSONL lacks independent spawn metadata. The original missing-thread failure was not reproduced in that probe. Offline checks do not prove behavior in a failing native session.

Compatibility

Agent roles, model and permission preferences, helper schemas, and installer behavior are unchanged. The first probe uses the planned task agent and adds no extra child. Decisive troubleshooting instructions are included in the packaged skill for plugin-only installations.

  • User-visible changes documented in CHANGELOG.md, compatibility and usage guides.

@revfactory
revfactory merged commit d29654e into main Sep 16, 2026
4 checks passed
@revfactory
revfactory deleted the fix/issue-1-native-spawn-preflight branch September 16, 2026 14:09
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.

Native subagent spawn fails under codex exec --ephemeral: collab spawn failed: no thread with id

1 participant