Docs: reflect three-scope FX capture rework; add FX-scope invariant + send-isolation TODO

Note the M7 four-mode -> three-FX-scope rework in COMPLETED.md; add the capture
FX-scope precision invariant to CLAUDE.md; record the send/routing isolation TODO
(coloring sends bleed into item captures) in PLAN.md open questions.
This commit is contained in:
2026-07-23 14:01:28 -04:00
parent bcd7def7c8
commit e1b2c0ba1b
3 changed files with 7 additions and 0 deletions
+1
View File
@@ -78,6 +78,7 @@ landed milestone.
`int64_t → int` via `static_cast` without a range check; integers that fit
in int64 but exceed `INT_MAX` are implementation-defined. Hardening candidate
— add bounds check before the cast when integer-field validation is in scope.
- **Capture send/routing isolation (TODO):** The FX-scope capture neutralizes out-of-scope FX, gain, and pan — but NOT aux **sends**. So a downstream coloring send (e.g. a folder → reverb-track send) still routes and blends the reverb into an item/track capture, past the intended isolation point. A true item-level capture should be taken at the isolated graph point — the target scope's output before out-of-scope track FX/gain/pan **and** before out-of-scope aux/parallel sends. The hard part: distinguish **source routing that must be preserved** (e.g. a MIDI send T1→T2 where T2's synth is where a MIDI item's audio is actually produced — the "item level" for that MIDI item is T2's synth output) from **coloring sends that must be excluded** (folder→reverb). Repro: folder F1; T1 (MIDI) sends MIDI to T2 (synth); T1+T2 → F1; F1 sends to reverb T3; capturing the MIDI item on T1 currently includes the reverb, should be isolated to T2's synth output pre-F1 with the MIDI send preserved and the reverb send excluded. Likely approach: snapshot + mute out-of-scope tracks' aux sends during the render while preserving the main/source signal path — needs a rule for which sends are load-bearing.
---