Expand description
Inbound array CRDT message handler for NodeDB-Lite.
ArrayInbound receives wire messages from Origin and applies them to the
local engine state. It holds no socket: the sync transport decodes frames
and reaches it through SyncDelegate.
§Module layout
apply—LiteApplyEngineadapts engine state to thenodedb_array::sync::apply::ApplyEnginetrait.outcome—InboundOutcomeenum returned by every dispatcher method.dispatcher—ArrayInboundstruct, snapshot assembly buffer, and shared helpers.delta,snapshot,schema,reject— oneimpl ArrayInboundblock per wire-message family, with colocated unit tests.resume— the catch-up requests a new sync session sends, and tracker access for the apply paths.
§No outbound loop
LiteApplyEngine operates at the engine layer below
NodeDbLite::array_put_cell, so the Phase D outbound hook
(crate::sync::array::ArrayOutbound) is never invoked for remotely-
received ops. The receive path is therefore loop-free by construction.
Re-exports§
pub use apply::LiteApplyEngine;pub use dispatcher::ArrayInbound;pub use outcome::InboundOutcome;
Modules§
- apply
LiteApplyEngine— adapts NodeDB-Lite’s array engine to theApplyEnginetrait sonodedb_array::sync::apply::apply_opcan drive local state from inbound wire messages.- delta
- Delta and delta-batch handlers — single-op and batched op application.
- dispatcher
ArrayInbound— dispatcher for inbound array CRDT wire messages.- outcome
InboundOutcome— return type for everysuper::ArrayInbounddispatcher method.- reject
- Reject-message handler: Origin refused an op this replica emitted.
- resume
- Session catch-up — the requests a new sync session sends to resume every array this replica holds, and the tracker access the apply paths use to record what they applied.
- schema
- Schema CRDT snapshot import handler.
- snapshot
- Snapshot header and chunk handlers — buffer chunks until complete, then assemble and apply the contained ops.