Repository navigation
Fix browser CI capture readiness and macOS fixture permissions - #155
Open
katulevskiy wants to merge 6 commits into
Open
katulevskiy wants to merge 6 commits into
katulevskiy wants to merge 6 commits into
Conversation
Source: zeronsh#563 Source revision: 4441c17
Contribution Managerneeds triage · medium risk · untriaged Open review workspace · Revision Next actions:
This summary is maintained by the review app. Decisions and test evidence are recorded in the workspace; the app does not merge PRs. |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Upstream mirror
Source: zeronsh#563
Original author: @jsgrrchg
Original revision:
4441c1761f1fb42f62b7b1016d265aec90b17697This PR is an isolated Contribution Manager pilot mirror. Its reviews, checks and merge state are separate from upstream. An empty
[skip ci]commit suppresses automatic bulk CI; the code tree matches the imported upstream revision.The first Linux browser screenshot could fail with
fixture window not visible: capture performed a single PID-based lookup while Openbox startup and the video recorder's window wait ran independently. This change makes capture readiness explicit and retains enough evidence to distinguish mapping, display, and lookup failures.Closes zeronsh#561.
_NET_SUPPORTING_WM_CHECKbefore launching the fixture.WM_CLASS, since it does not reliably publish_NET_WM_PID; now both its visible window and Wayland socket must be ready.The macOS fixture wrapper is also now tracked as executable (
100755). Direct Pythonsubprocess.run()callers previously failed withPermissionErrorbefore starting the fixture, including the storage test's normal and cleanup paths. This permission change fixes that launch failure without changing the wrapper's contents.Validation
Tested patch
43a0398dagainst unmodified baseline03b67bebon Fedora 44, Rust 1.98.0, Xvfb 21.1.24, Openbox 3.6.1, Weston 15.0.1, Mesa 26.2.2 / LLVM 22.1.8, and WebKitGTK 2.52.5. Local FFmpeg lacks libx264, so recordings used the existingBROWSER_FIXTURE_VIDEO_CODEC=mpeg4override.0dcda0c1): reproducedPermissionErrorlocally before the change; after the change a direct Python subprocess launch reaches Bash.bash -npassed. This launch smoke check ran on Linux and stops at argument validation, before macOS-specific commands.--locked: passed.xvfb-run -a cargo test --release --locked -p zeron-ui --example browser-fixture --features browser-fixture linux_capture::tests -- --include-ignored: 4 passed, none skipped. Covers delayed mapping without PID metadata, permanent unmapping, destroyed windows, and override validation.VK_DRIVER_FILES=/dev/null. X11 passed 4/4, each retaining all 15 screenshots, browser results, and verified 1000×680 video. All 8 initial X11/Wayland screenshots succeeded.menu is opaque instead of showing the live page backdropmenu tint did not blur checkerboard edgesThe complete Wayland suite is not green locally. The baseline also fails blur validation on this Fedora/Weston stack, but the exact failing assertion differs. Screenshots, blur measurements, logs, videos, and every attempt's outcome are retained locally in
/tmp/issue-561-validation; no blur, navigation, video, or forced-GL checks were weakened. Ubuntu CI still needs to confirm the full suite in its own environment. The historical CI startup failure was not spontaneously reproduced; controlled readiness failures exercise the new contract.Need help on this PR? Tag
@codesmith-botwith what you need. Autofix is disabled.