From 285b50c5495131497166fc5d9a0811ece9826eea Mon Sep 17 00:00:00 2001 From: Peter Steinberger Date: Sat, 14 Mar 2026 00:26:03 +0000 Subject: [PATCH] fix: support bun lockfile detection --- src/infra/detect-package-manager.test.ts | 6 +++++- src/infra/detect-package-manager.ts | 2 +- 2 files changed, 6 insertions(+), 2 deletions(-) diff --git a/src/infra/detect-package-manager.test.ts b/src/infra/detect-package-manager.test.ts index 57e06cf1a67..791b5894cda 100644 --- a/src/infra/detect-package-manager.test.ts +++ b/src/infra/detect-package-manager.test.ts @@ -19,9 +19,13 @@ describe("detectPackageManager", () => { it("falls back to lockfiles when package.json is missing or unsupported", async () => { const bunRoot = await fs.mkdtemp(path.join(os.tmpdir(), "openclaw-detect-pm-")); - await fs.writeFile(path.join(bunRoot, "bun.lockb"), "", "utf8"); + await fs.writeFile(path.join(bunRoot, "bun.lock"), "", "utf8"); await expect(detectPackageManager(bunRoot)).resolves.toBe("bun"); + const legacyBunRoot = await fs.mkdtemp(path.join(os.tmpdir(), "openclaw-detect-pm-")); + await fs.writeFile(path.join(legacyBunRoot, "bun.lockb"), "", "utf8"); + await expect(detectPackageManager(legacyBunRoot)).resolves.toBe("bun"); + const npmRoot = await fs.mkdtemp(path.join(os.tmpdir(), "openclaw-detect-pm-")); await fs.writeFile( path.join(npmRoot, "package.json"), diff --git a/src/infra/detect-package-manager.ts b/src/infra/detect-package-manager.ts index f1f96180c87..5f3c9cbc7d6 100644 --- a/src/infra/detect-package-manager.ts +++ b/src/infra/detect-package-manager.ts @@ -19,7 +19,7 @@ export async function detectPackageManager(root: string): Promise