원클릭으로
systematic-debugging
Use when encountering any bug, test failure, unexpected behavior, or error message — before proposing any fix
Codex 또는 Claude로 설치 이 Prompt를 복사해 Codex, Claude 또는 다른 어시스턴트에 붙여 넣으면 Skill 페이지를 검토하고 설치를 진행할 수 있습니다.
메뉴
Use when encountering any bug, test failure, unexpected behavior, or error message — before proposing any fix
Codex 또는 Claude로 설치 이 Prompt를 복사해 Codex, Claude 또는 다른 어시스턴트에 붙여 넣으면 Skill 페이지를 검토하고 설치를 진행할 수 있습니다.
SOC 직업 분류 기준
| name | systematic-debugging |
| description | Use when encountering any bug, test failure, unexpected behavior, or error message — before proposing any fix |
| tags | ["gate","debugging","process"] |
| triggers | ["bug","error","fail","unexpected","broken","crash","wrong output","exception","panic"] |
| chains_to | ["test-driven-development","verification-before-completion"] |
| priority | gate |
| gate | true |
Before fixing anything: reproduce, isolate, understand. Only then fix. Verify the fix doesn't break anything else.
If you cannot reproduce: state that clearly. Do not guess at fixes for bugs you cannot see.
Do NOT:
Chain to syntaxninja-dojo:verification-before-completion.
After the fix is verified:
Error encountered
│
├─ Can I reproduce it?
│ ├─ YES → Read the error. Trace the code. Form hypothesis.
│ │ ├─ Hypothesis confirmed → Minimal fix → Verify → Done
│ │ └─ Hypothesis wrong → New hypothesis → Repeat
│ └─ NO → State that. Ask for more context. Do not guess.
│
├─ Is it a test failure?
│ └─ Read the test. Read the code. Understand the contract.
│ ├─ Code is wrong → Fix code
│ └─ Test is wrong → Fix test (rare — verify carefully)
│
└─ Is it a build/compile error?
└─ Read the error message. It usually tells you exactly what's wrong.
| Anti-Pattern | Why It's Wrong |
|---|---|
| "Let me try this..." (no hypothesis) | Shotgun debugging wastes time |
| Changing 5 things at once | You won't know which one fixed it |
| "It works now" (no understanding) | You'll hit the same class of bug again |
| Fixing symptoms instead of root cause | The bug will resurface |
| Ignoring the full error message | The answer is usually in the error |
| Adding defensive code instead of fixing the bug | Band-aids hide problems |
OPTIONAL: syntaxninja-dojo:test-driven-development (when a regression test is needed) REQUIRED: syntaxninja-dojo:verification-before-completion (after fix)
Use when a structured PRD document is needed for the ralph loop — generates prd.json and progress.txt
Use when task scope exceeds one context window and decomposes into independent pass/fail stories with clean iteration boundaries
Use when implementation is complete, all tests pass, and you need to decide how to integrate the work — merge, PR, or cleanup
Use when starting feature work that needs isolation from the current workspace or before executing plans that could leave the branch in a broken state
Use when a hard problem was just solved and the solution should be captured as a learning for future reference
Use when 3+ distinct occurrences suggest a skill should be updated with a new trigger, anti-pattern, or verification step