Oi. Dispatch. Orchestrator
(oi v0.8.0)
Copy Markdown
Orchestrates barrier-synchronized execution of plan stages.
Fans out tasks per stage via the configured executor, collects results, enforces barrier before next stage. Results are merged into the drafting.
When conf.checkpoint is set, it is invoked before each stage with a
Config.checkpoint_event() and the current drafting. Returning :halt
stops the dispatch; the memory accumulated so far is returned as a
{:halted, drafting, stage_index} partial result.
Summary
Functions
@spec dispatch( Oi.Compile.Planning.Plan.t(), Oi.Dispatch.Drafting.t(), Oi.Dispatch.Config.t() ) :: {:ok, Oi.Dispatch.Drafting.t()} | {:halted, Oi.Dispatch.Drafting.t(), non_neg_integer()} | {:error, term()}