acdream/docs/superpowers/specs
Erik b55ae831bd docs: A6.P3 #98 resolution + A6.P4 design + #99/#100 filed
Knowledge-preservation pass after the issue #98 cellar-up fix shipped
(`b3ce505`). Closes the saga's documentation loop and plans the next
phase.

Changes:
  - docs/research/2026-05-23-a6-p3-issue98-comparison-harness-findings.md
    Appended "Resolution 2026-05-24" section: v3 hypothesis falsified,
    actual mechanism (head-bump cottage GfxObj floor poly from below)
    confirmed, b3ce505 fix shipped, known door regression flagged.
    Memory artifacts cross-referenced.
  - docs/ISSUES.md
    #98 moved to DONE with full resolution writeup + decomp anchors.
    #99 filed: door regression at building thresholds (caused by
    b3ce505's indoor-primary gate). Closes via A6.P4.
    #100 filed: transparent rectangular patches around houses
    (terrain rendering). Bisect found commit 35b37df introduced the
    hiddenTerrainCells mechanism that collapses 24m outdoor cells
    when buildings sit in them; cottage building only fills part of
    its cell so the rest of the 24m cell shows the sky-bleeding gap.
    Three fix-path options documented.
  - docs/superpowers/specs/2026-05-24-phase-a6-p4-retail-shadow-architecture.md
    Full A6.P4 design doc. Three-slice plan: (1) query-side portal
    expansion to close #99 while preserving #98 fix, (2) port retail's
    BuildShadowCellSet at registration time so per-cell semantics match
    `CObjCell::find_cell_list`, (3) remove b3ce505 stopgap entirely.
    Decomp anchors, file-by-file plan, risk inventory, open questions.

Memory entries written separately (out-of-tree at
~/.claude/projects/.../memory/):
  - feedback_retail_per_cell_shadow_list.md
    The architectural lesson: retail uses per-cell shadow_object_list
    with portal-aware registration; our landblock-wide spatial
    registry diverges at indoor/outdoor seams.
  - feedback_apparatus_for_physics_bugs.md
    The apparatus-first pattern that cracked the saga: live capture +
    fixture dump + replay harness. Template for future physics bugs.
    Quote rule: "when a physics bug is resisting and you catch
    yourself about to ship 'fix attempt N+1 with no new evidence,'
    STOP. Build the apparatus first."
  - MEMORY.md index updated with both new entries.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-24 07:23:49 +02:00
..
2026-04-11-foundation-phase-design.md docs: refresh strategic roadmap + Foundation phase design spec 2026-04-11 21:43:33 +02:00
2026-04-12-b3-complete-movement-design.md docs(specs): Phase B.3 Complete — movement and world navigation design 2026-04-12 15:54:12 +02:00
2026-04-12-physics-collision-engine-design.md docs(specs): Phase B.3 — physics collision engine design 2026-04-12 09:42:31 +02:00
2026-04-12-player-movement-design.md docs(specs): Phase B.2 — player movement mode design 2026-04-12 14:05:07 +02:00
2026-04-13-movement-completion-design.md docs: movement completion design spec (B.2/B.3) 2026-04-13 23:01:18 +02:00
2026-05-02-l3-remote-entity-motion-design.md docs(spec): Phase L.3 scope revision — combine L.3.1+L.3.2 2026-05-03 10:03:09 +02:00
2026-05-08-phase-n-worldbuilder-migration-design.md spec(rendering): Phase N WorldBuilder migration design + N.1 scenery 2026-05-08 08:47:23 +02:00
2026-05-08-phase-n1-scenery-via-wb-helpers-design.md spec(rendering): Phase N WorldBuilder migration design + N.1 scenery 2026-05-08 08:47:23 +02:00
2026-05-08-phase-n4-rendering-foundation-design.md spec(N.4): rendering pipeline foundation design 2026-05-08 12:47:49 +02:00
2026-05-08-phase-n5-modern-rendering-design.md phase(N.5): retirement amendment — InstancedMeshRenderer + StaticMeshRenderer + WbFoundationFlag deleted 2026-05-08 22:01:36 +02:00
2026-05-09-phase-a5-two-tier-streaming-design.md docs(A.5 T27): spec + plan amendments for T22.5 + ship 2026-05-10 10:06:26 +02:00
2026-05-09-phase-n5b-terrain-modern-design.md spec(N.5b): design for terrain on the modern rendering path 2026-05-09 08:23:09 +02:00
2026-05-10-issue-53-tier1-cache-design.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-phase-m-network-stack-design.md docs(phase-m): sharpen Phase M into design spec + opcode coverage matrix 2026-05-10 19:22:49 +02:00
2026-05-11-phase-n6-slice1-design.md docs(perf #N6.1): apply final-review fixes — spec, baseline doc, issue #55 2026-05-11 12:51:10 +02:00
2026-05-12-l2g-dynamic-physicsstate-design.md docs(phys L.2g): design spec for dynamic PhysicsState toggling (doors) 2026-05-12 21:00:36 +02:00
2026-05-12-phase-c1.5a-portals-design.md docs(vfx #C.1.5a): ship Phase C.1.5a + file issue #56 for per-part collapse 2026-05-11 16:13:12 +02:00
2026-05-13-l2d-cbuildingobj-collision-design.md docs(phys L.2d): design spec for slice 1 BSP-hit diagnostic + L.2d reframe 2026-05-12 19:01:44 +02:00
2026-05-13-phase-b4b-design.md docs(B.4b): correct file paths — WorldPicker lives in AcDream.Core.Selection 2026-05-13 17:31:49 +02:00
2026-05-13-phase-b4c-design.md docs(B.4c): design spec for door swing animation 2026-05-14 06:26:57 +02:00
2026-05-13-phase-c1.5b-design.md docs(vfx #C.1.5b): design + plan for issue #56 + EnvCell DefaultScript 2026-05-11 23:51:44 +02:00
2026-05-14-phase-b6-design.md docs(B.6): record Slice 1 trace findings — ACE sends mtRun=0.00, no UP echo 2026-05-14 18:45:17 +02:00
2026-05-15-phase-b7-target-indicator-design.md docs(B.7): design spec for Vivid Target Indicator (selection feedback) 2026-05-15 06:46:55 +02:00
2026-05-16-phase-b6-suppress-movetostate-during-inbound-autowalk-design.md feat(retail): Phase B.6 — server-driven auto-walk done right 2026-05-16 16:14:44 +02:00
2026-05-18-retail-chase-camera-design.md docs(camera): design — retail-faithful chase camera with dev-tools toggle 2026-05-18 19:05:35 +02:00
2026-05-19-indoor-cell-rendering-fix-design.md docs(spec): expand probe design with concrete line formats + code sites 2026-05-19 11:07:54 +02:00
2026-05-19-indoor-portal-cell-tracking-design.md docs(spec): Indoor portal-based cell tracking design 2026-05-19 16:32:21 +02:00
2026-05-19-indoor-walkable-plane-bsp-port-design.md docs(spec): indoor walkable-plane BSP port — design 2026-05-19 21:08:49 +02:00
2026-05-19-indoor-walking-phase1-bsp-cluster-design.md docs(spec): Indoor walking Phase 1 — BSP cluster design 2026-05-19 14:07:01 +02:00
2026-05-19-phase2-indoor-cell-rendering-fix-design.md docs(spec): Phase 2 indoor cell rendering fix design 2026-05-19 12:18:04 +02:00
2026-05-20-indoor-bsp-worldorigin-fix-design.md docs(spec): indoor BSP world-origin / world-rotation fix (Bug B) 2026-05-20 07:38:27 +02:00
2026-05-20-indoor-walkable-synthesis-removal-design.md docs(spec): remove per-frame indoor walkable-plane synthesis (Bug A) 2026-05-20 08:32:17 +02:00
2026-05-20-phase-a4-multi-cell-bsp-design.md docs(spec): Phase A4 — multi-cell BSP iteration design 2026-05-20 15:50:03 +02:00
2026-05-21-cylinder-fallback-dedup-design.md fix(physics): skip mesh-AABB-fallback cylinder for landblock stabs 2026-05-20 11:42:13 +02:00
2026-05-21-indoor-walk-miss-probe-design.md docs(physics): spec + plan + findings for ISSUES #83 walk-miss probe spike 2026-05-20 11:00:11 +02:00
2026-05-21-phase-a6-indoor-physics-fidelity-design.md docs(spec): Phase A6 — Indoor physics fidelity (cdb-driven) — design 2026-05-21 17:57:48 +02:00
2026-05-21-phase-o-dat-path-unification-design.md plan(O): Phase O implementation plan + spec layer-placement fix 2026-05-21 14:49:19 +02:00
2026-05-24-phase-a6-p4-retail-shadow-architecture.md docs: A6.P3 #98 resolution + A6.P4 design + #99/#100 filed 2026-05-24 07:23:49 +02:00