From evanflow
Root-cause debugging discipline for bugs, test failures, and unexpected behavior. Guides hypothesis formation, verification, and fix-at-root with a failing test.
How this skill is triggered — by the user, by Claude, or both
Slash command
/evanflow:evanflow-debugThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
See `evanflow` meta-skill.
See evanflow meta-skill.
SKIP when: the cause is obvious and the fix is one line. Don't ceremonialize trivial bugs.
State the hypothesis explicitly:
"I think the bug is in : because when X happens, Y is supposed to happen but instead Z does."
A vague "probably the validation" is not a hypothesis.
Before writing any fix, ask:
Add an instrument (log, breakpoint, test assertion) that proves the hypothesis right or wrong. Watch the instrument fire. If it doesn't, the hypothesis is wrong — go back to step 2.
The test should fail because the bug exists. This is a vertical-slice TDD application — see evanflow-tdd.
Fix where the root cause originates, not where the symptom appears. If the fix is far from the symptom, leave a comment explaining the WHY (this is one of the few cases where a code comment earns its keep).
Run the test. Run the broader suite. Confirm no regressions.
evanflow-executing-plans. If standalone debug, report what was fixed and STOP. The user decides whether to commit or take further action.evanflow-improve-architectureevanflow-brainstorming to align on intended behaviornpx claudepluginhub evanklem/evanflow --plugin evanflowEnforces strict reproduce-first, root-cause-first, failing-test-first workflow for debugging bugs, test failures, or unexpected behavior.
Forces a scientific-method loop (Observe → Hypothesize → Experiment → Conclude) to debug non-trivial bugs. Prevents guessing by ensuring evidence before fixes.
Enforces systematic root cause analysis before fixes for bugs, test failures, unexpected behavior, performance issues, and build failures.