Skip to main content

Module spec

Module spec 

Source
Expand description

Serde types + validation for the top-level params: block (#444).

params: declares a config’s trigger-time override surface: a typed, named set of values a caller supplies when the pipeline is run (via faucet run --param, faucet template run --param, or POST /v1/templates/{id}/runs). Declared params are referenced in the config as ${param.NAME} and bound by crate::params::bind.

Everything here is pure data + pure validation — no I/O, no interpolation.

Structs§

ParamSpec
One declared parameter.

Enums§

ParamType
The scalar type a param carries. Params are deliberately scalar-only: a param substitutes into a config value position, and structured overrides are what named templates / matrix rows are for.

Functions§

coerce
Coerce a caller-supplied value to the declared type.
validate
Fail-fast validation of a whole params: block, run at every entry point that touches params (config load, template registration, trigger).

Type Aliases§

ParamsSpec
The whole params: block — declaration order is irrelevant, so a sorted map keeps every rendering (schema, list output, audit) deterministic.