Skip to content

Governance: add head-bound macOS Electron screenshot check #133

Open

Description

@qwen-code-dev-bot

Proposal

Add a maintainer-authored GitHub Actions job that validates the Desktop Electron window natively on macOS and publishes a screenshot artifact bound to the pull request head SHA.

Why this needs maintainer action

The Desktop foundation now has a secure Electron process boundary, a macOS-first workbench shell, and real Linux Xvfb interaction coverage. Repository governance protects .github/workflows/**, so the development bot must not add or modify the workflow itself.

Required job contract

  • Run on a GitHub-hosted macOS runner.
  • Check out the exact pull request head SHA, not a moving branch ref.
  • Install dependencies and build the Electron desktop entry points.
  • Launch the real Electron BrowserWindow natively.
  • Wait for the renderer ready state and verify the project rail, workbench, inspector, and composer landmarks.
  • Capture the native application window as a PNG.
  • Upload the PNG and a small manifest containing the tested head SHA, platform, command outcome, and capture timestamp.
  • Fail if the app exits early, the ready state is absent, the landmarks are missing, the screenshot is empty, or the manifest SHA differs from the tested head.
  • Expose a stable check name suitable for the Desktop required-check policy.

Existing evidence

Acceptance criteria

  • A maintainer-authored workflow change lands through normal review.
  • A test pull request produces a non-empty native macOS window screenshot artifact and matching head-SHA manifest.
  • The check is repeatable and does not rely on simulated terminal output or a mocked BrowserWindow.
  • Desktop parent Desktop: launch a secure macOS session shell #106 links the successful run before it is closed.

Related

Activity

  1. added
    priority:p1High priority: address before normal work
    governance-proposalProposal for independent maintainer review of protected governance
    on Jul 18, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    governance-proposalProposal for independent maintainer review of protected governancepriority:p1High priority: address before normal work

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions