fix(world): restore portal and distant use lifecycles

This commit is contained in:
Erik 2026-07-25 09:59:25 +02:00
parent c730632075
commit 1a14812c44
18 changed files with 401 additions and 196 deletions

View file

@ -89,6 +89,30 @@ Copy this block when adding a new issue:
---
## #245 — Distant Use stayed busy without turning or walking
**Status:** DONE — 2026-07-25; connected gate passed
**Severity:** HIGH
**Filed:** 2026-07-25
**Component:** interaction transport / local motion completion ownership
**Root cause / resolution:** Retail sends Use before any approach and ACE
authoritatively returns the required MoveTo chain. After restoring that order,
the live trace showed ACE's MoveTo target resolved correctly but remained
behind one orphan login Ready node. `LiveEntityAnimationPresenter` had guarded
`MotionDoneTarget` installation by the temporary spatial projection, even
though the exact logical live-record animation runtime still owned the
PartArray. The PartArray consumed Ready without popping the
`MotionInterpreter`. Completion is now bound to the logical animation owner,
and player-controller construction drains any pre-controller PartArray queue
before publishing its interpreter. Focused tests cover withdrawn spatial
projection, replacement owners, immediate one-shot Use, and busy transfer to
UseDone. The connected distant-NPC gate turns, walks, uses, and releases busy.
**Research:** `docs/research/2026-07-23-retail-use-busy-ownership-pseudocode.md`
---
## #234 — Monster assessment held busy and examination used the shared panel
**Status:** DONE — 2026-07-23; corrected creature presentation visual gate pending