Godstrument/viz
jing 4f6a2a9634 🎹 keyroll: land note-length from local/groove-editor onto godrum's sequencer
Feature-gap analysis of local/groove-editor (c0c3a98) vs current main showed
godrum independently built almost everything the branch had — per-step
velocity/chance/ratchet, euclid, swing/humanize, scale/root, Play-One stacks,
Follow Actions. The one genuine, valuable gap was NOTE LENGTH (the "key-roll"):
main's notes were all one-16th. Ported that natively; skipped the rest as either
already-covered, a deliberate divergence (global scale, Play-One vs polyphony),
or too invasive to land without regressing godrum (clip-length/polymeter would
rewrite the fixed-16 architecture that migrateSeq/arranger/beat/commune assume).

What landed (all back-compat; len defaults to 1 = one 16th, so old patches are
unchanged except un-ratcheted sequenced notes now gate to their drawn length —
which is the feature):
- len[16] on seqFor/drumSeqFor + migrateSeq back-fill + two self-check guards
- attachNoteLengths(): .seqnote overlay blocks with an ew-resize drag handle,
  used by the voice-inspector roll and the arranger grooves-tab roll; len is
  per-voice (shared across A/B/C clips) exactly like vel/chance/rat
- playback: seqTick gates rat==1 notes to len*sixteenth; Synth.pluck gains an
  optional durMs (null = byte-for-byte the old natural decay); ratchets unchanged
- MIDI: export emits length-scaled note-offs with a same-pitch overlap clamp;
  live midiPluck now tracks pending offs per (channel,pitch) so a held note
  retriggered on its own pitch ends cleanly instead of being cut by a stale off
- grimoire + regenerated manual

Verified: groove self-check passes (incl. len guards); an isolated harness
confirms overlay render/drag/clamp at both grid sizes + Play-One stacks + the
getter that keeps overlays in sync when the arranger swaps sq.steps per bar.

The reference branch local/groove-editor is the only copy of this work and is
deleted now that note-length is landed and pushed.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-07-13 16:35:29 +10:00
..
index.html 🎹 keyroll: land note-length from local/groove-editor onto godrum's sequencer 2026-07-13 16:35:29 +10:00
life.html 🌱 lifestrument v1.0.1 — post-ship review fixes (fable) 2026-07-12 14:52:04 +10:00
manual.html 🎹 keyroll: land note-length from local/groove-editor onto godrum's sequencer 2026-07-13 16:35:29 +10:00