docs(runtime): close local movement ownership

Record the exact J5.4 automated, lifecycle/reconnect, and nine-stop movement evidence; advance the Modern Runtime program to J5.5; and synchronize architecture, roadmap, milestones, AGENTS/CLAUDE, rollback, and durable research pointers.

Co-authored-by: Codex <noreply@openai.com>
This commit is contained in:
Erik 2026-07-26 12:53:41 +02:00
parent aa3f4a60f8
commit 0dc3bfdeff
11 changed files with 135 additions and 34 deletions

View file

@ -1,6 +1,6 @@
# acdream — strategic roadmap
**Status:** Living document. Updated 2026-07-26. **M3 landed; M4 is active.** M3's retail casting/UI, R6 locomotion/collision/projectile/teleport/radar rebaseline, deterministic fresh-login/portal world lifecycle, and final two-client portal observer flow are user-gated. All eight slices of the behavior-preserving ownership campaign in [`docs/architecture/code-structure.md`](../architecture/code-structure.md), their automated closeout, and the user's connected visual matrix are complete. Modern Runtime J3 canonical entity/object lifetime and J4 gameplay-state ownership are closed at `89e6b207`; J5.1 canonical selection/combat/target-mode ownership is closed at `b298f99f`, J5.2 interaction transactions at `f5f7b417`, and J5.3 combat/magic intent at `20df9d15`. J5.4 local movement/outbound cadence is active. Issue #225's lifestone/particle alpha comparison remains a separate rendering visual gate.
**Status:** Living document. Updated 2026-07-26. **M3 landed; M4 is active.** M3's retail casting/UI, R6 locomotion/collision/projectile/teleport/radar rebaseline, deterministic fresh-login/portal world lifecycle, and final two-client portal observer flow are user-gated. All eight slices of the behavior-preserving ownership campaign in [`docs/architecture/code-structure.md`](../architecture/code-structure.md), their automated closeout, and the user's connected visual matrix are complete. Modern Runtime J3 canonical entity/object lifetime and J4 gameplay-state ownership are closed at `89e6b207`; J5.1 canonical selection/combat/target-mode ownership is closed at `b298f99f`, J5.2 interaction transactions at `f5f7b417`, J5.3 combat/magic intent at `20df9d15`, and J5.4 local movement/outbound cadence at `aa3f4a60`. J5.5 per-session physics and remote simulation is active. Issue #225's lifestone/particle alpha comparison remains a separate rendering visual gate.
**Purpose:** One source of truth for where the project is and where it's going. Every observed defect or missing feature has a named phase that owns it; when something looks wrong in-game, look here to find the phase that'll address it. Implementation details live in per-phase specs under `docs/superpowers/specs/`, not in this file.
---
@ -1754,8 +1754,12 @@ port in any phase — no separate listing here.
> and spell-cast intent children; App bars/input/content/transport and direct
> commands borrow the same state. Its 223 Runtime tests, 3,754 App tests / 3
> skips, 8,566-test / 5-skip complete Release suite, and exact-binary
> seven-checkpoint lifecycle/reconnect gate pass. J5.4 local movement/outbound
> cadence is active.
> seven-checkpoint lifecycle/reconnect gate pass. J5.4 is complete at
> `aa3f4a60`: Runtime owns one exact local movement/controller/cadence graph,
> and App input plus direct commands borrow it. Its 303 Runtime tests, 3,716
> App tests / 3 skips, 8,575-test / 5-skip complete Release suite,
> exact-binary lifecycle/reconnect gate, and canonical nine-stop movement
> route pass. J5.5 per-session physics and remote simulation is active.
> The historical exact cutover
> rollback remains
> `git revert ef1d263337997bb030eadb7b8e71d73dc659907a`. Slice H is complete:

View file

@ -228,8 +228,13 @@ residency is `0/0/0` at every stable checkpoint and teardown converges. Slice I
intent children; graphical bars/input and direct commands borrow the same
state and operations. Its 223 Runtime tests, 3,754 App tests / 3 skips, 8,566
full Release tests / 5 skips, and exact-binary seven-checkpoint
lifecycle/reconnect route pass. J5.4 local movement/outbound-cadence
ownership is active under
lifecycle/reconnect route pass. J5.4 completed at `aa3f4a60`: Runtime owns
the exact local movement controller, construction seam, autorun latch, typed
view, and outbound MTS/jump/AP cadence; App input and direct commands borrow
it. Its 303 Runtime tests, 3,716 App tests / 3 skips, 8,575 full Release
tests / 5 skips, exact-binary lifecycle/reconnect route, and canonical
nine-stop movement route pass. J5.5 per-session physics and remote
simulation is active under
[`2026-07-25-modern-runtime-slice-j.md`](2026-07-25-modern-runtime-slice-j.md).
Slice-I closeout evidence is
[`../research/2026-07-25-slice-i7-closeout.md`](../research/2026-07-25-slice-i7-closeout.md).
@ -257,6 +262,8 @@ Slice-J5.2 closeout evidence is
[`../research/2026-07-26-slice-j5-2-interaction-transactions.md`](../research/2026-07-26-slice-j5-2-interaction-transactions.md).
Slice-J5.3 closeout evidence is
[`../research/2026-07-26-slice-j5-3-combat-magic-intent.md`](../research/2026-07-26-slice-j5-3-combat-magic-intent.md).
Slice-J5.4 closeout evidence is
[`../research/2026-07-26-slice-j5-4-local-movement-ownership.md`](../research/2026-07-26-slice-j5-4-local-movement-ownership.md).
The historical exact G4 visual rollback remains
`git revert ef1d263337997bb030eadb7b8e71d73dc659907a`.

View file

@ -2,7 +2,7 @@
**Date:** 2026-07-24
**Status:** Slices AI, J0J4, and J5.1J5.3 are complete. Flat-authoritative collision, zero-
**Status:** Slices AI, J0J4, and J5.1J5.4 are complete. Flat-authoritative collision, zero-
allocation resolve scratch, parsed-graph removal, connected correctness/
lifetime acceptance, and Slice-I closeout landed 2026-07-25. Slices FL were
explicitly approved 2026-07-24. Slice J0J1 established the enforced Runtime
@ -16,9 +16,10 @@ ownership into Runtime at `011efbea`; J4.3 moved the coupled magic/player-sheet
owner into Runtime at `d02a12ce`; J4.4 moved character settings/projections
and the shared typed state-command seam at `dcb61efb`; J4.5 closed canonical
gameplay-state ownership at `89e6b207`. J5 movement, physics, interaction,
and combat ownership is active at J5.4 after canonical action state
and combat ownership is active at J5.5 after canonical action state
(`b298f99f`), interaction transactions (`f5f7b417`), and combat/magic intent
(`20df9d15`) moved to Runtime.
(`20df9d15`), and local movement/outbound cadence (`aa3f4a60`) moved to
Runtime.
**Scope:** Reconcile and sequence the existing Modern Pipeline (`MP`) and
Linux/headless (`LH`) tracks using the 2026-07-24 connected performance audit.
@ -1276,7 +1277,8 @@ single Runtime shortcut/spellbook/inventory owners, graphical/no-window
command parity, failure-safe combined ledger, 8,544-test Release suite,
exact-binary lifecycle/reconnect gate, and canonical nine-stop route pass.
J5 movement/physics/interaction/combat ownership is the current execution
point. J5.1J5.3 are complete; J5.4 local movement/outbound cadence is active.
point. J5.1J5.4 are complete; J5.5 per-session physics and remote simulation
is active.
Evidence:
[`../research/2026-07-25-slice-g5-production-profile.md`](../research/2026-07-25-slice-g5-production-profile.md)
and

View file

@ -301,12 +301,19 @@ exact attack, target, combat-mode, and spell-cast intent children while App
bars, input adapters, content queries, and transport borrow them. Its 223
Runtime tests, 3,754 App tests / 3 skips, 8,566 complete Release tests / 5
skips, and exact-binary seven-checkpoint lifecycle/reconnect gate pass. J5.4
local movement/outbound cadence is next. Evidence:
completed at `aa3f4a60`: Runtime owns the exact local movement controller,
construction seam, autorun latch, typed view, and outbound MTS/jump/AP cadence;
App input and direct commands borrow the same owner. Its 303 Runtime tests,
3,716 App tests / 3 skips, 8,575 complete Release tests / 5 skips,
exact-binary lifecycle/reconnect gate, and canonical nine-stop movement route
pass. J5.5 per-session physics and remote simulation is next. Evidence:
[`../research/2026-07-26-slice-j5-1-canonical-action-state.md`](../research/2026-07-26-slice-j5-1-canonical-action-state.md)
and
[`../research/2026-07-26-slice-j5-2-interaction-transactions.md`](../research/2026-07-26-slice-j5-2-interaction-transactions.md)
and
[`../research/2026-07-26-slice-j5-3-combat-magic-intent.md`](../research/2026-07-26-slice-j5-3-combat-magic-intent.md).
[`../research/2026-07-26-slice-j5-3-combat-magic-intent.md`](../research/2026-07-26-slice-j5-3-combat-magic-intent.md)
and
[`../research/2026-07-26-slice-j5-4-local-movement-ownership.md`](../research/2026-07-26-slice-j5-4-local-movement-ownership.md).
- Move presentation-free movement interpretation, authoritative/predicted
physics state, selection identity, approach/use transactions, combat intent,

View file

@ -1,6 +1,6 @@
# Modern runtime Slice J5 — movement, physics, interaction, and combat
**Status:** ACTIVE — J5.1J5.3 complete; J5.4 next
**Status:** ACTIVE — J5.1J5.4 complete; J5.5 next
**Parent:** `2026-07-25-modern-runtime-slice-j.md`, J5
**Production base:** `2c67a2c3`
**Authorization:** the user approved Slices FL, including the Slice J
@ -88,8 +88,8 @@ commands to Runtime. The camera may not write the player heading directly.
| J5.1 canonical action state | complete | `b298f99f913249d299796e6a71f7a9b6b283ac1a`; one Runtime selection/combat/target-mode owner; 182 Runtime tests, 3,779 App tests / 3 skips, 8,550 complete Release tests / 5 skips, exact-binary connected lifecycle/reconnect pass |
| J5.2 interaction transactions | complete | `f5f7b4177f449ebcad9724bfea263ef73ab60255`; one Runtime transaction owner; 197 Runtime tests, 3,775 App tests / 3 skips, 8,561 complete Release tests / 5 skips, exact-binary connected lifecycle/reconnect pass |
| J5.3 combat and magic intent | complete | `20df9d155db50706a42420d60a9b15861cf4bfe7`; exact Runtime attack/mode/target/cast owners; 223 Runtime tests, 3,754 App tests / 3 skips, 8,566 complete Release tests / 5 skips, exact-binary connected lifecycle/reconnect pass |
| J5.4 local movement and outbound cadence | active | controller, body, movement managers, MTS/AP/jump cadence |
| J5.5 per-session physics and remote simulation | pending | engine/scratch/shadows/remote canonical body |
| J5.4 local movement and outbound cadence | complete | `aa3f4a60f87f2cbebc3d8ecd5e33d779b7fb13c1`; one Runtime movement/controller/cadence owner; 303 Runtime tests, 3,716 App tests / 3 skips, 8,575 complete Release tests / 5 skips, exact-binary lifecycle/reconnect and nine-stop movement gates pass |
| J5.5 per-session physics and remote simulation | active | engine/scratch/shadows/remote canonical body |
| J5.6 projectile runtime | pending | canonical component/simulation plus App projection acknowledgements |
| J5.7 combined cleanup and closeout | pending | no mirrors, no-window parity, teardown, connected and visual gates |
@ -297,6 +297,27 @@ Gate:
- target-facing and movement-aborts-repeat ordering;
- zero added per-frame allocations after warmup.
**Completed 2026-07-26 at
`aa3f4a60f87f2cbebc3d8ecd5e33d779b7fb13c1`.**
`RuntimeLocalPlayerMovementState` constructs and owns the exact
`PlayerMovementController`, construction-time motion seam, autorun latch,
typed movement view, and terminal ledger. The movement controller and
`LocalPlayerOutboundController` now live in `AcDream.Runtime.Gameplay`.
Graphical input samples physical state and borrows that owner; direct Runtime
commands mutate the same state without an App/input detour. Character
run/jump skill projections enter through typed construction options rather
than process environment reads. Runtime tests pass 303/303, App tests pass
3,716/3 skips, and the complete Release suite passes 8,575/5 skips. The
exact-binary connected lifecycle/reconnect report
`logs/connected-world-gate-20260726-123425/report.json` passes both sessions,
7/7 readiness checkpoints, graceful code-zero exits, and zero failures. The
canonical route
`logs/connected-r6-soak-20260726-124049.report.json` passes all nine
destinations; forward, jump, combat, and authoritative movement-truth
exercises pass at Caul, Holtburg, and the Caul return before graceful
shutdown. Evidence:
[`../research/2026-07-26-slice-j5-4-local-movement-ownership.md`](../research/2026-07-26-slice-j5-4-local-movement-ownership.md).
## J5.5 — per-session physics and remote simulation
Add a Runtime physics owner that constructs one `PhysicsEngine` per runtime
@ -429,6 +450,12 @@ J5.3 rollback:
git revert 20df9d155db50706a42420d60a9b15861cf4bfe7
```
J5.4 rollback:
```text
git revert aa3f4a60f87f2cbebc3d8ecd5e33d779b7fb13c1
```
## Acceptance
J5 is complete only when: