Expand description
The ORBIT runtime: a durable, single-node workflow execution service.
model— history events and the state folded from themdecide— the pure, deterministic workflow deciderstore— SQLite persistence (event history is authoritative)engine— dispatch, worker registry, reconciliation and recoveryserver— HTTP API and the HTTP/JSON worker protocol bindingcluster— active/standby operation of several servers on PostgreSQLshared— several active servers sharing the work on PostgreSQLtesting— in-process simulation fororbit testandorbit simulatereplay— re-run a recorded history through the current decider
Re-exports§
pub use engine::Engine;pub use engine::EngineConfig;pub use engine::EngineError;pub use store::Store;
Modules§
- cluster
- Multi-server operation: one active leader, any number of standbys, all on
the same PostgreSQL database (
orbit server --cluster). - decide
- The deterministic workflow decider.
- engine
- The execution engine: owns persistence, in-memory projections of active executions, the worker registry and task dispatch.
- grpc
- gRPC binding of the worker protocol (
orbit.worker.v1.WorkerService). - http_
adapter - Built-in
orbit.http.requesttask: lets a workflow call an HTTP endpoint without writing a worker. Disabled unless the server is started with--enable-http-adapter, because it lets workflow authors make outbound requests from the runtime host. - identity
- Per-worker identities.
- metrics
- Prometheus-style counters derived from committed events.
- model
- Execution history events and the state derived from them.
- replay
- Deterministic replay: re-run a recorded history through the current decider and check that every decision the runtime recorded is reproduced.
- server
- HTTP API (RFC-0001 §11.2) and the HTTP/JSON binding of the worker
protocol (§8). See
protocol/README.mdfor the wire format. - shared
- Shared mode: several active servers on one PostgreSQL database
(
orbit server --cluster --cluster-mode shared). Every node serves every route; executions, worker tasks and worker sessions are spread over them. - store
- Persistence.
- telemetry
- OpenTelemetry tracing: OTLP/HTTP (JSON encoding) export of execution traces, accepted by the OpenTelemetry Collector, Jaeger, Grafana Tempo, Honeycomb and other OTLP backends.
- testing
- In-process workflow simulation, used by
orbit testandorbit simulate.