refactor(app): compose world rendering startup

Move Region/environment, mandatory modern rendering, terrain, WB, texture, and sampler construction behind the typed Phase-4 composition boundary. Give every fallible GL constructor prefix retryable ownership so partial startup failure cannot leak or replay resource deletion while preserving the accepted render path and DAT inputs.

Co-authored-by: Codex <codex@openai.com>
This commit is contained in:
Erik 2026-07-22 16:46:05 +02:00
parent cd7b519f78
commit 6a2fe98cc4
22 changed files with 1983 additions and 634 deletions

View file

@ -721,10 +721,17 @@ atomic update/render frame-root slot, and a prepare-aware portal fallback and
transfer slot. GL construction and state mutations now use checked commit
boundaries with exact retry ownership for failed names, bindless residency,
and texture-binding restoration. `GameWindow` is 3,689 raw lines / 162 fields /
37 methods. Checkpoints IL remain active, with ordered production composition
next. The Checkpoint H production App build is warning-free, its 61 focused
ownership tests pass, the complete Release suite passes 7,606 tests / 5 skips,
and all three final corrected-diff reviews are clean.
37 methods at H. Checkpoint I.1I.5 now provide the executable nine-phase
oracle, platform/host/content/settings phases, and the production world/render
phase. `WorldRenderCompositionPhase` owns Region/environment, the mandatory
modern-renderer foundation, immutable terrain-worker inputs, and WB/texture/
sampler construction; every Phase-4 GL constructor has retryable prefix
ownership. `GameWindow` is 3,522 raw lines after I.5. Checkpoints I.6L remain
active, with retained UI and live presentation composition next. The current
production App build is warning-free; the App gate passes 3,373 tests / 3
intentional skips and the complete Release suite passes 7,745 tests / 5
intentional skips. I.5's corrected-diff behavior, architecture, and
adversarial reviews are clean.
### 4.4 Exit criteria

View file

@ -253,6 +253,27 @@ Small implementation commits may be used while the checkpoint is active, but
each must build and preserve production startup. The final I commit closes the
ledger only after the complete pipeline is live.
### Current implementation progress — 2026-07-22
- I.1I.4 are committed: the executable pipeline/rollback oracle, platform
acquisition, host input/camera, content/effects/audio, and settings/devtools
phases are the production startup path.
- I.5 is complete. `WorldRenderCompositionPhase` now owns the ordered Region,
environment, mandatory bindless, terrain-atlas, shader, lighting, debug/HUD,
terrain, WB, texture, and sampler foundation. `GameWindow` is a write-only
publisher for this phase and no longer contains the Phase-4 construction
body.
- Every fallible GL constructor in the Phase-4 prefix now publishes each name
into retryable construction ownership before later GL work. Failure testing
covers every composition boundary, every disposable publication, partial HUD
construction, reverse cleanup, retry, and no replay.
- The I.5 tree is 3,522 raw `GameWindow.cs` lines. The App gate passes 3,373
tests / 3 intentional skips; the complete Release suite passes 7,745 tests /
5 intentional skips. Production App builds with zero warnings/errors; the
solution retains only the 17 warnings tracked by #228.
- I.6 (retained UI plus live-presentation composition) is next. Checkpoint I
remains active until I.9 closes the complete nine-phase pipeline.
## 6. Automated acceptance
### Platform and pipeline