Phase 5 step 2
This commit is contained in:
@@ -7,8 +7,8 @@ Phase 1 named the subsystems. Phase 2 added the typed event substrate. Phase 3 m
|
||||
## Status
|
||||
|
||||
- Phase 5 design package: proposed.
|
||||
- Phase 5 implementation: Step 1 started.
|
||||
- Current alignment: Phase 3 introduced the first pure composition boundary and transient OSC overlay owner, and Phase 5 now has a small `RuntimeStateLayerModel` inventory that names the current state categories. Committed runtime values are still physically stored through `RuntimeStore`/`LayerStackStore`, and transient OSC overlay state is still applied through render-facing helpers rather than through the final layered composition contract.
|
||||
- Phase 5 implementation: Step 2 started.
|
||||
- Current alignment: Phase 3 introduced the first pure composition boundary and transient OSC overlay owner. Phase 5 now has a small `RuntimeStateLayerModel` inventory that names the current state categories, and `RenderStateComposer` consumes a `LayeredRenderStateInput` whose fields make base persisted, committed live, and transient automation inputs explicit. Committed runtime values are still physically stored through `RuntimeStore`/`LayerStackStore`, and transient OSC overlay state is still applied through `RuntimeLiveState`.
|
||||
|
||||
Current live-state footholds:
|
||||
|
||||
@@ -16,7 +16,7 @@ Current live-state footholds:
|
||||
- `RuntimeCoordinator` owns mutation validation, classification, accepted/rejected event publication, snapshot/reload follow-ups, and the policy switch between committed states and live snapshots.
|
||||
- `RuntimeSnapshotProvider` publishes render-facing snapshots from committed runtime state.
|
||||
- `RuntimeLiveState` owns transient OSC overlay bookkeeping, smoothing, generation tracking, and commit-settlement policy.
|
||||
- `RenderStateComposer` combines base render states with live overlay state and returns final per-frame layer states plus settled commit requests.
|
||||
- `RenderStateComposer` consumes `LayeredRenderStateInput`, chooses committed-live layer states over base-persisted layer states when both are supplied, applies transient automation on top, and returns final per-frame layer states plus settled commit requests.
|
||||
- `RuntimeServiceLiveBridge` drains OSC ingress/completion queues and applies them to render live state during frame preparation.
|
||||
- `RuntimeStateLayerModel` names the Phase 5 state categories and classifies current fields as base persisted, committed live, transient automation, render-local, or health/config state.
|
||||
|
||||
@@ -246,19 +246,18 @@ Initial target:
|
||||
|
||||
### Step 2. Name The Layered Composition Input
|
||||
|
||||
Introduce a named composition input model around the current `RenderStateCompositionInput`.
|
||||
Introduce a named composition input model around the previous `RenderStateCompositionInput`.
|
||||
|
||||
Initial target:
|
||||
|
||||
- make base/committed/transient inputs visible in type names or field names
|
||||
- keep `RenderStateComposer` behavior unchanged at first
|
||||
- add tests that assert precedence with no GL
|
||||
- [x] make base/committed/transient inputs visible in type names or field names
|
||||
- [x] keep `RenderStateComposer` behavior unchanged at first
|
||||
- [x] add tests that assert precedence with no GL
|
||||
|
||||
Possible outcomes:
|
||||
|
||||
- evolve `RenderStateCompositionInput`
|
||||
- add a new `LayeredRenderStateInput`
|
||||
- add a thin adapter that feeds existing `RenderStateComposer`
|
||||
- [x] add a new `LayeredRenderStateInput`
|
||||
- [ ] add a thin adapter if a later migration needs compatibility with the previous input shape
|
||||
|
||||
### Step 3. Make Reset And Reload Policy Explicit
|
||||
|
||||
@@ -366,9 +365,9 @@ Render-local resources such as temporal history, feedback buffers, readback cach
|
||||
|
||||
Phase 5 can be considered complete once the project can say:
|
||||
|
||||
- [ ] persisted, committed-live, and transient automation layers are named in code or clear read models
|
||||
- [ ] final render-value precedence is explicit and covered by tests
|
||||
- [ ] `RenderStateComposer` or its replacement consumes a layered input contract
|
||||
- [x] persisted, committed-live, and transient automation layers are named in code or clear read models
|
||||
- [x] final render-value precedence is explicit and covered by tests
|
||||
- [x] `RenderStateComposer` or its replacement consumes a layered input contract
|
||||
- [ ] reset/reload/preset behavior for transient overlays is centralized or clearly delegated
|
||||
- [ ] OSC overlay settle/commit behavior is explicit, including persistence policy
|
||||
- [ ] `RuntimeStore` remains durable-state focused and does not absorb transient automation policy
|
||||
|
||||
Reference in New Issue
Block a user