Files
heygen-com__hyperframes/skills-manifest.json
T
Miguel Ángel b2fc18b2df fix(skills,lint): correct composition-contract claims the code contradicts (#3468)
The runtime absorbed a series of authoring mistakes over time and `runtime/init.ts`
says so in its own comments, but the skills kept teaching the old rules. Four of
them actively cost an agent a failing run: add `crossorigin` (lint rejects it
unconditionally), never build a timeline inside `async` (lint calls that the
documented contract), never `gsap.set` later-scene clips (two fixHints instruct
exactly that), and 12 copyable media snippets with no `id`, which render silent.

Corrected in every place each claim appeared, including `hyperframes-animation`,
three workflow scripts, the scaffolded project instructions, the CLI `docs`
command, and the public docs site: `data-track-index` is a Studio display lane
the render never reads, `class="clip"` is a layout convention rather than a
visibility requirement, timed elements may nest, the visibility window is
half-open, sub-composition host dimensions are backfilled, and the root-fill rule
applies only to the layered-composite path.

Behaviour changes, each backed by a render rather than by reading code:

- `timeline_registry_missing_init` deleted. The runtime creates the registry
  before any inline script; a composition without the guard line renders and
  animates correctly.
- `video_nested_in_timed_element` kept, message corrected. A rendered repro shows
  the nested-with-local-start case really does break, so the rule guards a real
  defect, but nothing is "FROZEN": the extractor ignores the wrapper's offset
  while visibility uses it, so the clip shows wrong frames and then vanishes.
- `mediaRenderIds` now stamps media whose source is a `<source>` child, closing a
  duplicate-id gap the old `[src]`-only selector left open.
- Stale messages fixed on `subcomposition_root_styled_by_class` and
  `deprecated_data_layer`.

`coreSkillContent.test.ts` pinned the literal sentence that made root
`data-start` look required, so it is narrowed to structure plus the regression it
genuinely catches.

Not covered, and flagged in the PR: the media global-vs-local start heuristic in
`runtime/init.ts` is the root cause behind the nested-video defect. Removing it
changes the meaning of existing compositions and needs its own deprecation.
2026-08-24 18:04:39 -04:00

86 lines
1.7 KiB
JSON

{
"source": "heygen-com/hyperframes",
"skills": {
"embedded-captions": {
"hash": "ab099eb22321e865",
"files": 138
},
"faceless-explainer": {
"hash": "a7080101c30ceeb7",
"files": 24
},
"figma": {
"hash": "642cce1b5e211182",
"files": 2
},
"general-video": {
"hash": "16898c02677d09bc",
"files": 4
},
"hyperframes": {
"hash": "5be130da8d7ff59e",
"files": 17
},
"hyperframes-animation": {
"hash": "a5be218c0b0fe377",
"files": 121
},
"hyperframes-audio": {
"hash": "84035d8ce2a61fbc",
"files": 7
},
"hyperframes-cli": {
"hash": "5d02a1713635e7e7",
"files": 11
},
"hyperframes-core": {
"hash": "587492c7413387f6",
"files": 20
},
"hyperframes-creative": {
"hash": "87bc09ec744313c8",
"files": 78
},
"hyperframes-keyframes": {
"hash": "6bc62531ecea9a52",
"files": 3
},
"hyperframes-registry": {
"hash": "d6dfcc8ceb7c8178",
"files": 12
},
"media-use": {
"hash": "1b0ce647f5c7df95",
"files": 152
},
"motion-graphics": {
"hash": "853ac75cbab69036",
"files": 23
},
"music-to-video": {
"hash": "39282be90a90f89f",
"files": 132
},
"pr-to-video": {
"hash": "9ce0b5a7c75e969f",
"files": 30
},
"product-launch-video": {
"hash": "01256d74e511f163",
"files": 29
},
"remotion-to-hyperframes": {
"hash": "79fcf8e9641d126e",
"files": 70
},
"slideshow": {
"hash": "c68fb51d48b80802",
"files": 2
},
"talking-head-recut": {
"hash": "2eaa83d6889537a5",
"files": 28
}
}
}