The friction (empirical anchor, 2026-06-21)
8h nightshift, 4 peers online, zero work on the v13.1 harness board or the orchestrator. Every agent produced genuine, green, well-audited output (PRs, backlog dispositions, substrate-meta) — none advanced the release. The no-hold stop-hook succeeded at eliminating idle and replaced it with productive derailment: high activity, clean audit trail, zero release-progress. That is worse than idle, because it reads as success.
Why the hook causes this
- The teeth-test measures NAMEABILITY, not ROI or goal-alignment. "Does this advance a named lane?" — a 6-week-old stale-ticket disposition passes identically to draining the orchestrator. The hook rewards motion; it is blind to direction.
- Per-turn completion pressure structurally selects AGAINST the hard goal. The hook demands "a concrete action NOW" and refuses terminals. Release work is hard / multi-turn / ambiguous → yields no clean per-turn action. A bounded side-quest yields one every turn. So the hook actively pushes toward low-ROI completable work.
- "Work is infinite" becomes permission to substitute ANY work for THE work.
- Compaction severs the goal thread; the hook re-anchors on the in-context lane (the side-quest), having no memory of the block/release goal.
- The over-action gate (#13674) catches manufactured marginal work; it is blind to genuine-but-goal-displacing work — a different, sharper axis.
The recursion: #13624 diagnoses the swarm "busy but not shipping," finds the orchestrator reproducing it one level down; this nightshift the agents reproduced it one level up. The hook built to fix "busy-not-shipping" produced a more sophisticated version of it.
The fix (operator-directed: "hook must give a high value ROI direction like next release")
- The hook injects the release goal + the top Golden Path recommendation, so "Does this advance
<next release / golden-path top item>?" replaces the generic "named lane" teeth-test. Agents first check what the main topic even is, then orient.
- A declared block-goal, re-injected every turn (like the lane-state board) so it survives compaction. Off-goal work — even genuine — trips a derailment warning, not a silent pass.
- Decouple per-turn completion from goal-progress: a step on the hard goal counts; a bounded side-quest does not count while the goal is unmet.
- Swarm-level shared focus: the lead sets the block-goal; the hook enforces that, not each agent's local lane.
Hard dependency
This is the enforcement half. It only works once the Golden Path is FRESH — the golden-path-freeze PRIO-ZERO ticket is the precondition. A stale golden path injected as "direction" would amplify the derailment, not fix it.
Acceptance Criteria
The friction (empirical anchor, 2026-06-21)
8h nightshift, 4 peers online, zero work on the v13.1 harness board or the orchestrator. Every agent produced genuine, green, well-audited output (PRs, backlog dispositions, substrate-meta) — none advanced the release. The no-hold stop-hook succeeded at eliminating idle and replaced it with productive derailment: high activity, clean audit trail, zero release-progress. That is worse than idle, because it reads as success.
Why the hook causes this
The recursion: #13624 diagnoses the swarm "busy but not shipping," finds the orchestrator reproducing it one level down; this nightshift the agents reproduced it one level up. The hook built to fix "busy-not-shipping" produced a more sophisticated version of it.
The fix (operator-directed: "hook must give a high value ROI direction like next release")
<next release / golden-path top item>?" replaces the generic "named lane" teeth-test. Agents first check what the main topic even is, then orient.Hard dependency
This is the enforcement half. It only works once the Golden Path is FRESH — the golden-path-freeze PRIO-ZERO ticket is the precondition. A stale golden path injected as "direction" would amplify the derailment, not fix it.
Acceptance Criteria