lash-core 0.1.0-alpha.34

Sans-IO turn machine and runtime kernel for the lash agent runtime.
Documentation
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 events::{
    ProcessAwaitOutput, ProcessEvent, ProcessEventAppendRequest, ProcessEventAppendResult,
    ProcessEventSemantics, ProcessEventSemanticsSpec, ProcessEventType, ProcessTerminalSemantics,
    ProcessTerminalSpec, ProcessTerminalState, ProcessValueSelector, ProcessWake,
    ProcessWakeDedupeKey, ProcessWakeDelivery, ProcessWakeSpec, lashlang_process_event_types,
};
pub use materialization::materialize_process_event_semantics;
pub use model::{
    PROCESS_LEASE_SCHEMA_VERSION, ProcessCancelSummary, ProcessDefinitionSelector,
    ProcessDefinitionSummary, ProcessExecutionContext, ProcessExternalRef, ProcessHandleDescriptor,
    ProcessHandleGrant, ProcessHandleGrantEntry, ProcessHandleSummary, ProcessId, ProcessInput,
    ProcessLease, ProcessLeaseCompletion, ProcessLifecycleStatus, ProcessListFilter,
    ProcessListMode, ProcessOpScope, ProcessProvenance, ProcessRecord, ProcessRegistration,
    ProcessScope, ProcessScopeId, ProcessSessionDeleteReport, ProcessStartGrant,
    ProcessStartOptions, ProcessStartRequest, ProcessStatus, ProcessStatusFilter,
};
pub use observation::{
    ObservedProcess, ObservedProcessEvent, ObservedWorkItem, ProcessWorkObserver,
    ProcessWorkSnapshot,
};
pub use registry::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::{
    PreparedProcessEventAppend, prepare_process_event_append, prepare_process_registration,
    process_event_payload_hash, require_event_replay,
};
pub use wake::{
    process_wake_delivery, process_wake_input_from_event_payload, process_wake_turn_cause,
    process_wake_turn_text,
};