Reading (2026-08-24)
Windows 11, Firefox 154, crates/glass-windows/tests/web_probe.rs (fresh --profile, a11y: true):
glass.stop() returned Ok(()) and firefox.exe carrying the probe's profile marker was still running afterwards. Edge and Brave under the same probe left 0 survivors.
- Same root as
list_windows() returning empty for Firefox on this backend: the process glass discovered is not the one that owns the window, so the quit request and the group reap miss the real browser.
The probe kills its own survivors by exact pid as a workaround (web_probe.rs, the teardown loop); the product path does not.
Expected
glass_stop completes only when the app is gone, or reports on stderr that it terminated it — never Ok with the process alive (docs/reference/tools.md, glass_stop).
Command
GLASS_WIN_HOST=… ./scripts/test-windows.sh --tests web_probe → .windows-artifacts/web-probe.txt, the Firefox leg's survived stop by … line.
Reading (2026-08-24)
Windows 11, Firefox 154,
crates/glass-windows/tests/web_probe.rs(fresh--profile,a11y: true):glass.stop()returnedOk(())andfirefox.execarrying the probe's profile marker was still running afterwards. Edge and Brave under the same probe left 0 survivors.list_windows()returning empty for Firefox on this backend: the process glass discovered is not the one that owns the window, so the quit request and the group reap miss the real browser.The probe kills its own survivors by exact pid as a workaround (
web_probe.rs, the teardown loop); the product path does not.Expected
glass_stopcompletes only when the app is gone, or reports on stderr that it terminated it — neverOkwith the process alive (docs/reference/tools.md,glass_stop).Command
GLASS_WIN_HOST=… ./scripts/test-windows.sh --tests web_probe→.windows-artifacts/web-probe.txt, the Firefox leg'ssurvived stop by …line.