Skip to main content

arbiter_session/
lib.rs

1//! Task session management for Arbiter.
2//!
3//! Provides task sessions with call budgets, tool whitelisting,
4//! time limits, and TTL-based cleanup. Sessions track what an agent is
5//! authorized to do and enforce those bounds per-request.
6//!
7//! The [`StorageBackedSessionStore`] provides persistent sessions through
8//! an in-memory write-through cache backed by any `SessionStore` storage
9//! implementation (REQ-001, REQ-007).
10//!
11//! Behavioral anomaly detection lives in the `arbiter-behavior` crate,
12//! which provides tiered intent classification (read/write/admin).
13
14pub mod any_store;
15pub mod error;
16pub mod middleware;
17pub mod model;
18pub mod storage_store;
19pub mod store;
20
21pub use any_store::AnySessionStore;
22pub use error::SessionError;
23pub use middleware::{parse_session_header, status_code_for_error};
24pub use model::{DataSensitivity, SessionId, SessionStatus, TaskSession};
25pub use storage_store::StorageBackedSessionStore;
26pub use store::{CreateSessionRequest, SessionStore};