Skip to content

PRD: model capability by job, not named-model review - #178

Merged
cahenesy merged 1 commit into
masterfrom
docs/prd/model-capability-by-job
Aug 16, 2026
Merged

cahenesy merged 1 commit into
masterfrom
docs/prd/model-capability-by-job

Conversation

@cahenesy

Copy link
Copy Markdown
Owner

Drop the requirement that review run on a different named model.
Independence is a fresh worker. Judgment work defaults to the most
capable model; the only cheap slot is mechanical runtime-verify.

Open assumptions & waivers:

  • review independence is worker/session not model-name — resolved: independent worker remains a flip requirement; same named model is allowed for write and review
  • cheap-model slot is FR-52 mechanical verify only — resolved: parent sequencer stays most capable
  • authoring sessions warn when not most capable — resolved: /prd-author, /tdd-author, and /build-tdds warn and ask continue/stop when the parent session is below the latest top-tier binding or the session model cannot be read
  • cheaper write/review pin is warned not refused — resolved: honor THROUGHLINE_BUILD_MODEL / THROUGHLINE_REVIEW_MODEL with a warning; run continues
  • most capable is the latest top-tier binding — resolved: one binding site; rebinding on a new generation is an implementation change
  • design-reviewer is most capable independent worker — resolved: FR-10 is a fresh worker on the most-capable default; same-name as the TDD author is allowed
  • session model is always observable on supported harnesses — resolved: Claude Code and Grok Build expose it; unreadable is a defect with the same warn-and-ask shape
  • /build-tdds parent session is also warn+ask — resolved: same check as authoring

Cascade:

  • ADR 0009 (accepted) — supersede. Its decision (review = prior-gen top tier to keep author≠reviewer by name) is no longer the requirement.
  • ADR 0008 (accepted) — refine or supersede remaining author≠reviewer-by-name consequence. Rework authoring on the build model is already vacated by ADR 0013; the diversity rationale is what this PRD change removes.
  • ADR 0010 (accepted) — refine the consequence "Review flip authority is one independent different-model artifact" to independent worker, not different-model.
  • TDD 0057 (implemented) — supersede. It bound review to prior-gen top tier.
  • TDD 0062 (implemented) — supersede the models.sh / NFR-3 pairing (review = prior-gen). New TDD(s) must rebind review (and design-reviewer, judgment verify) to the latest top-tier default, add the cheaper-pin warning (FR-87), and add the parent-session warn-and-ask (FR-86) on /prd-author, /tdd-author, and /build-tdds.
  • Skills and README still say "different model" / prior-gen review (skills/implement, skills/tdd-author, agents/design-reviewer.md, README.md). Those are implementation follow-through for /tdd-author, not this PR.

Drop the requirement that review run on a different named model.
Independence is a fresh worker. Judgment work defaults to the most
capable model; the only cheap slot is mechanical runtime-verify.

Open assumptions & waivers:
- review independence is worker/session not model-name — resolved: independent worker remains a flip requirement; same named model is allowed for write and review
- cheap-model slot is FR-52 mechanical verify only — resolved: parent sequencer stays most capable
- authoring sessions warn when not most capable — resolved: /prd-author, /tdd-author, and /build-tdds warn and ask continue/stop when the parent session is below the latest top-tier binding or the session model cannot be read
- cheaper write/review pin is warned not refused — resolved: honor THROUGHLINE_BUILD_MODEL / THROUGHLINE_REVIEW_MODEL with a warning; run continues
- most capable is the latest top-tier binding — resolved: one binding site; rebinding on a new generation is an implementation change
- design-reviewer is most capable independent worker — resolved: FR-10 is a fresh worker on the most-capable default; same-name as the TDD author is allowed
- session model is always observable on supported harnesses — resolved: Claude Code and Grok Build expose it; unreadable is a defect with the same warn-and-ask shape
- /build-tdds parent session is also warn+ask — resolved: same check as authoring

Cascade:
- ADR 0009 (accepted) — supersede. Its decision (review = prior-gen top tier to keep author≠reviewer by name) is no longer the requirement.
- ADR 0008 (accepted) — refine or supersede remaining author≠reviewer-by-name consequence. Rework authoring on the build model is already vacated by ADR 0013; the diversity rationale is what this PRD change removes.
- ADR 0010 (accepted) — refine the consequence "Review flip authority is one independent different-model artifact" to independent worker, not different-model.
- TDD 0057 (implemented) — supersede. It bound review to prior-gen top tier.
- TDD 0062 (implemented) — supersede the models.sh / NFR-3 pairing (review = prior-gen). New TDD(s) must rebind review (and design-reviewer, judgment verify) to the latest top-tier default, add the cheaper-pin warning (FR-87), and add the parent-session warn-and-ask (FR-86) on /prd-author, /tdd-author, and /build-tdds.
- Skills and README still say "different model" / prior-gen review (skills/implement, skills/tdd-author, agents/design-reviewer.md, README.md). Those are implementation follow-through for /tdd-author, not this PR.
@cahenesy
cahenesy merged commit 8a6d2a3 into master Aug 16, 2026
1 check passed
@cahenesy
cahenesy deleted the docs/prd/model-capability-by-job branch August 16, 2026 16:41
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.

1 participant