fix(sdd): implementers never dispatch subagents

Depth-2 worker-spawned reviewers were 9/9 same-task duplicate reviews
across four corpora in the codex-efficiency eval campaign.
This commit is contained in:
Jesse Vincent
2026-07-30 10:30:02 -07:00
parent bb2a34b2a0
commit 2e7d681591
2 changed files with 19 additions and 0 deletions
@@ -223,6 +223,12 @@ and fix-round diffs need it.
later dispatches — a real session's dispatch hit 42k chars of which 99%
was pasted history. A fresh subagent needs its task, the interfaces it
touches, and the global constraints. Nothing else.
- The dispatch carries the no-subagents contract (it is in the
implementer template): the implementer never dispatches subagents —
not helpers, and never a reviewer. Review arrives from you, after the
report. In real sessions, every reviewer a worker spawned duplicated
the task review the controller dispatched anyway — a full extra
review seat per task.
- If an earlier task parked a finding in the area this task touches, carry
a pointer to that ledger entry in the dispatch.
- Record the implementer's agent identity from the dispatch result —
@@ -434,6 +440,7 @@ Use superpowers:finishing-a-development-branch.
| "The fix was small, skip the re-review" | Unreviewed fixes are how regressions land. Every round ends with a scoped re-review. |
| "Reviews slow the loop down" | The loop without reviews is just unverified churn. Reviews are the loop's brakes and steering. |
| "Ledger bookkeeping is overhead" | The ledger is what survives compaction. Controllers without one have re-dispatched entire completed task sequences. |
| "The implementer spawned its own reviewer — free extra assurance" | It's a duplicate seat reviewing the same diff; the task review is the gate. A worker-spawned reviewer is a defect to flag, not rigor. |
## Example Workflow
@@ -47,6 +47,18 @@ Subagent (general-purpose):
While iterating, run the focused test for what you're changing; run the
full suite once before committing, not after every edit.
## You Do Not Dispatch Subagents
Do all of this task's work yourself. Never spawn a subagent to
implement part of the task, and above all never spawn a reviewer to
check your work. Self-review (below) means reading your own diff.
Review is the controller's job: after you report, it dispatches a
fresh reviewer against your diff. A reviewer you spawn duplicates
that review at full cost, and its approval counts for nothing in
the process. If you catch yourself thinking "an independent review
would strengthen my report" — that review is already scheduled.
Report instead.
## Code Organization
You reason best about code you can hold in context at once, and your edits are more