@hegemonart/get-design-done 1.28.0 → 1.28.5
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/.claude-plugin/marketplace.json +2 -2
- package/.claude-plugin/plugin.json +1 -1
- package/CHANGELOG.md +78 -0
- package/SKILL.md +1 -1
- package/hooks/gdd-decision-injector.js +149 -3
- package/package.json +1 -1
- package/reference/adr-format.md +96 -0
- package/reference/apply-reflections-procedure.md +68 -0
- package/reference/architecture-vocabulary.md +102 -0
- package/reference/cache-policy.md +126 -0
- package/reference/compare-rubric.md +171 -0
- package/reference/connections-onboarding.md +417 -0
- package/reference/context-md-format.md +106 -0
- package/reference/darkmode-audit-procedure.md +258 -0
- package/reference/debug-feedback-loops.md +119 -0
- package/reference/design-procedure.md +304 -0
- package/reference/discover-procedure.md +204 -0
- package/reference/explore-procedure.md +267 -0
- package/reference/health-mcp-detection.md +44 -0
- package/reference/health-skill-length-report.md +69 -0
- package/reference/heuristics.md +84 -0
- package/reference/milestone-completeness-rubric.md +87 -0
- package/reference/peer-cli-protocol.md +161 -0
- package/reference/plan-procedure.md +278 -0
- package/reference/registry.json +169 -1
- package/reference/registry.schema.json +1 -1
- package/reference/router-rules.md +84 -0
- package/reference/scan-procedure.md +731 -0
- package/reference/shared-preamble.md +78 -6
- package/reference/skill-authoring-contract.md +128 -0
- package/reference/start-procedure.md +115 -0
- package/reference/style-doc-procedure.md +150 -0
- package/reference/threat-modeling.md +101 -0
- package/reference/verify-procedure.md +512 -0
- package/scripts/validate-skill-length.cjs +283 -0
- package/skills/add-backlog/SKILL.md +1 -0
- package/skills/analyze-dependencies/SKILL.md +33 -122
- package/skills/apply-reflections/SKILL.md +1 -40
- package/skills/audit/SKILL.md +3 -1
- package/skills/bandit-status/SKILL.md +31 -66
- package/skills/benchmark/SKILL.md +15 -55
- package/skills/brief/SKILL.md +12 -1
- package/skills/cache-manager/SKILL.md +3 -57
- package/skills/check-update/SKILL.md +38 -75
- package/skills/compare/SKILL.md +29 -269
- package/skills/complete-cycle/SKILL.md +1 -1
- package/skills/connections/SKILL.md +21 -427
- package/skills/continue/SKILL.md +1 -0
- package/skills/darkmode/SKILL.md +32 -287
- package/skills/debug/SKILL.md +11 -8
- package/skills/design/SKILL.md +27 -245
- package/skills/discover/SKILL.md +26 -133
- package/skills/discuss/SKILL.md +18 -2
- package/skills/explore/SKILL.md +40 -205
- package/skills/fast/SKILL.md +1 -0
- package/skills/figma-write/SKILL.md +2 -2
- package/skills/health/SKILL.md +11 -33
- package/skills/help/SKILL.md +1 -0
- package/skills/list-assumptions/SKILL.md +1 -0
- package/skills/map/SKILL.md +8 -31
- package/skills/new-cycle/SKILL.md +3 -1
- package/skills/next/SKILL.md +1 -0
- package/skills/note/SKILL.md +1 -0
- package/skills/optimize/SKILL.md +21 -44
- package/skills/pause/SKILL.md +1 -0
- package/skills/peer-cli-add/SKILL.md +26 -108
- package/skills/peer-cli-customize/SKILL.md +22 -42
- package/skills/peers/SKILL.md +33 -57
- package/skills/plan/SKILL.md +33 -220
- package/skills/plant-seed/SKILL.md +1 -0
- package/skills/pr-branch/SKILL.md +1 -0
- package/skills/progress/SKILL.md +1 -7
- package/skills/quality-gate/SKILL.md +34 -166
- package/skills/quick/SKILL.md +1 -0
- package/skills/reapply-patches/SKILL.md +1 -0
- package/skills/recall/SKILL.md +1 -0
- package/skills/resume/SKILL.md +1 -0
- package/skills/review-backlog/SKILL.md +1 -0
- package/skills/router/SKILL.md +3 -59
- package/skills/scan/SKILL.md +36 -675
- package/skills/settings/SKILL.md +1 -0
- package/skills/ship/SKILL.md +1 -0
- package/skills/sketch/SKILL.md +1 -1
- package/skills/sketch-wrap-up/SKILL.md +13 -54
- package/skills/spike/SKILL.md +1 -1
- package/skills/spike-wrap-up/SKILL.md +12 -46
- package/skills/start/SKILL.md +13 -112
- package/skills/stats/SKILL.md +1 -0
- package/skills/style/SKILL.md +18 -140
- package/skills/synthesize/SKILL.md +1 -0
- package/skills/timeline/SKILL.md +1 -0
- package/skills/todo/SKILL.md +1 -0
- package/skills/turn-closeout/SKILL.md +36 -56
- package/skills/undo/SKILL.md +1 -0
- package/skills/update/SKILL.md +1 -0
- package/skills/verify/SKILL.md +42 -457
- package/skills/warm-cache/SKILL.md +3 -35
- package/skills/zoom-out/SKILL.md +26 -0
package/skills/compare/SKILL.md
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: get-design-done:compare
|
|
3
|
-
description: "Compute delta between DESIGN.md baseline (from scan) and DESIGN-VERIFICATION.md result (from verify)
|
|
3
|
+
description: "Compute the delta between the `DESIGN.md` baseline (from scan) and the `DESIGN-VERIFICATION.md` result (from verify), reporting per-category score delta, anti-pattern delta (resolved vs new), must-have pass/fail change, and design drift (regressions without covering tasks in `DESIGN-PLAN.md`). Use after `verify` to measure whether a design pipeline cycle actually improved the design. Writes `.design/COMPARE-REPORT.md`."
|
|
4
4
|
argument-hint: ""
|
|
5
5
|
user-invocable: true
|
|
6
6
|
---
|
|
@@ -9,6 +9,8 @@ user-invocable: true
|
|
|
9
9
|
|
|
10
10
|
Standalone delta command. Computes the difference between the scan baseline (`DESIGN.md`) and the verification result (`DESIGN-VERIFICATION.md`), and flags design drift for any regression not covered by an explicit task in `DESIGN-PLAN.md`. Writes one artifact: `.design/COMPARE-REPORT.md`.
|
|
11
11
|
|
|
12
|
+
For the full step-by-step methodology (score parsing, set arithmetic for anti-patterns, drift-coverage map, screenshot-delta probe, and `COMPARE-REPORT.md` template), see `../../reference/compare-rubric.md`. For the cross-skill output discipline (artifact prefix, completion marker, MUST-NOT-write list, connection-probe pattern), see `../../reference/shared-preamble.md#output-contract-reminders` and `../../reference/shared-preamble.md#connection-handshake-summary`. For the underlying 0–10 category-scoring rubric the delta is computed against, see `../../reference/audit-scoring.md`.
|
|
13
|
+
|
|
12
14
|
---
|
|
13
15
|
|
|
14
16
|
## Scope
|
|
@@ -19,7 +21,7 @@ This command is **standalone** — not a pipeline stage:
|
|
|
19
21
|
- Does NOT require or implement a snapshot mechanism — multi-run history is deferred to V2-06.
|
|
20
22
|
- Does NOT mutate any pipeline artifact (`DESIGN.md`, `DESIGN-VERIFICATION.md`, `DESIGN-SUMMARY.md`, `DESIGN-CONTEXT.md`, `DESIGN-PLAN.md`, `.design/STATE.md`).
|
|
21
23
|
- Writes exactly ONE file: `.design/COMPARE-REPORT.md`.
|
|
22
|
-
- Output artifact prefix
|
|
24
|
+
- Output artifact prefix `COMPARE-REPORT` is distinct from the pipeline namespace (`DESIGN-*.md`). No naming conflict.
|
|
23
25
|
|
|
24
26
|
---
|
|
25
27
|
|
|
@@ -27,282 +29,43 @@ This command is **standalone** — not a pipeline stage:
|
|
|
27
29
|
|
|
28
30
|
Required files — abort if either is missing:
|
|
29
31
|
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
.design/DESIGN-VERIFICATION.md — result from verify
|
|
33
|
-
```
|
|
34
|
-
|
|
35
|
-
**Abort conditions:**
|
|
36
|
-
|
|
37
|
-
- If `.design/DESIGN.md` is missing:
|
|
38
|
-
> "No baseline found. Run /get-design-done scan first."
|
|
39
|
-
|
|
40
|
-
- If `.design/DESIGN-VERIFICATION.md` is missing:
|
|
41
|
-
> "No verification result found. Run /get-design-done verify first to produce DESIGN-VERIFICATION.md."
|
|
42
|
-
|
|
43
|
-
**Optional files** (graceful degradation if absent):
|
|
44
|
-
|
|
45
|
-
- `.design/DESIGN-CONTEXT.md` — used for must-have delta (COMP-03). If missing, skip the Must-Have Status section and emit note: "Must-have delta skipped: DESIGN-CONTEXT.md not found."
|
|
46
|
-
- `.design/DESIGN-PLAN.md` — used for drift detection (COMP-04). If missing, skip DRIFT flagging and emit note: "Drift detection skipped: no DESIGN-PLAN.md."
|
|
47
|
-
|
|
48
|
-
Confirm `.design/` directory exists. If absent, create it: `mkdir -p .design/`
|
|
49
|
-
|
|
50
|
-
### Probe Preview connection
|
|
51
|
-
|
|
52
|
-
Run at stage entry, after pre-flight checks:
|
|
53
|
-
|
|
54
|
-
```
|
|
55
|
-
Step P1 — ToolSearch check:
|
|
56
|
-
ToolSearch({ query: "Claude_Preview", max_results: 5 })
|
|
57
|
-
→ Empty result → preview: not_configured (skip Screenshot Delta section)
|
|
58
|
-
→ Non-empty result → proceed to Step P2
|
|
59
|
-
|
|
60
|
-
Step P2 — Live tool call:
|
|
61
|
-
call mcp__Claude_Preview__preview_list
|
|
62
|
-
→ Success → preview: available
|
|
63
|
-
→ Error → preview: unavailable
|
|
64
|
-
|
|
65
|
-
Write preview status to .design/STATE.md <connections>.
|
|
66
|
-
```
|
|
67
|
-
|
|
68
|
-
---
|
|
69
|
-
|
|
70
|
-
## Step 1: Parse Category Scores
|
|
71
|
-
|
|
72
|
-
**Extract baseline scores from `.design/DESIGN.md`:**
|
|
73
|
-
|
|
74
|
-
Locate the category score table. Expected format:
|
|
75
|
-
|
|
76
|
-
```
|
|
77
|
-
| Category | Score | Notes |
|
|
78
|
-
|----------|-------|-------|
|
|
79
|
-
| Accessibility | 6/10 | ... |
|
|
80
|
-
```
|
|
81
|
-
|
|
82
|
-
Parse each row: extract category name and numeric score (e.g., `6` from `6/10`).
|
|
83
|
-
|
|
84
|
-
Store as `baseline_scores` map: `{ "Accessibility": 6, "Visual Hierarchy": 5, ... }`
|
|
85
|
-
|
|
86
|
-
**Extract result scores from `.design/DESIGN-VERIFICATION.md`:**
|
|
87
|
-
|
|
88
|
-
Locate the category score table in the Phase 1 output section. Same format as above.
|
|
89
|
-
|
|
90
|
-
Store as `result_scores` map: `{ "Accessibility": 8, "Visual Hierarchy": 6, ... }`
|
|
91
|
-
|
|
92
|
-
**Normalize category names:**
|
|
93
|
-
- Strip leading/trailing whitespace
|
|
94
|
-
- Apply title-case normalization (e.g., `anti-patterns` → `Anti-Patterns`)
|
|
95
|
-
- Match categories case-insensitively between the two tables
|
|
96
|
-
|
|
97
|
-
**Unmatched categories:**
|
|
98
|
-
- If a category appears in `DESIGN.md` but not `DESIGN-VERIFICATION.md` → flag as `[UNMATCHED-BASELINE]` and exclude from score delta
|
|
99
|
-
- If a category appears in `DESIGN-VERIFICATION.md` but not `DESIGN.md` → flag as `[UNMATCHED-RESULT]` and exclude from score delta
|
|
100
|
-
- Report all unmatched categories in the Notes section of `COMPARE-REPORT.md`
|
|
101
|
-
- Do NOT silently paper over category name mismatches
|
|
102
|
-
|
|
103
|
-
---
|
|
104
|
-
|
|
105
|
-
## Step 2: Compute Score Delta (COMP-03)
|
|
106
|
-
|
|
107
|
-
For each matched category:
|
|
108
|
-
|
|
109
|
-
```
|
|
110
|
-
delta = result_scores[category] - baseline_scores[category]
|
|
111
|
-
```
|
|
112
|
-
|
|
113
|
-
Classify each delta:
|
|
114
|
-
- `improvement` — delta > 0
|
|
115
|
-
- `no_change` — delta == 0
|
|
116
|
-
- `regression` — delta < 0
|
|
117
|
-
|
|
118
|
-
Record per category:
|
|
119
|
-
- `category` — name
|
|
120
|
-
- `baseline` — numeric score from DESIGN.md
|
|
121
|
-
- `result` — numeric score from DESIGN-VERIFICATION.md
|
|
122
|
-
- `delta` — signed integer
|
|
123
|
-
- `classification` — improvement / no_change / regression
|
|
124
|
-
|
|
125
|
-
Collect all regressed categories for drift detection in Step 5.
|
|
126
|
-
|
|
127
|
-
---
|
|
128
|
-
|
|
129
|
-
## Step 3: Anti-Pattern Delta (COMP-03)
|
|
130
|
-
|
|
131
|
-
**Enumerate anti-patterns in DESIGN.md (baseline):**
|
|
132
|
-
|
|
133
|
-
Scan for entries identified by BAN-*, SLOP-*, or labeled as anti-patterns in DESIGN.md. Collect identifiers or descriptions as `baseline_anti_patterns` set.
|
|
134
|
-
|
|
135
|
-
**Enumerate anti-patterns in DESIGN-VERIFICATION.md (result):**
|
|
136
|
-
|
|
137
|
-
Same scan against DESIGN-VERIFICATION.md. Collect as `result_anti_patterns` set.
|
|
138
|
-
|
|
139
|
-
**Compute delta:**
|
|
140
|
-
|
|
141
|
-
```
|
|
142
|
-
resolved = baseline_anti_patterns - result_anti_patterns
|
|
143
|
-
(present in baseline, absent in result — fixed)
|
|
144
|
-
|
|
145
|
-
new = result_anti_patterns - baseline_anti_patterns
|
|
146
|
-
(absent in baseline, present in result — introduced)
|
|
32
|
+
- `.design/DESIGN.md` missing → `"No baseline found. Run /get-design-done scan first."`
|
|
33
|
+
- `.design/DESIGN-VERIFICATION.md` missing → `"No verification result found. Run /get-design-done verify first to produce DESIGN-VERIFICATION.md."`
|
|
147
34
|
|
|
148
|
-
|
|
149
|
-
(still present in both)
|
|
150
|
-
```
|
|
151
|
-
|
|
152
|
-
Report all three groups.
|
|
153
|
-
|
|
154
|
-
---
|
|
155
|
-
|
|
156
|
-
## Step 4: Must-Have Pass/Fail Change (COMP-03)
|
|
157
|
-
|
|
158
|
-
**Skip condition:** If `.design/DESIGN-CONTEXT.md` is absent → emit note and skip this section.
|
|
159
|
-
|
|
160
|
-
**Extract must-haves:**
|
|
161
|
-
- Read `.design/DESIGN-CONTEXT.md` `<must_haves>` section
|
|
162
|
-
- Enumerate each declared must-have (ID + description)
|
|
163
|
-
|
|
164
|
-
**Read pass/fail status from DESIGN-VERIFICATION.md:**
|
|
165
|
-
- Locate the must-have status table in the verification output
|
|
166
|
-
- For each must-have: record status as `pass`, `fail`, or `not-evaluated`
|
|
167
|
-
|
|
168
|
-
**Report:**
|
|
169
|
-
- Each must-have's current status (pass | fail | not-evaluated)
|
|
170
|
-
- If DESIGN.md contained a must-have status section from a prior verify, compute change (pass→fail, fail→pass); otherwise report current status only
|
|
171
|
-
|
|
172
|
-
---
|
|
173
|
-
|
|
174
|
-
## Step 5: Design Drift Detection (COMP-04)
|
|
175
|
-
|
|
176
|
-
**Skip condition:** If `.design/DESIGN-PLAN.md` is absent → emit note: "Drift detection skipped: DESIGN-PLAN.md not found."
|
|
177
|
-
|
|
178
|
-
**Coverage map:**
|
|
179
|
-
|
|
180
|
-
Read `.design/DESIGN-PLAN.md` and extract the `Type:` field from each task entry. Build a coverage map of which design categories have at least one task of matching type:
|
|
181
|
-
|
|
182
|
-
```
|
|
183
|
-
Example: Type: accessibility → covers "Accessibility" category
|
|
184
|
-
Type: color → covers "Color" category
|
|
185
|
-
Type: typography → covers "Typography" category
|
|
186
|
-
```
|
|
187
|
-
|
|
188
|
-
Category-to-Type matching is case-insensitive and normalized (e.g., `visual-hierarchy` matches `Visual Hierarchy`).
|
|
189
|
-
|
|
190
|
-
**Drift check:**
|
|
191
|
-
|
|
192
|
-
For each category classified as `regression` in Step 2:
|
|
193
|
-
|
|
194
|
-
```
|
|
195
|
-
If category NOT in coverage_map:
|
|
196
|
-
→ flag: DRIFT: [category] regressed from <baseline> to <result> without a design task of Type:<category>
|
|
197
|
-
```
|
|
198
|
-
|
|
199
|
-
If all regressed categories are covered by tasks → emit: "No drift detected. All regressed categories are covered by tasks in DESIGN-PLAN.md."
|
|
200
|
-
|
|
201
|
-
If no regressions in Step 2 → emit: "No drift detected. No score regressions found."
|
|
35
|
+
**Optional files (graceful degradation if absent):**
|
|
202
36
|
|
|
203
|
-
|
|
204
|
-
|
|
205
|
-
## Step 5B: Screenshot Delta (when preview: available)
|
|
206
|
-
|
|
207
|
-
Check `preview` status from STATE.md `<connections>` (written by the probe at stage entry).
|
|
208
|
-
|
|
209
|
-
**If `preview: available`:**
|
|
37
|
+
- `.design/DESIGN-CONTEXT.md` — used for must-have delta. If missing, skip the Must-Have Status section and emit note: `"Must-have delta skipped: DESIGN-CONTEXT.md not found."`
|
|
38
|
+
- `.design/DESIGN-PLAN.md` — used for drift detection. If missing, skip DRIFT flagging and emit note: `"Drift detection skipped: no DESIGN-PLAN.md."`
|
|
210
39
|
|
|
211
|
-
|
|
212
|
-
2. For each route inferred from DESIGN-PLAN.md tasks or `src/app/` / `src/pages/` file structure:
|
|
213
|
-
a. `preview_navigate` to route URL (e.g., `http://localhost:3000/<route>`)
|
|
214
|
-
b. `preview_screenshot` → save to `.design/screenshots/before/<route>.png` (pre-design baseline — only if a prior run's screenshot exists at this path) and `.design/screenshots/after/<route>.png` (current render)
|
|
215
|
-
c. Record the reference path (NOT base64) for embedding in `## Screenshot Delta` section of COMPARE-REPORT.md
|
|
216
|
-
3. Call `preview_stop` when all routes are captured.
|
|
40
|
+
Confirm `.design/` directory exists. If absent: `mkdir -p .design/`.
|
|
217
41
|
|
|
218
|
-
|
|
219
|
-
|
|
220
|
-
Emit exactly: `Screenshot delta skipped — preview not configured.` in the `## Screenshot Delta` section of COMPARE-REPORT.md.
|
|
42
|
+
Probe `preview` connection per `../../reference/shared-preamble.md#connection-handshake-summary` (ToolSearch → live call → STATE.md write). Result drives Step 5B (screenshot delta).
|
|
221
43
|
|
|
222
44
|
---
|
|
223
45
|
|
|
224
|
-
##
|
|
225
|
-
|
|
226
|
-
Output path: `.design/COMPARE-REPORT.md`
|
|
227
|
-
|
|
228
|
-
This file MUST NOT be written to any of the pipeline-reserved paths (`DESIGN.md`, `DESIGN-VERIFICATION.md`, `DESIGN-SUMMARY.md`, `DESIGN-CONTEXT.md`, `DESIGN-PLAN.md`).
|
|
229
|
-
|
|
230
|
-
**Report structure:**
|
|
231
|
-
|
|
232
|
-
```markdown
|
|
233
|
-
# Compare Report: Baseline vs Result
|
|
234
|
-
|
|
235
|
-
**Generated:** <ISO 8601 date>
|
|
236
|
-
**Baseline:** .design/DESIGN.md
|
|
237
|
-
**Result:** .design/DESIGN-VERIFICATION.md
|
|
238
|
-
|
|
239
|
-
## Score Delta by Category
|
|
240
|
-
|
|
241
|
-
| Category | Baseline | Result | Delta | Status |
|
|
242
|
-
|----------|----------|--------|-------|--------|
|
|
243
|
-
| Accessibility | 6 | 8 | +2 | improvement |
|
|
244
|
-
| Visual Hierarchy | 5 | 5 | 0 | no_change |
|
|
245
|
-
| Anti-Patterns | 4 | 3 | -1 | regression |
|
|
246
|
-
| ... | ... | ... | ... | ... |
|
|
247
|
-
|
|
248
|
-
## Anti-Pattern Delta
|
|
46
|
+
## Workflow
|
|
249
47
|
|
|
250
|
-
**
|
|
251
|
-
|
|
252
|
-
|
|
253
|
-
**
|
|
254
|
-
-
|
|
255
|
-
|
|
256
|
-
**
|
|
257
|
-
- <anti-pattern id or description>
|
|
258
|
-
|
|
259
|
-
## Must-Have Status
|
|
260
|
-
|
|
261
|
-
| Must-Have | Status |
|
|
262
|
-
|-----------|--------|
|
|
263
|
-
| <id / description> | pass |
|
|
264
|
-
| <id / description> | fail |
|
|
265
|
-
| <id / description> | not-evaluated |
|
|
266
|
-
|
|
267
|
-
## Design Drift
|
|
268
|
-
|
|
269
|
-
<One of the following:>
|
|
270
|
-
- "No drift detected. No score regressions found."
|
|
271
|
-
- "No drift detected. All regressed categories are covered by tasks in DESIGN-PLAN.md."
|
|
272
|
-
- "DRIFT: [Category] regressed from <baseline> to <result> without a design task of Type:<category>"
|
|
273
|
-
- "Drift detection skipped: DESIGN-PLAN.md not found."
|
|
274
|
-
|
|
275
|
-
## Screenshot Delta
|
|
276
|
-
|
|
277
|
-
<One of the following:>
|
|
278
|
-
- Per-route screenshot pairs (when preview: available): reference paths to .design/screenshots/before/<route>.png and .design/screenshots/after/<route>.png
|
|
279
|
-
- "Screenshot delta skipped — preview not configured."
|
|
280
|
-
|
|
281
|
-
## Notes
|
|
282
|
-
|
|
283
|
-
Scope: delta between two existing artifacts (.design/DESIGN.md → .design/DESIGN-VERIFICATION.md).
|
|
284
|
-
No snapshot mechanism — multi-snapshot compare deferred to V2-06.
|
|
285
|
-
This report does not modify DESIGN.md, DESIGN-VERIFICATION.md, or any other pipeline artifact.
|
|
286
|
-
<List any UNMATCHED-BASELINE or UNMATCHED-RESULT categories here, if any.>
|
|
287
|
-
<If must-have section was skipped: "Must-have delta skipped: DESIGN-CONTEXT.md not found.">
|
|
288
|
-
<If drift detection was skipped: "Drift detection skipped: DESIGN-PLAN.md not found.">
|
|
289
|
-
```
|
|
290
|
-
|
|
291
|
-
If a section has no items (e.g., no anti-patterns in baseline), write "None."
|
|
48
|
+
1. **Parse Category Scores** — extract baseline + result score tables, normalize names, flag unmatched. Detail: `../../reference/compare-rubric.md#step-1--parse-category-scores`.
|
|
49
|
+
2. **Compute Score Delta** — `delta = result - baseline`, classify (`improvement`/`no_change`/`regression`). Detail: `../../reference/compare-rubric.md#step-2--compute-score-delta-comp-03`.
|
|
50
|
+
3. **Anti-Pattern Delta** — set arithmetic on baseline vs result anti-pattern sets (resolved / new / unchanged). Detail: `../../reference/compare-rubric.md#step-3--anti-pattern-delta`.
|
|
51
|
+
4. **Must-Have Pass/Fail Change** — read `<must_haves>` from `DESIGN-CONTEXT.md`, status from `DESIGN-VERIFICATION.md`. Detail: `../../reference/compare-rubric.md#step-4--must-have-passfail-change`.
|
|
52
|
+
5. **Design Drift Detection (COMP-04)** — build coverage map from `DESIGN-PLAN.md` `Type:` fields; for each `regression` not in coverage_map → emit `DRIFT: [category] ...`. Detail: `../../reference/compare-rubric.md#step-5--design-drift-detection-comp-04`.
|
|
53
|
+
6. **Screenshot Delta (preview: available only)** — capture per-route screenshots to `.design/screenshots/{before,after}/<route>.png`. Detail: `../../reference/compare-rubric.md#step-5b--screenshot-delta-when-preview-available`.
|
|
54
|
+
7. **Write `.design/COMPARE-REPORT.md`** — full template at `../../reference/compare-rubric.md#step-6--compare-reportmd-template`.
|
|
292
55
|
|
|
293
56
|
---
|
|
294
57
|
|
|
295
58
|
## Constraints
|
|
296
59
|
|
|
297
|
-
This command MUST NOT:
|
|
60
|
+
This command MUST NOT (per `../../reference/shared-preamble.md#output-contract-reminders`):
|
|
61
|
+
|
|
62
|
+
- Write to `DESIGN.md`, `DESIGN-VERIFICATION.md`, `DESIGN-SUMMARY.md`, `DESIGN-CONTEXT.md`, `DESIGN-PLAN.md`, or `.design/STATE.md`.
|
|
63
|
+
- Require or implement a snapshot system (V2-06 deferred).
|
|
64
|
+
- Reinterpret or silently normalize category names that do not match between files — report mismatches in the Notes section.
|
|
65
|
+
- Invoke `design-auditor` or any other pipeline agent.
|
|
66
|
+
- Produce more than one output file: `.design/COMPARE-REPORT.md`.
|
|
298
67
|
|
|
299
|
-
|
|
300
|
-
- MUST NOT require or implement a snapshot system (V2-06 deferred)
|
|
301
|
-
- MUST abort with a clear actionable error message if `DESIGN-VERIFICATION.md` is missing (Pitfall 3)
|
|
302
|
-
- MUST abort with a clear actionable error message if `DESIGN.md` (baseline) is missing
|
|
303
|
-
- MUST produce exactly one output file: `.design/COMPARE-REPORT.md`
|
|
304
|
-
- MUST NOT reinterpret or silently normalize category names that do not match between files — report mismatches explicitly in the Notes section
|
|
305
|
-
- MUST NOT invoke design-auditor or any other pipeline agent
|
|
68
|
+
Must abort with a clear actionable error message if either input file (`DESIGN.md` baseline, `DESIGN-VERIFICATION.md` result) is missing.
|
|
306
69
|
|
|
307
70
|
---
|
|
308
71
|
|
|
@@ -314,9 +77,6 @@ After writing `.design/COMPARE-REPORT.md`, print a summary:
|
|
|
314
77
|
Compare complete. Improvements: N. Regressions: M. Drift flags: K. See .design/COMPARE-REPORT.md.
|
|
315
78
|
```
|
|
316
79
|
|
|
317
|
-
Where
|
|
318
|
-
- `N` = count of categories classified as `improvement`
|
|
319
|
-
- `M` = count of categories classified as `regression`
|
|
320
|
-
- `K` = count of DRIFT flags emitted (0 if drift detection was skipped or no regressions)
|
|
80
|
+
Where `N` = improvement count, `M` = regression count, `K` = DRIFT-flag count (0 if drift detection was skipped or no regressions). Do not summarize individual issues — the file contains the full detail.
|
|
321
81
|
|
|
322
|
-
|
|
82
|
+
## COMPARE COMPLETE
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: gdd-complete-cycle
|
|
3
|
-
description: "
|
|
3
|
+
description: "Cycle closeout command that marks CYCLES.md entry complete, archives pipeline artifacts to .design/archive/cycle-N/, generates EXPERIENCE.md, rebuilds the search index, and resets STATE.md. Use when a design cycle has shipped and you're ready to start the next one."
|
|
4
4
|
argument-hint: "[<retrospective note>]"
|
|
5
5
|
tools: Read, Write, Bash, AskUserQuestion
|
|
6
6
|
---
|