pub mod adaptive_layout;
pub mod anti_entropy;
pub mod assignment;
pub mod bridge;
pub mod computation_schema;
pub mod consensus;
pub mod consistent_hash;
pub mod distribution;
pub mod encoding;
pub mod membership;
pub mod recovery;
pub mod snapshot;
pub use adaptive_layout::{AdaptiveLayoutConfig, BlockLayoutChoice, PathQuality};
pub use anti_entropy::{DiffKind, DiffReport, KeyDiff, MerkleRangeTree};
pub use assignment::{AssignmentStrategy, ReplicaAssignment, SymbolAssigner};
pub use bridge::{
BridgeConfig, CloseResult, ConflictResolution, DistributedToLocal, EffectiveState,
LocalToDistributed, RegionBridge, RegionMode, SyncMode, SyncResult, SyncState, UpgradeResult,
};
pub use computation_schema::{
ComputationSchemaRegistry, ComputationSchemaRegistryError, HasSchema,
RegisteredComputationSchema, SchemaDescriptor, SchemaFingerprint, SchemaMismatch,
SchemaMismatchKind,
};
pub use consensus::{
ConsensusBatch, ConsensusError, ConsensusRequest, ConsensusResponse, MessageDigest, PbftConfig,
PbftConsensus, PbftNode, PbftState, PhaseKind, ReplicaId, SequenceNumber, ViewNumber,
};
pub use consistent_hash::{BoundedLoadConfig, BoundedLoadDecision, BoundedLoadFallback, HashRing};
pub use distribution::{
DistributionConfig, DistributionMetrics, DistributionResult, ReplicaAck, ReplicaFailure,
SymbolDistributor,
};
pub use encoding::{
ADAPTIVE_BLOCK_LAYOUT_POLICY_ID, EncodedState, EncodingConfig, EncodingError,
EncodingLayoutDecision, PathQualitySnapshot, STATIC_BLOCK_LAYOUT_POLICY_ID, StateEncoder,
};
pub use membership::{
MemberState, MembershipEvent, MembershipKind, Swim, SwimConfig, SwimConfigError,
};
pub use recovery::{
CollectedSymbol, CollectionConsistency, CollectionMetrics, RecoveryCollector, RecoveryConfig,
RecoveryDecodingConfig, RecoveryOrchestrator, RecoveryPhase, RecoveryProgress, RecoveryResult,
RecoveryTrigger, StateDecoder,
};
pub use snapshot::{BudgetSnapshot, RegionSnapshot, SnapshotError, TaskSnapshot, TaskState};
#[cfg(test)]
mod tests;