From 378803987cfba74df0f848791eaad77ccf3718d9 Mon Sep 17 00:00:00 2001 From: Gustavo Madeira Santana Date: Fri, 27 Mar 2026 20:01:14 -0400 Subject: [PATCH] fix(diffs): stage bundled runtime deps after updates (#56077) Merged via squash. Prepared head SHA: 2a153451de7a7cc8e6cd87795dbdd5e85a7bee27 Co-authored-by: gumadeiras <5599352+gumadeiras@users.noreply.github.com> Co-authored-by: gumadeiras <5599352+gumadeiras@users.noreply.github.com> Reviewed-by: @gumadeiras --- CHANGELOG.md | 1 + extensions/diffs/package.json | 3 +++ extensions/diffs/src/manifest.test.ts | 22 ++++++++++++++++++++++ 3 files changed, 26 insertions(+) create mode 100644 extensions/diffs/src/manifest.test.ts diff --git a/CHANGELOG.md b/CHANGELOG.md index 46703a6a46d..06421de98c3 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -98,6 +98,7 @@ Docs: https://docs.openclaw.ai - Plugins/Matrix: preserve sender filenames for inbound media by forwarding `originalFilename` to `saveMediaBuffer`. (#55692) thanks @esrehmki. - Matrix/mentions: recognize `matrix.to` mentions whose visible label uses the bot's room display name, so `requireMention: true` rooms respond correctly in modern Matrix clients. (#55393) thanks @nickludlam. - Ollama/thinking off: route `thinkingLevel=off` through the live Ollama extension request path so thinking-capable Ollama models now receive top-level `think: false` instead of silently generating hidden reasoning tokens. (#53200) Thanks @BruceMacD. +- Plugins/diffs: stage bundled `@pierre/diffs` runtime dependencies during packaged updates so the bundled diff viewer keeps loading after global installs and updates. (#56077) Thanks @gumadeiras. ## 2026.3.24 diff --git a/extensions/diffs/package.json b/extensions/diffs/package.json index dadec29dbcb..3d2d1478373 100644 --- a/extensions/diffs/package.json +++ b/extensions/diffs/package.json @@ -13,6 +13,9 @@ "playwright-core": "1.58.2" }, "openclaw": { + "bundle": { + "stageRuntimeDependencies": true + }, "extensions": [ "./index.ts" ] diff --git a/extensions/diffs/src/manifest.test.ts b/extensions/diffs/src/manifest.test.ts new file mode 100644 index 00000000000..a2e8dbbfd02 --- /dev/null +++ b/extensions/diffs/src/manifest.test.ts @@ -0,0 +1,22 @@ +import fs from "node:fs"; +import { describe, expect, it } from "vitest"; + +type DiffsPackageManifest = { + dependencies?: Record; + openclaw?: { + bundle?: { + stageRuntimeDependencies?: boolean; + }; + }; +}; + +describe("diffs package manifest", () => { + it("opts into staging bundled runtime dependencies", () => { + const packageJson = JSON.parse( + fs.readFileSync(new URL("../package.json", import.meta.url), "utf8"), + ) as DiffsPackageManifest; + + expect(packageJson.dependencies?.["@pierre/diffs"]).toBeDefined(); + expect(packageJson.openclaw?.bundle?.stageRuntimeDependencies).toBe(true); + }); +});