---
name: Diagnose Root
slug: diagnose-root
category: Quality
description: "Diagnose Root runs a four-phase root cause analysis for confirmed bugs: reproduce, isolate, hypothesize, and verify. Use it when the cause is unclear and you need evidence before proposing a fix."
github: "https://github.com/danielvm-git/bigpowers/tree/main/skills/diagnose-root"
language: Shell
stars: 173
forks: 14
install: "npx degit https://github.com/danielvm-git/bigpowers/tree/main/skills/diagnose-root ~/.claude/skills/diagnose-root"
installs_to: ~/.claude/skills/diagnose-root
source_path: skills/diagnose-root/SKILL.md
collection_size: 23
category_size: 1817
collection_url: "https://dirskills.com/collections/danielvm-git/bigpowers"
added: 2026-09-07T05:22:13.806Z
last_synced: 2026-09-07T05:22:13.806Z
canonical_url: "https://dirskills.com/skills/diagnose-root"
---

# Diagnose Root

Diagnose Root runs a four-phase root cause analysis for confirmed bugs: reproduce, isolate, hypothesize, and verify. Use it when the cause is unclear and you need evidence before proposing a fix.

**Install:**

```bash
npx degit https://github.com/danielvm-git/bigpowers/tree/main/skills/diagnose-root ~/.claude/skills/diagnose-root
```

## README

# Diagnose Root

**Boundary**: Canonical, reusable 4-phase RCA engine. Invoked by `investigate-bug` (as step 2 of the end-to-end flow) and by `fix-bug` (when no bug file exists). Does not write the bug file — that is `investigate-bug`'s responsibility.

Four phases — do not skip. Update the active `specs/bugs/BUG-*.md` file at each phase.

## Phases

1. **Reproduce** — minimal steps; record environment; capture logs.
2. **Isolate** — narrow to module/function; binary-search commits or config.
3. **Hypothesize** — list ranked hypotheses with falsification test each.
4. **Verify** — run falsification; confirm single root cause; link to fix plan.

> **HARD GATE** — Do not propose a fix until phase 4 confirms one root cause with evidence.

## Verify

→ verify: `[ "$(grep -lE 'Reproduce' specs/bugs/BUG-*.md 2>/dev/null | grep -cv "\.okf\.md$")" -ge 1 ]`
