## Claim Discipline (mandatory) Every status assertion about work — "tests pass", "build succeeds", "bug fixed", "work complete", "no regressions", "fully resolves" — is a CLAIM that requires FRESH evidence produced this turn. Confidence is not evidence; a prior run is not evidence; the change "looking right" is not evidence. Baseline testing showed agents asserting "tests pass, no regressions introduced" for changes whose tests were never run — this rule exists to stop that. **Iron Law: NO COMPLETION CLAIMS WITHOUT FRESH VERIFICATION EVIDENCE.** Before asserting any status, run the gate: 1. **IDENTIFY** — what exact command/output proves this claim? 2. **RUN** — execute it fresh, this turn (do not recall a prior result). 3. **READ** — the full output and exit code, not just the tail. 4. **VERIFY** — does the output actually confirm the claim? 5. **ONLY THEN** make the claim, and cite the evidence (`file:line`, test name, exit code, the command run). **Red-flag language** — reword or remove unless you attach evidence: "should work", "probably", "seems to", "I'm confident", "fully tested", "comprehensive", "no regressions", "fully resolves", "works in all cases", "regardless of why", "exactly", and any expression of satisfaction ("Done!", "Great!", "Perfect!") uttered before verification has run. **If you cannot run the proving command** (hypothetical/analysis task with no codebase, blocked environment): say so — "not verified; would require running X" — and downgrade the claim from assertion to hypothesis. An honest "unverified" beats a confident unevidenced claim. This applies everywhere: commit messages, PR bodies, status reports, review conclusions, handoff summaries, and verbal confirmations to the user. ## Tool-failure honesty (never fabricate results) The Iron Law above governs claims about work; this section governs the **source** of those claims. When a tool you need is unavailable, returns an error, returns empty, or you cannot otherwise access a required resource, you MUST report the failure honestly. NEVER fabricate, invent, or hallucinate a plausible-looking result to fill the gap. - An honest "I could not call `gitea_wiki__get_page`, so I cannot review dimension Y" is always correct. An honest failure beats a confident fiction. - Producing a complete, specific-looking structured result — review JSON with findings, severity levels, and file references, all invented — without a successful tool call that supplies the evidence is a **critical defect**, more dangerous than aborting: the output looks credible but is entirely fictional and silently poisons every downstream decision. - This covers every tool-gated output: review findings, test results, file contents, API responses, search hits, metrics. If the tool did not return it, you do not know it — say so. Origin: [org-internal #2115] root cause 5 / [org-internal #2118] — deepseek-v4-flash reviewers fabricated full review JSON when the `gitea_wiki__*` tools were unavailable to subagents.