refactor: unify dm policy store reads and reason codes

This commit is contained in:
Peter Steinberger
2026-02-26 17:47:51 +01:00
parent 53e30475e2
commit cd80c7e7ff
21 changed files with 259 additions and 92 deletions

View File

@@ -7,6 +7,7 @@ import {
resolveControlCommandGate,
resolveDefaultGroupPolicy,
isDangerousNameMatchingEnabled,
readStoreAllowFromForDmPolicy,
resolveMentionGating,
formatAllowlistMatchMeta,
resolveEffectiveAllowFromLists,
@@ -128,10 +129,11 @@ export function createMSTeamsMessageHandler(deps: MSTeamsMessageHandlerDeps) {
const senderName = from.name ?? from.id;
const senderId = from.aadObjectId ?? from.id;
const dmPolicy = msteamsCfg?.dmPolicy ?? "pairing";
const storedAllowFrom =
dmPolicy === "allowlist"
? []
: await core.channel.pairing.readAllowFromStore("msteams").catch(() => []);
const storedAllowFrom = await readStoreAllowFromForDmPolicy({
provider: "msteams",
dmPolicy,
readStore: (provider) => core.channel.pairing.readAllowFromStore(provider),
});
const useAccessGroups = cfg.commands?.useAccessGroups !== false;
// Check DM policy for direct messages.