Skip to content
Français

WorkflowCheckpoint

import type { WorkflowCheckpoint } from "@elie-laloum/outpost";
  • formatRequired
    1
    Serialization format version, always 1.
  • identityRequired
    string
    SHA-256 of the workflow name, checkpoint version and task graph: keys, dependencies, timeout, retry, condition, gate, loop and interaction settings. A different identity rejects the checkpoint.
  • executionIdRequired
    string
    Execution identity kept across resumes. context.idempotencyKey derives from it and the task key, so it stays the same for each task.
  • recordsRequired
    readonly Readonly<TaskRecord>[]
    One record per task: status, attempts, timestamps, error, usage receipts and any gate, input, quota, loop or cache state.
  • valuesRequired
    Readonly<Record<string, WorkflowCheckpointValue>>
    Output of each done task, keyed by task key. Restored on resume, so done tasks never run again.
  • usageRequired
    WorkflowUsage
    Attempts and token usage summed across every resume; its attempts must equal the sum of the records’ attempts. A resumed run’s budget continues from these totals.
export interface WorkflowCheckpoint {
  readonly format: 1;
  readonly identity: string;
  readonly executionId: string;
  readonly records: readonly Readonly<TaskRecord>[];
  readonly values: Readonly<Record<string, WorkflowCheckpointValue>>;
  readonly usage: WorkflowUsage;
}