id_effect 0.4.0

Effect<A, E, R> (sync + async), capability DI, pipe — interpreter-style, no bundled executor
Documentation
1
2
3
4
5
6
7
8
9
# Sagas and session types

## Saga compensation

[`Saga`](../../id_effect_fsm/src/saga.rs) runs forward [`Effect`](../../id_effect/src/kernel/effect.rs) steps via `run_blocking`. On failure it invokes compensation factories in **reverse** order.

## Linear session types

`[`SessionSend<P>`](../../id_effect_fsm/src/`session.rs) and [``Session`Recv<P>`](../../id_effect_fsm/src/session.rs) are phantom markers encoding alternating send/receive phases. The included ping/pong protocol demonstrates type-directed hand-off without runtime protocol state machines.