#![cfg_attr(not(feature = "std"), no_std)]
#![deny(unsafe_op_in_unsafe_fn)]
#![warn(missing_docs)]
#[cfg(feature = "alloc")]
extern crate alloc;
pub mod coherence;
pub mod graph_store;
pub mod hnsw;
pub mod proof_policy;
pub mod simd_distance;
pub mod vector_store;
pub mod witness;
pub use coherence::{CoherenceConfig, CoherenceTracker};
pub use graph_store::{GraphMutationResult, GraphStoreBuilder, KernelGraphStore, PartitionMeta};
pub use hnsw::{HnswConfig, HnswNode, HnswRegion};
pub use proof_policy::{NonceTracker, ProofPolicy, ProofVerifier};
pub use vector_store::{KernelVectorStore, VectorEntry, VectorStoreBuilder};
pub use witness::{WitnessEntry, WitnessLog};
pub use simd_distance::{
cosine_similarity, dot_product, euclidean_distance_squared, l2_norm,
SimdCapabilities,
};
pub type Result<T> = core::result::Result<T, ruvix_types::KernelError>;
#[cfg(feature = "stats")]
#[derive(Debug, Clone, Default)]
pub struct VecGraphStats {
pub vector_reads: u64,
pub vector_writes: u64,
pub vector_writes_rejected: u64,
pub graph_mutations: u64,
pub graph_mutations_rejected: u64,
pub witness_entries: u64,
}
#[cfg(test)]
mod tests {
#[test]
fn test_module_compiles() {
assert!(true);
}
}