verification-before-completion — independently scanned and version-tracked by SaferSkills.
SaferSkills independently audited verification-before-completion (Agent Skill) and scored it 100/100 (green). The audit ran 55 deterministic rules across Security, Supply Chain, Maintenance, Transparency, and Community; it found 0 high-severity and 0 lower-severity findings. The full rule-by-rule trace and per-finding evidence are below. Free, methodology-open.
Findings & checks · 0 flagged
Every scanned point with the score it earned and what moved between them.
First recorded scan — no prior version to compare against.
The primary manifest — the file an agent reads to learn what this artifact does.
Every completion claim requires fresh evidence. No exceptions.
NO COMPLETION CLAIMS WITHOUT FRESH VERIFICATION EVIDENCE.
"I believe it works" is not evidence. "The tests passed at 14:32" is evidence.
If you have not run verification commands in this session and read their output, you have not verified.
Before ANY claim that work is complete, execute this sequence:
1. IDENTIFY - What claims am I about to make?
2. RUN - Execute the verification commands
3. READ - Read the actual output (not what I expect to see)
4. VERIFY - Does the output support each claim?
5. CLAIM - Only now state completion, citing evidenceEvery step is mandatory. Skipping any step means the gate has not been passed.
List every claim you are about to make. Be specific:
NOT: "It works"
YES: "All 47 tests pass, the build succeeds, and the new endpoint returns 200"Common implicit claims to surface:
Execute the actual verification commands. Not from memory. Not from a previous run.
REQUIRED: Run the commands NOW, in this session
REQUIRED: Use the Bash tool to execute them
REQUIRED: Run the FULL suite, not a subset (unless the user explicitly scoped it)
FORBIDDEN: Assuming tests still pass from earlier
FORBIDDEN: Referencing results from before your changes
FORBIDDEN: Skipping slow tests without stating you skipped themRead the actual output. All of it.
REQUIRED: Read exit codes
REQUIRED: Read failure messages, not just success counts
REQUIRED: Read warnings (they may indicate real problems)
FORBIDDEN: Scanning for "X tests passed" and ignoring everything else
FORBIDDEN: Assuming green because the command "looked like it worked"For each claim from Step 1, check whether the evidence supports it:
Claim: "All tests pass"
Evidence: Exit code 0, output shows "47 passed, 0 failed"
Verdict: SUPPORTED
Claim: "No regressions"
Evidence: Only ran new test file, not full suite
Verdict: NOT VERIFIED -- full suite not executedIf any claim is NOT VERIFIED, go back to Step 2 and run what's missing.
State completion with evidence citations:
"Implementation complete:
- All 47 tests pass (exit code 0)
- Build succeeds (no errors, 2 warnings -- both pre-existing)
- New endpoint returns 200 with correct response body
- Lint and type checking pass"| Claim | Required Evidence |
|---|---|
| "Tests pass" | Test runner output showing pass count, zero failures, exit code 0 |
| "Build succeeds" | Build command output with exit code 0 |
| "Bug is fixed" | Reproduction steps now produce expected behavior |
| "No regressions" | Full test suite passes (not just new tests) |
| "Feature works" | Demonstrated behavior matching acceptance criteria |
| "Ready to commit" | Tests + build + lint + type check all pass |
| "Ready for review" | All of the above + self-review completed |
| "Performance improved" | Before and after measurements with methodology |
If you notice yourself thinking or about to write any of these, STOP:
| Rationalization | Why It Fails | What to Do Instead |
|---|---|---|
| "I just ran the tests a minute ago" | You changed code since then | Run them again |
| "This change is too small to break anything" | Small changes cause big failures | Run the verification |
| "The tests are slow, I'll skip them" | Skipped tests are unverified claims | Run them, or explicitly state "tests not run due to time constraint" |
| "I saw the output scroll by" | Scrolling past is not reading | Read the actual results |
| "The important tests pass" | Partial verification = partial claim | Run all tests or scope your claim |
| "It compiled, so it works" | Compilation proves syntax, not behavior | Run behavioral tests |
| "I'll fix that test later" | A failing test means tests don't pass | Fix it now or state the failure |
| "That failure is flaky / pre-existing" | Prove it -- show it fails on the base branch too | Verify the flake claim |
1. Write the test
2. RUN the test -- watch it FAIL (confirms test detects the issue)
3. Write the implementation
4. RUN the test -- watch it PASS (confirms implementation works)
5. RUN the full suite -- confirm no regressions
6. NOW you can claim: "Test passes, no regressions"1. Reproduce the bug (run the failing case, see the failure)
2. Apply the fix
3. RUN the reproduction case -- see it succeed
4. RUN the full test suite -- no regressions
5. NOW you can claim: "Bug fixed, verified with reproduction case, no regressions"1. RUN full test suite
2. RUN build command
3. RUN linter / formatter / type checker (if project uses them)
4. READ all outputs
5. ALL pass with exit code 0?
YES: Proceed to commit
NO: Fix first, then start from step 1After agent completes:
1. READ the agent's claimed results
2. RUN the verification commands YOURSELF
3. Do the results match the claims?
YES: Proceed
NO: The agent's claims are wrong. Fix or re-dispatch.
NEVER trust agent completion claims without re-running verification.Apply this gate before ANY of these actions:
Evidence, not confidence. Run it. Read it. Then claim it.
The cost of running verification is minutes. The cost of a false completion claim is rework, broken builds, and eroded trust.
If you cannot run the verification, say so: "I cannot verify [X] because [reason]. Do you want me to proceed without verification or investigate how to verify?"
~30 seconds. Free. No account. Every finding cites a rule and a line of evidence.