All files / dingtalk-openclaw-connector/src policy.ts

0% Statements 0/10
100% Branches 1/1
100% Functions 1/1
0% Lines 0/10

Press n or j to go to the next uncovered block, b, p or k for the previous block.

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20                                       
import type { ToolPolicy } from "openclaw/plugin-sdk";
import type { ResolvedDingtalkAccount } from "./types/index.ts";
 
export function resolveDingtalkGroupToolPolicy(params: {
  account: ResolvedDingtalkAccount;
  groupId: string;
}): ToolPolicy | undefined {
  const { account, groupId } = params;
  const dingtalkCfg = account.config;
 
  // Check group-specific policy first
  const groupConfig = dingtalkCfg?.groups?.[groupId];
  if (groupConfig?.tools) {
    return groupConfig.tools;
  }
 
  // Fall back to account-level default (allow all)
  return { allow: ["*"] };
}