diff --git a/docs/architecture/code-structure.md b/docs/architecture/code-structure.md index c32b9a1b..6698e2aa 100644 --- a/docs/architecture/code-structure.md +++ b/docs/architecture/code-structure.md @@ -542,7 +542,11 @@ keeps a second identity dictionary. ForcePosition serializes and stamps one exact canonical outbound Position. Three corrected-diff reviews, the complete 6,940-test Release suite, and the 310-second seven-destination connected R6 route all passed. `GameWindow` is 10,301 lines / 267 fields / 163 methods. -Slice 5 is active next. +Slice 5 checkpoints A–F are complete. The pipeline owns the serialized worker +build, concrete render/physics/static publication, and retryable Near/full +retirement; `GameWindow.cs` is 9,011 lines and no longer owns a retirement +coordinator or callback body. Checkpoint G direct cutover/dead-facade cleanup +is active next, followed by deterministic and connected closeout in H. #### Slice 5 — extract landblock presentation diff --git a/docs/plans/2026-04-11-roadmap.md b/docs/plans/2026-04-11-roadmap.md index 9909f504..4ef6f227 100644 --- a/docs/plans/2026-04-11-roadmap.md +++ b/docs/plans/2026-04-11-roadmap.md @@ -47,10 +47,12 @@ passes 6,940 tests with five intentional skips. The 310-second connected R6 gate passed seven destinations/revisits, movement/jump/combat exercises, and graceful close. -**Next:** Slice 5 extracts DAT-backed landblock build, publication, demotion, -and retirement into `LandblockPresentationPipeline` while preserving -`StreamingController` residency decisions and `GpuWorldState` spatial -ownership. +**Current:** Slice 5 checkpoints A–F have extracted the DAT-backed worker +build plus render, physics, DAT-static, and retryable Near/full presentation +ownership into `LandblockPresentationPipeline`. `GameWindow` is 9,011 lines +and the Release suite passes 7,039 tests with five intentional skips. Slice 5G +now removes the obsolete callback bodies and scratch/facade state before the +deterministic and connected closeout in H. This is a behavior-preserving structural program. Severe regressions still get root-cause fixes in separate commits; ordinary feature work resumes with M4 diff --git a/docs/plans/2026-05-12-milestones.md b/docs/plans/2026-05-12-milestones.md index f26351e9..3c75ea9d 100644 --- a/docs/plans/2026-05-12-milestones.md +++ b/docs/plans/2026-05-12-milestones.md @@ -19,10 +19,13 @@ layer, the active structural prerequisite is the behavior-preserving The 2026-07-21 audit baseline was 15,723 lines, 278 fields, and 205 methods. Selection/interaction Slice 1, live-animation-presentation Slice 2, complete live-session ownership Slice 3, and live-entity App integration Slice 4 are -complete. `GameWindow` is now 10,301 lines, 267 fields, and 163 methods. The -full Release suite passes 6,940 tests / 5 skips, and Slice 4's seven-destination -connected R6 route passed in 310 seconds. Slice 5 — landblock presentation — -is active next. +complete. Slice 5 landblock-presentation checkpoints A–F are also complete: +the worker DAT transaction, render/physics/static publishers, and retryable +Near/full retirement now have focused owners. `GameWindow` is 9,011 lines, +down 1,290 from the Slice-5 baseline and 6,712 from the campaign baseline. The +full Release suite passes 7,039 tests / 5 skips; Slice 4's seven-destination +connected R6 route passed in 310 seconds. Slice 5G direct cutover and dead +facade/scratch cleanup is active next. Carried: #153 far-teleport residual, #116 slide-response, the remaining R6 ownership cleanup plus diff --git a/docs/plans/2026-07-21-gamewindow-slice-5-landblock-presentation.md b/docs/plans/2026-07-21-gamewindow-slice-5-landblock-presentation.md index fff3df07..e1493beb 100644 --- a/docs/plans/2026-07-21-gamewindow-slice-5-landblock-presentation.md +++ b/docs/plans/2026-07-21-gamewindow-slice-5-landblock-presentation.md @@ -80,8 +80,22 @@ test, and bisectable commit rather than being hidden in a mechanical move. corrected-diff reviews are clean. Release gate: 7,026 passed / 5 skipped; `GameWindow.cs` is temporarily 9,073 lines because production wiring lands before checkpoint G deletes the old callback body. -- [ ] F — move retryable demotion/full-retirement presentation under the +- [x] F — move retryable demotion/full-retirement presentation under the pipeline without changing `LandblockRetirementCoordinator`'s ledger. + - Landed in `ea7ffbc1`: the pipeline now owns a focused + `LandblockPresentationRetirementOwner` and its exact detach-first ledger; + `GameWindow` no longer owns a coordinator or retirement callback body. + Full and Near retirements preserve their distinct terrain/physics/live + owner matrices, successful stages and entity cursors never replay, and + reentrant Begin/Advance requests serialize without mutating an active + ticket enumeration. A committed visibility-observer failure retains the + detach receipt, completes presentation teardown, drains deferred work, + then rethrows. Constructor identity guards enforce one world-state, + publisher, lighting, and translucency graph, while explicit concrete and + legacy controller overloads make ignored presentation callbacks + impossible. Three corrected-diff reviews are clean. Release gate: 7,039 + passed / 5 skipped; build green with 17 pre-existing test-project warnings; + `GameWindow.cs` is 9,011 lines. - [ ] G — cut `StreamingController` and `GameWindow` directly to the pipeline; delete old bodies, scratch state, and callback facades. - [ ] H — three-agent corrected-diff review, full Release suite, deterministic