find-bug-root-cause
Root Cause Analysis Protocol
When a feature is broken, don't just add logging - find and fix the ACTUAL problem.
Methodology
-
Understand the Symptom:
- What does the user see/experience?
- What SHOULD happen?
- What ACTUALLY happens?
-
Trace the Data Flow:
- Follow code execution from UI → ViewModel → Service → Backend
- Check each layer for failures
- Use breakpoint logic (mental trace)
-
Check Dependencies:
- Is the service initialized? (
DIContainer.shared.service) - Are databases/indexes ready?
- Are async operations completing?
- Are errors being swallowed?
- Is the service initialized? (
-
Find the Bug:
- Don't stop at "add try/catch" or "add logging"
- Find the EXACT line where logic fails
- Understand WHY it fails
-
Fix It Properly:
- Fix root cause, not symptoms
- Add defensive checks only AFTER fixing core issue
- Test the fix logic
-
Verify:
- Does the fix address the root cause?
- Are there edge cases?
- Will this prevent recurrence?
Example: "Search returns no results"
❌ Bad approach:
// Just add logging
AppLog.info("Search started")
let results = await search(query)
AppLog.info("Search returned \(results.count) results")
✅ Good approach:
// Find WHY search returns nothing:
// 1. Is ScriptureDatabase initialized? → Check init
// 2. Are indexes built? → Check index creation
// 3. Is query being processed? → Check query transformation
// 4. FIX the actual issue (e.g., index not built on first launch)
// THEN add logging to prevent future issues
Return the root cause and the actual fix that solves it.
More from willsigmon/sigstack
fastlane expert
Fastlane automation - build, test, deploy iOS apps, TestFlight, App Store Connect
39swiftlint-autofix
Run SwiftFormat and fix all auto-correctable SwiftLint issues
30manus ai agent integration
Use this skill when delegating complex autonomous tasks to Manus AI - an AI agent that can browse the web, execute code, generate files, and comple...
24dead code eliminator
Find and delete unused files, disabled code blocks, Enhanced variants, deprecated features, test files in production for Leavn app
22bitrise expert
Bitrise CI/CD - iOS builds, automated testing, deployment, managed macOS runners
21testflight expert
TestFlight - beta testing, internal/external testers, build distribution
21