docs: M1.5 "Indoor world feels right" LANDED 2026-07-10 — advance to M2

User-gated the full dungeon round-trip (enter via portal -> navigate rooms ->
exit to the outdoor world), completing the #138 acceptance. Both M1.5 demo
halves are now confirmed: building/cellar (prior sessions) + full dungeon
round-trip (2026-07-10). Milestone-crossing artifacts per the milestones-doc
discipline:

- Pinned M1.5 landing writeup + flipped header to  LANDED; caveats explicit
  (#145-residual far-town teleport-OUT + #116 slide-response carried as
  post-M1.5 follow-ups, NOT blockers).
- Freeze list applied: all M1.5 phases (indoor render Option A, A6/A6.P4
  physics, A7 lighting, full Phase G.3 dungeon support) now frozen per rule 2.
- M2 "Kill a drudge" flipped to ACTIVE; first ports = CombatMath.ComputeDamage
  (F.3) + inventory panel (F.2) + combat anim (L.1c).
- CLAUDE.md "currently working toward" advanced to M2.
- #138 closed (user gate).

No demo video (per the user's standing preference).

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
Erik 2026-07-10 09:58:48 +02:00
parent 113569b482
commit 9a772d2b2a
3 changed files with 56 additions and 32 deletions

View file

@ -2061,7 +2061,9 @@ See divergence register **AP-59**.
## #138 — Teleport OUT of a dungeon loads the outdoor world incompletely + position desync
**Status:** ✅ ESSENTIALLY RESOLVED — position-desync FIXED via #145; server-object re-hydrate
**Status:** ✅ DONE / CLOSED 2026-07-10 — full dungeon round-trip (enter → navigate → exit)
user-gated; this closed #138 and landed M1.5. (Move to Recently closed on next tidy.) Prior
resolution below: position-desync FIXED via #145; server-object re-hydrate
SHIPPED (`LandblockEntityRehydrator`, AP-48); avatar-vanish (symptom B) ACTUAL root found +
FIXED + user-confirmed (`afd5f2a`, 2026-06-24 — skip the per-frame `RelocateEntity` while
`PortalSpace`). Remaining collision residuals split out to **#152** (Holtburg/building portal-in
@ -2119,7 +2121,7 @@ Both are the **entity-lifecycle/render path across a teleport**, NOT the streami
**Acceptance:** portal out of the 0x0007 dungeon → full outdoor world streams (trees/scenery present), **server objects (doors/NPCs/portals) render**, **own avatar renders across repeated round-trips**, collision works, position tracks (no avatar-vs-camera desync).
**2026-07-10 gate progress:** the ENTER + NAVIGATE half re-confirmed working by the user (retail-UI session — dungeon streams, renders, collides, navigable, doors work). The EXIT half of the round-trip gate — portal OUT to the outdoor world, and specifically a FAR-town exit (where the `#145-residual` far-town arrival cascade could surface) — was NOT exercised this session. #138 stays OPEN pending that exit gate; M1.5 does not land until it passes.
**2026-07-10 gate — PASSED, #138 CLOSED:** the user confirmed the full dungeon round-trip end-to-end — ENTER + NAVIGATE (dungeon streams, renders, collides, navigable, doors work) AND the EXIT (portal OUT to the outdoor world, world streams, collision holds, position tracks). This completes the #138 acceptance and lands M1.5. **Separate follow-up still open:** `#145-residual` (the far-town teleport-OUT arrival cascade) is a narrow far-teleport streaming edge case tracked on its own; it is NOT a #138 or M1.5 blocker and stays open for capture-harness-first work if it recurs.
---