prizmkit 1.1.42 → 1.1.47

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 +6 -3
  11. package/bundled/dev-pipeline/launch-feature-daemon.sh +6 -3
  12. package/bundled/dev-pipeline/launch-refactor-daemon.sh +6 -3
  13. package/bundled/dev-pipeline/lib/common.sh +36 -7
  14. package/bundled/dev-pipeline/reset-bug.sh +9 -7
  15. package/bundled/dev-pipeline/reset-feature.sh +9 -7
  16. package/bundled/dev-pipeline/reset-refactor.sh +9 -7
  17. package/bundled/dev-pipeline/run-bugfix.sh +25 -24
  18. package/bundled/dev-pipeline/run-feature.sh +29 -32
  19. package/bundled/dev-pipeline/run-recovery.sh +22 -4
  20. package/bundled/dev-pipeline/run-refactor.sh +27 -28
  21. package/bundled/dev-pipeline/scripts/generate-bootstrap-prompt.py +14 -14
  22. package/bundled/dev-pipeline/scripts/generate-bugfix-prompt.py +9 -4
  23. package/bundled/dev-pipeline/scripts/generate-recovery-prompt.py +18 -12
  24. package/bundled/dev-pipeline/scripts/generate-refactor-prompt.py +9 -4
  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 +2 -2
  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 +6 -6
  35. package/bundled/dev-pipeline/templates/refactor-bootstrap-prompt.md +3 -3
  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 +21 -21
  53. package/bundled/skills/feature-pipeline-launcher/SKILL.md +21 -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 +2 -2
  58. package/bundled/skills/prizmkit-implement/SKILL.md +2 -2
  59. package/bundled/skills/prizmkit-init/SKILL.md +17 -18
  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 +21 -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 -59
  87. package/src/scaffold.js +12 -11
  88. package/src/upgrade.js +3 -3
@@ -81,7 +81,7 @@ If any agent times out:
81
81
  ### Phase 0: Project Bootstrap
82
82
  - Run `/prizmkit-init` (invoke the prizmkit-init skill)
83
83
  - Run `python3 {{INIT_SCRIPT_PATH}} --project-root {{PROJECT_ROOT}} --feature-id {{FEATURE_ID}} --feature-slug {{FEATURE_SLUG}}`
84
- - **CP-0**: Verify `.prizm-docs/root.prizm`, `.prizmkit/config.json` exist
84
+ - **CP-0**: Verify `.prizmkit/prizm-docs/root.prizm`, `.prizmkit/config.json` exist
85
85
  {{END_IF_INIT_NEEDED}}
86
86
  {{IF_INIT_DONE}}
87
87
  ### Phase 0: Record Test Baseline & Detect Test Commands
@@ -134,7 +134,7 @@ If `EXISTING_CODE` is non-empty: your spec/plan/tasks must reflect this existing
134
134
 
135
135
  **Step A — Build Context Snapshot** (skip if `context-snapshot.md` already exists):
136
136
 
137
- 1. Read `.prizm-docs/root.prizm` and relevant L1/L2 prizm docs
137
+ 1. Read `.prizmkit/prizm-docs/root.prizm` and relevant L1/L2 prizm docs
138
138
  2. Detect source code directories: read KEY_FILES and STRUCTURE sections from `root.prizm` to identify where source code lives (e.g. `src/`, `app/`, `lib/`, `cmd/`, `packages/`, or project root). If `root.prizm` is missing, scan the project tree:
139
139
  ```bash
140
140
  find . -maxdepth 2 -type f \( -name "*.js" -o -name "*.ts" -o -name "*.py" -o -name "*.go" -o -name "*.java" -o -name "*.rb" -o -name "*.rs" \) -not -path '*/node_modules/*' -not -path '*/.git/*' -not -path '*/dist/*' -not -path '*/build/*' -not -path '*/vendor/*' | head -30
@@ -159,7 +159,7 @@ If `EXISTING_CODE` is non-empty: your spec/plan/tasks must reflect this existing
159
159
  |------|-----------|----------------|
160
160
  | `<source-dir>/security/permission-guard.js` | Permission check integration | `checkCommandPermission(userId, cmd)` |
161
161
 
162
- ### Known TRAPS (from .prizm-docs/)
162
+ ### Known TRAPS (from .prizmkit/prizm-docs/)
163
163
  - <trap entries extracted from L1/L2 docs>
164
164
  - **Section 5 — Existing Tests**: full content of related test files as code blocks
165
165
  4. Confirm: `ls .prizmkit/specs/{{FEATURE_SLUG}}/context-snapshot.md`
@@ -221,7 +221,7 @@ Prompt:
221
221
  > "Read {{CRITIC_SUBAGENT_PATH}}. For feature {{FEATURE_ID}} (slug: {{FEATURE_SLUG}}):
222
222
  > **MODE: Plan Challenge**
223
223
  > 1. Read `.prizmkit/specs/{{FEATURE_SLUG}}/context-snapshot.md` FIRST — Section 3 has project context, Section 4 has file manifest.
224
- > 2. Read `.prizm-docs/root.prizm` and relevant L1/L2 docs for affected modules.
224
+ > 2. Read `.prizmkit/prizm-docs/root.prizm` and relevant L1/L2 docs for affected modules.
225
225
  > 3. Read existing source files in the modules this plan touches.
226
226
  > 4. Challenge plan.md against the project's existing architecture, patterns, and style.
227
227
  > Write `.prizmkit/specs/{{FEATURE_SLUG}}/challenge-report.md` with findings (or 'No significant challenges')."
@@ -516,23 +516,23 @@ git log --oneline | grep "{{FEATURE_ID}}" | head -3
516
516
  - If a commit for `{{FEATURE_ID}}` already exists → **skip 6d** (do NOT run /prizmkit-committer, do NOT run git reset, do NOT stage or unstage anything). Proceed directly to 6e Final verification.
517
517
  - If no existing commit → proceed normally with 6b–6d.
518
518
 
519
- **6b.** Run `/prizmkit-retrospective` (**before commit**, maintains `.prizm-docs/` architecture index):
519
+ **6b.** Run `/prizmkit-retrospective` (**before commit**, maintains `.prizmkit/prizm-docs/` architecture index):
520
520
  - **Structural sync**: update KEY_FILES/INTERFACES/DEPENDENCIES/file counts for changed modules
521
- - **Architecture knowledge** (feature sessions only): extract TRAPS, RULES, DECISIONS from completed work into `.prizm-docs/`
521
+ - **Architecture knowledge** (feature sessions only): extract TRAPS, RULES, DECISIONS from completed work into `.prizmkit/prizm-docs/`
522
522
  - **L2 coverage check**: For any module/sub-module with source files created or significantly modified in this session but no L2 `.prizm` doc — evaluate whether L2 is warranted and create if so. The current session has the best context for accurate KEY_FILES, TRAPS, and DECISIONS.
523
- - Stage doc changes: `git add .prizm-docs/`
523
+ - Stage doc changes: `git add .prizmkit/prizm-docs/`
524
524
  ⚠️ Do NOT commit here. Only stage.
525
525
  - **For bug-fix sessions**: structural sync (Job 1) by default. Run knowledge injection (Job 2) when the fix causes interface signature changes, dependency additions/removals, observable behavior changes, or reveals new TRAPs
526
526
 
527
527
  **6c.** Stage all feature code explicitly (NEVER use `git add -A` or `git add .`):
528
528
  ```bash
529
529
  git add <specific-files-created-or-modified>
530
- git add .prizm-docs/
530
+ git add .prizmkit/prizm-docs/
531
531
  ```
532
532
 
533
533
  **6d.** Run `/prizmkit-committer` → THE ONLY commit for this feature:
534
534
  `feat({{FEATURE_ID}}): {{FEATURE_TITLE}}`
535
- This single commit includes: feature code + tests + .prizm-docs/ updates. Do NOT push.
535
+ This single commit includes: feature code + tests + .prizmkit/prizm-docs/ updates. Do NOT push.
536
536
  - MANDATORY: commit must be done via `/prizmkit-committer` skill. Do NOT run manual `git add`/`git commit` as a substitute.
537
537
  - Do NOT run `update-feature-status.py` here — the pipeline runner handles feature-list.json updates automatically after session exit.
538
538
 
@@ -116,10 +116,10 @@ If the bug is related to UI/frontend, you may use these tools to:
116
116
 
117
117
  **Step 1 — Diagnose the bug**:
118
118
 
119
- 1. Read `.prizm-docs/root.prizm` and relevant L1/L2 docs for affected modules
119
+ 1. Read `.prizmkit/prizm-docs/root.prizm` and relevant L1/L2 docs for affected modules
120
120
  2. Trace the bug:
121
121
  - Classify error type (Runtime / Network / Auth / Data / Logic / Config / External)
122
- - Check `.prizm-docs/` TRAPS sections for matching known issues
122
+ - Check `.prizmkit/prizm-docs/` TRAPS sections for matching known issues
123
123
  - Trace call chain from error source to root cause
124
124
  - Identify all affected files and modules
125
125
  3. Read the affected source files and related test files
@@ -130,7 +130,7 @@ Write `.prizmkit/bugfix/{{BUG_ID}}/context-snapshot.md`:
130
130
  - **Section 1 — Bug Brief**: bug description + acceptance criteria + root cause analysis
131
131
  - **Section 2 — Affected Files**: full verbatim content of each affected source file
132
132
  - **Section 3 — Existing Tests**: full content of related test files
133
- - **Section 4 — Prizm Context**: relevant TRAPS, RULES from .prizm-docs/
133
+ - **Section 4 — Prizm Context**: relevant TRAPS, RULES from .prizmkit/prizm-docs/
134
134
 
135
135
  **Step 3 — Plan the fix**:
136
136
 
@@ -228,16 +228,16 @@ Run `/prizmkit-code-review` with `artifact_dir=.prizmkit/bugfix/{{BUG_ID}}/`:
228
228
  - **Full retrospective** (Job 1 + Job 2): Only when the fix causes interface signature changes, dependency additions/removals, observable behavior changes, or reveals new TRAPs.
229
229
 
230
230
  **a.** If a new pitfall was discovered (not previously in TRAPS):
231
- - Update the affected module's TRAPS section in `.prizm-docs/`
231
+ - Update the affected module's TRAPS section in `.prizmkit/prizm-docs/`
232
232
  - Format: `- TRAP: <description> | FIX: <solution> | DATE: YYYY-MM-DD`
233
233
 
234
234
  **b.** Run `/prizmkit-retrospective` following the policy above.
235
- Stage doc changes: `git add .prizm-docs/`
235
+ Stage doc changes: `git add .prizmkit/prizm-docs/`
236
236
 
237
237
  **c.** Stage all changed files explicitly (NEVER use `git add -A` or `git add .`):
238
238
  ```bash
239
239
  git add <specific-files-modified>
240
- git add .prizm-docs/
240
+ git add .prizmkit/prizm-docs/
241
241
  ```
242
242
 
243
243
  **d.** Run `/prizmkit-committer --headless`:
@@ -166,7 +166,7 @@ Include browser verification approach in plan.md:
166
166
  - Spawn Dev agent (Agent tool, subagent_type="prizm-dev-team-dev", run_in_background=false)
167
167
  Prompt: "Read {{DEV_SUBAGENT_PATH}}. For refactor {{REFACTOR_ID}} ('{{REFACTOR_TITLE}}'):
168
168
  1. Read `.prizmkit/refactor/{{REFACTOR_ID}}/spec.md` and `.prizmkit/refactor/{{REFACTOR_ID}}/plan.md`
169
- 2. Read `.prizm-docs/` for affected modules (TRAPS, RULES, PATTERNS)
169
+ 2. Read `.prizmkit/prizm-docs/` for affected modules (TRAPS, RULES, PATTERNS)
170
170
  3. Before making any changes, run the existing test suite to establish a green baseline
171
171
  4. Run `/prizmkit-implement` with `artifact_dir=.prizmkit/refactor/{{REFACTOR_ID}}/` — this handles the full implementation cycle:
172
172
  - Reads plan.md Tasks section
@@ -233,7 +233,7 @@ Include browser verification approach in plan.md:
233
233
 
234
234
  **This phase is executed by YOU (the orchestrator), NOT a subagent.**
235
235
 
236
- 1. Run `/prizmkit-retrospective` (full sync — Job 1 + Job 2) to update `.prizm-docs/` with structural changes
236
+ 1. Run `/prizmkit-retrospective` (full sync — Job 1 + Job 2) to update `.prizmkit/prizm-docs/` with structural changes
237
237
 
238
238
  2. Run `/prizmkit-committer --headless` with:
239
239
  - Commit message: `refactor({{REFACTOR_ID}}): {{REFACTOR_TITLE}}`
@@ -271,7 +271,7 @@ Include browser verification approach in plan.md:
271
271
  ```
272
272
  Rules: focus on structural changes, new module boundaries, renamed/moved files, changed interfaces. 3-8 notes, each under 120 chars.
273
273
 
274
- - **CP-RF-4**: Commit recorded, refactor-report.md written, .prizm-docs/ updated
274
+ - **CP-RF-4**: Commit recorded, refactor-report.md written, .prizmkit/prizm-docs/ updated
275
275
  - **Checkpoint update**: set steps `prizmkit-committer` and `refactor-report` to `"completed"` in `{{CHECKPOINT_PATH}}`
276
276
 
277
277
  ### Step 3: Report Session Status
@@ -7,22 +7,22 @@ git log --oneline | grep "{{FEATURE_ID}}" | head -3
7
7
  - If a commit for `{{FEATURE_ID}}` already exists → **skip d** (do NOT run /prizmkit-committer, do NOT run git reset, do NOT stage or unstage anything). Proceed directly to e Final verification.
8
8
  - If no existing commit → proceed normally with b–d.
9
9
 
10
- **b.** Run `/prizmkit-retrospective` (**before commit**, maintains `.prizm-docs/` architecture index):
10
+ **b.** Run `/prizmkit-retrospective` (**before commit**, maintains `.prizmkit/prizm-docs/` architecture index):
11
11
  1. **Structural sync**: update KEY_FILES/INTERFACES/DEPENDENCIES/file counts for changed modules
12
- 2. **Architecture knowledge**: extract TRAPS, RULES, DECISIONS from completed work into `.prizm-docs/`
12
+ 2. **Architecture knowledge**: extract TRAPS, RULES, DECISIONS from completed work into `.prizmkit/prizm-docs/`
13
13
  3. **L2 coverage check**: For any module/sub-module with source files created or significantly modified in this session but no L2 `.prizm` doc — evaluate whether L2 is warranted and create if so. The current session has the best context for accurate KEY_FILES, TRAPS, and DECISIONS.
14
- 4. Stage doc changes: `git add .prizm-docs/`
14
+ 4. Stage doc changes: `git add .prizmkit/prizm-docs/`
15
15
  ⚠️ Do NOT commit here. Only stage.
16
16
 
17
17
  **c.** Stage all feature code explicitly (NEVER use `git add -A` or `git add .`):
18
18
  ```bash
19
19
  git add <specific-files-created-or-modified>
20
- git add .prizm-docs/
20
+ git add .prizmkit/prizm-docs/
21
21
  ```
22
22
 
23
23
  **d.** Run `/prizmkit-committer` → THE ONLY commit for this feature:
24
24
  `feat({{FEATURE_ID}}): {{FEATURE_TITLE}}`
25
- This single commit includes: feature code + tests + .prizm-docs/ updates. Do NOT push.
25
+ This single commit includes: feature code + tests + .prizmkit/prizm-docs/ updates. Do NOT push.
26
26
  - MANDATORY: commit must be done via `/prizmkit-committer` skill. Do NOT run manual `git add`/`git commit` as a substitute.
27
27
  - Do NOT run `update-feature-status.py` here — the pipeline runner handles feature-list.json updates automatically after session exit.
28
28
 
@@ -1,21 +1,21 @@
1
1
  ### Architecture Sync & Commit (SINGLE COMMIT)
2
2
 
3
- **a.** Run `/prizmkit-retrospective` — maintains `.prizm-docs/` (architecture index):
4
- 1. **Structural sync**: Use `git diff --cached --name-status` to locate changed modules, update KEY_FILES/INTERFACES/DEPENDENCIES/file counts in affected `.prizm-docs/` files
5
- 2. **Architecture knowledge** (feature sessions only): Extract TRAPS/RULES/DECISIONS from completed work into `.prizm-docs/`
3
+ **a.** Run `/prizmkit-retrospective` — maintains `.prizmkit/prizm-docs/` (architecture index):
4
+ 1. **Structural sync**: Use `git diff --cached --name-status` to locate changed modules, update KEY_FILES/INTERFACES/DEPENDENCIES/file counts in affected `.prizmkit/prizm-docs/` files
5
+ 2. **Architecture knowledge** (feature sessions only): Extract TRAPS/RULES/DECISIONS from completed work into `.prizmkit/prizm-docs/`
6
6
  3. **L2 coverage check**: For any module/sub-module with source files created or significantly modified in this session but no L2 `.prizm` doc — evaluate whether L2 is warranted and create if so. The current session has the best context for accurate KEY_FILES, TRAPS, and DECISIONS.
7
- 4. Stage doc changes: `git add .prizm-docs/`
7
+ 4. Stage doc changes: `git add .prizmkit/prizm-docs/`
8
8
  ⚠️ Do NOT commit here. Only stage.
9
9
 
10
10
  **b.** Stage all feature code explicitly (NEVER use `git add -A` or `git add .`):
11
11
  ```bash
12
12
  git add <specific-files-created-or-modified>
13
- git add .prizm-docs/
13
+ git add .prizmkit/prizm-docs/
14
14
  ```
15
15
 
16
16
  **c.** Run `/prizmkit-committer` → THE ONLY commit for this feature:
17
17
  `feat({{FEATURE_ID}}): {{FEATURE_TITLE}}`
18
- This single commit includes: feature code + tests + .prizm-docs/ updates. Do NOT push.
18
+ This single commit includes: feature code + tests + .prizmkit/prizm-docs/ updates. Do NOT push.
19
19
  - MANDATORY: commit must be done via `/prizmkit-committer` skill. Do NOT run manual `git add`/`git commit` as a substitute.
20
20
  - Do NOT run `update-feature-status.py` here — the pipeline runner handles feature-list.json updates automatically after session exit.
21
21
 
@@ -10,7 +10,7 @@
10
10
  |------|-----------|----------------|
11
11
  | `<source-dir>/security/permission-guard.js` | Permission check integration | `checkCommandPermission(userId, cmd)` |
12
12
 
13
- ### Known TRAPS (from .prizm-docs/)
13
+ ### Known TRAPS (from .prizmkit/prizm-docs/)
14
14
  - <trap entries extracted from L1/L2 docs>
15
15
 
16
16
 
@@ -5,7 +5,7 @@ ls .prizmkit/specs/{{FEATURE_SLUG}}/context-snapshot.md 2>/dev/null && echo "EXI
5
5
  ```
6
6
 
7
7
  If MISSING — build it now:
8
- 1. Read `.prizm-docs/root.prizm` and relevant L1/L2 prizm docs
8
+ 1. Read `.prizmkit/prizm-docs/root.prizm` and relevant L1/L2 prizm docs
9
9
  2. Detect source code directories: read KEY_FILES and STRUCTURE sections from `root.prizm` to identify where source code lives (e.g. `src/`, `app/`, `lib/`, `cmd/`, `packages/`, or project root). If `root.prizm` is missing, scan the project tree:
10
10
  ```bash
11
11
  find . -maxdepth 2 -type f \( -name "*.js" -o -name "*.ts" -o -name "*.py" -o -name "*.go" -o -name "*.java" -o -name "*.rb" -o -name "*.rs" \) -not -path '*/node_modules/*' -not -path '*/.git/*' -not -path '*/dist/*' -not -path '*/build/*' -not -path '*/vendor/*' | head -30
@@ -11,7 +11,7 @@ ls .prizmkit/specs/{{FEATURE_SLUG}}/ 2>/dev/null
11
11
 
12
12
  **Step A — Build Context Snapshot** (skip if `context-snapshot.md` already exists):
13
13
 
14
- 1. Read `.prizm-docs/root.prizm` and relevant L1/L2 prizm docs
14
+ 1. Read `.prizmkit/prizm-docs/root.prizm` and relevant L1/L2 prizm docs
15
15
  2. Detect source code directories: read KEY_FILES and STRUCTURE sections from `root.prizm` to identify where source code lives (e.g. `src/`, `app/`, `lib/`, `cmd/`, `packages/`, or project root). If `root.prizm` is missing, scan the project tree:
16
16
  ```bash
17
17
  find . -maxdepth 2 -type f \( -name "*.js" -o -name "*.ts" -o -name "*.py" -o -name "*.go" -o -name "*.java" -o -name "*.rb" -o -name "*.rs" \) -not -path '*/node_modules/*' -not -path '*/.git/*' -not -path '*/dist/*' -not -path '*/build/*' -not -path '*/vendor/*' | head -30
@@ -36,7 +36,7 @@ ls .prizmkit/specs/{{FEATURE_SLUG}}/ 2>/dev/null
36
36
  |------|-----------|----------------|
37
37
  | `<source-dir>/security/permission-guard.js` | Permission check integration | `checkCommandPermission(userId, cmd)` |
38
38
 
39
- ### Known TRAPS (from .prizm-docs/)
39
+ ### Known TRAPS (from .prizmkit/prizm-docs/)
40
40
  - <trap entries extracted from L1/L2 docs>
41
41
  - **Section 5 — Existing Tests**: full content of related test files as code blocks
42
42
  5. Confirm: `ls .prizmkit/specs/{{FEATURE_SLUG}}/context-snapshot.md`
@@ -1,7 +1,7 @@
1
1
  ### Phase 0: Project Bootstrap
2
2
  - Run `/prizmkit-init` (invoke the prizmkit-init skill)
3
3
  - Run `python3 {{INIT_SCRIPT_PATH}} --project-root {{PROJECT_ROOT}} --feature-id {{FEATURE_ID}} --feature-slug {{FEATURE_SLUG}}`
4
- - **CP-0**: Verify `.prizm-docs/root.prizm`, `.prizmkit/config.json` exist
4
+ - **CP-0**: Verify `.prizmkit/prizm-docs/root.prizm`, `.prizmkit/config.json` exist
5
5
 
6
6
 
7
7
  **Checkpoint update**: Update `workflow-checkpoint.json` — set step `prizmkit-init` to `"completed"`.
@@ -0,0 +1,100 @@
1
+ #!/usr/bin/env bash
2
+ # Test path resolution in lib/common.sh across:
3
+ # 1. Framework repo-source layout (<repo>/dev-pipeline/lib/common.sh)
4
+ # 2. User-install layout (<proj>/.prizmkit/dev-pipeline/lib/common.sh)
5
+ # 3. Caller pre-set override (test mocks PRIZMKIT_DIR / PROJECT_ROOT)
6
+ #
7
+ # Run: bash dev-pipeline/tests/test-path-resolution.sh
8
+ set -euo pipefail
9
+
10
+ SCRIPT_DIR="$(cd "$(dirname "$0")" && pwd)"
11
+ REPO_ROOT="$(cd "$SCRIPT_DIR/../.." && pwd)"
12
+ COMMON_SH="$REPO_ROOT/dev-pipeline/lib/common.sh"
13
+
14
+ RED='\033[0;31m'
15
+ GREEN='\033[0;32m'
16
+ NC='\033[0m'
17
+
18
+ PASS=0
19
+ FAIL=0
20
+
21
+ pass() { echo -e " ${GREEN}PASS${NC} $1"; PASS=$((PASS + 1)); }
22
+ fail() { echo -e " ${RED}FAIL${NC} $1 — $2"; FAIL=$((FAIL + 1)); }
23
+
24
+ # Helper: source common.sh in a clean subshell with given env, echo the three
25
+ # resolved paths as PIPELINE_DIR|PRIZMKIT_DIR|PROJECT_ROOT.
26
+ resolve() {
27
+ env -i HOME="$HOME" PATH="$PATH" "$@" bash -c "
28
+ source '$COMMON_SH' >/dev/null 2>&1
29
+ printf '%s|%s|%s\n' \"\$PIPELINE_DIR\" \"\$PRIZMKIT_DIR\" \"\$PROJECT_ROOT\"
30
+ "
31
+ }
32
+
33
+ echo "================================="
34
+ echo " Path Resolution Tests"
35
+ echo "================================="
36
+
37
+ # --- Test 1: Framework repo-source layout ---
38
+ # common.sh located at <repo>/dev-pipeline/lib/common.sh.
39
+ # PIPELINE_DIR -> <repo>/dev-pipeline
40
+ # PRIZMKIT_DIR -> <repo>/.prizmkit
41
+ # PROJECT_ROOT -> <repo>
42
+ echo "[Test 1] Repo-source layout"
43
+ result=$(resolve)
44
+ IFS='|' read -r pipeline prizmkit project <<<"$result"
45
+ [[ "$pipeline" == "$REPO_ROOT/dev-pipeline" ]] \
46
+ && pass "PIPELINE_DIR=$pipeline" \
47
+ || fail "PIPELINE_DIR" "got: $pipeline"
48
+ [[ "$prizmkit" == "$REPO_ROOT/.prizmkit" ]] \
49
+ && pass "PRIZMKIT_DIR=$prizmkit" \
50
+ || fail "PRIZMKIT_DIR" "got: $prizmkit"
51
+ [[ "$project" == "$REPO_ROOT" ]] \
52
+ && pass "PROJECT_ROOT=$project" \
53
+ || fail "PROJECT_ROOT" "got: $project"
54
+
55
+ # --- Test 2: User-install layout (.prizmkit/dev-pipeline) ---
56
+ # Build a tmp dir resembling: <tmp>/proj/.prizmkit/dev-pipeline/lib/common.sh
57
+ TMP_INSTALL=$(mktemp -d)
58
+ trap 'rm -rf "$TMP_INSTALL"' EXIT
59
+ mkdir -p "$TMP_INSTALL/proj/.prizmkit/dev-pipeline/lib"
60
+ cp "$COMMON_SH" "$TMP_INSTALL/proj/.prizmkit/dev-pipeline/lib/common.sh"
61
+
62
+ echo "[Test 2] User-install layout"
63
+ result=$(env -i HOME="$HOME" PATH="$PATH" bash -c "
64
+ source '$TMP_INSTALL/proj/.prizmkit/dev-pipeline/lib/common.sh' >/dev/null 2>&1
65
+ printf '%s|%s|%s\n' \"\$PIPELINE_DIR\" \"\$PRIZMKIT_DIR\" \"\$PROJECT_ROOT\"
66
+ ")
67
+ IFS='|' read -r pipeline prizmkit project <<<"$result"
68
+ [[ "$pipeline" == "$TMP_INSTALL/proj/.prizmkit/dev-pipeline" ]] \
69
+ && pass "PIPELINE_DIR=$pipeline" \
70
+ || fail "PIPELINE_DIR" "got: $pipeline"
71
+ [[ "$prizmkit" == "$TMP_INSTALL/proj/.prizmkit" ]] \
72
+ && pass "PRIZMKIT_DIR=$prizmkit" \
73
+ || fail "PRIZMKIT_DIR" "got: $prizmkit"
74
+ [[ "$project" == "$TMP_INSTALL/proj" ]] \
75
+ && pass "PROJECT_ROOT=$project" \
76
+ || fail "PROJECT_ROOT" "got: $project"
77
+
78
+ # --- Test 3: Caller pre-set override (test mocking) ---
79
+ echo "[Test 3] Caller-supplied env vars override detection"
80
+ result=$(resolve \
81
+ PIPELINE_DIR=/mock/pipeline \
82
+ PRIZMKIT_DIR=/mock/.prizmkit \
83
+ PROJECT_ROOT=/mock/proj)
84
+ IFS='|' read -r pipeline prizmkit project <<<"$result"
85
+ [[ "$pipeline" == "/mock/pipeline" ]] \
86
+ && pass "PIPELINE_DIR honored override" \
87
+ || fail "PIPELINE_DIR override" "got: $pipeline"
88
+ [[ "$prizmkit" == "/mock/.prizmkit" ]] \
89
+ && pass "PRIZMKIT_DIR honored override" \
90
+ || fail "PRIZMKIT_DIR override" "got: $prizmkit"
91
+ [[ "$project" == "/mock/proj" ]] \
92
+ && pass "PROJECT_ROOT honored override" \
93
+ || fail "PROJECT_ROOT override" "got: $project"
94
+
95
+ echo ""
96
+ echo "================================="
97
+ echo " Results: $PASS passed, $FAIL failed"
98
+ echo "================================="
99
+
100
+ [[ $FAIL -eq 0 ]] || exit 1
@@ -19,9 +19,9 @@ core/rules/
19
19
 
20
20
  | File | Description |
21
21
  |------|-------------|
22
- | `prizm-documentation.md` | Sync `.prizm-docs/` when modifying source files |
22
+ | `prizm-documentation.md` | Sync `.prizmkit/prizm-docs/` when modifying source files |
23
23
  | `prizm-commit-workflow.md` | Update docs before commit, follow Conventional Commits |
24
- | `prizm-progressive-loading.md` | Load `.prizm-docs/` progressively on demand, never load all at once |
24
+ | `prizm-progressive-loading.md` | Load `.prizmkit/prizm-docs/` progressively on demand, never load all at once |
25
25
 
26
26
  ### General Rules (`general/`)
27
27
 
@@ -10,7 +10,7 @@
10
10
  "tags": ["prizm", "git"]
11
11
  },
12
12
  "prizm/prizm-progressive-loading": {
13
- "description": "Progressive .prizm-docs context loading protocol",
13
+ "description": "Progressive .prizmkit/prizm-docs context loading protocol",
14
14
  "tags": ["prizm", "context"]
15
15
  },
16
16
  "general/prefer-linux-commands": {
@@ -3,7 +3,7 @@ description: "PrizmKit commit workflow rules"
3
3
  ---
4
4
 
5
5
  Before any git commit in this project:
6
- 1. Run `/prizmkit-retrospective` to sync `.prizm-docs/` (architecture index with TRAPS/RULES/DECISIONS)
6
+ 1. Run `/prizmkit-retrospective` to sync `.prizmkit/prizm-docs/` (architecture index with TRAPS/RULES/DECISIONS)
7
7
  2. Use Conventional Commits format: type(scope): description
8
8
  3. Bug fixes use `fix()` prefix, not `feat()`
9
9
  4. Bug fixes run retrospective with structural sync only (Job 1)
@@ -1,5 +1,5 @@
1
1
  ---
2
- description: "PrizmKit .prizm-docs maintenance rules — when/how to update structured AI documentation"
2
+ description: "PrizmKit .prizmkit/prizm-docs maintenance rules — when/how to update structured AI documentation"
3
3
  globs:
4
4
  - "**/*.ts"
5
5
  - "**/*.tsx"
@@ -11,11 +11,11 @@ globs:
11
11
  - "**/*.java"
12
12
  ---
13
13
 
14
- WHEN TO UPDATE .prizm-docs/:
15
- - Feature development (new interface, new module, new behavior) → UPDATE .prizm-docs/
14
+ WHEN TO UPDATE .prizmkit/prizm-docs/:
15
+ - Feature development (new interface, new module, new behavior) → UPDATE .prizmkit/prizm-docs/
16
16
  - Bug fix (fixing broken logic, no structural change) → SKIP, do NOT update
17
17
  - Rationale: bugs are incomplete features. Recording bug details causes doc bloat with no AI value.
18
- - Before modifying any source file, read `.prizm-docs/root.prizm` if it exists to understand project structure.
18
+ - Before modifying any source file, read `.prizmkit/prizm-docs/root.prizm` if it exists to understand project structure.
19
19
 
20
20
  FORMAT RULES (enforced by pre-commit hook — violations block commit):
21
21
  - ALL CAPS section headers: MODULE:, FILES:, RESPONSIBILITY:, etc.
@@ -3,10 +3,10 @@ description: "PrizmKit progressive context loading protocol"
3
3
  ---
4
4
 
5
5
  This project uses PrizmKit's progressive loading protocol:
6
- - ON SESSION START: Read `.prizm-docs/root.prizm` (L0 — project map)
6
+ - ON SESSION START: Read `.prizmkit/prizm-docs/root.prizm` (L0 — project map)
7
7
  - 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
8
- - ON TASK: Read L1 (`.prizm-docs/<module>.prizm`) for relevant modules. If MODULE_INDEX entries have keyword tags (e.g., `[login, jwt, oauth]`), match user's task description against tags to prioritize which modules' L1 to load first. If root.prizm uses MODULE_GROUPS, identify the relevant domain first, then load L1 only for modules in that domain.
9
- - ON FILE EDIT: Read L2 (`.prizm-docs/<module>/<submodule>.prizm`) before modifying
8
+ - ON TASK: Read L1 (`.prizmkit/prizm-docs/<module>.prizm`) for relevant modules. If MODULE_INDEX entries have keyword tags (e.g., `[login, jwt, oauth]`), match user's task description against tags to prioritize which modules' L1 to load first. If root.prizm uses MODULE_GROUPS, identify the relevant domain first, then load L1 only for modules in that domain.
9
+ - ON FILE EDIT: Read L2 (`.prizmkit/prizm-docs/<module>/<submodule>.prizm`) before modifying
10
10
  - NEVER load all .prizm docs at once
11
11
  - Arrow notation (->) in .prizm files indicates load pointers
12
12
  - DECISIONS and CHANGELOG in .prizm files are append-only
@@ -1,5 +1,5 @@
1
1
  {
2
- "version": "1.1.42",
2
+ "version": "1.1.47",
3
3
  "skills": {
4
4
  "prizm-kit": {
5
5
  "description": "Full-lifecycle dev toolkit. Covers spec-driven development, Prizm context docs, code quality, debugging, deployment, and knowledge management.",
@@ -37,14 +37,14 @@
37
37
  "hasScripts": false
38
38
  },
39
39
  "prizmkit-committer": {
40
- "description": "Pure git commit workflow with safety checks. Does NOT modify .prizm-docs/.",
40
+ "description": "Pure git commit workflow with safety checks. Does NOT modify .prizmkit/prizm-docs/.",
41
41
  "tier": "1",
42
42
  "category": "prizmkit-skill",
43
43
  "hasAssets": false,
44
44
  "hasScripts": false
45
45
  },
46
46
  "prizmkit-retrospective": {
47
- "description": "Sole .prizm-docs/ maintainer. Structural sync + TRAPS/RULES/DECISIONS injection to architecture index. Run after code review passes, before committing.",
47
+ "description": "Sole .prizmkit/prizm-docs/ maintainer. Structural sync + TRAPS/RULES/DECISIONS injection to architecture index. Run after code review passes, before committing.",
48
48
  "tier": "1",
49
49
  "category": "prizmkit-skill",
50
50
  "hasAssets": true,
@@ -180,7 +180,7 @@
180
180
  ]
181
181
  },
182
182
  "minimal": {
183
- "description": "Minimal closed-loop workflow: full spec-driven cycle with .prizm-docs/ architecture sync and code review",
183
+ "description": "Minimal closed-loop workflow: full spec-driven cycle with .prizmkit/prizm-docs/ architecture sync and code review",
184
184
  "skills": [
185
185
  "prizm-kit",
186
186
  "prizmkit-init",
@@ -36,7 +36,7 @@ If you believe the task is better suited for a different workflow, you MUST:
36
36
  **Your ONLY writable outputs are:**
37
37
  1. `.prizmkit/plans/project-brief.md` (`.prizmkit/plans/` — accumulated project context brief)
38
38
  2. Project conventions and architecture decisions appended to `CLAUDE.md` / `CODEBUDDY.md` (with user consent)
39
- 3. Infrastructure configuration (database conventions + deployment config) appended to `CLAUDE.md` / `CODEBUDDY.md` `### Infrastructure` section
39
+ 3. Infrastructure configuration (database conventions, deployment config, **cloud services**) appended to `CLAUDE.md` / `CODEBUDDY.md` `### Infrastructure` section
40
40
 
41
41
  **After planning is complete**, you MUST:
42
42
  1. Present the summary of captured project-level context (vision, conventions, architecture decisions, project brief)
@@ -171,6 +171,27 @@ Do NOT use this skill when:
171
171
 
172
172
  Use `AskUserQuestion` for each batch. Each question MUST include a "Skip — decide later" option.
173
173
 
174
+ **Cloud Services Deep Inquiry** (Two-round AskUserQuestion):
175
+
176
+ Many projects depend on third-party cloud services (object storage, CDN, managed DB, auth, domain, email, SMS, payment, AI APIs). Capture them now so feature-planner and prizmkit-deploy can reference them later.
177
+
178
+ *Round 1 — Cloud Vendors* (multi-select via `AskUserQuestion`):
179
+ - "Which cloud vendors will this project integrate with?"
180
+ - Options: `AWS`, `Aliyun`, `Tencent Cloud`, `Cloudflare`, `Vercel`, `Other` (free text), `None — skip`
181
+ - If `None — skip`, write `<!-- cloud-services: none -->` to the `#### Cloud Services` subsection and exit this inquiry.
182
+
183
+ *Round 2 — Service Types* (multi-select, only if Round 1 returned any vendor):
184
+ - "Which types of cloud services will you use?"
185
+ - Options: `Object Storage (COS/S3/OSS)`, `CDN`, `Managed Database`, `Functions/Serverless`, `Auth (OAuth/JWT/IDaaS)`, `Domain & DNS`, `Email`, `SMS`, `Payment`, `AI API (OpenAI/Anthropic/...)`, `Other`
186
+ - The list is multi-select. Skip the question entirely if user picks "None" in Round 1.
187
+
188
+ *After both rounds, write to `#### Cloud Services`*:
189
+ - For each chosen (vendor × service) pair, append a row to the subsection (see template below)
190
+ - **Do NOT** prompt for env var names, credentials, region, or SDK details — those belong to `prizmkit-deploy`'s scope, not planning
191
+ - If the user is unsure of the mapping, store the vendors and service types separately; deploy skill can refine later
192
+
193
+ Use `AskUserQuestion` for both rounds. Each question MUST include a "Skip — decide later" option.
194
+
174
195
  **After infrastructure inquiry**:
175
196
  - Update `CLAUDE.md` / `CODEBUDDY.md` `### Infrastructure` section with all collected information. Replace `<!-- deferred -->` markers with real values. Preserve any existing values that were confirmed unchanged. Full format:
176
197
  ```markdown
@@ -197,6 +218,13 @@ Do NOT use this skill when:
197
218
 
198
219
  #### Deployment Credentials Reference
199
220
  - [platform]: [token/auth method description]
221
+
222
+ #### Cloud Services
223
+ - **Vendors**: [comma-separated list, e.g., "AWS, Cloudflare" or "none"]
224
+ - **Services**:
225
+ - [vendor]: [service type] — [optional one-line note, e.g., "user-upload images"]
226
+ - [vendor]: [service type]
227
+ <!-- If user picked "None" in Round 1, replace this block with: cloud-services: none -->
200
228
  ```
201
229
  - Items still marked "Skip — decide later" remain as `<!-- [topic]: deferred -->` in CLAUDE.md for `prizmkit-deploy` to pick up later.
202
230
 
@@ -207,7 +235,7 @@ Do NOT use this skill when:
207
235
  ## Prerequisites
208
236
 
209
237
  Before questions, check optional context files (never block if absent):
210
- - `.prizm-docs/root.prizm` (architecture/project context)
238
+ - `.prizmkit/prizm-docs/root.prizm` (architecture/project context)
211
239
  - `.prizmkit/config.json` (existing stack preferences and detected tech stack)
212
240
  - `CLAUDE.md` / `CODEBUDDY.md` `### Project Conventions` section (previously answered project conventions)
213
241
  - `CLAUDE.md` / `CODEBUDDY.md` `### Infrastructure` section (database and deployment config from prizmkit-init or previous app-planner run)
@@ -221,7 +249,7 @@ Before questions, check optional context files (never block if absent):
221
249
  Note:
222
250
  - This skill **reads** `.prizmkit/config.json` if present.
223
251
  - This skill does **not** create `.prizmkit/config.json` directly.
224
- - Creation/update is handled by bootstrap/init flows (e.g., `prizmkit-init`, `dev-pipeline/scripts/init-dev-team.py`).
252
+ - Creation/update is handled by bootstrap/init flows (e.g., `prizmkit-init`, `.prizmkit/dev-pipeline/scripts/init-dev-team.py`).
225
253
 
226
254
  ## Interaction Style (Hard Rule)
227
255
 
@@ -306,7 +334,7 @@ Before ANY planning work, check if AI-essential project context files exist:
306
334
 
307
335
  | File | Purpose | Status |
308
336
  |------|---------|--------|
309
- | `.prizm-docs/root.prizm` | Project architecture context for AI | exists / missing |
337
+ | `.prizmkit/prizm-docs/root.prizm` | Project architecture context for AI | exists / missing |
310
338
  | `.prizmkit/config.json` | Tech stack + runtime config | exists / missing |
311
339
  | `.prizmkit/plans/project-brief.md` | Product vision checklist | exists / missing |
312
340
 
@@ -336,7 +364,7 @@ Do NOT ask the user to describe their project — read it yourself first:
336
364
  - `go.mod` → Go module info
337
365
  - `README.md` → project description and goals
338
366
  - `.prizmkit/config.json` → previously detected tech stack
339
- - `.prizm-docs/root.prizm` → existing architecture context
367
+ - `.prizmkit/prizm-docs/root.prizm` → existing architecture context
340
368
 
341
369
  3. **Read key source files** (entry points, main routes, core models) to understand what the project actually does — don't rely solely on metadata.
342
370
 
@@ -392,7 +420,7 @@ Checkpoints catch cascading errors early — skipping one means the next phase b
392
420
  |-----------|----------------|----------|-------|
393
421
  | **CP-AP-0** | Intent Confirmed | User confirmed session goal (produce / explore) | 1 |
394
422
  | **CP-AP-1** | Conventions Checked | Project conventions loaded or asked; `### Project Conventions` section in `CLAUDE.md` / `CODEBUDDY.md` up to date | 1 |
395
- | **CP-AP-1.5** | Infrastructure Checked | Infrastructure config loaded or asked; `### Infrastructure` section in `CLAUDE.md` / `CODEBUDDY.md` addressed — configured or explicitly deferred | 1-2 |
423
+ | **CP-AP-1.5** | Infrastructure Checked | Infrastructure config loaded or asked; `### Infrastructure` section in `CLAUDE.md` / `CODEBUDDY.md` addressed — database, deployment **and cloud services** each configured or explicitly deferred | 1-2 |
396
424
  | **CP-AP-2** | Vision Summary | Goal/users/differentiators confirmed by user. For brownfield: existing purpose confirmed or refined. | 1-2 |
397
425
  | **CP-AP-3** | Frontend Design Evaluated | For frontend projects: checked for existing UI/UX design system; user was asked if missing. **Auto-pass** for backend-only or non-UI projects. | 2 |
398
426
  | **CP-AP-4** | Project Brief Accumulated | `.prizmkit/plans/project-brief.md` exists at `.prizmkit/plans/` with at least 3 ideas listed. For brownfield: already-implemented items marked `[x]` count toward this total. | 3 |
@@ -405,7 +433,7 @@ After Phase 2, if framework-shaping architecture decisions emerged during planni
405
433
  **How it works**:
406
434
  1. If decisions are captured → append to `CLAUDE.md` / `CODEBUDDY.md` under `### Architecture Decisions` section
407
435
  2. Downstream skills (feature-planner, prizmkit-plan, etc.) read `CLAUDE.md` / `CODEBUDDY.md` as standard context, so they automatically receive these decisions
408
- 3. Do NOT write directly to `.prizm-docs/root.prizm` — that file is maintained by `prizmkit-prizm-docs` and `prizmkit-retrospective`. If the project needs `.prizm-docs/`, recommend the user run `prizmkit-prizm-docs` init after planning.
436
+ 3. Do NOT write directly to `.prizmkit/prizm-docs/root.prizm` — that file is maintained by `prizmkit-prizm-docs` and `prizmkit-retrospective`. If the project needs `.prizmkit/prizm-docs/`, recommend the user run `prizmkit-prizm-docs` init after planning.
409
437
 
410
438
  ## Project Brief Accumulation
411
439
 
@@ -212,11 +212,11 @@ AskUserQuestion:
212
212
 
213
213
  **Goal**: Locate affected code, identify root cause, classify severity.
214
214
 
215
- > **Triage**: Classify error into: Runtime / Network / Auth / Data / Resource / Logic / Config / External. Check `.prizm-docs/` TRAPS for known patterns first. If a TRAPS match is found, use documented solution and reference the specific `.prizm-docs/` entry. If no match, trace the call chain from the stack frame to identify root cause from first principles.
215
+ > **Triage**: Classify error into: Runtime / Network / Auth / Data / Resource / Logic / Config / External. Check `.prizmkit/prizm-docs/` TRAPS for known patterns first. If a TRAPS match is found, use documented solution and reference the specific `.prizmkit/prizm-docs/` entry. If no match, trace the call chain from the stack frame to identify root cause from first principles.
216
216
 
217
- 1. **Read project context**: `.prizm-docs/root.prizm` → relevant L1/L2 docs for affected modules
217
+ 1. **Read project context**: `.prizmkit/prizm-docs/root.prizm` → relevant L1/L2 docs for affected modules
218
218
  2. **Locate affected code**: read the files mentioned in the error/stack trace or identified during diagnosis
219
- 3. **Check known issues**: search `.prizm-docs/` TRAPS sections for matching patterns
219
+ 3. **Check known issues**: search `.prizmkit/prizm-docs/` TRAPS sections for matching patterns
220
220
  4. **If database-related**: read existing schema/model files to understand the data layer
221
221
  ```bash
222
222
  find . -maxdepth 4 -type f \( -name "*.prisma" -o -name "*.sql" -o -path "*/migrations/*" -o -path "*/models/*" -o -name "schema.*" -o -name "*.entity.*" \) -not -path '*/node_modules/*' -not -path '*/.git/*' | head -20
@@ -259,7 +259,7 @@ If the bug is hard to reproduce automatically (e.g. environment-specific):
259
259
  1. **Implement the fix**:
260
260
  - Change the minimum amount of code to fix the root cause
261
261
  - Do NOT refactor or add unrelated improvements — fix the bug only
262
- - Follow existing code conventions (read from `.prizm-docs/` RULES/PATTERNS)
262
+ - Follow existing code conventions (read from `.prizmkit/prizm-docs/` RULES/PATTERNS)
263
263
  - If the fix involves database changes: read existing schema first, follow existing naming/constraint conventions
264
264
  2. **Run the reproduction test** → must **pass** (green)
265
265
  3. **Run the full module test suite** → must pass (no regressions)
@@ -316,7 +316,7 @@ If user reports the fix is NOT working:
316
316
  - Commit message: `fix(<scope>): <description>`
317
317
  - Include both fix code and reproduction test
318
318
  - Do NOT push (user decides when to push)
319
- - `/prizmkit-committer` is a pure commit tool — it does NOT modify `.prizm-docs/` or any project files
319
+ - `/prizmkit-committer` is a pure commit tool — it does NOT modify `.prizmkit/prizm-docs/` or any project files
320
320
  - No `/prizmkit-retrospective` — bug fixes are incomplete features, not new architecture worth documenting
321
321
  2. **Ask merge preference**:
322
322
  ```
@@ -392,7 +392,7 @@ Only 2 artifact files per bug, consistent with the pipeline convention.
392
392
  | Cannot reproduce the bug | Ask for more context, try alternative reproduction |
393
393
  | Fix causes regressions | Revert, analyze, retry (max 3 rounds) |
394
394
  | Root cause unclear after investigation | Present findings, ask user for guidance |
395
- | Affected files are in unfamiliar module | Read `.prizm-docs/` L1/L2 for that module first |
395
+ | Affected files are in unfamiliar module | Read `.prizmkit/prizm-docs/` L1/L2 for that module first |
396
396
  | Branch conflict during merge | Show conflict, ask user to resolve or keep branch |
397
397
 
398
398
  ## HANDOFF