mirror of
https://github.com/storytold/soundcraft.git
synced 2026-11-09 03:42:16 +00:00
* MIDI: index controller dedup by channel and kind Remove Duplicate Notes rescanned every controller already kept at the same tick for each incoming one. A session whose sequence holds one tick with many distinct channel/controller pairs made that quadratic and blocked editing. Track where each channel+kind sits at the current tick in a map instead; the last event per key still wins. * MIDI: tag dedup index entries with their tick instead of clearing per tick Clearing the map on every tick change cost O(capacity) per tick after a dense tick. Store the tick with each entry and treat entries from an earlier tick as absent. Add an oracle test comparing against the previous per-tick rescan on mixed-tick input.