- KVReplicaSet: seed, apply, local scan, diff against the source, sync meta
- KVOutbox: persisted offline queue with in-order replay (load() resumes it)
- utils: KeyRange (also used for server authorization), KeyCounter,
SerialQueue (also used by KVStorageHttp and the event-sourced store),
RetryTimer (separate timers for sync and replay; previously one shared
timer could cancel the other's retry)
The composite now only orchestrates. Behaviour unchanged; new unit tests for
the building blocks and the outbox.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_017Qxbkp4tA7G5SCWjzWuxmE