diff --git a/docs/research/2026-05-21-collision-fixes-shipped-handoff.md b/docs/research/2026-05-21-collision-fixes-shipped-handoff.md index 95ba5cb..f79232c 100644 --- a/docs/research/2026-05-21-collision-fixes-shipped-handoff.md +++ b/docs/research/2026-05-21-collision-fixes-shipped-handoff.md @@ -1,8 +1,10 @@ # Collision fixes — session 2026-05-21 shipped handoff -**Branch:** `claude/lucid-goldberg-1ba520` -**Worktree:** `C:\Users\erikn\source\repos\acdream\.claude\worktrees\lucid-goldberg-1ba520` -**Commits ahead of main:** 8 (probe spike + 4 fixes + docs) +**Status:** All 9 commits merged to **`main`** via fast-forward (HEAD `56d2b5e`). +Local main is ahead of `origin/main` (`7034be9`); not yet pushed. +The original session worktree (`claude/lucid-goldberg-1ba520`) is still +on disk but its branch is now identical to main and can be removed. +**Next session should branch from main into a fresh worktree.** ## TL;DR @@ -213,7 +215,9 @@ These are M7 polish, separate phase. Not blocking M2 ("kill a drudge"). ## How to start a fresh session -Copy the block below into a new Claude Code session in the acdream worktree: +Open a new Claude Code session **in the main acdream worktree** +(`C:\Users\erikn\source\repos\acdream`, branch `main` at SHA `56d2b5e` +or later). Then paste the block below: --- @@ -225,11 +229,19 @@ Pick up the acdream collision-fix work from the 2026-05-21 session. + a probe spike) and what's left (Phase A4 multi-cell iteration is the next major user-visible win). -2. Current branch state: claude/lucid-goldberg-1ba520 is 8 commits - ahead of main. All 4 fixes have visual verification + no regression - in the 1129-test baseline. Ready to merge or build A4 on top. +2. All 9 commits from the previous session are merged into main + (HEAD 56d2b5e). Build green, no regressions in the 1129-test + baseline, four user-visible visual improvements verified live. + Local main is ahead of origin/main (origin at 7034be9, an older + commit); push only if explicitly desired. -3. The next phase to design + ship is **A4 (multi-cell BSP iteration)**. +3. **Set up isolation FIRST.** Use the superpowers:using-git-worktrees + skill to create a fresh worktree branched from main for the A4 work. + Do NOT work directly on main in the parent worktree. The previous + session's worktree (claude/lucid-goldberg-1ba520) can be removed — + its branch is identical to main now. + +4. The next phase to design + ship is **A4 (multi-cell BSP iteration)**. Sketch in §"Phase A4" of the handoff. Reads retail's CTransition::check_other_cells (acclient_2013_pseudo_c.txt:272717-272798). Wires the existing CellTransit helpers (FindCellList, @@ -238,7 +250,7 @@ Pick up the acdream collision-fix work from the 2026-05-21 session. cells the sphere overlaps, not just the one cell the player's center is in. -4. CLAUDE.md rules apply: +5. CLAUDE.md rules apply: - No workarounds. Retail-faithful. - Probe-first, design-second. Already have [indoor-bsp] + [cell-transit] + [cell-cache] probes available. @@ -249,12 +261,12 @@ Pick up the acdream collision-fix work from the 2026-05-21 session. should block when the player is "in" 0xA9B40164 but their sphere extends into 0xA9B40157. -5. M2 ("kill a drudge") is the active milestone. Indoor walking +6. M2 ("kill a drudge") is the active milestone. Indoor walking robustness is on the M2 critical path because dungeons have drudges. A4 is the last big collision fix needed for M2's "walkable indoor space" demo target. -6. Launch command (same as this session): +7. Launch command (same as last session): $env:ACDREAM_DAT_DIR = "$env:USERPROFILE\Documents\Asheron's Call" $env:ACDREAM_LIVE = "1" $env:ACDREAM_TEST_HOST = "127.0.0.1" @@ -269,7 +281,7 @@ Pick up the acdream collision-fix work from the 2026-05-21 session. dotnet run --project src\AcDream.App\AcDream.App.csproj --no-build -c Debug 2>&1 | Tee-Object -FilePath "launch-a4.log" - DO NOT set ACDREAM_PROBE_RESOLVE — it lagged the client this + DO NOT set ACDREAM_PROBE_RESOLVE — it lagged the client last session (400k+ log lines at 30 Hz). State the milestone + chosen phase in your first action.