diff --git a/CLAUDE.md b/CLAUDE.md index 22208cd..f92b3f8 100644 --- a/CLAUDE.md +++ b/CLAUDE.md @@ -812,6 +812,39 @@ captures live PlayerMovementController state and diffs against the test harness — evidence-first instead of speculation-first. Findings doc: [`docs/research/2026-05-21-a6-cdb-capture-findings.md`](docs/research/2026-05-21-a6-cdb-capture-findings.md). + +**Evening extension v2 (2026-05-23 PM late) — apparatus shipped + root +cause identified.** Four commits (`fb5fba6` → `44614ab` → `0f2db62` → +`f29c9d5`). The side-by-side comparison harness was built and exercised: +- `PhysicsResolveCapture` ships a JSON Lines writer for every player-side + `ResolveWithTransition` call. Off by default; turn on via + `ACDREAM_CAPTURE_RESOLVE=`. Filtered to `IsPlayer` so NPC / remote + DR doesn't pollute. +- Two live captures from a cottage-cellar session (41K + 70K records). +- Three `LiveCompare_*` tests load 3 representative records (spawn, + on-ramp, first-cap). Spawn + on-ramp PASS bit-perfect; the first-cap + test originally FAILED with a clear divergence — and that divergence + pinpoints the root cause. +- **The cap is caused by `obj=0xA9B47900` — a landblock-baked cottage + GfxObj.** Cottage floor polygons live in this GfxObj's polygon table + (registered as a ShadowEntry), NOT in any cottage cell. The harness's + cell fixtures (0xA9B40143/146/147) don't include the cottage GfxObj, + so the harness fails to reproduce the live cn=(0,0,-1) cap. +- User's confirming observation: jumping in the cellar caps at the same + Z — purely vertical motion. This rules out every step-up / AdjustOffset + hypothesis from the prior 6-shape saga. The bug is the head sphere + hitting the cottage floor at Z=94.0 from below (math: foot Z=92.74 + + sphereHeight 1.20 = head center 93.94, head top 94.42, intersects + cottage floor Z=94.0). +- The first-cap test is now in documents-the-bug form (PASSES while + bug exists; FAILS when fix lands). Test baseline maintained at + 1178 + 8 (serial run). +- 13 new cell fixtures cover the full 0xA9B4014X neighborhood (272 KB). +Findings doc (canonical pickup): +[`docs/research/2026-05-23-a6-p3-issue98-comparison-harness-findings.md`](docs/research/2026-05-23-a6-p3-issue98-comparison-harness-findings.md). +**Next-session move: extract cottage GfxObj polygons via focused +`ACDREAM_PROBE_BUILDING=1` capture, register as ShadowEntry in harness, +flip first-cap test to assertion form.** Original demo scenario (Holtburg Sewer end-to-end) is unreachable: sewer doesn't exist on this server, and **issue #95** (portal-graph visibility blowup) blocks any substitute dungeon. Revised M1.5 demo split into