fix: use account-aware config paths in resolveDmPolicy and resolveAllowFrom

This commit is contained in:
Monty Taylor
2026-02-13 08:03:59 -06:00
parent 19ab52b05b
commit 70de9dd2d8

View File

@@ -145,19 +145,26 @@ export const matrixPlugin: ChannelPlugin<ResolvedMatrixAccount> = {
configured: account.configured, configured: account.configured,
baseUrl: account.homeserver, baseUrl: account.homeserver,
}), }),
resolveAllowFrom: ({ cfg }) => resolveAllowFrom: ({ account }) =>
((cfg as CoreConfig).channels?.matrix?.dm?.allowFrom ?? []).map((entry) => String(entry)), (account.config.dm?.allowFrom ?? []).map((entry) => String(entry)),
formatAllowFrom: ({ allowFrom }) => normalizeMatrixAllowList(allowFrom), formatAllowFrom: ({ allowFrom }) => normalizeMatrixAllowList(allowFrom),
}, },
security: { security: {
resolveDmPolicy: ({ account }) => ({ resolveDmPolicy: ({ account }) => {
policy: account.config.dm?.policy ?? "pairing", const accountId = account.accountId;
allowFrom: account.config.dm?.allowFrom ?? [], const prefix =
policyPath: "channels.matrix.dm.policy", accountId && accountId !== "default"
allowFromPath: "channels.matrix.dm.allowFrom", ? `channels.matrix.accounts.${accountId}.dm`
approveHint: formatPairingApproveHint("matrix"), : "channels.matrix.dm";
normalizeEntry: (raw) => normalizeMatrixUserId(raw), return {
}), policy: account.config.dm?.policy ?? "pairing",
allowFrom: account.config.dm?.allowFrom ?? [],
policyPath: `${prefix}.policy`,
allowFromPath: `${prefix}.allowFrom`,
approveHint: formatPairingApproveHint("matrix"),
normalizeEntry: (raw) => normalizeMatrixUserId(raw),
};
},
collectWarnings: ({ account, cfg }) => { collectWarnings: ({ account, cfg }) => {
const defaultGroupPolicy = (cfg as CoreConfig).channels?.defaults?.groupPolicy; const defaultGroupPolicy = (cfg as CoreConfig).channels?.defaults?.groupPolicy;
const groupPolicy = account.config.groupPolicy ?? defaultGroupPolicy ?? "allowlist"; const groupPolicy = account.config.groupPolicy ?? defaultGroupPolicy ?? "allowlist";