Files
ArtPlayer/refactor/baselines/mb-video-validation.json

1244 lines
54 KiB
JSON

{
"task": "PKG-MB-05",
"status": "done",
"parentCommit": "5d0b128483a78a5374bb7163adc1421ba6a4d4c8",
"sourceSha256LF": {
"packages/artplayer-proxy-mediabunny/src/AudioEngine.d.ts": "2d59216f234173253b87e2b3ab8710efd25666f6cadbb2d1052b5c1cb829635a",
"packages/artplayer-proxy-mediabunny/src/AudioEngine.js": "910d6831372e4895d55dec78010f281a199bc88f99735630a5a3b621f192ac35",
"packages/artplayer-proxy-mediabunny/src/engine-ports.ts": "eabac444c7aeeb6026b654428868e72912c9591aabcbd70bdf1e3a85aeb8ebe3",
"packages/artplayer-proxy-mediabunny/src/engine-types.ts": "857a61f1fa3531bd737626658981eaab1b83eb369266fb45528676b9f57a293a",
"packages/artplayer-proxy-mediabunny/src/EventTarget.ts": "4cea57e59b0a1118744a55b0a87c1df28cb0d69c26c50f9275039fe7540c9720",
"packages/artplayer-proxy-mediabunny/src/hls-selection.ts": "a8632c0ea7d0c59434de005eee81bbf8d1dea8ae73c690673b603e5d6fa3cfd6",
"packages/artplayer-proxy-mediabunny/src/hls-state.ts": "ff9ffd742f9763349df1f50eac6b6bd488a80d05aaab8ca198f387f0d17d5e25",
"packages/artplayer-proxy-mediabunny/src/index.js": "4e1be8937908ff6e6ef8a4e863e22b4468312cf31d66ac299322e475757773bb",
"packages/artplayer-proxy-mediabunny/src/input.ts": "d25b1c4ee4aee358c86fd8c554b8b36bfc23fdbd3c27fa21d2cd7e812c98bf9c",
"packages/artplayer-proxy-mediabunny/src/load-session.ts": "560fbd5935fc787bde5f413fcaa41b8829506179c5328ce3cb51e734bbba8cec",
"packages/artplayer-proxy-mediabunny/src/m3u8.js": "4639f09e0c743dc2b24078f48ca1e58eaaedaa3f5e6b863583cbd4bc4a7d3142",
"packages/artplayer-proxy-mediabunny/src/media.ts": "e745cd8e750e05d0fcfa4bc588f7eb5a5576f3be20f5e67b65b704f57d539ae9",
"packages/artplayer-proxy-mediabunny/src/MediaBunnyEngine.ts": "237d3d29fbf61a74df83dea11d862450dfd8f3b7fbd555dd5552b630ff0191e9",
"packages/artplayer-proxy-mediabunny/src/playback.ts": "0512f6a1b253d754b6644266327e368e0e18cce1cf9a3af62b6747ed55d691f7",
"packages/artplayer-proxy-mediabunny/src/preflight.ts": "d296234312f23b97a1e0a054f1d7dbbc988d5240c5fd5089c36df1677c7b7348",
"packages/artplayer-proxy-mediabunny/src/readiness.ts": "9aa24b5e994006b45bda9eafad602785c3e0e334cef54ff45a4939e386c4aceb",
"packages/artplayer-proxy-mediabunny/src/shim-frames.ts": "172b222f997a711c2cc7741f189f05127a4ac5099c1cbe2729e903b36b4ce24a",
"packages/artplayer-proxy-mediabunny/src/shim-values.ts": "a93ee17e87cc7db24f4b02d866af8af206d3007d01def446906fb769c20de17d",
"packages/artplayer-proxy-mediabunny/src/tracks.ts": "6da68530c1fc7105ab17ed742d87d93e84447e822e84386591f9c3e6d0bec733",
"packages/artplayer-proxy-mediabunny/src/video-frames.ts": "c48b93c77d976b03d9cb828478ef3f208e35fbd78a4c6d3d6566d90bdc0fe6f2",
"packages/artplayer-proxy-mediabunny/src/video-poster.ts": "db883faea9c6b6e74535ddfba1b55011b751faf94a342d70bef532a1c96f7a46",
"packages/artplayer-proxy-mediabunny/src/video-renderer.ts": "a1fe324f2b8e4efb0cc40a6021cb85bbcc0568f53352107d63a8b9bbebe5e9b5",
"packages/artplayer-proxy-mediabunny/src/VideoEngine.ts": "1c41d43e663b51319d25dccb08a16c7450703dcdffe15d686b4fa3f0a8c7a7e6",
"packages/artplayer-proxy-mediabunny/src/VideoShim.ts": "1fef3028a3937182c31503129655efdb88118ea0f6d3be96e9be99dcbcc5fdc7",
"packages/artplayer-proxy-mediabunny/dist/artplayer-proxy-mediabunny.js": "9c89a729197593ffcab11b64813b312f588f5515d2cb8acb0537d0a389a5209c",
"packages/artplayer-proxy-mediabunny/dist/artplayer-proxy-mediabunny.legacy.js": "cbbff47b53f5a867506becfdf5d9b23f83a0eb70e43e6ef4355f19feb7f74adc",
"packages/artplayer-proxy-mediabunny/dist/artplayer-proxy-mediabunny.mjs": "9a5e2861c6d26282e04a3178e17b30dbb4bf13e8d6c2115d029fb0fb709830fd",
"packages/artplayer-proxy-mediabunny/ARCHITECTURE.md": "f3dc1b6b80bb94735b29e1493b00c4265308753c8d3a2e3c90124110fbf43a70",
"package.json": "3f84c1d71a110b0fe7c189ba7294706c7e5d36cda6ab93dcf3b7d51302c2efb1",
"test/mediabunny-video.test.js": "1233252bb03cf491dbceffe674ae0fee1c25b70be6b1cf1b48b27279d346415f",
"test/browser/mediabunny-video.spec.js": "5886a40fd07946feb2c391cea036c99b27fc4e48d2f0fcf4e434e27eaaab8cae",
"test/browser/mediabunny-inputs.spec.js": "25e672461834cf0d28c1763f7bb81b113a1d79904a1becc210d25fe596f52d9d"
},
"node": {
"total": 146,
"video": 38,
"sameAssertionsOnPreviousMain": {
"passed": 7,
"failed": 31
},
"main": 110,
"legacy": 110,
"artifactScope": "Each 110-case command contains 106 candidate artifact assertions and four frozen normal-event controls."
},
"browser": {
"total": 54,
"outcomes": {
"native-input-playback-and-seek": 10,
"trackless-rejected-before-decoder-setup": 3,
"unsupported-capability-control": 10,
"native-pending-stream-cancellation": 9,
"native-synthetic-raf": 9,
"native-decoded-video-race": 10,
"native-mp4-playback-observed": 2,
"verified-unsupported-capability-control": 1
},
"records": [
{
"project": "chromium",
"browser": "153.0.8010.12",
"platform": "win32",
"implementation": "candidate-artifact",
"sha256": "9c89a729197593ffcab11b64813b312f588f5515d2cb8acb0537d0a389a5209c",
"input": "webm",
"outcome": "native-input-playback-and-seek",
"cleanup": {
"audioContext": "closed",
"pendingFrames": 0,
"streamCancelled": false
},
"scope": "Identified proxy with native browser media and controlled ArtPlayer host using actual core utilities/config; frame timestamps sampled against the SDK audio clock, not acoustic/long-run AV-sync acceptance. Cleanup checks settled playback, not pending-operation races. Candidate trackless rejection is checked separately before decoder setup; this is not full release acceptance."
},
{
"project": "chromium",
"browser": "153.0.8010.12",
"platform": "win32",
"implementation": "candidate-artifact",
"sha256": "9c89a729197593ffcab11b64813b312f588f5515d2cb8acb0537d0a389a5209c",
"input": "blob",
"outcome": "native-input-playback-and-seek",
"cleanup": {
"audioContext": "closed",
"pendingFrames": 0,
"streamCancelled": false
},
"scope": "Identified proxy with native browser media and controlled ArtPlayer host using actual core utilities/config; frame timestamps sampled against the SDK audio clock, not acoustic/long-run AV-sync acceptance. Cleanup checks settled playback, not pending-operation races. Candidate trackless rejection is checked separately before decoder setup; this is not full release acceptance."
},
{
"project": "chromium",
"browser": "153.0.8010.12",
"platform": "win32",
"implementation": "candidate-artifact",
"sha256": "9c89a729197593ffcab11b64813b312f588f5515d2cb8acb0537d0a389a5209c",
"input": "stream",
"outcome": "native-input-playback-and-seek",
"cleanup": {
"audioContext": "closed",
"pendingFrames": 0,
"streamCancelled": true
},
"scope": "Identified proxy with native browser media and controlled ArtPlayer host using actual core utilities/config; frame timestamps sampled against the SDK audio clock, not acoustic/long-run AV-sync acceptance. Cleanup checks settled playback, not pending-operation races. Candidate trackless rejection is checked separately before decoder setup; this is not full release acceptance."
},
{
"project": "chromium",
"browser": "153.0.8010.12",
"platform": "win32",
"implementation": "candidate-artifact",
"sha256": "9c89a729197593ffcab11b64813b312f588f5515d2cb8acb0537d0a389a5209c",
"input": "audio",
"outcome": "native-input-playback-and-seek",
"cleanup": {
"audioContext": "closed",
"pendingFrames": 0,
"streamCancelled": false
},
"scope": "Identified proxy with native browser media and controlled ArtPlayer host using actual core utilities/config; frame timestamps sampled against the SDK audio clock, not acoustic/long-run AV-sync acceptance. Cleanup checks settled playback, not pending-operation races. Candidate trackless rejection is checked separately before decoder setup; this is not full release acceptance."
},
{
"project": "chromium",
"browser": "153.0.8010.12",
"platform": "win32",
"implementation": "candidate-artifact",
"sha256": "9c89a729197593ffcab11b64813b312f588f5515d2cb8acb0537d0a389a5209c",
"input": "hls",
"outcome": "native-input-playback-and-seek",
"cleanup": {
"audioContext": "closed",
"pendingFrames": 0,
"streamCancelled": false
},
"scope": "Identified proxy with native browser media and controlled ArtPlayer host using actual core utilities/config; frame timestamps sampled against the SDK audio clock, not acoustic/long-run AV-sync acceptance. Cleanup checks settled playback, not pending-operation races. Candidate trackless rejection is checked separately before decoder setup; this is not full release acceptance."
},
{
"project": "chromium",
"browser": "153.0.8010.12",
"platform": "win32",
"implementation": "candidate-artifact",
"sha256": "9c89a729197593ffcab11b64813b312f588f5515d2cb8acb0537d0a389a5209c",
"input": "trackless",
"outcome": "trackless-rejected-before-decoder-setup",
"cleanup": {
"audioContext": "not-created",
"pendingFrames": 0,
"streamCancelled": false
},
"scope": "Identified proxy with native browser media and controlled ArtPlayer host using actual core utilities/config; frame timestamps sampled against the SDK audio clock, not acoustic/long-run AV-sync acceptance. Cleanup checks settled playback, not pending-operation races. Candidate trackless rejection is checked separately before decoder setup; this is not full release acceptance."
},
{
"project": "firefox",
"browser": "155.0",
"platform": "win32",
"implementation": "candidate-artifact",
"sha256": "9c89a729197593ffcab11b64813b312f588f5515d2cb8acb0537d0a389a5209c",
"input": "webm",
"outcome": "native-input-playback-and-seek",
"cleanup": {
"audioContext": "closed",
"pendingFrames": 0,
"streamCancelled": false
},
"scope": "Identified proxy with native browser media and controlled ArtPlayer host using actual core utilities/config; frame timestamps sampled against the SDK audio clock, not acoustic/long-run AV-sync acceptance. Cleanup checks settled playback, not pending-operation races. Candidate trackless rejection is checked separately before decoder setup; this is not full release acceptance."
},
{
"project": "firefox",
"browser": "155.0",
"platform": "win32",
"implementation": "candidate-artifact",
"sha256": "9c89a729197593ffcab11b64813b312f588f5515d2cb8acb0537d0a389a5209c",
"input": "blob",
"outcome": "native-input-playback-and-seek",
"cleanup": {
"audioContext": "closed",
"pendingFrames": 0,
"streamCancelled": false
},
"scope": "Identified proxy with native browser media and controlled ArtPlayer host using actual core utilities/config; frame timestamps sampled against the SDK audio clock, not acoustic/long-run AV-sync acceptance. Cleanup checks settled playback, not pending-operation races. Candidate trackless rejection is checked separately before decoder setup; this is not full release acceptance."
},
{
"project": "firefox",
"browser": "155.0",
"platform": "win32",
"implementation": "candidate-artifact",
"sha256": "9c89a729197593ffcab11b64813b312f588f5515d2cb8acb0537d0a389a5209c",
"input": "stream",
"outcome": "native-input-playback-and-seek",
"cleanup": {
"audioContext": "closed",
"pendingFrames": 0,
"streamCancelled": true
},
"scope": "Identified proxy with native browser media and controlled ArtPlayer host using actual core utilities/config; frame timestamps sampled against the SDK audio clock, not acoustic/long-run AV-sync acceptance. Cleanup checks settled playback, not pending-operation races. Candidate trackless rejection is checked separately before decoder setup; this is not full release acceptance."
},
{
"project": "firefox",
"browser": "155.0",
"platform": "win32",
"implementation": "candidate-artifact",
"sha256": "9c89a729197593ffcab11b64813b312f588f5515d2cb8acb0537d0a389a5209c",
"input": "audio",
"outcome": "native-input-playback-and-seek",
"cleanup": {
"audioContext": "closed",
"pendingFrames": 0,
"streamCancelled": false
},
"scope": "Identified proxy with native browser media and controlled ArtPlayer host using actual core utilities/config; frame timestamps sampled against the SDK audio clock, not acoustic/long-run AV-sync acceptance. Cleanup checks settled playback, not pending-operation races. Candidate trackless rejection is checked separately before decoder setup; this is not full release acceptance."
},
{
"project": "firefox",
"browser": "155.0",
"platform": "win32",
"implementation": "candidate-artifact",
"sha256": "9c89a729197593ffcab11b64813b312f588f5515d2cb8acb0537d0a389a5209c",
"input": "hls",
"outcome": "native-input-playback-and-seek",
"cleanup": {
"audioContext": "closed",
"pendingFrames": 0,
"streamCancelled": false
},
"scope": "Identified proxy with native browser media and controlled ArtPlayer host using actual core utilities/config; frame timestamps sampled against the SDK audio clock, not acoustic/long-run AV-sync acceptance. Cleanup checks settled playback, not pending-operation races. Candidate trackless rejection is checked separately before decoder setup; this is not full release acceptance."
},
{
"project": "firefox",
"browser": "155.0",
"platform": "win32",
"implementation": "candidate-artifact",
"sha256": "9c89a729197593ffcab11b64813b312f588f5515d2cb8acb0537d0a389a5209c",
"input": "trackless",
"outcome": "trackless-rejected-before-decoder-setup",
"cleanup": {
"audioContext": "not-created",
"pendingFrames": 0,
"streamCancelled": false
},
"scope": "Identified proxy with native browser media and controlled ArtPlayer host using actual core utilities/config; frame timestamps sampled against the SDK audio clock, not acoustic/long-run AV-sync acceptance. Cleanup checks settled playback, not pending-operation races. Candidate trackless rejection is checked separately before decoder setup; this is not full release acceptance."
},
{
"project": "webkit",
"browser": "26.6",
"platform": "win32",
"implementation": "candidate-artifact",
"sha256": "9c89a729197593ffcab11b64813b312f588f5515d2cb8acb0537d0a389a5209c",
"input": "webm",
"outcome": "unsupported-capability-control",
"cleanup": {
"audioContext": "not-created",
"pendingFrames": 0,
"streamCancelled": false
},
"scope": "Identified proxy with native browser media and controlled ArtPlayer host using actual core utilities/config; frame timestamps sampled against the SDK audio clock, not acoustic/long-run AV-sync acceptance. Cleanup checks settled playback, not pending-operation races. Candidate trackless rejection is checked separately before decoder setup; this is not full release acceptance."
},
{
"project": "webkit",
"browser": "26.6",
"platform": "win32",
"implementation": "candidate-artifact",
"sha256": "9c89a729197593ffcab11b64813b312f588f5515d2cb8acb0537d0a389a5209c",
"input": "blob",
"outcome": "unsupported-capability-control",
"cleanup": {
"audioContext": "not-created",
"pendingFrames": 0,
"streamCancelled": false
},
"scope": "Identified proxy with native browser media and controlled ArtPlayer host using actual core utilities/config; frame timestamps sampled against the SDK audio clock, not acoustic/long-run AV-sync acceptance. Cleanup checks settled playback, not pending-operation races. Candidate trackless rejection is checked separately before decoder setup; this is not full release acceptance."
},
{
"project": "webkit",
"browser": "26.6",
"platform": "win32",
"implementation": "candidate-artifact",
"sha256": "9c89a729197593ffcab11b64813b312f588f5515d2cb8acb0537d0a389a5209c",
"input": "stream",
"outcome": "unsupported-capability-control",
"cleanup": {
"audioContext": "not-created",
"pendingFrames": 0,
"streamCancelled": true
},
"scope": "Identified proxy with native browser media and controlled ArtPlayer host using actual core utilities/config; frame timestamps sampled against the SDK audio clock, not acoustic/long-run AV-sync acceptance. Cleanup checks settled playback, not pending-operation races. Candidate trackless rejection is checked separately before decoder setup; this is not full release acceptance."
},
{
"project": "webkit",
"browser": "26.6",
"platform": "win32",
"implementation": "candidate-artifact",
"sha256": "9c89a729197593ffcab11b64813b312f588f5515d2cb8acb0537d0a389a5209c",
"input": "audio",
"outcome": "unsupported-capability-control",
"cleanup": {
"audioContext": "not-created",
"pendingFrames": 0,
"streamCancelled": false
},
"scope": "Identified proxy with native browser media and controlled ArtPlayer host using actual core utilities/config; frame timestamps sampled against the SDK audio clock, not acoustic/long-run AV-sync acceptance. Cleanup checks settled playback, not pending-operation races. Candidate trackless rejection is checked separately before decoder setup; this is not full release acceptance."
},
{
"project": "webkit",
"browser": "26.6",
"platform": "win32",
"implementation": "candidate-artifact",
"sha256": "9c89a729197593ffcab11b64813b312f588f5515d2cb8acb0537d0a389a5209c",
"input": "hls",
"outcome": "unsupported-capability-control",
"cleanup": {
"audioContext": "not-created",
"pendingFrames": 0,
"streamCancelled": false
},
"scope": "Identified proxy with native browser media and controlled ArtPlayer host using actual core utilities/config; frame timestamps sampled against the SDK audio clock, not acoustic/long-run AV-sync acceptance. Cleanup checks settled playback, not pending-operation races. Candidate trackless rejection is checked separately before decoder setup; this is not full release acceptance."
},
{
"project": "webkit",
"browser": "26.6",
"platform": "win32",
"implementation": "candidate-artifact",
"sha256": "9c89a729197593ffcab11b64813b312f588f5515d2cb8acb0537d0a389a5209c",
"input": "trackless",
"outcome": "trackless-rejected-before-decoder-setup",
"cleanup": {
"audioContext": "not-created",
"pendingFrames": 0,
"streamCancelled": false
},
"scope": "Identified proxy with native browser media and controlled ArtPlayer host using actual core utilities/config; frame timestamps sampled against the SDK audio clock, not acoustic/long-run AV-sync acceptance. Cleanup checks settled playback, not pending-operation races. Candidate trackless rejection is checked separately before decoder setup; this is not full release acceptance."
},
{
"project": "chromium",
"browser": "153.0.8010.12",
"platform": "win32",
"implementation": "candidate-artifact",
"sha256": "9c89a729197593ffcab11b64813b312f588f5515d2cb8acb0537d0a389a5209c",
"ending": "destroy",
"outcome": "native-pending-stream-cancellation",
"scope": "Real browser ReadableStream and actual SDK Input disposal before first media bytes; real timeout; controlled ArtPlayer host; does not assert decoder, late frame or audio-node cleanup."
},
{
"project": "chromium",
"browser": "153.0.8010.12",
"platform": "win32",
"implementation": "candidate-artifact",
"sha256": "9c89a729197593ffcab11b64813b312f588f5515d2cb8acb0537d0a389a5209c",
"ending": "source",
"outcome": "native-pending-stream-cancellation",
"scope": "Real browser ReadableStream and actual SDK Input disposal before first media bytes; real timeout; controlled ArtPlayer host; does not assert decoder, late frame or audio-node cleanup."
},
{
"project": "chromium",
"browser": "153.0.8010.12",
"platform": "win32",
"implementation": "candidate-artifact",
"sha256": "9c89a729197593ffcab11b64813b312f588f5515d2cb8acb0537d0a389a5209c",
"ending": "timeout",
"outcome": "native-pending-stream-cancellation",
"scope": "Real browser ReadableStream and actual SDK Input disposal before first media bytes; real timeout; controlled ArtPlayer host; does not assert decoder, late frame or audio-node cleanup."
},
{
"project": "firefox",
"browser": "155.0",
"platform": "win32",
"implementation": "candidate-artifact",
"sha256": "9c89a729197593ffcab11b64813b312f588f5515d2cb8acb0537d0a389a5209c",
"ending": "destroy",
"outcome": "native-pending-stream-cancellation",
"scope": "Real browser ReadableStream and actual SDK Input disposal before first media bytes; real timeout; controlled ArtPlayer host; does not assert decoder, late frame or audio-node cleanup."
},
{
"project": "firefox",
"browser": "155.0",
"platform": "win32",
"implementation": "candidate-artifact",
"sha256": "9c89a729197593ffcab11b64813b312f588f5515d2cb8acb0537d0a389a5209c",
"ending": "source",
"outcome": "native-pending-stream-cancellation",
"scope": "Real browser ReadableStream and actual SDK Input disposal before first media bytes; real timeout; controlled ArtPlayer host; does not assert decoder, late frame or audio-node cleanup."
},
{
"project": "firefox",
"browser": "155.0",
"platform": "win32",
"implementation": "candidate-artifact",
"sha256": "9c89a729197593ffcab11b64813b312f588f5515d2cb8acb0537d0a389a5209c",
"ending": "timeout",
"outcome": "native-pending-stream-cancellation",
"scope": "Real browser ReadableStream and actual SDK Input disposal before first media bytes; real timeout; controlled ArtPlayer host; does not assert decoder, late frame or audio-node cleanup."
},
{
"project": "webkit",
"browser": "26.6",
"platform": "win32",
"implementation": "candidate-artifact",
"sha256": "9c89a729197593ffcab11b64813b312f588f5515d2cb8acb0537d0a389a5209c",
"ending": "destroy",
"outcome": "native-pending-stream-cancellation",
"scope": "Real browser ReadableStream and actual SDK Input disposal before first media bytes; real timeout; controlled ArtPlayer host; does not assert decoder, late frame or audio-node cleanup."
},
{
"project": "webkit",
"browser": "26.6",
"platform": "win32",
"implementation": "candidate-artifact",
"sha256": "9c89a729197593ffcab11b64813b312f588f5515d2cb8acb0537d0a389a5209c",
"ending": "source",
"outcome": "native-pending-stream-cancellation",
"scope": "Real browser ReadableStream and actual SDK Input disposal before first media bytes; real timeout; controlled ArtPlayer host; does not assert decoder, late frame or audio-node cleanup."
},
{
"project": "webkit",
"browser": "26.6",
"platform": "win32",
"implementation": "candidate-artifact",
"sha256": "9c89a729197593ffcab11b64813b312f588f5515d2cb8acb0537d0a389a5209c",
"ending": "timeout",
"outcome": "native-pending-stream-cancellation",
"scope": "Real browser ReadableStream and actual SDK Input disposal before first media bytes; real timeout; controlled ArtPlayer host; does not assert decoder, late frame or audio-node cleanup."
},
{
"project": "chromium",
"browser": "153.0.8010.12",
"platform": "win32",
"implementation": "candidate-artifact",
"sha256": "9c89a729197593ffcab11b64813b312f588f5515d2cb8acb0537d0a389a5209c",
"scenario": "callback",
"outcome": "native-synthetic-raf",
"result": {
"idType": "number",
"calls": [
{
"owner": "first",
"time": "number",
"mediaTime": 0,
"presentedFrames": 0
}
],
"listeners": 0
},
"scope": "Real browser requestAnimationFrame and actual proxy instances; synthetic metadata is preserved, no decoding or video frame accuracy is claimed."
},
{
"project": "chromium",
"browser": "153.0.8010.12",
"platform": "win32",
"implementation": "candidate-artifact",
"sha256": "9c89a729197593ffcab11b64813b312f588f5515d2cb8acb0537d0a389a5209c",
"scenario": "destroy",
"outcome": "native-synthetic-raf",
"result": {
"idType": "number",
"calls": [],
"listeners": 0
},
"scope": "Real browser requestAnimationFrame and actual proxy instances; synthetic metadata is preserved, no decoding or video frame accuracy is claimed."
},
{
"project": "chromium",
"browser": "153.0.8010.12",
"platform": "win32",
"implementation": "candidate-artifact",
"sha256": "9c89a729197593ffcab11b64813b312f588f5515d2cb8acb0537d0a389a5209c",
"scenario": "independent",
"outcome": "native-synthetic-raf",
"result": {
"idType": "number",
"calls": [
{
"owner": "second"
}
],
"listeners": 0
},
"scope": "Real browser requestAnimationFrame and actual proxy instances; synthetic metadata is preserved, no decoding or video frame accuracy is claimed."
},
{
"project": "firefox",
"browser": "155.0",
"platform": "win32",
"implementation": "candidate-artifact",
"sha256": "9c89a729197593ffcab11b64813b312f588f5515d2cb8acb0537d0a389a5209c",
"scenario": "callback",
"outcome": "native-synthetic-raf",
"result": {
"idType": "number",
"calls": [
{
"owner": "first",
"time": "number",
"mediaTime": 0,
"presentedFrames": 0
}
],
"listeners": 0
},
"scope": "Real browser requestAnimationFrame and actual proxy instances; synthetic metadata is preserved, no decoding or video frame accuracy is claimed."
},
{
"project": "firefox",
"browser": "155.0",
"platform": "win32",
"implementation": "candidate-artifact",
"sha256": "9c89a729197593ffcab11b64813b312f588f5515d2cb8acb0537d0a389a5209c",
"scenario": "destroy",
"outcome": "native-synthetic-raf",
"result": {
"idType": "number",
"calls": [],
"listeners": 0
},
"scope": "Real browser requestAnimationFrame and actual proxy instances; synthetic metadata is preserved, no decoding or video frame accuracy is claimed."
},
{
"project": "firefox",
"browser": "155.0",
"platform": "win32",
"implementation": "candidate-artifact",
"sha256": "9c89a729197593ffcab11b64813b312f588f5515d2cb8acb0537d0a389a5209c",
"scenario": "independent",
"outcome": "native-synthetic-raf",
"result": {
"idType": "number",
"calls": [
{
"owner": "second"
}
],
"listeners": 0
},
"scope": "Real browser requestAnimationFrame and actual proxy instances; synthetic metadata is preserved, no decoding or video frame accuracy is claimed."
},
{
"project": "webkit",
"browser": "26.6",
"platform": "win32",
"implementation": "candidate-artifact",
"sha256": "9c89a729197593ffcab11b64813b312f588f5515d2cb8acb0537d0a389a5209c",
"scenario": "callback",
"outcome": "native-synthetic-raf",
"result": {
"idType": "number",
"calls": [
{
"owner": "first",
"time": "number",
"mediaTime": 0,
"presentedFrames": 0
}
],
"listeners": 0
},
"scope": "Real browser requestAnimationFrame and actual proxy instances; synthetic metadata is preserved, no decoding or video frame accuracy is claimed."
},
{
"project": "webkit",
"browser": "26.6",
"platform": "win32",
"implementation": "candidate-artifact",
"sha256": "9c89a729197593ffcab11b64813b312f588f5515d2cb8acb0537d0a389a5209c",
"scenario": "destroy",
"outcome": "native-synthetic-raf",
"result": {
"idType": "number",
"calls": [],
"listeners": 0
},
"scope": "Real browser requestAnimationFrame and actual proxy instances; synthetic metadata is preserved, no decoding or video frame accuracy is claimed."
},
{
"project": "webkit",
"browser": "26.6",
"platform": "win32",
"implementation": "candidate-artifact",
"sha256": "9c89a729197593ffcab11b64813b312f588f5515d2cb8acb0537d0a389a5209c",
"scenario": "independent",
"outcome": "native-synthetic-raf",
"result": {
"idType": "number",
"calls": [
{
"owner": "second"
}
],
"listeners": 0
},
"scope": "Real browser requestAnimationFrame and actual proxy instances; synthetic metadata is preserved, no decoding or video frame accuracy is claimed."
},
{
"project": "chromium",
"browser": "153.0.8010.12",
"platform": "win32",
"implementation": "candidate-artifact",
"sha256": "9c89a729197593ffcab11b64813b312f588f5515d2cb8acb0537d0a389a5209c",
"scenario": "pause-frame",
"outcome": "native-decoded-video-race",
"result": {
"before": 2,
"after": 2,
"paused": true,
"frames": 0
},
"state": {
"events": [
"video:waiting",
"video:loadstart",
"video:loadedmetadata",
"video:durationchange",
"video:progress",
"video:loadeddata",
"video:canplay",
"video:canplaythrough",
"video:progress",
"video:play",
"video:playing",
"video:timeupdate",
"video:waiting",
"video:pause",
"destroy"
],
"draws": 2,
"error": null,
"audioContext": "closed",
"frames": 0
},
"scope": "Actual SDK MP4 decoding and browser clock/RAF; frame delivery or two raw VideoSample deliveries before CanvasSink conversion control interleaving. Source/seek ownership, pause and timeupdate reentry verified; not long-run AV sync or a mock codec."
},
{
"project": "chromium",
"browser": "153.0.8010.12",
"platform": "win32",
"implementation": "candidate-artifact",
"sha256": "9c89a729197593ffcab11b64813b312f588f5515d2cb8acb0537d0a389a5209c",
"scenario": "seek-source",
"outcome": "native-decoded-video-race",
"result": {
"before": 2,
"after": 2,
"heldReads": 1,
"currentIteratorKept": true,
"frames": 0,
"time": 0,
"error": null
},
"state": {
"events": [
"video:waiting",
"video:loadstart",
"video:loadedmetadata",
"video:durationchange",
"video:progress",
"video:loadeddata",
"video:canplay",
"video:canplaythrough",
"video:progress",
"video:seeking",
"video:waiting",
"video:waiting",
"video:loadstart",
"video:loadedmetadata",
"video:durationchange",
"video:progress",
"video:loadeddata",
"video:canplay",
"video:canplaythrough",
"video:progress",
"destroy"
],
"draws": 2,
"error": null,
"audioContext": "closed",
"frames": 0
},
"scope": "Actual SDK MP4 decoding and browser clock/RAF; frame delivery or two raw VideoSample deliveries before CanvasSink conversion control interleaving. Source/seek ownership, pause and timeupdate reentry verified; not long-run AV sync or a mock codec."
},
{
"project": "chromium",
"browser": "153.0.8010.12",
"platform": "win32",
"implementation": "candidate-artifact",
"sha256": "9c89a729197593ffcab11b64813b312f588f5515d2cb8acb0537d0a389a5209c",
"scenario": "seek-newer",
"outcome": "native-decoded-video-race",
"result": {
"before": 2,
"after": 2,
"heldReads": 1,
"currentIteratorKept": true,
"frames": 0,
"time": 5,
"error": null
},
"state": {
"events": [
"video:waiting",
"video:loadstart",
"video:loadedmetadata",
"video:durationchange",
"video:progress",
"video:loadeddata",
"video:canplay",
"video:canplaythrough",
"video:progress",
"video:seeking",
"video:waiting",
"video:seeking",
"video:waiting",
"video:seeked",
"destroy"
],
"draws": 2,
"error": null,
"audioContext": "closed",
"frames": 0
},
"scope": "Actual SDK MP4 decoding and browser clock/RAF; frame delivery or two raw VideoSample deliveries before CanvasSink conversion control interleaving. Source/seek ownership, pause and timeupdate reentry verified; not long-run AV sync or a mock codec."
},
{
"project": "chromium",
"browser": "153.0.8010.12",
"platform": "win32",
"implementation": "candidate-artifact",
"sha256": "9c89a729197593ffcab11b64813b312f588f5515d2cb8acb0537d0a389a5209c",
"scenario": "timeupdate-pause",
"outcome": "native-decoded-video-race",
"result": {
"paused": true,
"frames": 0
},
"state": {
"events": [
"video:waiting",
"video:loadstart",
"video:loadedmetadata",
"video:durationchange",
"video:progress",
"video:loadeddata",
"video:canplay",
"video:canplaythrough",
"video:progress",
"video:play",
"video:playing",
"video:timeupdate",
"video:pause",
"destroy"
],
"draws": 1,
"error": null,
"audioContext": "closed",
"frames": 0
},
"scope": "Actual SDK MP4 decoding and browser clock/RAF; frame delivery or two raw VideoSample deliveries before CanvasSink conversion control interleaving. Source/seek ownership, pause and timeupdate reentry verified; not long-run AV sync or a mock codec."
},
{
"project": "chromium",
"browser": "153.0.8010.12",
"platform": "win32",
"implementation": "candidate-artifact",
"sha256": "9c89a729197593ffcab11b64813b312f588f5515d2cb8acb0537d0a389a5209c",
"scenario": "seek-pool",
"outcome": "native-decoded-video-race",
"result": {
"before": 1220654181,
"after": 1220654181,
"timestamp": 5.041666666666667,
"currentFrameUnchanged": true,
"time": 5
},
"state": {
"events": [
"video:waiting",
"video:loadstart",
"video:loadedmetadata",
"video:durationchange",
"video:progress",
"video:loadeddata",
"video:canplay",
"video:canplaythrough",
"video:progress",
"video:seeking",
"video:waiting",
"video:seeking",
"video:waiting",
"video:seeking",
"video:waiting",
"video:seeked",
"destroy"
],
"draws": 2,
"error": null,
"audioContext": "closed",
"frames": 0
},
"scope": "Actual SDK MP4 decoding and browser clock/RAF; frame delivery or two raw VideoSample deliveries before CanvasSink conversion control interleaving. Source/seek ownership, pause and timeupdate reentry verified; not long-run AV sync or a mock codec."
},
{
"project": "firefox",
"browser": "155.0",
"platform": "win32",
"implementation": "candidate-artifact",
"sha256": "9c89a729197593ffcab11b64813b312f588f5515d2cb8acb0537d0a389a5209c",
"scenario": "pause-frame",
"outcome": "native-decoded-video-race",
"result": {
"before": 2,
"after": 2,
"paused": true,
"frames": 0
},
"state": {
"events": [
"video:waiting",
"video:loadstart",
"video:loadedmetadata",
"video:durationchange",
"video:progress",
"video:loadeddata",
"video:canplay",
"video:canplaythrough",
"video:progress",
"video:play",
"video:playing",
"video:timeupdate",
"video:waiting",
"video:pause",
"destroy"
],
"draws": 2,
"error": null,
"audioContext": "closed",
"frames": 0
},
"scope": "Actual SDK MP4 decoding and browser clock/RAF; frame delivery or two raw VideoSample deliveries before CanvasSink conversion control interleaving. Source/seek ownership, pause and timeupdate reentry verified; not long-run AV sync or a mock codec."
},
{
"project": "firefox",
"browser": "155.0",
"platform": "win32",
"implementation": "candidate-artifact",
"sha256": "9c89a729197593ffcab11b64813b312f588f5515d2cb8acb0537d0a389a5209c",
"scenario": "seek-source",
"outcome": "native-decoded-video-race",
"result": {
"before": 2,
"after": 2,
"heldReads": 1,
"currentIteratorKept": true,
"frames": 0,
"time": 0,
"error": null
},
"state": {
"events": [
"video:waiting",
"video:loadstart",
"video:loadedmetadata",
"video:durationchange",
"video:progress",
"video:loadeddata",
"video:canplay",
"video:canplaythrough",
"video:progress",
"video:seeking",
"video:waiting",
"video:waiting",
"video:loadstart",
"video:loadedmetadata",
"video:durationchange",
"video:progress",
"video:loadeddata",
"video:canplay",
"video:canplaythrough",
"video:progress",
"destroy"
],
"draws": 2,
"error": null,
"audioContext": "closed",
"frames": 0
},
"scope": "Actual SDK MP4 decoding and browser clock/RAF; frame delivery or two raw VideoSample deliveries before CanvasSink conversion control interleaving. Source/seek ownership, pause and timeupdate reentry verified; not long-run AV sync or a mock codec."
},
{
"project": "firefox",
"browser": "155.0",
"platform": "win32",
"implementation": "candidate-artifact",
"sha256": "9c89a729197593ffcab11b64813b312f588f5515d2cb8acb0537d0a389a5209c",
"scenario": "seek-newer",
"outcome": "native-decoded-video-race",
"result": {
"before": 2,
"after": 2,
"heldReads": 1,
"currentIteratorKept": true,
"frames": 0,
"time": 5,
"error": null
},
"state": {
"events": [
"video:waiting",
"video:loadstart",
"video:loadedmetadata",
"video:durationchange",
"video:progress",
"video:loadeddata",
"video:canplay",
"video:canplaythrough",
"video:progress",
"video:seeking",
"video:waiting",
"video:seeking",
"video:waiting",
"video:seeked",
"destroy"
],
"draws": 2,
"error": null,
"audioContext": "closed",
"frames": 0
},
"scope": "Actual SDK MP4 decoding and browser clock/RAF; frame delivery or two raw VideoSample deliveries before CanvasSink conversion control interleaving. Source/seek ownership, pause and timeupdate reentry verified; not long-run AV sync or a mock codec."
},
{
"project": "firefox",
"browser": "155.0",
"platform": "win32",
"implementation": "candidate-artifact",
"sha256": "9c89a729197593ffcab11b64813b312f588f5515d2cb8acb0537d0a389a5209c",
"scenario": "timeupdate-pause",
"outcome": "native-decoded-video-race",
"result": {
"paused": true,
"frames": 0
},
"state": {
"events": [
"video:waiting",
"video:loadstart",
"video:loadedmetadata",
"video:durationchange",
"video:progress",
"video:loadeddata",
"video:canplay",
"video:canplaythrough",
"video:progress",
"video:play",
"video:playing",
"video:timeupdate",
"video:pause",
"destroy"
],
"draws": 1,
"error": null,
"audioContext": "closed",
"frames": 0
},
"scope": "Actual SDK MP4 decoding and browser clock/RAF; frame delivery or two raw VideoSample deliveries before CanvasSink conversion control interleaving. Source/seek ownership, pause and timeupdate reentry verified; not long-run AV sync or a mock codec."
},
{
"project": "firefox",
"browser": "155.0",
"platform": "win32",
"implementation": "candidate-artifact",
"sha256": "9c89a729197593ffcab11b64813b312f588f5515d2cb8acb0537d0a389a5209c",
"scenario": "seek-pool",
"outcome": "native-decoded-video-race",
"result": {
"before": 1220654181,
"after": 1220654181,
"timestamp": 5.041666666666667,
"currentFrameUnchanged": true,
"time": 5
},
"state": {
"events": [
"video:waiting",
"video:loadstart",
"video:loadedmetadata",
"video:durationchange",
"video:progress",
"video:loadeddata",
"video:canplay",
"video:canplaythrough",
"video:progress",
"video:seeking",
"video:waiting",
"video:seeking",
"video:waiting",
"video:seeking",
"video:waiting",
"video:seeked",
"destroy"
],
"draws": 2,
"error": null,
"audioContext": "closed",
"frames": 0
},
"scope": "Actual SDK MP4 decoding and browser clock/RAF; frame delivery or two raw VideoSample deliveries before CanvasSink conversion control interleaving. Source/seek ownership, pause and timeupdate reentry verified; not long-run AV sync or a mock codec."
},
{
"project": "webkit",
"browser": "26.6",
"platform": "win32",
"implementation": "candidate-artifact",
"sha256": "9c89a729197593ffcab11b64813b312f588f5515d2cb8acb0537d0a389a5209c",
"scenario": "pause-frame",
"outcome": "unsupported-capability-control",
"state": {
"events": [
"video:error",
"destroy"
],
"draws": 0,
"error": {
"code": 4,
"message": "undefined is not a constructor (evaluating 'new t')"
},
"audioContext": "not-created",
"frames": 0
},
"scope": "Actual SDK MP4 decoding and browser clock/RAF; frame delivery or two raw VideoSample deliveries before CanvasSink conversion control interleaving. Source/seek ownership, pause and timeupdate reentry verified; not long-run AV sync or a mock codec."
},
{
"project": "webkit",
"browser": "26.6",
"platform": "win32",
"implementation": "candidate-artifact",
"sha256": "9c89a729197593ffcab11b64813b312f588f5515d2cb8acb0537d0a389a5209c",
"scenario": "seek-source",
"outcome": "unsupported-capability-control",
"state": {
"events": [
"video:waiting",
"video:loadstart",
"video:error",
"destroy"
],
"draws": 0,
"error": {
"code": 4,
"message": "undefined is not a constructor (evaluating 'new t')"
},
"audioContext": "not-created",
"frames": 0
},
"scope": "Actual SDK MP4 decoding and browser clock/RAF; frame delivery or two raw VideoSample deliveries before CanvasSink conversion control interleaving. Source/seek ownership, pause and timeupdate reentry verified; not long-run AV sync or a mock codec."
},
{
"project": "webkit",
"browser": "26.6",
"platform": "win32",
"implementation": "candidate-artifact",
"sha256": "9c89a729197593ffcab11b64813b312f588f5515d2cb8acb0537d0a389a5209c",
"scenario": "seek-newer",
"outcome": "unsupported-capability-control",
"state": {
"events": [
"video:waiting",
"video:loadstart",
"video:error",
"destroy"
],
"draws": 0,
"error": {
"code": 4,
"message": "undefined is not a constructor (evaluating 'new t')"
},
"audioContext": "not-created",
"frames": 0
},
"scope": "Actual SDK MP4 decoding and browser clock/RAF; frame delivery or two raw VideoSample deliveries before CanvasSink conversion control interleaving. Source/seek ownership, pause and timeupdate reentry verified; not long-run AV sync or a mock codec."
},
{
"project": "webkit",
"browser": "26.6",
"platform": "win32",
"implementation": "candidate-artifact",
"sha256": "9c89a729197593ffcab11b64813b312f588f5515d2cb8acb0537d0a389a5209c",
"scenario": "timeupdate-pause",
"outcome": "unsupported-capability-control",
"state": {
"events": [
"video:waiting",
"video:loadstart",
"video:error",
"destroy"
],
"draws": 0,
"error": {
"code": 4,
"message": "undefined is not a constructor (evaluating 'new t')"
},
"audioContext": "not-created",
"frames": 0
},
"scope": "Actual SDK MP4 decoding and browser clock/RAF; frame delivery or two raw VideoSample deliveries before CanvasSink conversion control interleaving. Source/seek ownership, pause and timeupdate reentry verified; not long-run AV sync or a mock codec."
},
{
"project": "webkit",
"browser": "26.6",
"platform": "win32",
"implementation": "candidate-artifact",
"sha256": "9c89a729197593ffcab11b64813b312f588f5515d2cb8acb0537d0a389a5209c",
"scenario": "seek-pool",
"outcome": "unsupported-capability-control",
"state": {
"events": [
"video:waiting",
"video:loadstart",
"video:error",
"destroy"
],
"draws": 0,
"error": {
"code": 4,
"message": "undefined is not a constructor (evaluating 'new t')"
},
"audioContext": "not-created",
"frames": 0
},
"scope": "Actual SDK MP4 decoding and browser clock/RAF; frame delivery or two raw VideoSample deliveries before CanvasSink conversion control interleaving. Source/seek ownership, pause and timeupdate reentry verified; not long-run AV sync or a mock codec."
},
{
"project": "chromium",
"browser": "153.0.8010.12",
"platform": "win32",
"implementation": "candidate-artifact",
"sha256": "9c89a729197593ffcab11b64813b312f588f5515d2cb8acb0537d0a389a5209c",
"outcome": "native-mp4-playback-observed",
"scope": "Identified published or candidate proxy with actual core5.4.0; native MP4 pixels/clock or explicitly unsupported Windows WebKit APIs. No HLS or long-run AV-sync acceptance."
},
{
"project": "firefox",
"browser": "155.0",
"platform": "win32",
"implementation": "candidate-artifact",
"sha256": "9c89a729197593ffcab11b64813b312f588f5515d2cb8acb0537d0a389a5209c",
"outcome": "native-mp4-playback-observed",
"scope": "Identified published or candidate proxy with actual core5.4.0; native MP4 pixels/clock or explicitly unsupported Windows WebKit APIs. No HLS or long-run AV-sync acceptance."
},
{
"project": "webkit",
"browser": "26.6",
"platform": "win32",
"implementation": "candidate-artifact",
"sha256": "9c89a729197593ffcab11b64813b312f588f5515d2cb8acb0537d0a389a5209c",
"outcome": "verified-unsupported-capability-control",
"scope": "Identified published or candidate proxy with actual core5.4.0; native MP4 pixels/clock or explicitly unsupported Windows WebKit APIs. No HLS or long-run AV-sync acceptance."
}
],
"poolBeforeFix": {
"failedPixelChecks": 2,
"passedCapabilityControls": 1,
"report": "refactor/.cache/mb05-pool-before-results/report.json",
"reportSha256": "36a712a6a941d8eb7176d00d2c633d4be8d4b89ea8288c40c105b011af363c97",
"results": "refactor/.cache/mb05-pool-before-results/results"
},
"report": "refactor/.cache/mb05-video-terminal-results/report.json",
"reportSha256": "9346e4cf7e4a53fb8ca6ce7600198f5db4e518ef40f72b19df2ebb5d331c88aa",
"results": "refactor/.cache/mb05-video-terminal-results/results",
"sameNativeAssertionsOnPreviousMain": {
"passedCapabilityControls": 5,
"failedNativeRaces": 10,
"report": "refactor/.cache/mb05-video-frozen-terminal-results/report.json",
"reportSha256": "ad8319c1618f54b9df7d40ec5f681d17abc72147db8ead1da66eb9977be4d908",
"results": "refactor/.cache/mb05-video-frozen-terminal-results/results"
}
},
"checks": [
{
"command": "yarn test:mediabunny",
"result": "pass",
"tests": 146
},
{
"command": "main/legacy shim, coordinator, load and video tests",
"result": "pass",
"eachRun": 110
},
{
"command": "same video assertions on frozen main",
"result": "expected historical failures",
"passed": 7,
"failed": 31
},
{
"command": "package strict tsc and focused eslint",
"result": "pass",
"productionTypeScriptModules": 20,
"temporaryAudioDeclarationBridges": 1
},
{
"command": "three format build and ESM factory",
"result": "pass"
},
{
"command": "five browser specs on final built main",
"result": "pass",
"tests": 54
},
{
"command": "yarn ci:check",
"result": "pass",
"tests": {
"unit": 1152,
"engineering": 14,
"baseline": 141,
"mainTotal": 1307,
"repeatedContractExecutions": 44
},
"strictProductionTypeScriptFiles": 310,
"log": "refactor/.cache/mb05-video-ci.log"
}
],
"limitations": [
"AudioEngine remains JS behind an explicit declaration bridge; audio-node/clock ownership is MB-06.",
"Ten native frame races use actual decoded frames or raw samples with controlled delivery delay; not long-run AV sync.",
"Eleven Windows WebKit capability controls are not playback; no general Safari claim.",
"Existing undecodable-track fallback and readiness need MB-CAP-01/MB-READY-01 review.",
"HLS UI and full concurrent selection topology remain MB-07.",
"Cleanup invokes and observes SDK iterator return without waiting for an obsolete read; the SDK controls underlying decoder completion.",
"No npm release acceptance is implied."
],
"postCiVerification": {
"runtimeSourceUnchanged": true,
"browserTeardownWaiter": "Wait for asynchronous AudioContext close within the existing expect timeout; no production change",
"checks": [
"focused eslint --no-fix",
"54 final browser cases",
"15 frozen browser controls"
],
"logs": [
"refactor/.cache/mb05-video-lint.log",
"refactor/.cache/mb05-video-browser-terminal.log",
"refactor/.cache/mb05-video-browser-frozen-terminal.log"
]
}
}