From 5881e50638cbad96e54e357cbcaabf67b2ab32a7 Mon Sep 17 00:00:00 2001 From: Daanvdplas Date: Tue, 31 Mar 2026 17:55:41 +0200 Subject: [PATCH] Matrix: clarify room merge path --- extensions/matrix/src/matrix/accounts.ts | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/extensions/matrix/src/matrix/accounts.ts b/extensions/matrix/src/matrix/accounts.ts index 4c18b66775f..445b9403901 100644 --- a/extensions/matrix/src/matrix/accounts.ts +++ b/extensions/matrix/src/matrix/accounts.ts @@ -184,8 +184,9 @@ export function resolveMatrixAccountConfig(params: { }): MatrixConfig { const env = params.env ?? process.env; const accountId = normalizeAccountId(params.accountId); + const base = resolveMatrixBaseConfig(params.cfg); const merged = resolveMergedAccountConfig({ - channelConfig: resolveMatrixBaseConfig(params.cfg), + channelConfig: base, accounts: params.cfg.channels?.matrix?.accounts as | Record> | undefined, @@ -193,7 +194,6 @@ export function resolveMatrixAccountConfig(params: { normalizeAccountId, nestedObjectKeys: ["dm", "actions"], }); - const base = resolveMatrixBaseConfig(params.cfg); const accountConfig = findMatrixAccountConfig(params.cfg, accountId); const isMultiAccount = resolveConfiguredMatrixAccountIds(params.cfg, env).length > 1; const groups = mergeMatrixRoomEntries( @@ -212,6 +212,7 @@ export function resolveMatrixAccountConfig(params: { }), accountConfig?.rooms, ); + // Room maps need custom scoping, so keep the generic merge for all other fields. const { groups: _ignoredGroups, rooms: _ignoredRooms, ...rest } = merged; return { ...rest,