commit 429e3e639b0976e3ad71dff7a67222eeaeec7f99
parent 4474c461b9b8175461ca8a49d932949053a8e6fb
Author: I Mean I'm Just Saying <imeanimjustsaying@kiwifarms.st>
Date: Mon, 28 Sep 2026 13:18:34 -0400
common: the doctor's git test turns off git's own background maintenance
A detached `git maintenance run --auto` after the test's commit took
.git/objects/maintenance.lock while the doctor ran, and the tree comparison
blamed the doctor for git's write (1 of 2,125 in one full run; git 2.55).
maintenance.auto=false and gc.auto=0 in the temp repo; 8/8 alone after. It
still bites: without GIT_OPTIONAL_LOCKS=0 the doctor's git status moves
.git/index and the test fails.
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
Diffstat:
1 file changed, 5 insertions(+), 0 deletions(-)
diff --git a/common/bin/doctor.test.ts b/common/bin/doctor.test.ts
@@ -384,6 +384,11 @@ test("the build image's Dockerfile dates from its last commit, or its mtime once
},
});
g("init", "-q");
+ // No background maintenance after the commit: a detached `git maintenance
+ // run --auto` takes .git/objects/maintenance.lock while the doctor runs, and
+ // the tree comparison below would blame the doctor for git's own write.
+ g("config", "maintenance.auto", "false");
+ g("config", "gc.auto", "0");
g("add", "Dockerfile.build");
g("commit", "-q", "-m", "the build image");
const image = async (): Promise<BuildImageProbe> => ({