docs: #107 closed - root cause + four-leg fix + live verification; ledger updated

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
This commit is contained in:
Erik 2026-06-10 12:53:42 +02:00
parent 1090189d39
commit 34fcbc3806

View file

@ -3672,25 +3672,6 @@ Unverified. The likely culprits, ranked by suspected probability:
---
## #107 — Indoor spawn wedge: player stuck (in air / in wall) when logging in inside a building
**Status:** OPEN
**Severity:** HIGH
**Component:** physics / player-mode entry (`PlayerModeAutoEntry`, spawn teleport handling)
Reproduces 3-for-3 (2026-06-10) when `+Acdream` logs in INSIDE the Holtburg inn (character
logged out indoors): player-mode auto-entry fires (`auto-entered player mode` in the log),
then the player hangs in the air / in a wall and movement input is ignored. One stuck run
showed `live: teleport started (seq=1)` with no completion — ACE pushing a position
correction that never resolves. The #106 gate-2 `isSpawnGroundReady` hold checks
`SampleTerrainZ != null` (outdoor TERRAIN under the spawn) — an INDOOR spawn's ground is
the cell floor, not terrain, so the relationship between the hold, the spawn teleport, and
indoor grounding needs investigation. Outdoor spawns enter fine. Workaround: none from the
client; relaunching re-wedges because the character is parked indoors.
Apparatus when picking this up: `ACDREAM_CAPTURE_RESOLVE` + `ACDREAM_PROBE_RESOLVE` on a
login-indoors run; logs `flood-fix-gate2.log` / `flood-fix-gate3.log` (untracked) hold the
stuck-run output.
---
## #108 — Cellar↔main-floor transition: terrain (grass) sweeps across the upstairs door opening
@ -3730,6 +3711,36 @@ stable now; this is a draw-order/depth oscillation localized to the door surface
# Recently closed
## #107 — Indoor-login spawn wedge — [DONE 2026-06-10 · 1090189]
**Status:** DONE (live-verified incl. ACE's own poisoned teleport; final indoor
logout→login gate pending user)
**Closed:** 2026-06-10
**Commit:** `1090189`
**Component:** physics / player snap, teleport arrival, outbound wire pairs
**Root cause (capture `resolve-107-login1.jsonl` + dat scan):** ACE restored a
POISONED (cell, position) pair — cell `0xA9B40162` (one building) with a position
inside `0xA9B40171` (a different building 55 m away). The entry snap trusted the
claim verbatim → fake-grounded limbo (no contact plane/walkable; zero-move
resolves short-circuit) → first movement demoted the claim to outdoor
mid-building → 2.4 m fall through the cottage floor onto the terrain under the
house. Second shape: the PortalSpace teleport-arrival detection gated on
`differentLandblock || farAway>100m` (invented) — ACE's same-landblock short-hop
corrections matched neither → movement input frozen all session.
**Fix (four legs, retail-anchored):** (1) `PhysicsEngine.Resolve` (player snap)
runs retail `AdjustPosition` first (SetPositionInternal :283892 step 1;
AdjustPosition :280009) — `[spawn-adjust]` logs corrections; (2) the deferred
indoor `seen_outside → adjust_to_outside` sub-fallback completed (+
`CellPhysics.SeenOutside`); (3) PortalSpace arrival = any player position update
(holtburger-conformant); (4) outbound wire pairs self-consistent (landblock
frame from the resolver's full cell id, not the position) + the gate-2 hold
extension (`IsSpawnCellReady`). Live verification: ACE sent a same-lb dist=69.8
teleport whose destination was ANOTHER poisoned claim (`0xA9B40150`) — arrival
completed, `[spawn-adjust]` corrected, player fully controllable.
Tests: `Issue107SpawnDiagnosticTests` (3 dat-backed conformance facts).
## #105 — Intermittent white/missing indoor wall textures — [DONE 2026-06-10 · c787201]
**Status:** DONE (probe-verified both directions; visual gate pending user)