docs: R5 arc close-out — V5 facade shipped, arc DONE; M1.5 critical path next
- r5-wiring-handoff.md: arc close-out banner (V1-V5 trail, relay/anchor inventory, carried follow-ons #167 / R6 TS-42 / TS-43) - roadmap: R5 ledger entry completed through V5 (incl. the #170/#171/V4 gate history that had only lived in memory/handoffs) - milestones: the interleaved parity-track note — R5 arc DONE 2026-07-05 - CLAUDE.md Current state: R5 arc DONE; next work = M1.5 critical path (#137 dungeon collision, #138 teleport-OUT, A7 dungeon lighting) - pickup prompt marked DONE Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
This commit is contained in:
parent
dccd700991
commit
aa734f3409
5 changed files with 75 additions and 18 deletions
17
CLAUDE.md
17
CLAUDE.md
|
|
@ -109,14 +109,15 @@ movement queries.
|
||||||
## Current state
|
## Current state
|
||||||
|
|
||||||
**Currently working toward: M1.5 — Indoor world feels right** (building/cellar demo
|
**Currently working toward: M1.5 — Indoor world feels right** (building/cellar demo
|
||||||
DONE + gated; REMAINING: **A7 dungeon lighting** #79/#93, **#137 dungeon collision**,
|
DONE + gated; REMAINING = the critical path: **#137 dungeon collision**,
|
||||||
**#138 teleport-OUT**). Two **user-report-driven parity tracks** interleave with it at
|
**#138 teleport-OUT**, **A7 dungeon lighting** #79/#93). One **user-report-driven
|
||||||
the issue level (reconciled 2026-07-04 — they are NOT milestones; see the M1.5 note in
|
parity track** still interleaves at the issue level (NOT a milestone; see the M1.5
|
||||||
the milestones doc): **D.2b retail UI** (next: container-switching —
|
note in the milestones doc): **D.2b retail UI** (next: container-switching —
|
||||||
`claude-memory/project_d2b_retail_ui.md`) and the **R5 movement-manager arc**
|
`claude-memory/project_d2b_retail_ui.md`). The **R5 movement-manager arc is DONE**
|
||||||
(#170/#171 + R5-V3 CLOSED + gated 2026-07-04; next: **R5-V4** capstone —
|
(2026-07-05, V5 facade shipped; close-out banner in
|
||||||
`docs/research/2026-07-03-r5-managers/r5-wiring-handoff.md`). M2 (CombatMath)
|
`docs/research/2026-07-03-r5-managers/r5-wiring-handoff.md`; carried: #167, R6/TS-42).
|
||||||
deferred. Keep this paragraph ≤6 lines + pointers — detail in the docs below, NOT here.
|
M2 (CombatMath) deferred. Keep this paragraph ≤6 lines + pointers — detail in the docs
|
||||||
|
below, NOT here.
|
||||||
|
|
||||||
For canonical state, read in this order:
|
For canonical state, read in this order:
|
||||||
- [`docs/plans/2026-05-12-milestones.md`](docs/plans/2026-05-12-milestones.md) — milestone targets + freeze list per milestone
|
- [`docs/plans/2026-05-12-milestones.md`](docs/plans/2026-05-12-milestones.md) — milestone targets + freeze list per milestone
|
||||||
|
|
|
||||||
|
|
@ -734,8 +734,24 @@ diagnostic scaffolding, not yet the final collision system.
|
||||||
streaming hole (`9b06a9b8`) — both verified live. Filed **#170** (remote
|
streaming hole (`9b06a9b8`) — both verified live. Filed **#170** (remote
|
||||||
creature chase+attack animation divergence vs retail — glide/over-frequency/
|
creature chase+attack animation divergence vs retail — glide/over-frequency/
|
||||||
uniform attacks; decomposes into #159 + pending_motions loop + dead-reckon
|
uniform attacks; decomposes into #159 + pending_motions loop + dead-reckon
|
||||||
glide). NEXT: R5-V3/V4 (sticky/TS-39, facade/#164 — `r5-wiring-handoff.md`)
|
glide). **#170 CLOSED + gated 2026-07-04** (`427332ac` re-dispatch flood +
|
||||||
OR #170. Entry point: `docs/research/2026-07-03-session-handoff.md`.
|
`1051fc83` armed-moveto-always-ticks). **R5-V3 SHIPPED + gated 2026-07-04**
|
||||||
|
(#171 sticky melee, three slices `5bd2b8bc`/`7a823176`/`69966950` — TS-39
|
||||||
|
retired, TS-43/TS-44/AP-82 filed). **R5-V4 behavioral items SHIPPED + gated
|
||||||
|
2026-07-04 `f423884b`** (head style-on-change all mt types, #164 autonomy
|
||||||
|
bit, mt-0 wire flags consumed). **R5-V5 SHIPPED 2026-07-05 — the R5 arc is
|
||||||
|
DONE**: the `MovementManager` facade (retail acclient.h `/* 3463 */`,
|
||||||
|
methods 0x00524000-0x00524790) now owns each entity's interp+moveto pair —
|
||||||
|
ONE per entity (`RemoteMotion.Movement`, `PlayerMovementController.Movement`,
|
||||||
|
chase-harness mirror); the three wiring sites construct through
|
||||||
|
`MoveToFactory` + `MakeMoveToManager` (0x00524000) and the relay shapes
|
||||||
|
(`UseTime` 0x005242f0, `HitGround` 0x00524300, `HandleExitWorld` 0x00524350,
|
||||||
|
`CancelMoveTo` 0x005241b0, `HandleUpdateTarget` 0x00524790,
|
||||||
|
`PerformMovement` 0x005240d0) replace the loose-pair call sites. Structural,
|
||||||
|
zero behavior change; 15 facade conformance tests; suite 4052 green with the
|
||||||
|
183-case/funnel/moveto/chase/sticky suites unmodified. Arc close-out:
|
||||||
|
`docs/research/2026-07-03-r5-managers/r5-wiring-handoff.md`. Open follow-ons
|
||||||
|
carried: #167 (ConstraintManager arming), TS-42 per-tick order (R6).
|
||||||
- **L.2g — Inbound motion interpretation (remote-entity CMotionInterp funnel).**
|
- **L.2g — Inbound motion interpretation (remote-entity CMotionInterp funnel).**
|
||||||
ACTIVE 2026-07-02. Port retail's inbound motion pipeline verbatim for ALL
|
ACTIVE 2026-07-02. Port retail's inbound motion pipeline verbatim for ALL
|
||||||
remote entities (players, NPCs, monsters — one funnel, user-approved):
|
remote entities (players, NPCs, monsters — one funnel, user-approved):
|
||||||
|
|
|
||||||
|
|
@ -232,11 +232,13 @@ side-by-side-vs-retail sessions, both issue-level per the operating rules
|
||||||
to M1.5 rather than becoming milestones of their own: (1) **D.2b retail
|
to M1.5 rather than becoming milestones of their own: (1) **D.2b retail
|
||||||
UI** — inventory window / paperdoll / item interaction shipped and gated;
|
UI** — inventory window / paperdoll / item interaction shipped and gated;
|
||||||
next container-switching (`claude-memory/project_d2b_retail_ui.md`);
|
next container-switching (`claude-memory/project_d2b_retail_ui.md`);
|
||||||
(2) **the R5 movement-manager arc** — the retail MovementManager family
|
(2) **the R5 movement-manager arc — DONE 2026-07-05** — the retail
|
||||||
port (TargetManager voyeur system V2, StickyManager/PositionManager V3)
|
MovementManager family port (TargetManager voyeur system V2,
|
||||||
that closed the #170 chase-slide and #171 pack-melee gates (2026-07-04);
|
StickyManager/PositionManager V3, V4 behavioral items, V5 MovementManager
|
||||||
one capstone slice (R5-V4) remains
|
facade — every entity now holds ONE `MovementManager` owning its
|
||||||
(`docs/research/2026-07-03-r5-managers/r5-wiring-handoff.md`). Rationale:
|
interp+moveto pair) that closed the #170 chase-slide and #171 pack-melee
|
||||||
|
gates (`docs/research/2026-07-03-r5-managers/r5-wiring-handoff.md` has the
|
||||||
|
arc close-out). Rationale:
|
||||||
rule 1's "one active milestone" governs where NEW scope goes — these
|
rule 1's "one active milestone" governs where NEW scope goes — these
|
||||||
tracks fix observed retail-parity defects in already-shipped systems,
|
tracks fix observed retail-parity defects in already-shipped systems,
|
||||||
which the operating rules have always allowed; declaring them milestones
|
which the operating rules have always allowed; declaring them milestones
|
||||||
|
|
|
||||||
|
|
@ -1,4 +1,38 @@
|
||||||
# R5 wiring handoff — V1 landed, V2/V3/V4 are the visual-gated wiring
|
# R5 wiring handoff — ARC DONE 2026-07-05 (V1-V5 all shipped)
|
||||||
|
|
||||||
|
> **ARC CLOSE-OUT 2026-07-05.** All five slices landed: V1 (Core classes,
|
||||||
|
> `3d89446d`), V2 (TargetManager voyeur wiring, AP-79 retired, `fffe90b3`),
|
||||||
|
> V3 (sticky melee #171, three slices, TS-39 retired, gate PASSED), V4
|
||||||
|
> behavioral items (head stance dispatch + #164 + mt-0 flags, `f423884b`,
|
||||||
|
> gate PASSED), **V5 (MovementManager facade — structural, zero behavior
|
||||||
|
> change)**: `src/AcDream.Core/Physics/Motion/MovementManager.cs` (retail
|
||||||
|
> acclient.h `/* 3463 */`; MakeMoveToManager 0x00524000, PerformMovement
|
||||||
|
> 0x005240d0, UseTime 0x005242f0, HitGround 0x00524300, HandleExitWorld
|
||||||
|
> 0x00524350, CancelMoveTo 0x005241b0, HandleUpdateTarget 0x00524790,
|
||||||
|
> IsMovingTo 0x00524260) owns each entity's interp+moveto pair. The three
|
||||||
|
> wiring sites (`EnsureRemoteMotionBindings`, `EnterPlayerModeNow`, the
|
||||||
|
> chase harness) construct through `MoveToFactory` + `MakeMoveToManager()`
|
||||||
|
> — the factory closure is the acdream stand-in for retail's
|
||||||
|
> physics_obj/weenie_obj backpointers; `RemoteMotion.Motion/.MoveTo` and
|
||||||
|
> `PlayerMovementController.MoveTo` are now child VIEWS of the facade
|
||||||
|
> (`RemoteMotion.Movement` / `PlayerMovementController.Movement`), so the
|
||||||
|
> comment-dense call sites read unchanged. Relay call sites repointed:
|
||||||
|
> both landing HitGround pairs + the player landing pair, despawn
|
||||||
|
> HandleExitWorld, TickRemoteMoveTo + the player Update UseTime,
|
||||||
|
> RouteServerMoveTo (now takes the facade; routes through the retail
|
||||||
|
> PerformMovement dispatch), InstallSpeculativeTurnToTarget, both host
|
||||||
|
> HandleUpdateTarget/InterruptCurrentMovement closures, TS-36 interrupt
|
||||||
|
> chains. NOT absorbed (per slice spec): unpack_movement stays App
|
||||||
|
> (RouteServerMoveTo + the UM heads), TS-42 per-tick order untouched (R6),
|
||||||
|
> #170/#171 gate-passed machinery untouched. 15 facade conformance tests
|
||||||
|
> (`MovementManagerTests.cs`); suite 4052 green, protected suites
|
||||||
|
> unmodified. Register: TS-41/TS-42 wording freshened, AD-36 retire note
|
||||||
|
> corrected (facade half closed; no new rows). **Open follow-ons: #167
|
||||||
|
> ConstraintManager arming (TS-35), R6 per-tick order (TS-42), TS-43
|
||||||
|
> remote teleport hook.** Next work per the milestones doc: M1.5 critical
|
||||||
|
> path — #137 dungeon collision, #138 teleport-OUT, A7 dungeon lighting.
|
||||||
|
|
||||||
|
(Original handoff below, kept for the trail.)
|
||||||
|
|
||||||
Successor to `2026-07-03-r5-entry-handoff.md`. **R5-V1 shipped** (`3d89446d`):
|
Successor to `2026-07-03-r5-entry-handoff.md`. **R5-V1 shipped** (`3d89446d`):
|
||||||
the retail movement-manager family is ported to Core as faithful, fully-tested,
|
the retail movement-manager family is ported to Core as faithful, fully-tested,
|
||||||
|
|
@ -121,8 +155,8 @@ or a moving-platform stick) HOLDS the target instead of stopping-and-drifting.
|
||||||
> stance-on-arm harness scenario + the autonomy funnel test; suite 4041
|
> stance-on-arm harness scenario + the autonomy funnel test; suite 4041
|
||||||
> green. **The MovementManager facade DEFERRED to its own slice** (the
|
> green. **The MovementManager facade DEFERRED to its own slice** (the
|
||||||
> handoff's own "optional if the arc runs long" clause — this arc ran two
|
> handoff's own "optional if the arc runs long" clause — this arc ran two
|
||||||
> full gate cycles); it remains the structural capstone for a fresh
|
> full gate cycles). **→ SHIPPED 2026-07-05 as R5-V5; see the arc
|
||||||
> session, unblocked, spec below.
|
> close-out banner at the top of this doc.**
|
||||||
- Collapse per-entity `Motion`+`MoveTo` into a `MovementManager` owner
|
- Collapse per-entity `Motion`+`MoveTo` into a `MovementManager` owner
|
||||||
(structural; keep 183-case/funnel/moveto green UNMODIFIED). Optional if the
|
(structural; keep 183-case/funnel/moveto green UNMODIFIED). Optional if the
|
||||||
arc runs long — the retirements above don't need it.
|
arc runs long — the retirements above don't need it.
|
||||||
|
|
|
||||||
|
|
@ -1,5 +1,9 @@
|
||||||
# Pickup prompt — R5-V5: MovementManager facade (paste into a fresh session)
|
# Pickup prompt — R5-V5: MovementManager facade (paste into a fresh session)
|
||||||
|
|
||||||
|
> **DONE 2026-07-05.** Implemented as specified; suite 4052 green with the
|
||||||
|
> protected suites unmodified. Arc close-out lives in
|
||||||
|
> `2026-07-03-r5-managers/r5-wiring-handoff.md` (top banner).
|
||||||
|
|
||||||
Read `docs/research/2026-07-03-r5-managers/r5-wiring-handoff.md` first (the
|
Read `docs/research/2026-07-03-r5-managers/r5-wiring-handoff.md` first (the
|
||||||
§V4 status note + the facade paragraph are the SSOT), then
|
§V4 status note + the facade paragraph are the SSOT), then
|
||||||
`docs/research/2026-07-03-r5-managers/r5-movementmanager-decomp.md` (the
|
`docs/research/2026-07-03-r5-managers/r5-movementmanager-decomp.md` (the
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue