Post-implementation verification skill. Delegates to the implementation-verifier agent for build, test, lint, diff review, and readability checks. Enforces the Iron Law: no completion claims without fresh verification evidence. Invoke with `/verify` after /execute-plan completes.
Run formal post-implementation verification by delegating to the implementation-verifier agent. Enforce the Iron Law: evidence before claims, always.
Announce at start: "I'm using the verify skill to run post-implementation verification."
Evidence before claims, always.
Claiming work is complete without fresh verification is dishonesty, not efficiency.
Violating the letter of this rule is violating the spirit of this rule.
NO COMPLETION CLAIMS WITHOUT FRESH VERIFICATION EVIDENCE
If you haven't run the verification command in this session, you cannot claim it passes.
Before claiming any status or expressing satisfaction:
Skip any step = lying, not verifying.
Before launching the agent, collect from the current conversation:
Use the Agent tool to launch the implementation-verifier agent with the gathered context. Include in the prompt:
When the agent completes, present its verification report to the engineer.
Apply the Iron Law to the agent's report: if the agent claims success, do not propagate the claim — verify by checking the actual evidence (test output, build exit code, diff). Trust the evidence, not the report.
If deviations from the plan or readability suggestions are found, ask the engineer how to proceed.
After verification passes and the engineer reviews the report:
→ Transition to /review for comprehensive code review.
If verification fails:
→ Return to /execute-plan (or restart agent-teams for the failing task) to fix issues, then re-run /verify.
| Claim | Requires | Not Sufficient |
|---|---|---|
| Tests pass | Test command output: 0 failures | Previous run, "should pass" |
| Linter clean | Linter output: 0 errors | Partial check, extrapolation |
| Build succeeds | Build command: exit 0 | Linter passing, logs look good |
| Bug fixed | Test original symptom: passes | Code changed, assumed fixed |
| Regression test works | Red-green cycle verified | Test passes once |
| Agent completed | VCS diff shows changes | Agent reports "success" |
| Requirements met | Line-by-line checklist against plan | Tests passing |
Tests:
✅ [Run test command] [See: 34/34 pass] "All tests pass"
❌ "Should pass now" / "Looks correct"
Regression tests (TDD Red-Green):
✅ Write → Run (pass) → Revert fix → Run (MUST FAIL) → Restore → Run (pass)
❌ "I've written a regression test" (without red-green verification)
Build:
✅ [Run build] [See: exit 0] "Build passes"
❌ "Linter passed" (linter doesn't check compilation)
Requirements:
✅ Re-read plan → Create checklist → Verify each → Report gaps or completion
❌ "Tests pass, requirements met"
Agent delegation:
✅ Agent reports success → Check VCS diff → Verify changes → Report actual state
❌ Trust agent report
| Excuse | Reality |
|---|---|
| "Should work now" | RUN the verification |
| "I'm confident" | Confidence ≠ evidence |
| "Just this once" | No exceptions |
| "Linter passed" | Linter ≠ compiler ≠ tests |
| "Agent said success" | Verify independently |
| "I'm tired" | Exhaustion ≠ excuse |
| "Partial check is enough" | Partial proves nothing |
| "Different words so rule doesn't apply" | Spirit over letter |
| "Implementer already ran tests" | /verify is a separate, formal gate |
The Iron Law applies broadly — not just within /verify, but ALWAYS before:
The /verify skill is the formal application of this principle for post-implementation verification.
No shortcuts for verification.
Run the command. Read the output. THEN claim the result.
This is non-negotiable.