mod attention;
pub mod batch;
mod build_error;
mod ctx;
#[cfg(feature = "manifest")]
mod declarative;
mod drain;
#[cfg(feature = "manifest")]
pub use declarative::PREVIEW_EVIDENCE_BYTES;
pub mod effects;
mod executor;
pub mod group;
pub mod metrics;
mod pass_journal;
#[cfg(feature = "manifest")]
mod reach;
pub mod replay_only;
mod sweeper;
pub mod telemetry;
mod verdict;
pub use attention::{Attention, Condition, Remedy, SUBJECTS_LISTED};
pub use batch::BatchSpec;
pub use build_error::BuildError;
pub use ctx::{BuildsEffect, Mode, StepCtx};
pub use drain::DrainReport;
#[cfg(feature = "manifest")]
pub use executor::Agent;
pub(crate) use executor::LEASE_FREE_EPOCH;
#[cfg(test)]
pub(crate) use executor::every_status;
pub(crate) use executor::observed_status;
pub use executor::{
Admission, ControlLifted, FullBackend, HALT_LIFTED_OUTCOME, HOLD_RELEASED_OUTCOME, LEASE_TTL,
LiveRun, MAX_ADMISSION_KEY_BYTES, MIN_LEASE_TTL, OBSERVED_OUTCOME, OUTCOMES_OF_RECORD,
RunFailure, RunOutcome, RunStatus, RunStreamObserver, RunTerms, Runtime, RuntimeBuilder,
SEALED_OUTCOMES, Spawned, Stores,
};
pub use group::{EffectGroup, Invariant};
pub use verdict::{CannotReplay, Finding, Verdict};
#[derive(Debug)]
pub struct SemanticMemory {
pub(crate) embedder: std::sync::Arc<dyn crate::memory::Embedder>,
pub(crate) retriever: std::sync::Arc<dyn crate::memory::SemanticRetriever>,
}
pub use sweeper::{Redelivered, Saturation, SweepReport, WokenRuns};