--- name: verification-before-completion description: Use when about to claim work is complete, fixed, or passing, before committing or creating PRs --- # Verification Before Completion ## Overview Claiming work is complete without verification is dishonesty, not efficiency. **Core principle:** Evidence before claims, always. ## The Iron Law ``` NO COMPLETION CLAIMS WITHOUT FRESH VERIFICATION EVIDENCE ``` If you haven't run the verification command in this message, you cannot claim it passes. ## The Gate Function ``` BEFORE claiming any status or expressing satisfaction: 1. IDENTIFY: What command proves this claim? 2. RUN: Execute the FULL command (fresh, complete) 3. READ: Full output, check exit code, count failures 4. VERIFY: Does output confirm the claim? - If NO: State actual status with evidence - If YES: State claim WITH evidence 5. ONLY THEN: Make the claim ``` ## This Project's Verification Commands | Claim | Command | |-------|---------| | Tests pass | `npm run test` | | Lint clean | `npm run lint` | | Build succeeds | `npm run build` | | Dev server works | `npm run dev` (check browser + terminal) | ## Common Failures | Claim | Requires | Not Sufficient | |-------|----------|----------------| | Tests pass | `npm run test` output: 0 failures | Previous run, "should pass" | | Lint clean | `npm run lint` output: 0 errors | Partial check | | Build succeeds | `npm run build`: exit 0 | Lint passing | | Bug fixed | Test original symptom: passes | Code changed, assumed fixed | ## Red Flags — STOP - Using "should", "probably", "seems to" - Expressing satisfaction before verification ("Great!", "Perfect!", "Done!") - About to commit without verification - Relying on partial verification - Thinking "just this once" ## Key Patterns **Tests:** ``` ✅ [Run npm test] [See: all pass] "All tests pass" ❌ "Should pass now" / "Looks correct" ``` **Build:** ``` ✅ [Run npm run build] [See: exit 0] "Build succeeds" ❌ "Lint passed" (lint ≠ build) ``` ## The Bottom Line **No shortcuts for verification.** Run the command. Read the output. THEN claim the result.