m3resp.workflows.compile_workflow#

m3resp.workflows.compile_workflow(spec, *, available=None)[source]#

Validate a workflow and resolve the settings needed to run its steps.

Parameters:
  • spec (WorkflowSpec) – Parsed workflow with ordered steps and a path-resolution root.

  • available (set[str] | None) – Extra context keys supplied by the caller before execution.

Returns:

Steps in spec order with operation names, input/output

bindings, defaults and settings resolved. @name references use spec.inputs; path settings are resolved relative to spec.root.

Return type:

CompiledWorkflow

Raises:
  • UnknownStepError – If the first structural error names an unknown step.

  • WorkflowSpecError – If the first structural error concerns bindings, parameters or other workflow structure.