docs(physics): record cutover slice C3c completion + closeout

C3c COMPLETE at 529e0e9d in the placement-cutover plan (five fix slices,
R1 dual-review round, final gates). New closeout research note. ISSUES
#276 (settle-CellId discard), #277 (route-1 far-Create radius bound),
#278 (user-session triage bundle). Register AD-60/AD-61 numeric order.

The next slice before C5 is the 6b28ff99 O(changed) collision clone
(soak convergence); C4 resumes after.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
This commit is contained in:
Erik 2026-08-02 18:12:57 +02:00
parent 529e0e9d88
commit f4ef2b2a2a
4 changed files with 174 additions and 6 deletions

View file

@ -24,6 +24,44 @@ What does NOT go here:
- Every session: scan OPEN issues at start; promote/close anything we touched during the session before ending.
- Promoting to a Phase: mark as `DONE (promoted to Phase X)` + commit SHA where the Phase entry landed.
## C3c placement cutover — 2026-08-02
- **#276 — OPEN — SpawnPlacementSettler discards the settle's resolved
cell.** `SpawnPlacementSettler.TrySettle`
(src/AcDream.Core/Physics/SpawnPlacementSettler.cs:61) commits
`settle.Position` but never reads `settle.CellId`: a compressed
first-gravity-frame settle whose few-cm sweep crosses a cell boundary
(outdoor/EnvCell seam, stacked EnvCells) leaves the body's cell at the
placement cell until the next resolve corrects it. Inherited #270
semantics — shared by the remote spawn seed and the C3c local
first-entry settle (register row AD-61). Fix shape: commit the
settle's resolved cell through the same body/cell channel the per-tick
resolve writeback uses; needs a conformance test placing a body above
a floor whose containing cell differs from the wire cell. Found by C3c
review round 1 (retail minor M2).
- **#277 — OPEN — route-1 far-Create relies on a practical radius bound,
not an invariant.** A graphical-host wire Create for a landblock the
streaming window never reaches keeps its residence + one drive-pending
entry for the session (re-Advanced per frame). Bounded today because
the collision-publication window (5×5, two-tier N₁=4) is strictly
larger than ACE's Create-broadcast group, so the far set is empty; if
C4 changes either radius, route 1 needs the F7-style
service-window/celless conversion
(`HeadlessSessionWorldProjection.cs:557-570` is the template). Wake
and despawn-reap paths are verified correct (C3c adversarial delta
review). Related narrowing: a remote whose landblock leaves the
headless service window between ProjectSpawn and placement commit
still parks (route 8, rarer than the pre-F7 leak).
- **#278 — OPEN — post-C3c user-session triage bundle (2026-08-02
observations).** (a) purple materialization haze re-fires while
standing still — traced to the Hidden/UnHide script re-firing on a
visibility edge; most plausible driver is the pre-existing `6b28ff99`
streaming-convergence regression (its dedicated slice precedes C5) —
re-observe after that slice; (b) no lateral glide when walking against
impassable slopes — verify against open #269 (Campaign P slope-slide
residual) in the session before treating as new; (c) `/ls` command
reported non-working — identify which command surface at the session.
## Current queue — 2026-07-27
- **Structural handoff:** all eight `GameWindow` decomposition slices and the