mirror of
https://github.com/adobe/skills.git
synced 2026-09-19 08:06:09 +08:00
33dd9037f3
* stardust: mobile-nav collapse pattern + drop before/after viewer
Two related changes to stardust:prototype landing together.
Mobile-nav collapse (additive):
- New stock CSS-only hamburger pattern auto-applied by Phase 5.5
when the Mobile-adapt audit refuses at 360px (overflow,
sub-11px nav font, or sub-10px nav gap).
- New audit conditions documented in skills/prototype/SKILL.md
§ Mobile-adapt audit; checked at runtime via the Playwright
snippet at skills/prototype/fixtures/mobile-nav-audit.mjs.
- Stock pattern doc at skills/prototype/reference/mobile-nav-collapse.md
carries the copy-pasteable HTML+CSS+JS, the ARIA checklist,
the post-injection source-order check, --no-hamburger opt-out,
and the alternative-pattern vocabulary.
- New data-nav-collapse="hamburger" attribute (v2.2 additive) on
<header> when the pattern is applied.
- Positive + negative fixtures verify the audit end-to-end.
Drop the per-page before/after viewer:
- Phase 3 (Compose the viewer) removed; the proposed file is
opened directly in the browser.
- Approval is now chat-only: "approve <slug>" or "approve".
- skills/prototype/reference/before-after-shell.md renamed to
proposed-file-shell.md and stripped to the proposed-file
contract only (viewer half, iframe resolution chain, action
buttons, and stash mechanic all dropped).
- state-machine.md prototypePath repointed at -proposed.html;
doctor.md D-104 pairs -proposed.html with -shape.md;
artifact-map.md drops the <slug>.html row; publish-sample.md
simplifies variant discovery (no more "is not the viewer"
disambiguation); evals/prototype-before-after rewritten to
expect a single proposed file.
BREAKING CHANGE: stardust:prototype no longer composes the
before/after viewer at stardust/prototypes/<slug>.html.
Anyone scripting on top of that file existing on disk should
switch to stardust/prototypes/<slug>-proposed.html (the
prototypePath in state.json now points there directly). The
approval gesture moves from the viewer's Approve button to a
chat-only "approve <slug>" / "approve".
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
* stardust: bump version to 0.5.0
Minor bump for the breaking change in 370a208 (drop before/after
viewer; chat-only approval). Pre-1.0 semver: minor bump signals
a breaking change without claiming API stability.
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
---------
Co-authored-by: Claude Opus 4.7 <noreply@anthropic.com>
2.7 KiB
2.7 KiB
Eval: incremental migrate (mixed approved + directed; idempotent re-run)
Setup
A project where extract + direct + partial prototype have completed:
stardust/state.jsonlists 5 pages:home,pricing—approved(with proposed.html)about,features,contact—directed(no prototype yet)
stardust/current/populated.- Project-root
PRODUCT.md,DESIGN.md,DESIGN.jsonexist. stardust/direction.mdhas an active direction.stardust/prototypes/has the two approved pages' files.- No
stardust/migrated/yet. - Impeccable installed.
User prompt (run 1)
"$stardust migrate"
Expected behavior (run 1)
The stardust:migrate skill is invoked. It:
- Runs the master setup.
- Verifies state contract: directed pages exist, DESIGN.md exists, active direction exists.
- Prints the plan (5 in-scope, partitioned by render path) with DESIGN.md and DESIGN.json shas.
- For
homeandpricing(path A): reads each<slug>-proposed.html, refreshes the:rootblock from latest DESIGN.md, applies content-preservation rules, validates, writes tostardust/migrated/. - For
about,features,contact(path B): renders from scratch usingcurrent/pages/<slug>.jsonIA + DESIGN.json components, applying the resolved direction. Validates and writes. - Maps slugs to nested
index.htmloutput paths:home→migrated/index.htmlpricing→migrated/pricing/index.htmlabout→migrated/about/index.htmlfeatures→migrated/features/index.htmlcontact→migrated/contact/index.html
- Each migrated page has
:root, data attributes, provenance (with designMd/designJson/sourceCurrent/sourceProposed shas), content preserved, internal links rewritten to root-relative paths, asset references rewritten to/assets/.... - Copies
stardust/current/assets/logo.<ext>and referenced media tostardust/migrated/assets/. - Writes
stardust/migrated/robots.txtandstardust/migrated/sitemap.xmlderived from the migrated inventory. - Updates
state.json: 5 pages move tomigrated, history entries appended. - Prints summary: 5 migrated, 0 unchanged, 0 failed, asset count, deploy hint.
User prompt (run 2 — immediately after run 1, no other changes)
"$stardust migrate"
Expected behavior (run 2 — idempotent re-run)
- Zero file writes. Every page is sha-compared against DESIGN.md, DESIGN.json, current page, and proposed file (where applicable); all match, so all 5 are skipped.
- Summary: 0 migrated, 5 unchanged (idempotent skip), 0 failed.
- state.json is NOT updated for the unchanged pages (no new history entries).