Session-end documentation for the 2026-05-23 evening session in
which:
1. The PhysicsResolveCapture apparatus shipped (committed earlier
in fb5fba6).
2. A live capture (41K records) drove the first LiveCompare_* tests
in CellarUpTrajectoryReplayTests, two of which PASS bit-perfect.
3. The failing third test pinpointed the cap-event divergence.
4. A second capture (70K records + 16 cell dumps + per-poly probes)
identified the cottage GfxObj 0xA9B47900 as the blocker — a
landblock-baked static building whose floor polygons live in the
GfxObj's BSP, NOT in any cottage cell.
The findings doc has:
- TL;DR + chronological commits
- Apparatus inventory (PhysicsResolveCapture, comparison tests,
fixtures, launch scripts)
- The math: head sphere top at Z=foot+1.68 reaches the cottage floor
at Z=94.0 when foot Z=92.74, matching the observed cap.
- User's confirming observation (cap fires on pure-vertical jump too,
ruling out every step-up / AdjustOffset hypothesis)
- What's NOT yet known (why retail doesn't have this cap; full
cottage GfxObj polygon list)
- Next-session pickup with two ranked options
Adds:
- docs/research/2026-05-23-a6-p3-issue98-comparison-harness-findings.md
- launch-a6-issue98-capture.ps1 (capture-only launch)
- launch-a6-issue98-polydump.ps1 (capture + diagnostic probes + 16-cell dump)
- 13 new cell-dump fixtures (0xA9B40140-0xA9B40142, 0xA9B40144,
0xA9B40145, 0xA9B40148-0xA9B4014F) at 272 KB total. The harness now
has the full 0xA9B4014X neighborhood available for any future
comparison test that needs adjacent cell geometry.
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
42 lines
2 KiB
PowerShell
42 lines
2 KiB
PowerShell
$env:ACDREAM_DAT_DIR = "$env:USERPROFILE\Documents\Asheron's Call"
|
|
$env:ACDREAM_LIVE = '1'
|
|
$env:ACDREAM_TEST_HOST = '127.0.0.1'
|
|
$env:ACDREAM_TEST_PORT = '9000'
|
|
$env:ACDREAM_TEST_USER = 'testaccount'
|
|
$env:ACDREAM_TEST_PASS = 'testpassword'
|
|
|
|
# A6.P3 #98 — second capture pass to identify the missing fixture cell.
|
|
# Dump cells 0xA9B40140-0xA9B4014F (all 16 cells in the cottage neighborhood)
|
|
# so we can see geometry of cells beyond just 143, 146, 147. The blocking
|
|
# polygon at world Z~94 / XY~(141.4, 7.0) facing DOWN must be in one of
|
|
# these neighbors.
|
|
$dumpRange = @(
|
|
'0xA9B40140','0xA9B40141','0xA9B40142','0xA9B40143',
|
|
'0xA9B40144','0xA9B40145','0xA9B40146','0xA9B40147',
|
|
'0xA9B40148','0xA9B40149','0xA9B4014A','0xA9B4014B',
|
|
'0xA9B4014C','0xA9B4014D','0xA9B4014E','0xA9B4014F'
|
|
) -join ','
|
|
$env:ACDREAM_DUMP_CELLS = $dumpRange
|
|
$env:ACDREAM_DUMP_CELLS_DIR = 'tests/AcDream.Core.Tests/Fixtures/issue98'
|
|
|
|
# Per-push-back polygon dump — when the head sphere is blocked by a
|
|
# polygon (the cap event), this logs which cell + poly id + world verts.
|
|
$env:ACDREAM_PROBE_POLY_DUMP = '1'
|
|
$env:ACDREAM_PROBE_PUSH_BACK = '1'
|
|
|
|
# Cell-set summary at the cap point so we see what cells the multi-cell
|
|
# iteration enumerated.
|
|
$env:ACDREAM_PROBE_RESOLVE = '1'
|
|
$env:ACDREAM_PROBE_CELL = '1'
|
|
$env:ACDREAM_PROBE_INDOOR_BSP = '1'
|
|
|
|
# Keep the live capture going too — augments the data with the
|
|
# corresponding ResolveWithTransition records for cross-reference.
|
|
$capturePath = Join-Path 'C:\Users\erikn\source\repos\acdream\.claude\worktrees\strange-albattani-3fc83c' 'a6-issue98-resolve-capture-2.jsonl'
|
|
if (Test-Path $capturePath) { Remove-Item $capturePath -Force }
|
|
$env:ACDREAM_CAPTURE_RESOLVE = $capturePath
|
|
Write-Host "Capture path: $capturePath"
|
|
Write-Host "Cell-dump range: $dumpRange"
|
|
|
|
Set-Location 'C:\Users\erikn\source\repos\acdream\.claude\worktrees\strange-albattani-3fc83c'
|
|
dotnet run --project src\AcDream.App\AcDream.App.csproj --no-build -c Debug *> 'C:\Users\erikn\source\repos\acdream\.claude\worktrees\strange-albattani-3fc83c\a6-issue98-polydump-launch.log'
|