Design system lifecycle
A repeatable process for shipping, governing, and retiring design tokens and components across a multi-product org.
1Propose
Open a lightweight RFC in your design-tools repo. Include the token name, fallback value, affected surfaces, and a screenshot of the current vs proposed render. Tag the design-eng rotation.
2Ship
Merge the token into the source-of-truth JSON and cut a semver release. CI publishes to the CDN and pushes a PR that bumps the token package in every registered consumer.
3Adopt
Consumers merge the auto-opened bump PR within 48 hours. Linters forbid hardcoded values that duplicate an existing token. A dashboard tracks adoption percentage per product.
4Deprecate
Mark the token as deprecated in the schema. The next major version removes it. A codemod ships alongside the breaking release to auto-migrate consumers to the replacement token.
5Retire
Once adoption of the replacement reaches 100% across all tracked surfaces, archive the deprecated token entry. The schema retains a tombstone record for historical queries.
Tip: Run the adoption dashboard weekly. Products that lag beyond the 48-hour SLA automatically escalate to their eng-manager channel.