docs(rendering): close slice F shadow gate
Record exact capped, uncapped, and dense physical parity evidence before any production draw-source cutover. The pre-F/G runtime rollback anchor remains e7d9d6fa.
This commit is contained in:
parent
81e2f1a575
commit
9b5a530e7b
2 changed files with 105 additions and 3 deletions
|
|
@ -0,0 +1,85 @@
|
|||
# Slice F5 Render-Scene Shadow Gate
|
||||
|
||||
**Date:** 2026-07-24
|
||||
|
||||
**Candidate:** `81e2f1a57577457436f244f8c9d083e14a9de362`
|
||||
|
||||
**Result:** accepted; Slice F is complete
|
||||
|
||||
## Purpose
|
||||
|
||||
Slice F built the future render scene without allowing it to draw. The physical
|
||||
gate compared its active projections with the accepted current renderer after
|
||||
streaming, network, teleport, animation, attachment composition, and the final
|
||||
update-boundary journal publication. This was an exact state referee, not a
|
||||
screenshot approximation.
|
||||
|
||||
The retained scene can contain inactive identities that have temporarily left
|
||||
spatial presentation. Therefore the binding count is the active matched
|
||||
projection count, not total retained entity capacity. Logical teardown still
|
||||
removes those identities through `OnResourceUnregister`.
|
||||
|
||||
## Exact physical evidence
|
||||
|
||||
| Route | Report | Final comparisons | Mismatch | Pending | Rejected | Exit |
|
||||
|---|---|---:|---:|---:|---:|---|
|
||||
| Capped nine-stop | `logs/connected-r6-soak-20260724-232827.report.json` | 1,663 / 1,663 | 0 | 0 | 0 | graceful |
|
||||
| Uncapped nine-stop | `logs/connected-r6-soak-20260724-233826.report.json` | 1,677 / 1,677 | 0 | 0 | 0 | graceful |
|
||||
| Uncapped dense Arwic | `logs/connected-dense-town-20260724-234807.report.json` | 81 / 81 | 0 | 0 | 0 | graceful |
|
||||
|
||||
Every route reported:
|
||||
|
||||
- `Passed=true`, `ExitCode=0`, and `GracefulExit=true`;
|
||||
- source commit, embedded binary commit, and candidate commit equal to
|
||||
`81e2f1a57577457436f244f8c9d083e14a9de362`;
|
||||
- shadow comparison enabled at every canonical checkpoint;
|
||||
- active matched projections equal to the current-path oracle;
|
||||
- `firstMismatch=null`;
|
||||
- cumulative rejected-generation, out-of-order, stale-incarnation, and
|
||||
missing-record counts all zero.
|
||||
|
||||
The two nine-stop routes covered Caul, Sawato, Rynthid, Aerlinthe, Holtburg,
|
||||
same-location Sawato revisit, Caul return, Sawato plateau, and Caul plateau.
|
||||
The route exercised movement, jump, combat, portal churn, repeated
|
||||
materialization, generation replacement, and graceful shutdown. Dense Arwic
|
||||
covered 15,040 active projections and 111 animated entities during the turn
|
||||
sample.
|
||||
|
||||
## Shadow footprint
|
||||
|
||||
The final checkpoint's estimated retained shadow footprint was:
|
||||
|
||||
- capped Caul plateau: 21,891,296 bytes for 21,216 retained identities;
|
||||
- uncapped Caul plateau: 21,894,656 bytes for 21,218 retained identities;
|
||||
- dense Arwic: 20,001,016 bytes for 15,791 retained identities.
|
||||
|
||||
This footprint is intentionally additional during Slice F because both the
|
||||
current and candidate representations coexist. Slice G must remove the old
|
||||
whole-world partition ownership after production parity; Slice F numbers are
|
||||
not the post-cutover steady-state memory target.
|
||||
|
||||
## Rejected evidence and root corrections
|
||||
|
||||
Earlier physical runs were deliberately rejected:
|
||||
|
||||
- `056bbd4e`: ordinary roots could not be recovered after same-location
|
||||
rehydration because derived synchronization walked only retained records;
|
||||
- `91463db5`: the ordinary journal drain was skipped while simulation was
|
||||
quiesced instead of being a final update-frame commit;
|
||||
- `9fab1feb`: destination pose could not restore an equipped projection after
|
||||
presentation withdrawal;
|
||||
- `bb1f4a64`: equipped spatial withdrawal was incorrectly treated as logical
|
||||
identity destruction.
|
||||
|
||||
The final model separates logical lifetime from spatial presence. Ordinary
|
||||
roots reconcile from `LiveEntityRuntime`'s canonical active workset. Equipped
|
||||
children remain callback-owned, retain their exact inactive scene identity
|
||||
during spatial withdrawal, reactivate only from an authoritative visibility or
|
||||
pose edge, and unregister only on logical resource teardown.
|
||||
|
||||
## Rollback
|
||||
|
||||
No production draw consumer changed in Slice F. The exact pre-F/G runtime
|
||||
rollback anchor remains `e7d9d6fa`. A later visual failure in Slice G must
|
||||
revert the exact production cutover commit recorded in the plan and render
|
||||
pipeline digest; it must not discard this referee or evidence work.
|
||||
Loading…
Add table
Add a link
Reference in a new issue