mirror of
https://github.com/heygen-com/hyperframes.git
synced 2026-09-03 04:38:33 +00:00
`<hf-audio-group>` appeared in no skill, doc or registry file. The audio skill did cover groups, but only as membership tags to carve against — and its example groups three clips with no group ELEMENT at all. So an agent following the skill could never emit a group chain, fader or automation: it was never told the element exists. Adds "One bus for many tracks": the element, the five attributes it carries, and when to reach for it — the same compressor wanted on four narration clips is four chains that drift, and a compressor on the bus hears the whole voice instead of a third of it. Two things the skill has to say because they are the ways to get this wrong: - **Group automation is composition time.** A bus has no `data-start`, so `t: 0` in a group lane is the composition's start, not a clip's. Moving an envelope from a clip up onto its bus changes what its numbers mean. - **A carve stays on the clip.** `data-fx-carve` is not a group attribute. The one thing the skill already said about groups was about carve, which invites exactly that wrong inference; the bed carries the carve, pointed AT a group. Also corrects two framings that the bus makes false: the SKILL and attributes.md both said all three attributes go "on the audio/video element itself", when two of them also go on a bus. No flag needed, and the skill says so: the `audio-groups` canary gates the Studio UI for building groups, while a hand-authored bus parses, plays and renders for everyone. Verified rather than asserted: the documented example was run through `resolveAudioGroups` and `parseAudioFxChain` (group resolves, volume 0.9, both members found, compressor+peaking validate), its parameters checked against fx-registry.md ranges, and the whole pattern linted — the only findings were the throwaway fixture's own missing `data-start` and timeline registration, nothing about the bus. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>