From rc
Enforces fresh verification evidence before any completion, fix, or passing claim, and before commits or PR creation. Use when an agent is about to report success, hand off work, or commit code. Do not use for early planning, brainstorming, or tasks that have not yet reached a concrete verification step.
How this skill is triggered — by the user, by Claude, or both
Slash command
/rc:rc-final-verifysonnetThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
Claiming work is complete without verification is dishonesty, not efficiency.
Claiming work is complete without verification is dishonesty, not efficiency.
Core principle: Evidence before claims, always.
Violating the letter of this rule is violating the spirit of this rule.
NO COMPLETION CLAIMS WITHOUT FRESH VERIFICATION EVIDENCE
If the verification command has not been run in the current message, the result cannot be claimed.
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 verifying
Match the verification scope to the claim scope:
make verify), run that.A narrow verification does not support a broad claim. Running make test alone does not justify "task complete." Running the linter alone does not justify "ready to commit." The verification scope must be equal to or broader than the claim scope.
If in doubt, run the full pipeline. Over-verification wastes minutes. Under-verification wastes hours.
Passing pipeline != meeting requirements. A green build proves the code compiles, lints, and passes existing tests. It does not prove the implementation matches the requirements. For "task complete" or "requirements met" claims, also verify the deliverables against the original specification — line by line, not by assumption.
| 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 |
| 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 |
Apply this skill before:
Commits and PRs are permanent artifacts. They require the highest verification standard.
Before git commit:
make verify). Not a subset. The full pipeline.git commit.Before creating a PR:
git diff review).If the full pipeline has not passed in this session after the last code change, the commit or PR must not proceed.
Verification is not complete until the agent cites actual command output in their response. "I ran it and it passed" is not evidence. If the verification output is not shown, the verification did not happen.
Every verification must be reported using this structure. Do not deviate.
VERIFICATION REPORT
-------------------
Claim: [What is being claimed — e.g., "tests pass", "build succeeds", "task complete"]
Command: [Exact command run — e.g., `make verify`]
Executed: [Timestamp or "just now, after all changes"]
Exit code: [0 or non-zero]
Output summary: [Key lines from output — pass count, error count, build result]
Warnings: [Any warnings, or "none"]
Errors: [Any errors, or "none"]
Verdict: PASS or FAIL
If the verdict is FAIL, do not use completion language. State what failed and what remains.
If the verdict is PASS, the claim may proceed — but only the specific claim supported by the evidence. "Tests pass" does not mean "build succeeds."
Verification failure is not a dead end. It is information. Follow this protocol:
Never:
If the correct verification command is unclear, identify it before making any completion claim. If only partial verification is available, state that limitation explicitly and avoid completion language.
npx claudepluginhub rodolfochicone/rc-project --plugin rcEnforces evidence-based completion claims by requiring fresh verification commands before committing or creating PRs. Prevents false assertions about tests, builds, lints, and bug fixes.
Enforces evidence-based completion claims by requiring fresh verification commands before declaring work done, fixed, or passing. Prevents premature claims without running tests, linting, or builds.
Enforces running tests, linters, or builds and confirming output before claiming code complete, fixed, or passing. Requires evidence prior to commits or PRs.