ship(phys): A6.P3 slice 3 — cell-resolver ping-pong CLOSED + #98 re-diagnosed
Slice 3 v2 (3e140cf) added point-in cell-stickiness in
ResolveCellId's indoor branch. User verification + slice3v2 capture
confirms: cell-resolver ping-pong is FULLY CLOSED.
Data:
- scen2_v2 capture (pre-slice-3): 20+ cell-transit events with
rampant ping-pong (0xA9B4014B ↔ 0xA9B4014A ↔ 0xA9B4013F at the
cellar boundary, Z stable ~96.4 — same tick re-classification)
- slice3v2 capture (post-fix): 1 cell-transit event (login teleport
only) — ping-pong fully eliminated
Findings:
- A6.P2 Finding 3 (cell-resolver sling-out family) CLOSED.
- Issue #90 (sphere-overlap stickiness workaround in same function)
now redundant; can be removed in A6.P4 after broader visual
verification.
- Issue #97 (phantom collisions + fall-through on 2nd floor) hypothesis
pending: same instability family, likely closed as side-effect of
this fix. Re-test on next happy-test session.
- Issue #98 (cellar-up stuck) PERSISTS but with NEW DIAGNOSIS.
Originally filed as cell-resolver ping-pong (which was true and now
fixed), but user verification shows the cellar-up symptom remains
with a DIFFERENT root cause: BSP step-physics at the cellar stair
TOP. Push-back trace from slice3v2 capture:
n=(0, -0.719, 0.695) sloped face (walkable per FloorZ=0.664)
delta=(0, 0, 0.75) step-down probe lifts sphere by 0.75m
winterp=1.0->0.0 entire walk-interp consumed per tick
Player progresses up most of the stairs but blocks at top step
where the cellar transitions to the cottage main floor. #98 issue
updated with this re-diagnosis.
Includes:
- scen4_cottage_cellar_slice3 acdream.log (slice 3 v1 evidence;
ping-pong already closed by v1's sphere-overlap stickiness, but
v1 over-corrected by holding player in cellar during legitimate
transitions)
- scen4_cottage_cellar_slice3v2 acdream.log (slice 3 v2 evidence;
point-in stickiness fixes the over-correction; cellar-up reveals
the deeper BSP step-physics bug)
Docs updated:
- ISSUES.md — #98 re-diagnosed
- docs/plans/2026-04-11-roadmap.md — A6.P3 slice 3 marked SHIPPED;
slice 4 (or A6.P4) scoped for #98 step-physics investigation
- CLAUDE.md — Currently-working-toward block updated
Test suite: 1148 pass + 8 pre-existing fail (baseline maintained).
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This commit is contained in:
parent
3e140cfe71
commit
ceeb06be7d
5 changed files with 165165 additions and 22 deletions
|
|
@ -203,21 +203,24 @@ successfully 2026-04-30 for the steep-roof case. Matching binaries
|
|||
Matching retail would require deeper refactor (e.g. AdjustOffset
|
||||
fallback to body.ContactPlane). Guard is benign improvement;
|
||||
further #96 closure deferred.
|
||||
- **A6.P3 slice 3 — Finding 3 (cell-resolver stickiness)** (NEXT,
|
||||
~1-2 days). New M1.5-blocking bug surfaced during slice 2
|
||||
verification: **user cannot walk UP from cottage cellar — stuck
|
||||
at last step due to cell-resolver ping-pong** (issue #98). Same
|
||||
family as #90 (existing workaround) + scen4 sling-out (Finding 3
|
||||
from A6.P2). Retail oracle: `CObjCell::find_cell_list`
|
||||
Position-variant at `acclient_2013_pseudo_c.txt:308742-308783`.
|
||||
Port retail's cell-array hysteresis: prefer previous tick's
|
||||
CellId when sphere is close to (but slightly outside) previous
|
||||
cell's CellBSP volume. May close issues #98 (target), #97
|
||||
(phantom collisions; same instability family), #90 (workaround
|
||||
removal), and scen4 sling-out together. **No re-captures
|
||||
required for slice 3 scope decision** — issue #98 evidence already
|
||||
captured in `docs/research/2026-05-21-a6-captures/scen3_inn_2nd_floor_slice2v2/acdream.log`
|
||||
cell-transit chain.
|
||||
- **✓ SHIPPED — A6.P3 slice 3 — cell-resolver stickiness**
|
||||
(2026-05-22, commits `8898166` v1 + `3e140cf` v2). Added
|
||||
point-in stickiness check at top of `ResolveCellId`'s indoor
|
||||
branch. Cell-resolver ping-pong FULLY CLOSED (data: scen4 cellar
|
||||
capture shows 1 cell-transit vs 20+ pre-fix). **Outcomes:**
|
||||
Finding 3 (cell-resolver instability) closed. #90 workaround
|
||||
redundant (deferred A6.P4 removal). #97 phantom collisions
|
||||
hypothesis pending re-test (likely closed too). #98 cellar-up
|
||||
symptom PERSISTS but with NEW diagnosis (re-filed in #98 as BSP
|
||||
step-physics at cellar stair top — sloped step-face mis-handling,
|
||||
NOT cell-resolver).
|
||||
- **A6.P3 slice 4 (or A6.P4)? — BSP step-physics at cellar
|
||||
stair top (#98 new diagnosis)** (NEXT or DEFERRED). Investigate
|
||||
why step-down probe consumes all walk-interp at cellar stair top.
|
||||
Evidence: scen4 cottage_cellar_slice3v2 push-back trace. May
|
||||
require reading BSP step_up + step_down decomp + comparing to
|
||||
cellar stair geometry. Could be its own slice or merged into a
|
||||
broader A6.P4 cleanup phase.
|
||||
- Issue #95 (visibility blowup) NOT in A6.P3 scope — separate work
|
||||
surface.
|
||||
- **A6.P4 — Remove workarounds + visual verification** (~1 day after
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue