Skip to content

docs(genesis): lock Emerald docs path decisions into SPEC - #713

Merged
johnleider merged 2 commits into
masterfrom
docs/genesis-emerald-docs-path
Jul 30, 2026
Merged

docs(genesis): lock Emerald docs path decisions into SPEC#713
johnleider merged 2 commits into
masterfrom
docs/genesis-emerald-docs-path

Conversation

@johnleider

Copy link
Copy Markdown
Member

Summary

Locks the Emerald → Genesis docs-path decisions from the analysis handoff into the family contracts, without shipping Tier A components yet.

  • packages/genesis/SPEC.md: sync with shipped surface (theme, playground/bin toolbar hooks, GnActionButton / GnDotGrid / GnPeek); mark per-example theme override as shipped; reframe Phase 2 as rewrites not extractions (no virtual:* / site-store imports); add Phase 3 DS-specific docs primitives (variant matrix, knobs, token tables/swatches, do/don't, anatomy, maturity chips, palette explorer); document token-bridge ownership on the host DS.
  • DESIGN_SYSTEMS.md: new Kit interop — --v0-* bridge under ruling 1 — design systems that host Genesis must also emit --v0-* aliases (preferred) so kit chrome inherits brand colors.

Out of scope (follow-ups): Emerald adapter alias emit + Emerald SPEC.md/README (needs #167); actual GnDocs* rewrites (#463 badge, #593 callout already open).

Why

Without these decisions encoded, every Emerald docs attempt either forks Genesis theming or ports apps/docs shells that import virtual:api / Bin / Ask-AI. This PR is the contract layer only.

Sync Genesis SPEC with the shipped surface (theme override, playground/bin
toolbar hooks, GnActionButton/GnDotGrid/GnPeek), mark Phase 2 items as
rewrites-not-extractions with a no-virtual:* acceptance rule, add Phase 3
DS-specific docs primitives, and record the kit interop token bridge in
DESIGN_SYSTEMS.md so Emerald (and later DSs) publish --v0-* aliases for
Genesis chrome.
@johnleider johnleider added this to the v1.0.x milestone Jul 24, 2026
@johnleider johnleider added the documentation Improvements or additions to documentation label Jul 24, 2026
@johnleider johnleider self-assigned this Jul 24, 2026
@johnleider johnleider added the paper Paper layer (unstyled component bridge) label Jul 27, 2026
Follow-up corrections to the contract text:

- DESIGN_SYSTEMS.md no longer claims Genesis "declares no class" — the SPEC
  now declares `Class: kit`. The `<style scoped>` deviation note is accurate
  (9 of 10 components) and is kept.
- Document `--v0-on-background` in the consumed-token table. It is the only
  bare `var()` in Genesis (GnDotGrid's `color` default), so an unaliased host
  renders no grid at all; the Token bridge list now names it too.
- Rewrap the GnActionButton paragraph — the previous wrap put `+ Button.Icon`
  at line start, which CommonMark parses as a bullet marker and split the
  sentence into a stray list item.
- Add GnDocsExample's `toggle-icon` slot to the icon-strategy table.
- #593 and #463 are open against packages/genesis, not apps/docs.
- Qualify "no Genesis-specific stylesheet" as no *theme* stylesheet; the build
  still emits dist/style.css for published consumers.
@johnleider
johnleider merged commit 4e0dd52 into master Jul 30, 2026
22 checks passed
@johnleider
johnleider deleted the docs/genesis-emerald-docs-path branch July 30, 2026 18:23
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

documentation Improvements or additions to documentation paper Paper layer (unstyled component bridge)

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant