aboutsummaryrefslogtreecommitdiff
path: root/debug
diff options
context:
space:
mode:
Diffstat (limited to 'debug')
-rw-r--r--debug/SKILL.md10
1 files changed, 10 insertions, 0 deletions
diff --git a/debug/SKILL.md b/debug/SKILL.md
index 4db6bbd..1db04df 100644
--- a/debug/SKILL.md
+++ b/debug/SKILL.md
@@ -36,6 +36,16 @@ Decide which kind of bug this is. Each branch hands off to the appropriate speci
If two branches genuinely apply (a code bug also revealed a process gap), run both — the techniques are independent and complement each other.
+### Hypothesis discipline — measure before theorizing (all branches)
+
+When the cause isn't obvious from Phase 1's evidence, do not narrate candidate causes and pick a favorite. Instead:
+
+1. **List the candidate causes**, each with the *single cheapest empirical test* that would confirm or kill it (a log read, a config dump, a timed measurement, an A/B toggle).
+2. **Run the cheap tests first** — independent read-only probes go out as one parallel batch (parallel subagents when the probes are heavy). Rank by cost-to-test, not by how plausible the theory sounds.
+3. **Report only confirmed findings.** A hypothesis with no passing test is not a finding, and never the basis for a fix. If every candidate dies, say "cause not isolated" and widen the evidence — don't promote the least-dead theory.
+
+This exists because serial hypothesis-cycling (VPN? GPU? firewall? DNS?) burns user cycles on theories a one-line measurement would have killed. Extended empirical monitoring (a battery-drain log, a before/after timing) beats a clever-sounding explanation every time.
+
## Phase 3 — Verify the Hypothesis
Once the chosen specialist has produced a hypothesis: