//! Pluggable P2P sync transport and per-domain CRDT merge strategies.
//!
//! Two trait families: [`SyncBackend`](sync_backend::SyncBackend) wraps the
//! peer-to-peer transport that announces operations and exchanges op bodies
//! between actors, and [`CrdtMergeStrategy`](crdt::CrdtMergeStrategy) wraps
//! the conflict-resolution semantics for one entity domain. ADR-027 makes
//! both load-bearing: the runtime is parametric over them, and concrete
//! decisions are deferred behind documented trigger thresholds.
//!
//! Default impls ship with no external dependencies:
//! [`FilesystemSync`](sync_backend::FilesystemSync) (peers share a
//! directory; useful for single-actor development) and
//! [`HlcLastWriterWins`](crdt::HlcLastWriterWins) (preserves the prior
//! single-writer convention).

pub mod crdt;
pub mod sync_backend;

pub use crdt::{CrdtMergeStrategy, GSet, HlcLastWriterWins, OrSet, TextMerge};
pub use sync_backend::{FilesystemSync, SyncBackend, SyncError};
