design guide: distill a Claude Design .dc.html at its default props, not the screenshots
The .dc.html prototypes are parameterized components whose data-props defaults encode the decisions the user landed on; the bundled screenshots are option-history (rejected options + stale iterations). Read the .dc.html at its defaults as the source of truth and confirm with the user — don't anchor the contract on screenshots. (Learned on the ten31 CRM: a screenshot-anchored read locked a plan onto a rejected card the .dc.html defaults had already superseded.)
This commit is contained in:
+19
-2
@@ -145,8 +145,25 @@ If the user used Figma or just talked through the look, that's fine — the same
|
|||||||
Turn the input — a cloud export, imported guidelines, or a reconciled inventory — into the
|
Turn the input — a cloud export, imported guidelines, or a reconciled inventory — into the
|
||||||
vendor-neutral contract. When distilling a Claude Design export, note it is **agent-mediated,
|
vendor-neutral contract. When distilling a Claude Design export, note it is **agent-mediated,
|
||||||
not a mechanical export**: Claude Design emits standalone HTML with *inline, hardcoded* CSS
|
not a mechanical export**: Claude Design emits standalone HTML with *inline, hardcoded* CSS
|
||||||
(no CSS custom properties, no DTCG tokens), so you read values out of the export/screenshots
|
(no CSS custom properties, no DTCG tokens), so you read values out of the export and author
|
||||||
and author the contract yourself. Worth a human glance the first few runs.
|
the contract yourself. Worth a human glance the first few runs.
|
||||||
|
|
||||||
|
**Read the `.dc.html` at its *default props* as the source of truth — the screenshots are
|
||||||
|
option-history, not the final.** A Claude Design bundle ships renderable `*.dc.html` prototypes
|
||||||
|
(React + a `support.js` dc-runtime + a `store.js` mock store) next to a `screenshots/` folder.
|
||||||
|
Each `.dc.html` is a **parameterized component**: a top-of-file `data-props` blob declares every
|
||||||
|
option the session explored as an `editor:"enum"` with a `default` (e.g. `lpFlag:
|
||||||
|
star|earmark|banner` default `"earmark"`; `variant: compact|roomy` default `"compact"`; plus
|
||||||
|
`font`, `theme`, …). **Those defaults are the decisions the user actually landed on.** The PNG
|
||||||
|
screenshots, by contrast, are captures of *assorted* prop combinations from across the session —
|
||||||
|
they include rejected options and stale iterations, so they are **not** a reliable "final".
|
||||||
|
Read the `.dc.html` render markup at its default props (the `<sc-for>`/`<sc-if>` blocks + the
|
||||||
|
`data-props` defaults), or render the file at defaults (needs a local server — `support.js`
|
||||||
|
expects `window.React` and `fetch`es), and trust *that* over any screenshot — then confirm with
|
||||||
|
the user, who is the authority on which options won. *(Hard-won on the ten31 CRM: a
|
||||||
|
screenshot-anchored read locked a whole build plan onto a rejected card — disposition badges, a
|
||||||
|
6-stage funnel, a star flag — that the `.dc.html` defaults had already superseded with the final
|
||||||
|
earmark + 4-stage-pipeline card. The files didn't lie; we'd read the wrong one.)*
|
||||||
|
|
||||||
1. **Preserve provenance.** Confirm the raw input is committed under `design/_imports/<date>/`.
|
1. **Preserve provenance.** Confirm the raw input is committed under `design/_imports/<date>/`.
|
||||||
2. **Author `design/DESIGN.md`** in the nine-section format coding agents parse: **Visual
|
2. **Author `design/DESIGN.md`** in the nine-section format coding agents parse: **Visual
|
||||||
|
|||||||
Reference in New Issue
Block a user