Persist a checkpoint snapshot.
If a checkpoint with the same id already exists it is overwritten.
The runtime awaits each save and does not retry one that rejects: the run that
asked for the checkpoint ends with the store's error, which GraphRuntime.stream()
throws, and a resume by the run id continues from the last checkpoint the store
saved. When a save inside a parallel batch rejects, the run ends with the error
once the batch's other nodes have finished.
The snapshot to persist.
Load a checkpoint by its unique checkpoint identifier.
The exact checkpoint id assigned at save-time.
The matching checkpoint, or null when none exists.
Load a checkpoint for the given runId.
When nodeId is supplied, returns the most recent checkpoint for that specific
node within the run. When nodeId is omitted, returns the most recent checkpoint
for the run regardless of node (equivalent to latest(runId)). The most recent
checkpoint has the latest timestamp and, of checkpoints with the same
timestamp, was saved last: the runtime can save several in one millisecond.
The graph run identifier.
Optional nodeId: stringOptional node filter.
The matching checkpoint, or null when none exists.
Return the most recently persisted checkpoint for a run, or null when the run
has no checkpoints. Of checkpoints with the same timestamp, the one saved last
is the most recent.
The graph run identifier.
List lightweight metadata descriptors for all checkpoints belonging to a graph.
The compiled graph identifier.
Optional options: { Optional limit?: numberOptional runArray of CheckpointMetadata, sorted by timestamp descending.
Create a new run branching from an existing checkpoint.
The operation deep-clones the source checkpoint, assigns a fresh runId and
checkpoint id, applies any patchState overrides, persists the new checkpoint,
and returns the new runId.
The checkpoint to fork from.
Optional patchState: Partial<GraphState<unknown, unknown, unknown>>Optional partial GraphState overrides applied after cloning.
The new runId for the forked run.
In-memory
ICheckpointStoreimplementation.All checkpoints are stored in a
Mapkeyed by checkpointid. Scans are O(n) over the number of stored checkpoints — acceptable for test workloads; a production store should use indexed secondary keys (runId, graphId).Example