principle-fix-root-causes

Guides debugging by tracing symptoms to root causes instead of applying symptom-level workarounds.

1|Updated Aug 26, 2026
One-click install
npx skills add https://github.com/edivad1999/stuc-stack --skill principle-fix-root-causes-edivad1999
Or copy as Structured Prompt for Agent▼
Please help me install this Agent Skill.
Skill: principle-fix-root-causes
Source: https://github.com/edivad1999/stuc-stack/tree/main/skills/principle-fix-root-causes
Command: npx skills add https://github.com/edivad1999/stuc-stack --skill principle-fix-root-causes-edivad1999

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve? Debugging often ends with quick guards and workarounds that silence crashes while the real bug survives, making the codebase harder to reason about over time. This Skill enforces a disciplined root-cause debugging methodology so fixes address the actual defect. ## Core Features & Use Cases - Root-Cause Tracing: Reproduce the bug first, then ask "why" repeatedly until the underlying cause is found. - Anti-Pattern Detection: Resist nil-check guards that mask crashes, and grep for repeated instances of the same bug pattern to fix them all. - Restart Bug Diagnosis: Suspect stale persistent state (config files, caches, lock files, serialized state) before suspecting code when failures appear after restart. - Use Case: A crash keeps recurring after app restarts. Instead of adding a null check, you clear the cache, confirm stale state is the cause, and implement state validation as the real fix. ## Quick Start Apply the fix-root-causes principle while debugging this crash and trace the symptom back to its underlying cause before proposing a fix.

Frequently Asked Questions about principle-fix-root-causes

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I find the root cause of a bug instead of patching symptoms?▼

Reproduce the bug first, since an unreproducible bug cannot be verified as fixed. Then ask "why" iteratively until you reach the underlying cause, and instrument with logging rather than guessing when stuck.

Why is adding a null check to stop a crash considered a bad fix?▼

A nil check that silences a crash is a symptom fix: the real defect remains and workarounds accumulate, making the system harder to reason about. Root-cause fixes are slower upfront but reduce total debugging time.

Why does my app fail after restart but work otherwise?▼

Code does not change between runs, but state does. Suspect stale persistent state first: config files, caches, lock files, or serialized state. If clearing a state file restores behavior, prioritize state validation as the fix.

How do I make sure I fixed every instance of a bug pattern?▼

Check for the pattern, not just the instance. Grep the codebase for the same pattern and fix all occurrences, since the same root cause often produces identical defects in multiple locations.

When is a workaround acceptable instead of a root-cause fix?▼

If a workaround needs a paragraph-long comment to justify it, the code is wrong and should be fixed instead. Legitimate temporary workarounds are rare; the default should be fixing the code, not the comment.