From fe84354a335377be7f267a696ddff32ec610d520 Mon Sep 17 00:00:00 2001 From: Vincent Koc Date: Tue, 17 Mar 2026 23:28:23 -0700 Subject: [PATCH] fix(plugins): add missing secret-input-schema build entry and Matrix runtime export buildSecretInputSchema was not included in plugin-sdk-entrypoints.json, so it was never emitted to dist/plugin-sdk/secret-input-schema.js. This caused a ReferenceError during onboard when configuring channels that use secret input schemas (matrix, feishu, mattermost, bluebubbles, nextcloud-talk, zalo). Additionally, the Matrix extension's hand-written runtime-api barrel was missing the re-export, unlike other extensions that use `export *` from their plugin-sdk subpath. Co-authored-by: hxy91819 Co-authored-by: Claude Opus 4.6 --- extensions/matrix/src/runtime-api.test.ts | 4 ++++ package.json | 4 ++++ scripts/lib/plugin-sdk-entrypoints.json | 3 ++- 3 files changed, 10 insertions(+), 1 deletion(-) diff --git a/extensions/matrix/src/runtime-api.test.ts b/extensions/matrix/src/runtime-api.test.ts index a3768fbaf4b..97b6ffcbda4 100644 --- a/extensions/matrix/src/runtime-api.test.ts +++ b/extensions/matrix/src/runtime-api.test.ts @@ -10,6 +10,10 @@ describe("matrix runtime-api", () => { expect(typeof helpers.resolveDefaultAccountId).toBe("function"); }); + it("re-exports buildSecretInputSchema for config schema helpers", () => { + expect(typeof runtimeApi.buildSecretInputSchema).toBe("function"); + }); + it("does not re-export setup entrypoints that create extension cycles", () => { expect("matrixSetupWizard" in runtimeApi).toBe(false); expect("matrixSetupAdapter" in runtimeApi).toBe(false); diff --git a/package.json b/package.json index 5b9c9866ba9..6da833831a9 100644 --- a/package.json +++ b/package.json @@ -482,6 +482,10 @@ "types": "./dist/plugin-sdk/tool-send.d.ts", "default": "./dist/plugin-sdk/tool-send.js" }, + "./plugin-sdk/secret-input-schema": { + "types": "./dist/plugin-sdk/secret-input-schema.d.ts", + "default": "./dist/plugin-sdk/secret-input-schema.js" + }, "./cli-entry": "./openclaw.mjs" }, "scripts": { diff --git a/scripts/lib/plugin-sdk-entrypoints.json b/scripts/lib/plugin-sdk-entrypoints.json index 55c22bf8470..108199d7772 100644 --- a/scripts/lib/plugin-sdk-entrypoints.json +++ b/scripts/lib/plugin-sdk-entrypoints.json @@ -109,5 +109,6 @@ "web-media", "speech", "state-paths", - "tool-send" + "tool-send", + "secret-input-schema" ]