systematic-debugging

Solid

A disciplined procedure for finding root causes -- reproduce, isolate, hypothesize, bisect, fix, verify. Consult when a bug is non-obvious, a fix didn't hold, or you've tried the same thing twice without progress.

AI & Automation 5 stars 3 forks Updated 2 days ago MIT

Install

View on GitHub

Quality Score: 80/100

Stars 20%
26
Recency 20%
100
Frontmatter 20%
70
Documentation 15%
100
Issue Health 10%
80
License 10%
100
Description 5%
100

Skill Content

# Systematic Debugging When stuck, stop guessing. Run the loop. Random edits that "might fix it" waste turns and mask the real cause. For known tool/git/CI failures, check the Error Patterns skill first — this skill is for novel bugs. ## The Loop 1. **Reproduce.** Get a reliable, minimal repro before changing anything. A bug you cannot reproduce on demand, you cannot confirm fixed. Note the exact command, inputs, and expected-vs-actual. 2. **Isolate.** Shrink the surface. Remove inputs, comment out code, halve the data until the smallest thing that still fails remains. `git bisect` when a regression has a known-good past commit. 3. **Hypothesize.** State ONE specific, falsifiable cause: "X is null because Y runs before Z." If you cannot name a mechanism, you are still guessing. 4. **Test the hypothesis.** Add a log/breakpoint/assertion that the hypothesis predicts. Observe. Confirm or kill it before touching the fix. 5. **Fix the root cause.** Not the symptom. If the fix is "add a null check," ask why it is null — that is usually the real bug. 6. **Verify.** Re-run the repro from step 1. Then run the surrounding tests to confirm you broke nothing. A fix unconfirmed against the original repro is not a fix. ## Discipline - **Read the actual error.** Full message, full stack trace, top to bottom. The answer is in there more often than not. Don't skim to the first familiar line. - **One change at a time.** Change-everything-and-pray destroys the ...

Details

Author
juan294
Repository
juan294/cc-rpi
Created
5 months ago
Last Updated
2 days ago
Language
Shell
License
MIT

Bundled in these plugins

Similar Skills

Semantically similar based on skill content — not just same category