Commit Graph

  • e4f4691a0d docs: rewrite README to current state, retire TODO.md, fix stale mpe_model ref daniel 2026-07-27 21:07:19 -04:00
  • 0e7b36eb17 docs(claude): grep CONTEXT.md by phase, don't read it whole; note CONTEXT-ARCHIVE.md daniel 2026-07-27 20:27:00 -04:00
  • 959019bcf5 docs(context): split landed build detail into CONTEXT-ARCHIVE.md daniel 2026-07-27 20:23:19 -04:00
  • d9321eaf3a FA1: unity-Preserve bypass kills preview onset latency; drain-slot reload keeps voices ringing through curve edits; velocity path proven end-to-end daniel 2026-07-27 18:25:01 -04:00
  • 2b8ab4abe4 Merge pS-fa3-waveform: gap-free per-column min/max waveform render (columnMinMax in peaks, shared across panel + editor) daniel 2026-07-27 19:47:49 -04:00
  • 69d5621f51 Merge pS-zonebleed: fix zone-bleed (3a) — Sample-face zone reconcile so the played zone matches the drawn one daniel 2026-07-27 19:47:09 -04:00
  • 6056302752 Merge pS-fa2-envmodel: fully-editable bounded amp envelope nodes (Gate + Trigger) daniel 2026-07-27 19:47:02 -04:00
  • e550234d0c Merge pS-fa4-knob: radial KNOB primitive (7->5 arc, needle, vertical-drag) in param_slider daniel 2026-07-27 19:46:56 -04:00
  • 88c122fcb4 fix(zone-view): Add Zone seeds narrow octave range so new zones survive reconcile daniel 2026-07-27 19:38:03 -04:00
  • 1e645adcef fix(draw_kit): reclaim 4x waveform oversample; relocate waveformColumnCount to component_geometry daniel 2026-07-27 19:37:53 -04:00
  • 9b3a9afb36 docs(claude): condense CLAUDE.md 42k -> 18k chars daniel 2026-07-27 19:10:04 -04:00
  • 7fd812bd34 fix(vst): zone-bleed (3a) — reconcile the Sample-face zone on load so the loaded sample zone is the one first-match resolve plays daniel 2026-07-27 19:09:53 -04:00
  • cf93d4dc50 fix(param_slider): 7->5 o'clock arc (50% straight up), seam contract single-sourced, boundary/normDeg/wrap-boundary fixes daniel 2026-07-27 19:09:51 -04:00
  • b3c9fad9ba fix(waveform): 4x-oversampled min/max envelope, columnMinMax homed in peaks, panel routed through shared drawWaveform — one gap-free algorithm on all surfaces daniel 2026-07-27 19:09:50 -04:00
  • 99f377db28 FA2: param-domain Gate schematic + 8px node min-sep (all nodes grabbable at defaults); cross-mode drag guard; double-clamp px overflow fix daniel 2026-07-27 19:09:47 -04:00
  • a4e33b1c04 docs(s-view): spec the r11 Sample-face recomposition (knob deck, curve popup, full-width hero) for Wave B daniel 2026-07-27 18:25:32 -04:00
  • 6c0bb4c204 feat(param_slider): radial KNOB primitive — parameterized 6->4 o clock arc, needle endpoint, vertical-drag value map, circular hit-test (FA4) daniel 2026-07-27 18:25:07 -04:00
  • 20308c842e fix(waveform): per-column min/max envelope fill eliminates gaps in steep segments daniel 2026-07-27 18:25:05 -04:00
  • d5d1902ea4 FA2: bounded-schematic Gate envelope (15% sustain reserve, in-bounds release) + zero-fade-out grabbable via nearest-node hit-test; all nodes clamp in-canvas daniel 2026-07-27 18:25:03 -04:00
  • e2bd4f4351 docs(phase-s): close out S-VIEW-10 — Phase S three-view editor redesign complete daniel 2026-07-27 16:11:12 -04:00
  • b7cc8d0ca3 Merge pS-w3-velcurve-ui: velocity-curve editor UI (S-VIEW-10) — draggable spline points in Sample + Zone views daniel 2026-07-27 16:05:32 -04:00
  • d982d14760 fix(velcurve-ui): caption overlap, add-in-ring data corruption, drag-off warn affordance daniel 2026-07-27 16:05:05 -04:00
  • 0e8b1b72cf S-VIEW-10: velocity-curve editor UI — draggable spline box beside the Sample hero + in the Zone panel, all math through the pure velocity_curve module daniel 2026-07-27 15:51:36 -04:00
  • c92d82df3a docs(phase-s): reconcile PLAN/COMPLETED/CLAUDE for S-VIEW Wave 2 daniel 2026-07-27 15:07:57 -04:00
  • 21c3656bf7 Merge pS-w2-t2-velcurve: velocity->amp transfer curve (velocity_curve spline + zones-payload v7 + Voice::start apply) daniel 2026-07-27 15:00:10 -04:00
  • 2edb609b65 Merge pS-w2-t1-shell: three-view ReaSampler 9000 editor (S-VIEW-1/2/5/8 + Wave-1 module wiring) daniel 2026-07-27 15:00:04 -04:00
  • c2a9f2a814 fix(comments): soften "bit-exact" to "~1e-15 floating-point rounding" in velocity_curve daniel 2026-07-27 14:59:35 -04:00
  • 026ca90217 vst: curve velocity_curve eval with a monotone cubic Hermite (Fritsch-Carlson) spline daniel 2026-07-27 14:45:50 -04:00
  • 8a7dc4b1c6 fix(trigger-seam): thread startFrame into both envelope converters; extract pure triggerPlayLength module + tests daniel 2026-07-27 14:37:05 -04:00
  • 25c77a5de3 docs(phase-q): settle Q-10 (audit-report home) and Q-11 (pitch-remediation depth) daniel 2026-07-27 14:36:57 -04:00
  • bbfb033819 docs(plan): add Phase Q pre-restructure functional+DSP audit wave (Q-W0) daniel 2026-07-27 14:29:56 -04:00
  • fcca987454 docs: ME-import places instrument on selected track daniel 2026-07-27 14:22:43 -04:00
  • 3b0c42fe52 Merge ME-import → selected-track placement daniel 2026-07-27 14:18:19 -04:00
  • 3a95ce61fe refactor(ingest): ME-import adds RS9k to selected track, not a new track daniel 2026-07-27 14:18:10 -04:00
  • a1f9dcf6f8 S-VIEW-9: velocity->amp transfer curve (pure velocity_curve module + zones-payload v7 + Voice::start apply) daniel 2026-07-27 14:18:01 -04:00
  • c12a374b88 Phase S Wave 2: three-view ReaSampler 9000 editor (Sample home / Browse modal / Zone) daniel 2026-07-27 14:17:58 -04:00
  • 8576832c84 docs: drop-onto-panel is bank-fill only daniel 2026-07-27 14:06:18 -04:00
  • b924e82f63 Merge drop-onto-panel bank-fill only daniel 2026-07-27 14:02:44 -04:00
  • 5f7fbad7fb fix(ingest): drop-onto-panel is bank-fill only daniel 2026-07-27 14:02:38 -04:00
  • 203005e6cf docs(phase-s): reconcile PLAN/COMPLETED/CLAUDE for S-VIEW Wave 1 daniel 2026-07-27 13:49:45 -04:00
  • c40458fc53 docs: reflect ME-import → new-instrument behavior daniel 2026-07-27 13:42:14 -04:00
  • 188f367ba2 Merge ME-import → new RS9k instrument daniel 2026-07-27 13:39:24 -04:00
  • 835bddadda feat(ingest): ME import loads a new instrument on a new track daniel 2026-07-27 13:39:18 -04:00
  • d38e4eef84 Merge pS-w1-t3-state: persist preview-trigger velocity as ComponentState v6 (S-VIEW-4 core) daniel 2026-07-27 13:39:09 -04:00
  • 912ce5b320 Merge pS-w1-t2-keytrk: per-zone keyTrack scalar + ratio math in both repitch engines (S-VIEW-6 core) daniel 2026-07-27 13:38:56 -04:00
  • 2b83447189 Merge pS-w1-t5-drop: fix drop-to-FX hotspot classifier, narrowed to tcp.fx/mcp.fx (S-VIEW-BUG-1) daniel 2026-07-27 13:37:58 -04:00
  • e08f7b827c Merge pS-w1-t6-size: 1080p default window size + min floor (S-VIEW-SIZE-1) daniel 2026-07-27 13:37:43 -04:00
  • 33e38c69fb Merge pS-w1-t4-kbd: keyboard_strip isNaturalKey predicate (S-VIEW-7 core) daniel 2026-07-27 13:37:32 -04:00
  • f9bd4d9bf3 Merge pS-w1-t1-env: envelope_overlay + envelope_edit pure modules (S-VIEW-3 core) daniel 2026-07-27 13:37:26 -04:00
  • 5a859cc9bf docs(phase-s): fold velocity->amp transfer-curve editor into S-VIEW (r10) daniel 2026-07-27 13:35:01 -04:00
  • 9a2b752fe9 docs(envelope): add Trigger frames<->fraction seam note + zero-delta guard on fade nodes daniel 2026-07-27 13:34:43 -04:00
  • 5870b18362 fix(instrument_drop): narrow FX hotspot to tcp.fx/mcp.fx, not bare tcp/mcp (S-VIEW-BUG-1) daniel 2026-07-27 13:34:40 -04:00
  • 5db620be78 fix(processor): close S-VIEW-4 previewVelocity persistence loop daniel 2026-07-27 13:34:39 -04:00
  • 7528a53a2a feat(vst-editor): bump default window to 840x560 + checkSizeConstraint floor (S-VIEW-SIZE-1) daniel 2026-07-27 13:26:11 -04:00
  • fef595be91 fix(drop): recognize TCP/MCP FX-button hotspot for instrument drop (S-VIEW-BUG-1) daniel 2026-07-27 13:26:10 -04:00
  • 858f736466 feat(keyboard_strip): add isNaturalKey predicate for piano-pattern overlay (S-VIEW-7) daniel 2026-07-27 13:26:08 -04:00
  • b0b24c3e31 S-VIEW-4: persist preview-trigger velocity as ComponentState envelope v6 daniel 2026-07-27 13:26:07 -04:00
  • 42dd30b2fe S-VIEW-6: per-zone keyTrack scalar (0-200%, default 100%) with pure ratio math in both repitch engines daniel 2026-07-27 13:25:53 -04:00
  • 12a7d072ac S-VIEW-3: add envelope_overlay + envelope_edit pure modules daniel 2026-07-27 13:24:48 -04:00
  • 3b9b78b82c docs(phase-s): settle S-VIEW velocity persistence + draggable nodes, single-pass on L3 daniel 2026-07-27 12:57:08 -04:00
  • 5ec84ab0eb docs: mark M9 abandoned in Phase Q framing; add L3 + bank_grid/tab_strip to CLAUDE.md daniel 2026-07-27 12:51:38 -04:00
  • 85eac37912 docs: close out Phase L L3 — archive to COMPLETED, mark landed in design-language doc daniel 2026-07-27 12:50:00 -04:00
  • 13b23801a0 docs(phase-s): spec three-view editor redesign (S-VIEW) — Sample/Browse/Zone daniel 2026-07-27 12:46:43 -04:00
  • c22a78bcba docs: reconcile CLAUDE.md with Phase S — two artifacts, vst3sdk submodule, VST module blocks + test targets daniel 2026-07-27 12:10:13 -04:00
  • 0ffa7a4e77 docs(plan): archive Phase S (S3-S18) to COMPLETED; PLAN keeps only the deferred S13 relay stub daniel 2026-07-27 11:57:27 -04:00
  • c53683e7da Merge pL-w3-vst-restyle: Phase L L3 — VST editor + embed strip restyled through the L1 kit (B pastel-on-grey + pastel spectral keyboard strip) daniel 2026-07-27 05:37:07 -04:00
  • 774d753b4c Phase L L3: restyle VST editor + embed strip through the L1 kit (B pastel + spectral strip) daniel 2026-07-27 05:30:44 -04:00
  • 6b643bb089 docs(context): record ratified item auto-tag adoption rule daniel 2026-07-27 05:04:00 -04:00
  • 31faf25889 Merge fix-drop-lane-strand: dropped captures adopt the track's existing mode, preventing lane-strand of pre-existing items daniel 2026-07-27 05:01:34 -04:00
  • 8887995d7a fix(design-view): adopt pre-existing track mode on drop to prevent lane strand daniel 2026-07-27 04:50:46 -04:00
  • e0d4358452 Merge phase-s: Phase S complete — ReaSampler 9000 VST3 sampler (S1-S18), editor scale + control surfaces (S12), drop-and-load (S17), editor drop-accept (S13 relay degraded per spec) daniel 2026-07-27 04:46:45 -04:00
  • 6a014114c2 refactor(bank_panel): factor resetDragState() helper; fix WM_CAPTURECHANGED missing instrumentDropTrack reset daniel 2026-07-27 04:46:30 -04:00
  • af557fdc25 Merge ps-w12-drop-to-load: S17 drop-and-load (InstrumentDrop gesture + vst_chunk inject); S13 editor drop-accept, relay degraded per spec daniel 2026-07-27 03:58:33 -04:00
  • 3440ddb268 fix(instrument_drop_win): make performInstrumentDrop all-or-nothing daniel 2026-07-27 03:58:05 -04:00
  • 26e2bf2fc6 S17 drop-and-load onto track FX button; S13 editor drop-accept (relay degraded) daniel 2026-07-27 03:52:26 -04:00
  • 06494c654e Merge ps-w11-editor-scale: S12 editor scale + S15/S16 control surfaces (seconds-domain ADSR, zones payload v5) daniel 2026-07-27 03:18:28 -04:00
  • b2a4533563 fix(comments): correct stale v3 "CURRENT" payload prose to v5 in sample_map daniel 2026-07-27 03:18:10 -04:00
  • 082c9b82c2 s12: thread project rate through v3 legacy lift; remove 44100 literals daniel 2026-07-27 03:07:52 -04:00
  • a54af277e4 S12: store wall-clock ADSR/pitch-env as seconds, resolve to frames at live rate daniel 2026-07-27 02:51:46 -04:00
  • 1d338318e7 fix: S12 R2 — marker-drag sets selectedZone_, ADSR rate-resolve, gateAdsr doc daniel 2026-07-27 02:01:43 -04:00
  • 7fb778206c fix(S12 review): per-zone A/D/S/R reaches voice; zones payload v4 + v3 back-compat daniel 2026-07-27 01:38:48 -04:00
  • 4f30124ef7 S12: editor scale + S15/S16 control surfaces daniel 2026-07-27 01:09:19 -04:00
  • ddc2ec1e75 docs(plan): tick S9/S15/S16/S18; annotate Preserve as hand-rolled OLA (WDL held as swap) daniel 2026-07-27 00:30:30 -04:00
  • f79b9cafa3 Merge ps-w10-vst-channel: S18 VST3 channel isolation daniel 2026-07-27 00:20:53 -04:00
  • 1193a52ea4 Merge ps-w9-t2-modes: S15/S16 sampling modes + pitch engines daniel 2026-07-27 00:18:02 -04:00
  • bab82d4c43 S18: extend channel-pairing static_assert to all four UID words daniel 2026-07-27 00:02:58 -04:00
  • 8785cbe646 Merge ps-w9-t1-sync: S9 bank-generation change-detection + assignment reader daniel 2026-07-27 00:05:22 -04:00
  • 5dcd5d0d9d fix(comments): correct two misleading impl comments in sampler_core (rescan vs tally; re-dispatch vs recursion) daniel 2026-07-27 00:02:57 -04:00
  • fe55a9a96e feat(vst): S18 VST3 channel isolation — beta ReaSampler 9000 pairs with beta extension only daniel 2026-07-26 23:54:10 -04:00
  • 0e9ef05c75 docs(product): spec S18 — VST3 channel isolation (beta ReaSampler 9000 pairs with beta extension only) daniel 2026-07-26 23:37:53 -04:00
  • be67c93b39 Merge ps-hotfix-mojibake: ASCII-only strings on the ANSI draw path daniel 2026-07-26 23:29:45 -04:00
  • 1e1d6bddbb S15/S16: Gate(AHDSR)/Trigger play modes + Varispeed/Preserve pitch engines + AD pitch envelope daniel 2026-07-26 23:50:31 -04:00
  • 77e7c39171 fix(review): embed asymmetry comment, single-lock assign-marker, dedup-collapse test daniel 2026-07-27 00:02:32 -04:00
  • 66d47fb410 feat(S9/S8): bank-generation change-detection + instrument-side assignment reader daniel 2026-07-26 23:46:06 -04:00
  • 70d73ea798 fix(vst): replace non-ASCII em-dash/ellipsis in editor string literals with ASCII equivalents to fix mojibake on ANSI DrawTextA path daniel 2026-07-26 23:19:50 -04:00
  • 37cb290cbc docs(product): S17 load-capture seam — settle on (B) component-state injection daniel 2026-07-26 23:09:28 -04:00
  • 725f3e7d3c Merge ps-w7-ingest: S8 ingest through the bank (extension side) daniel 2026-07-26 22:10:25 -04:00
  • 7a191bde61 test: S7xS11 compose — stereo+startFrame+loop share one read head; v4 stereo envelope + v2 zone overrides round-trip together daniel 2026-07-26 22:09:45 -04:00
  • 75f717bd47 Merge ps-w8-t2-waveform: S11 waveform view + draggable loop points daniel 2026-07-26 22:06:42 -04:00
  • 373948c18a fix(ingest): convert-on-import to 32f WAV, undo-group bank+assign, overflow guards daniel 2026-07-26 21:56:09 -04:00