Name:v0.20.0Status:planning
v0.20.0 — Surface model: chrome, fills, cover layout & engine variants
Completes the surface model — every rune surface gets a consistent chrome, fill, and layout vocabulary — and lands the engine primitive (config variants) that the cover layout depends on.
Progress 18/18 work items
- Engine config variants: modifier-keyed config deltas, with
card/bento-cellmigrated to the flat-slot model (SPEC-091) - Surface chrome: universal
elevation+ aframepreset registry,frameTargetrouting, host-owned clip;showcasecollapsed into the frame model (SPEC-086) - Surface fills:
substratepatterns + a tint-tracking inset surface (SPEC-087) bggradients + a formalized custom-CSS escape hatch and structuredscrim(SPEC-088)media-position="cover"layout: content placement, default scrim, intrinsic height (SPEC-089)- Media-guest interaction posture: presentational guests, clickable containers, cover backdrops (SPEC-090)
Work Items
Done 18
WORK-362 main
Universal elevation attribute backed by a --rf-shadow-* token scale Add a universal elevation attribute backed by a shared --rf-shadow-* token scale and migrate bespoke per-rune shadows onto it.
3/3 criteria
WORK-363 main
frames preset registry + frame attribute and inline facet overrides Add a frames preset registry parallel to backgrounds, the frame attribute with inline facet overrides, and complete the offset named scale.
4/4 criteria
WORK-364 main
frameTarget routing + host-owned clip + shared frame CSS layer Add RuneConfig.frameTarget routing, the host-owned clip contract, the oversize opt-out, a shared frame CSS layer, and reconcile with bento's existing media vars.
5/5 criteria
WORK-365 main
Collapse showcase into the frame model with deprecated aliases + docs Re-express showcase as frameTarget: 'self' consuming frame, with deprecated aliases for its old attributes (breakout bleed retained), and document the surface model.
4/4 criteria
WORK-366 main
Tint-tracking inset surface: --rf-surface-inset-shift token + use-site color-mix Add the tint-tracking inset surface: a --rf-surface-inset-shift mix-amount token and a use-site color-mix recipe applied to media wells and chart/diagram.
4/4 criteria
WORK-367 main
substrate pattern attribute: engine enum + shared base gradient stylesheet Add the substrate pattern attribute with a fixed engine-level enum and a shared, always-included base stylesheet of token-driven gradient recipes.
4/4 criteria
WORK-368 main
substrateTarget routing + build validation + surfaces theme-authoring docs Add substrateTarget routing (default self, theme-overridable, author wins), media-well binding and validation, and document the three fill layers.
3/3 criteria
WORK-369 main
bg gradient fill: inline facets + structured BgPresetDefinition.gradient Add a token-driven bg gradient fill via inline facets and a structured BgPresetDefinition.gradient preset field.
3/3 criteria
WORK-370 main
Formalize the bg raw-CSS escape hatch + project-config backgrounds merge Promote BgPresetDefinition.style to a documented, intentional last-resort escape hatch and confirm the project-config backgrounds home with merge-over-theme semantics.
2/2 criteria
WORK-371 main
Structured overlay/scrim facets + raw-string overlay deprecation path Split the conflated overlay string into a structured flat-wash overlay and a structured scrim legibility facet, with a deprecation path for the raw-string passthrough.
4/4 criteria
WORK-372 main
Soft-lint raw CSS covered by structured facets + bg reference docs Add a build-time soft warning for raw CSS that a structured facet now covers, and document gradients/escape-hatch/overlay in the bg reference.
2/2 criteria
WORK-373 main
media-position=cover layout + height authority (as a config variant) Add media-position="cover" as an engine config variant (full/header scope) with the height-authority precedence, superseding the split knobs.
4/4 criteria
WORK-374 main
content-place 2-axis logical overlay anchor + orientation-adaptive auto Add content-place, a 2-axis logical overlay anchor active only in cover mode, with an orientation-adaptive auto default.
3/3 criteria
WORK-375 main
Default cover scrim bound to content-place Turn on a default scrim in cover mode targeting the media surface, with direction following content-place.
3/3 criteria
WORK-376 main
Card intrinsic height/aspect knob for bg-only cards + card docs Add a card intrinsic height/aspect knob for bg-only cards and document cover mode in the card reference.
2/2 criteria
WORK-377 main
Media-guest interaction model: presentational default + capability flag + fallbacks Define media guests as presentational by default with an explicit interactive capability and a static fallback per interactive guest.
2/2 criteria
WORK-378 main
href demotion of media guests + cover backdrop pointer-events Demote a clickable container's media guest to presentational + pointer-events: none, and make a cover guest an inert backdrop unconditionally.
3/3 criteria
WORK-379 main
Interaction-posture build warnings + posture reference docs Emit the interaction-posture build warning and document the posture in the reference + composability docs.
2/2 criteria