pub trait SyncSession {
// Required methods
fn append_operation(
&mut self,
operation: OperationEnvelope,
) -> Result<(), FaultlineSyncError>;
fn operation_log(&self) -> &OperationLog;
fn peer_advertisement(&self, replica_id: &str) -> PeerAdvertisement;
fn detect_conflicts(&self) -> Vec<ConflictEvent>;
}