# September DAW verification — new work not yet hand-tested Checks for work landed or in progress since the last `VERIFICATION.md` pass that no unit test can close. Build **Release**, install into `UserPlugins/`, restart REAPER. Panel tail toggle = **None**, project rate 48000, unless a check says otherwise. ## 1. Instrument control-surface pass (landed Aug 3, 2026) - [ ] Play notes and watch the ReaSampler 9000 editor's master meter — it redraws smoothly (~60 fps) - [ ] Load a heavy project (several other plugins, high track count) and watch the meter again under that load — still smooth, no visible stutter - [ ] Click the single-button "Envelope" toggle on a deck — cycles on/off cleanly; confirm its disabled-state look when the deck it governs isn't applicable - [ ] Same check for the "Filter" toggle - [ ] Same check for the "Limiter" toggle - [ ] Same check for the "Stage"/"Spline" toggle (the envelope mode selector — one button reading either "Stage" or "Spline") - [ ] Click anywhere on an envelope deck's control section (not just a knob) — that envelope becomes selected for editing on the waveform overlay - [ ] Switch the instrument to Trigger mode — the loop markers and their caption disappear from the waveform entirely - [ ] Switch to Gate mode with looping off — the loop markers still show, greyed out, and are still grabbable - [ ] Zoom in on a loop marker and drag it near a zero crossing — it snaps only within a small pixel radius of the crossing, not from anywhere on the waveform - [ ] Hold Ctrl while dragging a marker near a zero crossing — snapping is disabled for that drag ## 2. Bank panel additions (Aug 3) - [ ] With a track selected and a bank card focused, click "Insert as FX" — ReaSampler 9000 loads on that track with the focused sample already loaded - [ ] Open the panel's top-toolbar "⋯" overflow menu — Re-capture and Insert Conform are both there and both work - [ ] Drag a bank card over the arrange view — the cursor shows a crosshair cue while over a valid arrange-insert target ## 3. Design View FX parking (Aug 21) - [ ] Trigger a mode switch that parks/restores FX on a heavy chain, and watch the docked bank panel while the reclaimer drains: the cursor goes busy over the panel and the footer reads "parking FX" / "restoring FX" appropriately. If the cursor never changes, note it — REAPER may not route `WM_SETCURSOR` to the docked panel at all (`src/shell/panel/CLAUDE.md` Gotchas) - [ ] Native drag-reorder a parked track's FX chain, switch modes, and confirm each plugin's state restores to the SAME plugin it came from (not swapped by slot) - [ ] Do the same reorder via an SWS move command - [ ] Save the project after a reorder, reopen, then switch modes — restore still keys to the right plugin - [ ] Reorder a chain holding two copies of the same plugin — each copy's state restores to itself, not swapped with its twin (`docs/TODO.md` §"FX-GUID stability for the park's restore is unverified in the DAW") - [ ] For mode-switching itself (solo-set restore, transport refusal, persistence, undo point count, etc.) — see `docs/VERIFICATION.md` §"Mode switching"; not repeated here ## 4. Drag a card into a plugin's editor (landed Sept 2026) - [ ] Drop a bank card on Serum 2's oscillator in its floating FX editor window — Serum loads the sample - [ ] Drop a bank card on Serum 2's oscillator from the FX chain window — same, Serum loads the sample - [ ] Drop a bank card on the FX chain list or window chrome (not the oscillator) — ReaSampler 9000 loads as before, unchanged - [ ] Drop a bank card on the TCP, MCP, or arrange — unchanged from current behavior - [ ] Start a drag over a plugin editor, then move back over the arrange mid-drag — the drag reverts to the panel's own drop behavior (may only visibly update on the next key press or mouse-button change) - [ ] Drag a card out to Windows Explorer and back into REAPER — control hands back to the panel's own drag correctly - [ ] Drop a card onto an already-open ReaSampler 9000 editor — it loads ReaSampler 9000 onto the track (no banner, no OS drop) - [ ] Drop a card onto ReaEQ's editor — shows a no-drop cursor, nothing loads - [ ] Drop a card onto a plugin editor that doesn't accept files (e.g. a compressor) — note whether it is refused (no-drop cursor, nothing loads) or lands in REAPER's own file import; either outcome is accepted, but record which one actually happens - [ ] Run stable and beta ReaSampler 9000 side by side and open both editors — each works normally, no crash ## 5. Live spline-envelope drags (landed Sept 2026) - [ ] Set the amp envelope to Spline, hold a note, and drag a knot — the sound audibly follows the shape change during the drag itself - [ ] Same check for the pitch envelope - [ ] Same check for the filter envelope - [ ] After dragging a knot, trigger a new note — it uses the dragged shape - [ ] Listen closely during a fast drag for any audible glitch beyond what an ordinary knob move would cause (clicks, zippering) - [ ] Drag a knot on a held note and listen for an audible pitch/amp/filter glide as it moves, not a stepped jump - [ ] Release a dragged knot — commits exactly as before: one undo point, and reopening the project keeps the dragged shape - [ ] With a note held, add a new point to the spline — audible immediately - [ ] With a note held, delete a point from the spline — audible immediately ## 6. Sample-rate playback (landed Sept 2026) - [ ] In a 48 kHz project, import a 44.1 kHz file via the Media Explorer into ReaSampler 9000; play its root note — same pitch and length as the file auditioned in the Media Explorer. Repeat in Preserve mode. - [ ] Same with a 96 kHz file in a 44.1 kHz project - [ ] Envelope attack times, loop (a single-cycle loop holds its pitch; loop crossfade length) and filter cutoff sound the same as on a same-rate copy of the file - [ ] Bake a mismatched-rate sample — the baked result has the same pitch and length as what you heard - [ ] Change the project sample rate with ReaSampler 9000 loaded (and with it inactive/bypassed, then re-enabled) — the sample still plays at correct pitch afterwards - [ ] Existing projects that used mismatched-rate samples WILL sound different now (correct pitch) — reopen one and confirm it's the expected change - [ ] Same-rate samples sound exactly as before - [ ] In Preserve mode at matched rate, set Rate to ~200% — sounds clean (this changed with the splice-crossfade fix; confirm it's an improvement, not a regression) - [ ] Load a file more than 32x the project rate (e.g. a 384 kHz file in an 11.025 kHz project, if one is available) — the editor title shows the refusal message, the sample plays silent, the message clears when another sample is loaded, and a bake shows "cannot render" - [ ] The refusal text is not truncated at the default editor width ## 7. ReaSampler 9000 finds samples in its own project (landed Sept 2026) - [ ] Open two projects in tabs, each with a ReaSampler 9000 on a different bank sample; switch tabs — each instance plays its own sample, including the one in the background tab - [ ] Open a saved project containing ReaSampler 9000 into a NEW tab — the instance plays (not silent) - [ ] Same, via File → Open into the CURRENT tab - [ ] Render the project via the render queue — the instrument is audible in the render - [ ] Render a project that is used as a subproject — the instrument is audible For the last four: if any comes up silent until the sample is re-selected, report it (a retry is the planned fix).