gstack/browse
blueverse-hh a8b5bc59ec fix(browse): stop stray Windows console windows during browse
The browse daemon is launched detached (cli.ts startServer), which on Windows
gives it NO console. Console children it then spawns -- chrome-headless-shell.exe
via Playwright, `bun` skill helpers, the taskkill cleanup -- find no console to
inherit, so Windows allocates a fresh VISIBLE console window for each. Users see
stray chrome-headless-shell / bun terminal windows during browse use; some linger
for the browser's lifetime. Neither the user's default-terminal choice nor a flag
on the daemon itself fixes it: a detached process has no console regardless.

Verified on Windows 11: a child of a detached/console-less parent is visible
without windowsHide and hidden with it (windowsHide => CREATE_NO_WINDOW, which
suppresses the window even when the parent has no console).

Fix: the daemon defaults windowsHide:true for every child_process spawn
(win-console-hide.ts, imported first in server.ts so it patches the
child_process singleton before Playwright's first launch()). playwright-core
reads spawn via a live `__toESM(require("child_process")).spawn` getter at call
time, so patching the singleton covers its browser launch even though spawn
options can't be passed through chromium.launch(). gstack's own Bun.spawn skill
helpers and the detached launcher / attack-telemetry spawns set windowsHide
directly.

End-to-end: `browse goto` now starts the daemon and 4 chrome-headless-shell
processes with zero visible windows.

Adds a static-grep tripwire so the flag and import order can't regress.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-19 23:05:17 -04:00
..
bin feat: multi-agent support — gstack works on Codex, Gemini CLI, and Cursor (v0.9.0) (#226) 2026-03-19 18:20:50 -07:00
scripts fix: ngrok Windows build + close CI error-swallowing gap (v0.18.0.1) (#1024) 2026-04-16 13:49:04 -07:00
src fix(browse): stop stray Windows console windows during browse 2026-06-19 23:05:17 -04:00
test fix(browse): stop stray Windows console windows during browse 2026-06-19 23:05:17 -04:00
PLAN-snapshot-dropdown-interactive.md fix: snapshot -i auto-detects dropdown/popover interactive elements (#845) 2026-04-05 22:57:45 -07:00
SKILL.md v1.58.1.0 feat: hermetic local E2E + Conductor prose AskUserQuestion (#2004) 2026-06-14 11:40:57 -07:00
SKILL.md.tmpl v1.57.8.0 feat: browse js/eval --out render-to-file (canonical Chromium for offline rendering) (#1929) 2026-06-09 21:02:30 -07:00