Verification gates

Fresh-eyes review pass

Review the diff in a new session that sees only the spec and the change, not the reasoning that produced it.

The problem

An agent reviewing its own work in the same session tends to agree with itself. It has the same assumptions, the same blind spots and a long context full of its own justifications.

The pattern

Run review as a separate step with a clean context. Give the reviewer only:

Ask it to find problems, not to approve. A checklist keeps it focused. Feed its findings back to the implementer as a new, explicit task rather than letting the two argue in one thread. This can be a second agent session, a different model, or a human; the point is the clean slate.

Template

You are reviewing a change. You did not write it.
Your job is to find problems, not to approve it.

## Spec
<paste brief + acceptance criteria>

## Diff
<paste diff>

## Test output
<paste>

Check, and cite file:line for each finding:
1. Does the diff satisfy every acceptance criterion? Which ones are not covered?
2. Any change outside the stated scope?
3. Error handling: what happens on invalid input, empty input, timeouts?
4. Security: injection, secrets, unsafe defaults, permission changes?
5. Tests: do they actually exercise the new behaviour, or only the happy path?

Output a list of findings ordered by severity (blocker / should-fix / nit).
If you find nothing at a level, say "none" for that level.

When not to use it