//! Ingestion pipeline for Episteme.
//!
//! This crate handles the reading of the Write-Ahead Log (WAL) and
//! the background indexing of assertions into the storage engine.
//!
//! # Storage Layout
//!
//! Records are stored with content-addressed keys:
//! - `H:{hash}` - Assertions
//! - `V:{assertion_hash}:{vote_hash}` - Votes
//! - `E:{hash}` - Epochs
//! - `S:{subject}` - Subject index

/// Content defense layer for spam detection and quality control.
pub mod content_defense;
/// Error types and Result wrapper for ingestion.
pub mod error;
/// Gossip broadcast trait for distributed replication.
pub mod gossip;
/// High-level ingestor manager.
pub mod ingestor;
/// Background worker logic for processing the WAL.
pub mod worker;

pub use content_defense::{ContentDefenseConfig, ContentDefenseLayer};
pub use error::{IngestError, Result};
pub use gossip::{GossipBroadcast, GossipError, NoOpGossipBroadcast};
pub use ingestor::Ingestor;
pub use worker::{serialize_assertion, serialize_epoch, serialize_vote, IngestWorker, RecordType};
