From 668b7b0618603be103ba05355219fe8d22a1203c Mon Sep 17 00:00:00 2001 From: Taylor Mullen Date: Sat, 14 Feb 2026 11:31:36 -0800 Subject: [PATCH] test(rig): improve cleanDir with exponential backoff and better logging for Windows --- packages/test-utils/src/test-rig.ts | 15 ++++++++++++--- 1 file changed, 12 insertions(+), 3 deletions(-) diff --git a/packages/test-utils/src/test-rig.ts b/packages/test-utils/src/test-rig.ts index a4e7a0012d..c3e5451499 100644 --- a/packages/test-utils/src/test-rig.ts +++ b/packages/test-utils/src/test-rig.ts @@ -370,11 +370,20 @@ export class TestRig { fs.rmSync(dir, { recursive: true, force: true }); return; } catch (err) { - if (i === 4) throw err; + if (i === 4) { + console.error( + `Failed to clean directory ${dir} after 5 attempts:`, + err, + ); + throw err; + } + const delay = Math.pow(2, i) * 1000; const sleepCmd = - process.platform === 'win32' ? 'timeout /t 1' : 'sleep 1'; + process.platform === 'win32' + ? `timeout /t ${Math.max(1, Math.floor(delay / 1000))} /nobreak` + : `sleep ${delay / 1000}`; try { - execSync(sleepCmd); + execSync(sleepCmd, { stdio: 'ignore' }); } catch { /* ignore */ }