docs(runtime): close combat and magic intent

Record the exact J5.3 owner boundary, retail ordering, Release and connected evidence, rollback, and J5.4 handoff across architecture, roadmap, milestones, agent instructions, and durable memory.

Co-authored-by: Codex <noreply@openai.com>
This commit is contained in:
Erik 2026-07-26 12:09:19 +02:00
parent 20df9d155d
commit 75b761e658
11 changed files with 124 additions and 41 deletions

View file

@ -474,10 +474,10 @@ useful ordering seam, but its ownership status is **partial**.
| Inbound/object-frame order | **Complete App orchestration** | `UpdateFrameOrchestrator` owns the complete typed host phase graph; `RetailInboundEventDispatcher`, `RetailLiveFrameCoordinator`, `LiveObjectFrameController`, `LiveSpatialPresentationReconciler`, streaming/input/teleport/player-mode/camera owners preserve the accepted order. `GameWindow.OnUpdate` is one profiler-scoped handoff (`e91f3102`). |
| World reveal | **Complete** | `WorldRevealCoordinator` owns login/portal readiness, generation quiescence, and the exact streaming destination reservation. Login auto-entry and portal completion close only their active generation; stale completion cannot clear its replacement. Delayed portals retain the authored tunnel and centered retail wait notice rather than force-revealing incomplete content. Quiesced destination projections may become spatially resident for renderer preparation while all availability-gated gameplay consumers stay closed. |
| Retained gameplay UI | **Mostly complete feature ownership** | `RetailUiRuntime` and focused panel/controllers own layout and behavior. `GameWindow.OnLoad` still performs substantial service composition, which is allowed until the final composition cleanup. |
| Selection/interaction | **J5.1J5.2 complete; J5.3 active** | Runtime `RuntimeActionState` owns the exact selection, combat, target-mode, and `RuntimeInteractionTransactionState` children. The transaction child owns use/appraisal/pickup identity, the typed ordered FIFO, and exact post-arrival token while borrowing J4's sole inventory busy/request gate. App `WorldSelectionQuery`, movement/transport adapters, lighting, toasts, drag/drop, and pending-slot drawing remain presentation. No App transaction fallback or delegate queue remains (`b298f99f`, `f5f7b417`). |
| Action/combat/magic | **J5.1J5.3 complete; J5.4 active** | Runtime `RuntimeActionState` owns the exact selection, temporary target mode, interaction transactions, combat attack/target/mode, and spell-cast intent children. Interaction owns use/appraisal/pickup identity, ordered FIFO, and exact post-arrival token while borrowing J4's sole busy gate. Retained bars, input, world/content queries, transport, lighting, toasts, drag/drop, and effects remain App adapters/presentation. No parallel App owner remains (`b298f99f`, `f5f7b417`, `20df9d15`). |
| Landblock presentation | **Complete** | `LandblockBuildFactory` owns the captured-origin DAT transaction; concrete render/physics/DAT-static publishers and `LandblockPresentationPipeline` own typed-meter publication and exact retryable retirement. `StreamingController` owns stable destination/control/unload/Near/Far queues and destination reservation. CPU mesh-cache restaging requires an exact live owner. `StreamingOriginRecenterCoordinator` serializes old-window retirement with teleport/session origin lifetimes. `GameWindow` retains construction and one pipeline field only (`c79d0a49`, closeout `4a205a3e`; Slice E closeout `91e82c3c`). |
| Render-frame orchestration | **Complete** | `RenderFrameOrchestrator` owns the GPU-flight, resource, world/PView/shared-alpha, private-presentation, diagnostics, screenshot, and recovery graph. `GameWindow.OnRender` takes one logical window-size snapshot and performs one immutable handoff (`9d7df1bf`). |
| Unified `GameEntity` | **Slice J active at J5.3** | Canonical identity, retained-object lifetime, direct views, ordered entity/object deltas, J4 gameplay state, and J5.1J5.2 action/interaction state share failure-safe Runtime owners while exact graphical sidecars stay in App. J5.3J7 move combat/magic intent, movement/physics/projectiles, and remaining world authority before one Runtime composition root. |
| Unified `GameEntity` | **Slice J active at J5.4** | Canonical identity, retained-object lifetime, direct views, ordered entity/object deltas, J4 gameplay state, and J5.1J5.3 action/combat/magic state share failure-safe Runtime owners while exact graphical sidecars stay in App. J5.4J7 move movement/physics/projectiles and remaining world authority before one Runtime composition root. |
### 4.3 Revised extraction sequence