Verification before completion — evidence before claims, always. 5-step gate: IDENTIFY, RUN, READ, VERIFY, CLAIM. Invoke before claiming any work is done, before committing, and before moving to the next pipeline step.
Verification before completion. Evidence before claims, always.
NO COMPLETION CLAIMS WITHOUT FRESH VERIFICATION EVIDENCE
If you haven't run the verification command in this message, you cannot claim it passes.
Before claiming ANY status or expressing satisfaction:
Skip any step = lying, not verifying.
| Context | Claim | Required Evidence | Not Sufficient |
|---|---|---|---|
implement task | "Task N done" | Test output + build exit 0 | "Should pass", previous run |
implement full | "Implementation complete" | Full test suite green + all plan.md checkboxes | Partial tests, "looks good" |
honk ACCEPT fix | "Fixed the issue" | Tests pass after fix, no regressions | Code changed, assumed fixed |
honk QA pass | "Review cycle complete" | Final build + full test suite 0 failures | "Already verified earlier" |
| Bug fix (non-pipeline) | "Bug fixed" | Reproduce symptom → fix → verify symptom gone | "The code looks correct now" |
| Feature (non-pipeline) | "Feature complete" | Relevant tests pass + build succeeds | "It should work" |
| Before commit | "Ready to commit" | Build + tests + lint all green | "Just a small change" |
| Before PR | "Ready for PR" | Full verification suite, clean diff | Partial check |
These thoughts mean you are about to violate the iron law:
| Thought | What To Do |
|---|---|
| "This should work now" | RUN the verification |
| "I'm confident" | Confidence is not evidence |
| "Just this once" | No exceptions |
| "Tests passed earlier" | Earlier is not now. Run again |
| "The subagent reported success" | Verify independently |
| "It's a small change" | Small changes break things too |
| "I'm about to say Done/Fixed/Complete" | STOP. Run the gate function first |
| Using "should", "probably", "seems to" | Replace with evidence |
| Excuse | Reality |
|---|---|
| "Should work now" | RUN the verification |
| "Confidence is high" | Confidence ≠ evidence |
| "Just this once" | No exceptions, ever |
| "Linter passed so build is fine" | Linter ≠ compiler ≠ tests |
| "Agent said it's done" | Agent claims need independent verification |
| "I'm tired of verifying" | Fatigue ≠ excuse |
| "Partial check is enough" | Partial proves nothing about the whole |
Tests:
RUN: npm test (or project's test command)
OUTPUT: 34/34 passing ✓
CLAIM: "All 34 tests pass" ← evidence cited
Build:
RUN: npm run build
OUTPUT: Build completed successfully (exit 0)
CLAIM: "Build succeeds" ← exit code cited
Bug fix:
RUN: Reproduce original symptom
OUTPUT: Error confirmed
FIX: Apply the change
RUN: Same reproduction step
OUTPUT: No error
CLAIM: "Bug fixed — symptom no longer reproduces" ← before/after cited
Plan checklist:
RUN: Each checkbox's verification step
OUTPUT: Green for each
CLAIM: "Task N complete — all steps verified" ← per-step evidence
honk ACCEPT verdict itemThis skill is referenced by implement and honk.
It can also be invoked standalone for any task.