Skip to main content

mempill_types/
lib.rs

1//! # mempill-types
2//!
3//! Shared domain types for the mempill temporally-correct AI-agent memory engine.
4//!
5//! This crate contains only pure data types (Value Objects and Entities in DDD terms).
6//! It has no I/O, no port traits, no engine logic, and no SQL.
7//!
8//! ## Modules
9//! - `identity`    — [`AgentId`], [`ClaimRef`], [`SubjectLineRef`]
10//! - `provenance`  — [`ProvenanceLabel`], [`ExternalKind`], [`ExternalAnchor`]
11//! - `time`        — [`TransactionTime`], [`ValidTime`]
12//! - `claim`       — [`Claim`], [`Fact`], [`Cardinality`], [`Confidence`], [`Criticality`]
13//! - `disposition` — [`Disposition`] (12-state model)
14//! - `belief`      — [`BeliefProjection`], [`Belief`], [`CurrencySignal`], [`CurrencyState`],
15//!   [`BeliefStatus`], [`StalenessFlag`], [`Marker`]
16//! - `validity`    — [`ValidityAssertion`], [`AssertionKind`]
17//! - `edge`        — [`ClaimEdge`], [`EdgeKind`]
18//! - `ledger`      — [`LedgerEntry`], [`LedgerEventKind`]
19//! - `proposal`    — [`ClaimProposal`], [`AdjudicationRequest`], [`AdjudicationResponse`],
20//!   [`AdjudicationVerdict`], [`OverturnReason`], [`AdjudicationOutcome`]
21
22pub mod belief;
23pub mod claim;
24pub mod disposition;
25pub mod edge;
26pub mod identity;
27pub mod ledger;
28pub mod proposal;
29pub mod provenance;
30pub mod time;
31pub mod validity;
32
33// ── Public re-exports ────────────────────────────────────────────────────────
34
35pub use belief::{
36    Belief, BeliefProjection, BeliefStatus, CurrencySignal, CurrencyState, HistoryEntryStatus,
37    Marker, StalenessFlag,
38};
39pub use claim::{Cardinality, Claim, Confidence, Criticality, Fact};
40pub use disposition::{Disposition, WriteOutcome};
41pub use edge::{ClaimEdge, EdgeKind};
42pub use identity::{AgentId, ClaimRef, SubjectLineRef};
43pub use ledger::{LedgerEntry, LedgerEventKind};
44pub use proposal::{
45    AdjudicationOutcome, AdjudicationRequest, AdjudicationResponse, AdjudicationVerdict,
46    ClaimProposal, OverturnReason,
47};
48pub use provenance::{ExternalAnchor, ExternalKind, ProvenanceLabel};
49pub use time::{TransactionTime, ValidTime};
50pub use validity::{AssertionKind, ValidityAssertion};