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
Claiming work is complete without verification leads to false claims that erode trust and cause rework. Skipping verification does not save time -- it shifts the cost onto your collaborator, who must then discover the real state and redo work.
Core principle: Evidence before claims, always.
BEFORE claiming completion or reporting success:
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
Skipping any step means making an unverified claim.
| Claim | What You Must Run | What Is Not Sufficient | |-------|-------------------|------------------------| | Tests pass | Test command output showing 0 failures | A previous run, or "should pass" | | Linter clean | Linter output showing 0 errors | Partial check, extrapolation | | Build succeeds | Build command with exit 0 | Linter passing, "logs look good" | | Bug fixed | Reproduce original symptom, confirm it no longer occurs | Code changed, assumed fixed | | Regression test works | Red-green cycle: test fails without fix, passes with fix | Test passes once without verifying it can fail | | Agent completed task | VCS diff shows correct changes | Agent self-reporting "success" | | Requirements met | Line-by-line checklist against the plan | Tests passing alone |
Stop and verify if you notice yourself:
The underlying problem in each case is the same: making a claim without current evidence to support it.
Tests:
CORRECT: [Run test command] -> [See: 34/34 pass] -> "All tests pass"
INCORRECT: "Should pass now" / "Looks correct"
Regression tests (TDD Red-Green):
CORRECT: Write test -> Run (pass) -> Revert fix -> Run (MUST FAIL) -> Restore fix -> Run (pass)
INCORRECT: "I've written a regression test" (without red-green verification)
Build:
CORRECT: [Run build] -> [See: exit 0] -> "Build passes"
INCORRECT: "Linter passed" (linter does not check compilation)
Requirements:
CORRECT: Re-read plan -> Create checklist -> Verify each item -> Report gaps or completion
INCORRECT: "Tests pass, phase complete"
Agent delegation:
CORRECT: Agent reports success -> Check VCS diff -> Verify changes -> Report actual state
INCORRECT: Trust agent report without checking
If you are unsure what command to run for verification, check these sources in the project:
.github/workflows/, .gitlab-ci.yml, Jenkinsfile -- shows what the CI pipeline actually runsscripts section (npm test, npm run build, npm run lint)make test, make build, make check[tool.pytest], [tool.mypy], [tool.ruff] sections; also check scripts in [project.scripts]cargo test, cargo build, cargo clippyWhen in doubt, look at what CI runs -- that is the authoritative set of checks.
Unverified claims cause real problems:
Verification takes seconds. Recovering from false claims takes much longer.
Before these actions:
This does not apply to every interim statement during active work -- it applies at the boundaries where you are reporting a result or taking an action based on that result.
Run the command. Read the output. Then claim the result.
npx skills add indiosmo/verification-before-completion下载完整 Skill 目录,包含 SKILL.md 及所有相关文件
Search for places (restaurants, cafes, etc.) via Google Places API proxy on localhost.
Interact with GitHub using the `gh` CLI. Use `gh issue`, `gh pr`, `gh run`, and `gh api` for issues, PRs, CI runs, and advanced queries.
Create or update AgentSkills. Use when designing, structuring, or packaging skills with scripts, references, and assets.
Start voice calls via the OpenClaw voice-call plugin.
Notion API for creating and managing pages, databases, and blocks.
Gemini CLI for one-shot Q&A, summaries, and generation.
Category:developer