@su-record/vibe 2.9.12 → 2.9.14

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (44) hide show
  1. package/README.ko.md +12 -1
  2. package/README.md +12 -1
  3. package/dist/cli/commands/info.d.ts.map +1 -1
  4. package/dist/cli/commands/info.js +3 -2
  5. package/dist/cli/commands/info.js.map +1 -1
  6. package/dist/cli/postinstall/constants.d.ts.map +1 -1
  7. package/dist/cli/postinstall/constants.js +2 -0
  8. package/dist/cli/postinstall/constants.js.map +1 -1
  9. package/dist/cli/postinstall/main.d.ts.map +1 -1
  10. package/dist/cli/postinstall/main.js +62 -52
  11. package/dist/cli/postinstall/main.js.map +1 -1
  12. package/dist/cli/setup/ProjectSetup.d.ts.map +1 -1
  13. package/dist/cli/setup/ProjectSetup.js +15 -0
  14. package/dist/cli/setup/ProjectSetup.js.map +1 -1
  15. package/dist/cli/utils/cli-detector.d.ts +14 -1
  16. package/dist/cli/utils/cli-detector.d.ts.map +1 -1
  17. package/dist/cli/utils/cli-detector.js +36 -1
  18. package/dist/cli/utils/cli-detector.js.map +1 -1
  19. package/dist/infra/lib/codex-proxy.d.ts.map +1 -1
  20. package/dist/infra/lib/codex-proxy.js +22 -6
  21. package/dist/infra/lib/codex-proxy.js.map +1 -1
  22. package/dist/infra/lib/llm-availability.d.ts +5 -2
  23. package/dist/infra/lib/llm-availability.d.ts.map +1 -1
  24. package/dist/infra/lib/llm-availability.js +11 -4
  25. package/dist/infra/lib/llm-availability.js.map +1 -1
  26. package/dist/infra/orchestrator/LLMCluster.d.ts +11 -2
  27. package/dist/infra/orchestrator/LLMCluster.d.ts.map +1 -1
  28. package/dist/infra/orchestrator/LLMCluster.js +25 -5
  29. package/dist/infra/orchestrator/LLMCluster.js.map +1 -1
  30. package/hooks/hooks.json +10 -58
  31. package/hooks/scripts/__tests__/pre-tool-guard.test.js +4 -3
  32. package/hooks/scripts/__tests__/sentinel-guard.test.js +6 -8
  33. package/hooks/scripts/figma-guard.js +2 -3
  34. package/hooks/scripts/lib/dispatcher.js +83 -0
  35. package/hooks/scripts/llm-orchestrate.js +84 -11
  36. package/hooks/scripts/post-edit-dispatcher.js +24 -0
  37. package/hooks/scripts/pre-tool-dispatcher.js +31 -0
  38. package/hooks/scripts/pre-tool-guard.js +2 -3
  39. package/hooks/scripts/prompt-dispatcher.js +5 -0
  40. package/hooks/scripts/sentinel-guard.js +2 -3
  41. package/hooks/scripts/stop-dispatcher.js +27 -0
  42. package/package.json +1 -1
  43. package/skills/rob-pike/SKILL.md +64 -0
  44. package/skills/systematic-debugging/SKILL.md +140 -0
@@ -0,0 +1,140 @@
1
+ ---
2
+ name: systematic-debugging
3
+ tier: core
4
+ description: "Enforce reproduce-first, root-cause-first, failing-test-first debugging. Auto-activates on bug, error, fail, broken, crash, flaky keywords."
5
+ triggers: [bug, error, fail, broken, crash, flaky, not working, regression, unexpected, stack trace, exception, debug]
6
+ priority: 90
7
+ ---
8
+
9
+ # Systematic Debugging
10
+
11
+ ## Hard Gates
12
+
13
+ These rules have NO exceptions:
14
+
15
+ 1. **Never fix before reproducing or observing the failure.**
16
+ 2. **State a root-cause hypothesis before changing code.**
17
+ 3. **Write a failing test (or equivalent) before fixing.**
18
+ 4. **Test one hypothesis at a time.**
19
+ 5. **No "while I'm here" refactoring during a fix.**
20
+ 6. **3 failed fixes → suspect structural issue, stop patching.**
21
+
22
+ These excuses are NOT allowed:
23
+ - "It looks simple, I'll just fix it"
24
+ - "No time, let me patch and move on"
25
+ - "This seems like the issue, let me just change it"
26
+
27
+ ## Workflow
28
+
29
+ Follow this order strictly.
30
+
31
+ ### Phase 1. Define The Problem
32
+
33
+ ```text
34
+ Problem: <expected> but got <actual> under <condition>
35
+ ```
36
+
37
+ Good: "Product detail API returns 500 when brand is null."
38
+ Bad: "Serializer is broken because brand mapping seems wrong."
39
+
40
+ ### Phase 2. Reproduce Or Instrument
41
+
42
+ Priority:
43
+ 1. Reproduce with existing test
44
+ 2. Minimal integration test
45
+ 3. Unit test
46
+ 4. Reproduction script/command
47
+ 5. Add logging/instrumentation to observe
48
+
49
+ Rules:
50
+ - Make reproduction path as small as possible.
51
+ - If UI-only bug, prefer reproducing at a lower layer.
52
+ - If flaky, add logging for inputs, timing, concurrency conditions.
53
+ - If can't reproduce, do NOT proceed to fix — increase observability first.
54
+
55
+ ### Phase 3. Gather Evidence
56
+
57
+ Collect observable facts only:
58
+ - Full error message and stack trace
59
+ - Failing input values
60
+ - Recent changed files/commits
61
+ - Environment/config differences
62
+ - Call path and data flow
63
+
64
+ At each boundary (controller → service → repository), check:
65
+ - What came in?
66
+ - What went out?
67
+ - What was transformed?
68
+ - Under what condition does it break?
69
+
70
+ Do NOT fix before locating the problem.
71
+
72
+ ### Phase 4. Isolate Root Cause
73
+
74
+ State exactly one candidate:
75
+
76
+ ```text
77
+ Hypothesis: <root cause> because <evidence>
78
+ ```
79
+
80
+ Good hypothesis conditions:
81
+ - Points to a single cause
82
+ - Connected to observed evidence
83
+ - Falsifiable with a small experiment
84
+
85
+ Bad: "Something async seems wrong" / "The whole serializer area is unstable"
86
+
87
+ ### Phase 5. Lock The Failure
88
+
89
+ Before fixing, lock the failure:
90
+ 1. Automated failing test (preferred)
91
+ 2. Add regression case to existing test
92
+ 3. Minimal reproduction script
93
+ 4. Temporary log/assertion guard
94
+
95
+ The test MUST fail before fix, pass after fix.
96
+
97
+ ### Phase 6. Single Fix
98
+
99
+ Allowed:
100
+ - Minimal code change addressing the root cause
101
+ - Minimal supporting changes for verification
102
+
103
+ Forbidden:
104
+ - Bundling multiple "related" fixes
105
+ - Refactoring alongside the fix
106
+ - Formatting/renaming/cleanup
107
+ - Adding null-guards without evidence
108
+ - Swallowing exceptions
109
+
110
+ If fix fails → go back to Phase 3. Previous hypothesis was wrong.
111
+
112
+ ### Phase 7. Verify And Close
113
+
114
+ ALL must be true:
115
+ 1. Original reproduction path no longer fails
116
+ 2. New failing guard now passes
117
+ 3. Related tests don't break
118
+ 4. Fix addresses cause, not symptom
119
+
120
+ For flaky bugs: single pass is not enough. Repeat or vary conditions.
121
+
122
+ ## Red Flags — Stop Immediately
123
+
124
+ If you think any of these, STOP and go back:
125
+
126
+ - "Let me just change this one line"
127
+ - "I'll check logs later, let me fix first"
128
+ - "I'll add the test later"
129
+ - "Let me fix this and that together"
130
+ - "The error is gone so it doesn't matter what caused it"
131
+
132
+ ## Completion Checklist
133
+
134
+ - [ ] Problem defined in one sentence
135
+ - [ ] Failure reproduced or made observable
136
+ - [ ] Evidence collected
137
+ - [ ] Single root-cause hypothesis stated
138
+ - [ ] Failing guard created before fix
139
+ - [ ] Single fix applied
140
+ - [ ] Verified via same reproduction path