Verification Before Completion
OpenAIOfficialCreated by Jesse VincentDistributed by OpenAI
- Skill
- Guidelines
- Software development
- MIT
- No issues found
AutoGineer summary
Written by AutoGineer from the skill’s own files, not by the author
This skill establishes a strict operational protocol for AI agents to ensure that no claims of success, completion, or correctness are made without first executing and reviewing fresh verification evidence. It mandates a gate function that requires agents to identify, run, read, and verify the output of specific commands before reporting any status. The framework is designed to prevent rationalization, assumptions, and reliance on partial checks or previous results, enforcing the principle that evidence must always precede assertions.
What it does
- Enforces a mandatory verification gate before any claim of task completion.
- Requires execution of fresh, full verification commands for every status report.
- Provides a structured checklist for validating builds, tests, and requirements.
- Identifies common rationalization patterns that lead to unverified success claims.
- Mandates independent verification of agent-delegated tasks.
- Establishes a strict evidence-first communication standard.
When to use it
- Before claiming that code is fixed, passing, or complete.
- Before committing changes or creating pull requests.
- Before moving to a subsequent task in a workflow.
- When delegating work to other agents to ensure their success reports are accurate.
- Whenever an agent is tempted to use phrases like 'should work' or 'looks correct'.
Advantages
- Eliminates assumptions and reliance on outdated or partial test results.
- Reduces the risk of reporting false positives or incomplete work.
- Ensures that all claims are backed by concrete, reproducible evidence.
- Standardizes the definition of 'done' across different development tasks.
- Prevents common cognitive biases and rationalizations during the development process.
Usage examples
- “I have finished the bug fix, can I submit the PR?”
- The agent will first run the specific test case that failed, confirm it now passes with 0 failures, and only then report that the fix is verified and ready for PR.
- “Is the build ready for deployment?”
- The agent will execute the build command, verify the exit code is 0, and confirm the build output is clean before stating that the build is ready.
Install
Download the skill as a ZIP:
https://autogineer.com/agent-skills/openai/verification-before-completion/downloadUnzip it into the cross-client skills folder of your project:
mkdir -p .agents/skills && unzip verification-before-completion.zip -d .agents/skills
Documentation by Jesse Vincent
Verification Before Completion
Overview
Core principle: Evidence before claims, always.
Violating the letter of this rule is violating the spirit of this rule.
The Iron Law
NO COMPLETION CLAIMS WITHOUT FRESH VERIFICATION EVIDENCEIf 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
Skip any step = lying, not verifyingCommon Failures
| Claim | Requires | Not Sufficient |
|---|---|---|
| Tests pass | Test command output: 0 failures | Previous run, "should pass" |
| Linter clean | Linter output: 0 errors | Partial check, extrapolation |
| Build succeeds | Build command: exit 0 | Linter passing, logs look good |
| Bug fixed | Test original symptom: passes | Code changed, assumed fixed |
| Regression test works | Red-green cycle verified | Test passes once |
| Agent completed | VCS diff shows changes | Agent reports "success" |
| Requirements met | Line-by-line checklist | Tests passing |
Red Flags - STOP
Using "should", "probably", "seems to"
Expressing satisfaction before verification ("Great!", "Perfect!", "Done!", etc.)
About to commit/push/PR without verification
Trusting agent success reports
Relying on partial verification
Thinking "just this once"
Tired and wanting work over
ANY wording implying success without having run verification
Rationalization Prevention
| Excuse | Reality |
|---|---|
| "Should work now" | RUN the verification |
| "I'm confident" | Confidence ≠ evidence |
| "Just this once" | No exceptions |
| "Linter passed" | Linter ≠ compiler |
| "Agent said success" | Verify independently |
| "I'm tired" | Exhaustion ≠ excuse |
| "Partial check is enough" | Partial proves nothing |
| "Different words so rule doesn't apply" | Spirit over letter |
Key Patterns
Tests:
✅ [Run test command] [See: 34/34 pass] "All tests pass"
❌ "Should pass now" / "Looks correct"Regression tests (TDD Red-Green):
✅ Write → Run (pass) → Revert fix → Run (MUST FAIL) → Restore → Run (pass)
❌ "I've written a regression test" (without red-green verification)Build:
✅ [Run build] [See: exit 0] "Build passes"
❌ "Linter passed" (linter doesn't check compilation)Requirements:
✅ Re-read plan → Create checklist → Verify each → Report gaps or completion
❌ "Tests pass, phase complete"Agent delegation:
✅ Agent reports success → Check VCS diff → Verify changes → Report actual state
❌ Trust agent reportWhen To Apply
ALWAYS before:
ANY variation of success/completion claims
ANY expression of satisfaction
ANY positive statement about work state
Committing, PR creation, task completion
Moving to next task
Delegating to agents
Rule applies to:
Exact phrases
Paraphrases and synonyms
Implications of success
ANY communication suggesting completion/correctness
Files
- ATTRIBUTION.mdAdded by AutoGineer944 B
- LICENSELicence file added by AutoGineer1.0 KiB
- SKILL.md3.6 KiB
- agents/openai.yaml147 B
Requirements and compatibility
Written for: OpenAI Codex
Works with: Claude Code, Claude apps, OpenAI Codex, GitHub Copilot, Cursor, Gemini CLI, Kiro, OpenCode, Goose, Amp, Roo Code, JetBrains Junie, Factory Droid, Devin (ex-Windsurf), Mistral Vibe, OpenHands, Letta
“Works with” means the tool reads the open Agent Skills format; a skill written for one tool may use features others lack.
Security
No issues found by our static scan· No issues found
A static scan is not a guarantee. Skills are third-party content: review a skill before you let an agent use it.
Attribution and licence
- Created by
- Jesse Vincent
- Publisher
- OpenAI (Official)
- Distributed by
- OpenAI
- Source
- openai/plugins · plugins/superpowers/skills/verification-before-completion · commit d420d13
- Licence
- MIT License (redistribution allowed)
- LICENSE (added by AutoGineer from plugins/superpowers/LICENSE)
- ATTRIBUTION.md (written by AutoGineer)
- Synced
- Also distributed in
- obra/superpowers
AutoGineer is not affiliated with or endorsed by Jesse Vincent or OpenAI.
Download ZIP
The ZIP holds the skill’s files, its licence files and an ATTRIBUTION.md. Download verification-before-completion.zip