refactor(net): own live session composition
Extract reset, selection, entered-world, and route construction behind LiveSessionHost while preserving the sole LiveSessionController authority. Retain partial route and subscription cleanup for retry, and replace the embedded ACE-only shortcut with the exact named-retail unsigned skill formula. Co-authored-by: Codex <codex@openai.com>
This commit is contained in:
parent
18d4b999de
commit
557eb7ef6b
22 changed files with 1430 additions and 236 deletions
|
|
@ -2,10 +2,11 @@
|
|||
|
||||
## Current state
|
||||
|
||||
The behavior-preserving App ownership campaign is complete through Slice 7.
|
||||
`GameWindow.cs` moved from the 2026-07-21 baseline of 15,723 lines / 278 fields /
|
||||
205 methods to 4,666 lines / 196 fields / 70 methods: 11,057 lines (70.3%) were
|
||||
removed without changing accepted gameplay or rendering behavior.
|
||||
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
|
||||
or rendering behavior.
|
||||
|
||||
| Slice | Ownership moved out | Closeout size |
|
||||
|---|---|---:|
|
||||
|
|
@ -17,6 +18,15 @@ removed without changing accepted gameplay or rendering behavior.
|
|||
| 6 | complete update-frame orchestration | 7,026 / 241 / 108 |
|
||||
| 7 | complete render-frame orchestration and failure recovery | 4,666 / 196 / 70 |
|
||||
|
||||
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
|
||||
edges one reversible owner plus host quiescence; C added `LiveSessionHost` for
|
||||
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.
|
||||
|
||||
Slice 6 implementation commits are `99a3e819`, `4e4aac2c`, `0bc9fda9`,
|
||||
`c5570383`, `eeb0f6b4`, `947c61d2`, and production cutover `e91f3102`.
|
||||
Slice 7 implementation commits are `7e4cfb37`, `733126a2`, `bc6f09f9`,
|
||||
|
|
@ -73,6 +83,9 @@ review rule live in `docs/architecture/code-structure.md`.
|
|||
|
||||
## Accepted verification
|
||||
|
||||
- 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.
|
||||
- Release suite: 7,341 passed / 5 fixture or environment skips.
|
||||
- Connected lifecycle/reconnect: 315.6 seconds, graceful capped close and fresh
|
||||
process uncapped reconnect passed; only 25 expected world-edge empty
|
||||
|
|
@ -96,7 +109,8 @@ review rule live in `docs/architecture/code-structure.md`.
|
|||
|
||||
## Next work
|
||||
|
||||
Slice 8 groups composition and shutdown wiring and reduces Silk callbacks to
|
||||
Slice 8 checkpoints D–L group the remaining environment, 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