Verification gates
Evidence-of-done report
Require the agent to end with what it ran, what it saw, and what it did not verify.
The problem
A final message like "Done! Everything works." carries no information. You cannot tell what was actually checked, what was assumed, and what was skipped, so you either trust it blindly or redo the verification yourself.
The pattern
Ask for a fixed-format closing report that separates claims from evidence. Every "works" claim must point to a command and its real output. Anything not verified must be listed as such. This makes gaps visible and makes it harder to report success that did not happen.
Pair it with the acceptance criteria: the report should go through them line by line.
Template
When you finish, reply with exactly these sections:
## Summary
One or two sentences on what changed.
## Changes
- <file>: <what and why>
## Verification
For each acceptance criterion:
- <criterion> - PASS/FAIL - evidence: `<command>` โ <relevant output, trimmed>
## Not verified
- <anything you could not check, and why>
## Assumptions
- <decisions you made without explicit instruction>
## Follow-ups
- <out-of-scope issues you noticed but did not fix>
Do not write PASS for anything you did not actually run or observe.When not to use it
- Quick conversational questions where a report would be overhead.
- As a replacement for checking yourself on high-stakes changes. The report tells you where to look; it does not prove anything on its own.