v0.3.16-pre.002

This commit is contained in:
2026-09-21 08:31:42 +02:00
parent c7a6df859d
commit b0deefddb7
8 changed files with 597 additions and 36 deletions

View File

@@ -1,10 +1,8 @@
// file: crates/ksp-store-api/src/lib.rs
// version: 7
// version: 8
#![warn(missing_docs)]
#![deny(unreachable_pub)]
#![forbid(unsafe_code)]
//! Backend-agnostic persistence contracts for KSP Store implementations.
//!
//! `ksp-store-api` owns persistent models plus the contracts that operate on
@@ -15,11 +13,9 @@
//! Models and capabilities deliberately have separate private module homes.
//! Backend implementations, SQL, migrations, Config, Transport and runtime
//! dispatch remain outside this crate.
mod capability;
mod error;
mod model;
/// Boxed async operation returned by object-safe Store capability contracts.
pub use self::capability::StoreApiFuture;
/// Read capability for random-access RAW account-observation inspection.
@@ -94,6 +90,8 @@ pub use self::model::raw_outcome::RawAcquisitionWriteOutcome;
pub use self::model::raw_outcome::RawEntityWriteOutcome;
/// Outcome for one deterministic acquisition observation write.
pub use self::model::raw_outcome::RawObservationWriteOutcome;
/// Durable Store outcome for one variant-aware RAW transaction acquisition.
pub use self::model::raw_outcome::RawTransactionVariantWriteOutcome;
/// Maximum opaque query cursor length admitted by the Store API.
pub use self::model::raw_pagination::MAX_RAW_PAGE_CURSOR_BYTES;
/// Backend-independent list query for complete canonical RAW account states.
@@ -154,10 +152,24 @@ pub use self::model::raw_retention::RawTransactionRetentionTransition;
pub use self::model::raw_retention::RawTransactionTombstone;
/// Canonical source-independent N1 RAW transaction persisted by Store backends.
pub use self::model::raw_transaction::RawTransaction;
/// Durable lifecycle status of one RAW transaction conflict case.
pub use self::model::raw_transaction::RawTransactionConflictStatus;
/// Persistable acquisition observation linked to one canonical RAW transaction.
pub use self::model::raw_transaction::RawTransactionObservation;
/// Durable backend-independent identity of one canonical RAW transaction.
pub use self::model::raw_transaction::RawTransactionReference;
/// Validated backend-neutral result of comparing canonical and incoming RAW transaction variants.
pub use self::model::raw_transaction::RawTransactionVariantComparison;
/// Stable non-zero Store identity of one persisted RAW transaction variant.
pub use self::model::raw_transaction::RawTransactionVariantId;
/// Origin of one persisted RAW transaction variant.
pub use self::model::raw_transaction::RawTransactionVariantOrigin;
/// Durable reference to one persisted RAW transaction variant.
pub use self::model::raw_transaction::RawTransactionVariantReference;
/// Backend-neutral quality relation between canonical and incoming RAW transaction variants.
pub use self::model::raw_transaction::RawTransactionVariantRelation;
/// Stable backend-neutral reason explaining one RAW transaction variant relation.
pub use self::model::raw_transaction::RawTransactionVariantRelationReason;
/// Common KSP error type used by Store-facing contracts.
pub use ksp_core_lib::Error;
/// Stable structured code identifying a KSP error category and condition.