//! Núcleo puro de Minga: AST normalizado, direccionamiento por contenido //! semántico y Merkle Search Tree. Sin IO, sin red, sin filesystem. //! //! La separación es deliberada: este crate jamás importa libp2p, fuser ni //! ningún tipo asociado a un canal de IO. Si algo aquí necesita IO, el //! contrato se expone como trait y la implementación vive en otro crate. pub mod alpha; pub mod ast; pub mod attestation; pub mod cas; pub mod identity; pub mod mst; pub mod parse; pub mod store; pub use alpha::hash_node_alpha; pub use ast::SemanticNode; pub use attestation::{Attestation, AttestationError, AttestationStore}; pub use cas::{hash_components, hash_node, ContentHash}; pub use identity::{Did, Keypair, KeypairCryptoError, Signature}; pub use mst::{empty_subtree_hash, Mst, MstDiff, NodeProbe}; pub use store::{hash_stored, MemStore, NodeStore, StoredNode};