Skip to content

fix: bridge smoke liveness probe -- Signal(nil) declared every launch dead - #232

Merged
alicoding merged 1 commit into
mainfrom
bridge-smoke-liveness-probe
Aug 18, 2026
Merged

fix: bridge smoke liveness probe -- Signal(nil) declared every launch dead#232
alicoding merged 1 commit into
mainfrom
bridge-smoke-liveness-probe

Conversation

@alicoding

Copy link
Copy Markdown
Owner

Every "app process exited before the MCP bridge became reachable" failure — CI hosted runners and local runs alike — was the harness's own liveness probe: Process.Signal(nil) fails the Unix implementation's syscall.Signal type assertion and errors for a perfectly alive process, so the early-exit branch fired on the first poll of every launch. The headless-runner windowing theory was never actually tested; the harness failed before the app could boot.

With syscall.Signal(0) the local smoke connects and drives the real registry — the click-model and selection-ring checks have passed against the real WKWebView. Remaining before the CI job means anything: the check registry was written blind against a single-window assumption (Mill opens main + the Quick Panel), so window-count/badge/click-targeting calibration is tracked as goal 0107. Regression test pins the probe both ways; testing.md's parity verdict rewritten honestly.

🤖 Generated with Claude Code

https://claude.ai/code/session_01FW5GkkAG8du7tNdYLk2zSd

… dead

Process.Signal's Unix implementation type-asserts its argument to
syscall.Signal; a nil interface fails that assertion and returns an
error for a perfectly alive process, so waitForBridge's early-exit
branch fired on the first poll of every launch -- the identical
'connection refused' failure on CI hosted runners and locally.
syscall.Signal(0) is the real kill(2) liveness probe. Regression test
pins a live child probing false and a reaped child probing true.
testing.md's parity verdict rewritten: the headless-windowing lead was
never tested (the harness failed first); remaining work is registry
calibration against Mill's real multi-window shape, tracked as a goal.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01FW5GkkAG8du7tNdYLk2zSd
@alicoding
alicoding enabled auto-merge (squash) August 18, 2026 11:14
@alicoding
alicoding merged commit dfcc063 into main Aug 18, 2026
26 of 27 checks passed
@alicoding
alicoding deleted the bridge-smoke-liveness-probe branch August 18, 2026 11:22
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