docs: plan progress — Tasks 1+3 done (outdoor node + outdoor-root flood validated)

Foundation shipped + validated: the flood roots at the outdoor node and reaches
buildings with ZERO production changes (the design's central risk is resolved).
Next = Task 2 + Phase 3 cutover together, inline (contextual GameWindow surgery
ending at the visual gate).

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This commit is contained in:
Erik 2026-06-07 18:26:09 +02:00
parent c5b4f77fe4
commit 1e9485532f

View file

@ -10,6 +10,25 @@
**Spec:** [docs/superpowers/specs/2026-06-07-render-unification-outdoor-as-cell-design.md](../specs/2026-06-07-render-unification-outdoor-as-cell-design.md)
## Progress (2026-06-07)
- **Task 1 — `OutdoorCellNode.Build` — DONE** (`2a2cc97`). 2 unit tests; App.Tests 212/212.
- **Task 3 — outdoor-root flood — DONE** (`c5b4f77`, done before Task 2 to de-risk the
core hypothesis). **KEY RESULT: the flood roots at the outdoor node and reaches
buildings with ZERO production changes** — `PortalVisibilityBuilder.Build` and
`OutdoorCellNode.Build` are correct as-is; cycle termination holds. App.Tests 214/214.
(The plan's Task 3 fixture sketch had `InsideSide=0`; the shipped test uses the correct
`InsideSide=1` — building interior at Y>5 is the negative half-space. `OutdoorCellNode`
flips it so the outdoor camera passes the side test.)
- **NEXT: Task 2 + Phase 3 together, INLINE** (not subagent — deeply-contextual GameWindow
render-loop surgery, ends at the visual gate; CLAUDE.md warns against subagent
integration here). Task 2 (build the node each frame) shares the render-loop region with
the Phase 3 cutover, so they're one chunk: extract `GatherNearbyBuildingCells`, resolve
`viewerRoot` to the node outdoors, repoint exit portals to the node in `Build`, unified
draw path, then (after the user's visual gate) delete `BuildFromExterior` / `DrawPortal` /
`OutsideView` / `DrawLandscapeThroughOutsideView`. Do this with fresh context.
- Tree clean; HEAD `c5b4f77`; baselines App 214 / Core 1331-4-1.
**Baselines that must hold:** build 0 errors; App.Tests 210 pass; Core.Tests 1331 pass / 4 fail (pre-existing) / 1 skip. Run the client per CLAUDE.md "Running the client"; `+Acdream` spawns at the Holtburg/Arcanum cottage. Launch logs are UTF-16. Use `ACDREAM_PROBE_FLAP` only (NOT `ACDREAM_PROBE_SHELL`).
---