prizmkit 1.1.79 → 1.1.81

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 (110) hide show
  1. package/bundled/VERSION.json +3 -3
  2. package/bundled/dev-pipeline/scripts/init-pipeline.py +2 -0
  3. package/bundled/dev-pipeline-windows/scripts/init-pipeline.py +2 -0
  4. package/bundled/skills/_metadata.json +1 -1
  5. package/bundled/skills/app-planner/SKILL.md +12 -356
  6. package/bundled/skills/app-planner/references/infrastructure-convention-discovery.md +108 -0
  7. package/bundled/skills/app-planner/references/project-conventions-discovery.md +59 -0
  8. package/bundled/skills/app-planner/references/project-state-detection.md +88 -0
  9. package/bundled/skills/app-planner/references/rules/backend/derivation-rules.md +10 -0
  10. package/bundled/skills/app-planner/references/rules/database/derivation-rules.md +9 -0
  11. package/bundled/skills/app-planner/references/rules/frontend/derivation-rules.md +10 -0
  12. package/bundled/skills/app-planner/references/rules/frontend/question-bank.md +17 -0
  13. package/bundled/skills/app-planner/references/rules/frontend/template.md +19 -0
  14. package/bundled/skills/app-planner/references/rules/mobile/derivation-rules.md +10 -0
  15. package/bundled/skills/app-planner/references/rules-configuration.md +46 -0
  16. package/bundled/skills/bug-fix-workflow/SKILL.md +18 -54
  17. package/bundled/skills/bug-fix-workflow/references/bug-diagnosis.md +41 -0
  18. package/bundled/skills/bug-planner/SKILL.md +20 -12
  19. package/bundled/skills/bugfix-pipeline-launcher/SKILL.md +9 -108
  20. package/bundled/skills/bugfix-pipeline-launcher/references/configuration.md +98 -0
  21. package/bundled/skills/feature-pipeline-launcher/SKILL.md +20 -103
  22. package/bundled/skills/feature-pipeline-launcher/references/configuration.md +81 -0
  23. package/bundled/skills/feature-planner/SKILL.md +5 -9
  24. package/bundled/skills/feature-workflow/SKILL.md +27 -184
  25. package/bundled/skills/feature-workflow/references/brainstorm-guide.md +137 -0
  26. package/bundled/skills/prizm-kit/SKILL.md +14 -2
  27. package/bundled/skills/prizmkit-code-review/SKILL.md +67 -136
  28. package/bundled/skills/prizmkit-code-review/references/dev-agent-prompt.md +30 -0
  29. package/bundled/skills/prizmkit-code-review/references/review-report-template.md +31 -0
  30. package/bundled/skills/prizmkit-code-review/references/reviewer-agent-prompt.md +62 -0
  31. package/bundled/skills/prizmkit-code-review/scripts/check_loop.py +186 -0
  32. package/bundled/skills/prizmkit-committer/SKILL.md +8 -0
  33. package/bundled/skills/prizmkit-deploy/SKILL.md +49 -73
  34. package/bundled/skills/prizmkit-deploy/references/data-safety-examples.md +120 -0
  35. package/bundled/skills/prizmkit-deploy/references/ssh-bootstrap-flow.md +49 -0
  36. package/bundled/skills/prizmkit-deploy/references/ssh-execution-flow.md +41 -0
  37. package/bundled/skills/prizmkit-deploy/references/ssh-takeover.md +20 -0
  38. package/bundled/skills/prizmkit-implement/SKILL.md +7 -1
  39. package/bundled/skills/prizmkit-plan/SKILL.md +1 -83
  40. package/bundled/skills/prizmkit-plan/references/examples.md +85 -0
  41. package/bundled/skills/prizmkit-prizm-docs/SKILL.md +14 -0
  42. package/bundled/skills/prizmkit-retrospective/SKILL.md +1 -1
  43. package/bundled/skills/prizmkit-test/SKILL.md +3 -151
  44. package/bundled/skills/prizmkit-test/references/examples.md +70 -0
  45. package/bundled/skills/prizmkit-test/references/test-generation-steps.md +49 -0
  46. package/bundled/skills/prizmkit-test/references/test-report-template.md +42 -0
  47. package/bundled/skills/recovery-workflow/SKILL.md +24 -103
  48. package/bundled/skills/recovery-workflow/references/detection.md +58 -0
  49. package/bundled/skills/refactor-pipeline-launcher/SKILL.md +9 -96
  50. package/bundled/skills/refactor-pipeline-launcher/references/configuration.md +88 -0
  51. package/bundled/skills/refactor-planner/SKILL.md +15 -157
  52. package/bundled/skills/refactor-planner/references/fast-path.md +59 -0
  53. package/bundled/skills/refactor-planner/references/planning-phases.md +135 -0
  54. package/bundled/skills/refactor-workflow/SKILL.md +18 -178
  55. package/bundled/skills/refactor-workflow/references/brainstorm-guide.md +116 -0
  56. package/bundled/skills-windows/app-planner/SKILL.md +12 -358
  57. package/bundled/skills-windows/app-planner/references/infrastructure-convention-discovery.md +108 -0
  58. package/bundled/skills-windows/app-planner/references/project-conventions-discovery.md +59 -0
  59. package/bundled/skills-windows/app-planner/references/project-state-detection.md +90 -0
  60. package/bundled/skills-windows/app-planner/references/rules/backend/derivation-rules.md +10 -0
  61. package/bundled/skills-windows/app-planner/references/rules/database/derivation-rules.md +9 -0
  62. package/bundled/skills-windows/app-planner/references/rules/frontend/derivation-rules.md +10 -0
  63. package/bundled/skills-windows/app-planner/references/rules/frontend/question-bank.md +17 -0
  64. package/bundled/skills-windows/app-planner/references/rules/frontend/template.md +19 -0
  65. package/bundled/skills-windows/app-planner/references/rules/mobile/derivation-rules.md +10 -0
  66. package/bundled/skills-windows/app-planner/references/rules-configuration.md +46 -0
  67. package/bundled/skills-windows/bug-fix-workflow/SKILL.md +18 -54
  68. package/bundled/skills-windows/bug-fix-workflow/references/bug-diagnosis.md +41 -0
  69. package/bundled/skills-windows/bug-planner/SKILL.md +20 -12
  70. package/bundled/skills-windows/bugfix-pipeline-launcher/SKILL.md +6 -91
  71. package/bundled/skills-windows/bugfix-pipeline-launcher/references/configuration.md +94 -0
  72. package/bundled/skills-windows/feature-pipeline-launcher/SKILL.md +19 -88
  73. package/bundled/skills-windows/feature-pipeline-launcher/references/configuration.md +77 -0
  74. package/bundled/skills-windows/feature-planner/SKILL.md +5 -9
  75. package/bundled/skills-windows/feature-workflow/SKILL.md +27 -184
  76. package/bundled/skills-windows/feature-workflow/references/brainstorm-guide.md +137 -0
  77. package/bundled/skills-windows/prizm-kit/SKILL.md +14 -2
  78. package/bundled/skills-windows/prizmkit-code-review/SKILL.md +67 -136
  79. package/bundled/skills-windows/prizmkit-code-review/references/dev-agent-prompt.md +30 -0
  80. package/bundled/skills-windows/prizmkit-code-review/references/review-report-template.md +31 -0
  81. package/bundled/skills-windows/prizmkit-code-review/references/reviewer-agent-prompt.md +62 -0
  82. package/bundled/skills-windows/prizmkit-code-review/scripts/check_loop.py +186 -0
  83. package/bundled/skills-windows/prizmkit-committer/SKILL.md +8 -0
  84. package/bundled/skills-windows/prizmkit-deploy/SKILL.md +50 -74
  85. package/bundled/skills-windows/prizmkit-deploy/references/data-safety-examples.md +120 -0
  86. package/bundled/skills-windows/prizmkit-deploy/references/direct-upload.md +3 -3
  87. package/bundled/skills-windows/prizmkit-deploy/references/ssh-bootstrap-flow.md +49 -0
  88. package/bundled/skills-windows/prizmkit-deploy/references/ssh-execution-flow.md +41 -0
  89. package/bundled/skills-windows/prizmkit-deploy/references/ssh-takeover.md +20 -0
  90. package/bundled/skills-windows/prizmkit-deploy/references/ssl-setup.md +2 -2
  91. package/bundled/skills-windows/prizmkit-implement/SKILL.md +7 -1
  92. package/bundled/skills-windows/prizmkit-plan/SKILL.md +1 -83
  93. package/bundled/skills-windows/prizmkit-plan/references/examples.md +85 -0
  94. package/bundled/skills-windows/prizmkit-prizm-docs/SKILL.md +14 -0
  95. package/bundled/skills-windows/prizmkit-retrospective/SKILL.md +1 -1
  96. package/bundled/skills-windows/prizmkit-retrospective/references/structural-sync-steps.md +1 -1
  97. package/bundled/skills-windows/prizmkit-test/SKILL.md +3 -151
  98. package/bundled/skills-windows/prizmkit-test/references/examples.md +70 -0
  99. package/bundled/skills-windows/prizmkit-test/references/test-generation-steps.md +49 -0
  100. package/bundled/skills-windows/prizmkit-test/references/test-report-template.md +42 -0
  101. package/bundled/skills-windows/recovery-workflow/SKILL.md +24 -125
  102. package/bundled/skills-windows/recovery-workflow/references/detection.md +58 -0
  103. package/bundled/skills-windows/refactor-pipeline-launcher/SKILL.md +8 -77
  104. package/bundled/skills-windows/refactor-pipeline-launcher/references/configuration.md +82 -0
  105. package/bundled/skills-windows/refactor-planner/SKILL.md +15 -157
  106. package/bundled/skills-windows/refactor-planner/references/fast-path.md +59 -0
  107. package/bundled/skills-windows/refactor-planner/references/planning-phases.md +135 -0
  108. package/bundled/skills-windows/refactor-workflow/SKILL.md +18 -178
  109. package/bundled/skills-windows/refactor-workflow/references/brainstorm-guide.md +116 -0
  110. package/package.json +1 -1
@@ -130,28 +130,13 @@ Detect user intent from their message, then follow the corresponding workflow:
130
130
 
131
131
  Wait for user confirmation before proceeding.
132
132
 
133
- 5. **Ask execution mode** (first user decision — SEPARATE `AskUserQuestion` call):
133
+ 5. **Ask execution mode** (first user decision):
134
134
 
135
- **This MUST be its own standalone `AskUserQuestion` call.** Do NOT combine execution mode with step 6 config questions. The execution mode question is asked ALONE, user responds, THEN you proceed to step 6.
135
+ Present the three execution modes from the **Execution Mode** section above as a single standalone `AskUserQuestion` call (exactly 1 question, multiSelect: false). Wait for the user's response before continuing to step 6.
136
136
 
137
- Use `AskUserQuestion` with exactly 1 question:
137
+ Each `AskUserQuestion` round is a genuine gate: callers tend to merge interactive rounds and pre-fill answers, which skips real user decisions and produces wrong configs. Therefore: ask execution mode (step 5) and configuration (step 6) as SEPARATE `AskUserQuestion` calls, in order, and do not assemble or show the final command (step 7) until the user has answered both. If you find yourself writing the final command before the user has answered, STOP — you are violating this rule.
138
138
 
139
- **Question 1Execution mode** (multiSelect: false):
140
- - Foreground (Recommended) — pipeline runs in the current session via `run-refactor.sh run`. Visible output and direct error feedback.
141
- - Background daemon — pipeline runs fully detached via `launch-refactor-daemon.sh`. Survives AI CLI session closure.
142
- - Manual — display the final assembled commands only. Do not execute anything. User runs them on their own.
143
-
144
- ⚠️ STOP HERE and wait for user response before continuing to step 6.
145
-
146
- 6. **Ask configuration options** ⚠️ MANDATORY INTERACTIVE STEP — applies to ALL execution modes (Foreground, Background, AND Manual). This is a SEPARATE `AskUserQuestion` call from step 5. You MUST ask the user to configure options and WAIT for their response BEFORE proceeding to step 7.
147
-
148
- ⛔ **HARD STOP**: You MUST call `AskUserQuestion` with the 4 questions below and WAIT for the user's response. You MUST NOT:
149
- - Combine step 5 and step 6 into one `AskUserQuestion` call (this is the most common violation — execution mode MUST be asked separately in step 5)
150
- - Skip this step and jump to step 7
151
- - Merge step 6 and step 7 into one response
152
- - Assume default values and show the command without asking
153
- - Show the command as text and ask "ready?" without presenting the options
154
- If you find yourself writing the final command before the user has answered these 4 questions, STOP — you are violating this rule.
139
+ 6. **Ask configuration options** a SEPARATE `AskUserQuestion` call from step 5, applies to ALL execution modes (Foreground, Background, AND Manual).
155
140
 
156
141
  Use `AskUserQuestion` to present ALL 4 configuration choices (the full 4-question budget goes to config, NOT shared with execution mode):
157
142
 
@@ -174,67 +159,10 @@ Detect user intent from their message, then follow the corresponding workflow:
174
159
 
175
160
  Note: Refactor filter defaults to all refactor items (by priority order). If the user selects "Other" on any option, handle their custom input.
176
161
 
177
- **If user chose "Yes" to Advanced config**, ask a second round of `AskUserQuestion`:
178
-
179
- **Question 1 Session timeout** (multiSelect: false):
180
- - None (default) — No timeout
181
- - 30 min — `SESSION_TIMEOUT=1800`
182
- - 1 hour — `SESSION_TIMEOUT=3600`
183
- - 2 hours — `SESSION_TIMEOUT=7200`
184
-
185
- **Question 2 — Stop on failure** (multiSelect: false):
186
- - Off (default) — Pipeline continues to next task after failure
187
- - On — Pipeline halts immediately when a task exhausts all retries (`STOP_ON_FAILURE=1`)
188
-
189
- **Question 3 — Critic review** (multiSelect: false):
190
- - Off (default) — Skip adversarial review
191
- - On — Enable adversarial critic review: an independent AI agent reviews the refactor plan for completeness and the implementation for regressions, missed edge cases, and behavior violations. Adds ~5-10 min per refactor task.
192
-
193
- **Question 4 — Deploy after completion?** (multiSelect: false):
194
- - No (default) — Skip deployment after pipeline completes
195
- - Yes — Run /prizmkit-deploy automatically after all refactors complete successfully (`ENABLE_DEPLOY=1`). Deployment is blocked if any refactor did not complete successfully (status not 'completed' or manually 'skipped').
196
-
197
- Default Critic to Off unless refactor items have `priority: "critical"` (in which case default to On).
198
-
199
- **If advanced config was selected, also ask about reasoning effort** in a follow-up `AskUserQuestion` call:
200
-
201
- **Question — Reasoning effort** (multiSelect: false):
202
- - Default (none) — Use CLI default
203
- - low — Minimize reasoning, fastest output (`PRIZMKIT_EFFORT=low`)
204
- - medium — Moderate reasoning (`PRIZMKIT_EFFORT=medium`)
205
- - high — Thorough reasoning for complex tasks (`PRIZMKIT_EFFORT=high`)
206
- - xhigh — Extensive reasoning (`PRIZMKIT_EFFORT=xhigh`)
207
- - max — Maximum reasoning, Claude Code only (`PRIZMKIT_EFFORT=max`)
208
-
209
- **Environment variable mapping** (for translating user responses → env vars):
210
-
211
- | Config choice | Environment variable |
212
- |-----------|---------------------|
213
- | Verbose: On | `VERBOSE=1` |
214
- | Verbose: Off | `VERBOSE=0` |
215
- | Max retries: N | `MAX_RETRIES=N` |
216
- | Strict behavior: On | `STRICT_BEHAVIOR_CHECK=1` |
217
- | Strict behavior: Off | `STRICT_BEHAVIOR_CHECK=0` |
218
- | Critic: On | `ENABLE_CRITIC=true` |
219
- | Timeout: value | `SESSION_TIMEOUT=<seconds>` |
220
- | Stop on failure: On | `STOP_ON_FAILURE=1` |
221
- | Deploy: Yes | `ENABLE_DEPLOY=1` |
222
- | Effort: value | `PRIZMKIT_EFFORT=<value>` |
223
-
224
- **Advanced environment variables** (not exposed in interactive menu, pass via `--env`):
225
-
226
- | Variable | Default | Purpose |
227
- |----------|---------|---------|
228
- | `MODEL` | (none) | AI model override (e.g. `claude-opus-4.6`) |
229
- | `AUTO_PUSH` | `0` | Auto-push to remote after successful refactor (`1` to enable) |
230
- | `DEV_BRANCH` | auto-generated | Custom dev branch name (default: `refactor/pipeline-{run_id}`) |
231
- | `HEARTBEAT_INTERVAL` | `30` | Heartbeat log interval in seconds |
232
- | `HEARTBEAT_STALE_THRESHOLD` | `600` | Max seconds without heartbeat before marking stale |
233
- | `LOG_CLEANUP_ENABLED` | `1` | Run periodic log cleanup (`0` to disable) |
234
- | `LOG_RETENTION_DAYS` | `14` | Delete logs older than N days |
235
- | `LOG_MAX_TOTAL_MB` | `1024` | Keep total logs under N MB via oldest-first cleanup |
236
-
237
- ⚠️ STOP HERE and wait for user response before continuing to step 7.
162
+ **If user chose "Yes" to Advanced config**, run the advanced configuration round (a second `AskUserQuestion` round, plus a reasoning-effort follow-up). It applies to a minority of sessions, so the full question set lives in `${SKILL_DIR}/references/configuration.md` → **Advanced Configuration Round**. Default Critic to Off unless refactor items have `priority: "critical"` (in which case default to On).
163
+
164
+ **Environment variable mapping** and **advanced environment variables** tables — read `${SKILL_DIR}/references/configuration.md` for the full translation tables (10 config→env mappings + 8 advanced variables).
165
+
238
166
 
239
167
  7. **Show final command**: After user confirms configuration in step 6, assemble the complete command from execution mode + user-confirmed configuration, and present it to the user.
240
168
 
@@ -383,22 +311,7 @@ Notes:
383
311
 
384
312
  ### Error Handling
385
313
 
386
- | Error | Action |
387
- |-------|--------|
388
- | `.prizmkit/plans/refactor-list.json` not found | Tell user to run `refactor-planner` skill first |
389
- | Circular dependencies in refactor list | Fix dependency graph in `.prizmkit/plans/refactor-list.json` before launching |
390
- | Test baseline failing | Fix failing tests before starting refactoring -- behavior preservation requires a green baseline |
391
- | `jq` not installed | Suggest: `brew install jq` |
392
- | `cbc`/`claude` not in PATH | Check AI CLI installation |
393
- | Refactor pipeline already running | Show status, ask if user wants to stop and restart |
394
- | PID file stale (process dead) | `launch-refactor-daemon.sh` auto-cleans, retry start |
395
- | Launch failed (process died immediately) | Show last 20 lines of log: `tail -20 .prizmkit/state/refactor/pipeline-daemon.log` |
396
- | Refactor stuck/blocked | Use `reset-refactor.sh <R-XXX> --clean --run` for a fresh retry |
397
- | All refactors blocked/failed | Show status, suggest recovery: `.prizmkit/dev-pipeline/reset-refactor.sh <R-XXX> --clean --run .prizmkit/plans/refactor-list.json` |
398
- | `playwright-cli` not installed | Browser verification skipped for playwright refactors (non-blocking). Suggest: `npm install -g @playwright/cli@latest && playwright-cli install --skills` |
399
- | `opencli` not installed | Browser verification skipped for opencli refactors (non-blocking). Install opencli for Chrome session-based browser verification |
400
- | Deploy session failed | Pipeline completed but deploy session exited non-zero. Check `.prizmkit/state/refactor/deploy/<session_id>/logs/session.log`. Retry manually: `/prizmkit-deploy`. |
401
- | Permission denied on script | Run `chmod +x .prizmkit/dev-pipeline/launch-refactor-daemon.sh .prizmkit/dev-pipeline/run-refactor.sh` |
314
+ Read the error-handling table in `${SKILL_DIR}/references/configuration.md` for the full list of errors and recovery actions.
402
315
 
403
316
  ### Integration Notes
404
317
 
@@ -0,0 +1,88 @@
1
+ # Configuration Reference — Refactor Pipeline Launcher
2
+
3
+ Environment variable mappings for the refactor launcher.
4
+
5
+ ## Environment Variable Mapping
6
+
7
+ Translating user responses to env vars:
8
+
9
+ | Config choice | Environment variable |
10
+ |-----------|---------------------|
11
+ | Verbose: On | `VERBOSE=1` |
12
+ | Verbose: Off | `VERBOSE=0` |
13
+ | Max retries: N | `MAX_RETRIES=N` |
14
+ | Strict behavior: On | `STRICT_BEHAVIOR_CHECK=1` |
15
+ | Strict behavior: Off | `STRICT_BEHAVIOR_CHECK=0` |
16
+ | Critic: On | `ENABLE_CRITIC=true` |
17
+ | Timeout: value | `SESSION_TIMEOUT=<seconds>` |
18
+ | Stop on failure: On | `STOP_ON_FAILURE=1` |
19
+ | Deploy: Yes | `ENABLE_DEPLOY=1` |
20
+ | Effort: value | `PRIZMKIT_EFFORT=<value>` |
21
+
22
+ ## Advanced Environment Variables
23
+
24
+ Not exposed in interactive menu, pass via `--env`:
25
+
26
+ | Variable | Default | Purpose |
27
+ |----------|---------|---------|
28
+ | `MODEL` | (none) | AI model override (e.g. `claude-opus-4.6`) |
29
+ | `AUTO_PUSH` | `0` | Auto-push to remote after successful refactor (`1` to enable) |
30
+ | `DEV_BRANCH` | auto-generated | Custom dev branch name (default: `refactor/pipeline-{run_id}`) |
31
+ | `HEARTBEAT_INTERVAL` | `30` | Heartbeat log interval in seconds |
32
+ | `HEARTBEAT_STALE_THRESHOLD` | `600` | Max seconds without heartbeat before marking stale |
33
+ | `LOG_CLEANUP_ENABLED` | `1` | Run periodic log cleanup (`0` to disable) |
34
+ | `LOG_RETENTION_DAYS` | `14` | Delete logs older than N days |
35
+ | `LOG_MAX_TOTAL_MB` | `1024` | Keep total logs under N MB via oldest-first cleanup |
36
+
37
+ ## Error Handling
38
+
39
+ | Error | Action |
40
+ |-------|--------|
41
+ | `.prizmkit/plans/refactor-list.json` not found | Tell user to run `refactor-planner` skill first |
42
+ | Circular dependencies in refactor list | Fix dependency graph in `.prizmkit/plans/refactor-list.json` before launching |
43
+ | Test baseline failing | Fix failing tests before starting refactoring — behavior preservation requires a green baseline |
44
+ | `jq` not installed | Suggest: `brew install jq` |
45
+ | `cbc`/`claude` not in PATH | Check AI CLI installation |
46
+ | Refactor pipeline already running | Show status, ask if user wants to stop and restart |
47
+ | PID file stale (process dead) | `launch-refactor-daemon.sh` auto-cleans, retry start |
48
+ | Launch failed (process died immediately) | Show last 20 lines of log: `tail -20 .prizmkit/state/refactor/pipeline-daemon.log` |
49
+ | Refactor stuck/blocked | Use `reset-refactor.sh <R-XXX> --clean --run` for a fresh retry |
50
+ | All refactors blocked/failed | Show status, suggest recovery: `.prizmkit/dev-pipeline/reset-refactor.sh <R-XXX> --clean --run .prizmkit/plans/refactor-list.json` |
51
+ | `playwright-cli` not installed | Browser verification skipped for playwright refactors (non-blocking). Suggest: `npm install -g @playwright/cli@latest && playwright-cli install --skills` |
52
+ | `opencli` not installed | Browser verification skipped for opencli refactors (non-blocking). Install opencli for Chrome session-based browser verification |
53
+ | Deploy session failed | Pipeline completed but deploy session exited non-zero. Check `.prizmkit/state/refactor/deploy/<session_id>/logs/session.log`. Retry manually: `/prizmkit-deploy`. |
54
+ | Permission denied on script | Run `chmod +x .prizmkit/dev-pipeline/launch-refactor-daemon.sh .prizmkit/dev-pipeline/run-refactor.sh` |
55
+
56
+ ## Advanced Configuration Round
57
+
58
+ Only run this when the user answered "Yes" to the **Advanced config?** question in step 6. It applies to a minority of sessions.
59
+
60
+ Ask a second round of `AskUserQuestion` with these 4 questions:
61
+
62
+ **Question 1 — Session timeout** (multiSelect: false):
63
+ - None (default) — No timeout
64
+ - 30 min — `SESSION_TIMEOUT=1800`
65
+ - 1 hour — `SESSION_TIMEOUT=3600`
66
+ - 2 hours — `SESSION_TIMEOUT=7200`
67
+
68
+ **Question 2 — Stop on failure** (multiSelect: false):
69
+ - Off (default) — Pipeline continues to next task after failure
70
+ - On — Pipeline halts immediately when a task exhausts all retries (`STOP_ON_FAILURE=1`)
71
+
72
+ **Question 3 — Critic review** (multiSelect: false):
73
+ - Off (default) — Skip adversarial review
74
+ - On — Enable adversarial critic review: an independent AI agent reviews the refactor plan for completeness and the implementation for regressions, missed edge cases, and behavior violations. Adds ~5-10 min per refactor task.
75
+
76
+ **Question 4 — Deploy after completion?** (multiSelect: false):
77
+ - No (default) — Skip deployment after pipeline completes
78
+ - Yes — Run /prizmkit-deploy automatically after all refactors complete successfully (`ENABLE_DEPLOY=1`). Deployment is blocked if any refactor did not complete successfully (status not 'completed' or manually 'skipped').
79
+
80
+ Then ask about reasoning effort in a follow-up `AskUserQuestion` call:
81
+
82
+ **Question — Reasoning effort** (multiSelect: false):
83
+ - Default (none) — Use CLI default
84
+ - low — Minimize reasoning, fastest output (`PRIZMKIT_EFFORT=low`)
85
+ - medium — Moderate reasoning (`PRIZMKIT_EFFORT=medium`)
86
+ - high — Thorough reasoning for complex tasks (`PRIZMKIT_EFFORT=high`)
87
+ - xhigh — Extensive reasoning (`PRIZMKIT_EFFORT=xhigh`)
88
+ - max — Maximum reasoning, Claude Code only (`PRIZMKIT_EFFORT=max`)
@@ -78,7 +78,7 @@ Do NOT use this skill when the user wants to:
78
78
  - Read `${SKILL_DIR}/references/behavior-preservation.md` for preservation strategy selection
79
79
 
80
80
  4. **Load on-demand references when triggered**:
81
- - Validation errors or interrupted session -> read error recovery patterns (similar to feature-planner)
81
+ - Validation errors or interrupted session -> see the "Error Recovery & Resume" section below
82
82
 
83
83
  5. **Always validate output via script**:
84
84
  - Run:
@@ -220,13 +220,7 @@ Ask: "Based on this analysis, here's how I'd recommend decomposing the refactori
220
220
 
221
221
  **Goal**: Split refactoring goals into executable, well-ordered items.
222
222
 
223
- Read `${SKILL_DIR}/assets/planning-guide.md` for decomposition patterns and dependency ordering rules.
224
-
225
- For each refactoring goal:
226
- 1. Identify atomic refactoring operations
227
- 2. Determine inter-item dependencies (safe renames first, structural changes later)
228
- 3. Assess complexity per item (file count, cross-module scope, test coverage)
229
- 4. Assign behavior preservation strategy per item (read `${SKILL_DIR}/references/behavior-preservation.md`)
223
+ Read `${SKILL_DIR}/references/planning-phases.md` for the full Phase 4-6 procedures — item decomposition patterns, per-item confirmation loop, and completeness review checklist.
230
224
 
231
225
  **CHECKPOINT CP-RP-3**: All items decomposed with dependencies and preservation strategies.
232
226
 
@@ -234,29 +228,7 @@ For each refactoring goal:
234
228
 
235
229
  **Goal**: Present each item to the user for confirmation, modification, or rejection.
236
230
 
237
- For each item, display:
238
-
239
- ```
240
- Refactor Item R-001:
241
- Title: [title]
242
- Type: [extract/rename/restructure/simplify/decouple/migrate]
243
- Scope: [files list]
244
- Priority: [critical/high/medium/low]
245
- Complexity: [low/medium/high]
246
- Behavior Preservation: [test-gate/snapshot/manual]
247
- Acceptance Criteria:
248
- - [criterion 1]
249
- - [criterion 2]
250
- Dependencies: [none / R-002, R-003]
251
-
252
- Confirm? (Y/modify/skip)
253
- ```
254
-
255
- - **Y**: Accept item as-is
256
- - **modify**: User provides changes, update item, re-display for confirmation
257
- - **skip**: Remove item from the list
258
-
259
- Continue until all items are confirmed or skipped.
231
+ See `${SKILL_DIR}/references/planning-phases.md` for the display template and confirm/modify/skip loop procedure.
260
232
 
261
233
  **CHECKPOINT CP-RP-4**: All items confirmed by user.
262
234
 
@@ -264,28 +236,7 @@ Continue until all items are confirmed or skipped.
264
236
 
265
237
  **Goal**: Check the full item set for consistency, gaps, and headless execution readiness.
266
238
 
267
- 1. **Dependency ordering check**: Verify items form a valid DAG (no cycles). Items should be ordered: safe renames -> extract/inline -> structural changes -> migrations
268
- 2. **Behavior preservation check**: Every item must have a declared preservation strategy. Flag any item with `manual` strategy and no test coverage.
269
- 3. **Gap detection**: Are there intermediate steps needed between items? Does item A's output match item B's input assumption?
270
- 4. **Cross-module impact**: Do any items affect modules outside the declared scope?
271
- 5. **Headless Execution Readiness**: The refactor pipeline runs each item through an autonomous AI session with NO human interaction. For each item, verify:
272
- - **Scope clarity**: Are all affected files explicitly listed? The AI must know exactly where to look.
273
- - **Refactoring instructions**: Is the description specific enough to execute without ambiguity?
274
- - ❌ "Clean up the utils module" — what exactly should change?
275
- - ✅ "Extract validation functions (validateEmail, validatePhone, validateUrl) from src/utils/helpers.ts into src/utils/validation.ts. Update all 12 import sites. Preserve existing function signatures."
276
- - **Behavior preservation**: Is it clear what tests to run and what behavior must be preserved?
277
- - **Dependency context**: If item depends on earlier refactors, does the description reference what changed?
278
-
279
- Present review summary:
280
- ```
281
- Item | Deps Valid | Preservation | Gaps | Status
282
- R-001 | OK | test-gate | - | Ready
283
- R-002 | OK | test-gate | - | Ready
284
- R-003 | OK | manual | No test coverage| Needs attention
285
- R-004 | OK | snapshot | - | Ready
286
- ```
287
-
288
- If issues found, discuss with user and resolve before proceeding.
239
+ See `${SKILL_DIR}/references/planning-phases.md` for the full 5-step review checklist (DAG validation, preservation check, gap detection, cross-module impact, headless readiness criteria) and review summary table format.
289
240
 
290
241
  **CHECKPOINT CP-RP-5**: Completeness review passed, all issues resolved.
291
242
 
@@ -317,8 +268,6 @@ If issues found, discuss with user and resolve before proceeding.
317
268
  | **CP-RP-5** | Completeness OK | DAG valid, preservation strategies declared, no gaps | 6 |
318
269
  | **CP-RP-6** | Output Valid | `.prizmkit/plans/refactor-list.json` passes validation script | 7 |
319
270
 
320
- **Resume Detection**: If existing artifacts found (partial `.prizmkit/plans/refactor-list.json`, draft `refactor-list.draft.json` in `.prizmkit/plans/`), offer to resume from the appropriate checkpoint.
321
-
322
271
  ## Output Rules
323
272
 
324
273
  `.prizmkit/plans/refactor-list.json` must satisfy:
@@ -350,118 +299,27 @@ Set default critic fields for each refactor item. The user can override per-item
350
299
 
351
300
  ## Fast Path
352
301
 
353
- For simple refactoring with minimal scope:
354
-
355
- ### Eligibility Criteria (ALL must apply)
356
- - 1-2 refactor items only
357
- - Complexity: `low` or `medium` for all items
358
- - No cross-module impact (all items within same module)
359
- - Well-known refactoring pattern (rename, extract method/class, inline)
360
- - Existing test coverage for target area
361
-
362
- ### Fast Path Workflow
363
- 1. Confirm refactoring scope with user
364
- 2. **User confirmation (mandatory)** — Use `AskUserQuestion` to present interactive selectable options:
365
-
366
- ```
367
- AskUserQuestion:
368
- question: "This qualifies for fast-path (simple refactoring). How would you like to proceed?"
369
- header: "Approach"
370
- options:
371
- - label: "Fast-path"
372
- description: "Skip detailed analysis, draft refactor items directly and add to refactor-list.json"
373
- - label: "Full workflow"
374
- description: "Use the complete planning workflow with detailed code analysis"
375
- - label: "Implement directly"
376
- description: "Skip the task list entirely and implement the refactoring right now using /prizmkit-plan + /prizmkit-implement"
377
- ```
378
-
379
- - **Fast-path** → Continue with fast-path workflow below
380
- - **Full workflow** → Exit fast path, use full workflow from Phase 2
381
- - **Implement directly** → Invoke `/prizmkit-plan` directly to create spec + plan, then `/prizmkit-implement` to execute. Do NOT add to `.prizmkit/plans/refactor-list.json`
382
-
383
- **NEVER proceed without explicit user selection via `AskUserQuestion`. Do NOT render options as plain text — the user must be able to click/select.**
384
- 3. Draft items (title + type + scope + description + acceptance_criteria + behavior_preservation + dependencies)
385
- 4. Write draft to `.prizmkit/plans/refactor-list.draft.json`, then call the generate script:
386
- ```bash
387
- python3 ${SKILL_DIR}/scripts/validate-and-generate-refactor.py generate --input .prizmkit/plans/refactor-list.draft.json --output .prizmkit/plans/refactor-list.json
388
- ```
389
- 5. If valid -> summarize and recommend next step
390
- 6. If invalid -> apply fixes to the draft, re-run generate (max 2 attempts, then escalate to full workflow)
391
-
392
- ### When NOT to Use Fast Path
393
- - More than 2 refactor items
394
- - Any item with `high` complexity
395
- - Cross-module impact
396
- - Architecture migration patterns (Format C goals)
397
- - No existing test coverage for target area
398
-
399
- ### Example Fast Path Session
400
- ```
401
- User: "Rename the auth middleware function from checkAuth to requireAuth everywhere."
402
- AI: [Detects simple rename, single module]
403
- AI: [Qualifies for fast path: 1 item, low complexity, no cross-module impact]
404
- AI: [Uses AskUserQuestion with options: "Fast-path", "Full workflow", "Implement directly"]
405
- User: [Selects "Fast-path"]
406
- AI: "Drafting R-001..."
407
- AI: [Validates immediately]
408
- AI: "Ready to proceed to dev-pipeline."
409
- ```
302
+ For simple refactoring with minimal scope (1-2 items, low/medium complexity, no cross-module impact, existing test coverage). Read `${SKILL_DIR}/references/fast-path.md` for eligibility criteria, full workflow (including AskUserQuestion format), conditions NOT to use, and an example session.
410
303
 
411
304
  ## Browser Verification
412
305
 
413
- **Browser verification is a feature-pipeline capability only.** Refactors use `behavior_preservation` strategy instead to ensure no external behavior changes:
414
-
415
- - `strategy: test-gate` — Rely on existing test suite. Pipeline runs tests before and after refactoring.
416
- - `strategy: snapshot` — Compare behavior before/after refactoring using executable snapshots (outputs, API responses, side effects)
417
- - `strategy: manual` — Require human verification that behavior is preserved
418
-
419
- For refactors that modify UI code (e.g., component restructuring), the test-gate or snapshot strategy ensures visual appearance is preserved. You can optionally note browser verification needs in your description or acceptance criteria:
420
-
421
- Example:
422
- ```
423
- Refactor Title: Extract UserProfile component from AccountSettings
424
- Type: extract
425
- Strategy: snapshot
426
- Acceptance Criteria:
427
- 1. UserProfile component renders identically to inline version (compare snapshots)
428
- 2. All props are correctly forwarded (unit tests pass)
429
- 3. No visual regression (screenshot comparison)
430
- 4. Component is reusable in other views
431
- ```
432
-
433
- The refactor pipeline AI will use the snapshot strategy to verify external behavior is preserved during refactoring.
306
+ Browser verification is a feature-pipeline capability only. Refactors use `behavior_preservation` strategy instead. Read `${SKILL_DIR}/references/planning-phases.md` for strategy details and UI refactoring examples.
434
307
 
435
308
  ---
436
309
 
437
310
  ## Refactoring-Specific Features
438
311
 
439
312
  ### Behavior Preservation Check
440
- Every item MUST declare a behavior preservation strategy. Read `${SKILL_DIR}/references/behavior-preservation.md` for strategy details.
441
-
442
- | Strategy | When to Use |
443
- |----------|-------------|
444
- | `test-gate` | Target area has good test coverage. Run full test suite after each change. |
445
- | `snapshot` | Compare output/state before and after. Used when tests are insufficient but behavior is observable. |
446
- | `manual` | Human verification required. Last resort when neither tests nor snapshots are feasible. |
447
313
 
448
- Flag items using `manual` strategy prominently they carry the highest risk of behavior regression.
314
+ Every item MUST declare a behavior preservation strategy. Read `${SKILL_DIR}/references/behavior-preservation.md` for strategy details. See `${SKILL_DIR}/references/planning-phases.md` for the strategy selection table and manual-strategy flagging rules.
449
315
 
450
316
  ### Dependency Ordering
451
- Auto-detect inter-item dependencies and enforce safe ordering:
452
- 1. **Safe renames** first (lowest risk, no structural change)
453
- 2. **Extract/inline** operations (moderate risk, changes module boundaries)
454
- 3. **Structural changes** (higher risk, reorganizes architecture)
455
- 4. **Migrations** last (highest risk, changes patterns/paradigms)
317
+
318
+ Auto-detect inter-item dependencies and enforce safe ordering. Read `${SKILL_DIR}/references/planning-phases.md` for the full dependency ordering rules (safe renames -> extract/inline -> structural -> migrations).
456
319
 
457
320
  ### Complexity Assessment
458
- Assess each item's complexity based on:
459
- - **File count**: 1-2 files = low, 3-5 files = medium, 6+ files = high
460
- - **Cross-module scope**: same module = low, 2 modules = medium, 3+ modules = high
461
- - **Test coverage**: high coverage = reduces complexity, low coverage = increases complexity
462
- - **Pattern familiarity**: well-known pattern = low, novel restructuring = high
463
321
 
464
- Take the highest of these individual assessments as the item's complexity.
322
+ Assess each item's complexity based on file count, cross-module scope, test coverage, and pattern familiarity. Read `${SKILL_DIR}/references/planning-phases.md` for the full complexity assessment criteria and scoring rules.
465
323
 
466
324
  ## Next-Step Execution Policy (after planning)
467
325
 
@@ -477,6 +335,8 @@ Key behaviors:
477
335
 
478
336
  ### Resume Detection
479
337
 
338
+ If existing artifacts are found, offer to resume from the appropriate checkpoint/phase:
339
+
480
340
  | Artifact Found | Resume From |
481
341
  |---------------|------------|
482
342
  | Nothing | Phase 1: Project Context |
@@ -484,18 +344,16 @@ Key behaviors:
484
344
  | Partial `.prizmkit/plans/refactor-list.json` | Phase 6: Completeness Review |
485
345
  | Valid `.prizmkit/plans/refactor-list.json` | Mode D: Summary |
486
346
 
487
- ## Session Exit Gate
347
+ ### Session Exit Gate
488
348
 
489
349
  Prevent accidental session exit without deliverable completion.
490
350
 
491
- ### Trigger Conditions
492
- Activate exit gate when ALL are true:
351
+ **Trigger conditions** — activate the exit gate when ALL are true:
493
352
  - User invoked `/refactor-planner` (not just mentioned refactoring)
494
353
  - Current phase < Phase 7 (validation not yet passed)
495
354
  - No valid `.prizmkit/plans/refactor-list.json` has been written in this session
496
355
 
497
- ### Gate Behavior
498
- When the session appears to be ending:
356
+ **Gate behavior** — when the session appears to be ending:
499
357
  1. **Remind**: "You set out to produce `.prizmkit/plans/refactor-list.json` but we haven't completed it yet."
500
358
  2. **Offer 3 options**:
501
359
  - **(a) Continue to completion** — resume from current phase
@@ -0,0 +1,59 @@
1
+ # Fast Path — Refactor Planner
2
+
3
+ For simple refactoring with minimal scope.
4
+
5
+ ## Eligibility Criteria (ALL must apply)
6
+ - 1-2 refactor items only
7
+ - Complexity: `low` or `medium` for all items
8
+ - No cross-module impact (all items within same module)
9
+ - Well-known refactoring pattern (rename, extract method/class, inline)
10
+ - Existing test coverage for target area
11
+
12
+ ## Fast Path Workflow
13
+ 1. Confirm refactoring scope with user
14
+ 2. **User confirmation (mandatory)** — Use `AskUserQuestion` to present interactive selectable options:
15
+
16
+ ```
17
+ AskUserQuestion:
18
+ question: "This qualifies for fast-path (simple refactoring). How would you like to proceed?"
19
+ header: "Approach"
20
+ options:
21
+ - label: "Fast-path"
22
+ description: "Skip detailed analysis, draft refactor items directly and add to refactor-list.json"
23
+ - label: "Full workflow"
24
+ description: "Use the complete planning workflow with detailed code analysis"
25
+ - label: "Implement directly"
26
+ description: "Skip the task list entirely and implement the refactoring right now using /prizmkit-plan + /prizmkit-implement"
27
+ ```
28
+
29
+ - **Fast-path** → Continue with fast-path workflow below
30
+ - **Full workflow** → Exit fast path, use full workflow from Phase 2
31
+ - **Implement directly** → Invoke `/prizmkit-plan` directly to create spec + plan, then `/prizmkit-implement` to execute. Do NOT add to `.prizmkit/plans/refactor-list.json`
32
+
33
+ **NEVER proceed without explicit user selection via `AskUserQuestion`. Do NOT render options as plain text — the user must be able to click/select.**
34
+ 3. Draft items (title + type + scope + description + acceptance_criteria + behavior_preservation + dependencies)
35
+ 4. Write draft to `.prizmkit/plans/refactor-list.draft.json`, then call the generate script:
36
+ ```bash
37
+ python3 ${SKILL_DIR}/scripts/validate-and-generate-refactor.py generate --input .prizmkit/plans/refactor-list.draft.json --output .prizmkit/plans/refactor-list.json
38
+ ```
39
+ 5. If valid -> summarize and recommend next step
40
+ 6. If invalid -> apply fixes to the draft, re-run generate (max 2 attempts, then escalate to full workflow)
41
+
42
+ ## When NOT to Use Fast Path
43
+ - More than 2 refactor items
44
+ - Any item with `high` complexity
45
+ - Cross-module impact
46
+ - Architecture migration patterns (Format C goals)
47
+ - No existing test coverage for target area
48
+
49
+ ## Example Fast Path Session
50
+ ```
51
+ User: "Rename the auth middleware function from checkAuth to requireAuth everywhere."
52
+ AI: [Detects simple rename, single module]
53
+ AI: [Qualifies for fast path: 1 item, low complexity, no cross-module impact]
54
+ AI: [Uses AskUserQuestion with options: "Fast-path", "Full workflow", "Implement directly"]
55
+ User: [Selects "Fast-path"]
56
+ AI: "Drafting R-001..."
57
+ AI: [Validates immediately]
58
+ AI: "Ready to proceed to dev-pipeline."
59
+ ```