systematic-debugging

Diagnose software bugs through a four-phase root cause investigation workflow.

Updated Aug 21, 2026
One-click install
npx skills add https://github.com/ewtodd/son-of-anton --skill systematic-debugging-ewtodd
Or copy as Structured Prompt for Agent▼
Please help me install this Agent Skill.
Skill: systematic-debugging
Source: https://github.com/ewtodd/son-of-anton/tree/main/skills/software-development/systematic-debugging
Command: npx skills add https://github.com/ewtodd/son-of-anton --skill systematic-debugging-ewtodd

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve? Random fixes and guess-and-check patches waste hours and introduce new bugs. This Skill enforces a disciplined four-phase debugging process that finds the root cause before any fix is attempted, preventing symptom-patching and repeated failed fix attempts. ## Core Features & Use Cases - Four-Phase Process: Root cause investigation, pattern analysis, hypothesis testing, and implementation, each with explicit completion criteria. - Tight Feedback Loops: Builds fast, deterministic, red-capable reproduction commands (failing tests, curl scripts, replayed traces, bisection harnesses) before forming theories. - Rule of Three: After three failed fixes, stops and questions the underlying architecture instead of attempting a fourth patch. - Use Case: A production API intermittently returns wrong data. Instead of guessing, you build a failing test that reproduces the symptom, trace the bad value upstream through the call stack, form ranked hypotheses, and fix the true source with a regression test. ## Quick Start Use the systematic-debugging skill to investigate why the checkout test fails and find the root cause before proposing any fix.

Frequently Asked Questions about systematic-debugging

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I debug a failing test systematically?▼

Start by reading the full error message and stack trace, then build a tight loop that reproduces the exact symptom with one command. Trace the bad value upstream to its source, form ranked hypotheses, and test them one variable at a time before fixing.

How to reproduce flaky or intermittent bugs?▼

Raise the reproduction rate rather than chasing a perfect repro: run the trigger 100 times, parallelize, add stress, narrow timing windows, or inject sleeps. A 50% flake is debuggable; a 1% flake usually is not.

When should I stop trying fixes and question the architecture?▼

Stop after three failed fix attempts. If each fix reveals new coupling or creates symptoms elsewhere, the pattern itself is likely wrong. Discuss refactoring the architecture with the user instead of attempting a fourth fix.

Why does debugging without a reproduction step fail?▼

Without a red-capable loop that asserts the exact symptom, you cannot verify whether a change fixes the bug or merely masks it. Guessing without a loop is the primary failure mode this process prevents.

Can this debugging process work under time pressure?▼

Yes, and it is especially recommended under pressure. Systematic investigation typically resolves bugs in 15-30 minutes, while random fix attempts often cause hours of thrashing and introduce new bugs.