5420550ff3
fix: correct app CMakeLists comments, drop dead bridge_marshal link edge
daniel2026-07-30 12:40:37 -04:00
68765da031
build: route every core/ TU into reaper_reasampler through exactly one static-library link edge, never a direct compile
daniel2026-07-30 12:28:39 -04:00
d04045be69
build: split the 1423-line root CMakeLists into per-directory files with shared target helpers
daniel2026-07-30 12:19:18 -04:00
25c63fb807
docs: close out Θ-W1-T3 and Θ-W2-T2/T3 into COMPLETED; add the filter directory to the architecture map
daniel2026-07-30 11:16:21 -04:00
b9d85161e5
Merge Θ-W2-T3: full-width piano strip with uniform key widths, note tooltips, one toolbar font
daniel2026-07-30 11:09:57 -04:00
1aea481688
Merge Θ-W1-T3: TPT/SVF filter with HP-BP-LP and HP-notch-LP morph laws and a drive stage
daniel2026-07-30 11:09:44 -04:00
d2364eb5ac
Add an Oberheim-SEM morph law to the SVF filter: HP->notch->LP alongside HP->BP->LP, selected at prepare() time, free on the per-sample path
daniel2026-07-30 10:22:49 -04:00
f12700c997
Filter review fixes: gate softLimit on drive, correct flush/DF1 measurement claims, pin control-law test literals, fix stale bypass state
daniel2026-07-30 09:57:37 -04:00
902030bfba
Rebuild the instrument filter as a TPT/SVF with a continuous HP-BP-LP morph and a configurable drive stage
daniel2026-07-30 09:14:13 -04:00
7d42d7ed29
Make the high-pass feedback tap a fixed 1/48000 s interval so resonance stops scaling with sample rate; 48k and 44.1k bit-identical
daniel2026-07-30 08:01:28 -04:00
7af3c0c630
Fix filter DSP click-train flush and finish namespace nesting + test coverage
daniel2026-07-30 07:00:41 -04:00
78e112d1f9
Port Cortex-M4 resonant filter to a pure vtable-free core/instrument/engine/filter module with 0.1-10 Q and log cutoff
daniel2026-07-30 00:09:06 -04:00
e89568c1a8
Clear stale hover on capture-loss and Alt-delete; derive gutter test via chromeRects
daniel2026-07-30 10:39:27 -04:00
9812690b96
Fix stale hover latch on drag release, tooltip anchor, border off-by-one; pin gutter golden test, drop DPI framing
daniel2026-07-30 09:35:18 -04:00
ae23ee0882
Rebuild the chrome band: full-width piano strip with uniform key widths, note tooltips, one toolbar font
daniel2026-07-30 09:14:07 -04:00
ea52b14f2a
Merge Θ-W2-T2: stacked L/R waveform lanes with a type-enforced full-height overlay contract
daniel2026-07-30 10:59:47 -04:00
4d2316b77c
docs(phase-q): record Q-W4/Q-W5/Q-W6 landings — all seven waves structurally complete; remaining: DAW verification batch, CLAUDE.md refresh, dev merge
daniel2026-07-29 13:57:44 -04:00
d1202b3174
Merge pq-w6-table: Q-W6 — OCP registration table (adding an action touches one row); bank verbs lifted to shell/bank_ops(Session&); persist.h umbrella, wav_trim shim, and core/namespaces.h all retired; grow-loop rehomed to core/wire; FOREVER-STABLE strings byte-identical; 61/61 green
daniel2026-07-29 13:51:47 -04:00
cd12b97631
Q-W6 review follow-ups: drop stale wav_trim clause, fix stale include comment, idempotent action-table clear, reflow ragged comment, align session.h trailing comments
daniel2026-07-29 13:51:35 -04:00
3bcd4dcc7b
Merge pq-w3-main: Q-W3 — main.cpp → pointers+entry+dispatch via 4 capture hoists; one pure wav_codec RIFF owner (golden hash pinned); ICaptureBackend deleted; capture_realtime rename + finalize split; stampCaptureSample dedupe; makeUniqueTag monotonic counter; 61/61 green
daniel2026-07-29 11:37:13 -04:00
6108673c84
Q-W3 rebase fix: hoisted capture TUs include the Q-W2 panel seam headers (panel_bank_ops/panel_input) instead of the deleted bank_panel.h
daniel2026-07-29 11:36:32 -04:00
8bc5aa1257
Q-W3 review follow-ups: golden hash literal test, CLAUDE.md wav_codec bullet, dead RecordedCapture field comment, makeUniqueTag residual note
daniel2026-07-29 11:28:55 -04:00
b8e8bb4c75
docs(todo-1.0): item 15 — one-click in-sampler resample (fourth batch, 2026-07-29); five questions await Daniel
daniel2026-07-29 10:39:35 -04:00
9dd3440b75
docs(phase-q): record Q-W0 close + Q-W1 landing — points moved to COMPLETED.md; skipped riders and bank_book nameKey residual preserved
daniel2026-07-29 09:50:37 -04:00
2d59bbe35d
Q-W1 code-review follow-ups: restore 104 trailing newlines, relocate reasampler_uid.h to core/wire, drop ext_keys namespaces shim, add slot_map_tests, golden serialize literals for 4 modules, namespaces.h/pragma-once ordering sweep. 60/60 green.
daniel2026-07-28 21:33:51 -04:00
847936f813
Q-W1 pt2: core/shell/app relocation + sub-namespaces; one concrete ui::Rect (LTRB fork retired); slot_map split from bank_book; BankIndex→BankModel; 59/59 green
daniel2026-07-28 20:48:56 -04:00
67a41728f3
Q-W1 pt1: extract core/json (json::Reader/Writer), collapse wire Cursor family into core/wire, shared readFileBytes — five JSON decoders and three cursor copies deleted, byte-identical formats, 59/59 green
daniel2026-07-28 19:59:02 -04:00
88e7765ee5
docs(TODO-1.0): filter envelope follows the mode-driven shape; no open questions await a Daniel decision
daniel2026-07-28 20:09:13 -04:00
32785606d4
docs(TODO-1.0): item 14 — Trigger-mode amp fades replaced by AHD with curves; amp envelope shape follows playback mode
daniel2026-07-28 20:04:59 -04:00
b2013f2056
docs(TODO-1.0): close item 8 — Hold is a share of the post-A+D remainder, so the length bound holds by construction; 1:1 overlay scoped to sustain-less envelopes
daniel2026-07-28 20:00:26 -04:00
15d293b42f
fix(q-w0): six audit fix-nows — linked-lag stereo SOLA, playable-span prime bound, declick dead-state, provenance cursor hardening, rate-derived gain ramp + fade ceiling
daniel2026-07-28 18:44:52 -04:00
35f02cece2
docs(TODO-1.0): fold third answer round — spline point ceiling 128, right-click delete; doc fully settled
daniel2026-07-28 19:04:36 -04:00
678274c19b
docs(TODO-1.0): fold second answer round — items 1-2 fully settled, item 3 down to point bounds and popup gesture convergence
daniel2026-07-28 18:59:46 -04:00