docs: A6.P3 #98 — record apparatus convergence + residual X-motion
The findings doc gets an evening-v2 follow-on documenting: - GfxObj dump infrastructure shipped (cc3afbc) - Harness reproduces cap-event collision normal (97fec19) - Residual +0.0266m X-motion divergence — the new investigation target - Pre-existing test suite flakiness (out of scope, tracked separately) CLAUDE.md's "Current A6 phase" block points at the residual divergence as the next concrete move with the test that gives <1s feedback per fix attempt. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This commit is contained in:
parent
97fec19dbb
commit
7729bdcf98
2 changed files with 150 additions and 59 deletions
40
CLAUDE.md
40
CLAUDE.md
|
|
@ -842,9 +842,43 @@ cause identified.** Four commits (`fb5fba6` → `44614ab` → `0f2db62` →
|
|||
- 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.**
|
||||
|
||||
**Evening v2 follow-on — apparatus convergence SHIPPED 2026-05-23 PM.**
|
||||
Two commits (`cc3afbc` → `97fec19`):
|
||||
- `cc3afbc` adds the GfxObj dump infrastructure (`ACDREAM_DUMP_GFXOBJS`)
|
||||
mirroring the existing `ACDREAM_DUMP_CELLS` pattern, with new
|
||||
`GfxObjDump`/`GfxObjDumpSerializer` parallel to `CellDump`. The new
|
||||
env var triggers `PhysicsDataCache.CacheGfxObj` to write the full
|
||||
resolved polygon table as JSON when a listed id caches. Closes the
|
||||
gap that the existing `[resolve-bldg]` probe couldn't fill (the BSP
|
||||
wire site that populates `LastBspHitPoly` was never wired, so the
|
||||
probe only emitted GfxObj-level metadata, not per-poly geometry).
|
||||
- `97fec19` lands the cottage GfxObj fixture (`0x01000A2B`, 74 polygons,
|
||||
BSP radius 13.989m matching live), the new `RegisterCottageGfxObj`
|
||||
harness helper, and a minimum-stub landblock so
|
||||
`TryGetLandblockContext` succeeds at the cellar XY. Harness now
|
||||
reproduces the live `cn=(0,0,-1)` cap bit-perfect. The full per-field
|
||||
round-trip uncovers ONE residual: live preserves +0.0266m of +X
|
||||
motion through the cap (edge-slide along the cottage floor); harness
|
||||
blocks all motion. Captured in
|
||||
`LiveCompare_FirstCap_ResidualXMotionDivergence_DocumentsNextInvestigation`
|
||||
in documents-the-bug form.
|
||||
- All 21 issue-#98-relevant tests (12 harness + 4 GfxObjDumpRoundTrip +
|
||||
1 new PhysicsDiagnosticsTests + 4 CellDumpRoundTripTests) pass
|
||||
deterministically in isolation.
|
||||
- Pre-existing test suite flakiness observed (8–19 failures across runs
|
||||
of the same code, from PhysicsResolveCapture / PhysicsDiagnostics
|
||||
statics leaking between test classes). INDEPENDENT of A6.P3 — verified
|
||||
by stashing the cottage helper and reproducing the same flaky range.
|
||||
Out of scope for this session; tracked as follow-up.
|
||||
|
||||
**Next-session move:** investigate the residual +X edge-slide divergence
|
||||
in `Transition.transitional_insert` / `AdjustOffset`'s handling of a
|
||||
`cn=(0,0,-1)` head-bump. Live treats it as a Z-only constraint and
|
||||
slides the remaining XY motion along the cottage floor; harness blocks
|
||||
the entire move vector instead. The harness's
|
||||
`LiveCompare_FirstCap_ResidualXMotionDivergence_DocumentsNextInvestigation`
|
||||
test gives <1s feedback per fix attempt. ~2 hours estimate.
|
||||
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
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue