Files
Julius Brussee 99a9aa2f5a ci: make the suite-hang class structurally impossible
Two guarantees, layered:

1. --test-force-exit on EVERY node --test invocation in the repo (16
   package.json scripts, both engine-ci root-test steps, profiles.yml, and
   the test:windows compat runner) — a test file that leaks a server,
   socket, or child after a failed assertion now exits when its tests
   finish instead of pinning the runner until the workflow limit.

2. timeout-minutes on all six engine-ci jobs (25, or 45 for
   typescript/windows) — engine-ci was the only workflow with none, which
   is how a single leaked handle occupied a runner for 6 hours, twice.
   Anything that still finds a way to wedge now dies as a visible failure
   inside the hour.

Verified locally with the flag: root installer 169, subagent-tax 48,
mem/js, mcp, browse, shrink, explorer, caveman-learn — all green.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01Ez7w7BBtKrMZCiZz9ea4cb
2026-08-19 10:32:21 +02:00
..