verification-before-completion

v2026.09.24

Use when about to claim work is complete, fixed, or passing, before committing, before reporting a task done, or before telling the evaluator the batch is ready. Requires running the verification command and reading its output in this turn before any success claim; evidence before assertions always.

GitHub
Install command
npx skhub add fradser/verification-before-completion
Markdown
SKILL.md

Verification Before Completion

The Iron Law

NO COMPLETION CLAIMS WITHOUT FRESH VERIFICATION EVIDENCE

If you have not run the verification command in this turn, you cannot claim it passes. The superpowers-evaluator reads narration and runs commands independently — your unverified "done" can be waved through unless it self-evidences.

Violating the letter of this rule is violating the spirit of this rule.

The Gate Function

Run this before claiming any status, expressing satisfaction, or returning a PASS-shaped verdict to the coordinator:

  1. IDENTIFY — What command proves this claim? (the task file's ## Verification Commands)
  2. RUN — Execute the FULL command, fresh, in this turn. Not a previous run, not "should pass".
  3. READ — Full output, check exit code, count failures. Last 20-30 lines pasted into your return.
  4. VERIFY — Does the output confirm the claim?
    • NO → state the actual status with evidence (exit code, failure count)
    • YES → state the claim WITH evidence (exit 0, N/N pass)
  5. ONLY THEN make the claim.

Skipping any step is lying, not verifying.

Common Failures

ClaimRequiresNot Sufficient
Tests passTest command output: 0 failuresPrevious run, "should pass"
Linter cleanLinter output: 0 errorsPartial check, extrapolation
Build succeedsBuild command: exit 0Linter passing, logs look good
Bug fixedOriginal-symptom test passesCode changed, assumed fixed
Regression test worksRed-green cycle verifiedTest passes once
Sub-agent completedVCS diff shows changes + your re-runSub-agent reports "success"
Requirements metLine-by-line checklist vs specTests passing alone

Red Flags — STOP

  • Using "should", "probably", "seems to"
  • Expressing satisfaction before verification ("Done!", "Great!", "Perfect!")
  • About to commit, push, or return a PASS verdict without verification
  • Trusting a sub-agent's success report without re-running verification yourself
  • Relying on partial verification (only one of several test files)
  • Thinking "just this once"
  • ANY wording implying success without having run verification this turn

Rationalization Prevention

ExcuseReality
"Should work now"RUN the verification
"I'm confident"Confidence is not evidence
"Just this once"No exceptions
"Linter passed"Linter is not the test runner
"The sub-agent said success"Verify independently — sub-agents hallucinate done
"Partial check is enough"Partial proves nothing
"Different words so the rule doesn't apply"Spirit over letter
"The evaluator will catch it anyway"The evaluator reads narration; an unverified "done" can slip past. Self-verify first.

Relationship to the superpowers-evaluator

This skill is the implementer-side pre-gate. The superpowers-evaluator is the independent read-only post-gate that re-runs verification commands itself. They do not overlap:

  • You (implementer) self-prove with this skill before returning a done verdict to the coordinator.
  • The evaluator independently re-verifies after the batch passes the Verification Gate.

An unverified "done" from you can be waved through by the evaluator (it reads narration, not always files). Self-evidence closes that gap. Do not lean on the evaluator as a safety net — produce the evidence yourself first.

The Bottom Line

Run the command. Read the output. Paste the evidence. THEN claim the result.

This is non-negotiable.

Discovery
Tags

No tags published for this skill.

Version
Latest version metadata

Version

v2026.09.24

Published

Sep 24, 2026

Category

Uncategorized

License

MIT

Source path

superpowers/skills/verification-before-completion

Default branch

main

Latest commit

9815c4f

Tree SHA

7a6c5f4