← ClaudeAtlas

rule-ab-testinglisted

Every proposal gets measured against the current approach and at least one variant before it is adopted, and the measurement is reported. Load before recommending a change, writing a detector, or claiming something is cheap, fast, or better.
djnsty23/claude-auto-dev · ★ 3 · Testing & QA · score 65
Install: claude install-skill djnsty23/claude-auto-dev
# Measure it against something A proposal is not a finding. Before recommending a change, measure it against **what happens today** and against **at least one alternative**, then report the numbers alongside the recommendation. This is not process for its own sake. Across two working sessions, measurement overturned the recommendation **sixteen** times — and four of those were proposals to build a detector that, once built and run, found nothing true: | Claim | What measuring found | |---|---| | "Write a cross-surface parity gate" | Already existed | | "Write an i18n drift gate" | Already existed, and shelled out to the fixer so the two could not diverge — better than the proposal | | "Uncleared intervals are a bug" | 3 hits, all guarded by an idempotence check | | "Listeners leak on re-render" | 3 hits, all idempotent `el.onclick =` assignment | | "Interactive divs lack keyboard paths" | 66 hits, precision destroyed by variable-name reuse; the tight version found 0 | | "16 stale references in CLAUDE.md" | 1 was real; the rest were prose, patterns, shorthand, and deliberate history | | "prd.json is 0 days stale" | mtime lies; by last commit, one repo was 4 days and 59 commits behind | | "Age prd.json from the last `passes` change instead" | **Returned the identical answer in all 3 repos.** A single incremental story-close resets it exactly as a bulk edit does. Dropped — and the *per-story* age it was standing in for turned out to be the real signal (4d/0d/1d file-level vs