Summary
npx hyperframes check assumes one root composition per project directory. Some production layouts intentionally co-locate a variant set — several complete root-composition files in one directory (e.g. index.html, index-en.html, index-fr.html, index-h.html — locale × orientation), each a standalone composition, built and rendered one explicit file per invocation (never dir-discovered).
Running check over such a directory reports multiple_root_compositions for every intro, even though each composition is correct and there is no duplicate-render / duplicate-audio risk (the build always targets an explicit file, not the directory).
This is an enhancement request for a first-class way to tell check that a directory holds an intentional variant set — distinct from the accidental "two compositions collided in one folder" case the current warning is designed for.
Impact today
- A clean, human-friendly layout (one directory per intro, its locale × orientation variants side by side) cannot pass a dir-level
check at 0 findings, so "require 0 findings" can't be applied literally to it.
- The only alternative that satisfies the current discovery model is to explode an N-directory layout into N×M single-composition subdirectories, purely to appease dir-discovery — which trades a tidy structure for a mechanical one.
Current workaround
Gate per-file: run check against each composition file in isolation (a wrapper that presents one root at a time). It works and reports all real per-composition findings, but it's external tooling every consumer re-implements, and it gives up the convenience of a single dir-level check.
Requested enhancement
A first-class way to declare an intentional set of sibling root compositions in one directory — either of:
check --variants — a flag that treats each root composition in the directory as an independent unit, checks each in isolation, and suppresses multiple_root_compositions while still surfacing every real per-composition finding.
- A variant manifest — e.g. a
variants.json, or a data-variant-set marker on the roots, that enumerates the sibling compositions so check (and potentially render) understand the set explicitly.
Either would let a co-located variant layout pass a clean dir-level check without restructuring.
Concrete context
A real layout that hits this: a set of narrated intro compositions, each shipped as es/en/fr/pt × normal/vertical variants in one directory per intro. Every composition passes check individually (Runtime / Layout / Motion / Contrast all clean); the only dir-level finding is multiple_root_compositions, which is purely the deliberate co-location.
Related
Summary
npx hyperframes checkassumes one root composition per project directory. Some production layouts intentionally co-locate a variant set — several complete root-composition files in one directory (e.g.index.html,index-en.html,index-fr.html,index-h.html— locale × orientation), each a standalone composition, built and rendered one explicit file per invocation (never dir-discovered).Running
checkover such a directory reportsmultiple_root_compositionsfor every intro, even though each composition is correct and there is no duplicate-render / duplicate-audio risk (the build always targets an explicit file, not the directory).This is an enhancement request for a first-class way to tell
checkthat a directory holds an intentional variant set — distinct from the accidental "two compositions collided in one folder" case the current warning is designed for.Impact today
checkat 0 findings, so "require 0 findings" can't be applied literally to it.Current workaround
Gate per-file: run
checkagainst each composition file in isolation (a wrapper that presents one root at a time). It works and reports all real per-composition findings, but it's external tooling every consumer re-implements, and it gives up the convenience of a single dir-levelcheck.Requested enhancement
A first-class way to declare an intentional set of sibling root compositions in one directory — either of:
check --variants— a flag that treats each root composition in the directory as an independent unit, checks each in isolation, and suppressesmultiple_root_compositionswhile still surfacing every real per-composition finding.variants.json, or adata-variant-setmarker on the roots, that enumerates the sibling compositions socheck(and potentiallyrender) understand the set explicitly.Either would let a co-located variant layout pass a clean dir-level
checkwithout restructuring.Concrete context
A real layout that hits this: a set of narrated intro compositions, each shipped as
es/en/fr/pt × normal/verticalvariants in one directory per intro. Every composition passescheckindividually (Runtime / Layout / Motion / Contrast all clean); the only dir-level finding ismultiple_root_compositions, which is purely the deliberate co-location.Related
data-endon<audio>that hasdata-durationand nodata-end). Independent of this request.