Commit Graph

566 Commits

Author SHA1 Message Date
daniel 40bcf0d56d fix(editor): close curve popup on zone-count change; degenerate-rect guard + comment corrections 2026-07-28 00:09:13 -04:00
daniel 682c21509a FB2: Zone panel adopts the r11 knob deck + curve popup (R11-F2 parity) — slider rows and inline curve box retired, zone-authoring affordances kept 2026-07-27 23:58:07 -04:00
daniel d272aab0df docs: record FB1 r11 Sample-view recompose + master gain (v8); move S-VIEW-11/12 to COMPLETED; correct stale r11 zero-state-change line 2026-07-27 23:58:05 -04:00
daniel a66acb7473 Merge pS-fb1-sampleview: FB1 (r11) Sample-view recompose — knob deck, full-width hero, curve popup, post-mixer master gain (v8) 2026-07-27 23:38:30 -04:00
daniel e2c73e30d6 fix(vst): master-gain per-sample ramp (no zipper/click); voice-count commits once on release; minor review items 2026-07-27 23:30:27 -04:00
daniel 43155cf320 Phase S FB1 (r11): Sample-view recomposition — knob deck + elastic full-width hero + curve popup w/ right-click delete + post-mixer master gain (ComponentState v8) 2026-07-27 23:08:04 -04:00
daniel 7bafb7fe9c docs(claude): describe beta version display by shape, not a hardcoded literal 2026-07-27 23:01:06 -04:00
daniel 03ec8d2f96 Merge p10-w3-bump-canary: bump to 0.9.8 + anti-normalization padding canary 2026-07-27 22:59:18 -04:00
daniel 247d1034b0 fix(comments): correct canary justification and expand failure guidance in padding tests 2026-07-27 22:59:08 -04:00
daniel 3790677097 bump to 0.9.8; add padded-canary build (app_version_padding_tests)
Canary re-proven on this base: reconstruct-from-components trips the
fixture checks; an unpadded fixture trips the non-vacuity assertion.
De-literalizes stale version examples in comments.
2026-07-27 22:51:16 -04:00
daniel 0c06bbad2c Merge p10-w1-t2-drop-action-buttons: remove dead action_buttons module 2026-07-27 22:38:40 -04:00
daniel 27b2661ef2 docs: record post-S-VIEW DAW-fix pass + voice-system redesign (parameterized voices, mono, preview card, two-tier panic, v7) 2026-07-27 22:27:33 -04:00
daniel 051b347e93 Merge pS-voice: voice-system redesign — user-set polyphony, mono (retrig|legato), isolated preview card, two-tier panic (v7); incorporates FA1 realtime fixes 2026-07-27 22:14:09 -04:00
daniel 9241c850c2 Merge pS-appver: decouple app_version test from the hardcoded version literal (bump-robust) 2026-07-27 22:14:02 -04:00
daniel 080a7be8ca fix(voice): CC 120 hard-stops voices (incl. Trigger); Mono sizes voices_ to 1; comments corrected
CC 120 -> allSoundsOff/hardStop (immediate silence, stops Trigger one-shots); CC 123 -> allNotesOff/releaseAll (release, unchanged). Mono VoiceEngine sizes voices_ to 1 structurally. Legato same-note re-press edge documented. Three new tests.
2026-07-27 22:08:56 -04:00
daniel cd64be9129 remove dead action_buttons module (superseded by action_bar in Phase L)
Deletes src/action_buttons.{h,cpp} and tests/test_action_buttons.cpp;
removes the static library, test target, and reaper_reasampler link
entry from CMakeLists.txt; scrubs all dangling comment references.
2026-07-27 22:04:27 -04:00
daniel 502f3c9e30 docs: correct six false archive claims; surface docs/product in CLAUDE.md
Phantom symbols commitMapAndReload, AhdsrParams, kReaSamplerProcessorUIDBeta
replaced with what shipped. Corrects two over-claims and un-ticks the D5
tooltip, which was never built.
2026-07-27 21:56:06 -04:00
daniel cc64def2d0 fix(voice): Trigger legato keys on held-stack depth, CC123 allNotesOff clears mono stack, voice-param edits rebuild from decoded PCM (no re-decode), mono sizes 1 shifter ring 2026-07-27 21:54:03 -04:00
daniel 7354f471c6 test(app_version): decouple assertions from the hardcoded version literal
Replace five literal "0.9.01" assertions with stampVersion()-relative checks and a parse round-trip; add testLeadingZeroFidelity() as a synthetic fixed-string pin so any REASAMPLER_VERSION bump no longer breaks the suite.
2026-07-27 21:53:41 -04:00
daniel 15d7bd80c0 docs(plan): archive landed and abandoned work per PLAN.md convention
Moves the shipped 9000 rename, Milestone 9 (abandoned), Phase D2, Phase L,
and S-VIEW-1-10 to COMPLETED.md. Restores the held-scope heading and
deduplicates Phase L.
2026-07-27 21:51:37 -04:00
daniel b09f375490 docs: fix swell_resgen.php path and repair citations broken by the CONTEXT split
mac_resgen.php does not exist. 34 CONTEXT.md citations retargeted to
CONTEXT-ARCHIVE.md; 6 self-inverted refs in the archive corrected.
2026-07-27 21:32:22 -04:00
daniel 885b7f29a2 Phase S voices: user-set polyphony, mono stack (retrig|legato), isolated preview card, idle-drain retirement; unity bypass preview-only (v7) 2026-07-27 21:29:30 -04:00
daniel e4f4691a0d docs: rewrite README to current state, retire TODO.md, fix stale mpe_model ref
README was frozen at Milestone 0. TODO.md was entirely M0-M2 tasks, all
landed. CONTEXT.md intro cited a file deleted in M0.
2026-07-27 21:07:19 -04:00
daniel 0e7b36eb17 docs(claude): grep CONTEXT.md by phase, don't read it whole; note CONTEXT-ARCHIVE.md 2026-07-27 20:27:00 -04:00
daniel 959019bcf5 docs(context): split landed build detail into CONTEXT-ARCHIVE.md
CONTEXT.md 270k -> 186k chars. Module architecture, API surface, and
landed implementation specs moved verbatim; settled decisions,
invariants, guardrails, and unbuilt Phase Q / S-VIEW Wave B retained.
2026-07-27 20:23:19 -04:00
daniel d9321eaf3a FA1: unity-Preserve bypass kills preview onset latency; drain-slot reload keeps voices ringing through curve edits; velocity path proven end-to-end 2026-07-27 19:50:21 -04:00
daniel 2b8ab4abe4 Merge pS-fa3-waveform: gap-free per-column min/max waveform render (columnMinMax in peaks, shared across panel + editor) 2026-07-27 19:47:49 -04:00
daniel 69d5621f51 Merge pS-zonebleed: fix zone-bleed (3a) — Sample-face zone reconcile so the played zone matches the drawn one 2026-07-27 19:47:09 -04:00
daniel 6056302752 Merge pS-fa2-envmodel: fully-editable bounded amp envelope nodes (Gate + Trigger) 2026-07-27 19:47:02 -04:00
daniel e550234d0c Merge pS-fa4-knob: radial KNOB primitive (7->5 arc, needle, vertical-drag) in param_slider 2026-07-27 19:46:56 -04:00
daniel 88c122fcb4 fix(zone-view): Add Zone seeds narrow octave range so new zones survive reconcile 2026-07-27 19:38:03 -04:00
daniel 1e645adcef fix(draw_kit): reclaim 4x waveform oversample; relocate waveformColumnCount to component_geometry
kWaveformOversample set to 1 (was 4) — overbinning produced byte-identical pixels because columnMinMax exact partition already makes the draw gap-free. Comments credit columnMinMax, not oversampling.
2026-07-27 19:37:53 -04:00
daniel 9b3a9afb36 docs(claude): condense CLAUDE.md 42k -> 18k chars
Delete phase changelog and CMake target table, reduce module entries to
one clause each. All load-bearing invariants preserved verbatim.
2026-07-27 19:10:04 -04:00
daniel 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 2026-07-27 19:09:53 -04:00
daniel cf93d4dc50 fix(param_slider): 7->5 o'clock arc (50% straight up), seam contract single-sourced, boundary/normDeg/wrap-boundary fixes 2026-07-27 19:09:51 -04:00
daniel b3c9fad9ba fix(waveform): 4x-oversampled min/max envelope, columnMinMax homed in peaks, panel routed through shared drawWaveform — one gap-free algorithm on all surfaces 2026-07-27 19:09:50 -04:00
daniel 99f377db28 FA2: param-domain Gate schematic + 8px node min-sep (all nodes grabbable at defaults); cross-mode drag guard; double-clamp px overflow fix 2026-07-27 19:09:47 -04:00
daniel a4e33b1c04 docs(s-view): spec the r11 Sample-face recomposition (knob deck, curve popup, full-width hero) for Wave B
Adds S-VIEW-11/12/13 to PLAN, r11 addendum, and forks R11-F1 (window default height) + R11-F2 (Zone-panel knob parity) for Daniel.
2026-07-27 18:25:32 -04:00
daniel 6c0bb4c204 feat(param_slider): radial KNOB primitive — parameterized 6->4 o clock arc, needle endpoint, vertical-drag value map, circular hit-test (FA4) 2026-07-27 18:25:07 -04:00
daniel 20308c842e fix(waveform): per-column min/max envelope fill eliminates gaps in steep segments 2026-07-27 18:25:05 -04:00
daniel 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 2026-07-27 18:25:03 -04:00
daniel e2bd4f4351 docs(phase-s): close out S-VIEW-10 — Phase S three-view editor redesign complete
Move S-VIEW-10 (velocity-curve editor UI) to COMPLETED; all ten S-VIEW points landed. No open S-VIEW items remain.
2026-07-27 16:11:12 -04:00
daniel b7cc8d0ca3 Merge pS-w3-velcurve-ui: velocity-curve editor UI (S-VIEW-10) — draggable spline points in Sample + Zone views 2026-07-27 16:05:32 -04:00
daniel d982d14760 fix(velcurve-ui): caption overlap, add-in-ring data corruption, drag-off warn affordance 2026-07-27 16:05:05 -04:00
daniel 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 2026-07-27 15:51:36 -04:00
daniel c92d82df3a docs(phase-s): reconcile PLAN/COMPLETED/CLAUDE for S-VIEW Wave 2
Move S-VIEW-1..9 to COMPLETED (three-view editor + velocity spline curve v7); F3 settled (full-window Browse modal); S-VIEW-10 (curve editor UI) remains the lone open Phase S item. Add trigger_seam + velocity_curve to the module inventory.
2026-07-27 15:07:57 -04:00
daniel 21c3656bf7 Merge pS-w2-t2-velcurve: velocity->amp transfer curve (velocity_curve spline + zones-payload v7 + Voice::start apply) 2026-07-27 15:00:10 -04:00
daniel 2edb609b65 Merge pS-w2-t1-shell: three-view ReaSampler 9000 editor (S-VIEW-1/2/5/8 + Wave-1 module wiring) 2026-07-27 15:00:04 -04:00
daniel c2a9f2a814 fix(comments): soften "bit-exact" to "~1e-15 floating-point rounding" in velocity_curve 2026-07-27 14:59:35 -04:00
daniel 026ca90217 vst: curve velocity_curve eval with a monotone cubic Hermite (Fritsch-Carlson) spline
True curved response, provably no overshoot outside [0,1]; collinear knots reproduce the exact linear ramp so linear()'s null-response stays bit-exact. Eval-only; v7 wire-format untouched. Adds spline tests.
2026-07-27 14:45:50 -04:00