Skip to main content

Module kernel

Module kernel 

Source
Expand description

Oris Kernel API (2.0).

Minimal complete set of interfaces: Run (identity), Event Log (source of truth), Replay, Action (single channel for tools/external world, governable). Graph and Agent compile down to StepFn; tools implement ActionExecutor.

Re-exports§

pub use action::Action;
pub use action::ActionError;
pub use action::ActionErrorKind;
pub use action::ActionExecutor;
pub use action::ActionResult;
pub use determinism_guard::compute_event_stream_hash;
pub use determinism_guard::event_stream_hash;
pub use determinism_guard::verify_event_stream_hash;
pub use determinism_guard::DeterminismGuard;
pub use driver::BlockedInfo;
pub use driver::Kernel;
pub use driver::RunStatus;
pub use driver::Signal;
pub use event::Event;
pub use event::EventStore;
pub use event::KernelError;
pub use event::SequencedEvent;
pub use event_store::InMemoryEventStore;
pub use event_store::SharedEventStore;
pub use execution_log::scan_execution_log;
pub use execution_log::scan_execution_trace;
pub use execution_log::ExecutionLog;
pub use execution_log::KernelTraceEvent;
pub use execution_step::ExecutionStep;
pub use execution_step::ExecutionStepInput;
pub use execution_step::StepResult;
pub use execution_suspension::ExecutionSuspension;
pub use execution_suspension::ExecutionSuspensionState;
pub use execution_suspension::SuspensionError;
pub use identity::RunId;
pub use identity::Seq;
pub use identity::StepId;
pub use interrupt::Interrupt;
pub use interrupt::InterruptError;
pub use interrupt::InterruptId;
pub use interrupt::InterruptKind;
pub use interrupt::InterruptStore;
pub use interrupt_resolver::InterruptResolver;
pub use interrupt_resolver::InterruptResolverError;
pub use interrupt_resolver::InterruptSource;
pub use interrupt_resolver::ResolveResult;
pub use kernel_mode::KernelMode;
pub use policy::AllowListPolicy;
pub use policy::BudgetRules;
pub use policy::Policy;
pub use policy::PolicyCtx;
pub use policy::RetryDecision;
pub use policy::RetryWithBackoffPolicy;
pub use reducer::Reducer;
pub use reducer::StateUpdatedOnlyReducer;
pub use replay_cursor::ReplayCursor;
pub use replay_cursor::ReplayStepIter;
pub use replay_resume::ReplayResume;
pub use replay_resume::ResumeDecision;
pub use replay_resume::ResumeResult;
pub use replay_verifier::ReplayVerifier;
pub use replay_verifier::VerificationFailure;
pub use replay_verifier::VerificationResult;
pub use replay_verifier::VerifyConfig;
pub use runner::KernelRunner;
pub use runtime_effect::EffectSink;
pub use runtime_effect::NoopEffectSink;
pub use runtime_effect::RuntimeEffect;
pub use snapshot::InMemorySnapshotStore;
pub use snapshot::Snapshot;
pub use snapshot::SnapshotStore;
pub use state::KernelState;
pub use step::InterruptInfo;
pub use step::Next;
pub use step::StepFn;
pub use stubs::AllowAllPolicy;
pub use stubs::NoopActionExecutor;
pub use stubs::NoopStepFn;
pub use timeline::run_timeline;
pub use timeline::RunStatusSummary;
pub use timeline::RunTimeline;
pub use timeline::TimelineEntry;
pub use timeline_fork::ForkResult;
pub use timeline_fork::TimelineFork;
pub use timeline_fork::TimelineForker;

Modules§

action
Action and ActionExecutor: single channel for tools and external world (governable).
determinism_guard
Determinism guard: trap handlers for clock, randomness, and thread spawn in Replay/Verify.
driver
Kernel driver: run_until_blocked, resume, replay.
event
Event type and EventStore for the Oris kernel.
event_store
In-memory EventStore implementation for the kernel.
execution_log
Canonical execution log: event-sourced log as the source of truth.
execution_step
Execution step contract: canonical interface for one step of execution.
execution_suspension
Execution suspension state machine: handle worker teardown when execution is paused.
identity
Run identity types for the Oris kernel.
interrupt
Interrupt: standardized representation and persistence of kernel interrupts.
interrupt_resolver
Unified interrupt routing layer: single resolver for all external interrupt sources.
kernel_mode
Kernel execution mode: controls determinism and replay/verify behavior.
policy
Policy: governance layer (authorize, retry, budget).
reducer
Reducer: projects events onto state (pure functional semantics).
replay_cursor
Replay cursor engine: reconstruct state from the event log without live side effects.
replay_resume
Replay-based resume: guarantee idempotent resume semantics.
replay_verifier
Replay verification API: cryptographically verify run integrity.
runner
KernelRunner: recommended way to run the kernel from sync or async code.
runtime_effect
Runtime effect capture: canonical side-effect types and sink for the kernel.
snapshot
Snapshot and SnapshotStore for the Oris kernel.
state
State trait for the Oris kernel.
step
Step function: given state, decide next (emit events, do action, interrupt, or complete).
stubs
Stub implementations for building a Kernel (e.g. for replay-only tests). Replay does not call ActionExecutor or StepFn; policy is used only when running.
timeline
Run timeline: observable sequence of events for a run (audit, debugging).
timeline_fork
Timeline forking: fork execution timelines from a specific checkpoint.