# L169 — Early admission stays opt-in **Result:** Do not promote L157 early admission. Six of seven promotion gates passed, but candidate LOD0–2 arrival was slower in every pair: median **1.683 s** versus **1.671 s** on `assembler/world` `ca0bf76` (+12.4 ms). The source defaults are restored to wait-for-critical **1** and apply-budget **0 ms**. The candidate settings remain explicit overrides in the runner. ## Measurement Seven interleaved W8 pairs used the four-strata owner plan, 25 cm core voxels, 30 m/s movement, a 12-second move from t=6 to t=18, and a 5-second dwell. Each run had about 46 moving samples; one warm-up per binary was excluded. No product CVar was changed except the two L157 switches under test. At measurement time, the candidate binary compiled those settings as defaults; the runner now supplies the same values explicitly so the experiment can be repeated with shipping defaults off. | Moving-window metric (median across seven runs) | `ca0bf76` | Candidate | Result | |---|---:|---:|---:| | Tick p99 | 7.060 ms | 6.519 ms | lower | | Worst tick | 12.219 ms | 11.776 ms | lower | | Near LOD0–2 readiness | 43.28% | 56.12% | +12.84 pp | | Forward-cone readiness | 15.52% | 17.93% | +2.41 pp | | Far holes | 1.80% | 0.00% | lower | | First settled LOD0–2 | 1.671 s | 1.683 s | **12.4 ms slower** | Every run stayed below 11 ms p99 and 14 ms worst tick. The largest observed p99 was 7.400 ms; the largest worst tick was 13.776 ms. Candidate worst-tick median was not worse. Arrival remained slower after subtracting each run’s first streaming sample (1.305 s vs 1.299 s), so the raw arrival failure is not explained entirely by trace start time. ## Spike count and changes All counts below use the 12-second moving window unless identified as a startup diagnostic. - **Level sorting:** With L157 on at the base defaults, the largest full-sort sample was 0.865 ms and no sample exceeded 1 ms; the L167 8.3 ms spike did not recur. Candidate partial sorting reduced the largest sample to 0.123 ms, with no sample above 1 ms. - **Desired rebuild and overlay:** Base per-run desired-rebuild peaks had a 7.476 ms median and reached 8.110 ms. Candidate peaks had a 6.928 ms median and reached 7.260 ms; rebuilds over 5 ms still occurred (median four per run, maximum five). Overlay materialization never exceeded 2 ms; its candidate maximum was 1.094 ms. The transition descendant index now uses sorted arrays and binary-search deltas. In a separate pre-move startup trace with 2,233 Core keys, the initial index build took 1.605 ms; the maximum moving-window index phase was 3.626 ms. - **Mesh apply:** The 2.8 ms historical apply spike did not recur. Maximum per-frame apply time fell from 2.548 ms at base to 1.590 ms candidate; largest individual candidate apply was 1.512 ms. The preflight deferred 21–145 results per run (median 109), with a largest estimate of 3.447 ms for 8,979 triangles. RealtimeMesh submission remains atomic, so the estimate is a heuristic and does not split a single upload. The cold-start arrival gate prevents default promotion even though movement readiness and tick behavior improved. No further adjustment was made after the seven-pair result. ## Defaults and checks | CVar | Final default | Candidate test value | |---|---:|---:| | `voxel.StreamingFastTravelWaitForAllCriticalTiles` | 1 | 0 | | `voxel.StreamingFastTravelApplyBudgetMilliseconds` | 0 ms | 1 ms | | `voxel.StreamingIncrementalDesiredSet` | 1 | 1 | | `voxel.StreamingFastTravelForwardFirst` | 0 | 0 | | `voxel.StreamingRebuildOnCoreRegionCompletion` | 1 | 1 | | `voxel.StreamingCoreDesiredCacheByCenter` | 0 | 0 | | `voxel.StreamingIncrementalDesiredAuditEvery` | 0 | 0 | | `voxel.StreamingIncrementalDesiredMaterializationAuditEvery` | 0 | 0 | | `voxel.StreamingIncrementalDesiredAuditInjectMismatch` | 0 | 0 | - Final VFHost Linux Development build passed with `-NoUBA -MaxParallelActions=4`; three existing deprecated RealtimeMesh API warnings remain. - Final-source `verify.py fast` passed in 289.8 s: 268 passes, 0 failures, 5 diagnostics. Clang and GCC geometry hashes and W1/W8/W12 determinism passed. - `git diff --check` and the runner AST syntax check passed. The direct live `TileHashDump` hook returned zero records for the Core path on both binaries and is inconclusive; the fast-tier geometry and determinism checks passed. - UE W12 movement was not run: this VFHost procedure exposed eight effective tile slots. Fast-tier W12 determinism was run. Remaining risk: desired rebuilds still reach 7.260 ms in the candidate, and the apply estimate cannot bound an atomic RMC upload. Most importantly, the arrival gate failed, so early admission remains opt-in. Changed Unreal `Source/` files: - `Source/VoxelForge/Private/VoxelWorld.cpp` - `Source/VoxelForge/Public/VoxelWorld.h`