Skip to main content

klieo_provenance/
lib.rs

1#![deny(missing_docs)]
2#![deny(rustdoc::broken_intra_doc_links)]
3//! Append-only Merkle hash chain with signed evidence bundles.
4//!
5//! See the crate-level docs in T1 for context. The public surface is
6//! re-exported below; internal modules are private.
7
8mod chain;
9mod episodic_decorator;
10mod error;
11mod projection;
12mod repository;
13mod signed_export;
14#[cfg(feature = "sqlite")]
15mod sqlite_repo;
16mod verify;
17
18pub use chain::{
19    ChainEntry, ChainEntryId, ProvenanceChain, ProvenanceEvent, ProvenanceEventKind,
20    GENESIS_HASH_HEX,
21};
22pub use episodic_decorator::ProvenanceEpisodic;
23pub use error::ProvenanceError;
24pub use projection::{chain_from_episodes, episode_to_event, error_category};
25pub use repository::ProvenanceRepository;
26#[allow(deprecated)]
27pub use signed_export::Signer;
28pub use signed_export::{BundleSigner, EvidenceBundle, SignatureBytes};
29#[cfg(feature = "sqlite")]
30pub use sqlite_repo::SqliteProvenanceRepository;
31#[cfg(feature = "ecdsa-p256")]
32pub use verify::EcdsaP256Verifier;
33pub use verify::{Ed25519Verifier, KeyResolver, StaticKeyResolver, Verifier, VerifyError};