mirror of
https://github.com/heygen-com/hyperframes.git
synced 2026-10-30 17:27:09 +00:00
* fix(engine): a render fails when a composition script throws before its timeline binds * fix(engine): an unrelated page error no longer fails a render whose timeline registers late * fix(engine): only the composition's own scripts fail a render, local or distributed * style(engine): format the script failure change * fix(engine): a third-party browser rejection no longer fails a render * refactor(engine): one page URL for navigation and error attribution * fix(engine): a rejection after a hash change or in an iframe no longer fails a render * fix(engine): a widget's error no longer fails a render once its script is inlined * fix(core): name injected and inlined scripts without building code from library input * fix(engine): a third-party embed's eval or inserted script no longer fails a render * fix(producer): a widget's inline handler or a sub-composition no longer misreports a render * refactor(engine): read each script response once and keep comments within 120 characters * fix(engine): a scene that throws after registering its timeline no longer cuts a render short * fix(engine): a composition script failure names the error and its real cause * fix(engine): a failed VFX chain fails the render at once instead of shipping a missing layer * fix(core): a VFX layer that is empty on one frame renders empty instead of failing or going stale * fix(core): a VFX layer that grows from zero size renders instead of staying missing * fix(core): a VFX layer hidden or late while empty renders once it has a size * test(producer): cover a VFX layer that is 0×0 under a host that starts later * test(producer): pin both VFX 0×0 marks, with a GSAP-shaped wipe and a real late host * test(producer): a late VFX host with a GSAP wipe catches a walk that skips hidden hosts
76 lines
4.0 KiB
JSON
76 lines
4.0 KiB
JSON
{
|
|
"guards": {
|
|
"scripts/check-media-use-copy-parity.test.mjs": [
|
|
"skills/media-use/scripts/lib/**",
|
|
"packages/cli/src/media-use/lib/**",
|
|
"scripts/generate-skill-module-copies.mjs",
|
|
"skills/hyperframes/scripts/lib/frame-packets-core.mjs",
|
|
"skills/media-use/audio/scripts/lib/bgm-volume.mjs"
|
|
],
|
|
"scripts/check-test-reachability.test.mjs": [
|
|
".github/workflows/ci.yml",
|
|
"**/package.json",
|
|
"**/*.test.{mjs,ts,tsx}"
|
|
],
|
|
"scripts/creator-editing-capabilities.test.mjs": [
|
|
"skills/**",
|
|
"packages/core/**",
|
|
"packages/engine/**"
|
|
],
|
|
"scripts/registry-primitive-payloads.test.ts": ["registry/**"],
|
|
"scripts/generate-catalog-previews.test.ts": [
|
|
"registry/**",
|
|
"scripts/**",
|
|
"packages/producer/**"
|
|
],
|
|
"scripts/generate-catalog-payloads.test.ts": ["registry/**", "scripts/**"],
|
|
"skills/product-launch-video/scripts/build-frame-subsets.test.mjs": [
|
|
"scripts/generate-captured-font-copies.mjs",
|
|
"skills/product-launch-video/scripts/build-frame.mjs",
|
|
"skills/product-launch-video/scripts/captions.mjs",
|
|
"skills/product-launch-video/scripts/lib/captured-fonts.mjs",
|
|
"skills/faceless-explainer/scripts/build-frame.mjs",
|
|
"skills/faceless-explainer/scripts/captions.mjs",
|
|
"skills/faceless-explainer/scripts/lib/captured-fonts.mjs",
|
|
"skills/pr-to-video/scripts/build-frame.mjs",
|
|
"skills/pr-to-video/scripts/captions.mjs",
|
|
"skills/pr-to-video/scripts/lib/captured-fonts.mjs"
|
|
],
|
|
"scripts/check-skill-import-boundaries.test.mjs": ["skills/**"]
|
|
},
|
|
"runners": [
|
|
{
|
|
"cwd": ".",
|
|
"command": "set -euo pipefail\nmapfile -t SKILLS_TESTS < <(find skills packages/cli/src/media-use -type f -name \"*.test.mjs\" | sort)\nif [ \"${#SKILLS_TESTS[@]}\" -eq 0 ]; then\necho \"::error::No skills/**/*.test.mjs files found. Did the layout change?\"\nexit 1\nfi\nSKILLS_TESTS+=(scripts/check-media-use-copy-parity.test.mjs scripts/creator-editing-capabilities.test.mjs)\nprintf 'Running %d skills test file(s):\\n' \"${#SKILLS_TESTS[@]}\"\nprintf ' * %s\\n' \"${SKILLS_TESTS[@]}\"\nnode --import ./packages/cli/scripts/test-home.mjs --test \"${SKILLS_TESTS[@]}\"",
|
|
"tests": [
|
|
"skills/**/*.test.mjs",
|
|
"packages/cli/src/media-use/**/*.test.mjs",
|
|
"scripts/check-media-use-copy-parity.test.mjs",
|
|
"scripts/creator-editing-capabilities.test.mjs"
|
|
],
|
|
"sources": {},
|
|
"reason": "Shell find plus an explicit parity file; exact command match invalidates this mapping on edits."
|
|
},
|
|
{
|
|
"cwd": ".",
|
|
"command": "bun run producer:test:${{ matrix.lane }}",
|
|
"tests": [
|
|
"packages/producer/src/**/*.test.ts",
|
|
"packages/producer/scripts/test-classification.test.mjs",
|
|
"packages/producer/tests/**/*.test.ts"
|
|
],
|
|
"sources": {
|
|
"packages/producer/scripts/run-test-lane.mjs": "bff02680f19eebcce0df72cdeedbbc05edfdcede3f3f60658fc0cb18ed8c59f6",
|
|
"packages/producer/scripts/test-classification.mjs": "ae0cd9e09bf93df932d41649855f86ebb2230b25aabf3e56355fed8f101a0322",
|
|
".github/workflows/ci.yml#job#producer-source-tests": "45da72aa6cf08cdfd5bcf5311e89f12af4842f9eebc6735df19da8c02f4d4864",
|
|
"packages/producer/package.json#script#test:unit": "ae6beda8319d166774be958ea5593cd27dbf7f6c9bce1d787a3fe28dfc3477b1",
|
|
"packages/producer/package.json#script#test:integration": "008589f37d026877595a13501cbb66abd5cbe50e21fdcac6904f45466c3f475d",
|
|
"packages/producer/package.json#script#test:classification": "4ad50d88c81de374dd6ef8a53d702a4b1901483837ecd3d833b1cb0c9a29a058",
|
|
"package.json#script#producer:test:unit": "ded6d4183d455d1f414e41d15794c1aef5323e53b5ea5e2ff349e3bb049c18db",
|
|
"package.json#script#producer:test:integration": "8bb545947f4f8fef3bd5c6c9b1bcb394c7c942d7a3ab90cf4540c662572a278e"
|
|
},
|
|
"reason": "Both unit and integration matrix lanes discover tests under src and tests; workflow and runner sources are pinned to invalidate changed selection."
|
|
}
|
|
]
|
|
}
|