docs(p2): correct the handoff — B1 was the Path 5 near-miss gate, not the climb
The prior localization (step-up CLIMB) was disproven by an ITestOutputHelper
capture. Records the real root cause (A6.P4 near-miss missing retail's
num_sphere>1 gate, fixed in abbd761), that the door blocks faithfully with a
real floor, and that the remaining red tests are separate (apparatus
synthetic-floor artifact, LiveCompare buggy-captures, D4 airborne) — not
simple "flip to green" targets. Next is the user visual gate.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This commit is contained in:
parent
abbd7615ee
commit
f984e92e37
1 changed files with 32 additions and 0 deletions
|
|
@ -1,5 +1,37 @@
|
||||||
# P2 pickup handoff — door / building-shell collision = BSP Path 5 grounded step-up
|
# P2 pickup handoff — door / building-shell collision = BSP Path 5 grounded step-up
|
||||||
|
|
||||||
|
> **🔴 CORRECTED 2026-06-04 — the localization below (the step-up CLIMB) was WRONG; B1 is FIXED.**
|
||||||
|
> An `ITestOutputHelper` capture of B1 (xunit swallows `Console.WriteLine`) proved the climb code
|
||||||
|
> (`find_walkable`/`AdjustSphereToPlane`/`step_sphere_down`/`DoStepUp`/`DoStepDown`) is **correct** and
|
||||||
|
> matches ACE exactly. The real B1 bug was the **A6.P4 near-miss dispatch in `BSPQuery.FindCollisions`
|
||||||
|
> Path 5 (Contact branch)**, which diverged from retail three ways: (1) recorded a near-miss
|
||||||
|
> `NegPolyHit` **unconditionally** — retail gates both `set_neg_poly_hit` calls behind
|
||||||
|
> `if (num_sphere > 1)` (`acclient_2013_pseudo_c.txt:323852`); (2) checked the foot near-miss before
|
||||||
|
> the head's (retail checks the head/sphere1 first); (3) reversed the `neg_step_up` mapping (retail:
|
||||||
|
> head index0→FALSE/slide, foot index1→TRUE/step-up, per `SPHEREPATH::set_neg_poly_hit` :323279).
|
||||||
|
> For B1's single foot sphere the spurious near-miss → outer `!NegStepUp → Collided` → revert → the
|
||||||
|
> mover wedged at x=0.1, never reached the wall to step up. **Verbatim fix committed (`abbd761`):**
|
||||||
|
> the gate+order+mapping now match retail; B1 climbs (foot→(0.6,0,0.25)); the Holtburg door blocks
|
||||||
|
> faithfully (slab `(0,-1,0)` normal) when the scenario has a real floor.
|
||||||
|
>
|
||||||
|
> **Remaining red (NOT simple flips — all separate from B1):**
|
||||||
|
> - `Apparatus_Grounded_50cmOffCenter` — its tick-0 `(0,0,1)` "block" is a **synthetic-test artifact**:
|
||||||
|
> the apparatus sets `terrain=-1000` so the only BSP is the door slab; the contact-maintenance
|
||||||
|
> step-down finds no floor underfoot → false Collided/revert, then the mover walks through. With a
|
||||||
|
> real floor (`terrain=0`) the door blocks faithfully at Y≈11.5 with `(0,-1,0)`. Fix = give the
|
||||||
|
> grounded test a real floor + assert the block normal is the door's ±Y (NOT the tick-0 `(0,0,1)`
|
||||||
|
> contact-maintenance hiccup, which is a separate cold-seed first-frame artifact). Do **NOT** just
|
||||||
|
> flip to `Assert.True(blocked)` — that blesses the artifact.
|
||||||
|
> - `LiveCompare_DoorOffCenterWalkthrough_Tick13558` / `_DoorBlocksFromOutside_Tick22760` — compare
|
||||||
|
> against captured **buggy-live** positions; a correct fix makes the harness diverge (blocks earlier).
|
||||||
|
> Re-baseline to the corrected behavior or retire as documents-the-bug.
|
||||||
|
> - `D4_AirborneMover_TallWall_PersistsSlidingNormalAcrossFrames` — **airborne (Path 6)**, a separate
|
||||||
|
> sliding-normal-persistence issue, unrelated to the Path 5 grounded near-miss. Pre-existing.
|
||||||
|
>
|
||||||
|
> See `memory/project_p2_door_stepup_findings.md`. **Next: USER VISUAL GATE** (walk through a cottage
|
||||||
|
> door cleanly; step up a stair) — the authoritative P2 acceptance. The original (wrong) analysis is
|
||||||
|
> retained below for the record.
|
||||||
|
|
||||||
> **Canonical pickup for the next session.** Branch `claude/thirsty-goldberg-51bb9b`
|
> **Canonical pickup for the next session.** Branch `claude/thirsty-goldberg-51bb9b`
|
||||||
> (do NOT branch/worktree; do NOT push without asking; NEVER `git stash`/`gc`). PowerShell on
|
> (do NOT branch/worktree; do NOT push without asking; NEVER `git stash`/`gc`). PowerShell on
|
||||||
> Windows; launch logs are UTF-16. Read this FIRST.
|
> Windows; launch logs are UTF-16. Read this FIRST.
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue