Operational category
Runtime
How the system stays up.
Checkpointing
Save state. Resume cleanly.
The execution state is persisted at well-defined boundaries (per node or super-step) so an interrupted or failed run resumes from the last checkpoint instead of restarting — the durable-execution substrate that also enables human-in-the-loop pauses.
Trade-off Higher fault tolerance is gained against storage, privacy, and consistency overhead.
Workflow DAG
A graph that can be drawn.
Workflows are operated as persistent execution graphs featuring resumability, retries, and state history.
Trade-off Production robustness is achieved at the expense of infrastructure and modeling effort.
Actor Model
Each agent is its own mailbox, its own state, its own supervisor.
Agents or components run as independent actors: each owns its private state, processes one message at a time from its mailbox, and can spawn further actors — so there is no shared-memory contention and a crash is contained to a single actor.
Trade-off Strong isolation and scalability are gained against more complex messaging and error semantics.
Event-driven Choreography
No conductor. Each component listens for the events it cares about.
Each component reacts to events it subscribes to and emits its own, with no central conductor — the overall workflow is an emergent consequence of local event-and-reaction rules rather than an explicit plan.
Trade-off High decoupling is gained against more difficult global control.
Saga / Compensation
Every forward step ships with its own undo.
A long-running transaction is split into steps, each paired with a compensating action; when a later step fails, the already-committed steps are undone in reverse order via their compensations, because a distributed transaction cannot hold a lock across all the resources at once.
Trade-off More robust long-running processes are gained against complex compensation logic.
Pub/Sub Agent Mesh
Topics, not addresses. Agents subscribe to what they care about.
Agents publish to and subscribe to named topics on a shared bus instead of calling each other directly, so a publisher never knows who consumes its events and subscribers can be added or removed without touching the publisher.
Trade-off Scalable decoupling is gained against more complex delivery, debugging, and governance.
Where to next