feat: migrate implement/spike/land workers to the clodex gateway route (one worker species) - #17
Merged
Merged
Conversation
… one (one harness, one block)
…odel route (gateway via daemon-spawn settings env)
… scripts marked legacy
… to clodex gateway route
…ession lingering state=blocked/status=idle (observed live on a parked gateway implement worker)
…eway route via daemon-spawn, codex-CLI spawn retired
…lander before believing its meta (exit-review P1)
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Migrates the board pipeline's implement, spike, and land workers from the detached codex-CLI daemon species to the one-harness model the review loop adopted on 2026-07-15: every worker is a Claude-harness daemon spawned by
daemon-spawn.sh, and the engine label (engine:codex/engine:claude, default codex) selects only the model route — clodex gateway settings (GPT models via the local proxy) or plain Claude models. This was the deferred scope recorded in the 2026-07-15 orchestrator-rebuild ExecPlan (Decision Log entry six), unblocked by the gateway review workers' sound dog-food behavior on ida-solution PR obra#570.ExecPlan (authored from the 2026-07-17 human-approved grill, executed autonomously):
docs/doperpowers/execplans/2026-07-17-implement-worker-clodex-migration.md.What changed
skills/implementing-tickets/references/engine-blocks/: the two per-engine execution blocks collapse into oneexecution.md(the split existed only because the codex CLI had no Skill tool; a gateway worker resolves plugin skills natively). The.agents/skillsvendored-doctrine pointer goes with it.skills/issue-tracker/SKILL.mddispatch ritual steps 2–3: one spawn command for both routes; the codex route prefixesDAEMON_CLAUDE_SETTINGS/DAEMON_CLAUDE_EFFORTand pins modelfable;codex-spawn.shis dereferenced.skills/orchestrating-daemons/SKILL.md: board pipeline declared one-harness; codex-CLI scripts marked LEGACY (kept, byte-identical, for existing bound sessions).skills/orchestrating-daemons/scripts/daemon-finalize.sh: second lying-shape normalization — an ended session lingeringstate=blocked/status=idlefinalizes idle (reply recorded through the blocked renderer so a pending question still surfaces). Found live: without it, every gateway implement worker's park→answer relay dead-ends.skills/reviewing-prs/scripts/land-dispatch.sh: the land worker was a second, undocumented codex-spawn consumer — migrated to the same gateway route, and its dedupe now finalizes a lingering claude-species lander before believing its meta (the codex exit review's single P1: a finished dry-run lander would otherwise block every later live dispatch forever).2026-07-10-codex-workers-design.mdand2026-07-09-implement-worker-autonomy-design.md.Validation evidence
test-protocol-content.sh(single-block + ritual assertions, RED shown before each change),test-daemon-scripts.sh(new blocked/idle finalize fixtures),test-codex-scripts.sh(unchanged, still green — legacy machinery untouched),test-land-dispatch.sh(gateway-env spawn + finalize-before-dedupe, RED first),test-review-dispatch.sh,test-board-scripts.sh, codex-plugin sync regression; repo shell lint clean;git diff --checkclean.settings/effort/model=fable; first board write was the gate verdict (needs-human park on a deliberately unsettled taste fork, with recommended answer);board-answer.shresume stayed on the gateway — the resumed worker's in-session probeecho "${ANTHROPIC_BASE_URL:-unset}"→http://localhost:8317, recorded verbatim in the PR it opened;[gate] re-pass — codex/direct; closing PR withCloses #Nand TDD red→green evidence.codex exec review --base mainfrom a disposable clone (1 finding, the land-dedupe P1, fixed test-first) and an independent fresh-context reviewer over the final branch (Ready, no findings; verified every byte-identical constraint).Out of scope (deliberate)
Full deletion of legacy codex machinery (separate follow-up once no bound codex session exists); the implementing-tickets skill-as-protocol restructure (work item 2 of the roadmap, next ExecPlan); the release carrying this to consumers.
Authored and executed by Claude Fable 5 (claude-fable-5) on Claude Code with the doperpowers plugin, from a human-approved brainstorming grill; the human partner reviews this PR.