From 8acb268da350f0dea4d4de399a2a74d558f2abb8 Mon Sep 17 00:00:00 2001 From: Garry Tan Date: Tue, 18 Aug 2026 17:05:55 -0700 Subject: [PATCH] test(uninstall): 30s budgets for the two subprocess-heavy behavioral tests MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Both tests spawn the copied uninstaller, which itself runs several settings-hook bun -e children (the lock-contention one also waits out a 300ms give-up per call). On a loaded box those cold starts blow bun's default 5s per-test timeout, and a timeout kill reports as a bare fail with no assertion diff — observed at 5.6-8.5s under load avg 25+. Co-Authored-By: Claude Fable 5 --- test/uninstall.test.ts | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/test/uninstall.test.ts b/test/uninstall.test.ts index 8ad6870b9..96e2e689e 100644 --- a/test/uninstall.test.ts +++ b/test/uninstall.test.ts @@ -296,7 +296,9 @@ describe('hook cleanup runs before the install root is deleted', () => { } finally { fs.rmSync(tmp, { recursive: true, force: true }); } - }); + // 30s: the copied uninstaller spawns several bun -e children; on a loaded + // box their cold starts blow bun's default 5s per-test timeout. + }, 30000); }); describe('hook cleanup under lock contention is loud, never silent (review-army)', () => { @@ -347,5 +349,8 @@ describe('hook cleanup under lock contention is loud, never silent (review-army) } finally { fs.rmSync(tmp, { recursive: true, force: true }); } - }); + // 30s: several settings-hook calls each wait out the 300ms lock give-up, + // and their bun -e cold starts stack up under load — the default 5s + // per-test budget is too tight on a busy box. + }, 30000); });