docs(runtime): record J0 and physical I6 evidence
Pin the exact J0 rollback, synchronize the roadmap and agent handoff files, and distinguish the observer-heavy two-gigabyte soak from the ordinary-client physical sample. Keep parsed collision graph removal explicitly behind the pending user collision and visual gate. Co-authored-by: Codex <codex@openai.com>
This commit is contained in:
parent
b632672e5c
commit
574a6c454f
7 changed files with 104 additions and 16 deletions
21
AGENTS.md
21
AGENTS.md
|
|
@ -174,7 +174,6 @@ six-path moving-collision entry point has an integer-indexed flat shadow port.
|
||||||
The exact referee passes 13 focused tests, 7,500 installed-DAT comparisons,
|
The exact referee passes 13 focused tests, 7,500 installed-DAT comparisons,
|
||||||
1,200 complete resolver frames, and 10,000 warmed iterations at zero managed
|
1,200 complete resolver frames, and 10,000 warmed iterations at zero managed
|
||||||
bytes with no mismatch. Release build and 8,384 solution tests / 5 skips pass.
|
bytes with no mismatch. Release build and 8,384 solution tests / 5 skips pass.
|
||||||
Production remains graph-authoritative until the Slice I6 cutover.
|
|
||||||
Slice I5 is complete: immutable near-build collision closures and strict live
|
Slice I5 is complete: immutable near-build collision closures and strict live
|
||||||
collision publication install graph and prepared-flat views under canonical
|
collision publication install graph and prepared-flat views under canonical
|
||||||
ownership. Cancellation, demotion, rehydration, revisit, removal, and reset
|
ownership. Cancellation, demotion, rehydration, revisit, removal, and reset
|
||||||
|
|
@ -182,10 +181,23 @@ gates pass. The lifecycle/reconnect and nine-stop routes sampled 14,064 exact
|
||||||
queries with zero mismatch, fault, or artifact; graph/flat cell residency
|
queries with zero mismatch, fault, or artifact; graph/flat cell residency
|
||||||
matched at every stable checkpoint and teardown converged. Release build and
|
matched at every stable checkpoint and teardown converged. Release build and
|
||||||
8,396 solution tests / 5 skips pass.
|
8,396 solution tests / 5 skips pass.
|
||||||
|
Slice I6 is committed at `068a0651`: gameplay collision is flat-authoritative
|
||||||
|
and the parsed graph is only a sampled referee. The strict dense-Arwic gate
|
||||||
|
matched 46,309/46,309 queries, and the exact physical nine-stop lifecycle soak
|
||||||
|
passed with all publication, retirement, upload, warmup, and class backlogs
|
||||||
|
converged. Parsed-graph deletion remains gated on the user's final
|
||||||
|
collision/visual acceptance. The cutover rollback is
|
||||||
|
`git revert 068a06518dd710ca5e7f166754cbb7789ca1ed0f`.
|
||||||
|
Slice J0 is complete at `b632672e`: `AcDream.Runtime` now provides the enforced
|
||||||
|
presentation-independent assembly boundary without moving gameplay behavior.
|
||||||
|
Four dependency guards, the Release build, and 8,406 tests / 5 skips pass. J1
|
||||||
|
waits behind the I6/I7 user gate. Its rollback is
|
||||||
|
`git revert b632672e5ccabfb44c551e08f1c411ab2669c44a`.
|
||||||
Slice H's retained UI/frame, bounded-light, and pooled/borrowed/direct network
|
Slice H's retained UI/frame, bounded-light, and pooled/borrowed/direct network
|
||||||
work is complete; the exact seven-checkpoint connected lifecycle/reconnect gate
|
work is complete; the exact seven-checkpoint connected lifecycle/reconnect gate
|
||||||
passes. Slice I is active at I6 from
|
passes. Slice I7 closeout is active from
|
||||||
`docs/plans/2026-07-25-modern-runtime-slice-i.md`. The exact G4 visual rollback
|
`docs/plans/2026-07-25-modern-runtime-slice-i.md`; the coherent Slice J campaign
|
||||||
|
is pinned in `docs/plans/2026-07-25-modern-runtime-slice-j.md`. The exact G4 visual rollback
|
||||||
is `git revert ef1d263337997bb030eadb7b8e71d73dc659907a`; do not revert G3 or
|
is `git revert ef1d263337997bb030eadb7b8e71d73dc659907a`; do not revert G3 or
|
||||||
the portal-warmup corrections. Evidence:
|
the portal-warmup corrections. Evidence:
|
||||||
`docs/research/2026-07-25-slice-h-closeout.md` and
|
`docs/research/2026-07-25-slice-h-closeout.md` and
|
||||||
|
|
@ -194,7 +206,8 @@ the portal-warmup corrections. Evidence:
|
||||||
`docs/research/2026-07-25-slice-i2-flat-collision-schema.md` and
|
`docs/research/2026-07-25-slice-i2-flat-collision-schema.md` and
|
||||||
`docs/research/2026-07-25-slice-i3-prepared-collision-package.md` and
|
`docs/research/2026-07-25-slice-i3-prepared-collision-package.md` and
|
||||||
`docs/research/2026-07-25-slice-i4-flat-bsp-differential.md` and
|
`docs/research/2026-07-25-slice-i4-flat-bsp-differential.md` and
|
||||||
`docs/research/2026-07-25-slice-i5-dual-collision-shadow.md`.
|
`docs/research/2026-07-25-slice-i5-dual-collision-shadow.md` and
|
||||||
|
`docs/research/2026-07-25-slice-i6-flat-production-cutover.md`.
|
||||||
|
|
||||||
**Structural prerequisite before new M4 subsystem work:** all eight
|
**Structural prerequisite before new M4 subsystem work:** all eight
|
||||||
behavior-preserving `GameWindow` decomposition slices and the automated
|
behavior-preserving `GameWindow` decomposition slices and the automated
|
||||||
|
|
|
||||||
21
CLAUDE.md
21
CLAUDE.md
|
|
@ -172,7 +172,6 @@ six-path moving-collision entry point has an integer-indexed flat shadow port.
|
||||||
The exact referee passes 13 focused tests, 7,500 installed-DAT comparisons,
|
The exact referee passes 13 focused tests, 7,500 installed-DAT comparisons,
|
||||||
1,200 complete resolver frames, and 10,000 warmed iterations at zero managed
|
1,200 complete resolver frames, and 10,000 warmed iterations at zero managed
|
||||||
bytes with no mismatch. Release build and 8,384 solution tests / 5 skips pass.
|
bytes with no mismatch. Release build and 8,384 solution tests / 5 skips pass.
|
||||||
Production remains graph-authoritative until the Slice I6 cutover.
|
|
||||||
Slice I5 is complete: immutable near-build collision closures and strict live
|
Slice I5 is complete: immutable near-build collision closures and strict live
|
||||||
collision publication install graph and prepared-flat views under canonical
|
collision publication install graph and prepared-flat views under canonical
|
||||||
ownership. Cancellation, demotion, rehydration, revisit, removal, and reset
|
ownership. Cancellation, demotion, rehydration, revisit, removal, and reset
|
||||||
|
|
@ -180,10 +179,23 @@ gates pass. The lifecycle/reconnect and nine-stop routes sampled 14,064 exact
|
||||||
queries with zero mismatch, fault, or artifact; graph/flat cell residency
|
queries with zero mismatch, fault, or artifact; graph/flat cell residency
|
||||||
matched at every stable checkpoint and teardown converged. Release build and
|
matched at every stable checkpoint and teardown converged. Release build and
|
||||||
8,396 solution tests / 5 skips pass.
|
8,396 solution tests / 5 skips pass.
|
||||||
|
Slice I6 is committed at `068a0651`: gameplay collision is flat-authoritative
|
||||||
|
and the parsed graph is only a sampled referee. The strict dense-Arwic gate
|
||||||
|
matched 46,309/46,309 queries, and the exact physical nine-stop lifecycle soak
|
||||||
|
passed with all publication, retirement, upload, warmup, and class backlogs
|
||||||
|
converged. Parsed-graph deletion remains gated on the user's final
|
||||||
|
collision/visual acceptance. The cutover rollback is
|
||||||
|
`git revert 068a06518dd710ca5e7f166754cbb7789ca1ed0f`.
|
||||||
|
Slice J0 is complete at `b632672e`: `AcDream.Runtime` now provides the enforced
|
||||||
|
presentation-independent assembly boundary without moving gameplay behavior.
|
||||||
|
Four dependency guards, the Release build, and 8,406 tests / 5 skips pass. J1
|
||||||
|
waits behind the I6/I7 user gate. Its rollback is
|
||||||
|
`git revert b632672e5ccabfb44c551e08f1c411ab2669c44a`.
|
||||||
Slice H's retained UI/frame, bounded-light, and pooled/borrowed/direct network
|
Slice H's retained UI/frame, bounded-light, and pooled/borrowed/direct network
|
||||||
work is complete; the exact seven-checkpoint connected lifecycle/reconnect gate
|
work is complete; the exact seven-checkpoint connected lifecycle/reconnect gate
|
||||||
passes. Slice I is active at I6 from
|
passes. Slice I7 closeout is active from
|
||||||
`docs/plans/2026-07-25-modern-runtime-slice-i.md`. The exact G4 visual rollback
|
`docs/plans/2026-07-25-modern-runtime-slice-i.md`; the coherent Slice J campaign
|
||||||
|
is pinned in `docs/plans/2026-07-25-modern-runtime-slice-j.md`. The exact G4 visual rollback
|
||||||
is `git revert ef1d263337997bb030eadb7b8e71d73dc659907a`; do not revert G3 or
|
is `git revert ef1d263337997bb030eadb7b8e71d73dc659907a`; do not revert G3 or
|
||||||
the portal-warmup corrections. Evidence:
|
the portal-warmup corrections. Evidence:
|
||||||
`docs/research/2026-07-25-slice-h-closeout.md` and
|
`docs/research/2026-07-25-slice-h-closeout.md` and
|
||||||
|
|
@ -192,7 +204,8 @@ the portal-warmup corrections. Evidence:
|
||||||
`docs/research/2026-07-25-slice-i2-flat-collision-schema.md` and
|
`docs/research/2026-07-25-slice-i2-flat-collision-schema.md` and
|
||||||
`docs/research/2026-07-25-slice-i3-prepared-collision-package.md` and
|
`docs/research/2026-07-25-slice-i3-prepared-collision-package.md` and
|
||||||
`docs/research/2026-07-25-slice-i4-flat-bsp-differential.md` and
|
`docs/research/2026-07-25-slice-i4-flat-bsp-differential.md` and
|
||||||
`docs/research/2026-07-25-slice-i5-dual-collision-shadow.md`.
|
`docs/research/2026-07-25-slice-i5-dual-collision-shadow.md` and
|
||||||
|
`docs/research/2026-07-25-slice-i6-flat-production-cutover.md`.
|
||||||
|
|
||||||
**Structural prerequisite before new M4 subsystem work:** all eight
|
**Structural prerequisite before new M4 subsystem work:** all eight
|
||||||
behavior-preserving `GameWindow` decomposition slices and the automated
|
behavior-preserving `GameWindow` decomposition slices and the automated
|
||||||
|
|
|
||||||
|
|
@ -1666,14 +1666,20 @@ port in any phase — no separate listing here.
|
||||||
> ownership. Lifecycle/reconnect plus the nine-stop route sampled 14,064
|
> ownership. Lifecycle/reconnect plus the nine-stop route sampled 14,064
|
||||||
> queries with exact state/float-bit equality, zero mismatch/fault/artifact,
|
> queries with exact state/float-bit equality, zero mismatch/fault/artifact,
|
||||||
> equal graph/flat cell residency, and graceful teardown. Release build and
|
> equal graph/flat cell residency, and graceful teardown. Release build and
|
||||||
> 8,396 solution tests / 5 skips pass. I6 production cutover is active.
|
> 8,396 solution tests / 5 skips pass. I6 production cutover is committed:
|
||||||
|
> gameplay is flat-authoritative, dense Arwic matched 46,309/46,309 referee
|
||||||
|
> queries, and the physical nine-stop soak converged. Parsed-graph deletion
|
||||||
|
> waits on the user's collision/visual acceptance. J0 established the
|
||||||
|
> presentation-independent Runtime boundary with four enforced dependency
|
||||||
|
> guards; Release build and 8,406 tests / 5 skips pass.
|
||||||
> The historical exact cutover
|
> The historical exact cutover
|
||||||
> rollback remains
|
> rollback remains
|
||||||
> `git revert ef1d263337997bb030eadb7b8e71d73dc659907a`. Slice H is complete:
|
> `git revert ef1d263337997bb030eadb7b8e71d73dc659907a`. Slice H is complete:
|
||||||
> retained UI/frame work, exact bounded light selection, and
|
> retained UI/frame work, exact bounded light selection, and
|
||||||
> pooled/borrowed/direct network I/O pass 8,292 Release tests / 5 skips and the
|
> pooled/borrowed/direct network I/O pass 8,292 Release tests / 5 skips and the
|
||||||
> connected lifecycle/reconnect gate. Slice I is active at I6 from
|
> connected lifecycle/reconnect gate. Slice I7 closeout remains active from
|
||||||
> [its detailed plan](2026-07-25-modern-runtime-slice-i.md).
|
> [its detailed plan](2026-07-25-modern-runtime-slice-i.md); Slice J is pinned
|
||||||
|
> in [its lifetime-group plan](2026-07-25-modern-runtime-slice-j.md).
|
||||||
|
|
||||||
**Spec:** `docs/superpowers/specs/2026-07-05-modern-pipeline-design.md` (the
|
**Spec:** `docs/superpowers/specs/2026-07-05-modern-pipeline-design.md` (the
|
||||||
umbrella design — read it first). **Goal:** smoothness first (no frame over
|
umbrella design — read it first). **Goal:** smoothness first (no frame over
|
||||||
|
|
@ -1697,11 +1703,11 @@ hitch and follows.
|
||||||
| MP1a | `AcDream.Content` extraction (GL-free MeshExtractor + boundary records out of App) | ✅ SHIPPED 2026-07-05 — user-gated (renders identical, zero tripwires, perf-neutral); 8 commits `651d041e`..`b0758d77` |
|
| MP1a | `AcDream.Content` extraction (GL-free MeshExtractor + boundary records out of App) | ✅ SHIPPED 2026-07-05 — user-gated (renders identical, zero tripwires, perf-neutral); 8 commits `651d041e`..`b0758d77` |
|
||||||
| MP1b | Pak format + `acdream-bake` CLI + mmap `PakReader` + equivalence/full-scale gate | ✅ **SHIPPED 2026-07-24** — 729,888 EnvCell keys → 17,117 unique geometries + 712,771 aliases (42.6×), 751,141 total keys / 38,370 physical blobs, zero failures, 28,192.4 MiB, 81.4 s validated atomic publish; full-DAT gate also corrected a real collision in WB's legacy geometry hash. [Report](../research/2026-07-24-slice-b-full-bake-report.md) |
|
| MP1b | Pak format + `acdream-bake` CLI + mmap `PakReader` + equivalence/full-scale gate | ✅ **SHIPPED 2026-07-24** — 729,888 EnvCell keys → 17,117 unique geometries + 712,771 aliases (42.6×), 751,141 total keys / 38,370 physical blobs, zero failures, 28,192.4 MiB, 81.4 s validated atomic publish; full-DAT gate also corrected a real collision in WB's legacy geometry hash. [Report](../research/2026-07-24-slice-b-full-bake-report.md) |
|
||||||
| **MP-Alloc (safe batch)** | Reuse per-frame buffers: anim pose, particle draw-list, interior partition, animatedIds/drawableCells sets | ✅ SHIPPED + USER-GATED 2026-07-05 — dense-town frame-time spikes 20–87ms → 6–10ms, alloc spikes (30–75MB single-frame) eliminated, gen2 GC 5–11/window → ~0; user confirms FPS steady. 4 commits `b8c05e2b`..`91afea24` |
|
| **MP-Alloc (safe batch)** | Reuse per-frame buffers: anim pose, particle draw-list, interior partition, animatedIds/drawableCells sets | ✅ SHIPPED + USER-GATED 2026-07-05 — dense-town frame-time spikes 20–87ms → 6–10ms, alloc spikes (30–75MB single-frame) eliminated, gen2 GC 5–11/window → ~0; user confirms FPS steady. 4 commits `b8c05e2b`..`91afea24` |
|
||||||
| MP-Alloc (hard sites) | EnvCell settled-camera rebuild gate + physics `Transition` reuse | 🟡 Physics half SHIPPED 2026-07-25 — retail-shaped reset-complete transition/query scratch is bit-identical and 0 B/resolve across five profiles; immutable flat collision storage, deterministic package, zero-allocation traversal, strict dual publication, and the 14,064-sample connected shadow gate are shipped; production flat cutover continues in Slice I6. |
|
| MP-Alloc (hard sites) | EnvCell settled-camera rebuild gate + physics `Transition` reuse | 🟡 Physics cutover SHIPPED 2026-07-25 — retail-shaped reset-complete transition/query scratch is bit-identical and 0 B/resolve across five profiles; immutable flat collision storage, deterministic package, zero-allocation traversal, strict dual publication, and flat-authoritative production traversal are shipped. Parsed-graph deletion awaits the user collision/visual gate. |
|
||||||
| MP1c | Streaming cutover to pak + hitch gate | ✅ **SHIPPED 2026-07-24** — typed package-only production source, explicit Setup probes, non-allocating Portal-first lookup, exact translucency metadata, and ordered teardown; capped/uncapped/dense physical routes + user visual gate pass. Uncapped CPU p99 7.825→6.496 ms, GPU p99 3.406→2.706 ms, portal frame max 202.9→39.9 MiB, process allocation −41.8%, zero invalid Setup probes. [Report](../research/2026-07-24-slice-c-prepared-asset-cutover-report.md) |
|
| MP1c | Streaming cutover to pak + hitch gate | ✅ **SHIPPED 2026-07-24** — typed package-only production source, explicit Setup probes, non-allocating Portal-first lookup, exact translucency metadata, and ordered teardown; capped/uncapped/dense physical routes + user visual gate pass. Uncapped CPU p99 7.825→6.496 ms, GPU p99 3.406→2.706 ms, portal frame max 202.9→39.9 MiB, process allocation −41.8%, zero invalid Setup probes. [Report](../research/2026-07-24-slice-c-prepared-asset-cutover-report.md) |
|
||||||
| MP2 | Retail particle distance/cell-view degradation: DAT-authored range, exact infinite/finite off-view update branches, emitter-first render scan, user-requested 2× default range | ✅ SHIPPED 2026-07-17 — Aerlinthe hotspot `0x32000223` resolves to retail 64m and defaults to 128m; landscape/entity streaming distance unchanged |
|
| MP2 | Retail particle distance/cell-view degradation: DAT-authored range, exact infinite/finite off-view update branches, emitter-first render scan, user-requested 2× default range | ✅ SHIPPED 2026-07-17 — Aerlinthe hotspot `0x32000223` resolves to retail 64m and defaults to 128m; landscape/entity streaming distance unchanged |
|
||||||
| MP3 | Arch ECS render world + delta submission (the 300-FPS lever) | ⚪ — note: does NOT fix the steady-state GC churn (that's MP-Alloc); MP3 is the draw-submission throughput lever |
|
| MP3 | Arch ECS render world + delta submission (the 300-FPS lever) | ⚪ — note: does NOT fix the steady-state GC churn (that's MP-Alloc); MP3 is the draw-submission throughput lever |
|
||||||
| MP4 | Zero-alloc frame loop + flat physics data (residual, post-MP-Alloc) | 🟡 ACTIVE — Slice I1 zero-allocation transition scratch, I2 immutable schema, I3 deterministic collision package, I4 exact flat traversal, and I5 strict dual publication plus connected shadow verification shipped; I6 production cutover is active. |
|
| MP4 | Zero-alloc frame loop + flat physics data (residual, post-MP-Alloc) | 🟡 ACCEPTANCE — Slices I1–I6 shipped through flat-authoritative production traversal; dense-Arwic and physical nine-stop gates pass. User collision/visual acceptance gates parsed-graph deletion and I7 closeout. |
|
||||||
| MP5 | Job-system parallelism | ⚪ stretch, evidence-gated |
|
| MP5 | Job-system parallelism | ⚪ stretch, evidence-gated |
|
||||||
|
|
||||||
---
|
---
|
||||||
|
|
|
||||||
|
|
@ -141,8 +141,16 @@ queries with zero mismatch, fault, or artifact; graph/flat cell residency
|
||||||
matched at every stable checkpoint and teardown converged. Release build and
|
matched at every stable checkpoint and teardown converged. Release build and
|
||||||
8,396 solution tests / 5 skips pass. Slice H is complete: retained UI/frame
|
8,396 solution tests / 5 skips pass. Slice H is complete: retained UI/frame
|
||||||
work, exact bounded light selection, and pooled/borrowed/direct network I/O
|
work, exact bounded light selection, and pooled/borrowed/direct network I/O
|
||||||
pass. Slice I is active at I6 under
|
pass. Slice I6 is committed: gameplay is flat-authoritative, its dense-Arwic
|
||||||
|
referee gate matched 46,309/46,309 queries, and the physical nine-stop soak
|
||||||
|
converged without publication, retirement, upload, or warmup backlog. Parsed
|
||||||
|
graph deletion remains gated on the user's collision/visual acceptance. Slice
|
||||||
|
J0 established and enforced the presentation-independent `AcDream.Runtime`
|
||||||
|
boundary without moving behavior; Release build and 8,406 tests / 5 skips
|
||||||
|
pass. Slice I7 closeout is active under
|
||||||
[`2026-07-25-modern-runtime-slice-i.md`](2026-07-25-modern-runtime-slice-i.md).
|
[`2026-07-25-modern-runtime-slice-i.md`](2026-07-25-modern-runtime-slice-i.md).
|
||||||
|
The coherent Slice J campaign is pinned in
|
||||||
|
[`2026-07-25-modern-runtime-slice-j.md`](2026-07-25-modern-runtime-slice-j.md).
|
||||||
The historical exact G4 visual rollback remains
|
The historical exact G4 visual rollback remains
|
||||||
`git revert ef1d263337997bb030eadb7b8e71d73dc659907a`.
|
`git revert ef1d263337997bb030eadb7b8e71d73dc659907a`.
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -3,7 +3,8 @@
|
||||||
**Status:** I0-I5 COMPLETE - retail oracle, zero-allocation transition
|
**Status:** I0-I5 COMPLETE - retail oracle, zero-allocation transition
|
||||||
scratch, deterministic immutable collision records, complete prepared
|
scratch, deterministic immutable collision records, complete prepared
|
||||||
package, exact flat traversal, dual publication, and connected shadow gate;
|
package, exact flat traversal, dual publication, and connected shadow gate;
|
||||||
I6 production cutover committed; visual/correctness acceptance active
|
I6 production cutover, strict connected gate, and physical nine-stop soak
|
||||||
|
complete; user collision/visual acceptance active before graph deletion
|
||||||
**Parent:** `2026-07-24-modern-runtime-architecture.md`, Slice I
|
**Parent:** `2026-07-24-modern-runtime-architecture.md`, Slice I
|
||||||
**Purpose:** remove parsed DAT object graphs and steady collision allocations
|
**Purpose:** remove parsed DAT object graphs and steady collision allocations
|
||||||
without changing one retail collision decision, float, comparison, or traversal
|
without changing one retail collision decision, float, comparison, or traversal
|
||||||
|
|
|
||||||
|
|
@ -94,7 +94,11 @@ unchanged because no runtime path changed.
|
||||||
|
|
||||||
Evidence: four focused dependency tests pass, the Release solution builds with
|
Evidence: four focused dependency tests pass, the Release solution builds with
|
||||||
zero errors, and the complete Release suite passes 8,406 tests with five
|
zero errors, and the complete Release suite passes 8,406 tests with five
|
||||||
pre-existing skips. The exact rollback commit is recorded below after landing.
|
pre-existing skips. Exact rollback:
|
||||||
|
|
||||||
|
```text
|
||||||
|
git revert b632672e5ccabfb44c551e08f1c411ab2669c44a
|
||||||
|
```
|
||||||
|
|
||||||
### J1 — read, command, event, clock, and lifecycle contracts
|
### J1 — read, command, event, clock, and lifecycle contracts
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -90,6 +90,49 @@ Stable result:
|
||||||
The parsed graph is still resident in those memory figures. I6 graph removal
|
The parsed graph is still resident in those memory figures. I6 graph removal
|
||||||
must reduce that footprint and prove stable production graph counts are zero.
|
must reduce that footprint and prove stable production graph counts are zero.
|
||||||
|
|
||||||
|
## Physical-display full-route soak
|
||||||
|
|
||||||
|
An exact clean worktree at source/binary `9f37d1793674a7bf5101ef22d5c5d956b8d101a2`
|
||||||
|
completed the canonical nine-stop route on the physical display:
|
||||||
|
|
||||||
|
- all nine checkpoints and every materialization passed;
|
||||||
|
- Caul, Holtburg, and return-to-Caul movement/jump/combat exercises passed;
|
||||||
|
- server-spawned/static lifecycle checks passed;
|
||||||
|
- final publication, retirement, worker, destination, control, unload,
|
||||||
|
near/far, staged-upload, and composite-warmup backlogs were all zero;
|
||||||
|
- graph and flat residency agreed at 175 cells in the final stable state;
|
||||||
|
- graph retention remained intentional for the pending user gate;
|
||||||
|
- diagnostic-route memory plateaued at 2.020 GiB in Sawato and 2.061 GiB on
|
||||||
|
final Caul rather than growing without bound;
|
||||||
|
- instrumented-route GPU p95 stayed at or below 2.8 ms.
|
||||||
|
|
||||||
|
The roughly 2 GiB diagnostic working set is not the ordinary client footprint:
|
||||||
|
that route deliberately retains the old and new collision representations and
|
||||||
|
enables the full current-path render oracle.
|
||||||
|
|
||||||
|
A separate ordinary uncapped Release client at Caul with about 21,025 live
|
||||||
|
entities, no profiler, no render oracle, and no route automation produced this
|
||||||
|
20-sample physical-display result:
|
||||||
|
|
||||||
|
- 156 FPS average (140 minimum, 166 p95, 172 maximum);
|
||||||
|
- 6.42 ms average displayed frame time;
|
||||||
|
- 7.50% average whole-machine CPU;
|
||||||
|
- 27.07% average GPU 3D utilization;
|
||||||
|
- 1.080 GiB average working set;
|
||||||
|
- 1.291 GiB average private bytes.
|
||||||
|
|
||||||
|
The uncapped GPU percentage is demand created by rendering as fast as the CPU
|
||||||
|
can submit frames, not evidence of a GPU bottleneck: measured GPU frame p95
|
||||||
|
remained below 3 ms while displayed frame time was about 6.4 ms. Memory remains
|
||||||
|
above the target while both collision representations are intentionally
|
||||||
|
resident; the accepted graph-removal step must measure the reduction.
|
||||||
|
|
||||||
|
A later 20-sample repeat from the same still-connected process confirmed the
|
||||||
|
plateau: working set stayed exactly 1.059 GiB and private bytes exactly
|
||||||
|
1.236 GiB throughout the sample. It averaged 177.6 FPS / 5.65 ms, 7.67%
|
||||||
|
whole-machine CPU, and 30.40% GPU 3D. The higher GPU percentage tracked the
|
||||||
|
higher uncapped frame rate; it did not coincide with working-set growth.
|
||||||
|
|
||||||
## Acceptance boundary
|
## Acceptance boundary
|
||||||
|
|
||||||
The automated cutover gate is complete. Before deleting the referee and parsed
|
The automated cutover gate is complete. Before deleting the referee and parsed
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue