Skip to main content

opensession_git_native/
lib.rs

1pub mod context;
2pub mod error;
3pub mod handoff_artifact_store;
4pub mod ops;
5pub mod refs;
6pub mod store;
7pub mod url;
8
9#[cfg(test)]
10pub(crate) mod test_utils;
11
12pub use context::{extract_git_context, normalize_repo_name, GitContext};
13pub use error::{GitStorageError, Result};
14pub use handoff_artifact_store::{
15    artifact_ref_name, list_handoff_artifact_refs, load_handoff_artifact, store_handoff_artifact,
16};
17pub use refs::{branch_ledger_ref, encode_branch_component, resolve_ledger_branch};
18pub use store::{
19    store_blob_at_ref, NativeGitStorage, PruneStats, SessionSummaryLedgerRecord,
20    StoredSummaryRecord,
21};
22pub use url::generate_raw_url;
23
24/// Ref prefix used for per-branch session ledgers.
25pub const BRANCH_LEDGER_REF_PREFIX: &str = "refs/opensession/branches";
26
27/// Ref used for semantic summary ledger blobs.
28pub const SUMMARY_LEDGER_REF: &str = "refs/opensession/summaries";
29
30/// Ref prefix used for handoff artifacts.
31pub const HANDOFF_ARTIFACTS_REF_PREFIX: &str = "refs/opensession/handoff/artifacts";