Skip to content

fix: remove ffmpeg-dependent e2e test, document viewport regression in code#1236

Open
jin-2-kakaoent wants to merge 1 commit intovercel-labs:mainfrom
hyunjinee:fix/remove-ffmpeg-dependent-e2e-test
Open

fix: remove ffmpeg-dependent e2e test, document viewport regression in code#1236
jin-2-kakaoent wants to merge 1 commit intovercel-labs:mainfrom
hyunjinee:fix/remove-ffmpeg-dependent-e2e-test

Conversation

@jin-2-kakaoent
Copy link
Copy Markdown
Contributor

@jin-2-kakaoent jin-2-kakaoent commented Apr 14, 2026

Problem

The e2e_recording_inherits_viewport test (added in #1208) was failing CI on every push to main. The test verifies that recording_start inherits the current viewport dimensions into the newly created recording context, but it requires ffmpeg to be installed at runtime.

The ubuntu-latest GitHub Actions runner does not have ffmpeg pre-installed, so the recording_start command fails immediately with:

"error": "ffmpeg not found or failed to execute: No such file or directory (os error 2). Install ffmpeg to enable recording."

This caused the Native E2E Tests job to fail on every push.

Why not just skip when ffmpeg is missing?

An early-return skip (checking which ffmpeg at test start) would make the test permanently dead in CI — it would appear in the test suite but never execute, creating false confidence. A test that never runs provides no regression protection and is worse than no test at all.

Why not install ffmpeg in CI?

Installing ffmpeg in the CI runner is a heavyweight solution for a single test. ffmpeg is a large dependency and would add meaningful overhead to every CI run.

Solution

Remove the test and instead preserve the regression context as a comment co-located with the viewport inheritance logic in actions.rs. This matches the pattern already used by the adjacent download behavior and HTTPS error comments in handle_recording_start:

// Inherit the current viewport dimensions into the recording context.
// Without this, the recording context resets to the default 1280×720
// regardless of what the user previously set. Regression: #1208
if let Some((w, h, scale, mobile)) = viewport {
    let _ = mgr.set_viewport(w, h, scale, mobile).await;
}

Anyone modifying handle_recording_start will see this comment directly in the code, making the regression risk visible at the point of change — which is more reliable than a test that never runs in CI.

Test plan

  • Native E2E Tests CI job passes on this branch

…n code

The e2e_recording_inherits_viewport test required ffmpeg at runtime,
causing CI failures on ubuntu-latest where ffmpeg is not installed.
Since a skip approach would leave a permanently dead test, the test is
removed instead. The regression context (vercel-labs#1208) is preserved as a
comment co-located with the viewport inheritance logic in actions.rs,
matching the pattern used by adjacent download and HTTPS error comments.
@vercel
Copy link
Copy Markdown
Contributor

vercel bot commented Apr 14, 2026

@hyunjinee is attempting to deploy a commit to the Vercel Labs Team on Vercel.

A member of the Team first needs to authorize it.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants