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
//! Storage trait abstraction for the Agent Assembly persistence layer.
//!
//! This crate is a thin **facade** over [`aa_core::storage`]: it re-exports the
//! storage trait contract verbatim. The traits themselves live in `aa-core` so
//! they can also be reached at `aa_core::storage::*` — the two import paths are
//! interchangeable. Backend driver crates may depend on this crate to express
//! "I implement the storage contract" without coupling to the rest of `aa-core`'s
//! API surface, and existing `aa_storage::*` paths keep working.
//!
//! The crate is a pure interface — no concrete backend dependency (no `sqlx`,
//! `redis`, or `tonic`).
//!
//! # Traits
//!
//! - [`PolicyStore`] — fetch and invalidate an agent's effective policy
//! - [`AuditSink`] — append-only emission of audit entries
//! - [`SessionStore`] — persist, load, and delete per-execution session records
//! - [`CredentialStore`] — store and retrieve named secret material
//! - [`RateLimitCounter`] — read-modify-write counters for rate limiting
//! - [`LifecycleStore`] — agent register / heartbeat / deregister bookkeeping
//!
//! # Single import path
//!
//! ```
//! use aa_storage::{AgentId, AuditSink, PolicyDocument, PolicyStore};
//! ```
pub use *;
pub use StorageConfig;
pub use DriverName;
pub use ConfigError;
pub use Registry;