docs: #262 triage from the Coldeve acceptance log - hypothesis (a) demoted, stale-recenter survivors prime suspect (Campaign P P6)

Log facts: outbound MTS/AP flowed all through the run-on-spot window;
reveal collision=True is attested by the SAME _landblocks dict the
resolver walks; the 'unattributed' recenter is the default Holtburg
pre-login center -> first real position. Deduction: local display is
client-authoritative, so ACE rejection cannot pin the local body - the
defect is local zero-advance resolves. Prime suspect: login recenter may
not route through Slice E generation retirement, leaving stale
Holtburg-frame neighbor landblocks overlapping the new frame (#145
stale-offset class, neighbors were explicitly left by the 2026-06-20
center-only fix).

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
This commit is contained in:
Erik 2026-07-30 00:09:49 +02:00
parent 897b828dc1
commit 898d0f395b

View file

@ -176,9 +176,38 @@ suspected (the transport ledger was clean at login) but rule it out by
checking the first minute's [net-out]/[net-tick] against the movement
input timeline.
**Next:** reproduce with `ACDREAM_PROBE_RESOLVE=1` + `ACDREAM_PROBE_NET=1`
on a fresh login; the resolve lines name the missing piece directly. Do NOT
add a workaround (no auto-recall, no synthetic position kick).
**2026-07-30 triage (Campaign P P6, log-only — no repro yet):** read the
full run-on-spot window (log lines ~91-245, world-visible → first
teleport). FACTS: (1) outbound movement flowed the whole time — 0xF61C on
every input edge, periodic 0xF753, combat toggle/attack/select actions all
sent; transport healthy (one isolated resend+nak blip). (2) The reveal's
`collision=True` is attested by
`PhysicsEngine.IsNeighborhoodTerrainResident` — the SAME `_landblocks`
dictionary the per-tick resolve walks — so the 3×3 spawn neighborhood WAS
physics-resident before world-visible; "terrain never arrived" is dead.
(3) The "unattributed" recenter jump attributes cleanly: the pre-login
world view is Holtburg-centered by default (`loading world view centered
on 0xA9B4FFFF` = lb (169,180)) and the first real position recentered to
(135,102). DEDUCTION: hypothesis (a) is DEMOTED — the symptom is the
user's OWN client's body (local display is client-authoritative), so
server-side rejection cannot pin the local body; the defect is local:
every resolve returned ~zero advance while the animation ran. REFINED
HYPOTHESES, probe-decidable: (e1) **stale-offset survivors of the login
recenter** — the 2026-06-20 #145 fix removes only the old CENTER
landblock; if the login first-position recenter does not route through
Slice E's generation-scoped full-window/recenter retirement the way
teleports do, Holtburg-frame NEIGHBOR blocks stay resident overlapping
the new frame → the resolve grounds/collides against phantom geometry →
zero advance until the recall's full arrival pipeline cleans up (also
explains the once-only timing and the teleport self-heal); (e2) CellGraph
terrain-origin registry inconsistent with `_landblocks` after the login
recenter (membership hold). **Next:** (i) code-check whether the login
recenter routes through the same generation retirement as teleports;
(ii) reproduce with `ACDREAM_PROBE_RESOLVE=1` + `ACDREAM_PROBE_CELL=1` +
net probes on fresh logins — the `[resolve]` responsible-entity/cell
lines plus a one-shot `_landblocks` key/offset dump at recenter decide
(e1) vs (e2) directly. Do NOT add a workaround (no auto-recall, no
synthetic position kick).
---