Static ALF pipeline for stepwise workflows.
This pipeline interprets the compiled spec (IR) in-band; we do not generate dynamic pipeline modules for disk-loaded workflows.
The stage order is defined in Mobus.Stepwise.SpecHelpers.pipeline_stage_modules/0
— both the foundation and workflow_stem pipelines reference the same list.
Summary
Functions
Ensures the ALF pipeline process is running, starting it if necessary.
Functions
@spec components() :: [map()]
Ensures the ALF pipeline process is running, starting it if necessary.
Checks if the pipeline process is registered. If not, starts it with the
given options. Supports sync: true for deterministic test execution.
Parameters
opts— keyword list passed to the pipeline'sstart/1callback (injected byuse ALF.DSL). Common options::sync— whentrue, pipeline runs synchronously (useful for tests)
Returns
:ok— pipeline is running{:error, reason}— pipeline failed to start
Examples
:ok = Stepwise.ensure_started(sync: true)
@spec flow(map(), list(), Keyword.t()) :: Enumerable.t()
@spec start() :: :ok
@spec start(list()) :: :ok
@spec started?() :: true | false
@spec stream(Enumerable.t(), Keyword.t()) :: Enumerable.t()