systematic-debugging

Diagnose bugs through a four-phase root cause investigation process before proposing fixes.

Updated Mar 17, 2026
One-click install
npx skills add https://github.com/AveryRen/WarpTalk-TestPayment --skill systematic-debugging-averyren
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: systematic-debugging
Source: https://github.com/AveryRen/WarpTalk-TestPayment/tree/main/agent/.agents/skills/systematic-debugging
Command: npx skills add https://github.com/AveryRen/WarpTalk-TestPayment --skill systematic-debugging-averyren

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill includes scripts (resource) and references (resource) components.

What problem does it solve? Random fixes and quick patches waste time, mask underlying issues, and introduce new bugs. This Skill enforces a disciplined debugging methodology that finds the actual root cause before any fix is attempted, even under time pressure or social pressure to take shortcuts. ## Core Features & Use Cases - Four-Phase Process: Structured workflow covering root cause investigation, pattern analysis, hypothesis testing, and verified implementation. - Supporting Techniques: Includes root cause tracing through call stacks, defense-in-depth validation at multiple layers, and condition-based waiting to replace flaky arbitrary timeouts in tests. - Pressure Resistance: Explicit anti-patterns, red flags, and rationalization tables that stop shortcut behavior during emergencies. - Use Case: When a production test fails intermittently, follow Phase 1 to reproduce and gather evidence, trace the bad value to its source, form a single hypothesis, and implement one verified fix instead of stacking sleep() calls. ## Quick Start Use the systematic-debugging skill to investigate this failing test and find its root cause before suggesting 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 find the root cause of a bug instead of fixing symptoms?

Follow a four-phase process: investigate the root cause by reading errors and reproducing the issue, analyze patterns against working examples, form and test a single hypothesis, then implement one verified fix. Never propose fixes before completing the investigation phase.

How to fix flaky tests caused by arbitrary timeouts?

Replace setTimeout and sleep calls with condition-based waiting that polls for the actual condition you care about, such as an event appearing or state changing. Poll every 10ms with a timeout, which eliminates race conditions and typically speeds up test execution.

What should I do when my first bug fix doesn't work?

Stop and return to root cause investigation with the new information rather than stacking more fixes. If three or more fixes have failed, treat it as an architectural problem and discuss the fundamental design before attempting another fix.

How do I trace a bug that appears deep in the call stack?

Trace backward from the immediate cause by asking what called each function and what values were passed, until you find the original trigger. Add stack trace instrumentation with console.error before the failing operation if manual tracing is not possible.

When is it acceptable to skip systematic debugging for a quick fix?

Never, according to this methodology. Even under time pressure or for seemingly simple bugs, skipping investigation leads to symptom fixes that mask root causes and create new bugs. Systematic debugging is faster than guess-and-check thrashing.

How do I find which test is polluting shared state or creating files?

Use the included find-polluter.sh bisection script, which runs test files one by one and checks whether the unwanted file or directory appears after each run. It stops at the first polluting test and reports it for investigation.