Docs: reflect Phase D5 landing; close out Phase D

Archive D5 (mode switch) to COMPLETED.md and remove the completed Phase D
section from PLAN.md; add mode_switch to CLAUDE.md architecture + targets.
This commit is contained in:
2026-07-23 12:47:13 -04:00
parent 4700415fb6
commit 43ca5e4069
3 changed files with 25 additions and 33 deletions
+3 -1
View File
@@ -22,7 +22,7 @@ Vendors two submodules (see `.gitmodules`):
cmake --build build
ctest --test-dir build
Six targets:
Seven targets:
| Target | Kind | Purpose |
|---|---|---|
@@ -31,6 +31,7 @@ Six targets:
| `capture_paths_tests` | executable | Pure unit tests for `capture_paths` — no REAPER, no DAW. |
| `view_mode_model_tests` | executable | Pure unit tests for `view_mode_model` — no REAPER, no DAW. |
| `view_tree_tests` | executable | Pure unit tests for `view_tree` — no REAPER, no DAW. |
| `mode_switch_tests` | executable | Pure unit tests for `mode_switch` — no REAPER, no DAW. |
| `reaper_reasampler` | loadable module | The actual extension binary (`.dll` / `.dylib` / `.so`). |
### macOS / Linux: SWELL dialog resources
@@ -52,6 +53,7 @@ There is no hot-reload. Copy the built binary into REAPER's `UserPlugins/` folde
- `peaks` — waveform min/max bin computation from raw PCM. Fed a known signal, asserts envelope. Does not depend on REAPER's peak API.
- `view_mode_model` — Design View mode system: mode registry, GUID-keyed membership, folder-tree-aware visibility derivation, snapshot-based park/restore planner, JSON round-trip. Mirror of `bank_model` for the Design View phase.
- `view_tree` — pure `I_FOLDERDEPTH`→FolderTree helper for the Design View shell; no REAPER types at the boundary.
- `mode_switch` — REAPER-free segment layout + hit-test math for the bank_panel's Design View mode switch; divides a header rectangle into N equal segments and hit-tests a point to a segment. Mirror of `bank_grid`.
**REAPER-facing shells:**
- `capture``ICaptureBackend` interface; `OfflineRenderBackend` (deterministic default) and `RealtimeRecordBackend`. Input: `CaptureRequest`. Output: finished file + populated `Sample` handed to `bank_model`.