Repository navigation
TDD 0075: reviewer contracts — design rigor, fixed build reviewer, non-findings - #202
Merged
Merged
Conversation
Text checks (by necessity) for the design-reviewer and build-reviewer contracts, FR-110 non-findings across reviewers with a readable-first negated category-dismissal grep, /build-tdds steps 6/9/10, and the /tdd-author design-PR body. Red against current code. Co-Authored-By: Claude Opus 5.5 <[email protected]> Claude-Session: https://claude.ai/code/session_01NpGG21Y2VGGhTQaFr4oshB
…ndings (TDD 0075) - design-reviewer: cited simulation trace with the [unverified] rule, R-n findings line with the 4-column alternatives table for blocker/major, terminology and duplication passes, ### Non-findings, exact METRICS line; existing passages and the DESIGN_REVIEW verdict lines unchanged. - agents/build-reviewer.md (new): 7 inputs incl. base-sha, the implementer and verify reports and the absolute security-checklist path; ten rules; pre-existing debt by diff hunks with the caller/callee clause; FAIL iff a blocker/major is not pre-existing; unchanged REVIEW_RESULT line. - /build-tdds: step 6 records base-sha=<sha>; step 9 writes down the parent-dispatched fixture protocol (PENDING-PARENT); step 10 dispatches one worker by $(tl_plugin_root)/agents/build-reviewer.md with no checklist of its own (merge-base fallback for older logs). - /tdd-author 7b/9: the trace, blocker/major tables, METRICS and Non-findings go into the design-PR body, held in-session, never drafted. - ux-reviewer: shared finding line + Non-findings rule; security-reviewer: no-category-dismissal sentence. Co-Authored-By: Claude Opus 5.5 <[email protected]> Claude-Session: https://claude.ai/code/session_01NpGG21Y2VGGhTQaFr4oshB
Co-Authored-By: Claude Opus 5.5 <[email protected]> Claude-Session: https://claude.ai/code/session_01NpGG21Y2VGGhTQaFr4oshB
Co-Authored-By: Claude Opus 5.5 <[email protected]> Claude-Session: https://claude.ai/code/session_01NpGG21Y2VGGhTQaFr4oshB
…hrough the FAIL rule Co-Authored-By: Claude Opus 5.5 <[email protected]> Claude-Session: https://claude.ai/code/session_01NpGG21Y2VGGhTQaFr4oshB
…ing (review R-1) Rule 7 forbade PASS on an all-[unverified] trace while rule 9 says FAIL iff a non-pre-existing blocker/major exists, leaving that case with no consistent verdict. Route it through rule 9 as a major finding. Co-Authored-By: Claude Opus 5.5 <[email protected]> Claude-Session: https://claude.ai/code/session_01NpGG21Y2VGGhTQaFr4oshB
Co-Authored-By: Claude Opus 5.5 <[email protected]> Claude-Session: https://claude.ai/code/session_01NpGG21Y2VGGhTQaFr4oshB
Base automatically changed from
build/20261012-165626/0074-tdd-lint-grounding
to
master
October 15, 2026 13:41
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.
Implements TDD 0075: reviewer contracts. It makes design and build review rigorous, adds a fixed build reviewer, and makes reviewers list what they considered and dismissed (non-findings). PRD FR-108, FR-109 and FR-110 (refs #195). Plugin 3.56.0 → 3.57.0.
What it changes
agents/design-reviewer.mdgains five report rules:### Simulation trace(uncitable steps marked[unverified]);R-n <severity> — <loc> — <finding>line;### Non-findings, plus an exactMETRICS:line.Existing passages and the
DESIGN_REVIEW:verdict lines are unchanged.agents/build-reviewer.md(new) has ten rules:<base-sha>..HEAD, so a stacked build is reviewed only on its own changes;/build-tdds:base-sha=in the per-TDD log;PENDING-PARENT);/tdd-authorkeeps the design review in the session and carries the trace, the tables,METRICS:and non-findings into the design-PR body.ux-reviewergets the shared finding line and the non-findings rule; both it andsecurity-reviewerget the rule against dismissing a whole category of finding.Gates (run 20261012-165626)
agents/build-reviewer.mditselfBehavioural fixtures (obs 6–8)
DESIGN_REVIEW: BLOCK. Trace cites its sources, with[unverified]marks. Three major findings, each with the table.METRICS: traced 2/2 requirements; findings blocker=0 major=3 minor=2 nit=2REVIEW_RESULT: FAIL, R-1 and R-2 blockers attool.sh:5andtool.sh:6, plus an undeclared-deviation major findingrm -rf $dir/*on an untouched lineREVIEW_RESULT: PASS, withR-1 minor pre-existing — tool.sh:6, which the Security section also flaggedFixed after review
test(failing)thenfix). Rule 7 banned PASS on a trace made only of[unverified]steps, but rule 9 (FAIL if and only if a non-pre-existing blocker or major exists) never produced FAIL in that case. Rule 7 now records that case as a major finding. Gates were re-recorded on the new HEAD.Follow-ups (non-blocking)
design-reviewersubagent", which names an agent type. The model-roles eval pins that wording, and it predates this build.--combinedmode, a later TDD's review diff can include earlier TDDs' changes. This is disclosed through the merge-base fallback.🤖 Generated with Claude Code
https://claude.ai/code/session_01NpGG21Y2VGGhTQaFr4oshB