skills/dimon94/verification-before-completion/SKILL.md
Use when about to claim work is complete, fixed, or passing, before committing or creating PRs - requires running verification commands and confirming output before making any success claims; evidence before assertions always
npx skillsauth add aiskillstore/marketplace verification-before-completionInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
This skill enforces a critical discipline: never claim completion without fresh verification evidence.
The most common failure mode for AI agents is claiming success without actually verifying. This skill prevents that by requiring explicit verification steps before any completion claim.
NO COMPLETION CLAIMS WITHOUT FRESH VERIFICATION EVIDENCE
1. IDENTIFY: What command proves this claim?
→ "Tests pass" requires: npm test / pytest / go test
→ "Build succeeds" requires: npm run build / make
→ "Lint clean" requires: npm run lint / eslint
→ "Type check passes" requires: tsc --noEmit / mypy
2. RUN: Execute the FULL command (fresh, complete)
→ Not cached results
→ Not partial output
→ Not "I ran it earlier"
3. READ: Full output, check exit code, count failures
→ Exit code 0 = success
→ Exit code non-zero = failure
→ Count actual pass/fail numbers
4. VERIFY: Does output confirm the claim?
→ "All tests pass" = 0 failures in output
→ "Build succeeds" = no errors, artifacts created
→ "No lint errors" = 0 problems found
5. ONLY THEN: Make the claim with evidence
→ Quote the relevant output
→ Include exit code
→ Show pass/fail counts
| Flow | Verification Command | Success Criteria |
|------|---------------------|------------------|
| /flow-prd | validate-constitution --type prd | Exit 0, no violations |
| /flow-epic | validate-constitution --type epic | Exit 0, no violations |
| /flow-dev | npm test && npm run build | All tests pass, build succeeds |
| /flow-qa | npm test && npm run lint | All pass, no blockers |
| /flow-release | gh pr checks | All checks pass |
| Claim | Required Verification | |-------|----------------------| | "Tests pass" | Run full test suite, show output | | "Build succeeds" | Run build command, show output | | "Lint clean" | Run linter, show 0 errors | | "Type check passes" | Run type checker, show output | | "No regressions" | Run affected tests, compare before/after | | "Bug fixed" | Show failing test → fix → passing test |
| Excuse | Reality | |--------|---------| | "I just ran it" | Run it again. Fresh evidence required. | | "It was passing before" | Before ≠ now. Verify current state. | | "The change is trivial" | Trivial changes break things. Verify. | | "I'm confident it works" | Confidence ≠ evidence. Run the command. | | "Tests are slow" | Slow tests > broken production. Run them. | | "I'll verify after commit" | Verify BEFORE commit. Always. | | "The CI will catch it" | You catch it first. Don't waste CI cycles. | | "It's just documentation" | Doc changes can break builds. Verify. |
If you find yourself:
STOP. Run the verification command. Show the evidence.
When claiming completion, always include:
## Verification Evidence
**Command**: `npm test`
**Exit Code**: 0
**Output Summary**:
- Tests: 42 passed, 0 failed
- Coverage: 85%
- Duration: 12.3s
**Conclusion**: All tests pass. Ready for commit.
Exit Gate Verification:
1. Identify required verification commands
2. Run each command fresh
3. Capture full output
4. Verify success criteria met
5. Document evidence in EXECUTION_LOG.md
6. Only then proceed to next stage
Task Completion Verification:
1. Run task-specific tests
2. Verify acceptance criteria met
3. Show evidence in task completion message
4. Mark task complete only with evidence
This skill is about intellectual honesty. It's easy to believe something works. It's harder to prove it.
The discipline is:
[PROTOCOL]: 变更时更新此头部,然后检查 CLAUDE.md
development
Apple Human Interface Guidelines for content display components. Use this skill when the user asks about charts component, collection view, image view, web view, color well, image well, activity view, lockup, data visualization, content display, displaying images, rendering web content, color pickers, or presenting collections of items in Apple apps. Also use when the user says how should I display charts, what's the best way to show images, should I use a web view, how do I build a grid of items, what component shows media, or how do I present a share sheet. Cross-references: hig-foundations for color/typography/accessibility, hig-patterns for data visualization patterns, hig-components-layout for structural containers, hig-platforms for platform-specific component behavior.
tools
Automate HelpDesk tasks via Rube MCP (Composio): list tickets, manage views, use canned responses, and configure custom fields. Always search tools first for current schemas.
testing
Expert Haskell engineer specializing in advanced type systems, pure functional design, and high-reliability software. Use PROACTIVELY for type-level programming, concurrency, and architecture guidance.
tools
GraphQL gives clients exactly the data they need - no more, no less. One endpoint, typed schema, introspection. But the flexibility that makes it powerful also makes it dangerous. Without proper controls, clients can craft queries that bring down your server. This skill covers schema design, resolvers, DataLoader for N+1 prevention, federation for microservices, and client integration with Apollo/urql. Key insight: GraphQL is a contract. The schema is the API documentation. Design it carefully.