THE VIRTUAL SOUNDCHECK — which take is loaded, whether the desk is listening to it, and where
the play head is (2026-07-16-recording-vsc.md §3.2 + §3.4).
Every field a client writes here is a TRANSITION expressed as state, because that is what it
is: loading a take opens files read-only and leaves nothing behind, engaging switches a set of
channels, and play / pause / locate ARE the transport rather than gestures at it. /record
splits its two transitions off into fires for the opposite reason — a take start leaves a
folder of audio on a disk, and a write whose failure has nowhere honest to go is not a field.
The per-channel escape lives at /channel/{kind}/{index}/source, never here: this row's
engaged is a bulk gesture over that one store, and reading it back is a derivation of it.
THE VIRTUAL SOUNDCHECK — which take is loaded, whether the desk is listening to it, and where the play head is (
2026-07-16-recording-vsc.md§3.2 + §3.4).Every field a client writes here is a TRANSITION expressed as state, because that is what it is: loading a take opens files read-only and leaves nothing behind, engaging switches a set of channels, and play / pause / locate ARE the transport rather than gestures at it.
/recordsplits its two transitions off into fires for the opposite reason — a take start leaves a folder of audio on a disk, and a write whose failure has nowhere honest to go is not a field.The per-channel escape lives at
/channel/{kind}/{index}/source, never here: this row'sengagedis a bulk gesture over that one store, and reading it back is a derivation of it.