From 5c3dc40794ac90b4aea0a70d52fe5bdde23e8719 Mon Sep 17 00:00:00 2001 From: Tak Hoffman <781889+Takhoffman@users.noreply.github.com> Date: Fri, 3 Apr 2026 13:22:07 -0500 Subject: [PATCH] fix: honor googlechat default runtime account --- extensions/googlechat/src/accounts.ts | 4 +++- extensions/googlechat/src/setup.test.ts | 20 ++++++++++++++++++++ 2 files changed, 23 insertions(+), 1 deletion(-) diff --git a/extensions/googlechat/src/accounts.ts b/extensions/googlechat/src/accounts.ts index 62a4e967258..a729c5302bd 100644 --- a/extensions/googlechat/src/accounts.ts +++ b/extensions/googlechat/src/accounts.ts @@ -130,7 +130,9 @@ export function resolveGoogleChatAccount(params: { cfg: OpenClawConfig; accountId?: string | null; }): ResolvedGoogleChatAccount { - const accountId = normalizeAccountId(params.accountId); + const accountId = normalizeAccountId( + params.accountId ?? params.cfg.channels?.["googlechat"]?.defaultAccount, + ); const baseEnabled = params.cfg.channels?.["googlechat"]?.enabled !== false; const merged = mergeGoogleChatAccountConfig(params.cfg, accountId); const accountEnabled = merged.enabled !== false; diff --git a/extensions/googlechat/src/setup.test.ts b/extensions/googlechat/src/setup.test.ts index 5d0a4c18d8b..6c7c6cdbc85 100644 --- a/extensions/googlechat/src/setup.test.ts +++ b/extensions/googlechat/src/setup.test.ts @@ -489,4 +489,24 @@ describe("resolveGoogleChatAccount", () => { expect(resolved.config.dangerouslyAllowNameMatching).toBeUndefined(); expect(resolved.config.audienceType).toBe("app-url"); }); + + it("uses configured defaultAccount when accountId is omitted", () => { + const cfg: OpenClawConfig = { + channels: { + googlechat: { + defaultAccount: "alerts", + accounts: { + alerts: { + serviceAccountFile: "/tmp/alerts-sa.json", + }, + }, + }, + }, + }; + + const resolved = resolveGoogleChatAccount({ cfg }); + expect(resolved.accountId).toBe("alerts"); + expect(resolved.credentialSource).toBe("file"); + expect(resolved.credentialsFile).toBe("/tmp/alerts-sa.json"); + }); });