refactor(world): own live environment state
Move the DAT sky, selected day group, world clock, weather, AdminEnvirons bridge, and debug cycles into a one-shot WorldEnvironmentController while preserving GameWindow's public aliases and accepted startup/session/render order. Correct the named retail citations and register the remaining environment audio and fog/radar gaps. Co-authored-by: Codex <codex@openai.com>
This commit is contained in:
parent
557eb7ef6b
commit
d09e246d3a
19 changed files with 606 additions and 368 deletions
|
|
@ -3,9 +3,9 @@
|
|||
## Current state
|
||||
|
||||
The behavior-preserving App ownership campaign is complete through Slice 7 and
|
||||
Slice 8 checkpoints A–C. `GameWindow.cs` moved from the 2026-07-21 baseline of
|
||||
15,723 lines / 278 fields / 205 methods to 4,589 lines / 196 fields / 69
|
||||
methods: 11,134 lines (70.8%) were removed without changing accepted gameplay
|
||||
Slice 8 checkpoints A–D. `GameWindow.cs` moved from the 2026-07-21 baseline of
|
||||
15,723 lines / 278 fields / 205 methods to 4,330 lines / 192 fields / 67
|
||||
methods: 11,393 lines (72.5%) were removed without changing accepted gameplay
|
||||
or rendering behavior.
|
||||
|
||||
| Slice | Ownership moved out | Closeout size |
|
||||
|
|
@ -17,6 +17,7 @@ or rendering behavior.
|
|||
| 5 | landblock build, publication, retirement, and shared-origin lifetime | 8,811 / 247 / 153 |
|
||||
| 6 | complete update-frame orchestration | 7,026 / 241 / 108 |
|
||||
| 7 | complete render-frame orchestration and failure recovery | 4,666 / 196 / 70 |
|
||||
| 8 A–D | shell freeze, native callbacks, live-session composition, world environment | 4,330 / 192 / 67 |
|
||||
|
||||
Slice 8 is an ordered checkpoint campaign rather than another feature-body
|
||||
move. A froze/pruned the shell boundary; B gave all nine native window callback
|
||||
|
|
@ -25,7 +26,13 @@ reset/selection/entry/route composition while keeping `LiveSessionController`
|
|||
the sole session owner. C also replaced the embedded ACE shortcut with the
|
||||
named-retail `SkillFormula::Calculate @ 0x00591960` port. Partial route
|
||||
construction and individual detach edges are retained and retried; reset and a
|
||||
new generation cannot pass an incompletely detached route.
|
||||
new generation cannot pass an incompletely detached route. D added
|
||||
`WorldEnvironmentController` as the one-shot owner of WorldTime, loaded sky,
|
||||
day-group selection, Weather, server synchronization, AdminEnvirons, and debug
|
||||
cycles. `GameWindow` retains only ABI-compatible readonly aliases and typed
|
||||
composition edges. The named-oracle correction is
|
||||
`SkyDesc::CalcPresentDayGroup @ 0x00500E10`; the carried AdminEnvirons audio and
|
||||
full fog/ambient/radar gaps are TS-54/TS-55.
|
||||
|
||||
Slice 6 implementation commits are `99a3e819`, `4e4aac2c`, `0bc9fda9`,
|
||||
`c5570383`, `eeb0f6b4`, `947c61d2`, and production cutover `e91f3102`.
|
||||
|
|
@ -83,6 +90,9 @@ review rule live in `docs/architecture/code-structure.md`.
|
|||
|
||||
## Accepted verification
|
||||
|
||||
- Slice 8 Checkpoint D Release suite: 7,419 passed / 5 fixture or environment
|
||||
skips; App 3,059/3 skips. Focused environment/boundary tests and all three
|
||||
independent corrected-diff reviews are clean.
|
||||
- Slice 8 Checkpoint C Release suite: 7,408 passed / 5 fixture or environment
|
||||
skips; App 3,048/3 skips and Core.Net 548/0. All three independent corrected-
|
||||
diff reviews are clean.
|
||||
|
|
@ -109,8 +119,8 @@ review rule live in `docs/architecture/code-structure.md`.
|
|||
|
||||
## Next work
|
||||
|
||||
Slice 8 checkpoints D–L group the remaining environment, input, settings,
|
||||
resource ownership, startup, and shutdown wiring and reduce Silk callbacks to
|
||||
Slice 8 checkpoints E–L group the remaining input, settings, resource
|
||||
ownership, startup, and shutdown wiring and reduce Silk callbacks to
|
||||
narrow calls into input, update, render, resize, focus, and shutdown owners.
|
||||
It removes leftover feature state only where Slices 1–7 already established a
|
||||
canonical owner; it does not redesign gameplay, rendering, or resource lifetime.
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue