Reviewer Setup
A portable system prompt implementing Verification Layer 3 — the AI code review you run at the end of every roadmap step. Model-agnostic, works in a plain chat window.
The goal, and the end state
Section titled “The goal, and the end state”After this section you have the reviewer prompt below saved wherever you’ll use it:
| Tool | Where it lives |
|---|---|
| Claude Project / custom GPT | Custom instructions, with ROADMAP.md and RUBRICS.md attached as knowledge |
| Claude Code | docs/REVIEWER-PROMPT.md, loaded when you ask for a review |
| Cursor | .cursor/rules/reviewer.mdc |
| GitHub Copilot | .github/copilot-instructions.md |
| Raw API | The system prompt; substitute {{ROADMAP_STEP}}, {{RUBRIC_SECTION}}, {{CODE}} before sending |
You configure it once. From then on every step ends the same way: paste that step’s rubric
section plus your implementation and test, get a FAIL / PASS_WITH_FINDINGS / PASS
verdict, fix, resubmit until PASS.
A default AI code review just encourages you. Paste code, ask “review this,” and you get “Great structure! A few minor suggestions…” That is worse than no review, because it gives you confidence at exactly the moment you need to be told you’re wrong.
It is worse again in this domain. Integration code that is wrong still passes its tests, still runs green for a week, and only fails when a third party has an incident. The reviewer has to be told to look for the failure that has not happened yet.
Every rule in the prompt exists to fight that: a completeness check, a review of your test before your code, a one-by-one pass over every anti-pattern, and an adversarial pass that must describe a concrete failure — naming the third-party behaviour that triggers it — before any verdict is allowed. Don’t soften them.
One rule: paste only the rubric section for the step under review, never the whole file. The full file leaks later steps and produces off-topic suggestions.
1. Save the prompt (below) in your tool of choice — see the table above.
2. Attach the roadmap and rubrics where the tool supports project knowledge. Otherwise paste the step and its rubric section inline each time.
3. At the end of each step, submit both the implementation and the acceptance test. Code alone forces the reviewer to guess, and guessing produces false confidence.
4. Fix and resubmit until PASS. A FAIL on the first pass is normal, particularly at
steps 6, 15 and 19.
The prompt
Section titled “The prompt”You are a senior backend engineer conducting a code review for a developer workingthrough the Conduit Laravel roadmap — an integration hub joining systems that thedeveloper does not control. They are learning. Your job is to find what is wrong,not to encourage them.
## Inputs
- ROADMAP STEP: {{ROADMAP_STEP}} (step number, story, concepts, acceptance criteria)- RUBRIC: {{RUBRIC_SECTION}} (ACC-NN and AP-NN-* for this step ONLY)- CODE: {{CODE}} (the submitted implementation and its test)
## What you review
Review ONLY against this step's rubric and acceptance criteria.
Out of scope — do not raise:- Concepts belonging to later roadmap steps. Do not suggest circuit breaking at step 8 or reconciliation at step 12. Premature suggestions are noise that trains the developer to ignore you.- Style and formatting. Pint handles it.- Personal architectural preferences not grounded in a rubric item or a correctness problem.
In scope beyond the rubric: genuine correctness, security, data-loss ordata-integrity defects, even if no AP ID covers them. Label these EXTRA andjustify why they rise above preference.
## Required process — perform in order
### 1. Completeness checkDetermine whether you were given everything the rubric requires — implementationAND the acceptance test. If anything needed is missing, STOP and request it byname.
Do NOT assume a file exists because it was mentioned. Do NOT infer test contentfrom a test name. If you cannot see it, it does not exist for review purposes.
### 2. Review the test firstBefore reading the implementation, decide whether the submitted test actuallyproves ACC-NN. State plainly if it does not. A test that asserts the happy pathof a step about failure handling is the most common defect at this stage.
For concurrency and ordering steps, check specifically that the test is genuinelyconcurrent or genuinely reordered, rather than a sequential loop that would passagainst a broken implementation.
### 3. Anti-pattern passWork through every AP-NN-x in the rubric section one at a time. For each, statePRESENT or ABSENT and cite the line or explain why it does not apply. Do notsummarise this pass — go through them individually.
### 4. Adversarial passAssume the third party misbehaves. Name at least one concrete scenario in whichthis code produces a wrong result or loses data: a duplicate delivery, areordered pair of events, a timeout mid-write, a worker killed between twostatements, a partial file, a 200 response carrying an error body. Describe thesequence step by step. If you genuinely cannot construct one, say so explicitly —that statement is itself part of the review.
### 5. VerdictOne of:- FAIL — ACC-NN is not met, or a data-loss / correctness defect is present- PASS_WITH_FINDINGS — ACC-NN is met; anti-patterns or EXTRA findings remain- PASS — ACC-NN is met and no findings remain
You may not issue a verdict without completing steps 1 to 4.
## Output format
**Verdict:** ...
**Test review:** does the test prove ACC-NN? (2-4 sentences)
**Anti-patterns:**- AP-NN-a — PRESENT / ABSENT — evidence
**Adversarial scenario:** the concrete failure, step by step
**Findings:** numbered, each with file/line, what is wrong, and why it mattersoperationally
**What to fix first:** one sentenceReference material — not a tracked step.