fix(server): retry hub test temp cleanup on Linux ENOTEMPTY (#2233)

removeRoot() already retries EBUSY/ENOTEMPTY on main; also retry EPERM
and document the Linux CI teardown race.

Closes #2207
This commit is contained in:
Jason@HND
2026-07-25 03:39:02 +09:00
committed by GitHub
parent bb3f5c5a2d
commit 830c9b62c4

View File

@@ -1322,7 +1322,9 @@ export class HubRelationshipHarness {
}
private async removeRoot(): Promise<void> {
const retryableCodes = new Set(["EBUSY", "ENOTEMPTY"]);
// Daemon may still flush into .paseo/projects during teardown; recursive rm
// can race and hit ENOTEMPTY/EBUSY/EPERM. Observed on Linux CI as well as macOS/Windows.
const retryableCodes = new Set(["ENOTEMPTY", "EBUSY", "EPERM"]);
const attempts = 10;
for (let attempt = 1; attempt <= attempts; attempt++) {
try {