acdream/docs/research
Erik cf3deff7c2 feat(phys): A6.P3 slice 5 — [place-fail] probe + sharpened #98 diagnosis
Add ACDREAM_PROBE_PLACEMENT_FAIL gate + LogPlacementFail emitter +
side-channel polygon attribution in PhysicsDiagnostics. Wire into
BSPQuery.FindCollisions Path 1 (Placement/Ethereal) on Collided
returns; wire into Transition.DoStepDown after the placement_insert
TransitionalInsert(1) call; wire into Transition.FindObjCollisions
to emit per-static-object [place-fail-obj] lines.

Run scen4 cellar-up with the probe → 168 [place-fail] events. 80 of
81 BSPQuery Path 1 placement rejections cite polygon 0x0020 in
cellar cell 0xA9B40147's BSP: n=(0,0,-1) d=-0.2, world Z=93.82 —
the cellar ceiling (underside of cottage main floor thickness layer).
0 [place-fail-obj] lines, confirming the failure source is the cell
BSP not a static object.

The probe-driven evidence INVALIDATES the 2026-05-22 morning
handoff's "Path 5 vs Path 6 in BSPQuery.FindCollisions" diagnosis.
Retail's BP4 trace shows every find_collisions hit has collide=0 —
retail enters the same Contact branch we do, no outer-dispatcher
divergence. Retail's BP5 fires 17+ times on the cellar ramp polygon,
not "30 hits all on flat planes" as morning claimed.

The actual divergence is downstream in cell-promotion: retail's
check_cell transitions to cottage cell 0xA9B40146 during the ascent
(BP7 sets ContactPlane to the cottage main floor poly, which lives
in cottage cell's BSP not cellar's). Ours stays at cellar 0xA9B40147,
where the ceiling poly 0x0020 correctly rejects the lifted sphere.

No fix attempted this session per CLAUDE.md discipline check
(3+ failed fixes = handoff). Full slice 5 evidence + concrete
next-session pickup steps at docs/research/2026-05-22-a6-p3-slice5-handoff.md.
ISSUES.md #98 updated with the corrected diagnosis.

Test baseline: 1148 + 8 pre-existing fail. Maintained.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-22 20:02:15 +02:00
..
2026-05-01-retail-motion-trace fix(motion): jump direction, AutoPos cadence, backward/strafe wire & anim 2026-05-02 16:11:15 +02:00
2026-05-02-remote-entity-motion docs(spec): Phase L.3 — Remote Entity Motion Conformance design 2026-05-02 18:12:18 +02:00
2026-05-03-remote-anim-cycle docs(research): investigation prompt for remote-anim-cycle bug 2026-05-03 19:59:22 +02:00
2026-05-04-l3-port feat(motion): L.3 M1 — fresh InterpolationManager port + retail spec 2026-05-05 14:56:42 +02:00
2026-05-06-locomotion-cycle-transitions docs(motion): #39 — candidate fix ineffective; refute Shift-toggle wire hypothesis 2026-05-06 07:21:42 +02:00
2026-05-21-a6-captures feat(phys): A6.P3 slice 5 — [place-fail] probe + sharpened #98 diagnosis 2026-05-22 20:02:15 +02:00
data docs(research): commit named retail decomp + spells.csv (foundation) 2026-04-25 17:27:19 +02:00
decompiled research: full acclient.exe decompilation — 22,225 functions, 688K lines 2026-04-12 23:25:51 +02:00
deepdives fix(lighting): match retail indoor ambient (0.20 neutral, not 0.10/0.09/0.08 warm) 2026-05-19 10:14:25 +02:00
named-retail docs(research): canonical retail keymap + dump-keymap tool 2026-04-25 23:01:58 +02:00
retail-ui feat(ui): Phase D.2a — VitalsPanel wired into GameWindow + backend pivot 2026-04-25 00:43:46 +02:00
2026-04-12-movement-deep-dive.md docs: movement deep dive — AC2D + holtburger cross-reference 2026-04-12 21:52:12 +02:00
2026-04-21-animation-audit.md docs(research): animation-pipeline decompile audit — no real gaps 2026-04-21 21:18:45 +02:00
2026-04-21-sky-deep-audit.md fix(sky): scale keyframe Luminosity/Transparent/MaxBright from percent → fraction 2026-04-22 17:38:44 +02:00
2026-04-22-sky-lighting-decompile.md sky(phase-1): revert speculative tint, add ACDREAM_DUMP_SKY diagnostic 2026-04-23 18:06:52 +02:00
2026-04-23-daygroup-selection.md sky(phase-3c): port retail FUN_00501990 DayGroup picker (uniform LCG) 2026-04-24 08:45:34 +02:00
2026-04-23-lightning-crossfade.md sky(phase-5a): remove DayGroup-name rain hack, ship retail-only Overcast mapping 2026-04-24 11:04:36 +02:00
2026-04-23-lightning-real.md sky(phase-8): retail-faithful night sky + README refresh 2026-04-24 20:34:36 +02:00
2026-04-23-physicsscript.md sky(phase-5a): remove DayGroup-name rain hack, ship retail-only Overcast mapping 2026-04-24 11:04:36 +02:00
2026-04-23-retail-memory-probe.md sky(phase-3g): fix LCG multiplier — 360 (DaysPerYear), not 7620 2026-04-24 10:17:38 +02:00
2026-04-23-sky-dat-schema.md sky(phase-1): revert speculative tint, add ACDREAM_DUMP_SKY diagnostic 2026-04-23 18:06:52 +02:00
2026-04-23-sky-decompile-hunt-A.md sky(phase-1): revert speculative tint, add ACDREAM_DUMP_SKY diagnostic 2026-04-23 18:06:52 +02:00
2026-04-23-sky-decompile-hunt-B.md sky(phase-8): retail-faithful night sky + README refresh 2026-04-24 20:34:36 +02:00
2026-04-23-sky-decompile-hunt-C.md sky(phase-8): retail-faithful night sky + README refresh 2026-04-24 20:34:36 +02:00
2026-04-23-sky-fog.md sky(phase-5a): remove DayGroup-name rain hack, ship retail-only Overcast mapping 2026-04-24 11:04:36 +02:00
2026-04-23-sky-material-state.md docs(sky): port plan for PhysicsScript/fog/lightning/crossfade 2026-04-24 10:53:46 +02:00
2026-04-23-sky-pes-wiring.md sky(phase-5a): remove DayGroup-name rain hack, ship retail-only Overcast mapping 2026-04-24 11:04:36 +02:00
2026-04-23-sky-references-crossref.md sky(phase-1): revert speculative tint, add ACDREAM_DUMP_SKY diagnostic 2026-04-23 18:06:52 +02:00
2026-04-23-sky-retail-verbatim.md sky(phase-1): revert speculative tint, add ACDREAM_DUMP_SKY diagnostic 2026-04-23 18:06:52 +02:00
2026-04-24-lambert-brightness-split.md sky(phase-8): retail-faithful night sky + README refresh 2026-04-24 20:34:36 +02:00
2026-04-26-chorizite-pr-draft.md docs(research): sky/weather investigation handoff + diagnostic tools 2026-04-26 21:40:34 +02:00
2026-04-26-datreaderwriter-reference.md docs(research): sky/weather investigation handoff + diagnostic tools 2026-04-26 21:40:34 +02:00
2026-04-26-sky-investigation-handoff.md docs(research): sky/weather investigation handoff + diagnostic tools 2026-04-26 21:40:34 +02:00
2026-04-28-combat-animation-planner.md feat(anim): Phase L.1c select combat maneuvers 2026-04-28 11:44:17 +02:00
2026-04-28-pes-pseudocode.md feat(vfx): Phase C.1 — PES particle renderer + post-review fixes 2026-04-28 22:47:11 +02:00
2026-04-28-remote-moveto-pseudocode.md feat(anim): Phase L.1c port MoveTo path data + per-tick steer 2026-04-28 21:49:22 +02:00
2026-04-28-sky-cloud-material-trace.md feat(vfx): Phase C.1 — PES particle renderer + post-review fixes 2026-04-28 22:47:11 +02:00
2026-04-30-precipice-slide-pseudocode.md fix(physics): #32 L.2c precipice edge-slide context 2026-04-30 08:04:37 +02:00
2026-05-05-issue-42-handoff.md docs(research): expand #42 handoff prompt for fresh-session pickup 2026-05-05 18:02:58 +02:00
2026-05-06-issue-38-handoff.md docs(research): #38 handoff prompt for next-session agent 2026-05-06 17:03:43 +02:00
2026-05-06-issue-38-render-interp-pseudocode.md fix(camera): #38 render-interpolate player motion 2026-05-06 17:53:34 +02:00
2026-05-06-issue-47-close-degrade-pseudocode.md fix(rendering): #47 — walk DIDDegrade for retail close-detail meshes 2026-05-06 16:46:23 +02:00
2026-05-06-issue-47-handoff.md docs(research): #47 handoff prompt for next-session agent 2026-05-06 11:34:25 +02:00
2026-05-06-issue-48-fix-pseudocode.md fix(scenery): #48 unify scenery Z with physics-path triangle picker 2026-05-07 14:30:25 +02:00
2026-05-06-issue-48-handoff.md docs(issues): file #48 — subset of tree species hover above terrain 2026-05-06 17:18:26 +02:00
2026-05-06-issue-49-handoff.md docs(research): #49 handoff — scenery (X, Y) drift investigation 2026-05-07 14:34:55 +02:00
2026-05-08-phase-n3-handoff.md docs: roadmap N.0 shipped + realistic N.2-N.9 estimates + N.3 handoff 2026-05-08 10:49:16 +02:00
2026-05-08-phase-n4-week4-handoff.md docs(N.4): Week 4 handoff for the next agent 2026-05-08 14:54:12 +02:00
2026-05-08-phase-n5-handoff.md docs(N.5): cold-start handoff for next session 2026-05-08 18:05:36 +02:00
2026-05-09-phase-n5b-handoff.md docs(N.5b): cold-start handoff for next session 2026-05-09 07:16:10 +02:00
2026-05-10-holtburger-network-stack-study.md docs(post-A.5): capture holtburger network-stack study + Phase M.0 quick-wins 2026-05-10 17:52:26 +02:00
2026-05-10-phase-a5-handoff.md docs(A.5): cold-start handoff for the next session 2026-05-09 21:11:46 +02:00
2026-05-10-phase-m-opcode-matrix.md docs(phase-m): sharpen Phase M into design spec + opcode coverage matrix 2026-05-10 19:22:49 +02:00
2026-05-10-post-a5-polish-handoff.md docs(post-A.5): cold-start handoff for the next session 2026-05-10 10:16:10 +02:00
2026-05-10-tier1-mutation-audit.md docs(post-A.5 #53): Tier 1 retry — mutation audit + cache design spec 2026-05-10 16:50:26 +02:00
2026-05-10-tier1-retry-handoff.md docs(post-A.5): cold-start handoff for the Tier 1 retry session (#53) 2026-05-10 16:14:24 +02:00
2026-05-12-l2a-shipped-l2d-handoff.md docs(phys L.2a): handoff + next-session prompt + CLAUDE.md / plan-of-record updates 2026-05-12 18:15:16 +02:00
2026-05-12-l2d-next-session-prompt.md docs(phys L.2a): handoff + next-session prompt + CLAUDE.md / plan-of-record updates 2026-05-12 18:15:16 +02:00
2026-05-12-l2g-slice1-shipped-handoff.md docs(phys L.2g): slice 1 shipped handoff + B.4 gap discovery + plan-of-record 2026-05-12 23:17:05 +02:00
2026-05-13-b4b-shipped-handoff.md docs(B.4b): final-review polish — file #59 #60 follow-ups + handoff correction 2026-05-13 19:43:38 +02:00
2026-05-13-b4c-shipped-handoff.md docs(B.4c): correct handoff fabrications surfaced by final review 2026-05-14 08:03:45 +02:00
2026-05-13-b5-pickup-handoff.md docs(B.5): fresh-session handoff for BuildPickUp + ground-item interaction 2026-05-14 14:35:52 +02:00
2026-05-13-l2d-slice1-shipped-handoff.md docs(phys L.2d): slice 1 + 1.5 shipped handoff + 3rd plan-of-record reframe 2026-05-12 19:46:45 +02:00
2026-05-14-b5-shipped-handoff.md docs(B.5): ship handoff + roadmap/CLAUDE update + file #63 #64 2026-05-14 16:23:20 +02:00
2026-05-15-b6-b7-shipped-handoff.md docs(B.6+B.7): ship handoff — 36 commits, faithfulness audit, workaround retirement plan 2026-05-15 18:29:53 +02:00
2026-05-16-issue77-autowalk-handoff.md docs(research): handoff for issue #77 — close-range auto-walk + pickup overshoot 2026-05-18 08:38:31 +02:00
2026-05-16-session-handoff.md docs: rewrite handoff — M2 redirected from "kill a drudge" to indoor walkability 2026-05-16 21:01:30 +02:00
2026-05-19-cluster-a-shipped-handoff.md docs(phase): Cluster A — partial ship + handoff 2026-05-19 16:12:24 +02:00
2026-05-19-contactplane-retention-pickup-prompt.md docs(handoff): ContactPlane retention investigation pickup prompt 2026-05-20 07:06:11 +02:00
2026-05-19-indoor-cell-rendering-cause.md feat(wb): ConsoleErrorLogger + cause report — H1 swallowed-exception confirmed 2026-05-19 13:00:18 +02:00
2026-05-19-indoor-cell-rendering-probe-capture.md docs(research): Phase 1 indoor probe capture — H1 confirmed 2026-05-19 12:03:25 +02:00
2026-05-19-indoor-cell-rendering-verification.md docs(research): Phase 2 verification — floor renders, fix landed 2026-05-19 13:12:53 +02:00
2026-05-19-indoor-followup-handoff.md docs: file #87 — retire WB fork band-aid via geom-only API 2026-05-19 14:31:14 +02:00
2026-05-19-indoor-followup-prompt.md docs(handoff): indoor follow-up brief + fresh-session kickoff prompt 2026-05-19 13:36:18 +02:00
2026-05-19-indoor-walkable-plane-bsp-port-shipped-handoff.md docs: indoor walkable-plane BSP port partial-ship handoff 2026-05-20 07:03:14 +02:00
2026-05-19-indoor-walking-phase2-pickup-prompt.md docs(handoff): retarget pickup prompt — indoor/collision/physics/dungeons only 2026-05-19 19:52:17 +02:00
2026-05-19-indoor-walking-phase2-shipped-handoff.md docs(phase): Indoor walking Phase 2 — Portal-based cell tracking shipped 2026-05-19 19:31:22 +02:00
2026-05-20-indoor-walking-bug-a-handoff.md docs(handoff): indoor walking Bug A wrong-scope handoff 2026-05-20 09:38:13 +02:00
2026-05-20-m15-kickoff-handoff.md docs(handoff): M1.5 kickoff — pickup prompt + workaround inventory 2026-05-21 11:12:46 +02:00
2026-05-20-phase-a4-shipped-cell-pingpong-finding.md docs(roadmap): A4 shipped + #90 cell-tracking ping-pong filed 2026-05-20 20:10:29 +02:00
2026-05-21-a6-cdb-capture-findings.md ship(phys): A6.P3 slice 1 — Indoor ContactPlane retention COMPLETE 2026-05-22 10:11:44 +02:00
2026-05-21-a6-p1-partial-ship-handoff.md docs(handoff): A6.P1 partial-ship — infra DONE, captures 1/9 2026-05-21 20:05:17 +02:00
2026-05-21-a6-p3-slice1-retail-mech-b-research.md fix(research): A6.P3 slice 1 T1 — citation corrections + LKCP re-latch note 2026-05-22 08:20:24 +02:00
2026-05-21-collision-fixes-shipped-handoff.md docs(handoff): update pickup prompt to point at main + fresh worktree 2026-05-20 15:05:07 +02:00
2026-05-21-indoor-walking-doorway-investigation-prompt.md docs(handoff): pickup prompt for indoor walking doorway investigation 2026-05-20 09:55:47 +02:00
2026-05-21-open-items-pickup-prompt.md docs(milestones): promote indoor work to M1.5 — primary focus 2026-05-21 10:32:24 +02:00
2026-05-21-phase-o-t1-prompt.md docs(O-T1): session handoff prompt for Phase O Task 1 (WB usage audit) 2026-05-21 14:01:06 +02:00
2026-05-21-phase-o-t1-wb-audit.md docs(O): O-T1 audit shipped + Phase O spec amended 2026-05-21 14:35:38 +02:00
2026-05-21-walk-miss-capture-findings.md docs(physics): spec + plan + findings for ISSUES #83 walk-miss probe spike 2026-05-20 11:00:11 +02:00
2026-05-22-a6-p3-handoff.md docs(handoff): A6.P3 2026-05-22 EOS handoff + pickup prompt for #98 fix 2026-05-22 13:32:02 +02:00
2026-05-22-a6-p3-slice5-handoff.md feat(phys): A6.P3 slice 5 — [place-fail] probe + sharpened #98 diagnosis 2026-05-22 20:02:15 +02:00
acclient_animation_map.md fix(anim): implement adjust_motion — TurnLeft/SideStepLeft play backward 2026-04-13 12:17:26 +02:00
acclient_animation_pseudocode.md research: full animation pseudocode from decompiled acclient.exe 2026-04-13 12:43:44 +02:00
acclient_architecture_map.md docs: comprehensive architecture plan for acdream 2026-04-13 14:23:50 +02:00
acclient_decompiled.c research: decompile acclient.exe terrain/physics via Ghidra headless 2026-04-12 23:18:27 +02:00
acclient_function_map.md docs(research): #9 sweep acclient_function_map.md against PDB symbols 2026-04-25 17:44:07 +02:00
acclient_indoor_transitions_pseudocode.md research: indoor transition pseudocode from ACE + decompiled analysis 2026-04-13 13:56:16 +02:00
transition_pseudocode.md docs(research): collision transition system pseudocode from decompiled + ACE 2026-04-13 23:41:13 +02:00