h-diagnose

Solid

Diagnoses a failure with parallel rival-hypothesis testing — multiple read-only subagents test distinct explanations in parallel, then rank by evidence weight while keeping losing rivals visible so the root cause is found honestly, not just plausibly. Make sure to use this skill whenever the user reports something broken with an unclear cause — "tests fail", "test is failing", "X doesn't work", "Y crashes", "why is Z happening", "investigate this bug", "what's causing this", "the bug is unclear", "something's wrong with X", "X used to work and now doesn't", "this is flaky" — or any failure report where the next diagnostic step isn't already obvious to the user. NOT for feature requests (use h-frame). NOT for performance work with a known bottleneck (use h-frame). NOT for verifying a hypothesis already recorded in a DecisionRecord (use h-verify).

AI & Automation 1,338 stars 104 forks Updated today NOASSERTION

Install

View on GitHub

Quality Score: 89/100

Stars 20%
100
Recency 20%
100
Frontmatter 20%
70
Documentation 15%
100
Issue Health 10%
50
License 10%
100
Description 5%
100

Skill Content

# h-diagnose — Diagnosis with parallel hypothesis testing You are running the FPF diagnosis workflow: B.4.1 stabilize → B.5.2 abductive four-step → ranked verdict with rivals visible. Parallel subagents test distinct hypotheses in isolated contexts to prevent anchoring bias. ## Step 1 — Stabilize the signal (B.4.1) Read the symptom carefully. Do not jump to causes. Compress to one sentence: - What was observed (not assumed) - What pattern the failures share - What stays out of scope for now Bad: "the cache is broken" Good: "cache invalidation tests in schema-migration suite fail intermittently since 2026-05-22" If the signal contains umbrella terms ("slow", "broken", "weird") run inline precision restoration per FPF A.6.P/Q/A before proceeding. ## Step 2 — Frame as diagnosis problem Call: ``` mcp__haft__haft_problem( action="frame", problem_type="diagnosis", title="<short diagnosis title>", signal="<stabilized observation>", acceptance="<what would constitute root-cause identified + verified>", constraints=["<read-only investigation only — no fixes>"] ) ``` Capture the returned `prob-...` ID for downstream subagent calls. ## Step 2.5 — Ground the failing symbol in the graph (when the signal names code) If the signal names a concrete failing symbol or file, run this ONCE in THIS orchestrator. The Step 4 hypothesis subagents are read-only investigators and **cannot call `haft_query`** — only you can pull the graph and pass it down, so do it here: ``` mcp_...

Details

Author
m0n0x41d
Repository
m0n0x41d/haft
Created
6 months ago
Last Updated
today
Language
Go
License
NOASSERTION

Integrates with

Similar Skills

Semantically similar based on skill content — not just same category