Two bugs that were hiding each other, which is why both survived a month.
THE SUITE RAN ZERO TESTS. test_setlist.py was a plain script ending in a bare
module-level sys.exit(), and pytest raises that during COLLECTION — so
'pytest tools/tests/' aborted the whole directory with an INTERNALERROR and ran
nothing, while 273 tests passed when invoked file-by-file. Every test in this
repo was invisible to the obvious command. Guarded the exit under __main__ (the
script still works run directly) and added one assertion so pytest actually sees
the checks. Whole suite in one command now: 274 passed, 2 skipped, 0 failed.
AND THE THING IT WAS HIDING: test_setlist had been failing all along, on a check
whose name says exactly what is wrong — 'a deliberation note is not a track (the
quand_on_decolle phantom)'. OPAL 2026's backlog section opens with
## SOUNDCHECK
-- Quand on decolle
and entries() takes every list item under the gig heading, so every one of the
tools reading this setlist believed the set had 16 tracks opening on Quand on
décolle. The recorded set has 15 and opens on Ceci n'est pas Une Bombe
(segments_v3/v4 track 1). The parser now yields 15, in the right order.
The fix is deliberately NOT the section whitelist entries() refuses to build —
that one tried to enumerate which of PLN's prose headings are part of the set and
died on '## Livecoding Techno DNB Nu-jazz'. This is the inverse and far narrower:
naming the one phase that is definitionally not a performance. Three patterns,
and skips print to stderr, because a dropped track and a skipped soundcheck must
never look alike.
Fixed the parser, never backlog.md — the backlog is PLN's own file and it was
right. A soundcheck IS in his set list; it just isn't in his set.
Verified by breaking it: neutered _NOT_THE_SET_RE, watched
test_backlog_setlist_checks_all_pass fail naming the quand_on_decolle phantom,
restored, 274 green.
the first track was never the first track.
sixteen tools agreed with each other
and none of them agreed with the recording.
| Name |
Last commit
|
Last update |
|---|---|---|
| .gitea/workflows | Loading commit data... | |
| armada | Loading commit data... | |
| blocks | Loading commit data... | |
| blog | Loading commit data... | |
| config/wireplumber | Loading commit data... | |
| copycat | Loading commit data... | |
| docs | Loading commit data... | |
| gifts | Loading commit data... | |
| lib-parvagues | Loading commit data... | |
| live | Loading commit data... | |
| mix | Loading commit data... | |
| output | Loading commit data... | |
| releases | Loading commit data... | |
| sandbox | Loading commit data... | |
| study | Loading commit data... | |
| test | Loading commit data... | |
| tools | Loading commit data... | |
| utils | Loading commit data... | |
| visuals | Loading commit data... | |
| viz | Loading commit data... | |
| .gitignore | Loading commit data... | |
| BootTidal.hs | Loading commit data... | |
| BootTidal.hs.broken | Loading commit data... | |
| BootTidal.visuals.broken.hs | Loading commit data... | |
| CLAUDE.md | Loading commit data... | |
| EVENING.md | Loading commit data... | |
| FOH_MASTER.md | Loading commit data... | |
| LAST_THIRD.md | Loading commit data... | |
| LICENSE | Loading commit data... | |
| Logo.xcf | Loading commit data... | |
| MORNING.md | Loading commit data... | |
| PatchBay_MultiChannel.xml | Loading commit data... | |
| PatchBay_Perf.xml | Loading commit data... | |
| PatchBay_Perf5.1.xml | Loading commit data... | |
| README.md | Loading commit data... | |
| RUNBOOK.md | Loading commit data... | |
| SHOPPING_LIST.md | Loading commit data... | |
| TASKS_DUMP.md | Loading commit data... | |
| backlog.md | Loading commit data... | |
| bullet_train.tidal | Loading commit data... | |
| collide.sh | Loading commit data... | |
| debug.tidal | Loading commit data... | |
| didacticpatternvisualizer.pde | Loading commit data... | |
| gig-up.sh | Loading commit data... | |
| gpu-mode.sh | Loading commit data... | |
| hello.sc | Loading commit data... | |
| init_midi.sh | Loading commit data... | |
| install_superdirt.sclang | Loading commit data... | |
| intro.md | Loading commit data... | |
| library.txt | Loading commit data... | |
| link_jack.sh | Loading commit data... | |
| link_samples.sh | Loading commit data... | |
| link_samples_all.txt | Loading commit data... | |
| main_fairbanks.scd | Loading commit data... | |
| notes.md | Loading commit data... | |
| parvagues-sc.service | Loading commit data... | |
| perf-audio.sudoers | Loading commit data... | |
| perf-tray.py | Loading commit data... | |
| perf-tray.service | Loading commit data... | |
| perf.sh | Loading commit data... | |
| process-palette.json | Loading commit data... | |
| realtime.tidal | Loading commit data... | |
| sample_watch.scd | Loading commit data... | |
| samples.txt | Loading commit data... | |
| setlist_opal2026.txt | Loading commit data... | |
| sketch.properties | Loading commit data... | |
| start_and_midi.scd | Loading commit data... | |
| test.tidal | Loading commit data... |