pub fn parse_chapter(text: &str) -> Result<ChapterManifest, String>Expand description
Parse chapter.toml text (all fields optional).
Like parse_recipe, unknown keys and tables are IGNORED rather than
rejected (COOK8.03). Rich 30-agents/40-atelier chapters across the
constellation carry an extended vocabulary (e.g. tags) beyond the core
title/order/summary, and every such chapter must embed and aggregate
into the complete catalog – rejecting unknown keys blocked embedding those
books (the EMBED-ALL HAZARD). Structural chapter linting stays with the
on-disk cookbook-lint gate.