A composition's itemModel patterns are never compiled, so every $each field is empty
Found while probing palette as a composition (SPEC-165).
A composition's frontmatter accepts itemModel, emitTag and emitAttributes on a content field (FIELD_KEYS, packages/runes/src/lib/composition.ts). This is the same item extraction cast uses in TypeScript (plugins/business/src/tags/cast.ts). An each over the field then binds $each.<name> for every emitted attribute.
But in YAML a pattern is a string. parseHeadingExtract compiles its patterns into a RegExp, while parseFields passes itemModel through untouched. The resolver applies a pattern only when it is a RegExp (field.pattern instanceof RegExp, packages/runes/src/lib/resolver.ts:788), so a string pattern is skipped with no error.