← ClaudeAtlas

diagnosing-bugslisted

Disciplined diagnosis loop for hard bugs, regressions, flaky behavior, and performance failures. Use before implementing a fix: create a tight red-capable command, minimize the reproduction, test ranked falsifiable hypotheses, then lock the fix with behavioral evidence.
buildproven/claude-kit · ★ 0 · Code & Development · score 62
Install: claude install-skill buildproven/claude-kit
# Diagnosing Bugs Do not start with a theory. Start with a feedback loop that can prove the user's exact symptom exists and later prove it is gone. This workflow is adapted from Matt Pocock's MIT-licensed `diagnosing-bugs` skill; see `NOTICE`. ## 1. Build one red-capable command Choose the highest useful public seam: 1. focused existing test or new failing regression test 2. HTTP request or CLI invocation with a fixture 3. browser automation asserting DOM, console, and network behavior 4. captured request/trace replay 5. throwaway harness around the affected module 6. deterministic stress, fuzz, differential, or `git bisect run` harness The command must: - exercise the reported code path - assert the user's exact symptom, not merely “did not crash” - be deterministic, or raise a flaky reproduction rate enough to investigate - run unattended and quickly enough for repeated use Run it and record the command plus failing output. If no red-capable loop can be built, stop after documenting attempts and request the missing environment, trace, HAR/log/core dump, or permission for targeted instrumentation. ## 2. Reproduce and minimize Confirm the loop fails in the way the user reported. Remove inputs, steps, configuration, callers, and data one at a time, rerunning after each removal. Stop when every remaining element is necessary to reproduce the failure. ## 3. Rank falsifiable hypotheses Write 3–5 hypotheses. Each must predict an observable result: > If X is the cause,