1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
//! Suture Core — The central library for the Suture Universal Semantic Version Control System.
//!
//! This crate provides:
//! - **CAS** (Content Addressable Storage): BLAKE3-indexed blob storage with Zstd compression
//! - **Patch Algebra**: Commutativity detection, merge computation, conflict handling
//! - **Patch DAG**: Directed acyclic graph of patches with branch management
//! - **Metadata Store**: SQLite-backed persistent metadata
//! - **Repository**: High-level API combining all of the above
//!
//! # Example
//!
//! ```no_run
//! use suture_core::repository::Repository;
//!
//! // Initialize a new repository
//! let mut repo = Repository::init(
//! std::path::Path::new("my-project"),
//! "alice",
//! )?;
//!
//! // Create a branch
//! repo.create_branch("feature", None)?;
//!
//! // Stage and commit
//! repo.add("src/main.rs")?;
//! let patch_id = repo.commit("Initial commit")?;
//!
//! // View log
//! for patch in repo.log(None)? {
//! println!("[{}] {}", patch.id, patch.message);
//! }
//! # Ok::<(), suture_core::repository::RepoError>(())
//! ```
// Re-export common types for convenience
pub use ;