Module recipe_yaml

Module recipe_yaml 

Source
Expand description

2026-09-26: A small YAML reader for recipe files; the workspace has no YAML dependency.

Owner: config (recipe YAML), read by the server’s recipe module and the bench gate’s recipe closure (gate::recipe_closure). Invariants:

  • parse returns Ok only for a document whose top level is a mapping.
  • A map line with no key: or at an unexpected indent, a list line without - , an empty key, or a key with neither a value nor a deeper block is an error, never skipped: a skipped key would change what gets served.

Supported, as the vendored recipes under tests/fixtures/recipes use them: key: scalar, nested maps by deeper indent, key: | and key: |- literal blocks, - item sequences, {} empty maps, # comments and blank lines. No other flow collection is parsed: key: [a, b] reads as the scalar [a, b].

Enums§

Yaml

Functions§

parse
2026-09-26: Parse a whole document. The top level must be a mapping.