buildfix_core/lib.rs
1//! Embeddable core library for buildfix.
2//!
3//! Provides a clap-free, I/O-abstracted entry point suitable for linking
4//! into a cockpit mega-binary or other host process.
5//!
6//! # Port traits
7//!
8//! All I/O is abstracted behind port traits in [`ports`]:
9//! - [`ReceiptSource`](ports::ReceiptSource) — load sensor receipts
10//! - [`GitPort`](ports::GitPort) — query git state
11//! - [`WritePort`](ports::WritePort) — write files and create directories
12//!
13//! The [`adapters`] module provides default filesystem-backed implementations.
14//!
15//! # Entry points
16//!
17//! - [`run_plan`](pipeline::run_plan) — generate a plan + report
18//! - [`run_apply`](pipeline::run_apply) — apply an existing plan + report
19
20pub mod adapters;
21pub mod pipeline;
22pub mod ports;
23pub mod settings;
24
25// Re-export the domain's RepoView so callers don't need buildfix-domain directly.
26pub use buildfix_domain::RepoView;
27pub use buildfix_domain::builtin_fixer_metas;
28
29// Re-export receipt types so embedders don't need buildfix-receipts directly.
30pub use buildfix_receipts::{LoadedReceipt, ReceiptEnvelope, ReceiptLoadError};