-
feat(tools): button-column-audit — 174 tracks still speak the pre-remap layout · f92f4455
PLN, mid-session in the cafe tracks: "some d1 had still 42 not 41 as button, did we not do all refact? doesnt our tools shout at such error snow?" Both halves were right, and the answers are different. DID WE NOT DO ALL REFACT — no. CC 41 used to be gMask, so while it was, an orbit's gate started a column late: d1 -> ^42, d2 -> ^43. Retiring gMask freed 41 and REMAP PHASE 2 (5910aacc, 2026-07-29) column-aligned the board. That commit touched FOURTEEN FILES — the OPAL set, not the corpus. 174 of 696 tracks in live/ still carry the old layout, cafe_glace / cafe_tiede / cafe_bouillant among them. Measured: every single shifted file is +1. Not 174 typos, one layout generation. DOESNT OUR TOOLS SHOUT — they structurally cannot. pvlint's button rule is PV008, "one physical button driving two orbits", and it fires on a COLLISION. A uniformly shifted file has no collision: every orbit is off by the same amount, so no two orbits ever meet on the same button. The file slides one column over and stays internally consistent. PV008 is blind to it by construction, and it is the rule that caught the perfect.tidal mis-migration — so this is a genuine gap, not a missing check someone forgot to run. WHY THIS IS NOT A NEW PVLINT RULE PV014 set the house bar: measure the convention before encoding it (it earned its place at 894/984 = 90.9%). The same measurement for buttons: button refs on orbits 1-8 2700 on the orbit's OWN column 963 (35.7%) on ANOTHER column 1737 (64.3%) 35.7% is a minority, not a convention. A strict "column N = orbit N" rule would emit 1737 findings and hold the pre-gig gate shut over the corpus's normal state. The crisp signal is the shift SIGNATURE — >=3 orbits sharing one non-zero offset — which is one finding per FILE (174) instead of one per reference (1737). So this ships as a standalone lens, not a gate rule: it cannot break gig-up.sh while PLN is away, and severity stays his call. Migration is migrate-columns.py's job and is POST-GIG on purpose: retuning 174 tracks' muscle memory days before a set is how you reach for the wrong button on stage.
PLN (Algolia) authoredf92f4455
×