prizmkit 1.1.41 → 1.1.46

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 (88) hide show
  1. package/bundled/VERSION.json +3 -3
  2. package/bundled/adapters/claude/settings-adapter.js +4 -4
  3. package/bundled/adapters/codebuddy/settings-adapter.js +1 -1
  4. package/bundled/agents/prizm-dev-team-critic.md +9 -9
  5. package/bundled/agents/prizm-dev-team-dev.md +13 -13
  6. package/bundled/agents/prizm-dev-team-reviewer.md +2 -2
  7. package/bundled/dev-pipeline/.env.example +6 -6
  8. package/bundled/dev-pipeline/README.md +32 -32
  9. package/bundled/dev-pipeline/assets/prizm-dev-team-integration.md +1 -1
  10. package/bundled/dev-pipeline/launch-bugfix-daemon.sh +5 -2
  11. package/bundled/dev-pipeline/launch-feature-daemon.sh +5 -2
  12. package/bundled/dev-pipeline/launch-refactor-daemon.sh +5 -2
  13. package/bundled/dev-pipeline/lib/common.sh +34 -5
  14. package/bundled/dev-pipeline/reset-bug.sh +7 -5
  15. package/bundled/dev-pipeline/reset-feature.sh +7 -5
  16. package/bundled/dev-pipeline/reset-refactor.sh +7 -5
  17. package/bundled/dev-pipeline/run-bugfix.sh +14 -11
  18. package/bundled/dev-pipeline/run-feature.sh +15 -12
  19. package/bundled/dev-pipeline/run-recovery.sh +6 -3
  20. package/bundled/dev-pipeline/run-refactor.sh +15 -12
  21. package/bundled/dev-pipeline/scripts/generate-bootstrap-prompt.py +15 -15
  22. package/bundled/dev-pipeline/scripts/generate-bugfix-prompt.py +10 -5
  23. package/bundled/dev-pipeline/scripts/generate-recovery-prompt.py +19 -13
  24. package/bundled/dev-pipeline/scripts/generate-refactor-prompt.py +10 -5
  25. package/bundled/dev-pipeline/scripts/parse-stream-progress.py +1 -1
  26. package/bundled/dev-pipeline/scripts/update-bug-status.py +9 -1
  27. package/bundled/dev-pipeline/scripts/update-feature-status.py +13 -1
  28. package/bundled/dev-pipeline/scripts/update-refactor-status.py +9 -1
  29. package/bundled/dev-pipeline/templates/agent-prompts/critic-plan-challenge.md +1 -1
  30. package/bundled/dev-pipeline/templates/bootstrap-prompt.md +3 -3
  31. package/bundled/dev-pipeline/templates/bootstrap-tier1.md +8 -8
  32. package/bundled/dev-pipeline/templates/bootstrap-tier2.md +11 -11
  33. package/bundled/dev-pipeline/templates/bootstrap-tier3.md +9 -9
  34. package/bundled/dev-pipeline/templates/bugfix-bootstrap-prompt.md +7 -7
  35. package/bundled/dev-pipeline/templates/refactor-bootstrap-prompt.md +4 -4
  36. package/bundled/dev-pipeline/templates/sections/phase-commit-full.md +5 -5
  37. package/bundled/dev-pipeline/templates/sections/phase-commit.md +6 -6
  38. package/bundled/dev-pipeline/templates/sections/phase-context-snapshot-agent-suffix.md +1 -1
  39. package/bundled/dev-pipeline/templates/sections/phase-context-snapshot-base.md +1 -1
  40. package/bundled/dev-pipeline/templates/sections/phase-specify-plan-full.md +2 -2
  41. package/bundled/dev-pipeline/templates/sections/phase0-init.md +1 -1
  42. package/bundled/dev-pipeline/tests/test-path-resolution.sh +100 -0
  43. package/bundled/rules/USAGE.md +2 -2
  44. package/bundled/rules/_rules-metadata.json +1 -1
  45. package/bundled/rules/prizm/prizm-commit-workflow.md +1 -1
  46. package/bundled/rules/prizm/prizm-documentation.md +4 -4
  47. package/bundled/rules/prizm/prizm-progressive-loading.md +3 -3
  48. package/bundled/skills/_metadata.json +4 -4
  49. package/bundled/skills/app-planner/SKILL.md +35 -7
  50. package/bundled/skills/bug-fix-workflow/SKILL.md +6 -6
  51. package/bundled/skills/bug-planner/SKILL.md +5 -5
  52. package/bundled/skills/bugfix-pipeline-launcher/SKILL.md +28 -21
  53. package/bundled/skills/feature-pipeline-launcher/SKILL.md +28 -21
  54. package/bundled/skills/feature-planner/SKILL.md +5 -5
  55. package/bundled/skills/feature-workflow/SKILL.md +8 -8
  56. package/bundled/skills/prizm-kit/SKILL.md +10 -10
  57. package/bundled/skills/prizmkit-committer/SKILL.md +4 -2
  58. package/bundled/skills/prizmkit-implement/SKILL.md +2 -2
  59. package/bundled/skills/prizmkit-init/SKILL.md +17 -17
  60. package/bundled/skills/prizmkit-plan/SKILL.md +3 -3
  61. package/bundled/skills/prizmkit-plan/references/verification-checklist.md +2 -2
  62. package/bundled/skills/prizmkit-prizm-docs/SKILL.md +17 -17
  63. package/bundled/skills/prizmkit-prizm-docs/assets/prizm-docs-format.md +45 -45
  64. package/bundled/skills/prizmkit-prizm-docs/references/op-init.md +9 -9
  65. package/bundled/skills/prizmkit-prizm-docs/references/op-rebuild.md +1 -1
  66. package/bundled/skills/prizmkit-prizm-docs/references/op-status.md +2 -2
  67. package/bundled/skills/prizmkit-prizm-docs/references/op-update.md +3 -3
  68. package/bundled/skills/prizmkit-prizm-docs/references/op-validate.md +1 -1
  69. package/bundled/skills/prizmkit-retrospective/SKILL.md +10 -10
  70. package/bundled/skills/prizmkit-retrospective/references/knowledge-injection-steps.md +3 -3
  71. package/bundled/skills/prizmkit-retrospective/references/structural-sync-steps.md +1 -1
  72. package/bundled/skills/recovery-workflow/SKILL.md +15 -15
  73. package/bundled/skills/recovery-workflow/scripts/detect-recovery-state.py +0 -1
  74. package/bundled/skills/refactor-pipeline-launcher/SKILL.md +28 -21
  75. package/bundled/skills/refactor-planner/SKILL.md +6 -6
  76. package/bundled/skills/refactor-workflow/SKILL.md +9 -9
  77. package/bundled/team/prizm-dev-team.json +1 -1
  78. package/bundled/templates/hooks/commit-intent.json +2 -2
  79. package/bundled/templates/hooks/diff-prizm-docs.sh +8 -8
  80. package/bundled/templates/hooks/prizm-pre-commit.sh +4 -4
  81. package/bundled/templates/hooks/validate-prizm-docs.sh +4 -4
  82. package/bundled/templates/project-memory-template.md +4 -4
  83. package/package.json +1 -1
  84. package/src/clean.js +1 -3
  85. package/src/config.js +1 -1
  86. package/src/gitignore-template.js +4 -24
  87. package/src/scaffold.js +12 -11
  88. package/src/upgrade.js +3 -3
@@ -11,8 +11,8 @@ Launch the autonomous refactor pipeline from within an AI CLI conversation. The
11
11
 
12
12
  Three execution modes are available. The user chooses one before configuring other options:
13
13
 
14
- 1. **Foreground** (recommended) — `dev-pipeline/run-refactor.sh run`. Visible output, direct error feedback, no orphaned processes.
15
- 2. **Background daemon** — `dev-pipeline/launch-refactor-daemon.sh`. Runs fully detached, survives AI CLI session closure.
14
+ 1. **Foreground** (recommended) — `.prizmkit/dev-pipeline/run-refactor.sh run`. Visible output, direct error feedback, no orphaned processes.
15
+ 2. **Background daemon** — `.prizmkit/dev-pipeline/launch-refactor-daemon.sh`. Runs fully detached, survives AI CLI session closure.
16
16
  3. **Manual** — Display the assembled command(s) only. Do not execute anything. User runs them on their own.
17
17
 
18
18
  ### When to Use
@@ -45,7 +45,7 @@ Three execution modes are available. The user chooses one before configuring oth
45
45
 
46
46
  Before any action, validate:
47
47
 
48
- 1. **refactor pipeline exists**: Confirm `dev-pipeline/launch-refactor-daemon.sh` and `dev-pipeline/run-refactor.sh` are present and executable
48
+ 1. **refactor pipeline exists**: Confirm `.prizmkit/dev-pipeline/launch-refactor-daemon.sh` and `.prizmkit/dev-pipeline/run-refactor.sh` are present and executable
49
49
  2. **For start**: `.prizmkit/plans/refactor-list.json` must exist in `.prizmkit/plans/` (or user-specified path)
50
50
  3. **Dependencies**: `jq`, `python3`, AI CLI (`cbc` or `claude`) must be in PATH
51
51
  4. **Python version**: Requires Python 3.8+ for dev-pipeline scripts
@@ -79,7 +79,7 @@ Detect user intent from their message, then follow the corresponding workflow:
79
79
 
80
80
  2. **Check not already running**:
81
81
  ```bash
82
- dev-pipeline/launch-refactor-daemon.sh status 2>/dev/null
82
+ .prizmkit/dev-pipeline/launch-refactor-daemon.sh status 2>/dev/null
83
83
  ```
84
84
  If running, inform user and ask: "Refactor pipeline is already running. Want to restart it, check status, or view logs?"
85
85
 
@@ -106,7 +106,7 @@ Detect user intent from their message, then follow the corresponding workflow:
106
106
  ```
107
107
  If pipeline state already exists, use the status command instead:
108
108
  ```bash
109
- python3 dev-pipeline/scripts/update-refactor-status.py \
109
+ python3 .prizmkit/dev-pipeline/scripts/update-refactor-status.py \
110
110
  --refactor-list .prizmkit/plans/refactor-list.json \
111
111
  --state-dir .prizmkit/state/refactor \
112
112
  --action status 2>/dev/null
@@ -139,6 +139,13 @@ Detect user intent from their message, then follow the corresponding workflow:
139
139
 
140
140
  6. **Ask configuration options** ⚠️ MANDATORY INTERACTIVE STEP — applies to ALL execution modes (Foreground, Background, AND Manual). You MUST ask the user to configure options and WAIT for their response BEFORE proceeding to step 7. Do NOT skip this step or merge it with step 7.
141
141
 
142
+ ⛔ **HARD STOP**: You MUST call `AskUserQuestion` with the questions below and WAIT for the user's response. You MUST NOT:
143
+ - Skip this step and jump to step 7
144
+ - Merge step 6 and step 7 into one response
145
+ - Assume default values and show the command without asking
146
+ - Show the command as text and ask "ready?" without presenting the options
147
+ If you find yourself writing the final command before the user has answered these questions, STOP — you are violating this rule.
148
+
142
149
  Use `AskUserQuestion` to present the following configuration choices. Each question is a separate selectable option:
143
150
 
144
151
  **Question 1 — Verbose logging** (multiSelect: false):
@@ -215,34 +222,34 @@ Detect user intent from their message, then follow the corresponding workflow:
215
222
 
216
223
  **Foreground command:**
217
224
  ```bash
218
- VERBOSE=1 STRICT_BEHAVIOR_CHECK=1 dev-pipeline/run-refactor.sh run .prizmkit/plans/refactor-list.json
225
+ VERBOSE=1 STRICT_BEHAVIOR_CHECK=1 .prizmkit/dev-pipeline/run-refactor.sh run .prizmkit/plans/refactor-list.json
219
226
  ```
220
227
  With all options:
221
228
  ```bash
222
229
  VERBOSE=1 STRICT_BEHAVIOR_CHECK=1 MAX_RETRIES=5 SESSION_TIMEOUT=3600 ENABLE_DEPLOY=1 \
223
- dev-pipeline/run-refactor.sh run .prizmkit/plans/refactor-list.json
230
+ .prizmkit/dev-pipeline/run-refactor.sh run .prizmkit/plans/refactor-list.json
224
231
  ```
225
232
 
226
233
  **Background daemon command:**
227
234
  ```bash
228
- dev-pipeline/launch-refactor-daemon.sh start .prizmkit/plans/refactor-list.json --env "VERBOSE=1 STRICT_BEHAVIOR_CHECK=1"
235
+ .prizmkit/dev-pipeline/launch-refactor-daemon.sh start .prizmkit/plans/refactor-list.json --env "VERBOSE=1 STRICT_BEHAVIOR_CHECK=1"
229
236
  ```
230
237
  With all options:
231
238
  ```bash
232
- dev-pipeline/launch-refactor-daemon.sh start .prizmkit/plans/refactor-list.json \
239
+ .prizmkit/dev-pipeline/launch-refactor-daemon.sh start .prizmkit/plans/refactor-list.json \
233
240
  --env "VERBOSE=1 STRICT_BEHAVIOR_CHECK=1 MAX_RETRIES=5 ENABLE_DEPLOY=1"
234
241
  ```
235
242
 
236
243
  **Manual mode**: Print the assembled command(s) and **stop here**. Do not execute anything. Do not proceed to step 8.
237
244
  ```
238
245
  # To run in foreground:
239
- VERBOSE=1 STRICT_BEHAVIOR_CHECK=1 dev-pipeline/run-refactor.sh run .prizmkit/plans/refactor-list.json
246
+ VERBOSE=1 STRICT_BEHAVIOR_CHECK=1 .prizmkit/dev-pipeline/run-refactor.sh run .prizmkit/plans/refactor-list.json
240
247
 
241
248
  # To run in background (detached):
242
- dev-pipeline/launch-refactor-daemon.sh start .prizmkit/plans/refactor-list.json --env "VERBOSE=1 STRICT_BEHAVIOR_CHECK=1"
249
+ .prizmkit/dev-pipeline/launch-refactor-daemon.sh start .prizmkit/plans/refactor-list.json --env "VERBOSE=1 STRICT_BEHAVIOR_CHECK=1"
243
250
 
244
251
  # To check status:
245
- dev-pipeline/run-refactor.sh status .prizmkit/plans/refactor-list.json
252
+ .prizmkit/dev-pipeline/run-refactor.sh status .prizmkit/plans/refactor-list.json
246
253
  ```
247
254
 
248
255
  8. **Confirm and launch** (Foreground and Background only — Manual mode ends at step 7):
@@ -261,7 +268,7 @@ Detect user intent from their message, then follow the corresponding workflow:
261
268
  **If background daemon**:
262
269
  1. Verify launch:
263
270
  ```bash
264
- dev-pipeline/launch-refactor-daemon.sh status
271
+ .prizmkit/dev-pipeline/launch-refactor-daemon.sh status
265
272
  ```
266
273
  2. Start log monitoring — Use the Bash tool with `run_in_background: true`:
267
274
  ```bash
@@ -279,12 +286,12 @@ Detect user intent from their message, then follow the corresponding workflow:
279
286
 
280
287
  1. **Check daemon status**:
281
288
  ```bash
282
- dev-pipeline/launch-refactor-daemon.sh status
289
+ .prizmkit/dev-pipeline/launch-refactor-daemon.sh status
283
290
  ```
284
291
 
285
292
  2. **Show refactor-level progress**:
286
293
  ```bash
287
- python3 dev-pipeline/scripts/update-refactor-status.py \
294
+ python3 .prizmkit/dev-pipeline/scripts/update-refactor-status.py \
288
295
  --refactor-list .prizmkit/plans/refactor-list.json \
289
296
  --state-dir .prizmkit/state/refactor \
290
297
  --action status
@@ -303,12 +310,12 @@ Detect user intent from their message, then follow the corresponding workflow:
303
310
 
304
311
  1. **Stop the daemon**:
305
312
  ```bash
306
- dev-pipeline/launch-refactor-daemon.sh stop
313
+ .prizmkit/dev-pipeline/launch-refactor-daemon.sh stop
307
314
  ```
308
315
 
309
316
  2. **Verify stopped**:
310
317
  ```bash
311
- dev-pipeline/launch-refactor-daemon.sh status 2>/dev/null || true
318
+ .prizmkit/dev-pipeline/launch-refactor-daemon.sh status 2>/dev/null || true
312
319
  ```
313
320
 
314
321
  3. **Inform user**: "Refactor pipeline stopped. State is preserved -- you can resume later with 'start refactoring' and it will pick up where it left off."
@@ -319,7 +326,7 @@ Detect user intent from their message, then follow the corresponding workflow:
319
326
 
320
327
  1. **Check if running**:
321
328
  ```bash
322
- dev-pipeline/launch-refactor-daemon.sh status 2>/dev/null
329
+ .prizmkit/dev-pipeline/launch-refactor-daemon.sh status 2>/dev/null
323
330
  ```
324
331
 
325
332
  2. **If running** -- Start live tail with Bash tool `run_in_background: true`:
@@ -347,7 +354,7 @@ Detect user intent from their message, then follow the corresponding workflow:
347
354
  When user says "retry R-001" or "clean retry R-001":
348
355
 
349
356
  ```bash
350
- dev-pipeline/reset-refactor.sh R-001 --clean --run .prizmkit/plans/refactor-list.json
357
+ .prizmkit/dev-pipeline/reset-refactor.sh R-001 --clean --run .prizmkit/plans/refactor-list.json
351
358
  ```
352
359
 
353
360
  Notes:
@@ -369,11 +376,11 @@ Notes:
369
376
  | PID file stale (process dead) | `launch-refactor-daemon.sh` auto-cleans, retry start |
370
377
  | Launch failed (process died immediately) | Show last 20 lines of log: `tail -20 .prizmkit/state/refactor/pipeline-daemon.log` |
371
378
  | Refactor stuck/blocked | Use `reset-refactor.sh <R-XXX> --clean --run` for a fresh retry |
372
- | All refactors blocked/failed | Show status, suggest recovery: `dev-pipeline/reset-refactor.sh <R-XXX> --clean --run .prizmkit/plans/refactor-list.json` |
379
+ | All refactors blocked/failed | Show status, suggest recovery: `.prizmkit/dev-pipeline/reset-refactor.sh <R-XXX> --clean --run .prizmkit/plans/refactor-list.json` |
373
380
  | `playwright-cli` not installed | Browser verification skipped for playwright refactors (non-blocking). Suggest: `npm install -g @playwright/cli@latest && playwright-cli install --skills` |
374
381
  | `opencli` not installed | Browser verification skipped for opencli refactors (non-blocking). Install opencli for Chrome session-based browser verification |
375
382
  | 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`. |
376
- | Permission denied on script | Run `chmod +x dev-pipeline/launch-refactor-daemon.sh dev-pipeline/run-refactor.sh` |
383
+ | Permission denied on script | Run `chmod +x .prizmkit/dev-pipeline/launch-refactor-daemon.sh .prizmkit/dev-pipeline/run-refactor.sh` |
377
384
 
378
385
  ### Integration Notes
379
386
 
@@ -92,11 +92,11 @@ Do NOT use this skill when the user wants to:
92
92
  ## Prerequisites
93
93
 
94
94
  Before questions, check optional context files (never block if absent):
95
- - `.prizm-docs/root.prizm` (architecture/project context)
95
+ - `.prizmkit/prizm-docs/root.prizm` (architecture/project context)
96
96
  - `.prizmkit/config.json` (existing stack preferences and detected tech stack)
97
97
  - Existing test suite (critical for behavior preservation assessment)
98
98
  - Existing `.prizmkit/plans/refactor-list.json` (if appending additional items)
99
- - If `.prizm-docs/root.prizm` is absent and the project has existing source code, scan the directory structure:
99
+ - If `.prizmkit/prizm-docs/root.prizm` is absent and the project has existing source code, scan the directory structure:
100
100
  ```bash
101
101
  find . -maxdepth 2 -type d -not -path '*/node_modules/*' -not -path '*/.git/*' -not -path '*/dist/*' -not -path '*/build/*' -not -path '*/__pycache__/*' -not -path '*/vendor/*' | sed -e 's;[^/]*/;|____;g;s;____|; |;g'
102
102
  ```
@@ -132,7 +132,7 @@ Execute the planning workflow in conversation mode with mandatory checkpoints:
132
132
 
133
133
  **Goal**: Understand the current codebase structure and tech stack.
134
134
 
135
- 1. Read `.prizm-docs/root.prizm` and relevant L1 docs
135
+ 1. Read `.prizmkit/prizm-docs/root.prizm` and relevant L1 docs
136
136
  2. Read `.prizmkit/config.json` for tech stack info
137
137
  3. Identify existing test suite and coverage
138
138
  4. Summarize project context to the user: "Here's what I found about your project..."
@@ -142,7 +142,7 @@ Execute the planning workflow in conversation mode with mandatory checkpoints:
142
142
  > "Do you have any reference materials I should review before planning the refactoring? This can include:
143
143
  > - **Code paths** — specific files or directories that are refactoring targets or dependencies
144
144
  > - **Documents** — design docs, architecture proposals, refactoring RFCs, or technical debt analyses
145
- > - **Knowledge docs** — `.prizm-docs/` files, README files, or internal wiki pages for the affected area
145
+ > - **Knowledge docs** — `.prizmkit/prizm-docs/` files, README files, or internal wiki pages for the affected area
146
146
  > - **Images** — architecture diagrams, dependency graphs, or whiteboard photos
147
147
  > - **Web links** — reference implementations, design pattern articles, or migration guides
148
148
  >
@@ -307,7 +307,7 @@ If issues found, discuss with user and resolve before proceeding.
307
307
 
308
308
  | Checkpoint | Artifact/State | Criteria | Phase |
309
309
  |-----------|----------------|----------|-------|
310
- | **CP-RP-0** | Project Context | Tech stack, test suite status, .prizm-docs loaded | 1 |
310
+ | **CP-RP-0** | Project Context | Tech stack, test suite status, .prizmkit/prizm-docs loaded | 1 |
311
311
  | **CP-RP-1** | Goals Collected | All refactoring goals understood, no open ambiguities | 2 |
312
312
  | **CP-RP-2** | Code Analyzed | Analysis complete, user agrees with approach | 3 |
313
313
  | **CP-RP-3** | Items Decomposed | All items have deps, complexity, preservation strategy | 4 |
@@ -324,7 +324,7 @@ If issues found, discuss with user and resolve before proceeding.
324
324
  - Non-empty `refactors` array
325
325
  - Sequential IDs: `R-001`, `R-002`, ...
326
326
  - Valid dependency DAG (no cycles)
327
- - Each item has a declared `behavior_preservation` object with `strategy` field: `"test-gate"`, `"snapshot"`, or `"manual"`. Optional fields: `existing_tests` (boolean), `new_tests_needed` (string array). See `dev-pipeline/templates/refactor-list-schema.json` for the full schema.
327
+ - Each item has a declared `behavior_preservation` object with `strategy` field: `"test-gate"`, `"snapshot"`, or `"manual"`. Optional fields: `existing_tests` (boolean), `new_tests_needed` (string array). See `.prizmkit/dev-pipeline/templates/refactor-list-schema.json` for the full schema.
328
328
  - `priority` must be a string: `"critical"`, `"high"`, `"medium"`, or `"low"`
329
329
  - New items default `status: "pending"`
330
330
  - English titles for stable slug generation
@@ -132,7 +132,7 @@ Then ask:
132
132
  Ask:
133
133
  1. **Code paths** — "Which files or directories are the main targets? Any specific files I should look at?"
134
134
  2. **Design documents** — "Do you have any design docs, architecture diagrams, or refactoring proposals I should read?"
135
- 3. **Knowledge docs** — "Are there related `.prizm-docs/`, README files, or internal wiki pages for the target area?"
135
+ 3. **Knowledge docs** — "Are there related `.prizmkit/prizm-docs/`, README files, or internal wiki pages for the target area?"
136
136
  4. **Related issues/PRs** — "Any related issues, PRs, or previous refactoring attempts I should be aware of?"
137
137
 
138
138
  Record everything the user provides — these become inputs for Step 1.3.
@@ -147,7 +147,7 @@ Record everything the user provides — these become inputs for Step 1.3.
147
147
  |-------|-------------|---------|
148
148
  | Agent A | User-provided code paths — read full source files | Understand current structure, interfaces, dependencies |
149
149
  | Agent B | User-provided documents — design docs, proposals, wiki pages | Understand intended direction and constraints |
150
- | Agent C | `.prizm-docs/` for affected modules — L1/L2 docs, TRAPS, RULES | Understand existing architecture knowledge and known pitfalls |
150
+ | Agent C | `.prizmkit/prizm-docs/` for affected modules — L1/L2 docs, TRAPS, RULES | Understand existing architecture knowledge and known pitfalls |
151
151
  | Agent D | Test files for the target area — find and read existing tests | Understand current test coverage and behavior contracts |
152
152
 
153
153
  **Also gather** (can be included in any agent's task):
@@ -164,7 +164,7 @@ Record everything the user provides — these become inputs for Step 1.3.
164
164
  Present what you learned from the parallel reading:
165
165
  - Current code structure and its problems (with specific file/function references)
166
166
  - Existing test coverage status (which areas are safe, which are risky)
167
- - Known TRAPS and pitfalls from `.prizm-docs/`
167
+ - Known TRAPS and pitfalls from `.prizmkit/prizm-docs/`
168
168
  - Dependencies and potential impact on other modules
169
169
 
170
170
  Then ask targeted questions based on what you read. **Adapt question depth to the refactoring complexity** — a simple extract-method refactor needs fewer questions than a full module decomposition.
@@ -184,7 +184,7 @@ Then ask targeted questions based on what you read. **Adapt question depth to th
184
184
  - Any undocumented behavior that callers depend on?
185
185
 
186
186
  **Risk Assessment:**
187
- - "I found these TRAPS in .prizm-docs/: [list]. Any other known gotchas?"
187
+ - "I found these TRAPS in .prizmkit/prizm-docs/: [list]. Any other known gotchas?"
188
188
  - Does this code have external consumers (other teams, published APIs)?
189
189
  - Any concurrent development happening in the target area?
190
190
 
@@ -249,7 +249,7 @@ Once brainstorming is complete, produce a structured goals summary:
249
249
  - [Risk]: [Mitigation strategy]
250
250
 
251
251
  ### Reference Materials Reviewed
252
- - [List of code paths, documents, .prizm-docs/ files that were read]
252
+ - [List of code paths, documents, .prizmkit/prizm-docs/ files that were read]
253
253
 
254
254
  ### Constraints
255
255
  - [Timeline, coordination, deployment concerns]
@@ -293,7 +293,7 @@ AskUserQuestion:
293
293
  2. Invoke `/prizmkit-implement` to execute the plan (behavior preservation verified by tests)
294
294
  3. After implementation, run `/prizmkit-code-review` for quality check
295
295
  4. Commit via `/prizmkit-committer` with `refactor(<scope>):` prefix
296
- 5. Run `/prizmkit-retrospective` to sync `.prizm-docs/`
296
+ 5. Run `/prizmkit-retrospective` to sync `.prizmkit/prizm-docs/`
297
297
  6. **End workflow** — skip Phase 2/3/4
298
298
  - **Add to refactor list** → Continue to Phase 2 (Plan via pipeline)
299
299
 
@@ -394,7 +394,7 @@ AskUserQuestion:
394
394
 
395
395
  1. **Initial status check**:
396
396
  ```bash
397
- dev-pipeline/launch-refactor-daemon.sh status
397
+ .prizmkit/dev-pipeline/launch-refactor-daemon.sh status
398
398
  ```
399
399
 
400
400
  2. **Offer monitoring options**:
@@ -404,7 +404,7 @@ AskUserQuestion:
404
404
 
405
405
  3. **Periodic progress reports** (when user asks):
406
406
  ```bash
407
- python3 dev-pipeline/scripts/update-refactor-status.py \
407
+ python3 .prizmkit/dev-pipeline/scripts/update-refactor-status.py \
408
408
  --refactor-list .prizmkit/plans/refactor-list.json \
409
409
  --state-dir .prizmkit/state/refactor \
410
410
  --action status
@@ -480,4 +480,4 @@ While the pipeline runs, the user can continue the conversation:
480
480
  - Pipeline execution (Phase 3)
481
481
  - Progress updates (Phase 4)
482
482
  - Multiple git commits with `refactor(<scope>):` prefix
483
- - Updated `.prizm-docs/` (via prizmkit-retrospective per refactor item)
483
+ - Updated `.prizmkit/prizm-docs/` (via prizmkit-retrospective per refactor item)
@@ -13,7 +13,7 @@
13
13
  "name": "dev",
14
14
  "role": "developer",
15
15
  "agentDefinition": "prizm-dev-team-dev",
16
- "prompt": "You are a Dev Agent of the prizm-dev-team. Follow /prizmkit-implement workflow with TDD. Read plan.md/spec.md, implement task-by-task, mark completed tasks [x]. Check .prizm-docs/ TRAPS before implementing.",
16
+ "prompt": "You are a Dev Agent of the prizm-dev-team. Follow /prizmkit-implement workflow with TDD. Read plan.md/spec.md, implement task-by-task, mark completed tasks [x]. Check .prizmkit/prizm-docs/ TRAPS before implementing.",
17
17
  "subscriptions": ["*"]
18
18
  },
19
19
  {
@@ -6,7 +6,7 @@
6
6
  "hooks": [
7
7
  {
8
8
  "type": "command",
9
- "command": "SRC=$(git diff --cached --name-only 2>/dev/null | grep -cE '\\.(ts|tsx|js|jsx|py|go|rs|java)$'); if [ \"$SRC\" -gt 0 ]; then PRIZM=$(git diff --cached --name-only 2>/dev/null | grep -c '^\\.prizm-docs/'); if [ \"$PRIZM\" -gt 0 ]; then echo \"PRIZMKIT_DOC_STATUS: $SRC source file(s) staged | .prizm-docs/ updated ($PRIZM file(s))\"; else echo \"PRIZMKIT_DOC_STATUS: $SRC source file(s) staged | .prizm-docs/ NOT UPDATED — update if this is a feature change\"; fi; fi"
9
+ "command": "SRC=$(git diff --cached --name-only 2>/dev/null | grep -cE '\\.(ts|tsx|js|jsx|py|go|rs|java)$'); if [ \"$SRC\" -gt 0 ]; then PRIZM=$(git diff --cached --name-only 2>/dev/null | grep -c '^\\.prizmkit/prizm-docs/'); if [ \"$PRIZM\" -gt 0 ]; then echo \"PRIZMKIT_DOC_STATUS: $SRC source file(s) staged | .prizmkit/prizm-docs/ updated ($PRIZM file(s))\"; else echo \"PRIZMKIT_DOC_STATUS: $SRC source file(s) staged | .prizmkit/prizm-docs/ NOT UPDATED — update if this is a feature change\"; fi; fi"
10
10
  }
11
11
  ]
12
12
  }
@@ -17,7 +17,7 @@
17
17
  "hooks": [
18
18
  {
19
19
  "type": "command",
20
- "command": "TOOL_INPUT=\"${CLAUDE_TOOL_INPUT:-${CODEBUDDY_TOOL_INPUT:-}}\"; if echo \"$TOOL_INPUT\" | grep -qE 'git (commit|merge|rebase)' 2>/dev/null; then DRIFT=$(sh .prizmkit/scripts/diff-prizm-docs.sh 2>/dev/null); if [ -n \"$DRIFT\" ]; then echo \"PRIZMKIT_DRIFT_DETECTED: prizm-docs structural differences found:\"; echo \"$DRIFT\"; echo \"Please update affected .prizm-docs/ files.\"; fi; fi"
20
+ "command": "TOOL_INPUT=\"${CLAUDE_TOOL_INPUT:-${CODEBUDDY_TOOL_INPUT:-}}\"; if echo \"$TOOL_INPUT\" | grep -qE 'git (commit|merge|rebase)' 2>/dev/null; then DRIFT=$(sh .prizmkit/scripts/diff-prizm-docs.sh 2>/dev/null); if [ -n \"$DRIFT\" ]; then echo \"PRIZMKIT_DRIFT_DETECTED: prizm-docs structural differences found:\"; echo \"$DRIFT\"; echo \"Please update affected .prizmkit/prizm-docs/ files.\"; fi; fi"
21
21
  }
22
22
  ]
23
23
  }
@@ -1,12 +1,12 @@
1
1
  #!/bin/sh
2
2
  # PrizmKit: diff-prizm-docs.sh
3
- # Outputs structural differences between .prizm-docs/ and source code.
4
- # Silent (exit 0) if no differences or if .prizm-docs doesn't exist.
3
+ # Outputs structural differences between .prizmkit/prizm-docs/ and source code.
4
+ # Silent (exit 0) if no differences or if .prizmkit/prizm-docs doesn't exist.
5
5
  # POSIX sh only — no arrays, no bashisms.
6
6
 
7
7
  set -e
8
8
 
9
- ROOT_PRIZM=".prizm-docs/root.prizm"
9
+ ROOT_PRIZM=".prizmkit/prizm-docs/root.prizm"
10
10
 
11
11
  # 1. Exit silently if no root.prizm
12
12
  [ -f "$ROOT_PRIZM" ] || exit 0
@@ -85,7 +85,7 @@ echo "$REGISTERED_PATHS" | while IFS= read -r source_path; do
85
85
  [ -z "$source_path" ] && continue
86
86
 
87
87
  # Derive L1 prizm file path
88
- l1_file=".prizm-docs/${source_path}.prizm"
88
+ l1_file=".prizmkit/prizm-docs/${source_path}.prizm"
89
89
 
90
90
  if [ ! -f "$l1_file" ]; then
91
91
  continue
@@ -104,7 +104,7 @@ echo "$REGISTERED_PATHS" | while IFS= read -r source_path; do
104
104
  done
105
105
 
106
106
  # 5. Find orphan docs
107
- find .prizm-docs -name '*.prizm' 2>/dev/null | while IFS= read -r prizm_file; do
107
+ find .prizmkit/prizm-docs -name '*.prizm' 2>/dev/null | while IFS= read -r prizm_file; do
108
108
  _basename=$(basename "$prizm_file")
109
109
  case "$_basename" in
110
110
  root.prizm|changelog.prizm|changelog-archive.prizm)
@@ -112,8 +112,8 @@ find .prizm-docs -name '*.prizm' 2>/dev/null | while IFS= read -r prizm_file; do
112
112
  ;;
113
113
  esac
114
114
 
115
- # Derive source path: remove .prizm-docs/ prefix and .prizm suffix
116
- source_path=$(echo "$prizm_file" | sed 's|^\.prizm-docs/||' | sed 's|\.prizm$||')
115
+ # Derive source path: remove .prizmkit/prizm-docs/ prefix and .prizm suffix
116
+ source_path=$(echo "$prizm_file" | sed 's|^\.prizmkit/prizm-docs/||' | sed 's|\.prizm$||')
117
117
 
118
118
  if [ ! -d "$source_path" ]; then
119
119
  echo "ORPHAN_DOC: $prizm_file | source dir missing"
@@ -131,7 +131,7 @@ find . -mindepth 1 -maxdepth 3 -type d \
131
131
  ! -path '*/target/*' ! -path './target' \
132
132
  ! -path '*/tests/*' ! -path './tests' \
133
133
  ! -path '*/__tests__/*' ! -path './__tests__' \
134
- ! -path '*/.prizm-docs/*' ! -path './.prizm-docs' \
134
+ ! -path '*/.prizmkit/prizm-docs/*' ! -path './.prizmkit/prizm-docs' \
135
135
  ! -path '*/.claude/*' ! -path './.claude' \
136
136
  ! -path '*/.codebuddy/*' ! -path './.codebuddy' \
137
137
  ! -path '*/dev-pipeline/*' ! -path './dev-pipeline' \
@@ -1,13 +1,13 @@
1
1
  #!/bin/sh
2
- # prizm-pre-commit.sh — git pre-commit hook for .prizm-docs validation
2
+ # prizm-pre-commit.sh — git pre-commit hook for .prizmkit/prizm-docs validation
3
3
 
4
4
  PROJECT_ROOT=$(git rev-parse --show-toplevel 2>/dev/null) || exit 0
5
5
 
6
6
  # Only run in prizm projects
7
- [ -f "$PROJECT_ROOT/.prizm-docs/root.prizm" ] || exit 0
7
+ [ -f "$PROJECT_ROOT/.prizmkit/prizm-docs/root.prizm" ] || exit 0
8
8
 
9
9
  VALIDATE_SCRIPT="$PROJECT_ROOT/.prizmkit/scripts/validate-prizm-docs.sh"
10
- [ -f "$VALIDATE_SCRIPT" ] || VALIDATE_SCRIPT="$PROJECT_ROOT/dev-pipeline/scripts/validate-prizm-docs.sh"
10
+ [ -f "$VALIDATE_SCRIPT" ] || VALIDATE_SCRIPT="$PROJECT_ROOT/.prizmkit/dev-pipeline/scripts/validate-prizm-docs.sh"
11
11
 
12
12
  if [ -f "$VALIDATE_SCRIPT" ]; then
13
13
  sh "$VALIDATE_SCRIPT" --staged
@@ -37,7 +37,7 @@ for FILE in $FILES; do
37
37
  *root.prizm) LIMIT=4096 ;;
38
38
  *)
39
39
  DIR=$(dirname "$FILE")
40
- if [ "$DIR" = ".prizm-docs" ]; then
40
+ if [ "$DIR" = ".prizmkit/prizm-docs" ]; then
41
41
  LIMIT=3072
42
42
  else
43
43
  LIMIT=5120
@@ -6,11 +6,11 @@ MODE="${1:---staged}"
6
6
  ERRORS=0
7
7
 
8
8
  # Not a prizm project — exit silently
9
- [ -f ".prizm-docs/root.prizm" ] || exit 0
9
+ [ -f ".prizmkit/prizm-docs/root.prizm" ] || exit 0
10
10
 
11
11
  # Collect files to check
12
12
  if [ "$MODE" = "--all" ]; then
13
- FILES=$(find .prizm-docs -name '*.prizm' 2>/dev/null)
13
+ FILES=$(find .prizmkit/prizm-docs -name '*.prizm' 2>/dev/null)
14
14
  elif [ "$MODE" = "--staged" ]; then
15
15
  FILES=$(git diff --cached --name-only 2>/dev/null | grep '\.prizm$')
16
16
  else
@@ -44,9 +44,9 @@ for FILE in $FILES; do
44
44
  HINT="Consolidate MODULE_INDEX, keep top-5 RULES."
45
45
  ;;
46
46
  *)
47
- # L1 = direct child of .prizm-docs/, L2 = nested deeper
47
+ # L1 = direct child of .prizmkit/prizm-docs/, L2 = nested deeper
48
48
  DIR=$(dirname "$FILE")
49
- if [ "$DIR" = ".prizm-docs" ]; then
49
+ if [ "$DIR" = ".prizmkit/prizm-docs" ]; then
50
50
  LIMIT=3072; LEVEL="L1"
51
51
  HINT="Move implementation details to L2."
52
52
  else
@@ -4,14 +4,14 @@
4
4
  This project uses PrizmKit with the Prizm documentation system for AI-optimized progressive context loading.
5
5
 
6
6
  ### Progressive Loading Protocol
7
- - ON SESSION START: Always read `.prizm-docs/root.prizm` first (L0 — project map)
7
+ - ON SESSION START: Always read `.prizmkit/prizm-docs/root.prizm` first (L0 — project map)
8
8
  - ON RESUME (feature/bugfix directory has session-summary.md): Read session-summary.md first for prior context, then load only L1/L2 for modules mentioned in it
9
- - ON TASK: Read L1 (`.prizm-docs/<module>.prizm`) for relevant modules referenced in MODULE_INDEX or MODULE_GROUPS. If entries have keyword tags (e.g., `[login, jwt, oauth]`), match user's task against tags to prioritize which modules to load.
10
- - ON FILE EDIT: Read L2 (`.prizm-docs/<module>/<submodule>.prizm`) before modifying files. Pay attention to TRAPS and DECISIONS.
9
+ - ON TASK: Read L1 (`.prizmkit/prizm-docs/<module>.prizm`) for relevant modules referenced in MODULE_INDEX or MODULE_GROUPS. If entries have keyword tags (e.g., `[login, jwt, oauth]`), match user's task against tags to prioritize which modules to load.
10
+ - ON FILE EDIT: Read L2 (`.prizmkit/prizm-docs/<module>/<submodule>.prizm`) before modifying files. Pay attention to TRAPS and DECISIONS.
11
11
  - NEVER load all .prizm docs at once. Load only what is needed for the current task.
12
12
 
13
13
  ### Auto-Update Protocol
14
- - BEFORE EVERY COMMIT: Update affected `.prizm-docs/` files
14
+ - BEFORE EVERY COMMIT: Update affected `.prizmkit/prizm-docs/` files
15
15
  - Platform hooks (rules or UserPromptSubmit) will remind you automatically
16
16
  - Use `/prizmkit-committer` for the complete commit workflow
17
17
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "prizmkit",
3
- "version": "1.1.41",
3
+ "version": "1.1.46",
4
4
  "description": "Create a new PrizmKit-powered project with clean initialization — no framework dev files, just what you need.",
5
5
  "type": "module",
6
6
  "bin": {
package/src/clean.js CHANGED
@@ -115,8 +115,6 @@ export async function runClean(directory, options = {}) {
115
115
  const fullRemoveTargets = [
116
116
  '.prizmkit',
117
117
  '.dev-team',
118
- 'dev-pipeline',
119
- '.prizm-docs', // AI-generated project context docs
120
118
  'CODEBUDDY.md',
121
119
  'CLAUDE.md',
122
120
  path.join('.prizmkit', 'plans', 'feature-list.json'), // feature-planner output
@@ -204,7 +202,7 @@ export async function runClean(directory, options = {}) {
204
202
  console.log(chalk.green(` 清理完成:已删除 ${removed} 项。`));
205
203
  }
206
204
  console.log('');
207
- console.log(chalk.gray(' 注意:.prizm-docs/ 为 AI 生成的项目上下文文档,已一并清理。'));
205
+ console.log(chalk.gray(' 注意:.prizmkit/prizm-docs/ 为 AI 生成的项目上下文文档,已一并清理。'));
208
206
  console.log(chalk.gray(' 用户自定义的 agent/skill/rule 文件未受影响。'));
209
207
  console.log('');
210
208
  }
package/src/config.js CHANGED
@@ -6,7 +6,7 @@
6
6
  *
7
7
  * Flow: READ manifest → PROMPT user → COMPUTE DIFF → DISPLAY SUMMARY → EXECUTE
8
8
  *
9
- * Preserves runtime files (.prizm-docs/, dev-pipeline/state/, .prizmkit/specs/).
9
+ * Preserves runtime files (.prizmkit/prizm-docs/, .prizmkit/state/, .prizmkit/specs/).
10
10
  */
11
11
 
12
12
  import chalk from 'chalk';
@@ -9,42 +9,22 @@
9
9
  * @returns {string}
10
10
  */
11
11
  export function generateGitignore(options = {}) {
12
+ void options;
12
13
  const lines = [
13
14
  '# ===========================',
14
15
  '# PrizmKit Runtime Artifacts',
15
16
  '# ===========================',
16
17
  '',
17
- '# PrizmKit 运行时状态(不提交)',
18
- '.prizmkit/state/',
18
+ '# PrizmKit 运行时全部产物(state/、prizm-docs/、.env、logs 等)',
19
+ '.prizmkit/*',
19
20
  '',
20
21
  '# 多 Agent 协作临时工作区',
21
22
  '.dev-team/',
22
23
  '',
23
- '# Prizm 文档(按需决定是否提交)',
24
- '# .prizm-docs/',
25
- '',
26
- '# 规划产物(按需决定是否提交)',
27
- '# .prizmkit/plans/',
28
- '',
29
- ];
30
-
31
- if (options.pipeline) {
32
- lines.push(
33
- '# Dev-Pipeline 运行时状态(已迁移到 .prizmkit/state/)',
34
- '.prizmkit/state/features/',
35
- '.prizmkit/state/bugfix/',
36
- '.prizmkit/state/refactor/',
37
- 'dev-pipeline/logs/',
38
- 'dev-pipeline/*.pid',
39
- '',
40
- );
41
- }
42
-
43
- lines.push(
44
24
  '# Playwright CLI 快照和截图',
45
25
  '.playwright-cli/',
46
26
  '',
47
- );
27
+ ];
48
28
 
49
29
  lines.push(
50
30
  '# ===========================',
package/src/scaffold.js CHANGED
@@ -405,7 +405,7 @@ export async function installSettings(platform, projectRoot, options, dryRun) {
405
405
 
406
406
  // Settings
407
407
  const permissions = [
408
- 'Bash(python3 dev-pipeline/scripts/*)',
408
+ 'Bash(python3 .prizmkit/dev-pipeline/scripts/*)',
409
409
  'Bash(git add *)',
410
410
  'Bash(git commit *)',
411
411
  'Bash(git diff *)',
@@ -420,7 +420,7 @@ export async function installSettings(platform, projectRoot, options, dryRun) {
420
420
  const pipelineEntries = await fs.readdir(pipelineDir);
421
421
  const entryScripts = pipelineEntries.filter(f => /^(run-|launch-|retry-|reset-).*\.sh$/.test(f));
422
422
  for (const script of entryScripts) {
423
- permissions.push(`Bash(./dev-pipeline/${script} *)`);
423
+ permissions.push(`Bash(./.prizmkit/dev-pipeline/${script} *)`);
424
424
  }
425
425
  } catch {
426
426
  // Fallback: if readdir fails, add no pipeline permissions
@@ -437,7 +437,7 @@ export async function installSettings(platform, projectRoot, options, dryRun) {
437
437
  hooks: [
438
438
  {
439
439
  type: 'command',
440
- command: 'test -f .prizm-docs/root.prizm && echo "PrizmKit: .prizm-docs found. Read root.prizm for project context." || echo "PrizmKit: No .prizm-docs found. Run /prizmkit-init to bootstrap."',
440
+ command: 'test -f .prizmkit/prizm-docs/root.prizm && echo "PrizmKit: .prizmkit/prizm-docs found. Read root.prizm for project context." || echo "PrizmKit: No .prizmkit/prizm-docs found. Run /prizmkit-init to bootstrap."',
441
441
  },
442
442
  ],
443
443
  },
@@ -634,14 +634,15 @@ export function resolvePipelineFileList() {
634
634
 
635
635
  /**
636
636
  * 安装 dev-pipeline(纯 Copy 模式)
637
- * Returns an array of installed file relative paths (relative to dev-pipeline/).
637
+ * 安装目标:.prizmkit/dev-pipeline/
638
+ * Returns an array of installed file relative paths (relative to .prizmkit/dev-pipeline/).
638
639
  */
639
640
  export async function installPipeline(projectRoot, dryRun, { forceOverwrite = false } = {}) {
640
641
  const pipelineSource = getPipelineDir();
641
- const pipelineTarget = path.join(projectRoot, 'dev-pipeline');
642
+ const pipelineTarget = path.join(projectRoot, '.prizmkit', 'dev-pipeline');
642
643
 
643
644
  if (dryRun) {
644
- console.log(chalk.gray(` [dry-run] dev-pipeline/`));
645
+ console.log(chalk.gray(` [dry-run] .prizmkit/dev-pipeline/`));
645
646
  return [];
646
647
  }
647
648
 
@@ -666,7 +667,7 @@ export async function installPipeline(projectRoot, dryRun, { forceOverwrite = fa
666
667
  const srcStat = await fs.stat(src);
667
668
 
668
669
  if (await fs.pathExists(tgt) && !forceOverwrite) {
669
- console.log(chalk.yellow(` ⚠ dev-pipeline/${item} 已存在,跳过`));
670
+ console.log(chalk.yellow(` ⚠ .prizmkit/dev-pipeline/${item} 已存在,跳过`));
670
671
  // Still collect existing files for manifest tracking
671
672
  if (srcStat.isDirectory()) {
672
673
  installedFiles.push(...collectFilesRecursive(src, item));
@@ -687,14 +688,14 @@ export async function installPipeline(projectRoot, dryRun, { forceOverwrite = fa
687
688
  }
688
689
  }
689
690
 
690
- console.log(chalk.green(` ✓ dev-pipeline/ (${installedCount} 项)`));
691
+ console.log(chalk.green(` ✓ .prizmkit/dev-pipeline/ (${installedCount} 项)`));
691
692
 
692
- // Copy .env.example to project root if it exists in pipeline source
693
+ // Copy .env.example to .prizmkit/.env.example if it exists in pipeline source
693
694
  const envExampleSrc = path.join(pipelineSource, '.env.example');
694
- const envExampleTgt = path.join(projectRoot, '.env.example');
695
+ const envExampleTgt = path.join(projectRoot, '.prizmkit', '.env.example');
695
696
  if (await fs.pathExists(envExampleSrc) && !await fs.pathExists(envExampleTgt)) {
696
697
  await fs.copy(envExampleSrc, envExampleTgt);
697
- console.log(chalk.green(` ✓ .env.example (pipeline environment configuration)`));
698
+ console.log(chalk.green(` ✓ .prizmkit/.env.example (pipeline environment configuration)`));
698
699
  }
699
700
 
700
701
  return installedFiles;
package/src/upgrade.js CHANGED
@@ -125,13 +125,13 @@ export async function removeRuleFiles(platform, projectRoot, ruleFileNames, dryR
125
125
  */
126
126
  export async function removePipelineFiles(projectRoot, fileList, dryRun) {
127
127
  for (const relPath of fileList) {
128
- const filePath = path.join(projectRoot, 'dev-pipeline', relPath);
128
+ const filePath = path.join(projectRoot, '.prizmkit', 'dev-pipeline', relPath);
129
129
  if (await fs.pathExists(filePath)) {
130
130
  if (dryRun) {
131
- console.log(chalk.gray(` [dry-run] remove dev-pipeline/${relPath}`));
131
+ console.log(chalk.gray(` [dry-run] remove .prizmkit/dev-pipeline/${relPath}`));
132
132
  } else {
133
133
  await fs.remove(filePath);
134
- console.log(chalk.red(` ✗ removed dev-pipeline/${relPath}`));
134
+ console.log(chalk.red(` ✗ removed .prizmkit/dev-pipeline/${relPath}`));
135
135
  }
136
136
  }
137
137
  }