For agents, on top of README.md, which they read first.

Notes for agents

Stop playback before playing song.js. Its section masks count from cycle 0.

The harmony moves every two bars on purpose. Each vocoded line is rendered on one chord (samples/README.md lists which) and must start on the first bar of that chord: the question on the first bar, the answer on the second. The outro's answers are the chorus's swapped, so each answer exists once per chord it lands on (ooafairdm in the chorus, ooafairbb in the outro, …). The bridge count exists twice (oothirtydm, oothirtyf) for the two chords it lands on.

"Reversed" is the options' order, never tape. Rev 2 played each line backwards; reversed speech read as gibberish. Don't bring speed(-1) back on a vocal.

The chorus and hook lines are not a part. They play at a fixed level outside part() and outside the energy scaling (lines, bottom of song.js), so Jev can never mute the joke. Only the bridge count is Jev's to level.

The bridge stutter is tempo-bound. .end("[.1 .1 .1] 1@3") cuts the first three hits to 10% of the line (0.15 s) inside a quarter-bar at 100 bpm.

Reversals are written out, never random. Drop 2's break alternates a forward bar with the same slices in reverse order played at speed(-1); keep both halves of that pattern in step.

The master postgain is set by measurement, last. Any gain change moves the peak: re-measure (nix run .#measure -- --song jev/option-order --write) and keep the peak at or under −1 dBFS.