perf(content): close prepared asset cutover

This commit is contained in:
Erik 2026-07-24 15:49:24 +02:00
parent b1ad4b7c0a
commit a564c4b782
11 changed files with 428 additions and 66 deletions

View file

@ -2,8 +2,7 @@
**Date:** 2026-07-24
**Status:** Slice A complete on the physical reference display; Slice B
complete. Slice C is unblocked and active.
**Status:** Slices AC complete. Slice D is next and not yet started.
**Scope:** Reconcile and sequence the existing Modern Pipeline (`MP`) and
Linux/headless (`LH`) tracks using the 2026-07-24 connected performance audit.
@ -631,6 +630,15 @@ collision in WorldBuilder's legacy 31× geometry hash. Evidence:
single-frame allocation and p99 materially improve from the 2026-07-24 baseline;
connected nine-stop route and screenshots pass.
**Completed 2026-07-24:** production streaming now consumes the validated
format-1/bake-tool-3 package through `IPreparedAssetSource`, with no implicit
live-DAT mesh fallback. Capped, uncapped, and dense-Arwic physical routes,
installed-DAT equivalence, lifecycle assertions, graceful teardown, the full
Release suite, and the user's visual gate passed. Process allocation fell
41.861.9%, GC pause time fell 48.454.1%, uncapped CPU/GPU p99 improved
17.0%/20.6%, and invalid typed-Setup exceptions fell to zero. Evidence:
[`../research/2026-07-24-slice-c-prepared-asset-cutover-report.md`](../research/2026-07-24-slice-c-prepared-asset-cutover-report.md).
**Amendment (2026-07-24 review).** Binding contracts for this slice:
- **Precedence contract.** The LINQ being replaced is load-bearing content
@ -1129,13 +1137,14 @@ an improvement" carries the same evidence burden as a regression claim.
## 14. Current execution point
Slice A's tooling and authoritative physical-local evidence are complete, and
Slice B's prepared-content bake is complete. Slice C is active. Its comparison
baseline is the committed physical-local capture at
`49f3a48ee63b82d00731b0f91497930925279c86`: uncapped CPU p50/p95/p99
1.520/5.694/7.825 ms, GPU p50/p95/p99 0.897/3.239/3.406 ms, portal allocation
max 212.7 MiB, process allocation mean 50.0 MB/s, and a repeated-Caul working
set plateau failure of 295.1 MiB.
Slices AC are complete. Slice C replaced production live-DAT world-mesh
extraction with the validated prepared source and passed all connected,
performance, lifetime, automated, and user-visual gates. Its physical
uncapped result is CPU p50/p95/p99 1.409/4.909/6.496 ms, GPU
0.832/2.510/2.706 ms, a 39.9 MiB largest frame allocation, zero invalid Setup
probe exceptions, and a passing warm repeated-Caul memory assertion. Slice D
is the next execution point; it unifies accounting and policy around the
specialized caches that remain, rather than replacing their working storage.
The intended order is therefore: