macca-method 1.0.0 → 2.0.0

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 (56) hide show
  1. package/.agents/legacy-payloads.json +22 -0
  2. package/{skills-lock.json → .agents/macca-lock.json} +4 -2
  3. package/.agents/macca-managed-skills.txt +4 -2
  4. package/.agents/skills/_shared/references/additional-skills.md +30 -0
  5. package/.agents/skills/_shared/references/brainstorm-session.md +42 -11
  6. package/.agents/skills/_shared/references/config-mutation.md +25 -0
  7. package/.agents/skills/_shared/references/finding-format.md +25 -0
  8. package/.agents/skills/_shared/references/fix-mode.md +39 -0
  9. package/.agents/skills/_shared/references/human-loop.md +3 -1
  10. package/.agents/skills/_shared/references/implementation-principles.md +19 -0
  11. package/.agents/skills/_shared/references/invocation-policy.md +39 -0
  12. package/.agents/skills/_shared/references/language-config.md +15 -0
  13. package/.agents/skills/_shared/references/output-ownership.md +4 -2
  14. package/.agents/skills/_shared/references/runtime-config.md +7 -168
  15. package/.agents/skills/_shared/references/skill-catalog.md +34 -0
  16. package/.agents/skills/_shared/scripts/validate-skills.py +106 -4
  17. package/.agents/skills/add-feature/SKILL.md +10 -7
  18. package/.agents/skills/brainstorm-api/SKILL.md +49 -194
  19. package/.agents/skills/brainstorm-api/assets/api.template.md +147 -0
  20. package/.agents/skills/brainstorm-architecture/SKILL.md +22 -127
  21. package/.agents/skills/brainstorm-architecture/assets/architecture.template.md +135 -0
  22. package/.agents/skills/brainstorm-prd/SKILL.md +19 -102
  23. package/.agents/skills/brainstorm-prd/assets/PRD.template.md +106 -0
  24. package/.agents/skills/brainstorm-rules/SKILL.md +17 -151
  25. package/.agents/skills/brainstorm-rules/assets/rules.template.md +127 -0
  26. package/.agents/skills/brainstorm-schema/SKILL.md +49 -115
  27. package/.agents/skills/brainstorm-schema/assets/schema.template.md +109 -0
  28. package/.agents/skills/brainstorm-styleguide/SKILL.md +19 -134
  29. package/.agents/skills/brainstorm-styleguide/assets/StyleGuide.template.md +147 -0
  30. package/.agents/skills/brainstorm-task/SKILL.md +22 -107
  31. package/.agents/skills/brainstorm-task/assets/Task.template.md +113 -0
  32. package/.agents/skills/bug-fix/SKILL.md +45 -54
  33. package/.agents/skills/code-review/SKILL.md +26 -19
  34. package/.agents/skills/code-review/references/review-checklist.md +24 -26
  35. package/.agents/skills/developer/SKILL.md +25 -39
  36. package/.agents/skills/developer/references/close-phase.md +25 -0
  37. package/.agents/skills/developer/references/execute-task.md +69 -0
  38. package/.agents/skills/developer/references/onboarding.md +47 -0
  39. package/.agents/skills/help/SKILL.md +12 -13
  40. package/.agents/skills/meet/SKILL.md +168 -0
  41. package/.agents/skills/quick-dev/SKILL.md +209 -0
  42. package/.agents/skills/release-readiness/SKILL.md +149 -0
  43. package/.agents/skills/spec-audit/SKILL.md +37 -22
  44. package/.agents/skills/spec-compliance/SKILL.md +41 -40
  45. package/.agents/skills/spec-init/SKILL.md +29 -14
  46. package/README.md +253 -170
  47. package/bin/macca-method.js +785 -91
  48. package/flow.webp +0 -0
  49. package/image-macca-method.webp +0 -0
  50. package/package.json +13 -6
  51. package/scripts/run-skill-validator.js +24 -0
  52. package/scripts/test-install.js +398 -0
  53. package/scripts/test-upgrade-legacy.js +107 -0
  54. package/scripts/validate-skill-behavior.js +124 -0
  55. package/.agents/skills/developer/references/execution-workflow.md +0 -322
  56. package/.agents/skills/rapat/SKILL.md +0 -172
@@ -1,8 +1,10 @@
1
1
  ---
2
2
  name: brainstorm-styleguide
3
- description: Interview users and generate `StyleGuide.md` (UI/UX Design System). Use after the PRD or when defining the application's appearance.
4
- persona: "Akram"
5
- persona_role: "UI/UX Designer"
3
+ description: Interviews users and generates `StyleGuide.md` covering visual tokens, components, accessibility, localization, responsive behavior, and operational UI states. Use only when the user explicitly requests a UI/UX contract.
4
+ compatibility: Requires the complete MACCA-METHOD collection with sibling _shared resources and workspace file access.
5
+ metadata:
6
+ persona: "Akram"
7
+ persona-role: "UI/UX Designer"
6
8
  ---
7
9
 
8
10
  # Brainstorm StyleGuide
@@ -42,12 +44,13 @@ This skill generates **StyleGuide.md** through an interactive interview. It prev
42
44
  - If `.agents/developer-config.json` exists, read `developerPreferences.scope`
43
45
 
44
46
  3. **Shared Runtime Setup** — before the interview:
45
- - Read `../_shared/references/runtime-config.md`.
47
+ - Read `../_shared/references/language-config.md`.
48
+ - Read `../_shared/references/config-mutation.md`.
46
49
  - Read `../_shared/references/brainstorm-session.md`.
47
50
  - Read `../_shared/references/scope-rules.md`.
48
51
  - Use `languagePreferences.communication.normalized` for chat.
49
52
  - Use `languagePreferences.documents.normalized` for the final `project-context/StyleGuide.md`.
50
- - Apply `brainstormPreferences.discussionMode` and `brainstormPreferences.recommendations` using the shared session policy.
53
+ - Apply `brainstormPreferences.discussionMode`, `recommendations`, and `discoveryDepth` using the shared session policy.
51
54
  - For this skill: announce that there are 7 topics, ask for pacing (one by one / three at once / all at once), and ask for recommendation preference if it is not already stored.
52
55
 
53
56
  4. If scope = `backend`, DO NOT create `StyleGuide.md`. Explain that UI work is outside the current scope.
@@ -60,7 +63,7 @@ This skill generates **StyleGuide.md** through an interactive interview. It prev
60
63
 
61
64
  7. Summarize the result and provide next steps.
62
65
 
63
- ## Interview Topics (7)
66
+ ## Interview Topics (8)
64
67
 
65
68
  ### 1. CSS Framework
66
69
  **Ask:** *"What CSS framework is used: Tailwind, Bootstrap, or custom CSS?"*
@@ -129,138 +132,20 @@ This skill generates **StyleGuide.md** through an interactive interview. It prev
129
132
  - Default icon size (16px, 20px, 24px)
130
133
  - Need custom SVG icons?
131
134
 
132
- ## Output Format (StyleGuide.md)
135
+ ### 8. Accessibility, Localization & Operational States
136
+ **Ask:** *"Which accessibility target and non-happy-path states must the UI support: loading, empty, error, forbidden, offline, reduced motion, keyboard, screen reader, or localization?"*
133
137
 
134
- ````markdown
135
- # StyleGuide
136
-
137
- > **Framework:** [CSS Framework] | **Approach:** [Utility-first / Component-based]
138
-
139
- ## Document Role
140
- - **Source of Truth:** Visual system and UI conventions for this project
141
- - **Primary Owner:** `brainstorm-styleguide`
142
- - **Out of Scope:** Backend logic, API contracts, and non-UI technical architecture
138
+ **Collect:**
139
+ - Accessibility target from PRD (for example WCAG AA), keyboard order, visible focus, labels, contrast, touch targets, and reduced motion
140
+ - Loading/skeleton, empty, error, disabled/read-only, permission-denied, offline, and partial-data behavior that applies to primary surfaces
141
+ - Supported locales from PRD; text expansion, pluralization, date/number/currency/timezone formatting, and RTL only when relevant
142
+ - UI performance constraints: font loading, asset/image strategy, motion budget, and component/render budget where relevant
143
143
 
144
- ## Supported Surfaces
145
- | Surface | Included? | Notes |
146
- |---------|-----------|-------|
147
- | Web app | Yes / No | [notes] |
148
- | Admin panel | Yes / No | [notes] |
149
- | Marketing site | Yes / No | [notes] |
150
- | Email / PDF / export | Yes / No | [notes] |
144
+ ## StyleGuide.md Output
151
145
 
152
- ---
146
+ After discovery is complete and immediately before generating `project-context/StyleGuide.md`, read `assets/StyleGuide.template.md`.
153
147
 
154
- ## 1. CSS Framework
155
- - **Framework:** [Tailwind CSS v3 / Bootstrap 5 / CSS Modules / etc.]
156
- - **Version:** [version]
157
- - **Notes:** [Additional rules]
158
-
159
- ## 2. Color Palette
160
- | Role | Hex | Tailwind | Description |
161
- |------|-----|----------|-------------|
162
- | Primary | `#xxx` | `bg-blue-600` | Main brand |
163
- | Secondary | `#xxx` | `bg-gray-600` | Accent |
164
- | Background | `#xxx` | `bg-gray-50` | Page background |
165
- | Surface | `#xxx` | `bg-white` | Card/panel background |
166
- | Primary Text | `#xxx` | `text-gray-900` | Main text |
167
- | Secondary Text | `#xxx` | `text-gray-500` | Secondary text |
168
- | Error | `#xxx` | `text-red-500` | Error message |
169
- | Success | `#xxx` | `text-green-500` | Success message |
170
- | Warning | `#xxx` | `text-yellow-500` | Warning message |
171
- | Info | `#xxx` | `text-blue-500` | Info message |
172
-
173
- **Dark Mode:** [Supported / Not supported]
174
-
175
- ## 3. Typography
176
- - **Heading Font:** [Font Name] — via [Google Fonts / local]
177
- - **Body Font:** [Font Name] — via [Google Fonts / local]
178
-
179
- | Level | Size | Weight | Line Height |
180
- |-------|------|--------|-------------|
181
- | H1 | [size] | [weight] | [line-height] |
182
- | H2 | [size] | [weight] | [line-height] |
183
- | H3 | [size] | [weight] | [line-height] |
184
- | H4 | [size] | [weight] | [line-height] |
185
- | Body | [size] | regular | [line-height] |
186
- | Small | [size] | regular | [line-height] |
187
- | Caption | [size] | regular | [line-height] |
188
-
189
- ## 4. Spacing System
190
- - **Base Unit:** [4px / 8px]
191
- - **Scale:** [Tailwind Default / Custom]
192
-
193
- | Token | Value | Tailwind |
194
- |-------|-------|----------|
195
- | xs | [4px] | `p-1` |
196
- | sm | [8px] | `p-2` |
197
- | md | [16px] | `p-4` |
198
- | lg | [24px] | `p-6` |
199
- | xl | [32px] | `p-8` |
200
- | 2xl | [48px] | `p-12` |
201
-
202
- ## 5. Component Style
203
- - **Border Radius:** [rounded-md / rounded-lg / none]
204
- - **Shadow:** [shadow-sm / shadow-md / none]
205
-
206
- ## Component Inventory
207
- | Component | Status | Notes |
208
- |-----------|--------|-------|
209
- | Button | Defined | [notes] |
210
- | Card | Defined | [notes] |
211
- | Input | Defined | [notes] |
212
- | Modal | Defined / Deferred | [notes] |
213
- | Table | Defined / Deferred | [notes] |
214
-
215
- ### Button
216
- | Variant | Style |
217
- |---------|-------|
218
- | Primary | [bg-primary text-white rounded-md px-4 py-2] |
219
- | Secondary | [outline / ghost] |
220
- | Danger | [bg-error text-white] |
221
-
222
- ### Card
223
- - Background: [surface color]
224
- - Border: [border style]
225
- - Shadow: [shadow level]
226
- - Padding: [padding value]
227
-
228
- ### Input
229
- - Border: [border style]
230
- - Focus: [focus ring style]
231
- - Error state: [error border + message style]
232
-
233
- ### Transition & Animation
234
- - **Default Duration:** [150ms / 200ms / 300ms]
235
- - **Easing:** [ease-in-out / ease-out]
236
- - **Pattern:** `transition-all duration-150 ease-in-out`
237
-
238
- ## 6. Responsive & Breakpoints
239
- - **Approach:** [Mobile-first / Desktop-first]
240
-
241
- | Breakpoint | Value | Description |
242
- |------------|-------|-------------|
243
- | sm | [640px] | Small tablet |
244
- | md | [768px] | Tablet |
245
- | lg | [1024px] | Desktop |
246
- | xl | [1280px] | Large desktop |
247
-
248
- **Layout Rules:**
249
- - [Description of layout changes per breakpoint]
250
-
251
- ## 7. Iconography
252
- - **Library:** [Lucide React / Heroicons / FontAwesome / etc.]
253
- - **Default Size:** [20px / 24px]
254
- - **Import Pattern:** `import { IconName } from 'lucide-react'`
255
- - **Notes:** [Rules for icon usage]
256
-
257
- ## Non-Goals / Not Yet Defined
258
- - [UI areas intentionally outside this style guide]
259
-
260
- ## Assumptions & Open Questions
261
- - [Assumption about branding, assets, or surface coverage]
262
- - [Question that needs confirmation]
263
- ````
148
+ Adapt only sections that are applicable and preserve every required contract from the interview. Do not load the template during early discovery.
264
149
 
265
150
  ---
266
151
 
@@ -0,0 +1,147 @@
1
+ # StyleGuide
2
+
3
+ > **Framework:** [CSS Framework] | **Approach:** [Utility-first / Component-based]
4
+
5
+ ## Document Role
6
+ - **Source of Truth:** Visual system and UI conventions for this project
7
+ - **Primary Owner:** `brainstorm-styleguide`
8
+ - **Out of Scope:** Backend logic, API contracts, and non-UI technical architecture
9
+
10
+ ## Supported Surfaces
11
+ | Surface | Included? | Notes |
12
+ |---------|-----------|-------|
13
+ | Web app | Yes / No | [notes] |
14
+ | Admin panel | Yes / No | [notes] |
15
+ | Marketing site | Yes / No | [notes] |
16
+ | Email / PDF / export | Yes / No | [notes] |
17
+
18
+ ---
19
+
20
+ ## 1. CSS Framework
21
+ - **Framework:** [Tailwind CSS v3 / Bootstrap 5 / CSS Modules / etc.]
22
+ - **Version:** [version]
23
+ - **Notes:** [Additional rules]
24
+
25
+ ## 2. Color Palette
26
+ | Role | Hex | Tailwind | Description |
27
+ |------|-----|----------|-------------|
28
+ | Primary | `#xxx` | `bg-blue-600` | Main brand |
29
+ | Secondary | `#xxx` | `bg-gray-600` | Accent |
30
+ | Background | `#xxx` | `bg-gray-50` | Page background |
31
+ | Surface | `#xxx` | `bg-white` | Card/panel background |
32
+ | Primary Text | `#xxx` | `text-gray-900` | Main text |
33
+ | Secondary Text | `#xxx` | `text-gray-500` | Secondary text |
34
+ | Error | `#xxx` | `text-red-500` | Error message |
35
+ | Success | `#xxx` | `text-green-500` | Success message |
36
+ | Warning | `#xxx` | `text-yellow-500` | Warning message |
37
+ | Info | `#xxx` | `text-blue-500` | Info message |
38
+
39
+ **Dark Mode:** [Supported / Not supported]
40
+
41
+ ## 3. Typography
42
+ - **Heading Font:** [Font Name] — via [Google Fonts / local]
43
+ - **Body Font:** [Font Name] — via [Google Fonts / local]
44
+
45
+ | Level | Size | Weight | Line Height |
46
+ |-------|------|--------|-------------|
47
+ | H1 | [size] | [weight] | [line-height] |
48
+ | H2 | [size] | [weight] | [line-height] |
49
+ | H3 | [size] | [weight] | [line-height] |
50
+ | H4 | [size] | [weight] | [line-height] |
51
+ | Body | [size] | regular | [line-height] |
52
+ | Small | [size] | regular | [line-height] |
53
+ | Caption | [size] | regular | [line-height] |
54
+
55
+ ## 4. Spacing System
56
+ - **Base Unit:** [4px / 8px]
57
+ - **Scale:** [Tailwind Default / Custom]
58
+
59
+ | Token | Value | Tailwind |
60
+ |-------|-------|----------|
61
+ | xs | [4px] | `p-1` |
62
+ | sm | [8px] | `p-2` |
63
+ | md | [16px] | `p-4` |
64
+ | lg | [24px] | `p-6` |
65
+ | xl | [32px] | `p-8` |
66
+ | 2xl | [48px] | `p-12` |
67
+
68
+ ## 5. Component Style
69
+ - **Border Radius:** [rounded-md / rounded-lg / none]
70
+ - **Shadow:** [shadow-sm / shadow-md / none]
71
+
72
+ ## Component Inventory
73
+ | Component | Status | Notes |
74
+ |-----------|--------|-------|
75
+ | Button | Defined | [notes] |
76
+ | Card | Defined | [notes] |
77
+ | Input | Defined | [notes] |
78
+ | Modal | Defined / Deferred | [notes] |
79
+ | Table | Defined / Deferred | [notes] |
80
+
81
+ ### Button
82
+ | Variant | Style |
83
+ |---------|-------|
84
+ | Primary | [bg-primary text-white rounded-md px-4 py-2] |
85
+ | Secondary | [outline / ghost] |
86
+ | Danger | [bg-error text-white] |
87
+
88
+ ### Card
89
+ - Background: [surface color]
90
+ - Border: [border style]
91
+ - Shadow: [shadow level]
92
+ - Padding: [padding value]
93
+
94
+ ### Input
95
+ - Border: [border style]
96
+ - Focus: [focus ring style]
97
+ - Error state: [error border + message style]
98
+
99
+ ### Transition & Animation
100
+ - **Default Duration:** [150ms / 200ms / 300ms]
101
+ - **Easing:** [ease-in-out / ease-out]
102
+ - **Pattern:** `transition-all duration-150 ease-in-out`
103
+
104
+ ## 6. Responsive & Breakpoints
105
+ - **Approach:** [Mobile-first / Desktop-first]
106
+
107
+ | Breakpoint | Value | Description |
108
+ |------------|-------|-------------|
109
+ | sm | [640px] | Small tablet |
110
+ | md | [768px] | Tablet |
111
+ | lg | [1024px] | Desktop |
112
+ | xl | [1280px] | Large desktop |
113
+
114
+ **Layout Rules:**
115
+ - [Description of layout changes per breakpoint]
116
+
117
+ ## 7. Iconography
118
+ - **Library:** [Lucide React / Heroicons / FontAwesome / etc.]
119
+ - **Default Size:** [20px / 24px]
120
+ - **Import Pattern:** `import { IconName } from 'lucide-react'`
121
+ - **Notes:** [Rules for icon usage]
122
+
123
+ ## 8. Accessibility, Localization & Operational States
124
+ - **Accessibility Target:** [PRD target / WCAG level]
125
+ - **Keyboard & Focus:** [rules]
126
+ - **Screen Reader & Labels:** [rules]
127
+ - **Reduced Motion:** [behavior]
128
+
129
+ | State | Required UI Behavior | Recovery/Action |
130
+ |-------|----------------------|-----------------|
131
+ | Loading | [skeleton/progress] | [wait/cancel] |
132
+ | Empty | [message/CTA] | [next action] |
133
+ | Error | [message/retry] | [recovery] |
134
+ | Forbidden | [explanation] | [request access/back] |
135
+ | Offline/Partial | [if applicable] | [sync/retry] |
136
+
137
+ - **Locales & Text Expansion:** [supported locales or N/A]
138
+ - **Formatting:** [date/number/currency/timezone]
139
+ - **RTL:** [supported / N/A]
140
+ - **UI Performance Budget:** [fonts/assets/motion/render constraints]
141
+
142
+ ## Non-Goals / Not Yet Defined
143
+ - [UI areas intentionally outside this style guide]
144
+
145
+ ## Assumptions & Open Questions
146
+ - [Assumption about branding, assets, or surface coverage]
147
+ - [Question that needs confirmation]
@@ -1,8 +1,10 @@
1
1
  ---
2
2
  name: brainstorm-task
3
- description: Generate `Task.md` (Work Plan) from completed spec documents. Run after `PRD.md`, `architecture.md`, `schema.md`, `api.md`, and `rules.md` are complete.
4
- persona: "Galbi"
5
- persona_role: "Project Manager"
3
+ description: Generates `Task.md` from the completed specs applicable to the project's declared scope. Use after `architecture.md` and all relevant product, data, API, UI, and coding-rule documents are ready, or when adding an approved phase to an existing plan.
4
+ compatibility: Requires the complete MACCA-METHOD collection with sibling _shared resources and workspace file access.
5
+ metadata:
6
+ persona: "Galbi"
7
+ persona-role: "Project Manager"
6
8
  ---
7
9
 
8
10
  # Brainstorm Task
@@ -11,11 +13,13 @@ persona_role: "Project Manager"
11
13
 
12
14
  Before starting:
13
15
 
14
- 1. Read `../_shared/references/runtime-config.md`.
15
- 2. Read `../_shared/references/brainstorm-session.md`.
16
- 3. Use `languagePreferences.communication.normalized` for chat.
17
- 4. Use `languagePreferences.documents.normalized` for the final `project-context/Task.md`.
18
- 5. Apply `brainstormPreferences.recommendations` using the shared session policy.
16
+ 1. Read `../_shared/references/language-config.md`.
17
+ 2. Read `../_shared/references/config-mutation.md`.
18
+ 3. Read `../_shared/references/brainstorm-session.md`.
19
+ 4. Read `../_shared/references/scope-rules.md`.
20
+ 5. Use `languagePreferences.communication.normalized` for chat.
21
+ 6. Use `languagePreferences.documents.normalized` for the final `project-context/Task.md`.
22
+ 7. Apply `brainstormPreferences.recommendations` and `discoveryDepth` using the shared session policy.
19
23
 
20
24
  ## Character
21
25
 
@@ -51,7 +55,7 @@ This skill generates **Task.md**: a work plan derived from existing spec documen
51
55
  **Detect mode before starting:**
52
56
  Check whether `project-context/Task.md` already exists.
53
57
  - **Does not exist yet** → follow the steps below (New Generate Mode).
54
- - **Already exists** (usually called from `add-feature`) → enter **Add Phase Mode**: skip clarification topics 1 and 3 (already defined in the old `Task.md`), ask only topic 2 (granularity), then **append new phases/tasks below the existing content** without overwriting the `Task.md` header.
58
+ - **Already exists** (usually called from `add-feature`) → enter **Add Phase Mode**: skip clarification topics 1 and 3, ask only topic 2, append the approved phases/tasks, and update header counts/date, Progress Overview, dependencies, and Traceability Matrix. Preserve unrelated existing phases and IDs.
55
59
 
56
60
  **Scope rules:**
57
61
  - `frontend` → generate frontend tasks only
@@ -119,7 +123,7 @@ Files: `PRD.md`, `architecture.md`, `schema.md`, `api.md`, `rules.md`, `StyleGui
119
123
 
120
124
  **architecture.md is required** — if it does not exist, **STOP** and ask the user to run `brainstorm-architecture` first.
121
125
 
122
- If other documents are missing, **inform the user** (do not ask first):
126
+ If another document required by the declared scope is missing, inform the user and obtain one continuation decision:
123
127
  > *"I checked: `project-context/[filename]` was not found. It is recommended to complete it first so tasks are more accurate. Continue with the available documents?"*
124
128
 
125
129
  ## Deep Analysis (Before Creating Tasks)
@@ -129,13 +133,14 @@ Before writing `Task.md`, analyze internally:
129
133
  1. Read `PRD.md` → list all MVP features → this is the task scope
130
134
  2. Read `StyleGuide.md` → CSS framework, base components → include styling setup and base component tasks
131
135
  3. Read `architecture.md` → tech stack and folder structure → determines which files need to be created
132
- 4. Read `schema.md` → all tables each table needs a migration + model/schema file
133
- 5. Read `api.md` → all endpoints each endpoint needs route + controller + service
136
+ 4. Read `schema.md` → map each datastore-native entity/collection/aggregate/stream to the migrations, validation, model, projection, or infrastructure tasks its architecture actually requires
137
+ 5. Read `api.md` → map each REST endpoint, GraphQL operation, RPC procedure, or event contract to protocol-native implementation and contract-test tasks
134
138
  6. Read `rules.md` → coding standards → include tasks for ESLint, Prettier, tsconfig setup?
135
139
  7. Identify task dependencies (database before model, model before service, service before controller)
136
- 8. **TDD:** Every implementation task (service, endpoint, component) must be preceded by a test task. Format: Task N.1 = write test, Task N.2 = implement (dependency: N.2 depends on N.1 being complete).
140
+ 8. **Testing workflow:** Follow the policy in `rules.md`. If it requires test-first/TDD, precede implementation with a test task. Otherwise pair each behavior change with the test/verification task required by the approved rules. Do not force TDD against project policy.
137
141
  9. If the specs mention security controls, create explicit security tasks — do not leave them implicit. Examples: auth guards, ownership checks, input validation, secure cookie config, rate limiting, CSRF protection, audit logs, data masking.
138
142
  10. Create a **traceability matrix**: every main requirement (`FEAT-*`, `BR-*`, `NFR-*`, `API-*`, `DATA-*`) must have at least one task that references it.
143
+ 11. Derive a phase Definition of Done from applicable specs. Do not ask another question: include tests/checks, security, migration/backfill, observability, documentation, rollout/rollback evidence, spec-compliance, and code-review only when relevant.
139
144
 
140
145
  After analysis, **show the scope summary to the user**:
141
146
 
@@ -159,101 +164,11 @@ Is this scope correct? Anything to add or remove?
159
164
 
160
165
  Wait for user confirmation before creating Task.md.
161
166
 
162
- ## Output Format (Task.md)
167
+ ## Task.md Output
163
168
 
164
- ````markdown
165
- # Task: [Project Name]
169
+ After discovery is complete and immediately before generating `project-context/Task.md`, read `assets/Task.template.md`.
166
170
 
167
- > **Total Phases:** [X] | **Total Tasks:** [Y] | **Last Updated:** [date]
168
-
169
- ## Document Role
170
- - **Source of Truth:** Execution plan derived from approved spec documents
171
- - **Primary Owner:** `brainstorm-task`
172
- - **Out of Scope:** New product scope, new schema/API decisions, and code quality review findings
173
-
174
- ## Upstream Dependencies
175
- | Topic | Canonical Source |
176
- |------|------------------|
177
- | Product scope | `project-context/PRD.md` |
178
- | Technical structure | `project-context/architecture.md` |
179
- | Data contract | `project-context/schema.md` |
180
- | API contract | `project-context/api.md` |
181
- | UI contract | `project-context/StyleGuide.md` |
182
- | Coding rules | `project-context/rules.md` |
183
-
184
- ## Execution Rules
185
- - Work on tasks **one by one** in order within each phase.
186
- - After each **phase** is complete, **STOP** and wait for user confirmation before the next phase.
187
- - Update status `[ ]` to `[x]` when a task is complete.
188
- - If a task is blocked, mark it `[~]` and note the reason.
189
-
190
- ---
191
-
192
- ## Progress Overview
193
- | Phase | Name | Status | Progress |
194
- |------|------|--------|----------|
195
- | 1 | [Setup & Configuration] | [ ] | 0/3 |
196
- | 2 | [Database & Models] | [ ] | 0/4 |
197
- | 3 | [Backend: Auth] | [ ] | 0/3 |
198
-
199
- ## AI Read Order
200
- 1. Read `Execution Rules`
201
- 2. Read `Progress Overview`
202
- 3. Read only the current phase
203
- 4. Use `References` and `Traceability IDs` before searching elsewhere
204
-
205
- ---
206
-
207
- ## Phase 1: [Phase Name]
208
- > **Dependency:** None (first phase)
209
- > **Goal:** [What must be complete at the end of this phase]
210
-
211
- - [ ] **Task 1.1: [Task Name]**
212
- - **Files:** `[path/file created or modified]`
213
- - **Description:** [What is done, briefly]
214
- - **References:** [`project-context/architecture.md#section` / `project-context/rules.md#section`]
215
- - **Traceability IDs:** [`FEAT-01` / `BR-01` / `API-01` / `DATA-01`]
216
- - **Acceptance Criteria:**
217
- - [ ] [Testable condition 1]
218
- - [ ] [Testable condition 2]
219
-
220
- - [ ] **Task 1.2: [Task Name]**
221
- - **Files:** `[path/file]`
222
- - **Description:** [Briefly what is done]
223
- - **Dependencies:** Task 1.1 must be complete first
224
- - **References:** [`project-context/schema.md#users`]
225
- - **Traceability IDs:** [`FEAT-01` / `DATA-01`]
226
- - **Acceptance Criteria:**
227
- - [ ] [Testable condition]
228
-
229
- ---
230
-
231
- ## Phase 2: [Phase Name]
232
- > **Dependency:** Phase 1 must be complete
233
- > **Goal:** [Phase goal]
234
-
235
- - [ ] **Task 2.1: [Task Name]**
236
- - **Files:** `[path/file]`
237
- - **Description:** [Brief]
238
- - **References:** [`project-context/api.md#auth`]
239
- - **Traceability IDs:** [`FEAT-01` / `API-01` / `NFR-02`]
240
- - **Acceptance Criteria:**
241
- - [ ] [Testable condition]
242
-
243
- ---
244
-
245
- ## Traceability Matrix
246
- | Requirement ID | Source | Covering Tasks |
247
- |----------------|--------|----------------|
248
- | FEAT-01 | `project-context/PRD.md` | `Task 1.1`, `Task 1.2`, `Task 2.1` |
249
- | BR-01 | `project-context/PRD.md` | `Task 1.1` |
250
- | API-01 | `project-context/api.md` | `Task 2.1` |
251
- | DATA-01 | `project-context/schema.md` | `Task 1.2` |
252
-
253
- ## Assumptions & Open Questions
254
- - [Assumption that affects planning granularity or order]
255
- - [Open question that may change future phases]
256
- ````
171
+ Adapt only sections that are applicable and preserve every required contract from the interview. Do not load the template during early discovery.
257
172
 
258
173
  ---
259
174
 
@@ -269,7 +184,7 @@ Wait for user confirmation before creating Task.md.
269
184
  - **Tasks MUST be derived from existing specs**. Do not brainstorm from scratch again.
270
185
  - Every task must have **testable acceptance criteria**, not just a description.
271
186
  - Mark **task dependencies** clearly. AI cannot skip tasks.
272
- - **TDD:** Implementation tasks are preceded by test tasks (N.1 write test, N.2 implement; N.2 depends on N.1).
187
+ - **Testing:** Task order follows the approved testing workflow in `rules.md`; test-first is required only when that policy requires it.
273
188
  - If the specs mention security controls, create explicit security tasks. Do not assume they "happen automatically."
274
189
  - Every task must have **Traceability IDs** that reference real upstream requirements or artifacts.
275
190
  - A **Traceability Matrix** is required for auditability.
@@ -0,0 +1,113 @@
1
+ # Task: [Project Name]
2
+
3
+ > **Total Phases:** [X] | **Total Tasks:** [Y] | **Last Updated:** [date]
4
+
5
+ ## Document Role
6
+ - **Source of Truth:** Execution plan derived from approved spec documents
7
+ - **Primary Owner:** `brainstorm-task`
8
+ - **Out of Scope:** New product scope, new schema/API decisions, and code quality review findings
9
+
10
+ ## Upstream Dependencies
11
+ | Topic | Canonical Source |
12
+ |------|------------------|
13
+ | Product scope | `project-context/PRD.md` |
14
+ | Technical structure | `project-context/architecture.md` |
15
+ | Data contract | `project-context/schema.md` |
16
+ | API contract | `project-context/api.md` |
17
+ | UI contract | `project-context/StyleGuide.md` |
18
+ | Coding rules | `project-context/rules.md` |
19
+
20
+ ## Execution Rules
21
+ - Work on tasks **one by one** in order within each phase.
22
+ - After each **phase** is complete, **STOP** and wait for user confirmation before the next phase.
23
+ - Update status `[ ]` to `[x]` when a task is complete.
24
+ - If a task is blocked, mark it `[~]` and note the reason.
25
+
26
+ ---
27
+
28
+ ## Progress Overview
29
+ | Phase | Name | Status | Progress |
30
+ |------|------|--------|----------|
31
+ | 1 | [Setup & Configuration] | [ ] | 0/3 |
32
+ | 2 | [Database & Models] | [ ] | 0/4 |
33
+ | 3 | [Backend: Auth] | [ ] | 0/3 |
34
+
35
+ ## AI Read Order
36
+ 1. Read `Execution Rules`
37
+ 2. Read `Progress Overview`
38
+ 3. Read only the current phase
39
+ 4. Use `References` and `Traceability IDs` before searching elsewhere
40
+
41
+ ---
42
+
43
+ ## Phase 1: [Phase Name]
44
+ > **Dependency:** None (first phase)
45
+ > **Goal:** [What must be complete at the end of this phase]
46
+
47
+ ### Phase Definition of Done
48
+ - [ ] Applicable acceptance criteria pass
49
+ - [ ] Required tests/build/type/lint checks pass
50
+ - [ ] Required security controls are verified
51
+ - [ ] Migration/backfill and failure recovery are verified when applicable
52
+ - [ ] Required logs/metrics/alerts are present when applicable
53
+ - [ ] Documentation and rollout notes are updated when applicable
54
+ - [ ] `spec-compliance` passes
55
+ - [ ] `code-review` passes
56
+
57
+ - [ ] **Task 1.1: [Task Name]**
58
+ - **Files:** `[path/file created or modified]`
59
+ - **Description:** [What is done, briefly]
60
+ - **References:** [`project-context/architecture.md#section` / `project-context/rules.md#section`]
61
+ - **Traceability IDs:** [`FEAT-01` / `BR-01` / `API-01` / `DATA-01`]
62
+ - **Acceptance Criteria:**
63
+ - [ ] [Testable condition 1]
64
+ - [ ] [Testable condition 2]
65
+
66
+ - [ ] **Task 1.2: [Task Name]**
67
+ - **Files:** `[path/file]`
68
+ - **Description:** [Briefly what is done]
69
+ - **Dependencies:** Task 1.1 must be complete first
70
+ - **References:** [`project-context/schema.md#users`]
71
+ - **Traceability IDs:** [`FEAT-01` / `DATA-01`]
72
+ - **Acceptance Criteria:**
73
+ - [ ] [Testable condition]
74
+
75
+ ---
76
+
77
+ ## Phase 2: [Phase Name]
78
+ > **Dependency:** Phase 1 must be complete
79
+ > **Goal:** [Phase goal]
80
+
81
+ ### Phase Definition of Done
82
+ - [ ] Applicable acceptance criteria pass
83
+ - [ ] Required tests/build/type/lint checks pass
84
+ - [ ] Required security controls are verified
85
+ - [ ] Migration/backfill and failure recovery are verified when applicable
86
+ - [ ] Required logs/metrics/alerts are present when applicable
87
+ - [ ] Documentation and rollout notes are updated when applicable
88
+ - [ ] `spec-compliance` passes
89
+ - [ ] `code-review` passes
90
+
91
+ - [ ] **Task 2.1: [Task Name]**
92
+ - **Files:** `[path/file]`
93
+ - **Description:** [Brief]
94
+ - **References:** [`project-context/api.md#auth`]
95
+ - **Traceability IDs:** [`FEAT-01` / `API-01` / `NFR-02`]
96
+ - **Acceptance Criteria:**
97
+ - [ ] [Testable condition]
98
+
99
+ ---
100
+
101
+ ## Traceability Matrix
102
+ | Requirement ID | Source | Covering Tasks |
103
+ |----------------|--------|----------------|
104
+ | FEAT-01 | `project-context/PRD.md` | `Task 1.1`, `Task 1.2`, `Task 2.1` |
105
+ | BR-01 | `project-context/PRD.md` | `Task 1.1` |
106
+ | API-01 | `project-context/api.md` | `Task 2.1` |
107
+ | DATA-01 | `project-context/schema.md` | `Task 1.2` |
108
+
109
+ ## Assumptions & Open Questions
110
+ - [Assumption that affects planning granularity or order]
111
+ - [Open question that may change future phases]
112
+
113
+ Repeat the `Phase Definition of Done` block for every generated phase, adapting items to the phase scope.