Agent Architecture and Orchestration

Agent Architecture and Orchestration

Interrupt and Resume — Stack

Interrupt and resume › Stack

53 of 77 in this book · 2 min read

Technology landscape as of 2026-10-10. Knowledge cutoff May 2026.

Selection criteria

You are choosing how much a paused run costs to hold and how faithfully it comes back.

  • Cost of waiting. Whether a suspended run occupies a process, a connection, and memory, or nothing at all until it is woken.
  • Granularity of the stopping point. Whether a run can be stopped anywhere or only at declared boundaries, and how long an in-progress step delays the stop.
  • Snapshot completeness. Whether the mechanism captures everything needed to continue, including applied effects, or only the parts it happens to know about.
  • Wake-up sources. Whether a run can be resumed by a timer, a webhook, a human action in another system, or only by a direct call.
  • Code versioning. Whether a run paused before a deployment can resume on the new code, and what the mechanism does when it cannot.
  • Replay fidelity. Whether continuation reconstructs the same state the original run had, and what non-determinism it tolerates.
  • In-flight handling. Whether outstanding calls are cancelled, awaited, or abandoned when the stop is requested.
  • Suspension expiry. Whether paused runs can be aged out automatically with a defined terminal outcome.

Options

Option Best for Watch out for
Durable workflow engines with replay (Temporal, Restate, Azure Durable Functions) Pauses measured in hours or days with timers and external signals as native concepts Determinism rules constrain the code; versioning runs that are paused across a deployment is a discipline of its own
Callback-token patterns (Step Functions task tokens and equivalents) Waiting on a human or an external system without holding any compute The token must be stored, matched, and expired by you; a lost token is a run that waits forever
Framework checkpointing with explicit interrupt points Agent graphs where a human decision is part of the designed flow Checkpoint contents are framework-shaped; a library upgrade can strand runs paused under the old format
Explicit state machine persisted per step Teams wanting full control and no new infrastructure Every stopping point must be hand-written, and the applied-effects record is easy to forget
Queue plus correlation identifier Asynchronous continuation where the pause is naturally an awaited message Nothing enforces that a correlation ever arrives; expiry and dead-lettering must be designed in
Process-level checkpointing (CRIU, container or microVM snapshots) Resuming arbitrary in-progress computation with no code changes Captures memory, not meaning; open sockets, expired credentials, and already-applied effects are unresolved
Session store with stateless re-entry Conversational pauses where the state is small and the run is cheap to reconstitute Reconstruction drift: the rebuilt context is similar to the original rather than identical