Skip to content

fix: Parallel screenshot browser startup can abort #6144

Description

@webstudio-issue-reporter

User story

As a site author, I want to capture desktop and mobile verification screenshots efficiently without the screenshot runner crashing.

Summary

Two screenshot commands started concurrently against the same generated preview both failed while starting their browser runtimes.

What the agent tried

  1. Start a generated production preview.
  2. Launch two screenshot commands concurrently with different viewport sizes and separate output files.

Expected behavior

Both screenshot commands should independently capture their requested viewport, or the CLI should serialize or reject concurrent startup cleanly.

Actual result

Both commands terminated before the DevTools endpoint became ready because the browser process exited with signal SIGABRT.

Recovery attempts

  1. Plan to rerun screenshots sequentially.
  2. Use the already-connected browser surface for interactive verification.

User impact

Responsive visual verification required extra retries and could not benefit from parallel capture.

Technical context

Webstudio CLI 0.290.0 screenshot command, generated preview already running, two concurrent screenshot processes, BrowserSessionClosedError during browser startup.

Agent environment

  • Client: Codex
  • Provider: OpenAI
  • Model: gpt-5.6-sol
  • Reasoning effort: unknown
  • Trigger: automatic-friction
  • Category: hang-or-crash

Technical runtime

  • CLI: 0.290.0
  • Node.js: 26.0.0
  • Operating system: darwin 25 (arm64)
  • Execution mode: mcp
  • API contract: public-api:iqd6ok

Acceptance criteria

  1. Concurrent screenshot starts do not crash browser processes.
  2. If concurrency is unsupported, the CLI returns a clear non-crashing serialization or conflict response.
  3. A regression test covers two simultaneous screenshot commands with different viewports.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions