Key Design View's parked FX-offline state to the FX's own GUID, not its slot

view_state v2 writes identities beside the v1 slot array, so a downgrade keeps
what it had. An FX gone at restore time is dropped and reported, never restored
onto whatever took its place.
This commit is contained in:
2026-08-02 18:31:08 -04:00
parent 4231b2321c
commit 5f6efb7cc3
10 changed files with 780 additions and 58 deletions
+4 -1
View File
@@ -34,7 +34,10 @@ decide membership or mode rules.
value BEFORE parking; on toggle-back restore FROM the snapshot, never to a
hardcoded "on." Round-trip (snapshot → park → restore) returns every driven flag
to its captured value — the phase's trust anchor, the analog of the capture null
test.
test. Per-FX offline is snapshotted WITH each FX's identity (`TrackFX_GetFXGUID`)
and restored through `core/view/fx_offline`, so a chain reordered while the track
was parked cannot land one plugin's state on another; an FX gone at restore time
is dropped and reported to the console, never restored onto its old slot.
- **GUID-keyed, reorder-safe.** Membership/snapshot keys on track GUID
(`GetTrackGUID`), never track index; tolerates unknown/stale GUIDs (pruned on
reconcile).