verification-before-done · git:20260911.3de89a2 · 2026-09-11 · sha256 4956e8abe92480df
verification-before-done git:20260911.3de89a2A
Immutable. This exact content is served forever at /api/v1/blob/4956e8abe92480df.
--- name: verification-before-done description: > Evidence before claims. When NOT to use: mid-task self-correction (use scrutinize); pure execution tasks where output IS evidence. origin: pi-crew triggers: - "done" - "verify this" - "is it working" - "check if it passes" - "ready to ship" --- # verification-before-done Core principle: evidence before claims. A worker report, green-looking log, or previous run is not fresh verification. Distilled from detailed reads of agent-skill patterns for verification-before-completion, TDD, review reception, and QA workflows. ## Gate Function Before any completion claim: 1. Identify the command or inspection that proves the claim. 2. Run the full command fresh, or explicitly state why a command cannot be run. 3. Read the output, including exit code and failure counts. 4. Compare the output to the claim. 5. Report the claim only with the evidence. ## Claim-to-Evidence Table | Claim | Requires | Not sufficient | |---|---|---| | Tests pass | Fresh test output with zero failures | Prior run, "should pass" | | Typecheck passes | Typecheck command exit 0 | Lint or targeted tests only | | Bug fixed | Original symptom/regression test passes | Code changed | | Requirements met | Checklist against request/plan | Generic test success | | Agent completed | Worker output plus artifact/diff/state inspection | Worker says DONE | | Safe to commit | Relevant checks pass and status reviewed | Partial local confidence | ## Verification Ladder Choose the smallest reliable gate, then escalate when risk requires it: 1. Read-only inspection for plans/reviews. 2. Targeted unit test for touched behavior. 3. Typecheck for TypeScript/schema/API changes. 4. Integration test for runtime, subprocess, state, filesystem, UI, config, or session behavior. 5. Full suite before commit/release or broad changes. 6. Real Pi smoke only when safe and needed. ## Done Report Include: - changed files or read-only status; - commands run and pass/fail result; - artifacts, run IDs, logs, or state paths inspected; - behavior actually verified; - skipped checks and why; - risks and rollback notes. ## Required Final Evidence Before finalizing any work, report: - **changed files**: list of files modified (or `none` for read-only work) - **tests/checks run**: command and pass/fail result for each - **artifacts**: run IDs, log paths, or state files inspected - **risks and rollback notes**: any known risks, how to undo the changes ## Red Flags Stop before saying done if you are using words like "should", "probably", "looks", "seems", "I think", or if you are trusting an agent report without checking evidence. ## Anti-Patterns - **Don't** claim "tests pass" without running them in the current session - **Don't** trust agent reports without checking evidence yourself - **Don't** use fuzzy language like "seems", "probably", "looks like" - **Don't** skip providing verification commands for claims - **Don't** claim done if you're still using hypotheses instead of evidence ## Budget This skill applies a 3-attempt budget: 1 initial + max 2 re-attempts. Stamp every invocation: ``` attempt X of 3 (Y attempts remaining) ``` An attempt is one fresh verification run (identify command → run → read output → compare to claim). Re-attempt when output contradicts the claim or reveals a new failure mode. Re-attempts only when the previous attempt materially changes the decision or risk. Do NOT spend a re-attempt on mechanical changes or already-resolved findings. When exhausted, escalate to the user with options (accept risk / change scope / exceptional budget).