Skip to content

Vision: what shuffle_engine makes possible

Ten capabilities that applications built on shuffle_engine can offer. (For what the framework offers to the people and AI agents who build those applications, see vibe-coding.md.) They are not features bolted on top: each one falls out of the architecture (pure deterministic cores, one command path, explicit time, ports) and the modules that support it are in the module catalogue.

# Capability What it gives a performer or an operator Built on
1 Show flight recorder Every command, input and device event recorded with absolute time; replay the whole show offline; “what happened at 01:12:03?” has an exact answer; recorded shows become regression tests. commands (recorder), time — 0010
2 Show linter and simulator “Compile” a show before going on stage: overlapping cues, abrupt tempo jumps, untranscoded video, silent monitor feeds, messages to devices that are not there. A fast simulation runs the whole show in seconds without audio. commands (replay), every domain’s validation
3 Cues anchored to music “Two bars before the second chorus” instead of “1:34.200”: lights, video, lyrics and timecode follow when the arrangement or the tempo changes; orphaned cues are reported, never moved silently. time — 0009
4 Live re-arrangement Repeat a chorus, skip a bridge, extend an ending during the show, from a pedal, a gesture or the voice; jumps are quantised musically and everything else follows. Backing tracks behave like a band. time (quantised boundaries, jump plans), setlist
5 Hot-standby twin Two machines play the same show from the same command stream and the same start instant; if one fails, the other takes over without a gap. time (start at a shared instant), commands, redundancy, netaudio — 0014
6 Rig admission check Every module knows its measured cost; before the show the framework says whether this device can run this show, and with what margin. [bench] measurements, module budgets
7 Personal distributed rig Each musician opens the show on a phone and gets their own view: their monitor mix, their lyrics and chords, the click, the next section, all locked to the master clock. remote, generated protocol surfaces — 0011
8 Self-healing show Every dependency has a declared fallback; a lost interface, MIDI port or video decoder never stops the music; fault injection proves it on every commit. resilience — 0012
9 Show programming in words “When the chorus starts, lights red and program change 5 to the pedalboard” becomes visible, previewed, testable cues; a small local model is enough. commands, assistant — 0008
10 Open, git-native show format Shows are versioned structured text with a semantic diff (“moved Song B after Intro, click −3 dB”) and merge across band members, published as an open specification so shows move between applications. package, commands

Capabilities 1, 3 and 8 are foundations: the time model, the recorder and the degradation rules are designed in from the start. The others build on them without changing the architecture.