leviath_core/files.rs
1//! The names of the files a run directory and an agent directory hold.
2//!
3//! One place for each name. The persistence lane writes these files, the
4//! CLI's run state reader, the recovery scan, the dashboard and the HTTP API
5//! read them back. A name that lives in one constant cannot be misspelled in
6//! one reader and quietly never match again.
7
8/// The run's metadata: status, timings, totals. Written by the persistence
9/// lane on every change and read by everything that lists runs.
10pub const META_FILE: &str = "meta.json";
11
12/// The run's latest context-window snapshot.
13pub const CONTEXT_FILE: &str = "context.json";
14
15/// The per-stage ledger: which stages ran, in what order, at what cost.
16pub const STAGES_FILE: &str = "stages.json";
17
18/// The fan-out record for a run that split into workers.
19pub const FANOUT_FILE: &str = "fanout.json";
20
21/// The interactions a paused run is waiting on.
22pub const INTERACTIONS_FILE: &str = "interactions.json";
23
24/// The run archive: the append-only journal every other file is a view of.
25pub const ARCHIVE_FILE: &str = "run.lvr";
26
27/// The blueprint manifest inside an agent directory.
28pub const MANIFEST_FILENAME: &str = "agent.leviath";
29
30/// The directory inside a run holding stored mime parts, one file per
31/// SHA-256. Referenced from entries and events by hash, never inlined.
32pub const BLOBS_DIR: &str = "blobs";