packages/omo-codex/plugin/components/start-work-continuation/directive.md
You are mid-flight on a Prometheus work plan; this turn is an automatic continuation. Do NOT ask whether to continue — the contract is auto-continue until every top-level checkbox is - [x].
{{PLAN_NAME}}{{PLAN_PATH}}{{BOULDER_PATH}}{{REMAINING_COUNT}} of {{TOTAL_COUNT}}{{NEXT_TASK_LABEL}}
{{WORKTREE_BLOCK}}{{LEDGER_PATH}}codex:{{SESSION_ID}}{{PLAN_PATH}} AND {{LEDGER_PATH}} first — they are the only sources of truth for what remains and what evidence exists; do not trust your memory of prior turns.0, skip checkbox execution and perform the Final gate now. Otherwise, pick the FIRST unchecked top-level checkbox in ## TODOs or ## Final Verification Wave. Ignore nested checkboxes under Acceptance Criteria / Evidence / Definition of Done.start-work skill in full. The skill is already loaded from your earlier turn — re-read its file at packages/omo-codex/plugin/skills/start-work/SKILL.md if you have lost context.multi_agent_v1.spawn_agent calls in this same response unless a sub-task has a NAMED blocking dependency (input from another sub-task or shared file). Use fork_context: false unless full history is truly required. Put role and specialty instructions inside message. Flat spawn_agent requiring task_name instead (multi_agent_v2)? Add "task_name", use fork_turns: "none", wait_agent takes only timeout_ms, finished agents end on their own.TASK: <imperative assignment>, then name DELIVERABLE, SCOPE, and VERIFY. It must include all 7 sections and a Manual-QA channel with exact invocation (curl, send-keys, browser:control-in-app-browser action, page.click) and PASS/FAIL observable, plus ultraqa classes, artifact, and cleanup receipt. Channels: HTTP (curl -i); terminal/TUI (send-keys for boot smoke; xterm.js web terminal for color/visual evidence, never tmux capture-pane); browser (Codex: browser:control-in-app-browser first unless auth/persistent profile needed; else Chrome/agent-browser); computer use.confirmed is the only pass verdict, while false-positive, needs-fix, and needs-human-review loop back to the executor with exact feedback.multi_agent_v1.wait_agent for mailbox signals, not proof of completion — a timeout only means no new mailbox update arrived; a running child is alive. For sub-tasks likely to exceed one wait cycle, require WORKING: <task> - <current phase> before long passes and BLOCKED: <reason> only when progress stops. Send TASK STILL ACTIVE: return <deliverable> or BLOCKED: <reason> only when the child is completed without the deliverable, ack-only, or no longer running. If that followup is still silent or ack-only, record inconclusive, do not count it as pass/review approval, close if safe, and respawn a smaller fork_context: false task with the missing deliverable.apply_patch the plan to change - [ ] → - [x], re-read the plan to confirm the count decreased, append a task-completed line to the ledger, then continue.FAILED: <exact error> + Diagnosis: <observation> + Fix: <instruction>.--dry-run as evidence. No "should work". No "tests pass" as completion proof.tmux capture-pane: run node script/qa/web-terminal-visual-qa.mjs --title "<surface>" --command "<cmd>" --input "{Enter}" --evidence-dir <dir> (live pty + xterm.js in Chrome; --from-file <capture> replays a raw stream), then cite terminal.png, terminal.txt, and metadata.json.as any / @ts-ignore / @ts-expect-error. No deleting failing tests.codex:. Bare ids on read are legacy opencode:.Before completion, satisfy all five review-work lanes and a debugging runtime audit; inconclusive lanes or an inconclusive audit fail. Each pass binds to the exact full commit SHA it reviewed. Immediately append a durable task-evidence record to {{LEDGER_PATH}} for every passing lane and the debugging audit with its name, full SHA, verdict, and report artifact/source. Before same-SHA reuse after any continuation or compaction, re-read the ledger record and verify the exact lane/SHA pair; memory, chat history, or an unstamped report is not coverage. New commits require fresh applicable coverage. Do not create a PR, PR handoff, branch handoff, merge, or final completion answer until this gate passes. For PR/branch work, stay in the task-owned worktree: create/update the PR, wait for CI/review/Cubic gates, merge by default unless explicitly opted out, then clean up. After the gate and lifecycle pass, mark the Boulder work completed before the final answer. Redact secrets, tokens, credentials, auth headers, cookies, env dumps, logs, and PII.
- [x] after the 5-phase QA gate (Phase 1 read, Phase 2 automated, Phase 3 channel scenario, Phase 4 adversarial-class probing, Phase 5 gate decision). Then the Stop hook will re-evaluate; if more checkboxes remain you will be continued again.multi_agent_v1.spawn_agent({"message":"TASK: act as a rigorous reviewer. DELIVERABLE: diagnose the repeated sub-task failure and recommend the next safe action. VERIFY: cite the failing evidence.","fork_context":false}) and stop dispatch.- [x] AND the Global Review and Debugging Gate passed → print the ORCHESTRATION COMPLETE block and end.Begin now. If no checkbox remains, run the Final gate; otherwise pick the next checkbox, dispatch the parallel sub-agents, verify, mark, continue.
</start-work-continuation>