verification

sharpner's avatarfrom sharpner

Use before claiming ANY work is complete. Evidence before claims, always. Non-negotiable verification gate.

⭐1stars🔀0forks📁View on GitHub🕐Updated Jan 8, 2026

When & Why to Use This Skill

This Claude skill establishes a rigorous, non-negotiable verification gate for AI agents, enforcing an 'evidence-before-claims' protocol. It eliminates dishonest reporting and hallucinations by requiring agents to provide verifiable proof—such as test logs, build results, and linter outputs—before any task is marked as complete, significantly increasing the reliability of automated software engineering workflows.

Use Cases

  • Automated Regression Testing: Ensuring that 'npm test', 'pytest', or 'go test' suites pass entirely before the agent claims a bug is resolved.
  • Build Integrity Verification: Validating that new code changes do not break the build process by executing fresh build commands and checking exit codes.
  • Linter and Style Compliance: Automatically running linters like 'golangci-lint' or 'eslint' to ensure code quality standards are met before submission.
  • Reliable Bug Fixing: Forcing a workflow where the agent must first reproduce the bug and then verify the fix with specific commands rather than assuming success.
  • Quality Assurance Guardrails: Acting as a safety layer to prevent the deployment of undefined functions or incomplete features by requiring end-to-end (E2E) verification.
nameverification
descriptionUse before claiming ANY work is complete. Evidence before claims, always. Non-negotiable verification gate.

Verification Before Completion

Core Principle: "Evidence before claims, always."

You MUST execute verification before asserting work is complete, fixed, or passing.

The 5-Step Gate (Non-Negotiable)

  1. IDENTIFY the command that proves your claim
  2. RUN the complete command fresh (not from memory)
  3. READ the full output, check exit codes and failure counts
  4. VERIFY whether output actually confirms your claim
  5. ONLY THEN state your claim with evidence attached

Skipping any step = dishonest reporting.

What Requires Verification

Before claiming ANY of these, you MUST run fresh commands:

Claim Required Command
"Tests pass" npm test / go test ./... / pytest
"Build succeeds" npm run build / go build ./...
"Linter is clean" npm run lint / golangci-lint run
"Bug is fixed" Reproduce steps + verify fix
"Feature works" E2E test or manual verification
"Work is complete" ALL above checks

Red Flags (Stop Immediately)

Watch for these language patterns that bypass verification:

  • "should work"
  • "probably"
  • "seems to"
  • "Great!" (before running checks)
  • "I believe..."
  • "This will..."

If you catch yourself using these → STOP → Run verification.

Output Format

When reporting completion:

**Verification:**
- Command: `npm test`
- Exit code: 0
- Output: 47 tests passed, 0 failed
- Claim confirmed: ✅ All tests pass

Why This Matters

"If you lie, you'll be replaced."

Prior failures included:

  • Shipping undefined functions
  • Claiming "fixed" when tests still fail
  • Incomplete features marked complete

Trust depends on honest reporting backed by actual evidence.

NO EXCEPTIONS. NO SHORTCUTS.