Leave old page-change records as they are, and never take back a change the server may have seen

Records saved by builds before the ordered list are no longer moved into
it on start. They stay in their page's slot and are sent as those builds
sent them (renames first in their one batch), and the list's own changes
wait until they have drained. A side change that would have replaced an
old waiting move or delete waits behind it instead.

A delete of a page whose add hasn't landed now waits behind the add, so
an add whose answer was lost no longer leaves a page on the server with
an empty outbox. A replayed add's answer moves the changes behind it on,
as an applied one does. Renames and side changes made after a page's
delete wait behind it: they go with the page once the delete lands, and
send if the delete is discarded. Only a change never sent is folded into.

The canvas follows a rename onto its new page revision only when the
server applied it.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
6869fd46e7Dara Adedeji committed on 10/18/2026, 2:44:46 PMparent68410a4

Checks

All checks passed
8 files changedLine totals unavailable