fix(streaming): stop replaying committed recenter retirements
Root cause: pending-only live projection buckets were misclassified as landblock presentation owners during origin recentering. That manufactured a second full cleanup receipt for a generation whose first receipt was still advancing; the duplicate guard threw and the broad retry path replayed the already-committed detach 243 times. Keep pending live projections through the spatial identity map without issuing another receipt, and fail fast when a receipt-ledger invariant occurs after detachment. Evidence: docs/research/2026-08-02-collision-throughput-handoff/p1-retirement-receipt-loop.md. Release suite, lifecycle gate, and nine-stop soak pass.
This commit is contained in:
parent
c65559d8f8
commit
01f4791e95
9 changed files with 309 additions and 9 deletions
|
|
@ -80,6 +80,14 @@ loader branch there. Slice 4B must preserve the flag while mapping successful
|
|||
deferred placement to exact-cell, generation-scoped asynchronous admission;
|
||||
the presence of the flag in the immutable request is not claimed as exactness.
|
||||
|
||||
AD-2 retirement-receipt refinement (2026-08-02): a pending-only live
|
||||
projection bucket survives the atomic origin swap but is not a landblock
|
||||
presentation generation and emits no second full cleanup receipt. A genuine
|
||||
receipt-ledger invariant after spatial detachment is a committed terminal
|
||||
failure, never resumable detach work. This preserves the existing adaptation:
|
||||
one exact asynchronous cleanup owner for each synchronously destroyed retail
|
||||
landblock, while logical live objects survive streaming residence changes.
|
||||
|
||||
AP-1/AD-1 checkpoint (placement Slice 4B2 checkpoint 1, 2026-07-31): Runtime now owns the
|
||||
exact accepted placement/lost-cell transaction, atomic body/contact/cell/
|
||||
shadow/workset commit, adjusted retained frame, authored mover preparation,
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue