lash-core 0.1.0-alpha.85

Sans-IO turn machine and runtime kernel for the lash agent runtime.
Documentation
mod awaiter;
mod engine;
mod events;
mod materialization;
mod model;
mod observation;
mod registry;
mod service;
#[cfg(any(test, feature = "testing"))]
mod testing;
#[cfg(test)]
mod tests;
mod time;
mod validation;
mod wake;

pub use awaiter::{
    ProcessAttach, ProcessAwaiter, ProcessChangeHub, ProcessEventSink, watch_process_registry,
    watch_process_registry_with_sink,
};
pub use engine::{
    ProcessEngine, ProcessEngineRegistry, ProcessEngineRunContext, ProcessEngineRunGuard,
    ProcessEngineRuntimeContext, ProcessEngineValidationContext,
};
pub use events::{
    AbandonEvidence, AbandonWriter, ProcessAwaitOutput, ProcessEvent, ProcessEventAppendRequest,
    ProcessEventAppendResult, ProcessEventSemantics, ProcessEventSemanticsSpec, ProcessEventType,
    ProcessTerminalSemantics, ProcessTerminalSpec, ProcessTerminalState, ProcessValueSelector,
    ProcessWake, ProcessWakeDedupeKey, ProcessWakeDelivery, ProcessWakeSpec,
    process_signal_event_type, process_signal_name_from_event_type, process_signal_wait_key,
    validate_process_signal_name,
};
pub use materialization::materialize_process_event_semantics;
pub use model::{
    AbandonRequest, InMemoryProcessExecutionEnvStore, PROCESS_LEASE_SCHEMA_VERSION,
    ProcessCancelSummary, ProcessExecutionContext, ProcessExecutionEnvRef, ProcessExecutionEnvSpec,
    ProcessExecutionEnvStore, ProcessExternalRef, ProcessHandleDescriptor, ProcessHandleGrant,
    ProcessHandleGrantEntry, ProcessHandleSummary, ProcessId, ProcessIdentity, ProcessInput,
    ProcessLease, ProcessLeaseClaimOutcome, ProcessLeaseCompletion, ProcessLifecycleStatus,
    ProcessListFilter, ProcessListMode, ProcessOpScope, ProcessOriginator, ProcessProvenance,
    ProcessRecord, ProcessRegistration, ProcessSessionDeleteReport, ProcessSpawnProvenance,
    ProcessStartGrant, ProcessStartOptions, ProcessStartRequest, ProcessStarted, ProcessStatus,
    ProcessStatusFilter, RecoveryDisposition, SessionScope, SessionScopeId, WaitKind, WaitState,
    load_process_execution_env, persist_process_execution_env,
};
pub use observation::{
    ObservedProcess, ObservedProcessEvent, ObservedWorkItem, ProcessWorkObserver,
    ProcessWorkSnapshot,
};
pub use registry::{ProcessPruneReport, ProcessRegistry};
pub use service::{
    DefaultProcessCancelAbility, ProcessCancelAbility, ProcessCancelAllRequest,
    ProcessCancelRequest, ProcessCancelSource, ProcessService, UnavailableProcessService,
};
#[cfg(any(test, feature = "testing"))]
pub use testing::*;
pub use time::{current_epoch_ms, epoch_ms_from_system_time, system_time_from_epoch_ms};
pub use validation::{
    ProcessEventAppendPlan, apply_process_status_projection, prepare_process_event_append,
    prepare_process_registration, process_event_payload_hash, require_event_replay,
};
pub use wake::{
    ProcessWakeDeliveryRequest, process_wake_delivery, process_wake_input_from_event_payload,
    process_wake_turn_cause, process_wake_turn_text,
};