debug-strategy
Systematic Debugging Strategy
Initial Assessment
Before diving in, gather context:
- What changed? - Recent code changes, deployments, dependencies
- When did it start? - Timeline helps narrow scope
- Reproducible? - Consistent vs intermittent affects approach
- Error messages? - Exact text, stack traces, logs
- Environment? - Dev/staging/prod, OS, versions
Debugging Hierarchy (Work Through In Order)
1. Read the Error Message
- Parse the FULL stack trace
- Note the originating file and line number
- Look for "Caused by" chains
- Search error message verbatim if unclear
2. Reproduce Locally
- Create minimal reproduction case
- Isolate variables (data, environment, timing)
- Add logging at key points
3. Binary Search the Problem
- Comment out half the code
- Does it still fail? Problem is in remaining half
- Repeat until isolated
4. Check the Obvious
- Is it saved? Is it deployed?
- Correct environment variables?
- Dependencies installed/updated?
- Cache cleared?
- Correct branch?
5. Trace Data Flow
- Log inputs at entry point
- Log outputs at each transformation
- Find where actual diverges from expected
Common Bug Patterns
| Symptom | Likely Causes |
|---|---|
| Works locally, fails in prod | Env vars, paths, permissions, CORS |
| Intermittent failure | Race condition, caching, timing |
| Undefined/null error | Missing data, async timing, typo |
| Silent failure | Swallowed exception, wrong error handler |
| Performance degradation | N+1 queries, memory leak, missing index |
Debug Tools by Domain
JavaScript/React:
- Browser DevTools (Console, Network, React DevTools)
console.log,console.table,debugger- React Query DevTools, Redux DevTools
React Native:
- Flipper, React Native Debugger
adb logcat(Android), Console.app (iOS)- Remote JS debugging
Node.js:
--inspectflag + Chrome DevToolsDEBUG=*environment variablenode --trace-warnings
Database:
- Query explain plans
- Slow query logs
- Connection pool monitoring
Output Format
When reporting findings:
- Root Cause - What actually caused the bug
- Fix - Code change required
- Prevention - How to avoid similar bugs
- Testing - How to verify the fix
More from jamelna-apps/claude-dash
cost-tracking
When user mentions "spending", "usage", "tokens", "API cost", "budget", "expensive", or wants to understand Claude API costs. Provides cost awareness and optimization guidance.
11page-cro
When the user mentions "conversion", "CRO", "landing page", "not converting", "bounce rate", "optimize page", or asks about improving page performance.
7session-handoff
When user says "continue", "pick up where we left off", "last time", "previous session", "what were we doing", or wants explicit session continuity. Provides structured context handoff between sessions.
4error-diagnosis
When user encounters "error", "exception", "failed", "stack trace", "crashed", or needs error categorization. Provides structured root cause analysis and prevention strategies.
4code-review
When the user mentions "review", "PR", "pull request", "code review", "check my code", "feedback on", or asks for code quality assessment.
3smart-routing
When deciding which Claude model (Opus/Sonnet/Haiku) to use, or when "route", "which model", "complex task", "multi-file", "architectural", or "deep debugging" is mentioned. Guides quality-first model selection.
3