Durable.Executor.StepRunner (Durable v0.1.0-rc)

View Source

Executes individual workflow steps with retry logic and log capture.

Pipeline Model

Steps receive data from the previous step and return {:ok, data} or {:error, reason}. The first step receives the workflow input.

Summary

Functions

Executes a step with retry logic.

Types

result()

@type result() ::
  {:ok, map()}
  | {:error, any()}
  | {:decision, atom(), map()}
  | {:sleep, keyword()}
  | {:wait_for_event, keyword()}
  | {:wait_for_input, keyword()}
  | {:wait_for_any, keyword()}
  | {:wait_for_all, keyword()}
  | {:call_workflow, keyword()}

Functions

execute(step, data, workflow_id, config)

Executes a step with retry logic.

Arguments

  • step - The step definition
  • data - The data to pass to the step (from previous step or workflow input)
  • workflow_id - The workflow execution ID
  • config - The Durable config

Returns {:ok, data} on success or {:error, reason} after all retries exhausted.