diff --git a/.github/workflows/regression.yml b/.github/workflows/regression.yml index dd7b9a412..0f9c1d3d8 100644 --- a/.github/workflows/regression.yml +++ b/.github/workflows/regression.yml @@ -73,7 +73,7 @@ jobs: - shard: shard-4 args: "style-16-prod style-9-prod style-17-prod iframe-render-compat variables-prod mp4-h265-sdr" - shard: shard-5 - args: "style-4-prod style-11-prod style-2-prod animejs-adapter typegpu-adapter" + args: "style-4-prod style-11-prod style-2-prod animejs-adapter typegpu-adapter parallel-capture-regression" - shard: shard-6 args: "overlay-montage-prod style-12-prod chat missing-host-comp-id png-sequence" - shard: shard-7 diff --git a/packages/producer/tests/parallel-capture-regression/meta.json b/packages/producer/tests/parallel-capture-regression/meta.json new file mode 100644 index 000000000..ac8afcae7 --- /dev/null +++ b/packages/producer/tests/parallel-capture-regression/meta.json @@ -0,0 +1,13 @@ +{ + "name": "parallel-capture-regression", + "description": "Multi-worker parallel capture path coverage. Exercises frame distribution, reorder buffer, and per-worker browser lifecycle at workers > 1. Guards against regressions in executeParallelCapture and the streaming encoder's ordered-write path. Note: the GPU-specific BeginFrame compositor race (#1087) only reproduces on hardware-GPU hosts, not in SwiftShader CI.", + "tags": ["regression", "parallel", "render-compat"], + "minPsnr": 30, + "maxFrameFailures": 0, + "minAudioCorrelation": 0, + "maxAudioLagWindows": 1, + "renderConfig": { + "fps": 30, + "workers": 4 + } +} diff --git a/packages/producer/tests/parallel-capture-regression/output/compiled.html b/packages/producer/tests/parallel-capture-regression/output/compiled.html new file mode 100644 index 000000000..06150913f --- /dev/null +++ b/packages/producer/tests/parallel-capture-regression/output/compiled.html @@ -0,0 +1,147 @@ + + +
+ + + + +