docs(runtime): close J1 contract gate

Record the exact-binary connected lifecycle/reconnect acceptance, synchronized active pointers, rollback, and durable evidence before session ownership moves in J2.
This commit is contained in:
Erik 2026-07-25 19:16:30 +02:00
parent 854d9e9cd1
commit f84624b1e9
9 changed files with 146 additions and 16 deletions

View file

@ -0,0 +1,70 @@
# Modern runtime Slice J1 closeout
## Result
Slice J1 is complete at production commit
`854d9e9cd13092bd5aaa3cf025d73eeb4600e9f8`.
`AcDream.Runtime` now defines the presentation-independent seams required
before ownership moves:
- borrowed immutable entity, inventory, chat, movement, and portal views;
- generation-gated typed session, selection, combat, movement, chat, and
portal commands;
- ordered typed deltas and normalized parity traces;
- an instance-scoped frame/simulation clock;
- lifecycle snapshots, generation tokens, and retryable teardown
acknowledgements.
The App implementation is deliberately an adapter over current canonical
owners. It does not copy mutable collections, add a command queue, own a
second GUID map, or add a frame of input latency. Startup and press-time input
reach the same session, selection, movement, and combat owners synchronously.
No gameplay owner moved in J1.
## Automated acceptance
At the production commit:
- Runtime contract tests: 13 passed;
- App tests: 3,838 passed / 3 skipped;
- complete Release solution: 8,424 passed / 5 skipped;
- Release solution build: pass.
The tests cover clock normalization/freeze and instance isolation, generation
and teardown semantics, event-sequencer isolation, trace normalization,
connected start through the adapter, borrowed live entity/inventory/chat/
portal views, same-owner command mutation, ordered domain traces, stale
generation rejection, and complete stop acknowledgement.
## Connected lifecycle acceptance
Raw evidence:
`logs/connected-world-gate-20260725-190953/report.json`.
Result: PASS on the exact production commit.
- Capped process: login plus Aerlinthe, Rynthid, Facility Hub, Holtburg after
dungeon, and Aerlinthe revisit all completed.
- Fresh uncapped process: reconnect completed.
- Seven of seven checkpoints passed.
- Both processes exited gracefully with exit code zero.
- No gate failure was recorded.
- The only warning was 25 expected world-edge landblock misses.
This connected run proves that routing the startup command through the J1 seam
did not alter live connection, world traversal, replacement, or shutdown
behavior.
## Exact rollback
```text
git revert 854d9e9cd13092bd5aaa3cf025d73eeb4600e9f8
```
J0 remains independently reversible with:
```text
git revert b632672e5ccabfb44c551e08f1c411ab2669c44a
```