Skip to content

fix(setup): bound Playwright bootstrap and preserve skill registration#2233

Open
time-attack wants to merge 1 commit into
garrytan:mainfrom
time-attack:time-attack/issue-2136-setup-playwright-hang
Open

fix(setup): bound Playwright bootstrap and preserve skill registration#2233
time-attack wants to merge 1 commit into
garrytan:mainfrom
time-attack:time-attack/issue-2136-setup-playwright-hang

Conversation

@time-attack

Copy link
Copy Markdown

On some Macs, setup could wait forever while checking or downloading Chromium. Retrying started more stuck installers, and setup stopped before registering commands such as /qa and /ship.

Setup now limits how long browser checks and downloads may run, allows only one setup at a time, cleans up timed-out child processes, and still registers commands when Chromium is unavailable.

Technical changes

  • use Node instead of Bun for Chromium launch probing on macOS
  • bound launch probes and Chromium installation
  • terminate timed-out descendant processes
  • serialize setup with a portable stale-PID lock
  • continue skill registration after Chromium failure
  • add focused regression coverage

Live verification

Identical baseline/candidate probes were run in isolated clones and HOME directories:

  • TideDra/zotero-arxiv-daily: fail → pass
  • loperanger7/gstack-auto: fail → pass
  • garrytan/gbrain: fail → pass
  • browserbase/stagehand normal-install control: pass → pass
  • makeplane/plane normal-install control: pass → pass

The evidence gate passed and no marked child processes remained.

Secondary tests

  • bash -n setup
  • bun test test/setup-playwright-deadline.test.ts test/setup-windows-fallback.test.ts — 12 passed

@trunk-io

trunk-io Bot commented Jul 10, 2026

Copy link
Copy Markdown

Merging to main in this repository is managed by Trunk.

  • To merge this pull request, check the box to the left or comment /trunk merge below.

After your PR is submitted to the merge queue, this comment will be automatically updated with its status. If the PR fails, failure details will also be posted here

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.

1 participant