Governance · Publish — promote Labs into the canonical registry

Publish

Every ready experiment lands here. The classifier shows what would change, the blast-radius scan shows which canonical components reference the touched tokens, and each draft change gets an explicit decision: promote to the shared registry, or keep it scoped to the experiment as an audit-only record. Current registry version: v2.7.0.

Nothing ready to publish

  Drafts move from Design lab to here when an operator flips them to ready. No experiments in lab.

Go to Design lab
01

How publish works

The flow runs validation, classification, blast-radius preview, decision resolution, and either local-fs write (dev) or a GitHub Action dispatch (prod, behind the OAuth credential gate).

Each draft change is classified per the taxonomy: theme-token value changes ship live; structural-token, motion, component, pattern, icon, asset changes ship as a reviewed PR; token rename/removal is breaking and forces a major bump. The classifier is the only thing that decides the path; the operator can only choose promote or scope per change. Scoping doesn't change the class — it just records that the operator decided this change shouldn't land globally yet.

Only promoted records land in CHANGELOG.changes (the consumer-facing wire format). Scoped decisions are recorded in RETIRED_EXPERIMENTS with the operator's rationale, so the audit trail captures the "no" as fully as the "yes".