Docket.Run.PendingWrite (docket v0.1.0)

Copy Markdown View Source

Completed result of one task in the active superstep, held on Docket.Run.pending_writes until the superstep's update barrier.

While sibling tasks are still retrying, completed results are committed here so recovery never re-executes them — but they stay invisible to channels, guards, and snapshots until the barrier applies the whole superstep at once.

kind is :update for a validated state-update map or :interrupt for an interrupt request awaiting barrier registration.

Summary

Types

t()

@type t() :: %Docket.Run.PendingWrite{
  attempt: pos_integer(),
  kind: :update | :interrupt,
  node_id: String.t(),
  task_id: String.t(),
  value: map() | Docket.Interrupt.t()
}