mirror of
https://github.com/openclaw/openclaw.git
synced 2026-05-08 07:51:26 +00:00
fix(allowlist): canonicalize Slack/Discord allowFrom
This commit is contained in:
@@ -191,13 +191,16 @@ const DOCKS: Record<ChatChannelId, ChannelDock> = {
|
||||
blockStreamingCoalesceDefaults: { minChars: 1500, idleMs: 1000 },
|
||||
},
|
||||
elevated: {
|
||||
allowFromFallback: ({ cfg }) => cfg.channels?.discord?.dm?.allowFrom,
|
||||
allowFromFallback: ({ cfg }) =>
|
||||
cfg.channels?.discord?.allowFrom ?? cfg.channels?.discord?.dm?.allowFrom,
|
||||
},
|
||||
config: {
|
||||
resolveAllowFrom: ({ cfg, accountId }) =>
|
||||
(resolveDiscordAccount({ cfg, accountId }).config.dm?.allowFrom ?? []).map((entry) =>
|
||||
resolveAllowFrom: ({ cfg, accountId }) => {
|
||||
const account = resolveDiscordAccount({ cfg, accountId });
|
||||
return (account.config.allowFrom ?? account.config.dm?.allowFrom ?? []).map((entry) =>
|
||||
String(entry),
|
||||
),
|
||||
);
|
||||
},
|
||||
formatAllowFrom: ({ allowFrom }) => formatLower(allowFrom),
|
||||
},
|
||||
groups: {
|
||||
@@ -355,8 +358,12 @@ const DOCKS: Record<ChatChannelId, ChannelDock> = {
|
||||
blockStreamingCoalesceDefaults: { minChars: 1500, idleMs: 1000 },
|
||||
},
|
||||
config: {
|
||||
resolveAllowFrom: ({ cfg, accountId }) =>
|
||||
(resolveSlackAccount({ cfg, accountId }).dm?.allowFrom ?? []).map((entry) => String(entry)),
|
||||
resolveAllowFrom: ({ cfg, accountId }) => {
|
||||
const account = resolveSlackAccount({ cfg, accountId });
|
||||
return (account.config.allowFrom ?? account.dm?.allowFrom ?? []).map((entry) =>
|
||||
String(entry),
|
||||
);
|
||||
},
|
||||
formatAllowFrom: ({ allowFrom }) => formatLower(allowFrom),
|
||||
},
|
||||
groups: {
|
||||
|
||||
@@ -21,7 +21,7 @@ export async function listSlackDirectoryPeersFromConfig(
|
||||
const q = params.query?.trim().toLowerCase() || "";
|
||||
const ids = new Set<string>();
|
||||
|
||||
for (const entry of account.dm?.allowFrom ?? []) {
|
||||
for (const entry of account.config.allowFrom ?? account.dm?.allowFrom ?? []) {
|
||||
const raw = String(entry).trim();
|
||||
if (!raw || raw === "*") {
|
||||
continue;
|
||||
@@ -84,7 +84,7 @@ export async function listDiscordDirectoryPeersFromConfig(
|
||||
const q = params.query?.trim().toLowerCase() || "";
|
||||
const ids = new Set<string>();
|
||||
|
||||
for (const entry of account.config.dm?.allowFrom ?? []) {
|
||||
for (const entry of account.config.allowFrom ?? account.config.dm?.allowFrom ?? []) {
|
||||
const raw = String(entry).trim();
|
||||
if (!raw || raw === "*") {
|
||||
continue;
|
||||
|
||||
Reference in New Issue
Block a user