docs: record the palette rework and retire the overlay-contrast wart it resolved
This commit is contained in:
+35
-6
@@ -321,13 +321,16 @@ state per instance, 6 additional `DeckParam` ids.
|
||||
this reading stands.
|
||||
- **Loop markers moved from `AccentTertiary` to `AccentSecondary`** — they collided
|
||||
exactly with the envelope trace (RGB delta 0) in the same overlay rect. Daniel
|
||||
ruled. The palette is under active change on a separate branch, so the specific hex
|
||||
values are in flux (see `docs/TODO.md`).
|
||||
ruled. The palette has since settled: `AccentSecondary` is `#38A8A0` (see the
|
||||
palette-rework entry below and `src/core/ui/CLAUDE.md`).
|
||||
|
||||
**Still open — not closed by this track.** The envelope overlay's contrast against
|
||||
the waveform (tertiary purple, measured 1.37:1, below the 3:1 indicator floor) awaits
|
||||
Daniel's eye on a build; pinned as a flagged deviation in `tests/test_theme.cpp`. See
|
||||
`docs/TODO.md`.
|
||||
**Left open by this track, resolved later.** The envelope overlay's contrast against
|
||||
the waveform (tertiary purple, measured 1.37:1, below the 3:1 indicator floor) awaited
|
||||
Daniel's eye on a build; pinned as a flagged deviation in `tests/test_theme.cpp` at the
|
||||
time. Resolved by the ad-hoc palette rework below (`91f71f9`/`a19d645`): the trace moved
|
||||
off `AccentTertiary` onto a new `Role::OverlayTrace` (`#816AA6`), clearing the floor at
|
||||
3.07:1 — the mathematical ceiling for the pairing. See the palette-rework entry below and
|
||||
`src/core/ui/CLAUDE.md`.
|
||||
|
||||
### Ξ-W1-T1 — tracking-consolidation
|
||||
|
||||
@@ -381,3 +384,29 @@ every beats↔seconds↔ms conversion), and `note_program` (`Velocity`, the deno
|
||||
which sees both the bytes it read and the value construction produced. `NoteProgram`
|
||||
deliberately carries no MIDI note number — render pitch is deferred to Ξ-W2 as an
|
||||
additive field.
|
||||
|
||||
### Palette rework — accent/secondary darkening + overlay/trace role (ad-hoc, Daniel's request)
|
||||
|
||||
Two commits (`91f71f9`, `a19d645`) resolve the envelope-overlay contrast wart Θ-W3-T2 left
|
||||
open (see above). `accent/secondary` darkened `#84D6D0` → `#38A8A0`; the keyboard strip's
|
||||
spectral mid stop decoupled from `accent/secondary` into its own constant, since the
|
||||
darkening had inverted the ramp's lo→mid→hi luminance ordering. A new `Role::OverlayTrace`
|
||||
(`#816AA6`) was added and the envelope trace + handles repointed onto it: the trace now
|
||||
measures **3.07:1** against the waveform — the mathematical ceiling for any single color
|
||||
sitting between the primary accent and `bg/base` (9.41:1 apart; `sqrt(9.41) ≈ 3.068`),
|
||||
`#816AA6` landing at 99.94% of that optimum. Two below-floor pairs remain deliberately
|
||||
accepted — the trace inside the 20%-alpha loop-span fill (2.25:1) and against the
|
||||
waveform's `line/hairline` zero-line (1.92:1) — both asserted as pinned ranges in
|
||||
`tests/test_theme.cpp` so either direction of drift fails the build.
|
||||
|
||||
Separately: the bank panel's region title enlarged into WCAG large class via a new
|
||||
`Font::RegionTitle` (19px bold); `theme.h`'s large-text thresholds were corrected (a prior
|
||||
revision had them ~25% low, letting 15px semibold self-classify as Large); `compositeOver`
|
||||
was added to `theme` (the composited-fill arithmetic the loop-span-fill contrast pair
|
||||
depends on); and the grabbed envelope handle was repointed off hue onto a size + ring
|
||||
treatment, since no two values that clear the overlay-trace ceiling differ enough to carry
|
||||
a state by color alone.
|
||||
|
||||
Full detail — the two-neighbour contrast rule, the WCAG threshold correction, and the
|
||||
accepted below-floor pairs — lives in `src/core/ui/CLAUDE.md` and
|
||||
`docs/product/visual-design-language.md` §4 Direction B; not duplicated here.
|
||||
|
||||
Reference in New Issue
Block a user