prizmkit 1.0.119 → 1.0.121

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.
@@ -1,5 +1,5 @@
1
1
  {
2
- "frameworkVersion": "1.0.119",
3
- "bundledAt": "2026-03-27T15:01:36.094Z",
4
- "bundledFrom": "3b42eb5"
2
+ "frameworkVersion": "1.0.121",
3
+ "bundledAt": "2026-03-27T15:30:11.092Z",
4
+ "bundledFrom": "c47b687"
5
5
  }
@@ -129,6 +129,14 @@ ls .prizmkit/specs/{{FEATURE_SLUG}}/plan.md 2>/dev/null
129
129
 
130
130
  If either missing, write them yourself:
131
131
  - `plan.md`: architecture — components, interfaces, data flow, files to create/modify, testing approach, and a Tasks section with `[ ]` checkboxes ordered by dependency
132
+
133
+ **Database Design Gate** (if feature involves data persistence — new tables, schema changes, new entities):
134
+ Before proceeding past CP-1, verify:
135
+ 1. Plan.md Data Model section references existing schema/model files (scan for `*.prisma`, `*.sql`, `migrations/`, `models/`, `*.entity.*` files; read them if not already in context-snapshot)
136
+ 2. All new tables/fields follow existing naming conventions, ID strategy, timestamp patterns, and constraint style
137
+ 3. No `[NEEDS CLARIFICATION]` remains in Data Model section — resolve by reading existing code and making a conservative choice that matches existing patterns. Document the resolution in plan.md.
138
+ 4. If a DB design decision genuinely cannot be resolved from existing code alone, document the assumption made and flag it in the Implementation Log for user review.
139
+
132
140
  **CP-1**: plan.md exists with Tasks section.
133
141
 
134
142
  ### Phase 3: Implement — Dev Subagent
@@ -1,5 +1,5 @@
1
1
  {
2
- "version": "1.0.119",
2
+ "version": "1.0.121",
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.",
@@ -11,6 +11,26 @@ Plan deliverable features for dev-pipeline in two modes:
11
11
 
12
12
  Always produce a validated `feature-list.json` that conforms to `dev-pipeline-feature-list`.
13
13
 
14
+ ## Scope Boundary (Hard Rule)
15
+
16
+ **This skill is PLANNING ONLY.** You must NEVER:
17
+ - Create, modify, or delete source code files (*.js, *.ts, *.py, *.go, *.html, *.css, etc.)
18
+ - Create project scaffolding, directories, or boilerplate
19
+ - Run build/install/test commands (npm init, pip install, etc.)
20
+ - Execute any implementation action beyond writing `feature-list.json`
21
+
22
+ **Your ONLY writable outputs are:**
23
+ 1. `feature-list.json` (project root)
24
+ 2. Architecture decisions appended to `CLAUDE.md` / `CODEBUDDY.md` (with user consent, see §Architecture Decision Capture)
25
+ 3. Draft backups in `.prizmkit/planning/`
26
+
27
+ **After planning is complete**, you MUST:
28
+ 1. Present the summary and recommended next step
29
+ 2. **Ask the user explicitly** whether they want to proceed to execution
30
+ 3. If the user agrees → recommend invoking `dev-pipeline-launcher` or running `run.sh` (do NOT execute it yourself)
31
+ 4. If the user wants to adjust → continue refining `feature-list.json`
32
+ 5. **NEVER auto-execute** the pipeline, launcher, or any implementation step
33
+
14
34
  ## When to Use
15
35
 
16
36
  Trigger this skill for requests like:
@@ -22,6 +42,7 @@ Trigger this skill for requests like:
22
42
  Do NOT use this skill when:
23
43
  - user only wants to run pipeline now (invoke `dev-pipeline-launcher`)
24
44
  - user is debugging/refactoring unrelated to feature planning
45
+ - user wants to write or modify source code directly
25
46
 
26
47
  ## Resource Loading Rules (Mandatory)
27
48
 
@@ -107,6 +107,14 @@ Focus on high-signal findings. Limit to **50 findings total**; aggregate remaind
107
107
  - Task ordering contradictions (e.g., integration tasks before foundational setup without dependency note)
108
108
  - Conflicting requirements (e.g., one requires REST while other specifies GraphQL)
109
109
 
110
+ #### G. Database Design Consistency (when plan.md has Data Model section)
111
+ - New entity/field naming inconsistent with existing schema conventions documented in "Existing Schema Audit"
112
+ - Missing constraints (NOT NULL, UNIQUE, FK, INDEX) on fields where existing similar tables define them
113
+ - Unresolved `[NEEDS CLARIFICATION]` in Data Model section → **CRITICAL** (must be resolved before implementation)
114
+ - Style Conformance Checklist items unchecked → **HIGH** (design not verified against existing conventions)
115
+ - New tables with no foreign key relationship to any existing table (orphan table warning — may indicate missing business logic)
116
+ - Missing migration strategy for schema changes that affect existing data
117
+
110
118
  ### Step 5: Severity Assignment
111
119
 
112
120
  Use this heuristic to prioritize findings:
@@ -23,6 +23,7 @@ Interactive requirement clarification that resolves ambiguities in feature speci
23
23
  1. Read `spec.md` from `.prizmkit/specs/###-feature-name/`
24
24
  2. Scan for `[NEEDS CLARIFICATION]` markers and underspecified areas
25
25
  3. Categorize ambiguities by dimension and prioritize — address the ones that would most affect architecture and data model first, since those are hardest to change later:
26
+ - Data model (what entities, relationships, constraints?) — **highest priority when DB changes are involved**: field types, nullability, naming conventions, relationships, and constraint patterns must all be resolved before plan finalization. Unresolved DB design decisions during implementation lead to expensive rework.
26
27
  - Functional scope (what does it do?)
27
28
  - Data model (what entities, relationships?)
28
29
  - UX flow (what does the user see?)
@@ -46,6 +46,12 @@ Generate a comprehensive technical implementation plan from a feature specificat
46
46
  - Architecture approach (how feature fits into existing structure)
47
47
  - Component design (new/modified components)
48
48
  - Data model changes (new entities, modified schemas)
49
+ - **Database design gate** (when feature involves DB changes):
50
+ 1. Read ALL existing schema/migration/model files to understand current conventions (naming, constraints, relationships, ID strategy, timestamps)
51
+ 2. Ensure new schema follows existing patterns — do NOT introduce new conventions unless explicitly justified
52
+ 3. Verify every new table/field has: purpose, type, constraints, and relationship to existing entities
53
+ 4. If any data model decision is uncertain → mark as `[NEEDS CLARIFICATION]` and resolve via `/prizmkit-clarify` BEFORE generating the Tasks section
54
+ 5. **RULE**: The Tasks section MUST NOT be generated until all `[NEEDS CLARIFICATION]` items in Data Model are resolved. Unresolved DB design leads to implementation rework that is expensive to fix after code is written.
49
55
  - Interface design (API endpoints, request/response formats, module interfaces)
50
56
  - Integration points (external services, internal modules)
51
57
  - Testing strategy (unit, integration, e2e)
@@ -12,7 +12,34 @@
12
12
  - [Component]: [What changes and why]
13
13
 
14
14
  ## Data Model
15
- [Entity definitions, schemas, and relationships include all details here]
15
+ <!-- Skip this section if the feature does not involve database changes -->
16
+ <!-- IMPORTANT: Read existing schema/model files BEFORE designing new tables -->
17
+
18
+ ### Existing Schema Audit
19
+ <!-- List existing tables/models reviewed. Note observed conventions. -->
20
+ - Tables reviewed: [list tables examined]
21
+ - Naming convention: [snake_case/camelCase — document what existing schema uses]
22
+ - ID strategy: [UUID/auto-increment/CUID — match existing]
23
+ - Timestamp fields: [created_at/updated_at pattern — match existing]
24
+ - Soft delete: [yes/no, field name if applicable]
25
+ - Constraint patterns: [NOT NULL defaults, UNIQUE patterns, index conventions]
26
+
27
+ ### Schema Changes
28
+ | Entity | Type | Fields | Constraints | Relationships | Migration Notes |
29
+ |--------|------|--------|-------------|---------------|-----------------|
30
+ | [name] | new/modify | [field: type, ...] | [NOT NULL, UNIQUE, INDEX, ...] | [FK → existing_table(id)] | [migration strategy] |
31
+
32
+ ### Style Conformance Checklist
33
+ - [ ] Table/column naming matches existing conventions
34
+ - [ ] ID strategy consistent with existing tables
35
+ - [ ] Timestamp fields follow existing patterns
36
+ - [ ] Foreign key constraints and indexes defined
37
+ - [ ] Soft delete strategy matches existing pattern (if applicable)
38
+ - [ ] All fields have explicit nullability (NOT NULL or nullable)
39
+
40
+ ### Unresolved Questions
41
+ <!-- NONE — all DB design questions must be resolved before proceeding to Tasks -->
42
+ <!-- If any remain, run /prizmkit-clarify to resolve them first -->
16
43
 
17
44
  ## Interface Design
18
45
  [API endpoints, request/response formats, module interfaces — include all details here]
@@ -32,7 +59,8 @@
32
59
 
33
60
  ## Pre-Implementation Gates
34
61
  - [ ] Spec coverage: all user stories mapped to components
35
- - [ ] Data model reviewed
62
+ - [ ] Data model reviewed — existing schema conventions documented and followed
63
+ - [ ] All Data Model `[NEEDS CLARIFICATION]` items resolved (mandatory for DB features)
36
64
  - [ ] API contracts defined
37
65
  - [ ] Testing approach agreed
38
66
 
@@ -39,11 +39,21 @@ Create structured feature specifications from natural language descriptions. Thi
39
39
  - Scope boundaries (In scope / Out of scope)
40
40
  - Dependencies and constraints
41
41
  - `[NEEDS CLARIFICATION]` markers for ambiguous items (max 3)
42
- 7. Run internal quality validation loop (max 3 iterations):
42
+ 7. **Database design detection**: If the feature involves data persistence (new entities, new fields, schema changes), add a `## Data Model` section to spec.md (see template):
43
+ - Scan for existing database schema files to understand current conventions:
44
+ ```bash
45
+ 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/*' -not -path '*/dist/*' -not -path '*/__pycache__/*' | head -20
46
+ ```
47
+ - Read existing schema/model files to extract conventions: naming style (snake_case vs camelCase), ID strategy (UUID vs auto-increment), timestamp patterns, soft-delete approach, constraint patterns, relationship patterns
48
+ - Document in spec.md Data Model section: existing schema reference, new entities needed, relationships to existing tables
49
+ - Mark uncertain fields or relationships with `[NEEDS CLARIFICATION]` — these MUST be resolved before planning
50
+ - **RULE**: Never design new tables in isolation — always reference existing schema to maintain style consistency
51
+ 8. Run internal quality validation loop (max 3 iterations):
43
52
  - Check: All user stories have acceptance criteria?
44
53
  - Check: Scope boundaries clearly defined?
45
54
  - Check: No more than 3 `[NEEDS CLARIFICATION]` markers?
46
- 8. Output: `spec.md` path and summary
55
+ - Check: If Data Model section exists, are existing schema conventions documented?
56
+ 9. Output: `spec.md` path and summary
47
57
 
48
58
  ## Writing Principles
49
59
 
@@ -24,6 +24,25 @@
24
24
  ## Dependencies
25
25
  - [Dependency 1]: [Why needed]
26
26
 
27
+ ## Data Model (if feature involves database changes)
28
+
29
+ ### Existing Schema Reference
30
+ <!-- Read existing schema/model files BEFORE designing new tables. Document observed conventions here. -->
31
+ - Tables reviewed: [list existing tables related to this feature]
32
+ - Naming convention: [snake_case/camelCase — match existing]
33
+ - ID strategy: [UUID/auto-increment — match existing]
34
+ - Timestamp pattern: [created_at/updated_at — match existing]
35
+ - Soft delete: [yes/no, field name — match existing]
36
+
37
+ ### New/Modified Entities
38
+ | Entity | Type (new/modify) | Key Fields | Relationships | Constraints |
39
+ |--------|-------------------|------------|---------------|-------------|
40
+ | [entity_name] | new | [field: type] | [FK to existing_table] | [NOT NULL, UNIQUE, etc.] |
41
+
42
+ ### Open Data Model Questions
43
+ <!-- All questions here MUST be resolved before /prizmkit-plan generates Tasks -->
44
+ - [NEEDS CLARIFICATION] [Any uncertain data model decisions — field types, nullability, relationships]
45
+
27
46
  ## Constraints
28
47
  - [Constraint 1]
29
48
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "prizmkit",
3
- "version": "1.0.119",
3
+ "version": "1.0.121",
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": {
@@ -1,13 +0,0 @@
1
- # Retrospective: [FEATURE_NAME]
2
- Date: YYYY-MM-DD
3
-
4
- ## Knowledge Captured
5
- - TRAPS added: N (list affected modules)
6
- - RULES added: N (list affected modules)
7
- - DECISIONS recorded: N (list affected modules)
8
-
9
- ## Key Insights
10
- - [insight]: [why it matters for future work]
11
-
12
- ## .prizm-docs/ Updates
13
- - [file]: [what was updated]