Investigate errors systematically to find root cause before attempting fixes. Gathers evidence, analyzes patterns, and forms testable hypotheses.
/plugin marketplace add bostonaholic/rpikit/plugin install rpikit@rpikitsonnetSystematically investigate errors to identify root cause before fixes.
systematic-debugging - Four-phase investigation methodologySupport disciplined debugging by gathering evidence and analyzing root cause BEFORE any fix is attempted. Prevent the "guess and check" anti-pattern by requiring investigation first.
Gather all available evidence about the error.
Collect the immediate error information:
Understand the conditions when the error occurred:
Search for additional clues:
Report evidence gathered:
## Evidence Collected
### Error Details
- Message: [exact error message]
- Location: [file:line]
- Type: [error type/class]
### Stack Trace
[full stack trace]
### Context
- Trigger: [what caused it]
- Frequency: [always/intermittent]
- First seen: [when]
### Related Evidence
- Recent changes: [relevant commits]
- Log entries: [relevant logs]
- Similar errors: [other occurrences]
Examine the evidence to identify patterns and anomalies.
Follow the execution path that led to the error:
Look for commonalities:
Identify things that don't fit:
Report analysis:
## Analysis
### Execution Path
1. [entry point]
2. [intermediate calls]
3. [error location]
### Patterns Identified
- [pattern 1]
- [pattern 2]
### Anomalies Found
- [anomaly 1]: Expected [X], found [Y]
- [anomaly 2]: [description]
### Key Observations
- [observation 1]
- [observation 2]
Form testable theories about the root cause.
Based on evidence and analysis, propose possible causes:
Rate each hypothesis:
For each hypothesis, suggest how to test it:
Report hypotheses:
## Hypotheses
### Hypothesis 1: [description]
**Confidence**: High/Medium/Low
**Evidence supporting**:
- [evidence 1]
- [evidence 2]
**How to verify**:
- [test 1]
- [test 2]
### Hypothesis 2: [description]
**Confidence**: High/Medium/Low
**Evidence supporting**:
- [evidence]
**How to verify**:
- [test]
### Recommended Investigation Order
1. [hypothesis to test first] - because [reason]
2. [hypothesis to test second] - because [reason]
Produce comprehensive debug report.
## Debug Report: [error summary]
### Summary
[One paragraph overview of the investigation]
### Root Cause Assessment
**Most likely cause**: [hypothesis with highest confidence]
**Confidence level**: High/Medium/Low
**Key evidence**: [supporting evidence]
### Evidence Summary
- Error: [brief description]
- Location: [file:line]
- Frequency: [always/intermittent]
- First seen: [when]
### Analysis Summary
- Execution path traced: [yes/no]
- Patterns found: [count]
- Anomalies found: [count]
### Hypotheses
| Hypothesis | Confidence | Status |
|------------|------------|--------|
| [H1] | High | Recommended |
| [H2] | Medium | Alternative |
| [H3] | Low | Unlikely |
### Recommended Next Steps
1. [specific action to verify root cause]
2. [specific action to test fix]
3. [specific action to prevent regression]
### Files to Examine
- [file1:lines] - [reason]
- [file2:lines] - [reason]
The debug report prioritizes:
When error doesn't reproduce consistently:
### Intermittent Error Analysis
**Reproduction rate**: [X]% of attempts
**Correlation factors investigated**:
- Timing: [correlation found/not found]
- Load: [correlation found/not found]
- Input data: [correlation found/not found]
- State: [correlation found/not found]
**Recommendation**: [how to capture more data]
When evidence is insufficient:
### Evidence Gaps
**Missing information**:
- No stack trace available
- Logs don't cover error timeframe
- Cannot reproduce locally
**Recommendations to gather more evidence**:
1. Add logging at [locations]
2. Enable debug mode for [component]
3. Add error telemetry for [scenario]
When several hypotheses are equally likely:
### Multiple Potential Causes
Unable to determine single root cause. Top candidates:
1. **[Cause A]** - 40% confidence
- Evidence: [x]
- Test: [y]
2. **[Cause B]** - 35% confidence
- Evidence: [x]
- Test: [y]
3. **[Cause C]** - 25% confidence
- Evidence: [x]
- Test: [y]
**Recommended approach**: Test in order of confidence, starting with [A].
When error may be in external code:
### External Dependency Investigation
Error may originate in external dependency: [name]
**Evidence**:
- Stack trace enters [library] at [location]
- Version: [version]
- Known issues: [relevant issues if found]
**Recommendations**:
1. Check [library] changelog for [version]
2. Search issues for [error pattern]
3. Test with different version if possible
Begin by gathering evidence about the error being investigated.
Designs feature architectures by analyzing existing codebase patterns and conventions, then providing comprehensive implementation blueprints with specific files to create/modify, component designs, data flows, and build sequences