prizmkit 1.1.6 → 1.1.8
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.
- package/bundled/VERSION.json +3 -3
- package/bundled/dev-pipeline/README.md +65 -65
- package/bundled/dev-pipeline/assets/feature-list-example.json +2 -2
- package/bundled/dev-pipeline/launch-bugfix-daemon.sh +11 -10
- package/bundled/dev-pipeline/launch-feature-daemon.sh +12 -11
- package/bundled/dev-pipeline/launch-refactor-daemon.sh +11 -10
- package/bundled/dev-pipeline/reset-bug.sh +305 -0
- package/bundled/dev-pipeline/reset-feature.sh +9 -8
- package/bundled/dev-pipeline/reset-refactor.sh +10 -9
- package/bundled/dev-pipeline/retry-bugfix.sh +7 -6
- package/bundled/dev-pipeline/retry-feature.sh +7 -6
- package/bundled/dev-pipeline/retry-refactor.sh +7 -6
- package/bundled/dev-pipeline/run-bugfix.sh +71 -23
- package/bundled/dev-pipeline/run-feature.sh +30 -21
- package/bundled/dev-pipeline/run-refactor.sh +21 -17
- package/bundled/dev-pipeline/scripts/cleanup-logs.py +2 -2
- package/bundled/dev-pipeline/scripts/detect-stuck.py +3 -3
- package/bundled/dev-pipeline/scripts/generate-bootstrap-prompt.py +26 -14
- package/bundled/dev-pipeline/scripts/generate-bugfix-prompt.py +6 -6
- package/bundled/dev-pipeline/scripts/generate-refactor-prompt.py +6 -6
- package/bundled/dev-pipeline/scripts/init-bugfix-pipeline.py +4 -4
- package/bundled/dev-pipeline/scripts/init-pipeline.py +26 -12
- package/bundled/dev-pipeline/scripts/init-refactor-pipeline.py +4 -4
- package/bundled/dev-pipeline/scripts/update-bug-status.py +10 -10
- package/bundled/dev-pipeline/scripts/update-feature-status.py +31 -31
- package/bundled/dev-pipeline/scripts/update-refactor-status.py +8 -8
- package/bundled/dev-pipeline/templates/bug-fix-list-schema.json +111 -31
- package/bundled/dev-pipeline/templates/feature-list-schema.json +91 -25
- package/bundled/dev-pipeline/templates/refactor-list-schema.json +107 -28
- package/bundled/dev-pipeline/tests/test_auto_skip.py +1 -1
- package/bundled/skills/_metadata.json +10 -2
- package/bundled/skills/app-planner/SKILL.md +24 -13
- package/bundled/skills/app-planner/references/project-brief-guide.md +1 -1
- package/bundled/skills/bug-fix-workflow/SKILL.md +7 -5
- package/bundled/skills/bug-planner/SKILL.md +80 -25
- package/bundled/skills/bug-planner/scripts/validate-bug-list.py +3 -3
- package/bundled/skills/bugfix-pipeline-launcher/SKILL.md +38 -33
- package/bundled/skills/feature-pipeline-launcher/SKILL.md +33 -33
- package/bundled/skills/feature-pipeline-launcher/scripts/preflight-check.py +3 -3
- package/bundled/skills/feature-planner/SKILL.md +96 -24
- package/bundled/skills/feature-planner/references/error-recovery.md +9 -9
- package/bundled/skills/feature-planner/scripts/validate-and-generate.py +25 -24
- package/bundled/skills/feature-workflow/SKILL.md +23 -20
- package/bundled/skills/prizmkit-committer/SKILL.md +1 -0
- package/bundled/skills/prizmkit-deploy/SKILL.md +1 -0
- package/bundled/skills/prizmkit-deploy/assets/deploy-template.md +1 -1
- package/bundled/skills/prizmkit-implement/SKILL.md +1 -1
- package/bundled/skills/prizmkit-implement/references/deploy-guide-protocol.md +4 -4
- package/bundled/skills/prizmkit-plan/SKILL.md +3 -3
- package/bundled/skills/prizmkit-retrospective/SKILL.md +40 -3
- package/bundled/skills/prizmkit-verify/SKILL.md +281 -0
- package/bundled/skills/prizmkit-verify/scripts/verify-light.py +402 -0
- package/bundled/skills/recovery-workflow/SKILL.md +15 -14
- package/bundled/skills/recovery-workflow/evals/evals.json +5 -5
- package/bundled/skills/recovery-workflow/scripts/detect-recovery-state.py +43 -10
- package/bundled/skills/refactor-pipeline-launcher/SKILL.md +38 -34
- package/bundled/skills/refactor-planner/SKILL.md +74 -24
- package/bundled/skills/refactor-planner/scripts/validate-and-generate-refactor.py +17 -17
- package/bundled/skills/refactor-workflow/SKILL.md +24 -20
- package/package.json +1 -1
- package/src/clean.js +4 -4
- package/src/gitignore-template.js +7 -8
- package/src/scaffold.js +4 -2
|
@@ -19,7 +19,7 @@ User says:
|
|
|
19
19
|
|
|
20
20
|
**Do NOT use this skill when:**
|
|
21
21
|
- User only wants to plan refactoring (use `refactor-planner` directly)
|
|
22
|
-
- User only wants to launch pipeline for existing refactor-list.json (use `refactor-pipeline-launcher`)
|
|
22
|
+
- User only wants to launch pipeline for existing .prizmkit/plans/refactor-list.json (use `refactor-pipeline-launcher`)
|
|
23
23
|
- User wants to add features (use `feature-workflow`)
|
|
24
24
|
- User wants to fix bugs (use `bug-planner` + `bugfix-pipeline-launcher`)
|
|
25
25
|
|
|
@@ -32,7 +32,7 @@ refactor-workflow <target / goals>
|
|
|
32
32
|
│
|
|
33
33
|
├── Phase 1: Brainstorm → interactive Q&A until refactoring goals are clear
|
|
34
34
|
│
|
|
35
|
-
├── Phase 2: Plan → refactor-planner → refactor-list.json
|
|
35
|
+
├── Phase 2: Plan → refactor-planner → .prizmkit/plans/refactor-list.json
|
|
36
36
|
│
|
|
37
37
|
├── Phase 3: Launch → refactor-pipeline-launcher → pipeline execution
|
|
38
38
|
│
|
|
@@ -44,7 +44,7 @@ refactor-workflow <target / goals>
|
|
|
44
44
|
| Phase | Action | Result |
|
|
45
45
|
|-------|--------|--------|
|
|
46
46
|
| 1 | **Brainstorm** — interactive Q&A with user | Fully clarified refactoring goals |
|
|
47
|
-
| 2 | Call `refactor-planner` with clarified goals |
|
|
47
|
+
| 2 | Call `refactor-planner` with clarified goals | `.prizmkit/plans/refactor-list.json` with N refactor items |
|
|
48
48
|
| 3 | Call `refactor-pipeline-launcher` | Pipeline started (execution mode chosen by user via launcher) |
|
|
49
49
|
| 4 | Monitor progress | Status updates, completion report |
|
|
50
50
|
|
|
@@ -52,7 +52,7 @@ refactor-workflow <target / goals>
|
|
|
52
52
|
|
|
53
53
|
Without this skill, users must:
|
|
54
54
|
1. Figure out all refactoring goals and scope themselves
|
|
55
|
-
2. Invoke `refactor-planner` → wait for refactor-list.json
|
|
55
|
+
2. Invoke `refactor-planner` → wait for .prizmkit/plans/refactor-list.json
|
|
56
56
|
3. Invoke `refactor-pipeline-launcher` → wait for pipeline start
|
|
57
57
|
4. Manually check progress
|
|
58
58
|
|
|
@@ -81,18 +81,18 @@ Natural language description of the refactoring goals. Can be:
|
|
|
81
81
|
|
|
82
82
|
Flow: brainstorm → refactor-planner → refactor-pipeline-launcher → monitor
|
|
83
83
|
|
|
84
|
-
**Mode B: From existing refactor-list.json**
|
|
84
|
+
**Mode B: From existing .prizmkit/plans/refactor-list.json**
|
|
85
85
|
|
|
86
|
-
When user says "run pipeline from existing file" or refactor-list.json already exists:
|
|
86
|
+
When user says "run pipeline from existing file" or .prizmkit/plans/refactor-list.json already exists:
|
|
87
87
|
- Skip brainstorm and `refactor-planner` (file already exists)
|
|
88
88
|
- Invoke `refactor-pipeline-launcher` directly
|
|
89
89
|
- Monitor and report progress
|
|
90
90
|
|
|
91
91
|
**Mode C: Incremental (add to existing refactor plan)**
|
|
92
92
|
|
|
93
|
-
When user says "add more refactors" or the project already has a refactor-list.json:
|
|
93
|
+
When user says "add more refactors" or the project already has a .prizmkit/plans/refactor-list.json:
|
|
94
94
|
- Brainstorm new refactoring goals with the user
|
|
95
|
-
- Invoke `refactor-planner` in incremental mode (reads existing refactor-list.json)
|
|
95
|
+
- Invoke `refactor-planner` in incremental mode (reads existing .prizmkit/plans/refactor-list.json)
|
|
96
96
|
- Append new refactor items to existing list
|
|
97
97
|
- Invoke `refactor-pipeline-launcher`
|
|
98
98
|
- Monitor and report progress
|
|
@@ -227,7 +227,7 @@ Present this summary to the user and get explicit confirmation before proceeding
|
|
|
227
227
|
|
|
228
228
|
## Phase 2: Plan
|
|
229
229
|
|
|
230
|
-
**Goal**: Generate structured refactor-list.json from the clarified refactoring goals.
|
|
230
|
+
**Goal**: Generate structured .prizmkit/plans/refactor-list.json from the clarified refactoring goals.
|
|
231
231
|
|
|
232
232
|
**STEPS**:
|
|
233
233
|
|
|
@@ -235,16 +235,18 @@ Present this summary to the user and get explicit confirmation before proceeding
|
|
|
235
235
|
- Pass the structured goals summary as input — NOT the raw user conversation
|
|
236
236
|
- For new refactoring: standard planning mode
|
|
237
237
|
- For existing projects with `--incremental`: incremental planning mode
|
|
238
|
+
- **Input**: Markdown goals summary (refactor targets, scope, behavior preservation strategy)
|
|
239
|
+
- **Output**: `.prizmkit/plans/refactor-list.json` (schema: `dev-pipeline-refactor-list-v1`) containing `project_name`, `refactors[]` with id (R-NNN), title, description, scope, type, priority, complexity, behavior_preservation, acceptance_criteria, dependencies, status
|
|
238
240
|
|
|
239
241
|
2. **Interactive planning** (if refactor-planner requires clarification):
|
|
240
242
|
- Because Phase 1 was thorough, refactor-planner should need minimal clarification
|
|
241
243
|
- If questions arise, answer from the Phase 1 context or pass through to user
|
|
242
244
|
|
|
243
245
|
3. **Validate output**:
|
|
244
|
-
- Confirm
|
|
246
|
+
- Confirm `.prizmkit/plans/refactor-list.json` exists
|
|
245
247
|
- Show summary: total refactor items, complexity distribution, dependencies
|
|
246
248
|
|
|
247
|
-
**CHECKPOINT CP-RW-1**:
|
|
249
|
+
**CHECKPOINT CP-RW-1**: `.prizmkit/plans/refactor-list.json` generated and validated.
|
|
248
250
|
|
|
249
251
|
**If user says `--from <file>`**: Skip Phase 1 and Phase 2 entirely.
|
|
250
252
|
|
|
@@ -267,9 +269,11 @@ Present this summary to the user and get explicit confirmation before proceeding
|
|
|
267
269
|
```
|
|
268
270
|
|
|
269
271
|
2. **Invoke `refactor-pipeline-launcher` skill**:
|
|
272
|
+
- **Input**: Path to validated `.prizmkit/plans/refactor-list.json`
|
|
270
273
|
- The launcher handles all prerequisites checks
|
|
271
274
|
- The launcher presents execution mode choices to the user (foreground/background/manual)
|
|
272
275
|
- Do NOT duplicate execution mode selection here — let the launcher handle it
|
|
276
|
+
- **Output**: PID/status, log file path, execution mode selected
|
|
273
277
|
- Returns PID/status and log file location
|
|
274
278
|
|
|
275
279
|
3. **Verify launch success**:
|
|
@@ -299,8 +303,8 @@ Present this summary to the user and get explicit confirmation before proceeding
|
|
|
299
303
|
3. **Periodic progress reports** (when user asks):
|
|
300
304
|
```bash
|
|
301
305
|
python3 dev-pipeline/scripts/update-refactor-status.py \
|
|
302
|
-
--refactor-list refactor-list.json \
|
|
303
|
-
--state-dir
|
|
306
|
+
--refactor-list .prizmkit/plans/refactor-list.json \
|
|
307
|
+
--state-dir .prizmkit/state/refactor \
|
|
304
308
|
--action status
|
|
305
309
|
```
|
|
306
310
|
|
|
@@ -329,12 +333,12 @@ The workflow supports resuming by detecting existing state:
|
|
|
329
333
|
|
|
330
334
|
| State Found | Resume From |
|
|
331
335
|
|-------------|------------|
|
|
332
|
-
| No
|
|
333
|
-
|
|
|
334
|
-
|
|
|
336
|
+
| No `.prizmkit/plans/refactor-list.json` | Phase 1: Brainstorm |
|
|
337
|
+
| `.prizmkit/plans/refactor-list.json` exists, no pipeline state | Phase 3: Launch |
|
|
338
|
+
| `.prizmkit/plans/refactor-list.json` + pipeline state exists | Phase 4: Monitor (check status) |
|
|
335
339
|
| All refactors completed | Report completion, suggest next steps |
|
|
336
340
|
|
|
337
|
-
**Resume**: If
|
|
341
|
+
**Resume**: If `.prizmkit/plans/refactor-list.json` exists, ask user: "Existing refactor plan found with N items. Resume pipeline or re-plan?"
|
|
338
342
|
|
|
339
343
|
---
|
|
340
344
|
|
|
@@ -359,7 +363,7 @@ While the pipeline runs, the user can continue the conversation:
|
|
|
359
363
|
| Brainstorming stalls | Offer concrete options: "Would you prefer incremental or comprehensive refactoring?" |
|
|
360
364
|
| No tests exist for target module | WARN user, recommend writing tests first before refactoring |
|
|
361
365
|
| `refactor-planner` cannot parse goals | Refine the goals summary and retry |
|
|
362
|
-
|
|
|
366
|
+
| `.prizmkit/plans/refactor-list.json` generation failed | Show error, retry with refined input |
|
|
363
367
|
| Pipeline launch failed | Show daemon log, suggest manual start |
|
|
364
368
|
| All refactor items blocked/failed | Show status, suggest retrying specific items |
|
|
365
369
|
| User wants to cancel mid-brainstorming | Save conversation context, offer to resume later |
|
|
@@ -371,7 +375,7 @@ While the pipeline runs, the user can continue the conversation:
|
|
|
371
375
|
|
|
372
376
|
| Skill | Relationship |
|
|
373
377
|
|-------|-------------|
|
|
374
|
-
| `refactor-planner` | **Called by Phase 2** — generates refactor-list.json from clarified goals |
|
|
378
|
+
| `refactor-planner` | **Called by Phase 2** — generates .prizmkit/plans/refactor-list.json from clarified goals |
|
|
375
379
|
| `refactor-pipeline-launcher` | **Called by Phase 3** — starts pipeline (handles execution mode selection) |
|
|
376
380
|
| `feature-workflow` | **Alternative** — for new feature development |
|
|
377
381
|
| `bug-fix-workflow` | **Alternative** — for bug fix workflows |
|
|
@@ -397,7 +401,7 @@ While the pipeline runs, the user can continue the conversation:
|
|
|
397
401
|
## Output
|
|
398
402
|
|
|
399
403
|
- Structured refactoring goals summary (Phase 1 artifact)
|
|
400
|
-
-
|
|
404
|
+
- `.prizmkit/plans/refactor-list.json` (Phase 2 artifact)
|
|
401
405
|
- Pipeline execution (Phase 3)
|
|
402
406
|
- Progress updates (Phase 4)
|
|
403
407
|
- Multiple git commits with `refactor(<scope>):` prefix
|
package/package.json
CHANGED
package/src/clean.js
CHANGED
|
@@ -119,10 +119,10 @@ export async function runClean(directory, options = {}) {
|
|
|
119
119
|
'.prizm-docs', // AI-generated project context docs
|
|
120
120
|
'CODEBUDDY.md',
|
|
121
121
|
'CLAUDE.md',
|
|
122
|
-
'feature-list.json', // feature-planner output
|
|
123
|
-
'bug-fix-list.json', // bug-planner output
|
|
124
|
-
'project-brief.md', // feature-planner project brief
|
|
125
|
-
'project-conventions.json', // feature-planner coding conventions
|
|
122
|
+
path.join('.prizmkit', 'plans', 'feature-list.json'), // feature-planner output
|
|
123
|
+
path.join('.prizmkit', 'plans', 'bug-fix-list.json'), // bug-planner output
|
|
124
|
+
path.join('.prizmkit', 'plans', 'project-brief.md'), // feature-planner project brief
|
|
125
|
+
path.join('.prizmkit', 'project-conventions.json'), // feature-planner coding conventions
|
|
126
126
|
path.join('.codebuddy', 'settings.json'),
|
|
127
127
|
path.join('.claude', 'settings.json'),
|
|
128
128
|
path.join('.claude', 'team-info.json'),
|
|
@@ -14,8 +14,8 @@ export function generateGitignore(options = {}) {
|
|
|
14
14
|
'# PrizmKit Runtime Artifacts',
|
|
15
15
|
'# ===========================',
|
|
16
16
|
'',
|
|
17
|
-
'# PrizmKit
|
|
18
|
-
'.prizmkit/',
|
|
17
|
+
'# PrizmKit 运行时状态(不提交)',
|
|
18
|
+
'.prizmkit/state/',
|
|
19
19
|
'',
|
|
20
20
|
'# 多 Agent 协作临时工作区',
|
|
21
21
|
'.dev-team/',
|
|
@@ -24,18 +24,17 @@ export function generateGitignore(options = {}) {
|
|
|
24
24
|
'# .prizm-docs/',
|
|
25
25
|
'',
|
|
26
26
|
'# 规划产物(按需决定是否提交)',
|
|
27
|
-
'#
|
|
28
|
-
'# bug-fix-list.json',
|
|
29
|
-
'# project-brief.md',
|
|
27
|
+
'# .prizmkit/plans/',
|
|
30
28
|
'# project-conventions.json',
|
|
31
29
|
'',
|
|
32
30
|
];
|
|
33
31
|
|
|
34
32
|
if (options.pipeline) {
|
|
35
33
|
lines.push(
|
|
36
|
-
'# Dev-Pipeline
|
|
37
|
-
'
|
|
38
|
-
'
|
|
34
|
+
'# Dev-Pipeline 运行时状态(已迁移到 .prizmkit/state/)',
|
|
35
|
+
'.prizmkit/state/features/',
|
|
36
|
+
'.prizmkit/state/bugfix/',
|
|
37
|
+
'.prizmkit/state/refactor/',
|
|
39
38
|
'dev-pipeline/logs/',
|
|
40
39
|
'dev-pipeline/*.pid',
|
|
41
40
|
'',
|
package/src/scaffold.js
CHANGED
|
@@ -647,8 +647,10 @@ export async function installPipeline(projectRoot, dryRun, { forceOverwrite = fa
|
|
|
647
647
|
return [];
|
|
648
648
|
}
|
|
649
649
|
|
|
650
|
-
await fs.ensureDir(path.join(
|
|
651
|
-
await fs.ensureDir(path.join(
|
|
650
|
+
await fs.ensureDir(path.join(projectRoot, '.prizmkit', 'plans'));
|
|
651
|
+
await fs.ensureDir(path.join(projectRoot, '.prizmkit', 'state', 'features'));
|
|
652
|
+
await fs.ensureDir(path.join(projectRoot, '.prizmkit', 'state', 'bugfix'));
|
|
653
|
+
await fs.ensureDir(path.join(projectRoot, '.prizmkit', 'state', 'refactor'));
|
|
652
654
|
|
|
653
655
|
// 动态扫描 bundled dev-pipeline 目录,排除不应安装到用户项目的内容
|
|
654
656
|
const EXCLUDE = new Set(['tests', 'docs', '__pycache__', 'node_modules', '.DS_Store']);
|