pub fn document() -> StringExpand description
The whole schema as JSON, hash included.
One line of output; a consumer parses it, and a human reading it reaches for
a formatter. Deterministic: every roster it walks is a const array in
declaration order, so two runs on one build produce identical bytes.