@xenonbyte/da-vinci-workflow 0.1.2 → 0.1.4
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.
- package/README.md +87 -24
- package/SKILL.md +151 -28
- package/docs/mode-use-cases.md +540 -0
- package/docs/workflow-examples.md +2 -2
- package/examples/greenfield-spec-markupflow/DA-VINCI.md +49 -0
- package/examples/greenfield-spec-markupflow/README.md +2 -0
- package/examples/greenfield-spec-markupflow/tasks.md +2 -0
- package/examples/greenfield-spec-markupflow/verification.md +1 -0
- package/package.json +1 -1
- package/references/artifact-templates.md +141 -0
- package/references/checkpoints.md +54 -2
- package/references/design-inputs.md +15 -4
- package/references/modes.md +8 -1
package/README.md
CHANGED
|
@@ -23,6 +23,19 @@ This workflow is intended for:
|
|
|
23
23
|
- redesign from existing code
|
|
24
24
|
- scoped feature delivery on an existing product
|
|
25
25
|
|
|
26
|
+
## Current release
|
|
27
|
+
|
|
28
|
+
Current npm release target:
|
|
29
|
+
|
|
30
|
+
- `@xenonbyte/da-vinci-workflow@0.1.4`
|
|
31
|
+
|
|
32
|
+
Release highlights:
|
|
33
|
+
|
|
34
|
+
- project-level visual contract support through `DA-VINCI.md`
|
|
35
|
+
- redesign-from-code now prefers redesign-slice specs over one oversized `ui-refresh/spec.md`
|
|
36
|
+
- Node-first install, uninstall, status, and asset validation commands
|
|
37
|
+
- repo-local forward-test example for a `greenfield-spec` workflow
|
|
38
|
+
|
|
26
39
|
## Supported workflow modes
|
|
27
40
|
|
|
28
41
|
Da Vinci V2 supports four modes.
|
|
@@ -49,36 +62,39 @@ Da Vinci runs in this order:
|
|
|
49
62
|
|
|
50
63
|
1. select the active mode
|
|
51
64
|
2. build the correct source artifacts
|
|
52
|
-
3.
|
|
53
|
-
4.
|
|
54
|
-
5.
|
|
55
|
-
6.
|
|
56
|
-
7.
|
|
57
|
-
8.
|
|
58
|
-
9.
|
|
59
|
-
10.
|
|
65
|
+
3. detect or generate `DA-VINCI.md` as the project visual contract
|
|
66
|
+
4. collect design inputs and register design sources
|
|
67
|
+
5. define or discover the project page map
|
|
68
|
+
6. create or update Pencil designs
|
|
69
|
+
7. bind implementation pages to Pencil pages
|
|
70
|
+
8. read Pencil design data through MCP
|
|
71
|
+
9. generate implementation tasks
|
|
72
|
+
10. implement code from requirements plus Pencil data
|
|
73
|
+
11. verify requirement drift and design drift
|
|
60
74
|
|
|
61
75
|
## Default artifacts
|
|
62
76
|
|
|
63
77
|
Depending on the mode, the workflow may use these artifacts:
|
|
64
78
|
|
|
65
|
-
-
|
|
66
|
-
-
|
|
67
|
-
- `
|
|
68
|
-
-
|
|
69
|
-
-
|
|
70
|
-
-
|
|
71
|
-
-
|
|
72
|
-
-
|
|
73
|
-
-
|
|
74
|
-
-
|
|
75
|
-
-
|
|
76
|
-
-
|
|
79
|
+
- `.da-vinci/changes/<change-id>/brainstorm.md`
|
|
80
|
+
- `.da-vinci/project-inventory.md`
|
|
81
|
+
- `DA-VINCI.md`
|
|
82
|
+
- `.da-vinci/changes/<change-id>/design-brief.md`
|
|
83
|
+
- `.da-vinci/design-registry.md`
|
|
84
|
+
- `.da-vinci/page-map.md`
|
|
85
|
+
- `.da-vinci/changes/<change-id>/proposal.md`
|
|
86
|
+
- `.da-vinci/changes/<change-id>/specs/<capability>/spec.md`
|
|
87
|
+
- `.da-vinci/changes/<change-id>/design.md`
|
|
88
|
+
- `.da-vinci/changes/<change-id>/pencil-design.md`
|
|
89
|
+
- `.da-vinci/changes/<change-id>/pencil-bindings.md`
|
|
90
|
+
- `.da-vinci/changes/<change-id>/tasks.md`
|
|
91
|
+
- `.da-vinci/changes/<change-id>/verification.md`
|
|
77
92
|
|
|
78
93
|
### Artifact intent
|
|
79
94
|
|
|
80
95
|
- `brainstorm.md`: raw ideas before specs are stable
|
|
81
96
|
- `project-inventory.md`: current routes, pages, and UI patterns from an existing codebase
|
|
97
|
+
- `DA-VINCI.md`: project-level visual contract for theme, palette, typography direction, component tone, and page-consistency rules
|
|
82
98
|
- `design-brief.md`: form factor, style, density, brand constraints, and layout preferences
|
|
83
99
|
- `design-registry.md`: project-level `.pen` source inventory
|
|
84
100
|
- `page-map.md`: canonical page list and page responsibilities
|
|
@@ -90,6 +106,44 @@ Depending on the mode, the workflow may use these artifacts:
|
|
|
90
106
|
- `tasks.md`: implementation order and task groups
|
|
91
107
|
- `verification.md`: requirement coverage, design coverage, and drift findings
|
|
92
108
|
|
|
109
|
+
### Spec granularity rule
|
|
110
|
+
|
|
111
|
+
Use specs as capability or redesign-slice boundaries, not as page counters.
|
|
112
|
+
|
|
113
|
+
For broad `redesign-from-code` work, prefer multiple `specs/<slice>/spec.md` files over one oversized `ui-refresh/spec.md`.
|
|
114
|
+
|
|
115
|
+
## Artifact placement
|
|
116
|
+
|
|
117
|
+
Recommended project layout:
|
|
118
|
+
|
|
119
|
+
```text
|
|
120
|
+
project/
|
|
121
|
+
├── DA-VINCI.md
|
|
122
|
+
└── .da-vinci/
|
|
123
|
+
├── project-inventory.md
|
|
124
|
+
├── design-registry.md
|
|
125
|
+
├── page-map.md
|
|
126
|
+
└── changes/
|
|
127
|
+
└── <change-id>/
|
|
128
|
+
├── brainstorm.md
|
|
129
|
+
├── design-brief.md
|
|
130
|
+
├── proposal.md
|
|
131
|
+
├── design.md
|
|
132
|
+
├── pencil-design.md
|
|
133
|
+
├── pencil-bindings.md
|
|
134
|
+
├── tasks.md
|
|
135
|
+
├── verification.md
|
|
136
|
+
└── specs/
|
|
137
|
+
└── <capability>/spec.md
|
|
138
|
+
```
|
|
139
|
+
|
|
140
|
+
Placement rules:
|
|
141
|
+
|
|
142
|
+
- keep `DA-VINCI.md` at the project root
|
|
143
|
+
- keep project-wide workflow files in `.da-vinci/`
|
|
144
|
+
- keep change-specific workflow files in `.da-vinci/changes/<change-id>/`
|
|
145
|
+
- do not scatter `proposal.md`, `tasks.md`, and `verification.md` across the project root
|
|
146
|
+
|
|
93
147
|
## Checkpoints
|
|
94
148
|
|
|
95
149
|
Da Vinci uses these checkpoints:
|
|
@@ -137,6 +191,7 @@ Da Vinci treats Pencil as a structured design source, not as a screenshot source
|
|
|
137
191
|
|
|
138
192
|
Rules:
|
|
139
193
|
|
|
194
|
+
- `DA-VINCI.md` is the project-level visual contract for cross-page consistency
|
|
140
195
|
- `design-registry.md` is the project-level inventory of `.pen` sources
|
|
141
196
|
- `page-map.md` is the source of truth for implementation pages
|
|
142
197
|
- `pencil-bindings.md` is the source of truth for implementation page -> Pencil page mapping
|
|
@@ -158,6 +213,7 @@ When neither mappings nor usable design sources exist:
|
|
|
158
213
|
|
|
159
214
|
Before generating Pencil designs for a greenfield project, Da Vinci should collect or infer:
|
|
160
215
|
|
|
216
|
+
- whether `DA-VINCI.md` already exists
|
|
161
217
|
- product form factor
|
|
162
218
|
- visual tone
|
|
163
219
|
- density
|
|
@@ -166,10 +222,16 @@ Before generating Pencil designs for a greenfield project, Da Vinci should colle
|
|
|
166
222
|
|
|
167
223
|
Preferred inference order:
|
|
168
224
|
|
|
169
|
-
1.
|
|
170
|
-
2.
|
|
171
|
-
3.
|
|
172
|
-
4.
|
|
225
|
+
1. `DA-VINCI.md`
|
|
226
|
+
2. existing artifacts
|
|
227
|
+
3. project-local signals
|
|
228
|
+
4. explicit user answers
|
|
229
|
+
5. short clarification questions
|
|
230
|
+
|
|
231
|
+
If `DA-VINCI.md` does not exist:
|
|
232
|
+
|
|
233
|
+
- generate it from stable user preferences, existing project signals, or inferred defaults
|
|
234
|
+
- save it before generating many project pages, so later pages do not drift stylistically
|
|
173
235
|
|
|
174
236
|
## Installation
|
|
175
237
|
|
|
@@ -274,6 +336,7 @@ $da-vinci use feature-change to add a billing page, generate the relevant Pencil
|
|
|
274
336
|
See:
|
|
275
337
|
|
|
276
338
|
- `docs/workflow-examples.md`
|
|
339
|
+
- `docs/mode-use-cases.md`
|
|
277
340
|
|
|
278
341
|
## Repository layout
|
|
279
342
|
|
package/SKILL.md
CHANGED
|
@@ -27,9 +27,19 @@ That means:
|
|
|
27
27
|
- treat checkpoints as internal execution guards, not approval steps
|
|
28
28
|
- stop only when a true blocking condition exists
|
|
29
29
|
|
|
30
|
+
Treat execution intent as `full-delivery` by default when the user asks to:
|
|
31
|
+
|
|
32
|
+
- complete development
|
|
33
|
+
- implement the generated design
|
|
34
|
+
- redesign the whole product UI
|
|
35
|
+
- finish the project or finish the refresh
|
|
36
|
+
|
|
37
|
+
Do not stop at `tasks.md` in those cases.
|
|
38
|
+
|
|
30
39
|
Continue automatically through:
|
|
31
40
|
|
|
32
41
|
- mode selection
|
|
42
|
+
- project visual-contract detection
|
|
33
43
|
- requirement breakdown
|
|
34
44
|
- page mapping
|
|
35
45
|
- design input collection
|
|
@@ -40,6 +50,14 @@ Continue automatically through:
|
|
|
40
50
|
- implementation
|
|
41
51
|
- verification
|
|
42
52
|
|
|
53
|
+
If `tasks.md` exists and the active request is `full-delivery`:
|
|
54
|
+
|
|
55
|
+
- treat `task checkpoint` as the handoff into implementation, not as an end state
|
|
56
|
+
- start Task Group 1 automatically after a `PASS`
|
|
57
|
+
- start Task Group 1 automatically after a `WARN` unless the warning changes the truth of behavior, source mapping, or permissions
|
|
58
|
+
- do not emit "next recommended step: start Task Group 1" as a terminal outcome
|
|
59
|
+
- instead continue into code changes and report progress by task group
|
|
60
|
+
|
|
43
61
|
Stop and ask only when:
|
|
44
62
|
|
|
45
63
|
- the user explicitly interrupts
|
|
@@ -48,6 +66,14 @@ Stop and ask only when:
|
|
|
48
66
|
- source artifacts conflict badly enough that continuing would guess the truth
|
|
49
67
|
- a destructive action would change the project baseline significantly
|
|
50
68
|
|
|
69
|
+
Do not stop merely because:
|
|
70
|
+
|
|
71
|
+
- some pages are still out of scope
|
|
72
|
+
- a future follow-up spec may be needed for untouched behavior
|
|
73
|
+
- a design source should also be saved or exported for better traceability
|
|
74
|
+
|
|
75
|
+
Those are warnings unless they prevent safe implementation of the current in-scope work.
|
|
76
|
+
|
|
51
77
|
## Invocation Model
|
|
52
78
|
|
|
53
79
|
Canonical workflow name is `da-vinci`.
|
|
@@ -85,6 +111,11 @@ If the user does not specify a mode:
|
|
|
85
111
|
|
|
86
112
|
Before generating new Pencil designs for a greenfield project, collect or infer:
|
|
87
113
|
|
|
114
|
+
0. project visual contract
|
|
115
|
+
- detect whether `DA-VINCI.md` already exists
|
|
116
|
+
- if it exists, treat it as the visual baseline for future pages
|
|
117
|
+
- if it does not exist, generate it from stable user preferences, existing project signals, or inferred defaults before broad Pencil page generation
|
|
118
|
+
|
|
88
119
|
1. product form factor
|
|
89
120
|
- desktop software
|
|
90
121
|
- web app
|
|
@@ -105,10 +136,11 @@ Before generating new Pencil designs for a greenfield project, collect or infer:
|
|
|
105
136
|
|
|
106
137
|
Use this priority order:
|
|
107
138
|
|
|
108
|
-
1.
|
|
109
|
-
2.
|
|
110
|
-
3.
|
|
111
|
-
4.
|
|
139
|
+
1. `DA-VINCI.md`
|
|
140
|
+
2. existing workflow artifacts
|
|
141
|
+
3. project-local config or project codebase signals
|
|
142
|
+
4. explicit user answers
|
|
143
|
+
5. short clarification questions
|
|
112
144
|
|
|
113
145
|
Do not repeatedly ask for inputs that are already stable in the artifacts.
|
|
114
146
|
|
|
@@ -118,14 +150,21 @@ Run the workflow in this order:
|
|
|
118
150
|
|
|
119
151
|
1. Select the active mode
|
|
120
152
|
2. Build the correct source artifacts for that mode
|
|
121
|
-
3.
|
|
122
|
-
4.
|
|
123
|
-
5.
|
|
124
|
-
6.
|
|
125
|
-
7.
|
|
126
|
-
8.
|
|
127
|
-
9.
|
|
128
|
-
10.
|
|
153
|
+
3. Detect or generate `DA-VINCI.md` as the project visual contract
|
|
154
|
+
4. Collect design inputs and register available design sources
|
|
155
|
+
5. Define or discover the project page map
|
|
156
|
+
6. Create or update Pencil designs for the required pages
|
|
157
|
+
7. Bind implementation pages to Pencil pages
|
|
158
|
+
8. Read Pencil design data through MCP
|
|
159
|
+
9. Generate implementation tasks
|
|
160
|
+
10. Implement code from requirements plus Pencil data
|
|
161
|
+
11. Verify behavior drift and design drift before closing the change
|
|
162
|
+
|
|
163
|
+
Default completion rule:
|
|
164
|
+
|
|
165
|
+
- if the request is `plan-only`, stop after planning artifacts
|
|
166
|
+
- if the request is `design-only`, stop after design artifacts and bindings
|
|
167
|
+
- otherwise assume `full-delivery` and continue through implementation and verification
|
|
129
168
|
|
|
130
169
|
## Load References On Demand
|
|
131
170
|
|
|
@@ -143,18 +182,19 @@ Load only the reference that matches the current step:
|
|
|
143
182
|
|
|
144
183
|
Use these artifacts unless the project defines a different schema:
|
|
145
184
|
|
|
146
|
-
1.
|
|
147
|
-
2.
|
|
148
|
-
3. `
|
|
149
|
-
4.
|
|
150
|
-
5.
|
|
151
|
-
6.
|
|
152
|
-
7.
|
|
153
|
-
8.
|
|
154
|
-
9.
|
|
155
|
-
10.
|
|
156
|
-
11.
|
|
157
|
-
12.
|
|
185
|
+
1. `.da-vinci/changes/<change-id>/brainstorm.md`
|
|
186
|
+
2. `.da-vinci/project-inventory.md`
|
|
187
|
+
3. `DA-VINCI.md`
|
|
188
|
+
4. `.da-vinci/changes/<change-id>/design-brief.md`
|
|
189
|
+
5. `.da-vinci/design-registry.md`
|
|
190
|
+
6. `.da-vinci/page-map.md`
|
|
191
|
+
7. `.da-vinci/changes/<change-id>/proposal.md`
|
|
192
|
+
8. `.da-vinci/changes/<change-id>/specs/<capability>/spec.md`
|
|
193
|
+
9. `.da-vinci/changes/<change-id>/design.md`
|
|
194
|
+
10. `.da-vinci/changes/<change-id>/pencil-design.md`
|
|
195
|
+
11. `.da-vinci/changes/<change-id>/pencil-bindings.md`
|
|
196
|
+
12. `.da-vinci/changes/<change-id>/tasks.md`
|
|
197
|
+
13. `.da-vinci/changes/<change-id>/verification.md`
|
|
158
198
|
|
|
159
199
|
Not every mode requires every artifact.
|
|
160
200
|
|
|
@@ -177,6 +217,7 @@ Optional artifacts:
|
|
|
177
217
|
|
|
178
218
|
- `brainstorm.md`: raw ideas, tensions, themes, and synthesis notes before specs are stable
|
|
179
219
|
- `project-inventory.md`: discovered routes, pages, modules, and current UI patterns from an existing codebase
|
|
220
|
+
- `DA-VINCI.md`: project-level visual contract for theme, color system, surface treatment, typography direction, and cross-page style rules
|
|
180
221
|
- `design-brief.md`: form factor, visual direction, density, brand constraints, and UI preferences
|
|
181
222
|
- `design-registry.md`: project-level `.pen` file inventory and active design sources
|
|
182
223
|
- `page-map.md`: canonical page list, page responsibilities, route mapping, and page states
|
|
@@ -188,25 +229,59 @@ Optional artifacts:
|
|
|
188
229
|
- `tasks.md`: implementation order and deliverable task groups
|
|
189
230
|
- `verification.md`: requirement coverage, Pencil coverage, and drift findings
|
|
190
231
|
|
|
232
|
+
## Artifact Placement
|
|
233
|
+
|
|
234
|
+
Use this placement model inside the target project:
|
|
235
|
+
|
|
236
|
+
### Project root
|
|
237
|
+
|
|
238
|
+
- `DA-VINCI.md`
|
|
239
|
+
|
|
240
|
+
Keep this file at the project root so the visual contract is easy to discover and reuse.
|
|
241
|
+
|
|
242
|
+
### Project-level workflow directory
|
|
243
|
+
|
|
244
|
+
- `.da-vinci/project-inventory.md`
|
|
245
|
+
- `.da-vinci/design-registry.md`
|
|
246
|
+
- `.da-vinci/page-map.md`
|
|
247
|
+
|
|
248
|
+
These files describe project-wide facts that can outlive any one change.
|
|
249
|
+
|
|
250
|
+
### Change-level workflow directory
|
|
251
|
+
|
|
252
|
+
- `.da-vinci/changes/<change-id>/brainstorm.md`
|
|
253
|
+
- `.da-vinci/changes/<change-id>/design-brief.md`
|
|
254
|
+
- `.da-vinci/changes/<change-id>/proposal.md`
|
|
255
|
+
- `.da-vinci/changes/<change-id>/design.md`
|
|
256
|
+
- `.da-vinci/changes/<change-id>/pencil-design.md`
|
|
257
|
+
- `.da-vinci/changes/<change-id>/pencil-bindings.md`
|
|
258
|
+
- `.da-vinci/changes/<change-id>/tasks.md`
|
|
259
|
+
- `.da-vinci/changes/<change-id>/verification.md`
|
|
260
|
+
- `.da-vinci/changes/<change-id>/specs/<capability>/spec.md`
|
|
261
|
+
|
|
262
|
+
These files belong to one concrete delivery effort and should not clutter the project root.
|
|
263
|
+
|
|
191
264
|
## Mode-Specific Artifact Flow
|
|
192
265
|
|
|
193
266
|
Use these minimum flows:
|
|
194
267
|
|
|
195
268
|
### `greenfield-spec`
|
|
196
269
|
|
|
197
|
-
`design-brief` ->
|
|
270
|
+
`DA-VINCI` -> `.da-vinci/changes/<change-id>/design-brief` -> `.da-vinci/changes/<change-id>/proposal` -> `.da-vinci/changes/<change-id>/specs` -> `.da-vinci/page-map` -> `.da-vinci/design-registry` -> `.da-vinci/changes/<change-id>/design` -> `.da-vinci/changes/<change-id>/pencil-design` -> `.da-vinci/changes/<change-id>/pencil-bindings` -> `.da-vinci/changes/<change-id>/tasks` -> `.da-vinci/changes/<change-id>/verification`
|
|
198
271
|
|
|
199
272
|
### `greenfield-brainstorm`
|
|
200
273
|
|
|
201
|
-
|
|
274
|
+
`.da-vinci/changes/<change-id>/brainstorm` -> `DA-VINCI` -> `.da-vinci/changes/<change-id>/design-brief` -> `.da-vinci/changes/<change-id>/proposal` -> `.da-vinci/changes/<change-id>/specs` -> `.da-vinci/page-map` -> `.da-vinci/design-registry` -> `.da-vinci/changes/<change-id>/design` -> `.da-vinci/changes/<change-id>/pencil-design` -> `.da-vinci/changes/<change-id>/pencil-bindings` -> `.da-vinci/changes/<change-id>/tasks` -> `.da-vinci/changes/<change-id>/verification`
|
|
202
275
|
|
|
203
276
|
### `redesign-from-code`
|
|
204
277
|
|
|
205
|
-
|
|
278
|
+
`.da-vinci/project-inventory` -> `DA-VINCI` -> `.da-vinci/design-registry` -> `.da-vinci/changes/<change-id>/proposal` -> `.da-vinci/changes/<change-id>/specs` -> `.da-vinci/page-map` -> `.da-vinci/changes/<change-id>/design` -> `.da-vinci/changes/<change-id>/pencil-design` -> `.da-vinci/changes/<change-id>/pencil-bindings` -> `.da-vinci/changes/<change-id>/tasks` -> `.da-vinci/changes/<change-id>/verification`
|
|
279
|
+
|
|
280
|
+
For broad refreshes, treat `.da-vinci/changes/<change-id>/specs/` as a redesign-slice directory, not as a single-file location.
|
|
206
281
|
|
|
207
282
|
### `feature-change`
|
|
208
283
|
|
|
209
|
-
|
|
284
|
+
`.da-vinci/changes/<change-id>/proposal` -> `.da-vinci/changes/<change-id>/specs` -> `.da-vinci/page-map` for affected pages -> `DA-VINCI` -> `.da-vinci/design-registry` -> `.da-vinci/changes/<change-id>/design` -> `.da-vinci/changes/<change-id>/pencil-design` delta -> `.da-vinci/changes/<change-id>/pencil-bindings` delta -> `.da-vinci/changes/<change-id>/tasks` -> `.da-vinci/changes/<change-id>/verification`
|
|
210
285
|
|
|
211
286
|
## Requirement Breakdown Rules
|
|
212
287
|
|
|
@@ -227,16 +302,63 @@ If the active mode is `redesign-from-code`:
|
|
|
227
302
|
|
|
228
303
|
- inventory current routes, pages, and modules before redefining page structure
|
|
229
304
|
- distinguish preserved behavior from replaced presentation
|
|
305
|
+
- partition specs by redesign slice when one oversized `ui-refresh` spec would hide important implementation boundaries
|
|
306
|
+
|
|
307
|
+
## Spec Partitioning Rules
|
|
308
|
+
|
|
309
|
+
Do not default to one oversized `ui-refresh` spec for broad redesign work.
|
|
310
|
+
|
|
311
|
+
For `redesign-from-code`:
|
|
312
|
+
|
|
313
|
+
- keep one overall `proposal.md`
|
|
314
|
+
- keep one project-level `DA-VINCI.md`
|
|
315
|
+
- keep one project-level `project-inventory.md`
|
|
316
|
+
- keep one project-level `design-registry.md`
|
|
317
|
+
- keep one project-level `page-map.md`
|
|
318
|
+
- split `specs/` by redesign slice when the refresh is broad
|
|
319
|
+
|
|
320
|
+
Preferred redesign slices:
|
|
321
|
+
|
|
322
|
+
- `shared-shell`
|
|
323
|
+
- `core-pages`
|
|
324
|
+
- `settings-and-secondary`
|
|
325
|
+
- `admin-or-restricted`
|
|
326
|
+
- `reference-gap-pages`
|
|
327
|
+
|
|
328
|
+
Split broad redesign work into multiple spec slices when one or more of these are true:
|
|
329
|
+
|
|
330
|
+
- the refresh covers more than five canonical pages
|
|
331
|
+
- the refresh spans more than two top-level route groups or page families
|
|
332
|
+
- the redesign includes both shared-shell changes and page-content changes
|
|
333
|
+
- prior HTML or Pencil references cover only part of the product surface
|
|
334
|
+
- different page groups carry different layout, density, or access constraints
|
|
335
|
+
|
|
336
|
+
One redesign spec is acceptable when the refresh is mostly cosmetic, narrow, or limited to a small product surface.
|
|
337
|
+
|
|
338
|
+
Do not split page-by-page unless the product is unusually fragmented. Prefer implementable redesign slices over raw page counts.
|
|
230
339
|
|
|
231
340
|
## Design Source Rules
|
|
232
341
|
|
|
233
342
|
Use `design-registry.md` as the project-level inventory of `.pen` sources.
|
|
234
343
|
|
|
344
|
+
Use `DA-VINCI.md` as the project-level visual source of truth for:
|
|
345
|
+
|
|
346
|
+
- theme and palette
|
|
347
|
+
- background and surface treatment
|
|
348
|
+
- typography direction
|
|
349
|
+
- component tone
|
|
350
|
+
- rules for cross-page consistency
|
|
351
|
+
|
|
235
352
|
When a relevant mapping already exists:
|
|
236
353
|
|
|
237
354
|
- iterate on the mapped Pencil source
|
|
238
355
|
- do not create a new design baseline unless there is a reason
|
|
239
356
|
|
|
357
|
+
When `DA-VINCI.md` already exists:
|
|
358
|
+
|
|
359
|
+
- use it as the baseline visual contract
|
|
360
|
+
- do not regenerate visual direction from scratch unless the change explicitly rebrands or resets the product style
|
|
361
|
+
|
|
240
362
|
When page-to-Pencil bindings already exist:
|
|
241
363
|
|
|
242
364
|
- update the mapped Pencil page for the affected implementation page
|
|
@@ -253,6 +375,7 @@ When neither mappings nor usable design sources exist:
|
|
|
253
375
|
|
|
254
376
|
- state that the project is entering baseline reconstruction
|
|
255
377
|
- create a new Pencil baseline from the current local source of truth
|
|
378
|
+
- generate `DA-VINCI.md` from inferred or user-provided design rules before generating many unrelated pages
|
|
256
379
|
|
|
257
380
|
If the request is too vague to design or implement safely, ask a short clarification question before generating artifacts.
|
|
258
381
|
|