Expand description
RunStore — persistence for Run records (one kick of a Task).
Part of the issue #13 ID-hierarchy reconciliation: Blueprint -> Task ->
Run -> Step -> Attempt. A RunId is minted
server-side each time a crate::store::task::TaskRecord is kicked; it
carries a lightweight trace of the steps dispatched during that kick
(StepEntry) for observability, plus its own outcome status
independent of the owning Task’s coarser status. A single Task can have
N Runs over its lifetime (list_by_task).
Current scope:
InMemoryRunStore— process-volatile default.SqliteRunStore— file-backed persistence viarusqlite-isle.step_entriesis a JSON column, not normalized into its own table — this is a trace/observability artifact, not something queried relationally.- Other persistent backends (Git / mini-app / …) are future carries.
Re-exports§
pub use inmemory::InMemoryRunStore;pub use sqlite::SqliteRunStore;
Modules§
- inmemory
InMemoryRunStore— a process-volatileRunStoreused by the current default.- sqlite
SqliteRunStore— SQLite-backedRunStoreusing [rusqlite-isle].
Structs§
- RunContext
- Pairs a
RunIdwith theRunStoreused to persist its trace. - RunRecord
- One persisted
Runrow — one kick of acrate::store::task::TaskRecord. - Step
Entry - One entry in a Run’s step trace — appended as the engine dispatches (and finishes) each step. Purely observational: no field here is consulted for flow control.
Enums§
- RunStatus
- Lifecycle status of a
RunRecord— the outcome of one specific kick of a Task. - RunStore
Error - Errors surfaced by a
RunStoreimplementation.
Traits§
- RunStore
- Persistence interface for
Runrecords — one kick of a Task, in the issue #13 ID hierarchy.