Commit c462ce7e by PLN (Algolia)

docs: board — 2nd pre-compact; generalize-the-driver is the thread

sept1.tidal proved the architecture mid-set: translation is track-agnostic
(the cps knob on ^29 changed tempo with the driver still mapped for
rose_rouge), so playability generalizes for free and only paint/labels/BPM
are per-track — exactly the next thread. Fresh eye-batch bugs boarded with
the discipline note: READ label_control before believing the off-by-one.
parent 41c53c27
......@@ -971,3 +971,46 @@ build (labels on per-control targets). Ardour reopened on the FIXED session.
KWin always-on-top rule; 3 corpus labels still combinator soup;
Midi Through→SC re-add tug-of-war (harmless, unexplained);
tools/sweep_state.py untracked (other session's? triage).
## BOARD STATE — 2026-08-30 early (2nd pre-compact; iterate round on live surface)
Branch @ 09aaf05 pushed. Driver RUNNING (rose_rouge map) while PLN plays
sept1.tidal — translation is track-agnostic so sept1 PLAYS fine; paint/labels
are stale = the whole point of resume 1. PLN's own piment_bresilien.tidal edit
still uncommitted (his).
### Shipped this round
- e7e441a row order = chair ergonomics (value/Hz row 2, ParVagues to bezel
row 3, DJF drops cell names) + lap chronometer on home row 2
- 09aaf05 lap-tick crash fix (last_home init — the ONE unasserted replace)
+ --no-echo value echo (relative encoders' firmware numeric)
### RESUME 1 — GENERALIZE the driver (PLN: "we gotta go generalize")
- Track-follow: driver picks up the CURRENT track (watch Pulsar's active file
via HUD parser? a --track hot-reload on file change? Track</> cursor later).
On change: remap mapped-set, relabel 32 targets, reset lap clock (the "lap"
IS track change), reseed? (careful: NO reseed mid-play without asking).
- Live BPM: sept1 has `# cps ((range 60 180 "^29")/60/4)` — parse cps-knob
patterns; BPM = range(lo,hi, values[NN])/... driver already holds the value.
Glow + home row 2 follow it live.
### RESUME 2 — display semantics probe (STRUCTURED, stop guess-patching)
Evidence tonight: field set_text does NOT repaint a visible target without a
0x7F bring-up (home clock stuck 0:00 on device while ghost ticks; DJF Hz on
36h updates only at the 0.9 s summon → "refresh every 1s, not smooth").
Probe list: (a) bring-up-after-write on stationary when no touch <1.2 s;
(b) per-change bring-up (no arrangement reconfigure) on 36h @ ~80 ms for DJF;
(c) arrangement-1 host-TEXT value on a per-control target (unlocks "37%" for
sometimesBy/midiOn knobs + Hz on DJF's own target); (d) which arrangement puts
name on ROW 1 (per-control l1 currently EMPTY = wasted best row).
### RESUME 3 — bugs from PLN's eye batch
- A1 (d9 level) displayed "d8 level [ard]" → suspected off-by-one in
label_control's row-A/fader target loop. READ tools/lcxl3-driver.py
label_control FIRST (unverified).
- Echo did NOT unstick relative rows' numeric (C8/B8 l3 = 0; A8 absolute is
reactive) → try echo on shifted CC (base+64) and/or ch1 vs ch16; may be a
firmware limit in relative mode → then arr-1 host-text is the road.
- Mute combos: held row-F set → semantic line "MUTE kick+percs / all…"
(names: kick, percs, mel, all). Latch/held state already in self.values.
- Fader labels → sample identity ("d8 jungle_breaks") still queued from
earlier; "level [ard]" noise.
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment