diff --git a/refactor/baselines/ci-source-firefox-validation.json b/refactor/baselines/ci-source-firefox-validation.json new file mode 100644 index 000000000..615b3c077 --- /dev/null +++ b/refactor/baselines/ci-source-firefox-validation.json @@ -0,0 +1,1597 @@ +{ + "task": "CI-01", + "status": "doing", + "sourceHead": "4545c436795b3c9ec1600ea2fab8adafe9bcf41b", + "environment": { + "node": "24.21.0", + "yarn": "1.22.22", + "platform": "win32", + "browsers": [ + "155.0" + ], + "remoteCI": false, + "physicalDevices": false + }, + "directory": "refactor/.cache/ci-source-firefox-full-report", + "reportSha256": "96dc423147a470c9abc06c5fb3acaa1293f4e8805f7b0d6fea561e01ee854cdf", + "log": { + "file": "refactor/.cache/ci-source-firefox-full.log", + "sha256": "e0d574f85333cda03d8d98d9371a8b363b35269860647dddd8bfda0984391552" + }, + "invocation": { + "scope": "source", + "args": [ + "test", + "--config=playwright.source.config.js", + "--project=firefox", + "--workers=2" + ], + "node": "24.21.0", + "artifactMap": null, + "inputs": [] + }, + "result": { + "scope": "source", + "exitCode": 1, + "signal": null, + "args": [ + "test", + "--config=playwright.source.config.js", + "--project=firefox", + "--workers=2" + ] + }, + "stats": { + "startTime": "2026-09-15T12:45:02.494Z", + "duration": 1460175.3969999999, + "expected": 1662, + "skipped": 0, + "unexpected": 2, + "flaky": 0 + }, + "files": 174, + "tests": 1664, + "retries": 0, + "groups": [ + { + "file": "accessibility-contextmenu.spec.js", + "expected": 13, + "unexpected": 0, + "flaky": 0, + "skipped": 0, + "durationMs": 11340 + }, + { + "file": "accessibility-controls.spec.js", + "expected": 9, + "unexpected": 0, + "flaky": 0, + "skipped": 0, + "durationMs": 6121 + }, + { + "file": "accessibility-info.spec.js", + "expected": 7, + "unexpected": 0, + "flaky": 0, + "skipped": 0, + "durationMs": 3331 + }, + { + "file": "accessibility-integration.spec.js", + "expected": 4, + "unexpected": 0, + "flaky": 0, + "skipped": 0, + "durationMs": 2639 + }, + { + "file": "accessibility-lock.spec.js", + "expected": 6, + "unexpected": 0, + "flaky": 0, + "skipped": 0, + "durationMs": 3510 + }, + { + "file": "accessibility-mini.spec.js", + "expected": 6, + "unexpected": 0, + "flaky": 0, + "skipped": 0, + "durationMs": 4161 + }, + { + "file": "accessibility-selector.spec.js", + "expected": 10, + "unexpected": 0, + "flaky": 0, + "skipped": 0, + "durationMs": 6142 + }, + { + "file": "accessibility-setting.spec.js", + "expected": 12, + "unexpected": 0, + "flaky": 0, + "skipped": 0, + "durationMs": 8658 + }, + { + "file": "accessibility-slider.spec.js", + "expected": 4, + "unexpected": 0, + "flaky": 0, + "skipped": 0, + "durationMs": 3052 + }, + { + "file": "accessibility.spec.js", + "expected": 6, + "unexpected": 0, + "flaky": 0, + "skipped": 0, + "durationMs": 5322 + }, + { + "file": "ads-editor-types.spec.js", + "expected": 1, + "unexpected": 0, + "flaky": 0, + "skipped": 0, + "durationMs": 1404 + }, + { + "file": "ads-ui.spec.js", + "expected": 9, + "unexpected": 0, + "flaky": 0, + "skipped": 0, + "durationMs": 14642 + }, + { + "file": "ads.spec.js", + "expected": 48, + "unexpected": 0, + "flaky": 0, + "skipped": 0, + "durationMs": 127607 + }, + { + "file": "ambilight-lifecycle.spec.js", + "expected": 6, + "unexpected": 0, + "flaky": 0, + "skipped": 0, + "durationMs": 6786 + }, + { + "file": "ambilight-proxy.spec.js", + "expected": 3, + "unexpected": 0, + "flaky": 0, + "skipped": 0, + "durationMs": 1677 + }, + { + "file": "ambilight.spec.js", + "expected": 18, + "unexpected": 0, + "flaky": 0, + "skipped": 0, + "durationMs": 17737 + }, + { + "file": "asr-audio-track.spec.js", + "expected": 4, + "unexpected": 0, + "flaky": 0, + "skipped": 0, + "durationMs": 15122 + }, + { + "file": "asr-audio.spec.js", + "expected": 9, + "unexpected": 0, + "flaky": 0, + "skipped": 0, + "durationMs": 20258 + }, + { + "file": "asr-capture-cors.spec.js", + "expected": 2, + "unexpected": 0, + "flaky": 0, + "skipped": 0, + "durationMs": 12683 + }, + { + "file": "asr-cors.spec.js", + "expected": 12, + "unexpected": 0, + "flaky": 0, + "skipped": 0, + "durationMs": 34758 + }, + { + "file": "asr-fallback.spec.js", + "expected": 9, + "unexpected": 0, + "flaky": 0, + "skipped": 0, + "durationMs": 26498 + }, + { + "file": "asr-initial-error.spec.js", + "expected": 12, + "unexpected": 0, + "flaky": 0, + "skipped": 0, + "durationMs": 11748 + }, + { + "file": "asr-media-error.spec.js", + "expected": 6, + "unexpected": 0, + "flaky": 0, + "skipped": 0, + "durationMs": 10429 + }, + { + "file": "asr-no-audio.spec.js", + "expected": 4, + "unexpected": 0, + "flaky": 0, + "skipped": 0, + "durationMs": 12928 + }, + { + "file": "asr-playback.spec.js", + "expected": 6, + "unexpected": 0, + "flaky": 0, + "skipped": 0, + "durationMs": 25849 + }, + { + "file": "audio-buffering.spec.js", + "expected": 8, + "unexpected": 0, + "flaky": 0, + "skipped": 0, + "durationMs": 42912 + }, + { + "file": "audio-combinations.spec.js", + "expected": 12, + "unexpected": 0, + "flaky": 0, + "skipped": 0, + "durationMs": 21440 + }, + { + "file": "audio-editor-types.spec.js", + "expected": 1, + "unexpected": 0, + "flaky": 0, + "skipped": 0, + "durationMs": 1618 + }, + { + "file": "audio-track.spec.js", + "expected": 14, + "unexpected": 0, + "flaky": 0, + "skipped": 0, + "durationMs": 23784 + }, + { + "file": "auto-playback.spec.js", + "expected": 15, + "unexpected": 0, + "flaky": 0, + "skipped": 0, + "durationMs": 10677 + }, + { + "file": "auto-thumbnail-lifecycle.spec.js", + "expected": 10, + "unexpected": 0, + "flaky": 0, + "skipped": 0, + "durationMs": 5263 + }, + { + "file": "auto-thumbnail-pixels.spec.js", + "expected": 2, + "unexpected": 0, + "flaky": 0, + "skipped": 0, + "durationMs": 2172 + }, + { + "file": "auto-thumbnail-registration.spec.js", + "expected": 2, + "unexpected": 0, + "flaky": 0, + "skipped": 0, + "durationMs": 933 + }, + { + "file": "auto-thumbnail.spec.js", + "expected": 3, + "unexpected": 0, + "flaky": 0, + "skipped": 0, + "durationMs": 3947 + }, + { + "file": "builtin-layers.spec.js", + "expected": 15, + "unexpected": 0, + "flaky": 0, + "skipped": 0, + "durationMs": 6989 + }, + { + "file": "canvas-dpip.spec.js", + "expected": 6, + "unexpected": 0, + "flaky": 0, + "skipped": 0, + "durationMs": 15896 + }, + { + "file": "canvas-lifecycle.spec.js", + "expected": 6, + "unexpected": 0, + "flaky": 0, + "skipped": 0, + "durationMs": 5747 + }, + { + "file": "canvas-subtitles.spec.js", + "expected": 2, + "unexpected": 0, + "flaky": 0, + "skipped": 0, + "durationMs": 2206 + }, + { + "file": "canvas.spec.js", + "expected": 14, + "unexpected": 0, + "flaky": 0, + "skipped": 0, + "durationMs": 15313 + }, + { + "file": "chapter-combinations.spec.js", + "expected": 20, + "unexpected": 0, + "flaky": 0, + "skipped": 0, + "durationMs": 33725 + }, + { + "file": "chapter-hover.spec.js", + "expected": 2, + "unexpected": 0, + "flaky": 0, + "skipped": 0, + "durationMs": 3609 + }, + { + "file": "chapter.spec.js", + "expected": 14, + "unexpected": 0, + "flaky": 0, + "skipped": 0, + "durationMs": 8599 + }, + { + "file": "chromecast-lifecycle.spec.js", + "expected": 15, + "unexpected": 0, + "flaky": 0, + "skipped": 0, + "durationMs": 15881 + }, + { + "file": "components.spec.js", + "expected": 31, + "unexpected": 0, + "flaky": 0, + "skipped": 0, + "durationMs": 17271 + }, + { + "file": "danmuku-baseline.spec.js", + "expected": 16, + "unexpected": 0, + "flaky": 0, + "skipped": 0, + "durationMs": 42455 + }, + { + "file": "danmuku-dpip.spec.js", + "expected": 16, + "unexpected": 0, + "flaky": 0, + "skipped": 0, + "durationMs": 129098 + }, + { + "file": "danmuku-fullscreen.spec.js", + "expected": 8, + "unexpected": 0, + "flaky": 0, + "skipped": 0, + "durationMs": 41394 + }, + { + "file": "danmuku-heatmap-density.spec.js", + "expected": 6, + "unexpected": 0, + "flaky": 0, + "skipped": 0, + "durationMs": 12645 + }, + { + "file": "danmuku-input.spec.js", + "expected": 8, + "unexpected": 0, + "flaky": 0, + "skipped": 0, + "durationMs": 4811 + }, + { + "file": "danmuku-lifetime.spec.js", + "expected": 16, + "unexpected": 0, + "flaky": 0, + "skipped": 0, + "durationMs": 49236 + }, + { + "file": "danmuku-load-baseline.spec.js", + "expected": 2, + "unexpected": 0, + "flaky": 0, + "skipped": 0, + "durationMs": 11755 + }, + { + "file": "danmuku-mask-boundary.spec.js", + "expected": 2, + "unexpected": 0, + "flaky": 0, + "skipped": 0, + "durationMs": 2131 + }, + { + "file": "danmuku-mask-native.spec.js", + "expected": 9, + "unexpected": 0, + "flaky": 0, + "skipped": 0, + "durationMs": 129958 + }, + { + "file": "danmuku-resources.spec.js", + "expected": 16, + "unexpected": 0, + "flaky": 0, + "skipped": 0, + "durationMs": 10545 + }, + { + "file": "danmuku-scheduler.spec.js", + "expected": 22, + "unexpected": 0, + "flaky": 0, + "skipped": 0, + "durationMs": 51249 + }, + { + "file": "danmuku-stability.spec.js", + "expected": 8, + "unexpected": 0, + "flaky": 0, + "skipped": 0, + "durationMs": 352580 + }, + { + "file": "danmuku-timing-diagnostic.spec.js", + "expected": 4, + "unexpected": 0, + "flaky": 0, + "skipped": 0, + "durationMs": 15408 + }, + { + "file": "dash-control.spec.js", + "expected": 32, + "unexpected": 0, + "flaky": 0, + "skipped": 0, + "durationMs": 41821 + }, + { + "file": "dash-editor-types.spec.js", + "expected": 1, + "unexpected": 0, + "flaky": 0, + "skipped": 0, + "durationMs": 2369 + }, + { + "file": "dash-sdk.spec.js", + "expected": 49, + "unexpected": 1, + "flaky": 0, + "skipped": 0, + "durationMs": 160935 + }, + { + "file": "declarations.spec.js", + "expected": 4, + "unexpected": 0, + "flaky": 0, + "skipped": 0, + "durationMs": 2483 + }, + { + "file": "display-mini.spec.js", + "expected": 20, + "unexpected": 0, + "flaky": 0, + "skipped": 0, + "durationMs": 9901 + }, + { + "file": "display-native.spec.js", + "expected": 15, + "unexpected": 0, + "flaky": 0, + "skipped": 0, + "durationMs": 7604 + }, + { + "file": "display-orientation.spec.js", + "expected": 10, + "unexpected": 0, + "flaky": 0, + "skipped": 0, + "durationMs": 5467 + }, + { + "file": "display-pip-webkit.spec.js", + "expected": 7, + "unexpected": 0, + "flaky": 0, + "skipped": 0, + "durationMs": 3554 + }, + { + "file": "display-pip.spec.js", + "expected": 10, + "unexpected": 0, + "flaky": 0, + "skipped": 0, + "durationMs": 4785 + }, + { + "file": "display-sizing.spec.js", + "expected": 11, + "unexpected": 0, + "flaky": 0, + "skipped": 0, + "durationMs": 5004 + }, + { + "file": "display-video-fullscreen.spec.js", + "expected": 6, + "unexpected": 0, + "flaky": 0, + "skipped": 0, + "durationMs": 2857 + }, + { + "file": "display-web.spec.js", + "expected": 22, + "unexpected": 0, + "flaky": 0, + "skipped": 0, + "durationMs": 8742 + }, + { + "file": "docs-smoke.spec.js", + "expected": 11, + "unexpected": 0, + "flaky": 0, + "skipped": 0, + "durationMs": 9256 + }, + { + "file": "document-audio.spec.js", + "expected": 2, + "unexpected": 0, + "flaky": 0, + "skipped": 0, + "durationMs": 3081 + }, + { + "file": "document-danmuku.spec.js", + "expected": 18, + "unexpected": 0, + "flaky": 0, + "skipped": 0, + "durationMs": 10808 + }, + { + "file": "document-dash.spec.js", + "expected": 4, + "unexpected": 0, + "flaky": 0, + "skipped": 0, + "durationMs": 6296 + }, + { + "file": "document-hls.spec.js", + "expected": 8, + "unexpected": 0, + "flaky": 0, + "skipped": 0, + "durationMs": 12632 + }, + { + "file": "document-site.spec.js", + "expected": 2, + "unexpected": 0, + "flaky": 0, + "skipped": 0, + "durationMs": 13253 + }, + { + "file": "document-vtt.spec.js", + "expected": 2, + "unexpected": 0, + "flaky": 0, + "skipped": 0, + "durationMs": 3104 + }, + { + "file": "dom-boundaries.spec.js", + "expected": 3, + "unexpected": 0, + "flaky": 0, + "skipped": 0, + "durationMs": 1066 + }, + { + "file": "dpip-lifecycle.spec.js", + "expected": 6, + "unexpected": 0, + "flaky": 0, + "skipped": 0, + "durationMs": 3590 + }, + { + "file": "dpip-native.spec.js", + "expected": 6, + "unexpected": 0, + "flaky": 0, + "skipped": 0, + "durationMs": 15583 + }, + { + "file": "dpip.spec.js", + "expected": 16, + "unexpected": 0, + "flaky": 0, + "skipped": 0, + "durationMs": 13765 + }, + { + "file": "editor-basic-languages.spec.js", + "expected": 1, + "unexpected": 0, + "flaky": 0, + "skipped": 0, + "durationMs": 2430 + }, + { + "file": "editor-core.spec.js", + "expected": 11, + "unexpected": 0, + "flaky": 0, + "skipped": 0, + "durationMs": 15977 + }, + { + "file": "editor-declarations.spec.js", + "expected": 0, + "unexpected": 1, + "flaky": 0, + "skipped": 0, + "durationMs": 1686 + }, + { + "file": "editor-dom.spec.js", + "expected": 1, + "unexpected": 0, + "flaky": 0, + "skipped": 0, + "durationMs": 659 + }, + { + "file": "editor-languages.spec.js", + "expected": 1, + "unexpected": 0, + "flaky": 0, + "skipped": 0, + "durationMs": 857 + }, + { + "file": "editor-markdown.spec.js", + "expected": 1, + "unexpected": 0, + "flaky": 0, + "skipped": 0, + "durationMs": 807 + }, + { + "file": "editor-modes.spec.js", + "expected": 1, + "unexpected": 0, + "flaky": 0, + "skipped": 0, + "durationMs": 6390 + }, + { + "file": "editor-path.spec.js", + "expected": 1, + "unexpected": 0, + "flaky": 0, + "skipped": 0, + "durationMs": 747 + }, + { + "file": "editor-styles.spec.js", + "expected": 1, + "unexpected": 0, + "flaky": 0, + "skipped": 0, + "durationMs": 1327 + }, + { + "file": "editor-types.spec.js", + "expected": 1, + "unexpected": 0, + "flaky": 0, + "skipped": 0, + "durationMs": 2521 + }, + { + "file": "editor-unicode.spec.js", + "expected": 1, + "unexpected": 0, + "flaky": 0, + "skipped": 0, + "durationMs": 773 + }, + { + "file": "emitter.spec.js", + "expected": 2, + "unexpected": 0, + "flaky": 0, + "skipped": 0, + "durationMs": 773 + }, + { + "file": "event-scheduling.spec.js", + "expected": 10, + "unexpected": 0, + "flaky": 0, + "skipped": 0, + "durationMs": 5050 + }, + { + "file": "fast-forward.spec.js", + "expected": 11, + "unexpected": 0, + "flaky": 0, + "skipped": 0, + "durationMs": 11100 + }, + { + "file": "gesture.spec.js", + "expected": 18, + "unexpected": 0, + "flaky": 0, + "skipped": 0, + "durationMs": 17119 + }, + { + "file": "global-events.spec.js", + "expected": 6, + "unexpected": 0, + "flaky": 0, + "skipped": 0, + "durationMs": 4252 + }, + { + "file": "hls-control.spec.js", + "expected": 17, + "unexpected": 0, + "flaky": 0, + "skipped": 0, + "durationMs": 35037 + }, + { + "file": "hls-editor-types.spec.js", + "expected": 1, + "unexpected": 0, + "flaky": 0, + "skipped": 0, + "durationMs": 1355 + }, + { + "file": "hls-sdk.spec.js", + "expected": 18, + "unexpected": 0, + "flaky": 0, + "skipped": 0, + "durationMs": 41932 + }, + { + "file": "hotkey.spec.js", + "expected": 17, + "unexpected": 0, + "flaky": 0, + "skipped": 0, + "durationMs": 9482 + }, + { + "file": "iframe-boundaries.spec.js", + "expected": 20, + "unexpected": 0, + "flaky": 0, + "skipped": 0, + "durationMs": 15661 + }, + { + "file": "iframe-editor.spec.js", + "expected": 1, + "unexpected": 0, + "flaky": 0, + "skipped": 0, + "durationMs": 2440 + }, + { + "file": "iframe-navigation.spec.js", + "expected": 39, + "unexpected": 0, + "flaky": 0, + "skipped": 0, + "durationMs": 31914 + }, + { + "file": "iframe-player.spec.js", + "expected": 24, + "unexpected": 0, + "flaky": 0, + "skipped": 0, + "durationMs": 45385 + }, + { + "file": "iframe.spec.js", + "expected": 58, + "unexpected": 0, + "flaky": 0, + "skipped": 0, + "durationMs": 43607 + }, + { + "file": "initialization.spec.js", + "expected": 12, + "unexpected": 0, + "flaky": 0, + "skipped": 0, + "durationMs": 6527 + }, + { + "file": "input-closeout.spec.js", + "expected": 8, + "unexpected": 0, + "flaky": 0, + "skipped": 0, + "durationMs": 3606 + }, + { + "file": "jassub-hybrid.spec.js", + "expected": 1, + "unexpected": 0, + "flaky": 0, + "skipped": 0, + "durationMs": 1122 + }, + { + "file": "jassub-lifecycle.spec.js", + "expected": 4, + "unexpected": 0, + "flaky": 0, + "skipped": 0, + "durationMs": 4290 + }, + { + "file": "jassub-native.spec.js", + "expected": 3, + "unexpected": 0, + "flaky": 0, + "skipped": 0, + "durationMs": 6621 + }, + { + "file": "jassub-platform.spec.js", + "expected": 3, + "unexpected": 0, + "flaky": 0, + "skipped": 0, + "durationMs": 3719 + }, + { + "file": "jassub-render-failure.spec.js", + "expected": 1, + "unexpected": 0, + "flaky": 0, + "skipped": 0, + "durationMs": 710 + }, + { + "file": "library-development.spec.js", + "expected": 2, + "unexpected": 0, + "flaky": 0, + "skipped": 0, + "durationMs": 8477 + }, + { + "file": "lifecycle.spec.js", + "expected": 10, + "unexpected": 0, + "flaky": 0, + "skipped": 0, + "durationMs": 5390 + }, + { + "file": "listener-registry.spec.js", + "expected": 12, + "unexpected": 0, + "flaky": 0, + "skipped": 0, + "durationMs": 6681 + }, + { + "file": "media-events.spec.js", + "expected": 9, + "unexpected": 0, + "flaky": 0, + "skipped": 0, + "durationMs": 5180 + }, + { + "file": "media-gate-native.spec.js", + "expected": 4, + "unexpected": 0, + "flaky": 0, + "skipped": 0, + "durationMs": 17200 + }, + { + "file": "media-hosts.spec.js", + "expected": 2, + "unexpected": 0, + "flaky": 0, + "skipped": 0, + "durationMs": 1881 + }, + { + "file": "mediabunny-audio.spec.js", + "expected": 8, + "unexpected": 0, + "flaky": 0, + "skipped": 0, + "durationMs": 9811 + }, + { + "file": "mediabunny-capability.spec.js", + "expected": 10, + "unexpected": 0, + "flaky": 0, + "skipped": 0, + "durationMs": 7362 + }, + { + "file": "mediabunny-dpip.spec.js", + "expected": 12, + "unexpected": 0, + "flaky": 0, + "skipped": 0, + "durationMs": 19921 + }, + { + "file": "mediabunny-entry.spec.js", + "expected": 4, + "unexpected": 0, + "flaky": 0, + "skipped": 0, + "durationMs": 1853 + }, + { + "file": "mediabunny-hls.spec.js", + "expected": 10, + "unexpected": 0, + "flaky": 0, + "skipped": 0, + "durationMs": 12089 + }, + { + "file": "mediabunny-inputs.spec.js", + "expected": 18, + "unexpected": 0, + "flaky": 0, + "skipped": 0, + "durationMs": 21871 + }, + { + "file": "mediabunny-load.spec.js", + "expected": 3, + "unexpected": 0, + "flaky": 0, + "skipped": 0, + "durationMs": 4760 + }, + { + "file": "mediabunny-shim.spec.js", + "expected": 3, + "unexpected": 0, + "flaky": 0, + "skipped": 0, + "durationMs": 1484 + }, + { + "file": "mediabunny-video.spec.js", + "expected": 5, + "unexpected": 0, + "flaky": 0, + "skipped": 0, + "durationMs": 4127 + }, + { + "file": "mediabunny.spec.js", + "expected": 3, + "unexpected": 0, + "flaky": 0, + "skipped": 0, + "durationMs": 2929 + }, + { + "file": "multiple-subtitles-ass.spec.js", + "expected": 5, + "unexpected": 0, + "flaky": 0, + "skipped": 0, + "durationMs": 7225 + }, + { + "file": "multiple-subtitles-combinations.spec.js", + "expected": 19, + "unexpected": 0, + "flaky": 0, + "skipped": 0, + "durationMs": 26354 + }, + { + "file": "multiple-subtitles-entities.spec.js", + "expected": 2, + "unexpected": 0, + "flaky": 0, + "skipped": 0, + "durationMs": 2003 + }, + { + "file": "multiple-subtitles-history.spec.js", + "expected": 6, + "unexpected": 0, + "flaky": 0, + "skipped": 0, + "durationMs": 6887 + }, + { + "file": "multiple-subtitles-legacy.spec.js", + "expected": 2, + "unexpected": 0, + "flaky": 0, + "skipped": 0, + "durationMs": 3050 + }, + { + "file": "multiple-subtitles-lifecycle.spec.js", + "expected": 12, + "unexpected": 0, + "flaky": 0, + "skipped": 0, + "durationMs": 10598 + }, + { + "file": "multiple-subtitles-switch.spec.js", + "expected": 9, + "unexpected": 0, + "flaky": 0, + "skipped": 0, + "durationMs": 15689 + }, + { + "file": "notice.spec.js", + "expected": 13, + "unexpected": 0, + "flaky": 0, + "skipped": 0, + "durationMs": 8785 + }, + { + "file": "options.spec.js", + "expected": 10, + "unexpected": 0, + "flaky": 0, + "skipped": 0, + "durationMs": 5091 + }, + { + "file": "playback-properties.spec.js", + "expected": 4, + "unexpected": 0, + "flaky": 0, + "skipped": 0, + "durationMs": 1933 + }, + { + "file": "playback.spec.js", + "expected": 4, + "unexpected": 0, + "flaky": 0, + "skipped": 0, + "durationMs": 7757 + }, + { + "file": "plugins.spec.js", + "expected": 6, + "unexpected": 0, + "flaky": 0, + "skipped": 0, + "durationMs": 3586 + }, + { + "file": "pointer-events.spec.js", + "expected": 10, + "unexpected": 0, + "flaky": 0, + "skipped": 0, + "durationMs": 4851 + }, + { + "file": "progress-quality.spec.js", + "expected": 14, + "unexpected": 0, + "flaky": 0, + "skipped": 0, + "durationMs": 14245 + }, + { + "file": "prompt-components.spec.js", + "expected": 15, + "unexpected": 0, + "flaky": 0, + "skipped": 0, + "durationMs": 7975 + }, + { + "file": "resource-scope.spec.js", + "expected": 1, + "unexpected": 0, + "flaky": 0, + "skipped": 0, + "durationMs": 406 + }, + { + "file": "runtime-types.spec.js", + "expected": 5, + "unexpected": 0, + "flaky": 0, + "skipped": 0, + "durationMs": 2805 + }, + { + "file": "screenshot.spec.js", + "expected": 13, + "unexpected": 0, + "flaky": 0, + "skipped": 0, + "durationMs": 11990 + }, + { + "file": "setting-interaction.spec.js", + "expected": 6, + "unexpected": 0, + "flaky": 0, + "skipped": 0, + "durationMs": 4802 + }, + { + "file": "setting-ownership.spec.js", + "expected": 8, + "unexpected": 0, + "flaky": 0, + "skipped": 0, + "durationMs": 4034 + }, + { + "file": "setting-update.spec.js", + "expected": 16, + "unexpected": 0, + "flaky": 0, + "skipped": 0, + "durationMs": 6933 + }, + { + "file": "setting.spec.js", + "expected": 29, + "unexpected": 0, + "flaky": 0, + "skipped": 0, + "durationMs": 17496 + }, + { + "file": "site-console.spec.js", + "expected": 16, + "unexpected": 0, + "flaky": 0, + "skipped": 0, + "durationMs": 11946 + }, + { + "file": "site-editor.spec.js", + "expected": 6, + "unexpected": 0, + "flaky": 0, + "skipped": 0, + "durationMs": 16177 + }, + { + "file": "site-loading.spec.js", + "expected": 7, + "unexpected": 0, + "flaky": 0, + "skipped": 0, + "durationMs": 4910 + }, + { + "file": "site-vendor.spec.js", + "expected": 2, + "unexpected": 0, + "flaky": 0, + "skipped": 0, + "durationMs": 3017 + }, + { + "file": "slider-updates.spec.js", + "expected": 3, + "unexpected": 0, + "flaky": 0, + "skipped": 0, + "durationMs": 5557 + }, + { + "file": "source-intent.spec.js", + "expected": 6, + "unexpected": 0, + "flaky": 0, + "skipped": 0, + "durationMs": 8977 + }, + { + "file": "source.spec.js", + "expected": 8, + "unexpected": 0, + "flaky": 0, + "skipped": 0, + "durationMs": 6322 + }, + { + "file": "storage-performance.spec.js", + "expected": 3, + "unexpected": 0, + "flaky": 0, + "skipped": 0, + "durationMs": 3784 + }, + { + "file": "subtitle-lifecycle.spec.js", + "expected": 27, + "unexpected": 0, + "flaky": 0, + "skipped": 0, + "durationMs": 17096 + }, + { + "file": "subtitle-offset-native.spec.js", + "expected": 3, + "unexpected": 0, + "flaky": 0, + "skipped": 0, + "durationMs": 2531 + }, + { + "file": "subtitle-offset.spec.js", + "expected": 2, + "unexpected": 0, + "flaky": 0, + "skipped": 0, + "durationMs": 3308 + }, + { + "file": "template-resources.spec.js", + "expected": 12, + "unexpected": 0, + "flaky": 0, + "skipped": 0, + "durationMs": 5036 + }, + { + "file": "thumbnail-editor-types.spec.js", + "expected": 1, + "unexpected": 0, + "flaky": 0, + "skipped": 0, + "durationMs": 1256 + }, + { + "file": "thumbnail-emitter.spec.js", + "expected": 5, + "unexpected": 0, + "flaky": 0, + "skipped": 0, + "durationMs": 4090 + }, + { + "file": "thumbnail-input.spec.js", + "expected": 1, + "unexpected": 0, + "flaky": 0, + "skipped": 0, + "durationMs": 456 + }, + { + "file": "thumbnail-native.spec.js", + "expected": 1, + "unexpected": 0, + "flaky": 0, + "skipped": 0, + "durationMs": 544 + }, + { + "file": "thumbnail-tool.spec.js", + "expected": 17, + "unexpected": 0, + "flaky": 0, + "skipped": 0, + "durationMs": 22244 + }, + { + "file": "thumbnails.spec.js", + "expected": 8, + "unexpected": 0, + "flaky": 0, + "skipped": 0, + "durationMs": 6371 + }, + { + "file": "utils.spec.js", + "expected": 5, + "unexpected": 0, + "flaky": 0, + "skipped": 0, + "durationMs": 2625 + }, + { + "file": "vast-package.spec.js", + "expected": 12, + "unexpected": 0, + "flaky": 0, + "skipped": 0, + "durationMs": 9448 + }, + { + "file": "vast.spec.js", + "expected": 54, + "unexpected": 0, + "flaky": 0, + "skipped": 0, + "durationMs": 37404 + }, + { + "file": "vconsole-lifecycle.spec.js", + "expected": 6, + "unexpected": 0, + "flaky": 0, + "skipped": 0, + "durationMs": 2553 + }, + { + "file": "vtt-thumbnail-combinations.spec.js", + "expected": 17, + "unexpected": 0, + "flaky": 0, + "skipped": 0, + "durationMs": 21701 + }, + { + "file": "vtt-thumbnail-lifecycle.spec.js", + "expected": 6, + "unexpected": 0, + "flaky": 0, + "skipped": 0, + "durationMs": 4455 + } + ], + "failures": [ + { + "file": "dash-sdk.spec.js", + "title": "dash.js 4.5.2: native SDK track switch and paused seek without ArtPlayer", + "project": "firefox", + "status": "failed", + "retry": 0, + "errors": [ + "Error: expect(received).toBeGreaterThan(expected)\n\nExpected: > 6.2\nReceived: 6\n\nCall Log:\n- Timeout 7000ms exceeded while waiting on the predicate\n\n 274 | })\n 275 | await page.locator('#play').click()\n> 276 | await expect.poll(() => page.evaluate(() => (window.art?.video || window.nativeVideo).currentTime)).toBeGreaterThan(6.2)\n | ^\n 277 | }\n 278 |\n 279 | for (const core of ['published', 'candidate']) {\n at seekAtEmptyBoundary (D:\\github\\ArtPlayer\\test\\browser\\dash-sdk.spec.js:276:103)\n at D:\\github\\ArtPlayer\\test\\browser\\dash-sdk.spec.js:328:5" + ], + "details": [ + { + "name": "dash-sdk-inputs", + "sha256": "ff69e365039e21f55ef9c6090b9afbe999984aa9e0a9c9416eb51a23b11aedd2" + }, + { + "name": "dash-sdk-state", + "sha256": "731b9d032d25033fca22c5dc4b9cfc7ffa7f14022fc4dd435ac60ff0f66e0965" + }, + { + "name": "browser-evidence", + "sha256": "5a305e0378f61c43970190665b2eceac5cd1d28ae355b86f2d9f011a8248987d" + } + ], + "artifacts": [ + { + "name": "screenshot", + "originalPath": "D:\\github\\ArtPlayer\\refactor\\.cache\\browser-source\\results\\dash-sdk-dash-js-4-5-2-nat-cf307-used-seek-without-ArtPlayer-firefox\\test-failed-1.png", + "archiveFile": "refactor/.cache/ci-source-firefox-full-report/results/dash-sdk-dash-js-4-5-2-nat-cf307-used-seek-without-ArtPlayer-firefox/test-failed-1.png", + "sha256": "382eebac29706cc3a774a468ac9e0cb23249adcddeb575aefd2251979e7fc767" + }, + { + "name": "error-context", + "originalPath": "D:\\github\\ArtPlayer\\refactor\\.cache\\browser-source\\results\\dash-sdk-dash-js-4-5-2-nat-cf307-used-seek-without-ArtPlayer-firefox\\error-context.md", + "archiveFile": "refactor/.cache/ci-source-firefox-full-report/results/dash-sdk-dash-js-4-5-2-nat-cf307-used-seek-without-ArtPlayer-firefox/error-context.md", + "sha256": "3d92bfd529ed17a6816bf2d484bbf9d6653297db3c19e727a8b500cd88ef1511" + }, + { + "name": "trace", + "originalPath": "D:\\github\\ArtPlayer\\refactor\\.cache\\browser-source\\results\\dash-sdk-dash-js-4-5-2-nat-cf307-used-seek-without-ArtPlayer-firefox\\trace.zip", + "archiveFile": "refactor/.cache/ci-source-firefox-full-report/results/dash-sdk-dash-js-4-5-2-nat-cf307-used-seek-without-ArtPlayer-firefox/trace.zip", + "sha256": "e44ee0c4b336cb95564ea710c62336fe54c98a92fa910908f0826a2b58468fd1" + } + ] + }, + { + "file": "editor-declarations.spec.js", + "title": "Monaco checks all editor declarations together and runs the Chapter consumer", + "project": "firefox", + "status": "failed", + "retry": 0, + "errors": [ + "Error: expect(received).toEqual(expected) // deep equality\n\n- Expected - 1\n+ Received + 26\n\n- Array []\n+ Array [\n+ Object {\n+ \"category\": 1,\n+ \"code\": 2503,\n+ \"file\": Object {\n+ \"fileName\": \"file:///editor-consumer.ts\",\n+ },\n+ \"length\": 19,\n+ \"messageText\": \"Cannot find namespace 'artplayerPluginVast'.\",\n+ \"reportsDeprecated\": undefined,\n+ \"reportsUnnecessary\": undefined,\n+ \"start\": 411,\n+ },\n+ Object {\n+ \"category\": 1,\n+ \"code\": 7006,\n+ \"file\": Object {\n+ \"fileName\": \"file:///editor-consumer.ts\",\n+ },\n+ \"length\": 7,\n+ \"messageText\": \"Parameter 'context' implicitly has an 'any' type.\",\n+ \"reportsDeprecated\": undefined,\n+ \"reportsUnnecessary\": undefined,\n+ \"start\": 459,\n+ },\n+ ]\n\n 74 | await testInfo.attach('editor-declaration-result', { contentType: 'application/json', body: JSON.stringify(result) })\n 75 | expect(result.syntax).toEqual([])\n> 76 | expect(result.semantic).toEqual([])\n | ^\n 77 | expect(result.declarations).toEqual([])\n 78 | expect(result.bad).toEqual([2322, 2322, 2322])\n 79 | expect(result.name).toBe('artplayerPluginChapter')\n at D:\\github\\ArtPlayer\\test\\browser\\editor-declarations.spec.js:76:27" + ], + "details": [ + { + "name": "editor-declaration-inputs", + "sha256": "8d103a345a14b949053663c97f45010eeeb38dd1cffc07d1c01b61f3b21c3612" + }, + { + "name": "editor-declaration-result", + "sha256": "f0e55a051efa876fe0010c766e748b6d0cda314a312ac9a755e35d8493b4af84", + "value": { + "syntax": [], + "semantic": [ + { + "file": { + "fileName": "file:///editor-consumer.ts" + }, + "start": 411, + "length": 19, + "messageText": "Cannot find namespace 'artplayerPluginVast'.", + "category": 1, + "code": 2503 + }, + { + "file": { + "fileName": "file:///editor-consumer.ts" + }, + "start": 459, + "length": 7, + "messageText": "Parameter 'context' implicitly has an 'any' type.", + "category": 1, + "code": 7006 + } + ], + "declarations": [], + "bad": [ + 2339, + 2339, + 2322 + ] + } + }, + { + "name": "browser-evidence", + "sha256": "59664631e4707a9a99df983f46b0bb169a9a56165c1d55dac967799a3b709135" + } + ], + "artifacts": [ + { + "name": "screenshot", + "originalPath": "D:\\github\\ArtPlayer\\refactor\\.cache\\browser-source\\results\\editor-declarations-Monaco-7efbc-d-runs-the-Chapter-consumer-firefox\\test-failed-1.png", + "archiveFile": "refactor/.cache/ci-source-firefox-full-report/results/editor-declarations-Monaco-7efbc-d-runs-the-Chapter-consumer-firefox/test-failed-1.png", + "sha256": "b0d12c7349c9eb7c7f71119b1460e856453469d31713822ce21df819317dc29a" + }, + { + "name": "error-context", + "originalPath": "D:\\github\\ArtPlayer\\refactor\\.cache\\browser-source\\results\\editor-declarations-Monaco-7efbc-d-runs-the-Chapter-consumer-firefox\\error-context.md", + "archiveFile": "refactor/.cache/ci-source-firefox-full-report/results/editor-declarations-Monaco-7efbc-d-runs-the-Chapter-consumer-firefox/error-context.md", + "sha256": "016a394cb7ab71e40457a892829c3c1d69c2d2fb686d4c6c0cf870a9c9d82536" + }, + { + "name": "trace", + "originalPath": "D:\\github\\ArtPlayer\\refactor\\.cache\\browser-source\\results\\editor-declarations-Monaco-7efbc-d-runs-the-Chapter-consumer-firefox\\trace.zip", + "archiveFile": "refactor/.cache/ci-source-firefox-full-report/results/editor-declarations-Monaco-7efbc-d-runs-the-Chapter-consumer-firefox/trace.zip", + "sha256": "6ac0ddceb54ee602a87dcba2729d4157413b516ff9947b66fdf8b6467922ac44" + } + ] + } + ], + "candidateBoundaryChecks": [ + { + "title": "published core / candidate DASH 4.5.2: stable paused boundary seek preserves media and SDK ownership", + "project": "firefox", + "status": "expected" + }, + { + "title": "published core / candidate DASH 5.2.1: stable paused boundary seek preserves media and SDK ownership", + "project": "firefox", + "status": "expected" + }, + { + "title": "candidate core / candidate DASH 4.5.2: stable paused boundary seek preserves media and SDK ownership", + "project": "firefox", + "status": "expected" + }, + { + "title": "candidate core / candidate DASH 5.2.1: stable paused boundary seek preserves media and SDK ownership", + "project": "firefox", + "status": "expected" + } + ], + "scope": "Complete source collection with no file/grep filters or retries; unchanged tracked inputs throughout execution. Source fixtures include explicitly frozen historical/SDK/distribution controls. Not a full installed-consumer, WebKit, remote Actions or physical-device run.", + "disposition": { + "dash": "DASH-SEEK-01 remains open: bare SDK 4.5.2 has no candidate plugin. Four candidate stable-boundary cases passed across both cores and SDKs.", + "editor": "SITE-EDITOR-VAST-01: obsolete workspace VAST namespace/fields in the browser consumer conflict with the approved npm-root declaration. The full failing run remains unchanged." + } +} diff --git a/refactor/baselines/editor-vast-consumer-validation.json b/refactor/baselines/editor-vast-consumer-validation.json new file mode 100644 index 000000000..cb723f6be --- /dev/null +++ b/refactor/baselines/editor-vast-consumer-validation.json @@ -0,0 +1,942 @@ +{ + "task": "SITE-EDITOR-VAST-01", + "sourceHead": "4545c436795b3c9ec1600ea2fab8adafe9bcf41b", + "environment": { + "node": "24.21.0", + "yarn": "1.22.22", + "platform": "win32" + }, + "before": "refactor/baselines/ci-source-firefox-validation.json", + "command": "yarn test:browser test/browser/editor-declarations.spec.js --workers=1 --reporter=json", + "report": { + "file": "refactor/.cache/editor-vast-current-report.json", + "sha256": "2b4780f19f740b89fd90c4755ce7d8c250b84c8b067fa7465b25a32056bd3d01", + "stats": { + "startTime": "2026-09-15T13:10:15.731Z", + "duration": 12484.591, + "expected": 3, + "skipped": 0, + "unexpected": 0, + "flaky": 0 + } + }, + "cases": [ + { + "project": "chromium", + "status": "passed", + "durationMs": 1054, + "retry": 0, + "browser": "153.0.8010.12", + "platform": "win32", + "declarations": { + "artplayer-plugin-ads.d.ts": "bf128828d5b104fc844a4f134a02162e57472d8c927a50df7b3878f4c5ed7652", + "artplayer-plugin-ambilight.d.ts": "9f06ccb7398053dca642ca369aa47f54cbb3e4dd4d5e252e999e59e496d8eee8", + "artplayer-plugin-asr.d.ts": "5096f097636c018bc05c497324c271af3fefaebccda7fa3e9cd43b63477704ad", + "artplayer-plugin-audio-track.d.ts": "604af2a3790eb7c583ba150c402dca0a3e458469cc74913b51fee2f3d3882541", + "artplayer-plugin-auto-thumbnail.d.ts": "f66bba7f633202c2ef359a989269c643b75d91594364f7ed6fb67f9898aeac03", + "artplayer-plugin-chapter.d.ts": "d5bd68579659afa44158c894e12372cedd6f958415ced370a65c294550aa828d", + "artplayer-plugin-chromecast.d.ts": "0a0b932081cac0efbcedea28dc1077484963b7f406808378704062661a4c0338", + "artplayer-plugin-danmuku-mask.d.ts": "06c6e938876edcc0ac2c8dcd1e1be4596b0f056685a3523d4c9836f2f2f90362", + "artplayer-plugin-danmuku.d.ts": "e3421bdbdfc6bea1b0b633300350fff1a745d8bc21c1430b6154a23fa3ad0415", + "artplayer-plugin-dash-control.d.ts": "c7e3c83f3377b615e503a270af12915dcc82fe3f2cfabdae396632855a27f73f", + "artplayer-plugin-document-pip.d.ts": "42faa0a6549149efd01b46c3c59246bd4dc33f2383b63b04e9f5376de29fdb8e", + "artplayer-plugin-hls-control.d.ts": "6a623bb6ba4cc0598a3dd1aab5ef7ca4fbae11973a787885eccba10cc7aa2c7c", + "artplayer-plugin-jassub.d.ts": "ce713e0a61a81bfc31087ea1a880a99398ef7c2b833e567c91e4e98f5ae6f621", + "artplayer-plugin-multiple-subtitles.d.ts": "edb15207df69a695311e849555cf989bfc32da20c2456731b6814de5400567bb", + "artplayer-plugin-vast.d.ts": "7cdb941298567b12627313be004a5afff6ef8384f6c5b385ef526a4814be70ce", + "artplayer-plugin-vtt-thumbnail.d.ts": "d82c0fe08bcf9c60e2a634e9f1fd8ccc75dc8e0ddbfa8262cccaefc9604aa61b", + "artplayer-proxy-canvas.d.ts": "83c408e0724a598f9ff32d68d752f39e03feb69ba4f6a49ba02f9d4df898453e", + "artplayer-proxy-mediabunny.d.ts": "acbaa0a25f20ac15b3d79db00b3a16167f84452ab58933110f42dcb3262fbd3e", + "artplayer-tool-iframe.d.ts": "c06c6819146ba64bd6ee498871d9e19ab5a9e88c9cc7bed2c0c4968fa39dfed7", + "artplayer-tool-thumbnail.d.ts": "9b72d10a1fe964d54fcf4774770074058ea739b4f734b52b8f4adebb37fc83e6", + "artplayer.d.ts": "6b038ad9084766023baaa037e6abcd9edde2a3c40b8b9b1dfc5e45c20be7b7ba", + "artplayer-i18n.d.ts": "60851e22ea50ed540f1be0f5a110077cdd5e6ab87345a675838f6c6333517405" + }, + "actual": { + "syntax": [], + "semantic": [], + "declarations": [], + "bad": [ + 2322, + 2345, + 2339, + 2339, + 2322 + ], + "name": "artplayerPluginChapter", + "ready": true, + "instances": 0 + }, + "manifest": { + "kind": "artplayer-browser-test", + "resources": { + "/candidate/artplayer.js": { + "source": { + "kind": "workspace-build", + "entry": "packages\\artplayer\\src\\index.ts" + }, + "sha256": "5139cabd5abf9b92684ee2dcdaa620c4db7f67c0cb1aa3f654435d739468bf9d", + "bytes": 378931 + }, + "/compiled/artplayer.js": { + "source": { + "kind": "workspace-build", + "entry": "packages\\artplayer\\src\\index.ts" + }, + "sha256": "5139cabd5abf9b92684ee2dcdaa620c4db7f67c0cb1aa3f654435d739468bf9d", + "bytes": 378931, + "aliasOf": "/candidate/artplayer.js" + }, + "/uncompiled/artplayer/index.js": { + "source": { + "kind": "workspace-build", + "entry": "packages\\artplayer\\src\\index.ts" + }, + "sha256": "5139cabd5abf9b92684ee2dcdaa620c4db7f67c0cb1aa3f654435d739468bf9d", + "bytes": 378931, + "aliasOf": "/candidate/artplayer.js" + }, + "/candidate/artplayer-plugin-chapter.js": { + "source": { + "kind": "workspace-build", + "entry": "packages\\artplayer-plugin-chapter\\src\\index.ts" + }, + "sha256": "1a8eb891d3690e2526e78a2e53183a25367b1d02a5fd349d821548edb731ee3a", + "bytes": 8529 + }, + "/compiled/artplayer-plugin-chapter.js": { + "source": { + "kind": "workspace-build", + "entry": "packages\\artplayer-plugin-chapter\\src\\index.ts" + }, + "sha256": "1a8eb891d3690e2526e78a2e53183a25367b1d02a5fd349d821548edb731ee3a", + "bytes": 8529, + "aliasOf": "/candidate/artplayer-plugin-chapter.js" + }, + "/uncompiled/artplayer-plugin-chapter/index.js": { + "source": { + "kind": "workspace-build", + "entry": "packages\\artplayer-plugin-chapter\\src\\index.ts" + }, + "sha256": "1a8eb891d3690e2526e78a2e53183a25367b1d02a5fd349d821548edb731ee3a", + "bytes": 8529, + "aliasOf": "/candidate/artplayer-plugin-chapter.js" + }, + "/published/artplayer.js": { + "source": { + "kind": "npm-release", + "version": "5.4.0", + "integrity": "sha512-2B+plbx8N2yNsjK4nJU3+EOG8TULm1LRZk/QPkWRAMEX2Ee/MSnZG/WJYz8kcoZxZuLKcQ3uXifqLuPxZOH29A==", + "member": "package/dist/artplayer.js" + }, + "sha256": "f1db1fa3406aa6d41baa7c554749429a8e79f99d56a794bde23345eb9c07573f", + "bytes": 134037 + }, + "/published/artplayer-plugin-chapter.js": { + "source": { + "kind": "npm-release", + "version": "1.1.0", + "integrity": "sha512-ji66Lr2K2S+OjFMuMby3yq+pefWlOC51Sbpop/DIr2N6w3F0smrF+YZbshN1Dy8/Tx1TYpT7N6WkkZWy5Jix1w==", + "member": "package/dist/artplayer-plugin-chapter.js" + }, + "sha256": "c2aaee11bf1db765433b01d9f8dd3978e41fa4d39655db00ebd03fc0be3e35e0", + "bytes": 4973 + }, + "/test/pattern.mp4": { + "source": { + "kind": "generated-media", + "file": "test/browser/media/pattern.mp4" + }, + "sha256": "0ad1d7ad286aec6e0fa9e27fc1e487e7277df2e603e30040fb942365763d0233", + "bytes": 251538 + }, + "/test/pattern.webm": { + "source": { + "kind": "generated-media", + "file": "test/browser/media/pattern.webm" + }, + "sha256": "9d3c2b3dec9581a599de2d6732992ef7846790e0d1368e6e131bd339b39e984f", + "bytes": 162073 + }, + "/published-4.5.5/artplayer.js": { + "source": { + "kind": "npm-release", + "version": "4.5.5", + "integrity": "sha512-HeAKbe3od9ZgFQVSBCg5FlixJsefDEBC8txVG19yZgvzlcJuiurxPlasap+GHuex/ftG+jmSXnTRtuNrTki2Kw==", + "member": "package/dist/artplayer.js" + }, + "sha256": "3467e626ca29d2f7884e75eb75b8b90de74a25761ffa2e272576c9b5a98fa0a4", + "bytes": 153582 + }, + "/published-5.1.7/artplayer.js": { + "source": { + "kind": "npm-release", + "version": "5.1.7", + "integrity": "sha512-N/QdNlTwsIHUsWOHMPj0pq97v3qmgXZHfhy1q7I+8YN3/XakJiJJyVJgGaeBjU+y/fUIrzBhwpBaX+NFwK9/qw==", + "member": "package/dist/artplayer.js" + }, + "sha256": "484ccc3f22446ec6fd0dd8b8a5602c740b601d55097a1ae043262d92aab35357", + "bytes": 155940 + }, + "/published-4.5.9/artplayer.js": { + "source": { + "kind": "npm-release", + "version": "4.5.9", + "integrity": "sha512-x5JzGdXkw4GFdztvPkVnm8TOWrGDcvGKKMPb9wuP6UfyftlLM3UQctmmalfAMnQSxugJwq2Kb9ix9OG2SgbJJA==", + "member": "package/dist/artplayer.js" + }, + "sha256": "09a9f09e3a64a02ca7c27af710d7254f886f0bfb09fd54bf3a728ce863e5a497", + "bytes": 156408 + }, + "/published-5.3.0/artplayer.js": { + "source": { + "kind": "npm-release", + "version": "5.3.0", + "integrity": "sha512-yExO39MpEg4P+bxgChxx1eJfiUPE4q1QQRLCmqGhlsj+ANuaoEkR8hF93LdI5ZyrAcIbJkuEndxEiUoKobifDw==", + "member": "package/dist/artplayer.js" + }, + "sha256": "54ffaf7598b910d5a88d2d2eec1aa6faa806583915b99b892dd32129c53e421a", + "bytes": 159238 + }, + "/published-5.1.6/artplayer.js": { + "source": { + "kind": "npm-release", + "version": "5.1.6", + "integrity": "sha512-cqnVVLKCKWCryKl6Pmop50/Di9IQwOeNNQs5qWGzJDPiM0qTC7Q/Enusa+8JQid8p09fvp4Vc32ViSSYutdEeQ==", + "member": "package/dist/artplayer.js" + }, + "sha256": "6a7b1f3007ecda9f399e6cff606490dd745c495e19ce10e864a401ff09996172", + "bytes": 155714 + }, + "/published-5.1.2/artplayer.js": { + "source": { + "kind": "npm-release", + "version": "5.1.2", + "integrity": "sha512-eIWlxiP2ghgftaZWIGnclkOpXGFZTOf5xrm6sGZCGx5A8wGbTHRSMe+ZiyPFpbNhBVupi/QObSjX/FcD+YbS1Q==", + "member": "package/dist/artplayer.js" + }, + "sha256": "3dfd035b4cde34c9d9dd1b303f95bfbb42bde105bcb3e5671a8d375a719290b1", + "bytes": 154583 + }, + "/test/audio-tone.m4a": { + "source": { + "kind": "generated-media", + "file": "test/browser/media/audio-tone.m4a" + }, + "sha256": "83e6672b880b5d1c97093b1e26bdc40221c0b279615f40e99dbf9d2ade7b4d56", + "bytes": 132436 + }, + "/test/thumbnail-pattern.mp4": { + "source": { + "kind": "generated-media", + "file": "test/browser/media/thumbnail-pattern.mp4" + }, + "sha256": "4c977be04d97f6ac1342ac4959b8e61678f390d88a088430e4d0200137a03d1c", + "bytes": 752916 + }, + "/test/auto-thumbnail-timeline.mp4": { + "source": { + "kind": "generated-media", + "file": "test/browser/media/auto-thumbnail-timeline.mp4" + }, + "sha256": "10370156cffada462d3ea00aae0caadd62752369cd6538cc55248b3ddd7bf994", + "bytes": 8602 + }, + "/test/vast-skippable.xml": { + "source": { + "kind": "local-vast-fixture", + "file": "test/browser/vast-fixture.mjs" + }, + "sha256": "f810be089e762ea77c08a1f736781fa8f07f5746bab6ec59819bd03d36a46baf", + "bytes": 760 + }, + "/test/declaration-cues.vtt": { + "source": { + "kind": "test-subtitles", + "file": "test/browser/media/declaration-cues.vtt" + }, + "sha256": "5d149d4e641ce41cbb83376835c03daf1fb89f3b9f568fa59e064d51e2b57704", + "bytes": 54 + }, + "/test/thumbnail-grid.svg": { + "source": { + "kind": "test-thumbnail-grid", + "file": "test/browser/media/thumbnail-grid.svg" + }, + "sha256": "bb3f1ec9895d37def77ca4b192d3cd73577a2668558cc99de1588f511d65d3e6", + "bytes": 14969 + }, + "/test/legacy-safe-area.js": { + "source": { + "kind": "frozen-own-source", + "file": "test/helpers/legacy-safe-area.js", + "commit": "ccf77c4e" + }, + "sha256": "ce0368618ef6363b78271b8bcc7973abd0478e797cc464ddd912929e6dfa501a", + "bytes": 795 + }, + "/test/iframe-boundary-child.html": { + "source": { + "kind": "iframe-fixture", + "file": "test/browser/iframe-boundary-child.html" + }, + "sha256": "4721de185f606de7d576e71395127257e476765455e2a947ded79df4ebed901a", + "bytes": 1451 + }, + "/published-5.3.1-beta.1/artplayer.js": { + "source": { + "kind": "npm-release", + "version": "5.3.1-beta.1", + "integrity": "sha512-btjbQwXPl86U/Apja0WrCUF+AXLPacI60eUGAeJTx3EMuUKrVaOFrmWrIeeyMUi5aIzMSXM++tQjlSMJVnmhuQ==", + "member": "package/dist/artplayer.js" + }, + "sha256": "e91e64228c57bb97300c709789d5557ab07b133cab307267b4a2a4df3083c861", + "bytes": 159458 + }, + "/assets/sample/video.mp4": { + "source": { + "kind": "docs-media", + "file": "docs/assets/sample/video.mp4" + }, + "sha256": "30a2de667ba267b6bc605edcee1c4bd728c048ed76f500ea0e73d1f1a6f8f980", + "bytes": 5818706 + }, + "/test/performance.js": { + "source": { + "kind": "adapted-baseline-fixture", + "file": "refactor/fixtures/performance.js" + }, + "sha256": "c5a8a8611db004aadd6c3b82c61b8ae242319c1a12e73bf784c1da06fcebed72", + "bytes": 9251 + } + } + } + }, + { + "project": "firefox", + "status": "passed", + "durationMs": 2042, + "retry": 0, + "browser": "155.0", + "platform": "win32", + "declarations": { + "artplayer-plugin-ads.d.ts": "bf128828d5b104fc844a4f134a02162e57472d8c927a50df7b3878f4c5ed7652", + "artplayer-plugin-ambilight.d.ts": "9f06ccb7398053dca642ca369aa47f54cbb3e4dd4d5e252e999e59e496d8eee8", + "artplayer-plugin-asr.d.ts": "5096f097636c018bc05c497324c271af3fefaebccda7fa3e9cd43b63477704ad", + "artplayer-plugin-audio-track.d.ts": "604af2a3790eb7c583ba150c402dca0a3e458469cc74913b51fee2f3d3882541", + "artplayer-plugin-auto-thumbnail.d.ts": "f66bba7f633202c2ef359a989269c643b75d91594364f7ed6fb67f9898aeac03", + "artplayer-plugin-chapter.d.ts": "d5bd68579659afa44158c894e12372cedd6f958415ced370a65c294550aa828d", + "artplayer-plugin-chromecast.d.ts": "0a0b932081cac0efbcedea28dc1077484963b7f406808378704062661a4c0338", + "artplayer-plugin-danmuku-mask.d.ts": "06c6e938876edcc0ac2c8dcd1e1be4596b0f056685a3523d4c9836f2f2f90362", + "artplayer-plugin-danmuku.d.ts": "e3421bdbdfc6bea1b0b633300350fff1a745d8bc21c1430b6154a23fa3ad0415", + "artplayer-plugin-dash-control.d.ts": "c7e3c83f3377b615e503a270af12915dcc82fe3f2cfabdae396632855a27f73f", + "artplayer-plugin-document-pip.d.ts": "42faa0a6549149efd01b46c3c59246bd4dc33f2383b63b04e9f5376de29fdb8e", + "artplayer-plugin-hls-control.d.ts": "6a623bb6ba4cc0598a3dd1aab5ef7ca4fbae11973a787885eccba10cc7aa2c7c", + "artplayer-plugin-jassub.d.ts": "ce713e0a61a81bfc31087ea1a880a99398ef7c2b833e567c91e4e98f5ae6f621", + "artplayer-plugin-multiple-subtitles.d.ts": "edb15207df69a695311e849555cf989bfc32da20c2456731b6814de5400567bb", + "artplayer-plugin-vast.d.ts": "7cdb941298567b12627313be004a5afff6ef8384f6c5b385ef526a4814be70ce", + "artplayer-plugin-vtt-thumbnail.d.ts": "d82c0fe08bcf9c60e2a634e9f1fd8ccc75dc8e0ddbfa8262cccaefc9604aa61b", + "artplayer-proxy-canvas.d.ts": "83c408e0724a598f9ff32d68d752f39e03feb69ba4f6a49ba02f9d4df898453e", + "artplayer-proxy-mediabunny.d.ts": "acbaa0a25f20ac15b3d79db00b3a16167f84452ab58933110f42dcb3262fbd3e", + "artplayer-tool-iframe.d.ts": "c06c6819146ba64bd6ee498871d9e19ab5a9e88c9cc7bed2c0c4968fa39dfed7", + "artplayer-tool-thumbnail.d.ts": "9b72d10a1fe964d54fcf4774770074058ea739b4f734b52b8f4adebb37fc83e6", + "artplayer.d.ts": "6b038ad9084766023baaa037e6abcd9edde2a3c40b8b9b1dfc5e45c20be7b7ba", + "artplayer-i18n.d.ts": "60851e22ea50ed540f1be0f5a110077cdd5e6ab87345a675838f6c6333517405" + }, + "actual": { + "syntax": [], + "semantic": [], + "declarations": [], + "bad": [ + 2322, + 2345, + 2339, + 2339, + 2322 + ], + "name": "artplayerPluginChapter", + "ready": true, + "instances": 0 + }, + "manifest": { + "kind": "artplayer-browser-test", + "resources": { + "/candidate/artplayer.js": { + "source": { + "kind": "workspace-build", + "entry": "packages\\artplayer\\src\\index.ts" + }, + "sha256": "5139cabd5abf9b92684ee2dcdaa620c4db7f67c0cb1aa3f654435d739468bf9d", + "bytes": 378931 + }, + "/compiled/artplayer.js": { + "source": { + "kind": "workspace-build", + "entry": "packages\\artplayer\\src\\index.ts" + }, + "sha256": "5139cabd5abf9b92684ee2dcdaa620c4db7f67c0cb1aa3f654435d739468bf9d", + "bytes": 378931, + "aliasOf": "/candidate/artplayer.js" + }, + "/uncompiled/artplayer/index.js": { + "source": { + "kind": "workspace-build", + "entry": "packages\\artplayer\\src\\index.ts" + }, + "sha256": "5139cabd5abf9b92684ee2dcdaa620c4db7f67c0cb1aa3f654435d739468bf9d", + "bytes": 378931, + "aliasOf": "/candidate/artplayer.js" + }, + "/candidate/artplayer-plugin-chapter.js": { + "source": { + "kind": "workspace-build", + "entry": "packages\\artplayer-plugin-chapter\\src\\index.ts" + }, + "sha256": "1a8eb891d3690e2526e78a2e53183a25367b1d02a5fd349d821548edb731ee3a", + "bytes": 8529 + }, + "/compiled/artplayer-plugin-chapter.js": { + "source": { + "kind": "workspace-build", + "entry": "packages\\artplayer-plugin-chapter\\src\\index.ts" + }, + "sha256": "1a8eb891d3690e2526e78a2e53183a25367b1d02a5fd349d821548edb731ee3a", + "bytes": 8529, + "aliasOf": "/candidate/artplayer-plugin-chapter.js" + }, + "/uncompiled/artplayer-plugin-chapter/index.js": { + "source": { + "kind": "workspace-build", + "entry": "packages\\artplayer-plugin-chapter\\src\\index.ts" + }, + "sha256": "1a8eb891d3690e2526e78a2e53183a25367b1d02a5fd349d821548edb731ee3a", + "bytes": 8529, + "aliasOf": "/candidate/artplayer-plugin-chapter.js" + }, + "/published/artplayer.js": { + "source": { + "kind": "npm-release", + "version": "5.4.0", + "integrity": "sha512-2B+plbx8N2yNsjK4nJU3+EOG8TULm1LRZk/QPkWRAMEX2Ee/MSnZG/WJYz8kcoZxZuLKcQ3uXifqLuPxZOH29A==", + "member": "package/dist/artplayer.js" + }, + "sha256": "f1db1fa3406aa6d41baa7c554749429a8e79f99d56a794bde23345eb9c07573f", + "bytes": 134037 + }, + "/published/artplayer-plugin-chapter.js": { + "source": { + "kind": "npm-release", + "version": "1.1.0", + "integrity": "sha512-ji66Lr2K2S+OjFMuMby3yq+pefWlOC51Sbpop/DIr2N6w3F0smrF+YZbshN1Dy8/Tx1TYpT7N6WkkZWy5Jix1w==", + "member": "package/dist/artplayer-plugin-chapter.js" + }, + "sha256": "c2aaee11bf1db765433b01d9f8dd3978e41fa4d39655db00ebd03fc0be3e35e0", + "bytes": 4973 + }, + "/test/pattern.mp4": { + "source": { + "kind": "generated-media", + "file": "test/browser/media/pattern.mp4" + }, + "sha256": "0ad1d7ad286aec6e0fa9e27fc1e487e7277df2e603e30040fb942365763d0233", + "bytes": 251538 + }, + "/test/pattern.webm": { + "source": { + "kind": "generated-media", + "file": "test/browser/media/pattern.webm" + }, + "sha256": "9d3c2b3dec9581a599de2d6732992ef7846790e0d1368e6e131bd339b39e984f", + "bytes": 162073 + }, + "/published-4.5.5/artplayer.js": { + "source": { + "kind": "npm-release", + "version": "4.5.5", + "integrity": "sha512-HeAKbe3od9ZgFQVSBCg5FlixJsefDEBC8txVG19yZgvzlcJuiurxPlasap+GHuex/ftG+jmSXnTRtuNrTki2Kw==", + "member": "package/dist/artplayer.js" + }, + "sha256": "3467e626ca29d2f7884e75eb75b8b90de74a25761ffa2e272576c9b5a98fa0a4", + "bytes": 153582 + }, + "/published-5.1.7/artplayer.js": { + "source": { + "kind": "npm-release", + "version": "5.1.7", + "integrity": "sha512-N/QdNlTwsIHUsWOHMPj0pq97v3qmgXZHfhy1q7I+8YN3/XakJiJJyVJgGaeBjU+y/fUIrzBhwpBaX+NFwK9/qw==", + "member": "package/dist/artplayer.js" + }, + "sha256": "484ccc3f22446ec6fd0dd8b8a5602c740b601d55097a1ae043262d92aab35357", + "bytes": 155940 + }, + "/published-4.5.9/artplayer.js": { + "source": { + "kind": "npm-release", + "version": "4.5.9", + "integrity": "sha512-x5JzGdXkw4GFdztvPkVnm8TOWrGDcvGKKMPb9wuP6UfyftlLM3UQctmmalfAMnQSxugJwq2Kb9ix9OG2SgbJJA==", + "member": "package/dist/artplayer.js" + }, + "sha256": "09a9f09e3a64a02ca7c27af710d7254f886f0bfb09fd54bf3a728ce863e5a497", + "bytes": 156408 + }, + "/published-5.3.0/artplayer.js": { + "source": { + "kind": "npm-release", + "version": "5.3.0", + "integrity": "sha512-yExO39MpEg4P+bxgChxx1eJfiUPE4q1QQRLCmqGhlsj+ANuaoEkR8hF93LdI5ZyrAcIbJkuEndxEiUoKobifDw==", + "member": "package/dist/artplayer.js" + }, + "sha256": "54ffaf7598b910d5a88d2d2eec1aa6faa806583915b99b892dd32129c53e421a", + "bytes": 159238 + }, + "/published-5.1.6/artplayer.js": { + "source": { + "kind": "npm-release", + "version": "5.1.6", + "integrity": "sha512-cqnVVLKCKWCryKl6Pmop50/Di9IQwOeNNQs5qWGzJDPiM0qTC7Q/Enusa+8JQid8p09fvp4Vc32ViSSYutdEeQ==", + "member": "package/dist/artplayer.js" + }, + "sha256": "6a7b1f3007ecda9f399e6cff606490dd745c495e19ce10e864a401ff09996172", + "bytes": 155714 + }, + "/published-5.1.2/artplayer.js": { + "source": { + "kind": "npm-release", + "version": "5.1.2", + "integrity": "sha512-eIWlxiP2ghgftaZWIGnclkOpXGFZTOf5xrm6sGZCGx5A8wGbTHRSMe+ZiyPFpbNhBVupi/QObSjX/FcD+YbS1Q==", + "member": "package/dist/artplayer.js" + }, + "sha256": "3dfd035b4cde34c9d9dd1b303f95bfbb42bde105bcb3e5671a8d375a719290b1", + "bytes": 154583 + }, + "/test/audio-tone.m4a": { + "source": { + "kind": "generated-media", + "file": "test/browser/media/audio-tone.m4a" + }, + "sha256": "83e6672b880b5d1c97093b1e26bdc40221c0b279615f40e99dbf9d2ade7b4d56", + "bytes": 132436 + }, + "/test/thumbnail-pattern.mp4": { + "source": { + "kind": "generated-media", + "file": "test/browser/media/thumbnail-pattern.mp4" + }, + "sha256": "4c977be04d97f6ac1342ac4959b8e61678f390d88a088430e4d0200137a03d1c", + "bytes": 752916 + }, + "/test/auto-thumbnail-timeline.mp4": { + "source": { + "kind": "generated-media", + "file": "test/browser/media/auto-thumbnail-timeline.mp4" + }, + "sha256": "10370156cffada462d3ea00aae0caadd62752369cd6538cc55248b3ddd7bf994", + "bytes": 8602 + }, + "/test/vast-skippable.xml": { + "source": { + "kind": "local-vast-fixture", + "file": "test/browser/vast-fixture.mjs" + }, + "sha256": "f810be089e762ea77c08a1f736781fa8f07f5746bab6ec59819bd03d36a46baf", + "bytes": 760 + }, + "/test/declaration-cues.vtt": { + "source": { + "kind": "test-subtitles", + "file": "test/browser/media/declaration-cues.vtt" + }, + "sha256": "5d149d4e641ce41cbb83376835c03daf1fb89f3b9f568fa59e064d51e2b57704", + "bytes": 54 + }, + "/test/thumbnail-grid.svg": { + "source": { + "kind": "test-thumbnail-grid", + "file": "test/browser/media/thumbnail-grid.svg" + }, + "sha256": "bb3f1ec9895d37def77ca4b192d3cd73577a2668558cc99de1588f511d65d3e6", + "bytes": 14969 + }, + "/test/legacy-safe-area.js": { + "source": { + "kind": "frozen-own-source", + "file": "test/helpers/legacy-safe-area.js", + "commit": "ccf77c4e" + }, + "sha256": "ce0368618ef6363b78271b8bcc7973abd0478e797cc464ddd912929e6dfa501a", + "bytes": 795 + }, + "/test/iframe-boundary-child.html": { + "source": { + "kind": "iframe-fixture", + "file": "test/browser/iframe-boundary-child.html" + }, + "sha256": "4721de185f606de7d576e71395127257e476765455e2a947ded79df4ebed901a", + "bytes": 1451 + }, + "/published-5.3.1-beta.1/artplayer.js": { + "source": { + "kind": "npm-release", + "version": "5.3.1-beta.1", + "integrity": "sha512-btjbQwXPl86U/Apja0WrCUF+AXLPacI60eUGAeJTx3EMuUKrVaOFrmWrIeeyMUi5aIzMSXM++tQjlSMJVnmhuQ==", + "member": "package/dist/artplayer.js" + }, + "sha256": "e91e64228c57bb97300c709789d5557ab07b133cab307267b4a2a4df3083c861", + "bytes": 159458 + }, + "/assets/sample/video.mp4": { + "source": { + "kind": "docs-media", + "file": "docs/assets/sample/video.mp4" + }, + "sha256": "30a2de667ba267b6bc605edcee1c4bd728c048ed76f500ea0e73d1f1a6f8f980", + "bytes": 5818706 + }, + "/test/performance.js": { + "source": { + "kind": "adapted-baseline-fixture", + "file": "refactor/fixtures/performance.js" + }, + "sha256": "c5a8a8611db004aadd6c3b82c61b8ae242319c1a12e73bf784c1da06fcebed72", + "bytes": 9251 + } + } + } + }, + { + "project": "webkit", + "status": "passed", + "durationMs": 2324, + "retry": 0, + "browser": "26.6", + "platform": "win32", + "declarations": { + "artplayer-plugin-ads.d.ts": "bf128828d5b104fc844a4f134a02162e57472d8c927a50df7b3878f4c5ed7652", + "artplayer-plugin-ambilight.d.ts": "9f06ccb7398053dca642ca369aa47f54cbb3e4dd4d5e252e999e59e496d8eee8", + "artplayer-plugin-asr.d.ts": "5096f097636c018bc05c497324c271af3fefaebccda7fa3e9cd43b63477704ad", + "artplayer-plugin-audio-track.d.ts": "604af2a3790eb7c583ba150c402dca0a3e458469cc74913b51fee2f3d3882541", + "artplayer-plugin-auto-thumbnail.d.ts": "f66bba7f633202c2ef359a989269c643b75d91594364f7ed6fb67f9898aeac03", + "artplayer-plugin-chapter.d.ts": "d5bd68579659afa44158c894e12372cedd6f958415ced370a65c294550aa828d", + "artplayer-plugin-chromecast.d.ts": "0a0b932081cac0efbcedea28dc1077484963b7f406808378704062661a4c0338", + "artplayer-plugin-danmuku-mask.d.ts": "06c6e938876edcc0ac2c8dcd1e1be4596b0f056685a3523d4c9836f2f2f90362", + "artplayer-plugin-danmuku.d.ts": "e3421bdbdfc6bea1b0b633300350fff1a745d8bc21c1430b6154a23fa3ad0415", + "artplayer-plugin-dash-control.d.ts": "c7e3c83f3377b615e503a270af12915dcc82fe3f2cfabdae396632855a27f73f", + "artplayer-plugin-document-pip.d.ts": "42faa0a6549149efd01b46c3c59246bd4dc33f2383b63b04e9f5376de29fdb8e", + "artplayer-plugin-hls-control.d.ts": "6a623bb6ba4cc0598a3dd1aab5ef7ca4fbae11973a787885eccba10cc7aa2c7c", + "artplayer-plugin-jassub.d.ts": "ce713e0a61a81bfc31087ea1a880a99398ef7c2b833e567c91e4e98f5ae6f621", + "artplayer-plugin-multiple-subtitles.d.ts": "edb15207df69a695311e849555cf989bfc32da20c2456731b6814de5400567bb", + "artplayer-plugin-vast.d.ts": "7cdb941298567b12627313be004a5afff6ef8384f6c5b385ef526a4814be70ce", + "artplayer-plugin-vtt-thumbnail.d.ts": "d82c0fe08bcf9c60e2a634e9f1fd8ccc75dc8e0ddbfa8262cccaefc9604aa61b", + "artplayer-proxy-canvas.d.ts": "83c408e0724a598f9ff32d68d752f39e03feb69ba4f6a49ba02f9d4df898453e", + "artplayer-proxy-mediabunny.d.ts": "acbaa0a25f20ac15b3d79db00b3a16167f84452ab58933110f42dcb3262fbd3e", + "artplayer-tool-iframe.d.ts": "c06c6819146ba64bd6ee498871d9e19ab5a9e88c9cc7bed2c0c4968fa39dfed7", + "artplayer-tool-thumbnail.d.ts": "9b72d10a1fe964d54fcf4774770074058ea739b4f734b52b8f4adebb37fc83e6", + "artplayer.d.ts": "6b038ad9084766023baaa037e6abcd9edde2a3c40b8b9b1dfc5e45c20be7b7ba", + "artplayer-i18n.d.ts": "60851e22ea50ed540f1be0f5a110077cdd5e6ab87345a675838f6c6333517405" + }, + "actual": { + "syntax": [], + "semantic": [], + "declarations": [], + "bad": [ + 2322, + 2345, + 2339, + 2339, + 2322 + ], + "name": "artplayerPluginChapter", + "ready": true, + "instances": 0 + }, + "manifest": { + "kind": "artplayer-browser-test", + "resources": { + "/candidate/artplayer.js": { + "source": { + "kind": "workspace-build", + "entry": "packages\\artplayer\\src\\index.ts" + }, + "sha256": "5139cabd5abf9b92684ee2dcdaa620c4db7f67c0cb1aa3f654435d739468bf9d", + "bytes": 378931 + }, + "/compiled/artplayer.js": { + "source": { + "kind": "workspace-build", + "entry": "packages\\artplayer\\src\\index.ts" + }, + "sha256": "5139cabd5abf9b92684ee2dcdaa620c4db7f67c0cb1aa3f654435d739468bf9d", + "bytes": 378931, + "aliasOf": "/candidate/artplayer.js" + }, + "/uncompiled/artplayer/index.js": { + "source": { + "kind": "workspace-build", + "entry": "packages\\artplayer\\src\\index.ts" + }, + "sha256": "5139cabd5abf9b92684ee2dcdaa620c4db7f67c0cb1aa3f654435d739468bf9d", + "bytes": 378931, + "aliasOf": "/candidate/artplayer.js" + }, + "/candidate/artplayer-plugin-chapter.js": { + "source": { + "kind": "workspace-build", + "entry": "packages\\artplayer-plugin-chapter\\src\\index.ts" + }, + "sha256": "1a8eb891d3690e2526e78a2e53183a25367b1d02a5fd349d821548edb731ee3a", + "bytes": 8529 + }, + "/compiled/artplayer-plugin-chapter.js": { + "source": { + "kind": "workspace-build", + "entry": "packages\\artplayer-plugin-chapter\\src\\index.ts" + }, + "sha256": "1a8eb891d3690e2526e78a2e53183a25367b1d02a5fd349d821548edb731ee3a", + "bytes": 8529, + "aliasOf": "/candidate/artplayer-plugin-chapter.js" + }, + "/uncompiled/artplayer-plugin-chapter/index.js": { + "source": { + "kind": "workspace-build", + "entry": "packages\\artplayer-plugin-chapter\\src\\index.ts" + }, + "sha256": "1a8eb891d3690e2526e78a2e53183a25367b1d02a5fd349d821548edb731ee3a", + "bytes": 8529, + "aliasOf": "/candidate/artplayer-plugin-chapter.js" + }, + "/published/artplayer.js": { + "source": { + "kind": "npm-release", + "version": "5.4.0", + "integrity": "sha512-2B+plbx8N2yNsjK4nJU3+EOG8TULm1LRZk/QPkWRAMEX2Ee/MSnZG/WJYz8kcoZxZuLKcQ3uXifqLuPxZOH29A==", + "member": "package/dist/artplayer.js" + }, + "sha256": "f1db1fa3406aa6d41baa7c554749429a8e79f99d56a794bde23345eb9c07573f", + "bytes": 134037 + }, + "/published/artplayer-plugin-chapter.js": { + "source": { + "kind": "npm-release", + "version": "1.1.0", + "integrity": "sha512-ji66Lr2K2S+OjFMuMby3yq+pefWlOC51Sbpop/DIr2N6w3F0smrF+YZbshN1Dy8/Tx1TYpT7N6WkkZWy5Jix1w==", + "member": "package/dist/artplayer-plugin-chapter.js" + }, + "sha256": "c2aaee11bf1db765433b01d9f8dd3978e41fa4d39655db00ebd03fc0be3e35e0", + "bytes": 4973 + }, + "/test/pattern.mp4": { + "source": { + "kind": "generated-media", + "file": "test/browser/media/pattern.mp4" + }, + "sha256": "0ad1d7ad286aec6e0fa9e27fc1e487e7277df2e603e30040fb942365763d0233", + "bytes": 251538 + }, + "/test/pattern.webm": { + "source": { + "kind": "generated-media", + "file": "test/browser/media/pattern.webm" + }, + "sha256": "9d3c2b3dec9581a599de2d6732992ef7846790e0d1368e6e131bd339b39e984f", + "bytes": 162073 + }, + "/published-4.5.5/artplayer.js": { + "source": { + "kind": "npm-release", + "version": "4.5.5", + "integrity": "sha512-HeAKbe3od9ZgFQVSBCg5FlixJsefDEBC8txVG19yZgvzlcJuiurxPlasap+GHuex/ftG+jmSXnTRtuNrTki2Kw==", + "member": "package/dist/artplayer.js" + }, + "sha256": "3467e626ca29d2f7884e75eb75b8b90de74a25761ffa2e272576c9b5a98fa0a4", + "bytes": 153582 + }, + "/published-5.1.7/artplayer.js": { + "source": { + "kind": "npm-release", + "version": "5.1.7", + "integrity": "sha512-N/QdNlTwsIHUsWOHMPj0pq97v3qmgXZHfhy1q7I+8YN3/XakJiJJyVJgGaeBjU+y/fUIrzBhwpBaX+NFwK9/qw==", + "member": "package/dist/artplayer.js" + }, + "sha256": "484ccc3f22446ec6fd0dd8b8a5602c740b601d55097a1ae043262d92aab35357", + "bytes": 155940 + }, + "/published-4.5.9/artplayer.js": { + "source": { + "kind": "npm-release", + "version": "4.5.9", + "integrity": "sha512-x5JzGdXkw4GFdztvPkVnm8TOWrGDcvGKKMPb9wuP6UfyftlLM3UQctmmalfAMnQSxugJwq2Kb9ix9OG2SgbJJA==", + "member": "package/dist/artplayer.js" + }, + "sha256": "09a9f09e3a64a02ca7c27af710d7254f886f0bfb09fd54bf3a728ce863e5a497", + "bytes": 156408 + }, + "/published-5.3.0/artplayer.js": { + "source": { + "kind": "npm-release", + "version": "5.3.0", + "integrity": "sha512-yExO39MpEg4P+bxgChxx1eJfiUPE4q1QQRLCmqGhlsj+ANuaoEkR8hF93LdI5ZyrAcIbJkuEndxEiUoKobifDw==", + "member": "package/dist/artplayer.js" + }, + "sha256": "54ffaf7598b910d5a88d2d2eec1aa6faa806583915b99b892dd32129c53e421a", + "bytes": 159238 + }, + "/published-5.1.6/artplayer.js": { + "source": { + "kind": "npm-release", + "version": "5.1.6", + "integrity": "sha512-cqnVVLKCKWCryKl6Pmop50/Di9IQwOeNNQs5qWGzJDPiM0qTC7Q/Enusa+8JQid8p09fvp4Vc32ViSSYutdEeQ==", + "member": "package/dist/artplayer.js" + }, + "sha256": "6a7b1f3007ecda9f399e6cff606490dd745c495e19ce10e864a401ff09996172", + "bytes": 155714 + }, + "/published-5.1.2/artplayer.js": { + "source": { + "kind": "npm-release", + "version": "5.1.2", + "integrity": "sha512-eIWlxiP2ghgftaZWIGnclkOpXGFZTOf5xrm6sGZCGx5A8wGbTHRSMe+ZiyPFpbNhBVupi/QObSjX/FcD+YbS1Q==", + "member": "package/dist/artplayer.js" + }, + "sha256": "3dfd035b4cde34c9d9dd1b303f95bfbb42bde105bcb3e5671a8d375a719290b1", + "bytes": 154583 + }, + "/test/audio-tone.m4a": { + "source": { + "kind": "generated-media", + "file": "test/browser/media/audio-tone.m4a" + }, + "sha256": "83e6672b880b5d1c97093b1e26bdc40221c0b279615f40e99dbf9d2ade7b4d56", + "bytes": 132436 + }, + "/test/thumbnail-pattern.mp4": { + "source": { + "kind": "generated-media", + "file": "test/browser/media/thumbnail-pattern.mp4" + }, + "sha256": "4c977be04d97f6ac1342ac4959b8e61678f390d88a088430e4d0200137a03d1c", + "bytes": 752916 + }, + "/test/auto-thumbnail-timeline.mp4": { + "source": { + "kind": "generated-media", + "file": "test/browser/media/auto-thumbnail-timeline.mp4" + }, + "sha256": "10370156cffada462d3ea00aae0caadd62752369cd6538cc55248b3ddd7bf994", + "bytes": 8602 + }, + "/test/vast-skippable.xml": { + "source": { + "kind": "local-vast-fixture", + "file": "test/browser/vast-fixture.mjs" + }, + "sha256": "f810be089e762ea77c08a1f736781fa8f07f5746bab6ec59819bd03d36a46baf", + "bytes": 760 + }, + "/test/declaration-cues.vtt": { + "source": { + "kind": "test-subtitles", + "file": "test/browser/media/declaration-cues.vtt" + }, + "sha256": "5d149d4e641ce41cbb83376835c03daf1fb89f3b9f568fa59e064d51e2b57704", + "bytes": 54 + }, + "/test/thumbnail-grid.svg": { + "source": { + "kind": "test-thumbnail-grid", + "file": "test/browser/media/thumbnail-grid.svg" + }, + "sha256": "bb3f1ec9895d37def77ca4b192d3cd73577a2668558cc99de1588f511d65d3e6", + "bytes": 14969 + }, + "/test/legacy-safe-area.js": { + "source": { + "kind": "frozen-own-source", + "file": "test/helpers/legacy-safe-area.js", + "commit": "ccf77c4e" + }, + "sha256": "ce0368618ef6363b78271b8bcc7973abd0478e797cc464ddd912929e6dfa501a", + "bytes": 795 + }, + "/test/iframe-boundary-child.html": { + "source": { + "kind": "iframe-fixture", + "file": "test/browser/iframe-boundary-child.html" + }, + "sha256": "4721de185f606de7d576e71395127257e476765455e2a947ded79df4ebed901a", + "bytes": 1451 + }, + "/published-5.3.1-beta.1/artplayer.js": { + "source": { + "kind": "npm-release", + "version": "5.3.1-beta.1", + "integrity": "sha512-btjbQwXPl86U/Apja0WrCUF+AXLPacI60eUGAeJTx3EMuUKrVaOFrmWrIeeyMUi5aIzMSXM++tQjlSMJVnmhuQ==", + "member": "package/dist/artplayer.js" + }, + "sha256": "e91e64228c57bb97300c709789d5557ab07b133cab307267b4a2a4df3083c861", + "bytes": 159458 + }, + "/assets/sample/video.mp4": { + "source": { + "kind": "docs-media", + "file": "docs/assets/sample/video.mp4" + }, + "sha256": "30a2de667ba267b6bc605edcee1c4bd728c048ed76f500ea0e73d1f1a6f8f980", + "bytes": 5818706 + }, + "/test/performance.js": { + "source": { + "kind": "adapted-baseline-fixture", + "file": "refactor/fixtures/performance.js" + }, + "sha256": "c5a8a8611db004aadd6c3b82c61b8ae242319c1a12e73bf784c1da06fcebed72", + "bytes": 9251 + } + } + } + } + ], + "generatorTests": { + "command": "node --test test/editor-types.test.js", + "exitCode": 0, + "passed": 4, + "failed": 0, + "skipped": 0, + "log": "refactor/.cache/editor-vast-generator-tests.log", + "sha256": "c6b95f893eeedf3b98acf7c12da2006038370a2708b46fd4f8c4d43f0d7dbf85" + }, + "lint": { + "command": "node node_modules/eslint/bin/eslint.js test/browser/editor-declarations.spec.js", + "exitCode": 0 + }, + "inputs": [ + { + "file": "test/browser/editor-declarations.spec.js", + "sha256": "8983b0ad889248bc483f0f60f799c09892a01d9102e290b2fe88e1f074e52a2b" + }, + { + "file": "scripts/editor-declarations/README.md", + "sha256": "417655503c16548af365a469b1f19cae3b1e15dcf29bb8bfe70a2e0b22f50b53" + }, + { + "file": "scripts/editor-declarations/plugin.ts", + "sha256": "5678bd5fe5d23669c734463196e2f96eaa75d891b713002e60819196e1e6dfbe" + }, + { + "file": "packages/artplayer-plugin-vast/types/artplayer-plugin-vast.d.ts", + "sha256": "51257361f482f026a9b5ba84ca85d320d9e1457a34d0d259ac3c7b46c4fbd29c" + }, + { + "file": "packages/artplayer-plugin-vast/types/runtime-api.d.ts", + "sha256": "4634b65f2d1bbd6973a40390f3217251b69fc5167198a8409d9fed48500e106d" + }, + { + "file": "test/editor-types.test.js", + "sha256": "d7ec667112f0b7ef0377cf085e5848ed21426b527c0c7c388fb6ad88a4040742" + } + ], + "limits": [ + "Only the browser consumer and maintenance documentation changed; public root/runtime declarations and generated assets are unchanged.", + "The original complete Firefox run remains failed; only the changed case was rerun in all three engines.", + "VAST callback code is compiled but never invoked. No IMA SDK, remote Actions, physical-device or full installed-browser acceptance." + ] +} diff --git a/refactor/changes/2026-09-15-SITE-EDITOR-VAST-01-consumer.md b/refactor/changes/2026-09-15-SITE-EDITOR-VAST-01-consumer.md new file mode 100644 index 000000000..484c1c36f --- /dev/null +++ b/refactor/changes/2026-09-15-SITE-EDITOR-VAST-01-consumer.md @@ -0,0 +1,52 @@ +# SITE-EDITOR-VAST-01:编辑器消费者跟随已批准的 VAST 根类型 + +基线 `4545c436795b3c9ec1600ea2fab8adafe9bcf41b`。完整 Firefox 源码回归 +发现在线 Monaco 用例仍引用工作区版 `artplayerPluginVast.ArtplayerPluginVastOption`、 +`context.init()` 和 `context.playerOptions`,而 PKG-VAST-04 已按用户批准的 +[类型决策](../vast-type-decision.md)恢复 npm 1.0.0 根声明。实际报错为找不到命名空间 +(2503),随后回调参数成为隐式 any(7006)。这不是新发现的公开声明回归。 + +## 修改与兼容边界 + +只更新当前浏览器消费者:使用 `Parameters[0]` +提取历史根入口的回调类型,检查 id、容器、核心实例及 playUrl/playRes。 +非法 id、URL 参数、工作区专有 init/playerOptions 和非法 Chapter 时间分别要求 +2322、2345、2339、2339、2322。继续要求语法、消费者语义及全部22份声明零错误。 +Chapter 仍执行 Monaco 真正生成的代码,等待原生 ready 后销毁,并断言实例清零。 +VAST 回调只编译,不调用广告 SDK,也不把这个测试说成 IMA 验收。 + +没有改生产源码、根声明、/runtime、生成器或生成资源。没有用 any、skipLibCheck、 +忽略诊断或删除负例绕过冲突。Node 中针对冻结工作区 VAST 的命名类型和 SDK 检查 +继续保留,它验证历史生成路径,不应反过来定义当前编辑器接口。维护入口同步到 +scripts/editor-declarations/README.md。无需新增依赖、重建分发或迁移消费者。 + +## 实际验证 + +固定 Node 24.21.0 / Yarn 1.22.22,Windows。 + +- 修改前完整 `yarn test:browser:source --project=firefox --workers=2`:174文件、 + 1664项,1662通过、2失败、0跳过、0重试,1460.175秒。运行期间跟踪文件未改。 + 原完整 JSON、trace、截图、日志归档保留,见 + [完整源码证据](../baselines/ci-source-firefox-validation.json)。 +- 修改后三引擎 `yarn test:browser test/browser/editor-declarations.spec.js --workers=1 --reporter=json`: + 3/3通过,0跳过/重试;全部声明和正例零诊断,五项负例逐项拒绝,Chapter运行及销毁通过。 +- `node --test test/editor-types.test.js`:4/4通过,继续验证当前输出和冻结历史消费者。 +- 修改的浏览器文件定向 ESLint、严格工具链、计划/风险生成与检查通过; + 风险登记校验器的2项负对照测试通过。 + +详细结果和输入/原始报告哈希见 +[修复证据](../baselines/editor-vast-consumer-validation.json)。 + +## 完整回归的剩余失败 + +另一项是裸 dash.js 4.5.2 在暂停后 seek=6 未恢复到大于6.2;没有创建 ArtPlayer, +也没有加载候选插件。候选插件的新旧核心、SDK4.5.2/5.2.1四项严格边界 seek 均通过。 +DASH-SEEK-01 保持开放。未修改、跳过或重分类该失败,也未为它增加重试或延长超时。 + +修复后只重跑相关三引擎用例,不宣称完整 Firefox 回归已全绿。source范围包含 +明确冻结的历史包、SDK和分发对照,不等于全部依赖都由源码即时生成;受控窗口、 +能力及历史缺陷断言也不等于所有原生功能通过。尚缺完整安装矩阵、WebKit全量、 +远端Actions和物理设备,以及三轮发布复盘。CI-01继续doing。 + +回退本独立提交可恢复原测试和维护记录;公开API和运行时代码始终未变。 +本地提交,不推送、部署或发布。 diff --git a/refactor/plan.md b/refactor/plan.md index 7a9125ddf..b24120f8b 100644 --- a/refactor/plan.md +++ b/refactor/plan.md @@ -2,9 +2,9 @@ > 由 tasks.json 生成。请修改数据后运行 `node refactor/scripts/plan.mjs --write`,不要手改本表。 -基线:`40fcda6a37d0049d42e49c1e64e70d4fd9ba5f7f`。总任务 279 项,范围 22 个包及工作区/示例。 +基线:`40fcda6a37d0049d42e49c1e64e70d4fd9ba5f7f`。总任务 280 项,范围 22 个包及工作区/示例。 -状态:todo 43 / doing 21 / blocked 0 / done 215 / deferred 0。风险 L/M/H 表示兼容风险,不表示工期。 +状态:todo 43 / doing 21 / blocked 0 / done 216 / deferred 0。风险 L/M/H 表示兼容风险,不表示工期。 前置依赖是启动条件;验收是完成条件。任务可以继续拆分,但不能复用或悄悄删除旧 ID。 @@ -29,13 +29,13 @@ | artplayer-plugin-hls-control | 1.1.0 | PKG-HLS-01, PKG-HLS-02, PKG-HLS-03, PKG-HLS-04, PKG-HLS-SDK-01, PKG-HLS-05, PKG-HLS-06, SITE-HLS-01, PKG-HLS-PACK-01, CI-TYPES-01 | | artplayer-plugin-jassub | 1.1.0 | PKG-JASSUB-01, PKG-JASSUB-02, PKG-JASSUB-03, PKG-JASSUB-04, PKG-JASSUB-05, PKG-JASSUB-06, PKG-JASSUB-07, PKG-JASSUB-08, PKG-JASSUB-09, PKG-JASSUB-10 | | artplayer-plugin-multiple-subtitles | 1.2.0 | PKG-MULTI-SUB-01, PKG-MULTI-SUB-02, PKG-MULTI-SUB-03, PKG-MULTI-SUB-04, PKG-MULTI-SUB-07, PKG-MULTI-SUB-08, PKG-MULTI-SUB-05, PKG-MULTI-SUB-06, PKG-MULTI-SUB-09, PKG-MULTI-SUB-10, PKG-MULTI-SUB-11 | -| artplayer-plugin-vast | 1.2.0 | PKG-VAST-01, PKG-VAST-02, PKG-VAST-03, PKG-VAST-04, PKG-VAST-05, PKG-VAST-06, PKG-VAST-07, ENG-LINT-02 | +| artplayer-plugin-vast | 1.2.0 | PKG-VAST-01, PKG-VAST-02, PKG-VAST-03, PKG-VAST-04, PKG-VAST-05, PKG-VAST-06, PKG-VAST-07, ENG-LINT-02, SITE-EDITOR-VAST-01 | | artplayer-plugin-vtt-thumbnail | 1.1.0 | PKG-VTT-THUMB-01, PKG-VTT-THUMB-02, PKG-VTT-THUMB-03, PKG-VTT-THUMB-04, PKG-VTT-THUMB-05, PKG-VTT-THUMB-06, SITE-VTT-01 | | artplayer-proxy-canvas | 1.1.0 | PKG-AMBILIGHT-PROXY-01, PKG-CANVAS-01, PKG-CANVAS-02, PKG-CANVAS-03, PKG-CANVAS-04, PKG-CANVAS-05, PKG-CANVAS-06, PKG-FACTORY-01, PKG-CANVAS-SUBTITLE-01 | | artplayer-proxy-mediabunny | 1.2.0 | PKG-MB-01, PKG-MB-02, PKG-MB-03, PKG-MB-04, PKG-MB-05, PKG-MB-06, PKG-MB-07, PKG-MB-08, PKG-MB-09, PKG-MB-10 | | artplayer-tool-iframe | 1.1.0 | PKG-IFRAME-01, PKG-IFRAME-02, PKG-IFRAME-03, PKG-IFRAME-04, PKG-IFRAME-05, PKG-IFRAME-06 | | artplayer-tool-thumbnail | 4.4.0 | PKG-TOOL-THUMB-01, PKG-TOOL-THUMB-02, PKG-TOOL-THUMB-03, PKG-TOOL-THUMB-04, PKG-TOOL-THUMB-05, PKG-TOOL-THUMB-06, PKG-TOOL-THUMB-07 | -| artplayer-vitepress | 1.1.0 | SITE-01, SITE-SMOKE-01, SITE-02, SITE-LOAD-01, SITE-AI-DOCS-01, SITE-BUILD-01, SITE-03, SITE-DANMUKU-01, SITE-HLS-01, SITE-DASH-01, SITE-04, SITE-05, SITE-06, SITE-07, SITE-VCONSOLE-01, ENG-LINT-02, SITE-CONSOLE-01, SITE-AUDIO-01, SITE-VTT-01, SITE-ROUTES-01 | +| artplayer-vitepress | 1.1.0 | SITE-01, SITE-SMOKE-01, SITE-02, SITE-LOAD-01, SITE-AI-DOCS-01, SITE-BUILD-01, SITE-03, SITE-DANMUKU-01, SITE-HLS-01, SITE-DASH-01, SITE-04, SITE-05, SITE-06, SITE-07, SITE-VCONSOLE-01, ENG-LINT-02, SITE-CONSOLE-01, SITE-AUDIO-01, SITE-VTT-01, SITE-ROUTES-01, SITE-EDITOR-VAST-01 | ## 0 规划 @@ -96,7 +96,7 @@ | CI-01 | workspace
增强兼容矩阵、并发缓存与 CI 报告 | DOC-10, ENG-08, ENG-09, ENG-10 | OS/Node/TS/浏览器与影响范围矩阵、缓存、超时、汇总检查和 artifact 报告 | 固定安装、失败/取消不误报、核心影响全生态;检查只读,失败证据可追溯 | H | doing | | CI-02 | workspace
分离并改进 GitHub Pages 部署 | DOC-10, ENG-02, SITE-03 | Pages artifact 部署配置、旧路径/域名核对、预检和迁移恢复指南 | 部署只取受信任已验证产物;本地实现可验收,远端 source/环境和实际部署状态单独登记 | H | done | | CI-03 | workspace
建立 npm 分包候选与发布工作流 | DOC-10, CI-01, REL-08, REL-04, CI-NPM-01 | 候选准备、精确 artifact 发布配置、OIDC 评估、版本/tag/registry 预检和部分失败恢复 | 不自动发布;明确逐包信任前置和 dry run 限制,不能重建未验证内容或重发冲突版本;按版本清单校验各包下一 major 和预发布/正式 tag,保留旧核心支持范围 | H | todo | -| CI-04 | workspace
验收 GitHub 流水线与远端发布准入 | CI-01, CI-02, CI-03, SITE-06, CI-BROWSER-01, CI-TYPES-01, CI-TYPES-02 | 静态/干净环境检查、真实 PR 正反例、候选 dry run、required checks/Pages/npm 必需配置状态及运维指南 | 必要 Actions 证据和远端配置核对齐全;缺失保持未完成,真实 publish/deploy 仍在授权发布步骤执行 | H | todo | +| CI-04 | workspace
验收 GitHub 流水线与远端发布准入 | CI-01, CI-02, CI-03, SITE-06, CI-BROWSER-01, CI-TYPES-01, CI-TYPES-02, SITE-EDITOR-VAST-01 | 静态/干净环境检查、真实 PR 正反例、候选 dry run、required checks/Pages/npm 必需配置状态及运维指南 | 必要 Actions 证据和远端配置核对齐全;缺失保持未完成,真实 publish/deploy 仍在授权发布步骤执行 | H | todo | | CI-BROWSER-01 | workspace
分离源码与已安装产物浏览器验证范围 | ENG-05, ENG-07 | 完整源码入口、明确已安装包子集、分开的报告目录与失败传播 | 混用输入旧红新绿;源码默认保留所有spec,已安装入口严格校验四包来源;两类报告都保留,源码失败不能误报全绿;不代表完整远端或全包验收 | M | done | | CI-NPM-01 | workspace
从已验收候选准备不可重建的npm交付包 | DOC-10, REL-08, REL-04 | 复用严格准入台账、复制精确tarball、绑定源码/工具链/证据/摘要的本地准备命令及反向测试;供CI-03后续受信任artifact工作流使用 | 缺候选或任一准入缺口即拒绝;不构建、不安装、不联网或发布;阻止路径越界、脏源码、复制期间漂移及半成品冒充完成,声明远端信任/OIDC/registry预检仍未实现 | H | done | | CI-TYPES-01 | workspace, artplayer-plugin-audio-track, artplayer-plugin-hls-control
接入 Audio/HLS 安装后严格类型消费者 | ENG-07, PKG-AUDIO-04, PKG-HLS-04 | 共享隔离编译器模块、真实 tarball 的五模式正反例和声明路径证据 | 旧/新编译器所有正例通过,每条无效调用实际报错;仓库外声明解析、缺声明/any/逃逸负例有效;保留独立运行时和浏览器验收 | M | done | @@ -411,7 +411,7 @@ | SITE-BUILD-01 | artplayer, artplayer-vitepress, workspace
重构 i18n 与文档构建的暂存、替换和 Yarn 编排 | SITE-AI-DOCS-01 | 严格 TS 构建模块、编译后替换产物与失败回退,固定 Yarn 子进程和旧构建入口 | 旧 i18n 删除后失败有复现;失败不改变既有产物;语言集合、UMD/ESM/历史别名兼容;文档子进程退出码准确并完成真实 VitePress 构建;不隐式翻译、不修改播放器 API | M | done | | SITE-03 | artplayer-vitepress
整理 i18n/文档/LLM 生成流程 | SITE-02, SITE-LOAD-01, SITE-AI-DOCS-01, SITE-BUILD-01 | build-i18n/build-docs/build-llm/trans-docs 的任务边界和错误处理;桌面 common.js 自有 UI 的 TS 迁移与模块拆分 | 原命令兼容、生成可复现,翻译步骤不隐式运行远程服务;覆盖移动 loader 失败恢复 define、脚本依赖顺序、localhost/127.0.0.1 Run Code 目标和语言重定向;桌面剩余 UI 完成 TS 职责拆分并回归运行、导入与持久设置 | M | done | | SITE-DANMUKU-01 | artplayer-vitepress, artplayer-plugin-danmuku
核对弹幕双语指南并补齐英文入口 | SITE-03, PKG-DANMUKU-07 | 按实现修正中文调用说明,新增英文完整选项/API/热力图/类型指南和导航;同步生成站点与LLM资料,新增双语示例浏览器验收 | 旧中文URL和标题保留;实际方法返回、加载语义、回调与points边界准确;双语页面、Run Code及示例实测,完整插件组合和设备验收不冒充完成 | L | done | -| SITE-04 | artplayer-vitepress
交叉核对逐包持续维护的文档 | CORE-21, SITE-03, PKG-CHAPTER-04, PKG-AMBILIGHT-04, PKG-AUDIO-04, PKG-AUTO-THUMB-04, PKG-VTT-THUMB-04, PKG-HLS-04, PKG-DASH-04, PKG-MULTI-SUB-04, PKG-JASSUB-04, PKG-MASK-04, PKG-ASR-04, PKG-ADS-04, PKG-VAST-04, PKG-CAST-04, PKG-DPIP-04, PKG-CANVAS-04, PKG-IFRAME-04, PKG-TOOL-THUMB-04, PKG-DANMUKU-06, PKG-MB-08, SITE-DANMUKU-01, SITE-HLS-01, SITE-DASH-01, SITE-AUDIO-01, SITE-VTT-01, SITE-ROUTES-01 | 已随实现更新的中文/英文 API、包内实现地图、旧 JS 示例及已知能力限制的全包核对 | 未把缺环境的能力写成已验证,静态核对不等待设备任务;最终 demo 仍由 EX-03 验收;按 SITE-01 声明成员/候选标题清单逐项语义核对,补齐缺失的双语插件说明和 Danmuku 英文入口 | M | todo | +| SITE-04 | artplayer-vitepress
交叉核对逐包持续维护的文档 | CORE-21, SITE-03, PKG-CHAPTER-04, PKG-AMBILIGHT-04, PKG-AUDIO-04, PKG-AUTO-THUMB-04, PKG-VTT-THUMB-04, PKG-HLS-04, PKG-DASH-04, PKG-MULTI-SUB-04, PKG-JASSUB-04, PKG-MASK-04, PKG-ASR-04, PKG-ADS-04, PKG-VAST-04, PKG-CAST-04, PKG-DPIP-04, PKG-CANVAS-04, PKG-IFRAME-04, PKG-TOOL-THUMB-04, PKG-DANMUKU-06, PKG-MB-08, SITE-DANMUKU-01, SITE-HLS-01, SITE-DASH-01, SITE-AUDIO-01, SITE-VTT-01, SITE-ROUTES-01, SITE-EDITOR-VAST-01 | 已随实现更新的中文/英文 API、包内实现地图、旧 JS 示例及已知能力限制的全包核对 | 未把缺环境的能力写成已验证,静态核对不等待设备任务;最终 demo 仍由 EX-03 验收;按 SITE-01 声明成员/候选标题清单逐项语义核对,补齐缺失的双语插件说明和 Danmuku 英文入口 | M | todo | | SITE-05 | artplayer-vitepress
构建文档站和验证链接/示例 | SITE-04, EX-01, EX-02, SITE-07, SITE-VCONSOLE-01, SITE-CONSOLE-01 | VitePress 构建、链接与嵌入 demo 检查 | 文档构建、链接、嵌入路径与声明注入通过;真实完整 demo 保留 EX-03 独立门槛;核对 ENG-PM-01 登记的搜索 peer 范围和真实搜索行为 | M | todo | | SITE-06 | artplayer-vitepress
文档站交付验收 | SITE-05 | 维护指南和站点变更记录 | 未手改 generated 目录,旧 URL 可用、部署与检查分离 | M | todo | | SITE-07 | artplayer-vitepress, workspace
整理站点第三方资产与来源说明 | SITE-01 | Monaco/vConsole/console bundle/字体和样本的冻结来源、可复现构建或替代与站点 notices | 接续 SITE-01 的字节与换行差异证据;完整许可随实际分发,consoleLog/global/CSS/worker 与旧 URL 兼容;缺字体/媒体使用依据明确处置;资产变更后执行编辑器/移动/字幕/示例回归,不以来源指纹替代授权或运行证据 | H | doing | @@ -421,6 +421,7 @@ | SITE-VCONSOLE-01 | artplayer-vitepress, workspace
修复 vConsole 日志帧与延迟面板销毁竞态 | SITE-01 | 冻结上游 bundle 的可复现 TS 生命周期补丁、旧红新绿回归、来源及生成检查;销毁后虚拟列表布局续段停止 | 最后日志插件移除后取消 RAF 并隔离旧队列;延迟面板不得写入已销毁或替换插件;三引擎移动页与 UMD 入口通过,维护声明与原有许可缺口分别记录;原生 ResizeObserver 布局与挂起 timer 旧红新绿 | M | done | | SITE-CONSOLE-01 | artplayer-vitepress, workspace
迁移控制台自有 TS 源码并修复日志生命周期 | SITE-03 | 从冻结 console.js 恢复自有入口/视图的 TS 模块、受控第三方边界与可验证构建;修复滚动回调、多容器 hook 所有权和原生 Error 消息丢失 | 保留 consoleLog 返回组件、React/ReactDOM/Parcel 全局及 DOM/CSS/日志对象语义;旧版复现与候选正确行为分开验证;多容器、卸载/重挂、外部 hook、错误/滚动及真实编辑器组合通过;架构与生成文档同批更新,不以冻结 vendor 代替 SITE-07 许可闭环 | H | done | | SITE-ROUTES-01 | artplayer-vitepress, workspace
将新增文档HTML纳入保留历史的路径覆盖台账 | BASE-04, SITE-03 | 不覆盖BASE-04的HTML增量台账、准确路由/责任校验及完整CI证据 | 复现完整ci:check的路径覆盖失败;新页面必须显式登记,拒绝漏项/重复/错误路由/越界/缺任务和提交,保留旧页面保护及浏览器验收边界 | M | done | +| SITE-EDITOR-VAST-01 | artplayer-vitepress, artplayer-plugin-vast
修正 Monaco 对 VAST 已批准根类型的消费者 | SITE-02, PKG-VAST-04 | 当前编辑器根类型正反例与冻结工作区生成器测试分离,保留完整 Firefox 失败证据 | 22份声明一起零诊断,历史根回调字段受检,工作区字段被拒绝,三引擎真实 Monaco 编译和 Chapter 运行清理通过;不改变公开类型或忽略诊断 | M | done | ## 6 文档和示例 @@ -535,7 +536,7 @@ - ENG-09: [记录](changes/2026-09-12-ENG-09-integration.md) [记录](baselines/engineering-integration.json) - ENG-10: [记录](changes/2026-09-10-ENG-10-test-reliability.md) [记录](test-reliability.md) - ENG-11: [记录](build-analysis.md) [记录](baselines/bundle-attribution.json) [记录](changes/2026-09-11-ENG-11-build-analysis.md) -- CI-01: [记录](ci-setup.md) [记录](changes/2026-09-13-CI-01-matrix-summary.md) [记录](baselines/ci-matrix-validation.json) [记录](changes/2026-09-13-CI-01-node-consumers.md) [记录](baselines/node-consumer-validation.json) [记录](changes/2026-09-14-CI-01-installed-full.md) [记录](baselines/ci-installed-full-validation.json) [记录](changes/2026-09-14-CI-01-source-chromium.md) [记录](baselines/ci-source-chromium-validation.json) [记录](changes/2026-09-15-CI-01-ads-installed.md) [记录](baselines/ci-ads-installed-validation.json) [记录](changes/2026-09-15-CI-01-subtitles-installed.md) [记录](baselines/ci-subtitles-installed-validation.json) [记录](changes/2026-09-15-CI-01-adaptive-installed.md) [记录](baselines/ci-adaptive-installed-validation.json) [记录](changes/2026-09-15-CI-01-asr-cast-installed.md) [记录](baselines/ci-asr-cast-installed-validation.json) [记录](changes/2026-09-15-CI-01-mediabunny-installed.md) [记录](baselines/ci-mediabunny-installed-validation.json) [记录](changes/2026-09-15-CI-01-jassub-installed.md) [记录](baselines/ci-jassub-installed-validation.json) [记录](changes/2026-09-15-CI-01-danmuku-installed.md) [记录](baselines/ci-danmuku-installed-validation.json) [记录](changes/2026-09-15-CI-01-browser-matrix.md) [记录](baselines/ci-browser-matrix-validation.json) [记录](changes/2026-09-15-CI-01-iframe-installed.md) [记录](baselines/ci-iframe-installed-validation.json) [记录](changes/2026-09-15-CI-01-vast-installed.md) [记录](baselines/ci-vast-installed-validation.json) [记录](changes/2026-09-15-CI-01-rendering-policy.md) [记录](baselines/ci-rendering-policy-validation.json) [记录](changes/2026-09-15-SITE-ROUTES-01-html-inventory.md) [记录](baselines/site-routes-validation.json) +- CI-01: [记录](ci-setup.md) [记录](changes/2026-09-13-CI-01-matrix-summary.md) [记录](baselines/ci-matrix-validation.json) [记录](changes/2026-09-13-CI-01-node-consumers.md) [记录](baselines/node-consumer-validation.json) [记录](changes/2026-09-14-CI-01-installed-full.md) [记录](baselines/ci-installed-full-validation.json) [记录](changes/2026-09-14-CI-01-source-chromium.md) [记录](baselines/ci-source-chromium-validation.json) [记录](changes/2026-09-15-CI-01-ads-installed.md) [记录](baselines/ci-ads-installed-validation.json) [记录](changes/2026-09-15-CI-01-subtitles-installed.md) [记录](baselines/ci-subtitles-installed-validation.json) [记录](changes/2026-09-15-CI-01-adaptive-installed.md) [记录](baselines/ci-adaptive-installed-validation.json) [记录](changes/2026-09-15-CI-01-asr-cast-installed.md) [记录](baselines/ci-asr-cast-installed-validation.json) [记录](changes/2026-09-15-CI-01-mediabunny-installed.md) [记录](baselines/ci-mediabunny-installed-validation.json) [记录](changes/2026-09-15-CI-01-jassub-installed.md) [记录](baselines/ci-jassub-installed-validation.json) [记录](changes/2026-09-15-CI-01-danmuku-installed.md) [记录](baselines/ci-danmuku-installed-validation.json) [记录](changes/2026-09-15-CI-01-browser-matrix.md) [记录](baselines/ci-browser-matrix-validation.json) [记录](changes/2026-09-15-CI-01-iframe-installed.md) [记录](baselines/ci-iframe-installed-validation.json) [记录](changes/2026-09-15-CI-01-vast-installed.md) [记录](baselines/ci-vast-installed-validation.json) [记录](changes/2026-09-15-CI-01-rendering-policy.md) [记录](baselines/ci-rendering-policy-validation.json) [记录](changes/2026-09-15-SITE-ROUTES-01-html-inventory.md) [记录](baselines/site-routes-validation.json) [记录](baselines/ci-source-firefox-validation.json) [记录](changes/2026-09-15-SITE-EDITOR-VAST-01-consumer.md) - CI-02: [记录](changes/2026-09-14-CI-02-pages-artifact.md) [记录](baselines/pages-artifact-validation.json) [记录](pages-deployment.md) - PILOT-01: [记录](changes/2026-09-10-PILOT-01-chapter.md) [记录](baselines/pilot-validation.json) - CORE-01: [记录](changes/2026-09-10-CORE-01-typed-utils.md) [记录](baselines/core-utils-validation.json) @@ -734,3 +735,4 @@ - SITE-ROUTES-01: [记录](changes/2026-09-15-SITE-ROUTES-01-html-inventory.md) [记录](baselines/site-routes-validation.json) - CI-TYPES-01: [记录](changes/2026-09-15-CI-TYPES-01-installed-consumers.md) [记录](baselines/installed-plugin-types-validation.json) - CI-TYPES-02: [记录](changes/2026-09-15-CI-TYPES-02-ecosystem.md) [记录](baselines/ecosystem-types-validation.json) +- SITE-EDITOR-VAST-01: [记录](changes/2026-09-15-SITE-EDITOR-VAST-01-consumer.md) [记录](baselines/editor-vast-consumer-validation.json) [记录](baselines/ci-source-firefox-validation.json) [记录](vast-type-decision.md) diff --git a/refactor/progress.md b/refactor/progress.md index 6f0ac97c7..777d65b08 100644 --- a/refactor/progress.md +++ b/refactor/progress.md @@ -1,5 +1,22 @@ # 进度与证据 +## SITE-EDITOR-VAST-01 与完整 Firefox 源码回归 + +固定4545c4367执行174文件/1664项完整Firefox源码回归:1662通过、2失败, +0跳过/重试,1460.175秒。原报告已归档:裸dash.js4.5.2暂停seek故障继续开放; +另一项是Monaco用例仍使用VAST工作区类型,与已批准恢复的npm根声明冲突。 + +当前消费者改用Parameters提取根回调,检查id/容器/核心和URL/XML参数; +五项负例包含工作区专属字段拒绝。三引擎3/3通过,22声明与正例零错误, +Chapter实际编译运行及销毁通过,4项Node生成器测试和定向lint通过。 +公开声明、生产代码和生成资源未改,冻结工作区生成测试仍保留。见 +[记录](changes/2026-09-15-SITE-EDITOR-VAST-01-consumer.md)、[修复证据](baselines/editor-vast-consumer-validation.json)和 +[全量原始结果](baselines/ci-source-firefox-validation.json)。 + +新增独立修复任务完成,216 done、21 doing、43 todo,共280;CI-01继续doing。 +没有重跑并宣称完整Firefox全绿,没有远端Actions、设备、部署或发布验收。 + + ## SITE-07 选定字体通知与差异检查点 CHAWP与作者固定Git文件完全一致;Liberation、Averia Sans、Lato的字形/映射/ diff --git a/refactor/risk-table.md b/refactor/risk-table.md index 2f1d1e030..16f9ea033 100644 --- a/refactor/risk-table.md +++ b/refactor/risk-table.md @@ -288,3 +288,4 @@ | CI-BROWSER-MODE-01 | resolved / 已复现 | Installed browser validation can inherit rendering substitutions and direct config loading bypasses launcher diagnostic policy | CI-01 | | AUTO-THUMB-REGISTRATION-01 | resolved / 已复现 | Delayed direct factory installation on a destroyed host retains subscriptions and can restart hidden decoding | PKG-AUTO-THUMB-13 | | SITE-HTML-INVENTORY-01 | resolved / 已复现 | New documentation HTML is missing from historical demo route coverage, failing the complete local CI check | SITE-ROUTES-01 | +| SITE-EDITOR-VAST-01 | resolved / 已复现 | Monaco browser consumer still assumes the workspace VAST namespace after the approved npm-root restoration | SITE-EDITOR-VAST-01 | diff --git a/refactor/risks.json b/refactor/risks.json index 82c1d5403..beac07e41 100644 --- a/refactor/risks.json +++ b/refactor/risks.json @@ -3204,11 +3204,13 @@ "refactor/changes/2026-09-14-PKG-DASH-SEEK-01-buffer-metrics.md", "refactor/baselines/dash-seek-recovery-validation.json", "refactor/changes/2026-09-15-CI-01-adaptive-installed.md", - "refactor/baselines/ci-adaptive-installed-validation.json" + "refactor/baselines/ci-adaptive-installed-validation.json", + "refactor/baselines/ci-source-firefox-validation.json", + "refactor/changes/2026-09-15-SITE-EDITOR-VAST-01-consumer.md" ], "compatibleResolution": "PKG-DASH-SEEK-01 已在候选插件按精确版本和真实空缓冲同步 SDK 指标,新旧核心及两引擎严格跳转通过。裸 SDK 4.5.2 和冻结旧插件仍保留原始失败;不伪造媒体事件、不偏移 seek、不强制升级 SDK,完整组合及发布验收仍开放。", "closureCriteria": "原失败的新旧核心/插件组合有确定根因与对应修复/可验证环境边界;原生对照及原顺序、原目标回归成立,后续偶然通过不能关闭。", - "workspaceState": "CI-01 十二包安装扩展中,裸 SDK 4.5.2 在 Chromium/Firefox 的恢复时间仍为 6,原断言大于 6.2 失败;候选插件集成通过不关闭裸 SDK 原始缺陷,完整失败报告保留。" + "workspaceState": "CI-01 十二包安装扩展中,裸 SDK 4.5.2 在 Chromium/Firefox 的恢复时间仍为 6,原断言大于 6.2 失败;候选插件集成通过不关闭裸 SDK 原始缺陷,完整失败报告保留。 Complete Firefox source run at 4545c4367 again fails the bare 4.5.2 control; all four candidate stable-boundary cases pass. Original failure remains open and unfiltered." }, { "id": "ADS-TYPE-01", @@ -6779,6 +6781,30 @@ "refactor/baselines/site-routes-validation.json" ], "resolutionRationale": "Nine actual Git additions recorded. Three targeted tests pass with positive controls and invalid metadata cases. Full ci:check passes 2937 runtime, 170 engineering and 619 baseline invocations after the old 617/618 baseline failure; no runtime or browser-acceptance scope expansion." + }, + { + "id": "SITE-EDITOR-VAST-01", + "title": "Monaco browser consumer still assumes the workspace VAST namespace after the approved npm-root restoration", + "confirmation": "reproduced", + "status": "resolved", + "owners": [ + "SITE-EDITOR-VAST-01" + ], + "evidence": [ + "refactor/changes/2026-09-15-SITE-EDITOR-VAST-01-consumer.md", + "refactor/baselines/editor-vast-consumer-validation.json", + "refactor/baselines/ci-source-firefox-validation.json", + "test/browser/editor-declarations.spec.js" + ], + "compatibleResolution": "Follow the approved published root declaration in the current browser consumer while retaining the frozen workspace generator fixture. Preserve public runtime/root types.", + "closureCriteria": "Keep original 2503/7006 browser diagnostics; current full declaration set and positive consumer compile, invalid root and workspace-only calls remain rejected, emitted Chapter code runs and destroys in all three engines.", + "resolutionEvidence": [ + "refactor/changes/2026-09-15-SITE-EDITOR-VAST-01-consumer.md", + "refactor/baselines/editor-vast-consumer-validation.json", + "refactor/baselines/ci-source-firefox-validation.json", + "test/browser/editor-declarations.spec.js" + ], + "resolutionRationale": "The full Firefox collection exposed an obsolete test contract. The corrected consumer passes in Chromium, Firefox and Windows WebKit with five exact negative diagnostics and zero positive/declaration errors; four generator tests still pass. No production declaration or SDK behavior changed." } ] } diff --git a/refactor/tasks.json b/refactor/tasks.json index d35687cb1..47bca6e60 100644 --- a/refactor/tasks.json +++ b/refactor/tasks.json @@ -786,7 +786,9 @@ "changes/2026-09-15-CI-01-rendering-policy.md", "baselines/ci-rendering-policy-validation.json", "changes/2026-09-15-SITE-ROUTES-01-html-inventory.md", - "baselines/site-routes-validation.json" + "baselines/site-routes-validation.json", + "baselines/ci-source-firefox-validation.json", + "changes/2026-09-15-SITE-EDITOR-VAST-01-consumer.md" ] }, { @@ -845,7 +847,8 @@ "SITE-06", "CI-BROWSER-01", "CI-TYPES-01", - "CI-TYPES-02" + "CI-TYPES-02", + "SITE-EDITOR-VAST-01" ], "status": "todo", "risk": "H", @@ -4521,7 +4524,8 @@ "SITE-DASH-01", "SITE-AUDIO-01", "SITE-VTT-01", - "SITE-ROUTES-01" + "SITE-ROUTES-01", + "SITE-EDITOR-VAST-01" ], "status": "todo", "risk": "M", @@ -6019,6 +6023,29 @@ "changes/2026-09-15-CI-TYPES-02-ecosystem.md", "baselines/ecosystem-types-validation.json" ] + }, + { + "id": "SITE-EDITOR-VAST-01", + "phase": "6 文档与消费者", + "title": "修正 Monaco 对 VAST 已批准根类型的消费者", + "scope": [ + "artplayer-vitepress", + "artplayer-plugin-vast" + ], + "dependsOn": [ + "SITE-02", + "PKG-VAST-04" + ], + "status": "done", + "risk": "M", + "deliverable": "当前编辑器根类型正反例与冻结工作区生成器测试分离,保留完整 Firefox 失败证据", + "acceptance": "22份声明一起零诊断,历史根回调字段受检,工作区字段被拒绝,三引擎真实 Monaco 编译和 Chapter 运行清理通过;不改变公开类型或忽略诊断", + "evidence": [ + "changes/2026-09-15-SITE-EDITOR-VAST-01-consumer.md", + "baselines/editor-vast-consumer-validation.json", + "baselines/ci-source-firefox-validation.json", + "vast-type-decision.md" + ] } ] } diff --git a/scripts/editor-declarations/README.md b/scripts/editor-declarations/README.md index 5000f6ac6..b72c509f1 100644 --- a/scripts/editor-declarations/README.md +++ b/scripts/editor-declarations/README.md @@ -82,6 +82,14 @@ yarn test:browser test/browser/editor-declarations.spec.js --workers=1 Browser coverage uses the actual repository Monaco assets, all loaded declarations, positive/negative consumers and emitted Chapter code against controlled media. +The current VAST global consumer extracts its callback with +`Parameters[0]` and checks the published root's +`id`, `$container`, `art`, `playUrl` and `playRes` fields. Negative calls reject +wrong id/URL types and the workspace-only `init`/`playerOptions` fields. The +historical workspace generator test in `test/editor-types.test.js` deliberately +retains its frozen named types; it is not the current editor contract. Keep these +two consumers separate when updating public declarations. See +`../../refactor/changes/2026-09-15-SITE-EDITOR-VAST-01-consumer.md`. VAST is type-checked only: no ad request or SDK/network/device acceptance. Full editor UI migration and its targeted interaction checks are recorded in SITE-03; full routes, example coverage and release reviews remain SITE-04/05, EX-03 and diff --git a/test/browser/editor-declarations.spec.js b/test/browser/editor-declarations.spec.js index f4b7f933d..930a7d6e1 100644 --- a/test/browser/editor-declarations.spec.js +++ b/test/browser/editor-declarations.spec.js @@ -26,14 +26,17 @@ const chapters: artplayerPluginChapter.Chapters = [{ start: 0, end: 2, title: 'I const player = new Artplayer({ container: '.player', url: '/test/pattern.mp4', muted: true, plugins: [artplayerPluginChapter({ chapters })] }); const chapter = player.plugins.artplayerPluginChapter as artplayerPluginChapter.Result; chapter.update({ chapters: [{ start: 0, end: 1, title: 'Updated' }] }); -const adOption: artplayerPluginVast.ArtplayerPluginVastOption = context => { - const volume: number = context.init().volume; - context.playerOptions.autoResize = true; +const adOption: Parameters[0] = context => { + const id: string = context.id; + const container: HTMLDivElement = context.$container; + const art: Artplayer = context.art; + context.playUrl('/test/pattern.mp4'); + context.playRes(''); return Promise.resolve(); }; `, 'typescript', api.Uri.parse('file:///editor-consumer.ts')) const invalid = api.editor.createModel(` -artplayerPluginVast(context => { context.init().volume = 'loud'; context.playerOptions.autoResize = 'yes'; }); +artplayerPluginVast(context => { context.id = 1; context.playUrl(123); context.init(); context.playerOptions.autoResize = true; }); artplayerPluginChapter({ chapters: [{ start: '0', end: 2, title: '' }] }); `, 'typescript', api.Uri.parse('file:///editor-invalid.ts')) try { @@ -75,7 +78,7 @@ artplayerPluginChapter({ chapters: [{ start: '0', end: 2, title: '' }] }); expect(result.syntax).toEqual([]) expect(result.semantic).toEqual([]) expect(result.declarations).toEqual([]) - expect(result.bad).toEqual([2322, 2322, 2322]) + expect(result.bad).toEqual([2322, 2345, 2339, 2339, 2322]) expect(result.name).toBe('artplayerPluginChapter') expect(result.ready).toBe(true) expect(result.instances).toBe(0)