Claude-skill-registry d-verify
Verify hypotheses with debug logging. Updates ./.gtd/debug/current/ROOT_CAUSE.md
git clone https://github.com/majiayu000/claude-skill-registry
T=$(mktemp -d) && git clone --depth=1 https://github.com/majiayu000/claude-skill-registry "$T" && mkdir -p ~/.claude/skills && cp -r "$T/skills/data/d-verify" ~/.claude/skills/majiayu000-claude-skill-registry-d-verify && rm -rf "$T"
skills/data/d-verify/SKILL.mdCore responsibilities:
- Load hypotheses in confidence order
- Add strategic debug logs to test each hypothesis
- Run reproduction steps
- Analyze debug output
- Move to next hypothesis if rejected
- Document root cause when found </role>
Flow: Load Hypotheses → Test Highest Confidence → Analyze → Found or Next </objective>
<context> **Required files:**
— Reproduction steps./.gtd/debug/current/SYMPTOM.md
— Hypotheses to test./.gtd/debug/current/HYPOTHESES.md
Output:
— When found./.gtd/debug/current/ROOT_CAUSE.md- Debug logs in code (temporary) </context>
One Hypothesis at a Time
Test systematically. Don't add logs for all hypotheses at once.
Strategic Logging
Add logs that can definitively confirm or reject the hypothesis.
Evidence-Based Conclusion
Root cause must be backed by debug output, not assumption.
Know When to Stop
If all hypotheses are rejected, stop and ask user to inspect again.
</philosophy> <process>1. Load Context
Read both files:
— For reproduction steps./.gtd/debug/current/SYMPTOM.md
— For hypotheses list./.gtd/debug/current/HYPOTHESES.md
if ! test -f "./.gtd/debug/current/SYMPTOM.md" || ! test -f "./.gtd/debug/current/HYPOTHESES.md"; then echo "Error: Missing required files" exit 1 fi
2. Spawn Verification Agents
For each hypothesis, spawn a researcher to inspect code for confirmation/rejection (READ-ONLY).
Concurrency: As many as needed (Parallel). Trigger: After loading hypotheses.
Fill prompt for each hypothesis:
<objective> Verify Hypothesis: {hypothesis_description} </objective> <context> - Symptom: {symptom_description} - Evidence: {existing_evidence} </context> <related> | Workflow | Relationship | | ------------- | ------------------------------- | | `/d-inspect` | Provides hypotheses to test | | `/d-plan-fix` | Creates fix plan for root cause | </related> <investigation_checklist> 1. Locate relevant code 2. Check for logic errors matching hypothesis 3. Verify if preconditions/assumptions hold true 4. Identify where to add debug logs if needed </investigation_checklist> <output_format> Verification Report: - Status: Confirmed / Rejected / Inconclusive - Evidence Found: (Code snippets, logic analysis) - Recommended Debug Log Location: (File:Line) </output_format>
Task( prompt=filled_prompt, subagent_type="researcher", description="Verifying hypothesis: {short_desc}" )
3. Review & Decide Actions
Review reports from all subagents.
3a. If Root Cause Confirmed by Inspection
If a subagent found definitive proof (e.g., obvious logic bug):
- Skip logging.
- Proceed to Document Root Cause.
3b. If Inconclusive / Needs Logs
Select the most promising hypothesis based on subagent findings.
Action:
- Add debug logs to locations recommended by subagent.
- Run reproduction steps.
- Analyze output.
3c. If All Rejected
If all subagents report "Rejected" with strong evidence:
- STOP.
- Ask user to re-inspect or provide new ideas.
4. Document Root Cause
When confirmed (by inspection or logs), write to
./.gtd/debug/current/ROOT_CAUSE.md:
# Root Cause **Found:** {date} **Status:** CONFIRMED ## Root Cause {Clear description of the actual root cause} ## Verified Hypothesis **Original Hypothesis {N}:** {description} **Confidence:** {original percentage} → **Confirmed** ## Evidence {Debug output and observations that confirmed this} **Debug logs showed:** - {key finding 1} - {key finding 2} ## Location - **Files:** `{file1}`, `{file2}` - **Lines:** {line ranges} - **Function/Method:** {specific location} ## Why It Causes The Symptom {Explain the causal chain from root cause to observed symptom} ## Rejected Hypotheses {List other hypotheses tested and why they were rejected}
4a. Clean Up Debug Logs
Remove or comment out temporary debug logs added during verification.
</process>
<offer_next>
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ GTD:DEBUG ► ROOT CAUSE FOUND ✓ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ Root cause documented: ./.gtd/debug/current/ROOT_CAUSE.md Verified hypothesis: {N} Location: {files} ───────────────────────────────────────────────────── ▶ Next Up /d-plan-fix — create fix plan ─────────────────────────────────────────────────────
</offer_next>
<forced_stop> STOP. The workflow is complete. Do NOT automatically run the next command. Wait for the user. </forced_stop>