Promote
promotion, promoted, one-offDefinitions
To close a gap in the semantic layer by adding an intent-named token available to every contract, rather than a value named for the one place that needed it
cwds ADR-0008: a value a Component Contract needs is promoted to a semantic token, or it is not a token. If the only honest name references one component, it is a one-off, lives in that contract's own CSS, and is explicitly outside the token system. A gated component tier was rejected — gates staffed by the person who wants the exception do not hold.
To move a brand-specific governed extension into the shared core, so every brand and adapter can consume it
The Agentic DS draft's sense, the second outcome of a governed-extension review (the first is keeping the change brand-specific). Same instinct as the cwds sense one layer up: a change that can be named for everyone is vocabulary, not an exception.
The hero needed a dark background. What was added was not a hero-background token but an inverse-surface pairing, and the next contract that needs a dark surface finds it already named. That is the rule working: the gap becomes vocabulary.
The accepted cost is over-generalization — a promoted semantic may have one consumer for a long time. A token with one consumer and an honest intent name is recoverable; a token named for where it is used is not.
Avoid: a token whose name says which component uses it. Either the need is a role that deserves an intent name, or the value belongs in that contract's CSS.