Modules§
- agent_
teardown - close_
pane - delete_
block - delete_
tab - delete_
workspace - log
- orphan_
reaper - pending_
shutdown - promote_
block_ to_ tab - recovery
- redock_
floating_ pane - restore_
torn_ off_ tab - self_
quit - tear_
off_ block - tear_
off_ tab
Structs§
- SagaCtx
- Read-only context passed to a saga’s inner async function. Wraps the AppState handle and the saga’s allocated id.
Enums§
- Saga
Terminal - Outcome a saga’s inner future hands back to
emit_terminal.
Constants§
- SAGA_
TIMEOUT 🔒 - Maximum wall-clock time a saga is allowed to run before the coordinator force-fails it. Tear-off sagas should complete in tens of milliseconds; the budget is generous to absorb SQLite write spikes without flapping in CI.
Functions§
- alloc_
saga_ id - Allocate the next saga_id. Monotonic per srv-process run.
- classify_
run_ saga_ result - Convenience: classify the standard
run_sagaResult<Value, String>outcome into aSagaTerminal. - emit_
saga_ started - Emit
Event::SagaStartedfor a freshly-allocated saga_id. Sagas call this immediately afteralloc_saga_idso subscribers see the start record before any per-step events. - emit_
terminal - Emit the saga’s terminal lifecycle event + durable log row.
- run_
saga - Run a saga’s inner future under a 5 s timeout. The inner future
is responsible for emitting
SagaStarted(the saga itself, since it owns the saga_id allocation) and any compensation it needs;run_sagaonly enforces the timeout and emits the terminalSagaCompleted/SagaFailed.