Setting up your dashboard0 entities found · 8/31 branches scanned
ID:WORK-423Status:ready
elevation depth-ladder axis
Turn elevation into the universal chrome/depth axis from SPEC-107: an ordered semantic ladder emitted as data-elevation, superseding both §8's surface enum and today's shadow-only none/sm/md/lg scale. The foundation the rest of the milestone builds on.
plan: SPEC-107 surface-axis decomposition + v0.23.0 work items
Scope
Recognise the value set sunken | flush | flat | raised | floating (+ optional overlay) on the universal elevation axis; emit data-elevation from the engine like the other cross-rune classifications.
Add defaultElevation to RuneConfig (mirroring defaultWidth / defaultDensity) so the per-rune default is theme config, overridable per instance and via context/region cascade.
Ship a deprecation alias mapping old → new (none→flat, sm→raised, md→raised, lg→floating) that resolves + warns (the SPEC-086 alias pattern). none maps to flat, never flush.
Honor the elevation ↔ frame-shadow boundary (SPEC-107 §1): elevation is the rune surface's box-shadow depth; leave frame-shadow's own none/sm/md/lg scale untouched (separate axis, not renamed or migrated).
Acceptance Criteria
elevation accepts sunken | flush | flat | raised | floating (+ optional overlay) and the engine emits data-elevation="<value>".
defaultElevation is read from theme RuneConfig and applied when the author sets no value; per-instance values win.
Old values (none/sm/md/lg) resolve via a deprecation alias with a dev warning; none→flat (not flush); tests cover the mapping.
frame-shadow's none/sm/md/lg scale is left untouched; only the rune-surface elevation scale migrates.
Unit tests cover value emission, the per-rune default, and the alias.
Dependencies
Best after WORK-410 (the spike sets the cut line). The chrome axis other items target.