sdtk-kit 0.3.6 → 0.3.8

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (42) hide show
  1. package/README.md +10 -1
  2. package/assets/manifest/toolkit-bundle.manifest.json +116 -56
  3. package/assets/manifest/toolkit-bundle.sha256.txt +38 -26
  4. package/assets/toolkit/toolkit/AGENTS.md +31 -9
  5. package/assets/toolkit/toolkit/skills/sdtk-api-design-spec/SKILL.md +4 -0
  6. package/assets/toolkit/toolkit/skills/sdtk-api-design-spec/references/API_DESIGN_CREATION_RULES.md +7 -1
  7. package/assets/toolkit/toolkit/skills/sdtk-api-design-spec/references/API_DESIGN_FLOWCHART_CREATION_RULES.md +17 -0
  8. package/assets/toolkit/toolkit/skills/sdtk-api-doc/SKILL.md +4 -0
  9. package/assets/toolkit/toolkit/skills/sdtk-api-doc/references/API_DESIGN_FLOWCHART_CREATION_RULES.md +17 -0
  10. package/assets/toolkit/toolkit/skills/sdtk-arch/SKILL.md +34 -2
  11. package/assets/toolkit/toolkit/skills/sdtk-arch/references/API_DESIGN_CREATION_RULES.md +7 -1
  12. package/assets/toolkit/toolkit/skills/sdtk-arch/references/API_DESIGN_FLOWCHART_CREATION_RULES.md +17 -0
  13. package/assets/toolkit/toolkit/skills/sdtk-arch/references/FLOW_ACTION_SPEC_CREATION_RULES.md +56 -9
  14. package/assets/toolkit/toolkit/skills/sdtk-ba/SKILL.md +4 -0
  15. package/assets/toolkit/toolkit/skills/sdtk-design-layout/SKILL.md +20 -0
  16. package/assets/toolkit/toolkit/skills/sdtk-design-layout/scripts/render_design_layout_images.py +213 -0
  17. package/assets/toolkit/toolkit/skills/sdtk-dev/SKILL.md +75 -5
  18. package/assets/toolkit/toolkit/skills/sdtk-dev/prompts/code-quality-reviewer.md +35 -0
  19. package/assets/toolkit/toolkit/skills/sdtk-dev/prompts/implementer.md +61 -0
  20. package/assets/toolkit/toolkit/skills/sdtk-dev/prompts/spec-reviewer.md +42 -0
  21. package/assets/toolkit/toolkit/skills/sdtk-dev-backend/SKILL.md +4 -0
  22. package/assets/toolkit/toolkit/skills/sdtk-dev-frontend/SKILL.md +4 -0
  23. package/assets/toolkit/toolkit/skills/sdtk-orchestrator/SKILL.md +38 -2
  24. package/assets/toolkit/toolkit/skills/sdtk-pm/SKILL.md +4 -0
  25. package/assets/toolkit/toolkit/skills/sdtk-qa/SKILL.md +36 -6
  26. package/assets/toolkit/toolkit/skills/sdtk-screen-design-spec/SKILL.md +10 -3
  27. package/assets/toolkit/toolkit/skills/sdtk-screen-design-spec/references/FLOW_ACTION_SPEC_CREATION_RULES.md +56 -9
  28. package/assets/toolkit/toolkit/skills/sdtk-test-case-spec/SKILL.md +11 -0
  29. package/assets/toolkit/toolkit/skills/skills.catalog.yaml +302 -0
  30. package/assets/toolkit/toolkit/templates/docs/api/API_DESIGN_CREATION_RULES.md +7 -1
  31. package/assets/toolkit/toolkit/templates/docs/api/API_DESIGN_DETAIL_TEMPLATE.md +6 -0
  32. package/assets/toolkit/toolkit/templates/docs/api/API_DESIGN_FLOWCHART_CREATION_RULES.md +17 -0
  33. package/assets/toolkit/toolkit/templates/docs/specs/FLOW_ACTION_SPEC_CREATION_RULES.md +56 -9
  34. package/assets/toolkit/toolkit/templates/docs/specs/FLOW_ACTION_SPEC_TEMPLATE.md +14 -2
  35. package/assets/toolkit/toolkit/templates/handoffs/ARCH_TO_DEV.md +31 -0
  36. package/assets/toolkit/toolkit/templates/handoffs/BA_TO_ARCH.md +28 -0
  37. package/assets/toolkit/toolkit/templates/handoffs/DEV_STAGE1_SPEC_REVIEW.md +26 -0
  38. package/assets/toolkit/toolkit/templates/handoffs/DEV_STAGE2_CODE_QUALITY_REVIEW.md +20 -0
  39. package/assets/toolkit/toolkit/templates/handoffs/DEV_TO_QA.md +23 -0
  40. package/assets/toolkit/toolkit/templates/handoffs/PM_TO_BA.md +26 -0
  41. package/assets/toolkit/toolkit/templates/handoffs/QA_RELEASE_DECISION.md +21 -0
  42. package/package.json +1 -1
@@ -0,0 +1,302 @@
1
+ schema_version: 1
2
+ skills:
3
+ - name: sdtk-pm
4
+ phase: pm
5
+ role_tag: /pm
6
+ use_when: Start feature scope or produce PM planning artifacts before BA or ARCH handoff.
7
+ primary_inputs:
8
+ - source requirements
9
+ - docs/product/PROJECT_INITIATION_[FEATURE_KEY].md
10
+ - docs/specs/BA_SPEC_[FEATURE_KEY].md
11
+ primary_outputs:
12
+ - docs/product/PROJECT_INITIATION_[FEATURE_KEY].md
13
+ - docs/product/PRD_[FEATURE_KEY].md
14
+ - docs/product/BACKLOG_[FEATURE_KEY].md
15
+ hard_gates:
16
+ - Do not hand off without updating SHARED_PLANNING.md and QUALITY_CHECKLIST.md.
17
+ - Keep unresolved OQ items explicit instead of silently deciding for other roles.
18
+ references: []
19
+ prompts: []
20
+ scripts: []
21
+ runtime_support: [claude, codex]
22
+ dependencies: []
23
+ pack: core
24
+
25
+ - name: sdtk-ba
26
+ phase: ba
27
+ role_tag: /ba
28
+ use_when: Convert PM initiation into a BA spec with glossary, BR, UC, AC, NFR, and traceability.
29
+ primary_inputs:
30
+ - docs/product/PROJECT_INITIATION_[FEATURE_KEY].md
31
+ - source requirements
32
+ primary_outputs:
33
+ - docs/specs/BA_SPEC_[FEATURE_KEY].md
34
+ hard_gates:
35
+ - Do not close BA output without explicit REQ to UC or BR or AC traceability.
36
+ - Keep unresolved OQ items visible for PM resolution.
37
+ references: []
38
+ prompts: []
39
+ scripts: []
40
+ runtime_support: [claude, codex]
41
+ dependencies: [sdtk-pm]
42
+ pack: core
43
+
44
+ - name: sdtk-arch
45
+ phase: arch
46
+ role_tag: /arch
47
+ use_when: Convert BA spec and PM backlog into architecture, API, DB, and UI design artifacts.
48
+ primary_inputs:
49
+ - docs/specs/BA_SPEC_[FEATURE_KEY].md
50
+ - docs/product/PRD_[FEATURE_KEY].md
51
+ - docs/product/BACKLOG_[FEATURE_KEY].md
52
+ primary_outputs:
53
+ - docs/architecture/ARCH_DESIGN_[FEATURE_KEY].md
54
+ - docs/api/[FeaturePascal]_API.yaml
55
+ - docs/api/[FEATURE_KEY]_ENDPOINTS.md
56
+ - docs/api/[FEATURE_KEY]_API_DESIGN_DETAIL.md
57
+ - docs/database/DATABASE_SPEC_[FEATURE_KEY].md
58
+ - docs/design/DESIGN_LAYOUT_[FEATURE_KEY].md
59
+ - docs/specs/[FEATURE_KEY]_FLOW_ACTION_SPEC.md
60
+ hard_gates:
61
+ - For UI scope, DESIGN_LAYOUT must exist before FLOW_ACTION_SPEC.
62
+ - Keep API, DB, and screen outputs aligned to the same source requirements.
63
+ references:
64
+ - toolkit/skills/sdtk-arch/references/YAML_CREATION_RULES.md
65
+ - toolkit/skills/sdtk-arch/references/API_DESIGN_FLOWCHART_CREATION_RULES.md
66
+ - toolkit/skills/sdtk-arch/references/FLOW_ACTION_SPEC_CREATION_RULES.md
67
+ prompts: []
68
+ scripts: []
69
+ runtime_support: [claude, codex]
70
+ dependencies: [sdtk-pm, sdtk-ba]
71
+ pack: core
72
+
73
+ - name: sdtk-dev
74
+ phase: dev
75
+ role_tag: /dev
76
+ use_when: Implement a feature from approved architecture and backlog, then prepare QA handoff.
77
+ primary_inputs:
78
+ - docs/architecture/ARCH_DESIGN_[FEATURE_KEY].md
79
+ - docs/product/BACKLOG_[FEATURE_KEY].md
80
+ - docs/dev/FEATURE_IMPL_PLAN_[FEATURE_KEY].md
81
+ primary_outputs:
82
+ - docs/dev/FEATURE_IMPL_PLAN_[FEATURE_KEY].md
83
+ - code changes
84
+ - tests
85
+ hard_gates:
86
+ - Do not implement before the current FEATURE_IMPL_PLAN slice is approved.
87
+ - Run Stage 1 spec review before Stage 2 code-quality review.
88
+ references: []
89
+ prompts:
90
+ - toolkit/skills/sdtk-dev/prompts/implementer.md
91
+ - toolkit/skills/sdtk-dev/prompts/spec-reviewer.md
92
+ - toolkit/skills/sdtk-dev/prompts/code-quality-reviewer.md
93
+ scripts: []
94
+ runtime_support: [claude, codex]
95
+ dependencies: [sdtk-arch]
96
+ pack: core
97
+
98
+ - name: sdtk-qa
99
+ phase: qa
100
+ role_tag: /qa
101
+ use_when: Validate implementation against specs, run quality gates, and produce a release decision.
102
+ primary_inputs:
103
+ - docs/specs/BA_SPEC_[FEATURE_KEY].md
104
+ - docs/product/PRD_[FEATURE_KEY].md
105
+ - docs/product/BACKLOG_[FEATURE_KEY].md
106
+ - docs/dev/FEATURE_IMPL_PLAN_[FEATURE_KEY].md
107
+ primary_outputs:
108
+ - docs/qa/QA_RELEASE_REPORT_[FEATURE_KEY].md
109
+ - docs/qa/[FEATURE_KEY]_TEST_CASE.md
110
+ hard_gates:
111
+ - QA handoff is blocked until DEV Stage 1 and Stage 2 review gates PASS.
112
+ - Do not issue APPROVED without fresh verification evidence.
113
+ references: []
114
+ prompts: []
115
+ scripts: []
116
+ runtime_support: [claude, codex]
117
+ dependencies: [sdtk-dev]
118
+ pack: core
119
+
120
+ - name: sdtk-orchestrator
121
+ phase: orchestration
122
+ role_tag: /orchestrator
123
+ use_when: Coordinate the full six-phase workflow and keep phase handoffs in order.
124
+ primary_inputs:
125
+ - feature key
126
+ - feature name
127
+ - sdtk.config.json
128
+ - SHARED_PLANNING.md
129
+ - QUALITY_CHECKLIST.md
130
+ primary_outputs:
131
+ - phase handoffs
132
+ - updated SHARED_PLANNING.md
133
+ - updated QUALITY_CHECKLIST.md
134
+ hard_gates:
135
+ - Do not skip mandatory PM or BA or ARCH or DEV or QA phases.
136
+ - Do not hand off the next phase without evidence from the current phase.
137
+ references: []
138
+ prompts: []
139
+ scripts:
140
+ - toolkit/scripts/init-feature.ps1
141
+ runtime_support: [claude, codex]
142
+ dependencies: []
143
+ pack: core
144
+
145
+ - name: sdtk-dev-backend
146
+ phase: dev
147
+ role_tag: /dev-backend
148
+ use_when: Implement backend code that follows SDTK backend conventions for a scoped feature slice.
149
+ primary_inputs:
150
+ - docs/architecture/ARCH_DESIGN_[FEATURE_KEY].md
151
+ - docs/api/[FeaturePascal]_API.yaml
152
+ - docs/database/DATABASE_SPEC_[FEATURE_KEY].md
153
+ primary_outputs:
154
+ - backend code
155
+ - backend tests
156
+ hard_gates:
157
+ - Do not generate backend code without approved API and data-contract sources.
158
+ - Follow existing repository patterns before introducing new module structure.
159
+ references: []
160
+ prompts: []
161
+ scripts: []
162
+ runtime_support: [claude, codex]
163
+ dependencies: [sdtk-dev, sdtk-api-doc]
164
+ pack: core
165
+
166
+ - name: sdtk-dev-frontend
167
+ phase: dev
168
+ role_tag: /dev-frontend
169
+ use_when: Implement frontend code that follows SDTK frontend conventions for a scoped feature slice.
170
+ primary_inputs:
171
+ - docs/design/DESIGN_LAYOUT_[FEATURE_KEY].md
172
+ - docs/specs/[FEATURE_KEY]_FLOW_ACTION_SPEC.md
173
+ - docs/architecture/ARCH_DESIGN_[FEATURE_KEY].md
174
+ primary_outputs:
175
+ - frontend code
176
+ - frontend tests
177
+ hard_gates:
178
+ - Do not implement screens without the current design and flow-action source.
179
+ - Preserve existing frontend patterns before introducing new abstractions.
180
+ references: []
181
+ prompts: []
182
+ scripts: []
183
+ runtime_support: [claude, codex]
184
+ dependencies: [sdtk-dev, sdtk-design-layout, sdtk-screen-design-spec]
185
+ pack: core
186
+
187
+ - name: sdtk-api-doc
188
+ phase: arch
189
+ role_tag: /api-doc
190
+ use_when: Generate or update OpenAPI YAML, API endpoints markdown, and flow-list files from architecture scope.
191
+ primary_inputs:
192
+ - docs/specs/BA_SPEC_[FEATURE_KEY].md
193
+ - docs/architecture/ARCH_DESIGN_[FEATURE_KEY].md
194
+ primary_outputs:
195
+ - docs/api/[FeaturePascal]_API.yaml
196
+ - docs/api/[FEATURE_KEY]_ENDPOINTS.md
197
+ - docs/api/[feature_snake]_api_flow_list.txt
198
+ hard_gates:
199
+ - Do not invent API paths or schemas that contradict BA or ARCH source.
200
+ - Keep YAML, endpoint markdown, and flow list synchronized.
201
+ references:
202
+ - toolkit/skills/sdtk-api-doc/references/YAML_CREATION_RULES.md
203
+ - toolkit/skills/sdtk-api-doc/references/API_DESIGN_FLOWCHART_CREATION_RULES.md
204
+ prompts: []
205
+ scripts: []
206
+ runtime_support: [claude, codex]
207
+ dependencies: [sdtk-arch, sdtk-ba]
208
+ pack: core
209
+
210
+ - name: sdtk-api-design-spec
211
+ phase: arch
212
+ role_tag: /api-design-spec
213
+ use_when: Generate API design detail markdown from OpenAPI YAML and API flow list.
214
+ primary_inputs:
215
+ - docs/api/[FeaturePascal]_API.yaml
216
+ - docs/api/[feature_snake]_api_flow_list.txt
217
+ primary_outputs:
218
+ - docs/api/[FEATURE_KEY]_API_DESIGN_DETAIL.md
219
+ - docs/api/flows/*.puml
220
+ - docs/api/images/*.svg
221
+ hard_gates:
222
+ - Do not drift from the source YAML or flow list.
223
+ - Do not leave broken flow image embeds in the generated markdown.
224
+ references:
225
+ - toolkit/skills/sdtk-api-design-spec/references/API_DESIGN_FLOWCHART_CREATION_RULES.md
226
+ - toolkit/skills/sdtk-api-design-spec/references/API_DESIGN_CREATION_RULES.md
227
+ prompts: []
228
+ scripts:
229
+ - toolkit/skills/sdtk-api-design-spec/scripts/generate_api_design_detail.py
230
+ runtime_support: [claude, codex]
231
+ dependencies: [sdtk-api-doc]
232
+ pack: core
233
+
234
+ - name: sdtk-design-layout
235
+ phase: arch
236
+ role_tag: /design-layout
237
+ use_when: Generate design-layout docs with PlantUML salt wireframes and item tables for UI scope.
238
+ primary_inputs:
239
+ - docs/specs/BA_SPEC_[FEATURE_KEY].md
240
+ - docs/api/[FEATURE_KEY]_ENDPOINTS.md
241
+ primary_outputs:
242
+ - docs/design/DESIGN_LAYOUT_[FEATURE_KEY].md
243
+ - docs/specs/assets/<feature_snake>/screens/*.svg
244
+ hard_gates:
245
+ - Do not skip screen IDs or item numbering alignment with the wireframe.
246
+ - If rendering is unavailable, record that explicitly instead of pretending render assets exist.
247
+ references: []
248
+ prompts: []
249
+ scripts:
250
+ - toolkit/skills/sdtk-design-layout/scripts/render_design_layout_images.py
251
+ runtime_support: [claude, codex]
252
+ dependencies: [sdtk-arch, sdtk-ba]
253
+ pack: core
254
+
255
+ - name: sdtk-screen-design-spec
256
+ phase: arch
257
+ role_tag: /screen-design-spec
258
+ use_when: Build flow-action specs from requirement sources, design source references, and API mappings.
259
+ primary_inputs:
260
+ - docs/specs/BA_SPEC_[FEATURE_KEY].md
261
+ - docs/design/DESIGN_LAYOUT_[FEATURE_KEY].md
262
+ - docs/api/[FEATURE_KEY]_ENDPOINTS.md
263
+ primary_outputs:
264
+ - docs/specs/[FEATURE_KEY]_FLOW_ACTION_SPEC.md
265
+ - docs/specs/assets/<feature_snake>/screens/*
266
+ hard_gates:
267
+ - Do not finalize UI-scope screens without a valid design source type and reference.
268
+ - Do not leave broken image paths or missing API mappings in the spec.
269
+ references:
270
+ - toolkit/skills/sdtk-screen-design-spec/references/FLOW_ACTION_SPEC_CREATION_RULES.md
271
+ - toolkit/skills/sdtk-screen-design-spec/references/numbering-rules.md
272
+ - toolkit/skills/sdtk-screen-design-spec/references/figma-mcp.md
273
+ - toolkit/skills/sdtk-screen-design-spec/references/excel-image-export.md
274
+ prompts: []
275
+ scripts:
276
+ - toolkit/skills/sdtk-screen-design-spec/scripts/validate_flow_action_spec_numbering.py
277
+ - toolkit/skills/sdtk-screen-design-spec/scripts/renumber_flow_action_spec_global.py
278
+ runtime_support: [claude, codex]
279
+ dependencies: [sdtk-arch, sdtk-design-layout]
280
+ pack: core
281
+
282
+ - name: sdtk-test-case-spec
283
+ phase: qa
284
+ role_tag: /test-case-spec
285
+ use_when: Generate reusable screen-based test-case specifications before or during QA execution.
286
+ primary_inputs:
287
+ - docs/specs/[FEATURE_KEY]_FLOW_ACTION_SPEC.md
288
+ - docs/specs/BA_SPEC_[FEATURE_KEY].md
289
+ - docs/api/[FEATURE_KEY]_ENDPOINTS.md
290
+ primary_outputs:
291
+ - docs/qa/[FEATURE_KEY]_TEST_CASE.md
292
+ hard_gates:
293
+ - Do not invent test coverage that is not grounded in BA, flow-action, or API sources.
294
+ - Keep totals and structured coverage counts consistent with the QA baseline.
295
+ references:
296
+ - toolkit/skills/sdtk-test-case-spec/references/TEST_CASE_CREATION_RULES.md
297
+ prompts: []
298
+ scripts:
299
+ - toolkit/skills/sdtk-test-case-spec/scripts/validate_test_case_spec.py
300
+ runtime_support: [claude, codex]
301
+ dependencies: [sdtk-qa, sdtk-screen-design-spec]
302
+ pack: core
@@ -7,10 +7,16 @@ The active rule source for API design detail and API flowchart behavior is now:
7
7
  - `API_DESIGN_FLOWCHART_CREATION_RULES_FINAL.md` (root)
8
8
  - `templates/docs/api/API_DESIGN_FLOWCHART_CREATION_RULES.md` (toolkit)
9
9
 
10
- Use that file for:
10
+ Even in compatibility mode, generated API design detail docs must still include:
11
+ - a top-level `## Assumptions` section
12
+ - this table format: `| # | Assumption | Verified | Risk if wrong |`
13
+ - explicit unresolved assumptions when downstream review depends on them
14
+
15
+ Use the active rule file for:
11
16
  - API design detail markdown structure
12
17
  - flowchart integration and synchronization rules
13
18
  - error section rules
14
19
  - flow summary / notes / login rules
20
+ - assumptions-section requirements
15
21
 
16
22
  This compatibility note should remain only until all references are migrated.
@@ -16,6 +16,12 @@
16
16
  | ---: | --- | --- | --- |
17
17
  | 1 | TBD | TBD | `API_design.xlsx` |
18
18
 
19
+ ## Assumptions
20
+
21
+ | # | Assumption | Verified | Risk if wrong |
22
+ | ---: | --- | --- | --- |
23
+ | 1 | TBD | No | TBD |
24
+
19
25
  ## 2. API Detail 1 - TBD
20
26
 
21
27
  **Endpoint:** `TBD`
@@ -38,6 +38,23 @@ Primary sample references:
38
38
  - `GET /bukken/info/{company_uuid}/{bukken_uuid}` style
39
39
  - search API query-builder style shown in the Bukken sample helper flow
40
40
 
41
+ ## 2.1 API Design Detail Markdown Requirements
42
+
43
+ Generated `*_API_DESIGN_DETAIL.md` files must keep this minimum structure:
44
+ - `## 0. Abbreviations`
45
+ - `## 1. Document Scope`
46
+ - `## Assumptions`
47
+ - per-endpoint `## <n>. API Detail ...` sections
48
+ - `## 3. Generation Notes` or the current equivalent final notes section
49
+
50
+ `## Assumptions` must use this table shape:
51
+
52
+ ```text
53
+ | # | Assumption | Verified | Risk if wrong |
54
+ ```
55
+
56
+ If an assumption is not verified yet, keep it explicit and treat it as a downstream review risk instead of silently collapsing it into a fact.
57
+
41
58
  ## 3. Core Flowchart Writing Rules
42
59
 
43
60
  ### Rule A. Add a visible API header for every block
@@ -19,12 +19,13 @@ A flow-action spec should include, at minimum:
19
19
 
20
20
  1. `Abbreviations`
21
21
  2. `Feature overview`
22
- 3. `Screen flow action` (with PlantUML)
23
- 4. `Screen layout spec by flow action`
24
- 5. `System processing flow`
25
- 6. `Open questions`
26
- 7. `Screen - API mapping`
27
- 8. `Document history`
22
+ 3. `Assumptions`
23
+ 4. `Screen flow action` (with PlantUML)
24
+ 5. `Screen layout spec by flow action`
25
+ 6. `System processing flow`
26
+ 7. `Open questions`
27
+ 8. `Screen - API mapping`
28
+ 9. `Document history`
28
29
 
29
30
  If a section is not in scope, keep the section and mark explicitly as `N/A` with reason.
30
31
 
@@ -40,7 +41,34 @@ If a section is not in scope, keep the section and mark explicitly as `N/A` with
40
41
  - Table rows must keep column count consistent with the header (no broken or merged rows).
41
42
  - Avoid single-line merged content that collapses multiple logical items into one table row.
42
43
 
43
- ### 3.1 Language and Encoding Standards (EN Artifacts)
44
+ ### 3.1 Action Table Mapping Completion Rules
45
+
46
+ - After API endpoint spec and database spec are available, the action-table columns `Attribute`, `DB Column`, `Size`, and `Default Value` must not be left blank when the mapping can be derived from current source-of-truth inputs.
47
+ - Fill these four columns only after the relevant API contract and DB schema are stable enough to be treated as the current source of truth for the active phase.
48
+ - Source priority for filling the four columns:
49
+ 1. `docs/api/*_ENDPOINTS.md` and OpenAPI YAML for request/response contract
50
+ 2. `docs/database/DATABASE_SPEC_*.md` for physical column names, nullability, storage shape, and query-source aliases
51
+ 3. confirmed flow/business rules for default state and behavior
52
+ 4. design source (Figma/Excel) for screen label and control type only
53
+ - `Attribute` rules:
54
+ - input item: use the canonical request payload path
55
+ - display item: use the canonical response path
56
+ - UI-only item: use `ui.*` namespace
57
+ - `DB Column` rules:
58
+ - use physical DB column names or query-source aliases from the API/database spec
59
+ - if multiple columns participate, list them explicitly
60
+ - if the control is UI-only, write `N/A`
61
+ - `Size` rules:
62
+ - document data format/type, not pixel width
63
+ - prefer canonical forms such as `uuid`, `DATE (YYYY-MM-DD)`, `DATETIME`, `TIME (HH:mm)`, `boolean`, `array[uuid]`, `enum(...)`, `JSON string`
64
+ - prefer DB storage type first; if not available, fall back to API schema type/format
65
+ - `Default Value` rules:
66
+ - use confirmed business, UI, or runtime defaults
67
+ - if the default comes from settings or environment, state that clearly
68
+ - if not finalized, use `TBD` and keep or raise an open-question reference in `Note`
69
+ - If screen labels conflict with canonical API/DB naming, preserve the original screen label in the visible screen columns, but keep `Attribute` and `DB Column` aligned to API/DB source of truth and explain the mismatch in `Note`.
70
+
71
+ ### 3.2 Language and Encoding Standards (EN Artifacts)
44
72
 
45
73
  - For EN artifacts (`docs/en/**` or explicitly requested EN version), narrative text must be English.
46
74
  - JP labels, if provided by the input, should be kept in a clearly marked appendix or note column, not in the default item table columns.
@@ -49,12 +77,19 @@ If a section is not in scope, keep the section and mark explicitly as `N/A` with
49
77
  - Save files as UTF-8 and avoid mojibake/broken glyphs (`�`, `ↁE`, garbled sequences).
50
78
  - Keep canonical terminology stable across documents (for example: `bukken`, `sagyo`, `customer employee`).
51
79
 
52
- ### 3.2 Markdown Structure Hygiene
80
+ ### 3.3 Markdown Structure Hygiene
53
81
 
54
82
  - Keep each heading on its own line; do not concatenate multiple headings/sections on one line.
55
83
  - Keep metadata blocks (`Information`, `Note`, `Behavior notes`) as structured bullet blocks, not single compressed lines.
56
84
  - Keep image, table, and separator (`---`) boundaries explicit to preserve parser/render stability.
57
85
 
86
+ ### 3.4 Assumptions Section
87
+
88
+ - Every flow-action spec must include a top-level `## Assumptions` section.
89
+ - Use this table format exactly: `# | Assumption | Verified | Risk if wrong`.
90
+ - Keep assumptions explicit when downstream mapping or behavior depends on an unresolved decision.
91
+ - If an assumption affects UI behavior, API mapping, or DB mapping, reflect the risk in `Note` and keep or raise the related `OQ-xx` item.
92
+
58
93
  ## 4. Item Numbering and Duplication Rules
59
94
 
60
95
  - Use one numbering mode only: `global across document`.
@@ -115,6 +150,17 @@ Rules:
115
150
  - Store images in repository-relative paths.
116
151
  - Do not keep temporary local absolute paths in markdown.
117
152
 
153
+ ### 8.1 Rendered Screen Images for Generated-Draft Screens
154
+
155
+ When `Design Source Type` is `generated-draft`:
156
+ - Screen preview images may be rendered from `DESIGN_LAYOUT_[FEATURE_KEY].md` PlantUML SALT wireframes.
157
+ - Renderer: `toolkit/skills/sdtk-design-layout/scripts/render_design_layout_images.py`
158
+ - Expected output path: `docs/specs/assets/<feature_snake>/screens/<screen_id>.svg`
159
+ - If the rendered `.svg` file exists, use it as the `Screen image:` reference.
160
+ - If rendering is unavailable or the `.svg` does not exist, replace the image line with:
161
+ `> Screen image not rendered in this environment. See Design Source Reference for layout.`
162
+ - Do not leave a broken image reference pointing to a non-existent file.
163
+
118
164
  ## 9. Consistency with Other Specs
119
165
 
120
166
  - Align terms with:
@@ -145,8 +191,9 @@ Rules:
145
191
  - All mandatory sections exist.
146
192
  - All tables include `No`.
147
193
  - Numbering is global across the document (no resets).
148
- - No broken image links.
194
+ - No broken image links (for `generated-draft` screens: `.svg` exists or render-skipped note is present).
149
195
  - Screen/API mappings are consistent with `*_ENDPOINTS.md`.
196
+ - Assumptions section exists and unresolved assumptions are traceable.
150
197
  - Open questions are explicit and traceable.
151
198
  - For EN artifact: no leftover VI text outside allowed `Original Text` appendix blocks.
152
199
  - No mojibake/encoding corruption markers.
@@ -33,6 +33,12 @@
33
33
  ### 1.3 Implementation direction
34
34
  - TBD
35
35
 
36
+ ## Assumptions
37
+
38
+ | # | Assumption | Verified | Risk if wrong |
39
+ | ---: | --- | --- | --- |
40
+ | 1 | TBD | No | TBD |
41
+
36
42
  ---
37
43
 
38
44
  ## 2) Screen flow action
@@ -76,7 +82,10 @@ Information:
76
82
  - Design Source Reference: Figma URL | screenshot path | `docs/design/DESIGN_LAYOUT_{{FEATURE_KEY}}.md` section reference | `N/A - no UI scope`
77
83
 
78
84
  Screen image:
79
- ![3.1 Screen A](assets/{{FEATURE_SNAKE}}/screens/screen_3_1_screen_a.png)
85
+ ![3.1 Screen A](assets/{{FEATURE_SNAKE}}/screens/scr_01.svg)
86
+
87
+ <!-- If the .svg file does not exist (render unavailable), replace the image line above with: -->
88
+ <!-- > Screen image not rendered in this environment. See Design Source Reference for layout. -->
80
89
 
81
90
  | No | Item Name | Item Type | Attribute | DB Column | Size | Default Value | Action | Description | Note |
82
91
  | ---: | --- | --- | --- | --- | --- | --- | --- | --- | --- |
@@ -100,7 +109,10 @@ Information:
100
109
  - Design Source Reference: Figma URL | screenshot path | `docs/design/DESIGN_LAYOUT_{{FEATURE_KEY}}.md` section reference | `N/A - no UI scope`
101
110
 
102
111
  Screen image:
103
- ![3.2 Screen B](assets/{{FEATURE_SNAKE}}/screens/screen_3_2_screen_b.png)
112
+ ![3.2 Screen B](assets/{{FEATURE_SNAKE}}/screens/scr_02.svg)
113
+
114
+ <!-- If the .svg file does not exist (render unavailable), replace the image line above with: -->
115
+ <!-- > Screen image not rendered in this environment. See Design Source Reference for layout. -->
104
116
 
105
117
  | No | Item Name | Item Type | Attribute | DB Column | Size | Default Value | Action | Description | Note |
106
118
  | ---: | --- | --- | --- | --- | --- | --- | --- | --- | --- |
@@ -0,0 +1,31 @@
1
+ # ARCH to DEV Handoff
2
+
3
+ ## Required Inputs
4
+ - `docs/architecture/ARCH_DESIGN_[FEATURE_KEY].md`
5
+ - `docs/product/BACKLOG_[FEATURE_KEY].md`
6
+ - when applicable:
7
+ - `docs/api/[FeaturePascal]_API.yaml`
8
+ - `docs/api/[FEATURE_KEY]_ENDPOINTS.md`
9
+ - `docs/database/DATABASE_SPEC_[FEATURE_KEY].md`
10
+ - `docs/design/DESIGN_LAYOUT_[FEATURE_KEY].md`
11
+ - `docs/specs/[FEATURE_KEY]_FLOW_ACTION_SPEC.md`
12
+
13
+ ## Required Outputs
14
+ - `docs/dev/FEATURE_IMPL_PLAN_[FEATURE_KEY].md`
15
+ - code and tests
16
+ - Stage 1 and Stage 2 review evidence before QA handoff
17
+
18
+ ## Mandatory Checks
19
+ - ARCH outputs are current and reference the same feature scope.
20
+ - UI scope includes `DESIGN_LAYOUT` before `FLOW_ACTION_SPEC`.
21
+ - API and DB source-of-truth files are available when implementation depends on them.
22
+
23
+ ## Forbidden Shortcuts
24
+ - Do not start implementation before `FEATURE_IMPL_PLAN` is written and approved.
25
+ - Do not treat architecture assumptions as verified facts without citing the source.
26
+
27
+ ## Handoff Message Shape
28
+ - Feature: `[FEATURE_KEY]`
29
+ - Required implementation slice: file or module scope
30
+ - Required proving checks: test or lint or build commands
31
+ - Upstream blockers or assumptions: explicit list
@@ -0,0 +1,28 @@
1
+ # BA to ARCH Handoff
2
+
3
+ ## Required Inputs
4
+ - `docs/specs/BA_SPEC_[FEATURE_KEY].md`
5
+ - `docs/product/PRD_[FEATURE_KEY].md`
6
+ - `docs/product/BACKLOG_[FEATURE_KEY].md`
7
+ - current `SHARED_PLANNING.md`
8
+
9
+ ## Required Outputs
10
+ - `docs/architecture/ARCH_DESIGN_[FEATURE_KEY].md`
11
+ - API, DB, and UI design artifacts when in scope
12
+ - updated `SHARED_PLANNING.md`
13
+ - updated `QUALITY_CHECKLIST.md`
14
+
15
+ ## Mandatory Checks
16
+ - `REQ -> UC/BR/AC` traceability exists in BA output.
17
+ - unresolved `OQ-xx` items are visible to ARCH.
18
+ - ARCH knows whether API, DB, and UI scope are required.
19
+
20
+ ## Forbidden Shortcuts
21
+ - Do not jump into implementation details before architecture scope is mapped.
22
+ - Do not hide unresolved business rules inside architecture assumptions.
23
+
24
+ ## Handoff Message Shape
25
+ - Feature: `[FEATURE_KEY]`
26
+ - In-scope use cases: `UC-xx`
27
+ - Key business rules: `BR-xx`
28
+ - Blocking open questions: `OQ-xx` or `None`
@@ -0,0 +1,26 @@
1
+ # DEV Stage 1 Spec Review
2
+
3
+ ## Required Inputs
4
+ - implementation diff or changed files
5
+ - `docs/specs/BA_SPEC_[FEATURE_KEY].md`
6
+ - `docs/api/[FeaturePascal]_API.yaml` and `docs/api/[FEATURE_KEY]_ENDPOINTS.md` when API scope exists
7
+ - `docs/specs/[FEATURE_KEY]_FLOW_ACTION_SPEC.md` when UI scope exists
8
+ - `docs/database/DATABASE_SPEC_[FEATURE_KEY].md` when data scope exists
9
+
10
+ ## Required Outputs
11
+ - PASS or FAIL verdict
12
+ - mismatch table with exact file references
13
+ - explicit handoff decision to Stage 2 or back to DEV
14
+
15
+ ## Mandatory Checks
16
+ - code matches BA, API, DB, and flow-action requirements line by line
17
+ - missing mappings and drift are called out explicitly
18
+ - unresolved assumptions that affect behavior are treated as blockers
19
+
20
+ ## Verification Evidence
21
+ - quote the exact specification text before declaring a match or mismatch
22
+ - use: `Spec says: "[exact quote]" -> Evidence: [match/mismatch + file reference]`
23
+
24
+ ## Forbidden Shortcuts
25
+ - Do not start with style or maintainability feedback.
26
+ - Do not trust the implementer report without checking artifacts directly.
@@ -0,0 +1,20 @@
1
+ # DEV Stage 2 Code Quality Review
2
+
3
+ ## Required Inputs
4
+ - Stage 1 review result marked PASS
5
+ - implementation diff or changed files
6
+ - relevant test or lint outputs
7
+
8
+ ## Required Outputs
9
+ - PASS or FAIL verdict
10
+ - quality findings with file references
11
+ - recommendation for QA handoff readiness
12
+
13
+ ## Mandatory Checks
14
+ - Stage 1 spec review already passed
15
+ - naming, structure, tests, and maintainability are reviewed
16
+ - verification commands cited are fresh and relevant to the current diff
17
+
18
+ ## Forbidden Shortcuts
19
+ - Do not reopen Stage 1 requirement matching as a substitute for quality review.
20
+ - Do not declare QA-ready without confirming Stage 1 PASS and fresh verification evidence.
@@ -0,0 +1,23 @@
1
+ # DEV to QA Handoff
2
+
3
+ ## Required Inputs
4
+ - `docs/dev/FEATURE_IMPL_PLAN_[FEATURE_KEY].md`
5
+ - implementation diff summary
6
+ - Stage 1 spec review PASS evidence
7
+ - Stage 2 code-quality review PASS evidence
8
+ - fresh test or lint outputs used for QA handoff
9
+
10
+ ## Required Outputs
11
+ - QA test scope
12
+ - explicit release-risk notes
13
+ - updated `SHARED_PLANNING.md`
14
+ - updated `QUALITY_CHECKLIST.md`
15
+
16
+ ## Mandatory Checks
17
+ - both DEV review gates are PASS
18
+ - verification evidence is fresh
19
+ - known limitations or assumptions are recorded, not hidden
20
+
21
+ ## Forbidden Shortcuts
22
+ - Do not hand off to QA with only one review gate complete.
23
+ - Do not describe expected behavior as if it were verified runtime evidence.
@@ -0,0 +1,26 @@
1
+ # PM to BA Handoff
2
+
3
+ ## Required Inputs
4
+ - `docs/product/PROJECT_INITIATION_[FEATURE_KEY].md`
5
+ - source requirement notes or attachments
6
+ - current `SHARED_PLANNING.md`
7
+
8
+ ## Required Outputs
9
+ - `docs/specs/BA_SPEC_[FEATURE_KEY].md`
10
+ - updated `SHARED_PLANNING.md`
11
+ - updated `QUALITY_CHECKLIST.md`
12
+
13
+ ## Mandatory Checks
14
+ - `REQ-xx` scope is explicit and testable.
15
+ - in-scope and out-of-scope are visible.
16
+ - unresolved ambiguities are logged as `OQ-xx`, not hidden.
17
+
18
+ ## Forbidden Shortcuts
19
+ - Do not skip glossary, BR, UC, AC, or traceability expectations.
20
+ - Do not invent missing stakeholder decisions without logging them.
21
+
22
+ ## Handoff Message Shape
23
+ - Feature: `[FEATURE_KEY]`
24
+ - PM scope summary: 3 to 7 bullets
25
+ - Known open questions: `OQ-xx` list or `None`
26
+ - Expected BA focus: rules, use cases, acceptance criteria, NFRs