Skip to main content

sdivi_pipeline/
lib.rs

1//! # sdivi-pipeline
2//!
3//! Orchestration crate for the Structural Divergence Indexer.
4//!
5//! Owns all FS I/O, clock access, and atomic writes.  The pure-compute facade
6//! (WASM-compatible, no FS) lives in `sdivi-core`.
7//!
8//! # Quick start
9//!
10//! ```rust
11//! use sdivi_pipeline::Pipeline;
12//! use sdivi_config::Config;
13//!
14//! let pipeline = Pipeline::new(Config::default(), vec![]);
15//! // Call pipeline.snapshot(repo_root, commit, timestamp) to run all five stages.
16//! ```
17
18pub mod boundaries;
19pub mod cache;
20pub mod change_coupling;
21pub mod commit_extract;
22pub mod error;
23mod helpers;
24pub mod pipeline;
25mod readers;
26pub mod store;
27pub mod time;
28
29pub use boundaries::{infer_from_snapshots, read_prior_partitions};
30pub use change_coupling::{collect_cochange_events, ChangeCouplingError};
31pub use commit_extract::CommitExtractError;
32pub use error::PipelineError;
33pub use pipeline::{Pipeline, WriteMode};
34pub use store::{latest_snapshot, read_snapshot_by_id, read_snapshots, write_boundary_spec};
35pub use time::current_timestamp;