Now liveThe Skillselion MCP - thousands of ranked skills, loaded into your agent mid-task. No install.Get it →
pixel-process-ug avatar

Verification Before Completion

  • 65 installs
  • 1 repo stars
  • Updated March 16, 2026
  • pixel-process-ug/superkit-agents

Helps with ai & agent building tasks.

About

verification-before-completion is a Claude Code skill in the AI & Agent Building category.

  • verification-before-completion
  • AI & Agent Building
  • AI-coding skill

Verification Before Completion by the numbers

  • 65 all-time installs (skills.sh)
  • +2 installs in the week ending Aug 4, 2026 (Skillselion tracking)
  • Ranked #6,042 of 16,546 AI & Agent Building skills by installs in the Skillselion catalog
  • Data as of Aug 4, 2026 (Skillselion catalog sync)
npx skills add https://github.com/pixel-process-ug/superkit-agents --skill verification-before-completion

Add your badge

Show developers this skill is listed on Skillselion. Paste this into your README.

Listed on Skillselion
Installs65
repo stars1
Last updatedMarch 16, 2026
Repositorypixel-process-ug/superkit-agents

What it does

Helps with ai & agent building tasks.

Files

SKILL.mdMarkdownGitHub ↗

Overview

The verification-before-completion skill is the terminal checkpoint for every task in the toolkit. It enforces a strict 5-step protocol that requires running fresh verification commands, reading their full output, and confirming results match the completion claim. Without this skill, agents make unverified claims that lead to broken code in production — with it, every completion claim is backed by evidence.

---

Iron Law

NO COMPLETION CLAIMS WITHOUT FRESH VERIFICATION EVIDENCE.

You cannot say "it works," "it's done," "the bug is fixed," or "the feature is complete" without running verification commands and reading their output in this session. Cached results, previous runs, and assumptions do not count.

---

Phase 1: Identify Verification Commands

Before running anything, explicitly list what needs to pass for this specific task:

Verification TypeExample CommandsWhen Required
Unit testsnpm test, pytest, go test ./..., cargo test, php artisan testAlways
Integration testsnpm run test:integration, pytest tests/integration/When applicable
Type checkingtsc --noEmit, mypy ., pyright, phpstan analyseWhen project uses type checking
Lintingeslint ., ruff check ., golint ./..., php-cs-fixer fix --dry-runAlways
Buildnpm run build, cargo build, go build ./...Always
Format checkprettier --check ., black --check ., gofmt -l ., pint --testWhen project uses formatters

Action: List which of these apply to the current project. Not all projects have all types. Be explicit about what you will run and why.

STOP: Do NOT proceed to running commands until you have identified ALL applicable verification types.

---

Phase 2: Run Commands Fresh

Execute every verification command identified in Phase 1.

RuleRationale
Run AFTER the latest code changePre-change results are stale
Run the FULL suite, not a subsetSubset runs miss regressions
Do NOT rely on cached resultsCode changed since last run
Do NOT skip commands because "they passed earlier"Earlier is not now
If a command takes >5 minutes, note itExplain what was run instead
STOP: All commands must complete before proceeding to Phase 3.

---

Phase 3: Read Full Output

Read the entire output of each verification command. Pay attention to:

Output ElementWhat to Look ForWhy It Matters
Exit codeNon-zero = failureEven if output looks ok, non-zero means something failed
Test countExpected number of tests ran? Any skipped?Skipped tests = untested code
Warning messagesNew warnings not present beforeWarnings become errors; they indicate degradation
Deprecation noticesDeprecated API usageFuture breakage risk
Performance indicatorsUnusually slow testsMay indicate performance regression
Error messagesAny error, even if tests "pass"Some frameworks report errors alongside passing tests
STOP: Do NOT proceed if you have not read the full output of every command.

---

Phase 4: Verify Output Matches Claim

Ask yourself these questions. ALL must be "yes" to proceed:

QuestionIf "No" or "Unsure"
Do ALL tests pass (not just the ones I wrote)?Fix failing tests before claiming done
Does the build succeed without errors?Fix build errors
Does the type checker find no errors?Fix type errors
Does the linter pass?Fix lint errors
Are there any NEW warnings that were not there before?Investigate and fix or explicitly justify
Did the full suite run (not just a subset)?Run the full suite
Is the test count what I expected?Investigate skipped or missing tests
STOP: If ANY answer is "no" or "unsure", go back to fix and restart from Phase 1. Do NOT proceed to Phase 5.

---

Phase 5: Claim Completion with Evidence

Only now may you say the task is complete. Include this evidence:

VERIFICATION EVIDENCE
=====================
Task: [what was being done]
Date: [timestamp]

Commands Run:
  [x] Tests:      [command] -> [result: X passed, Y failed, Z skipped]
  [x] Build:      [command] -> [result: success/failure]
  [x] Lint:       [command] -> [result: X errors, Y warnings]
  [x] Type-check: [command] -> [result: X errors]
  [x] Format:     [command] -> [result: clean/X files to format]

All Green?  [x] YES  [ ] NO
New warnings introduced?  [ ] YES  [x] NO

Completion claim: [specific claim, e.g., "Feature X is implemented and all tests pass"]
STOP: This is the end of the verification protocol. Only claims with this evidence are valid.

---

Decision Table: What Counts as "Fresh" Evidence

Counts as FreshDoes NOT Count as Fresh
Ran command after the latest code changeRan before the latest code change
Full test suite executedSubset of tests executed
Output read and analyzedOutput skimmed or ignored
All verification types runOnly tests run (no lint, no build)
Command run in current sessionRecalled from memory of a previous session
Actual command output available"I remember it passed"

---

Decision Table: Edge Cases

SituationProtocol
Full suite takes >5 minutesRun related tests + smoke suite. Note that full suite was not run. Recommend CI run before merge.
No automated tests existNote as significant risk. Perform manual verification with documented steps. Recommend adding tests as follow-up. At minimum, verify code compiles/runs.
Tests are flakyRe-run failing test in isolation. If it passes alone, note flakiness. Verify your changes did not introduce it. Do NOT use flakiness as excuse to skip.
Only config changeConfig changes are #1 cause of outages. Full verification required.
Single line changeOne-line changes cause production outages. Full verification required.
Refactoring onlyExisting tests must still pass. Run full suite.

---

Common Failure Patterns

PatternWhat HappensWhy It Is Dangerous
Tests pass but lint failsCode works but has quality issuesLint failures often indicate real problems (unused vars, unreachable code)
Tests pass but build failsTest environment differs from buildProduction deployments will fail
Tests pass but type-check failsRuntime works but types are wrongBugs hiding behind any types, wrong interfaces
Tests pass in isolation but fail togetherShared state between testsFlaky CI, unreliable test suite
Manual testing passes but automated failsManual test missed edge casesThe automated test is right
Tests pass but new warnings appearedSomething degradedWarnings become errors over time
Subset of tests passOnly ran related testsRegression in unrelated area possible
Tests pass but coverage decreasedNew code is not testedUntested code is unverified code
Old test run used as evidenceResults are staleCode changed since that run
"It compiled, so it works"Compilation is necessary but not sufficientCompiled code can still be wrong

---

Anti-Patterns / Common Mistakes

What NOT to DoWhy It FailsWhat to Do Instead
Claim done without running testsUnverified code breaks in productionRun all verification commands fresh
Use "it passed earlier" as evidenceCode changed since thenRun fresh after every change
Skip lint because "it is just warnings"Warnings indicate real problemsFix warnings or explicitly justify each one
Run only the tests you wroteMisses regressions in other areasRun the full suite
Read test output partiallyMissed failures hidden in outputRead every line of output
Use manual testing as sole evidenceManual testing is incomplete and unrepeatableRun automated verification
Verify once, then make "small" additional changesThose changes are unverifiedRe-verify after every change
Suppress warnings without commentHides real issuesIf truly false positive, add suppression comment explaining why

---

Anti-Rationalization Guards

ExcuseReality
"I only changed one line"One-line changes cause production outages. Verify.
"The tests passed 5 minutes ago"You made changes since then. Run them again.
"I have tested this pattern before"This is a different instance. Verify this specific one.
"The change is obviously correct"Obvious changes fail more often because they are not verified.
"Running tests takes too long"Not running tests takes longer when the bug reaches production.
"I will verify after I submit"You will not. And if verification fails, you will undo and redo.
"It is just a config change"Config changes are the #1 cause of outages. Verify.
"The linter warnings are false positives"Review each one. Suppress with comment if truly false.
"The type errors are in unrelated code"They might interact. Run the full check.
"I tested it manually"Manual testing is incomplete and unrepeatable. Run automated verification.
Do NOT claim completion without Phase 5 evidence. There are zero exceptions.

---

Integration Points

SkillWhen Verification Is Required
test-driven-developmentAfter completing RED-GREEN-REFACTOR cycle for a feature
systematic-debuggingAfter applying a bug fix
executing-plansAfter each task and after each batch
subagent-driven-developmentAfter implementer delivers (via Agent tool), after reviewers approve
code-reviewBefore approving any code review
resilient-executionBefore marking any task as complete
autonomous-loopBefore setting EXIT_SIGNAL to true
finishing-a-development-branchBefore merge or PR creation

Integration Flow

[Do the work using other skills]
    |
    v
[Think you are done?]
    |
    v
[Invoke verification-before-completion]
    |
    +-- All checks pass -> Claim completion with Phase 5 evidence
    |
    +-- Any check fails -> Fix and re-verify (do NOT claim completion)

---

Enforcement by Other Skills

This skill is invoked by ALL other skills at completion time. It is not optional. It is a terminal checkpoint — called at the end of work, never at the beginning.

---

Skill Type

RIGID — The 5-step protocol is a HARD-GATE. Every step must be executed in order. No step may be skipped. No completion claim is valid without Phase 5 evidence. Do not relax these requirements for any reason.

Related skills

This week in AI coding

Five minutes, every Monday - the tools, releases and tactics for developers.

unsubscribe anytime.