Skip to main content

Module controller_registry

Module controller_registry 

Source
Expand description

Loader for declarative *.controller.yaml registries.

The JSON-encoded ControllerManifest (validated by docs/contracts/controller_manifest.schema.json) remains the wire contract; YAML is a human-friendly authoring format that deserializes into the same Rust type via serde. A directory of YAML files becomes a vector of ControllerManifests ready for the scheduler’s existing validate() path.

Functions§

load_yaml_manifest_from_path
Load and validate a single manifest from disk.
load_yaml_manifests_from_dir
Walk a directory for *.controller.yaml files and return a deterministically ordered, validated manifest list. Duplicate controller_ids across files are rejected so a directory cannot silently ship two definitions of the same controller.
parse_yaml_manifest
Parse a single YAML manifest from raw text. The same ControllerManifest deserializer is reused so YAML and JSON cannot drift on field shape.