You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
Shell integration tests can exhaust shared outer deadlines #7448
Two shell-integration tests share an outer deadline across several real subprocess invocations. The SSH discovery fixture can exceed Bun's default five-second test deadline before it exhausts its candidate list. The release-gates aggregate test can similarly exhaust a 30-second matrix-wide deadline under load, even though each individual Bash invocation is bounded.
Expected: each scenario completes or reports its own bounded child failure, with the existing candidate-order, argument-fidelity and gate-policy assertions intact. Actual: the SSH case returns a null exit status after Bun kills a dangling process, rather than the expected exit 127; a prior exact-base validation also observed the CI matrix expiring at 30 seconds.
Reproduction
On unmodified dev commit 12025981e5a304cdb6b1b54f525ba8554f623977, use Bun 1.4.3 through the repository's isolated runner:
bun run test --parallel=1 \
./tests/ci-workflows/ci-review-lanes.test.ts \
./tests/clients/link-ssh-argv-discovery.test.ts
The fresh run produced 18 passes and 1 failure. remote sh reports missing when all candidates are absent or fail --version timed out at 5,024 ms: expected exit 127, received null. The late winning-candidate case took 4,955 ms, close to the same outer deadline.
The CI matrix passed in this fresh run (4,651 ms), but previously failed on this exact base under concurrent load when all combinations shared one 30-second test. This part is load-sensitive, not claimed as a deterministic failure on an idle machine.
Version
12025981e5a304cdb6b1b54f525ba8554f623977
Operating system
macOS 26.6.2, arm64; Bun 1.4.3
Provider and model
Not provider-specific. No model requests are needed.
Logs or error output
killed 1 dangling process
Expected: 127
Received: null
(fail) remote sh reports missing when all candidates are absent or fail --version
this test timed out after 5000ms
18 pass
1 fail
Screenshots and supporting files
Not applicable; this is a subprocess test-runner failure.
Redacted configuration
No user configuration required. The repository runner uses isolated HOME and client configuration directories.
Checks
I searched existing issues and documentation.
I removed secrets, tokens, account details, request credentials, and personal data.
The matching fix is #7449. I independently ran both affected files at its exact head 7c2302ec5b9ddd7711add2f94ee2d28c116c15a7 on Linux/Bun 1.4.3 with fresh homes and hard CPU/memory/process limits: 78 passed, 0 failed. The real shell/argv and checked-in gate assertions are retained, with independent scenario deadlines. Functional CI execution has now been approved; the issue remains open until a verified dev landing. This does not establish that every idle-host baseline run fails or that production routing changed.
Closing: fixed by #7449 ("test: bound shell integration scenarios independently"), merged to dev on 2026-10-21. Each shell integration scenario now has its own bound instead of sharing the outer deadline. Reopen if it recurs on current dev.
Activity
github-actions commentedon Oct 20, 2026
Automated translation bookkeeping — detected language: English.
Ingwannu commentedon Oct 21, 2026
The matching fix is #7449. I independently ran both affected files at its exact head
7c2302ec5b9ddd7711add2f94ee2d28c116c15a7on Linux/Bun 1.4.3 with fresh homes and hard CPU/memory/process limits: 78 passed, 0 failed. The real shell/argv and checked-in gate assertions are retained, with independent scenario deadlines. Functional CI execution has now been approved; the issue remains open until a verified dev landing. This does not establish that every idle-host baseline run fails or that production routing changed.lidge-jun commentedon Oct 22, 2026
Closing: fixed by #7449 ("test: bound shell integration scenarios independently"), merged to dev on 2026-10-21. Each shell integration scenario now has its own bound instead of sharing the outer deadline. Reopen if it recurs on current dev.