Defines functions to start and to stop a pipeline
Summary
Functions
Prepares the declared stages (FX-007): validates counts and prepares each
stage's options — a module stage's init/1 runs here, in the starting
caller, once per declared occurrence. The prepared list is what the sync
engine executes; the async engine prepares per replica through the same
helpers. Prepared options are reused for every request and for
supervisor-driven restarts; initialization never runs per packet.
Functions
@spec prepare_stages(module(), map() | keyword()) :: [FlowExtra.StageOpts.t()]
Prepares the declared stages (FX-007): validates counts and prepares each
stage's options — a module stage's init/1 runs here, in the starting
caller, once per declared occurrence. The prepared list is what the sync
engine executes; the async engine prepares per replica through the same
helpers. Prepared options are reused for every request and for
supervisor-driven restarts; initialization never runs per packet.
@spec start(module(), map()) :: FlowExtra.Pipeline.t()
@spec supervised_start(module(), pid(), map()) :: FlowExtra.Pipeline.t()