Pipeline Module
The pipeline: per tier, a plain fold over that tier's pass list; between tiers, total transition functions (decision O1 - accumulating records, so reading an artifact that does not exist yet is a compile error, not a runtime one). Passes run strictly sequentially (decision O3); concurrency lives inside passes, where the mailbox batches it.
Functions and values
| Function or value |
Description
|
Full Usage:
generate config packageDir
Parameters:
GeneratorConfig
packageDir : string
Returns: Async<RenderModel>
|
Runs the whole pipeline against a package directory and returns the rendered model without touching the output directory - what tests diff against goldens.
|
Full Usage:
groupModules ctx shape
Parameters:
Context
shape : ShapeModel
Returns: GroupModule list
|
The modules a run writes: the entry package's, plus one per shipped group a declaration reached.
|
|
The generated module's name: the config override, the configured namespace, or the entry package's name under the O7 naming contract (`@scope/pkg-name` -> `Scope.PkgName`).
|
Full Usage:
run config packageDir outDir
Parameters:
GeneratorConfig
packageDir : string
outDir : string
Returns: Async<RunReport>
|
Runs the pipeline and writes the rendered files into `outDir`, creating it and the `groups/` directory a shipped group is written under if needed.
|
|
|
Full Usage:
toRender ctx shape findings
Parameters:
Context
shape : ShapeModel
findings : Finding list
Returns: RenderModel
|
Shape -> Render: declarations plus every finding of every earlier tier.
|
|
Harvest -> Resolve: the harvest is carried, the tables start empty.
|
|
Resolve -> Shape: everything resolved is carried, the declarations start empty.
|