plugin-sensitive-filter-xr 0.1.21 → 0.1.23

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -29,7 +29,7 @@
29
29
  | Field | Type | Required | Default | Description |
30
30
  | --- | --- | --- | --- | --- |
31
31
  | `enabled` | `boolean` | No | `true` | Turn notification on/off. |
32
- | `groups` | `Array<{name?, webhookUrl}>` | Runtime-required for sending | `[]` | One or more WeCom group webhook targets. |
32
+ | `groups` | `Array<{webhookUrl}>` | Runtime-required for sending | `[]` | One or more WeCom group webhook targets. |
33
33
  | `timeoutMs` | `number` | No | `10000` | Per webhook request timeout (max `120000`). |
34
34
 
35
35
  ### Rule Mode (`mode=rule`)
@@ -1 +1 @@
1
- {"version":3,"file":"sensitiveFilter.d.ts","sourceRoot":"","sources":["../../src/lib/sensitiveFilter.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAa,oBAAoB,EAA8B,MAAM,kBAAkB,CAAA;AAGnG,OAAO,EACL,eAAe,EAGf,uBAAuB,EACvB,wBAAwB,EAEzB,MAAM,sBAAsB,CAAA;AAC7B,OAAO,EAML,qBAAqB,EAMtB,MAAM,YAAY,CAAA;AA67BnB,qBAEa,yBAA0B,YAAW,wBAAwB,CAAC,qBAAqB,CAAC;IAE/F,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAY;IAEvC,QAAQ,CAAC,IAAI,EAAE,oBAAoB,CAuQlC;IAEK,gBAAgB,CACpB,OAAO,EAAE,qBAAqB,EAC9B,OAAO,EAAE,uBAAuB,GAC/B,OAAO,CAAC,eAAe,CAAC;IAa3B,OAAO,CAAC,wBAAwB;IA6ThC,OAAO,CAAC,uBAAuB;CA0gBhC;AAED,YAAY,EAAE,qBAAqB,EAAE,CAAA"}
1
+ {"version":3,"file":"sensitiveFilter.d.ts","sourceRoot":"","sources":["../../src/lib/sensitiveFilter.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAa,oBAAoB,EAA8B,MAAM,kBAAkB,CAAA;AAGnG,OAAO,EACL,eAAe,EAGf,uBAAuB,EACvB,wBAAwB,EAEzB,MAAM,sBAAsB,CAAA;AAC7B,OAAO,EAML,qBAAqB,EAMtB,MAAM,YAAY,CAAA;AA47BnB,qBAEa,yBAA0B,YAAW,wBAAwB,CAAC,qBAAqB,CAAC;IAE/F,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAY;IAEvC,QAAQ,CAAC,IAAI,EAAE,oBAAoB,CAmQlC;IAEK,gBAAgB,CACpB,OAAO,EAAE,qBAAqB,EAC9B,OAAO,EAAE,uBAAuB,GAC/B,OAAO,CAAC,eAAe,CAAC;IAa3B,OAAO,CAAC,wBAAwB;IA2UhC,OAAO,CAAC,uBAAuB;CAwhBhC;AAED,YAAY,EAAE,qBAAqB,EAAE,CAAA"}
@@ -48,7 +48,6 @@ function resolveRuntimeWecomConfig(config) {
48
48
  continue;
49
49
  }
50
50
  groups.push({
51
- name: toNonEmptyString(item.name) ?? undefined,
52
51
  webhookUrl,
53
52
  });
54
53
  }
@@ -156,12 +155,14 @@ function buildMatchedNotificationMessage(input) {
156
155
  return reason;
157
156
  };
158
157
  const matched = input.records.filter((entry) => entry.matched);
158
+ const alertTime = new Date().toISOString();
159
159
  const lines = [
160
160
  '【敏感内容告警】',
161
161
  `节点:${input.nodeTitle || SENSITIVE_FILTER_MIDDLEWARE_NAME}`,
162
162
  `模式:${modeLabel}`,
163
163
  `处理结果:${finalActionLabel}`,
164
164
  `命中数量:${matched.length}`,
165
+ `告警时间:${alertTime}`,
165
166
  ];
166
167
  if (input.runtimeConfigurable?.thread_id) {
167
168
  lines.push(`会话ID:${input.runtimeConfigurable.thread_id}`);
@@ -657,9 +658,8 @@ async function dispatchWecomNotification(wecomConfig, message) {
657
658
  }
658
659
  }
659
660
  catch (error) {
660
- const target = group.name ? `${group.name}(${group.webhookUrl})` : group.webhookUrl;
661
661
  // Notify failure should not break model execution.
662
- console.warn(`[${SENSITIVE_FILTER_MIDDLEWARE_NAME}] Failed to send WeCom notification to ${target}: ${getErrorText(error)}`);
662
+ console.warn(`[${SENSITIVE_FILTER_MIDDLEWARE_NAME}] Failed to send WeCom notification to ${group.webhookUrl}: ${getErrorText(error)}`);
663
663
  }
664
664
  }
665
665
  }
@@ -951,10 +951,6 @@ let SensitiveFilterMiddleware = class SensitiveFilterMiddleware {
951
951
  items: {
952
952
  type: 'object',
953
953
  properties: {
954
- name: {
955
- type: 'string',
956
- title: { en_US: 'Group Name', zh_Hans: '群名称(可选)' },
957
- },
958
954
  webhookUrl: {
959
955
  type: 'string',
960
956
  title: { en_US: 'Webhook URL', zh_Hans: 'Webhook 地址' },
@@ -1248,17 +1244,25 @@ let SensitiveFilterMiddleware = class SensitiveFilterMiddleware {
1248
1244
  return replaceModelResponseText(response, rewrittenOutput);
1249
1245
  },
1250
1246
  afterAgent: async () => {
1251
- await persistAuditSnapshot();
1252
1247
  const matchedRecords = auditEntries.filter((entry) => entry.matched);
1253
- if (matchedRecords.length > 0) {
1254
- const notification = buildMatchedNotificationMessage({
1248
+ const notification = matchedRecords.length > 0
1249
+ ? buildMatchedNotificationMessage({
1255
1250
  mode: 'rule',
1256
1251
  nodeTitle: context.node.title ?? SENSITIVE_FILTER_MIDDLEWARE_NAME,
1257
1252
  finalAction,
1258
1253
  records: matchedRecords,
1259
1254
  runtimeConfigurable,
1260
- });
1261
- await dispatchWecomNotification(wecomConfig, notification);
1255
+ })
1256
+ : null;
1257
+ const [persistResult, notifyResult] = await Promise.allSettled([
1258
+ persistAuditSnapshot(),
1259
+ notification ? dispatchWecomNotification(wecomConfig, notification) : Promise.resolve(undefined),
1260
+ ]);
1261
+ if (persistResult.status === 'rejected') {
1262
+ console.warn(`[${SENSITIVE_FILTER_MIDDLEWARE_NAME}] Failed to persist audit snapshot: ${getErrorText(persistResult.reason)}`);
1263
+ }
1264
+ if (notifyResult.status === 'rejected') {
1265
+ console.warn(`[${SENSITIVE_FILTER_MIDDLEWARE_NAME}] Failed to dispatch WeCom notification: ${getErrorText(notifyResult.reason)}`);
1262
1266
  }
1263
1267
  return undefined;
1264
1268
  },
@@ -1678,17 +1682,25 @@ let SensitiveFilterMiddleware = class SensitiveFilterMiddleware {
1678
1682
  return replaceModelResponseText(response, toNonEmptyString(decision.replacementText) ?? llmConfig.rewriteFallbackText);
1679
1683
  },
1680
1684
  afterAgent: async () => {
1681
- await persistAuditSnapshot();
1682
1685
  const matchedRecords = auditEntries.filter((entry) => entry.matched);
1683
- if (matchedRecords.length > 0) {
1684
- const notification = buildMatchedNotificationMessage({
1686
+ const notification = matchedRecords.length > 0
1687
+ ? buildMatchedNotificationMessage({
1685
1688
  mode: 'llm',
1686
1689
  nodeTitle: context.node.title ?? SENSITIVE_FILTER_MIDDLEWARE_NAME,
1687
1690
  finalAction,
1688
1691
  records: matchedRecords,
1689
1692
  runtimeConfigurable,
1690
- });
1691
- await dispatchWecomNotification(wecomConfig, notification);
1693
+ })
1694
+ : null;
1695
+ const [persistResult, notifyResult] = await Promise.allSettled([
1696
+ persistAuditSnapshot(),
1697
+ notification ? dispatchWecomNotification(wecomConfig, notification) : Promise.resolve(undefined),
1698
+ ]);
1699
+ if (persistResult.status === 'rejected') {
1700
+ console.warn(`[${SENSITIVE_FILTER_MIDDLEWARE_NAME}] Failed to persist audit snapshot: ${getErrorText(persistResult.reason)}`);
1701
+ }
1702
+ if (notifyResult.status === 'rejected') {
1703
+ console.warn(`[${SENSITIVE_FILTER_MIDDLEWARE_NAME}] Failed to dispatch WeCom notification: ${getErrorText(notifyResult.reason)}`);
1692
1704
  }
1693
1705
  return undefined;
1694
1706
  },
@@ -40,7 +40,6 @@ export type LlmModeConfig = {
40
40
  };
41
41
  export type SensitiveFilterConfig = RuleModeConfig | LlmModeConfig;
42
42
  export type WecomNotifyGroup = {
43
- name?: string | null;
44
43
  webhookUrl?: string | null;
45
44
  };
46
45
  export type WecomNotifyConfig = {
@@ -94,27 +93,22 @@ export declare const sensitiveFilterConfigSchema: z.ZodUnion<[z.ZodObject<{
94
93
  wecom: z.ZodDefault<z.ZodNullable<z.ZodOptional<z.ZodObject<{
95
94
  enabled: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
96
95
  groups: z.ZodDefault<z.ZodOptional<z.ZodArray<z.ZodNullable<z.ZodObject<{
97
- name: z.ZodNullable<z.ZodOptional<z.ZodString>>;
98
96
  webhookUrl: z.ZodNullable<z.ZodOptional<z.ZodString>>;
99
97
  }, "strip", z.ZodTypeAny, {
100
- name?: string;
101
98
  webhookUrl?: string;
102
99
  }, {
103
- name?: string;
104
100
  webhookUrl?: string;
105
101
  }>>, "many">>>;
106
102
  timeoutMs: z.ZodNullable<z.ZodOptional<z.ZodNumber>>;
107
103
  }, "strip", z.ZodTypeAny, {
108
104
  enabled?: boolean;
109
105
  groups?: {
110
- name?: string;
111
106
  webhookUrl?: string;
112
107
  }[];
113
108
  timeoutMs?: number;
114
109
  }, {
115
110
  enabled?: boolean;
116
111
  groups?: {
117
- name?: string;
118
112
  webhookUrl?: string;
119
113
  }[];
120
114
  timeoutMs?: number;
@@ -137,7 +131,6 @@ export declare const sensitiveFilterConfigSchema: z.ZodUnion<[z.ZodObject<{
137
131
  wecom?: {
138
132
  enabled?: boolean;
139
133
  groups?: {
140
- name?: string;
141
134
  webhookUrl?: string;
142
135
  }[];
143
136
  timeoutMs?: number;
@@ -160,7 +153,6 @@ export declare const sensitiveFilterConfigSchema: z.ZodUnion<[z.ZodObject<{
160
153
  wecom?: {
161
154
  enabled?: boolean;
162
155
  groups?: {
163
- name?: string;
164
156
  webhookUrl?: string;
165
157
  }[];
166
158
  timeoutMs?: number;
@@ -206,27 +198,22 @@ export declare const sensitiveFilterConfigSchema: z.ZodUnion<[z.ZodObject<{
206
198
  wecom: z.ZodDefault<z.ZodNullable<z.ZodOptional<z.ZodObject<{
207
199
  enabled: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
208
200
  groups: z.ZodDefault<z.ZodOptional<z.ZodArray<z.ZodNullable<z.ZodObject<{
209
- name: z.ZodNullable<z.ZodOptional<z.ZodString>>;
210
201
  webhookUrl: z.ZodNullable<z.ZodOptional<z.ZodString>>;
211
202
  }, "strip", z.ZodTypeAny, {
212
- name?: string;
213
203
  webhookUrl?: string;
214
204
  }, {
215
- name?: string;
216
205
  webhookUrl?: string;
217
206
  }>>, "many">>>;
218
207
  timeoutMs: z.ZodNullable<z.ZodOptional<z.ZodNumber>>;
219
208
  }, "strip", z.ZodTypeAny, {
220
209
  enabled?: boolean;
221
210
  groups?: {
222
- name?: string;
223
211
  webhookUrl?: string;
224
212
  }[];
225
213
  timeoutMs?: number;
226
214
  }, {
227
215
  enabled?: boolean;
228
216
  groups?: {
229
- name?: string;
230
217
  webhookUrl?: string;
231
218
  }[];
232
219
  timeoutMs?: number;
@@ -243,7 +230,6 @@ export declare const sensitiveFilterConfigSchema: z.ZodUnion<[z.ZodObject<{
243
230
  wecom?: {
244
231
  enabled?: boolean;
245
232
  groups?: {
246
- name?: string;
247
233
  webhookUrl?: string;
248
234
  }[];
249
235
  timeoutMs?: number;
@@ -269,7 +255,6 @@ export declare const sensitiveFilterConfigSchema: z.ZodUnion<[z.ZodObject<{
269
255
  wecom?: {
270
256
  enabled?: boolean;
271
257
  groups?: {
272
- name?: string;
273
258
  webhookUrl?: string;
274
259
  }[];
275
260
  timeoutMs?: number;
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/lib/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/lib/types.ts"],"names":[],"mappings":"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"}
package/dist/lib/types.js CHANGED
@@ -26,7 +26,6 @@ const llmConfigSchema = z
26
26
  });
27
27
  const wecomNotifyGroupSchema = z
28
28
  .object({
29
- name: z.string().optional().nullable(),
30
29
  webhookUrl: z.string().optional().nullable(),
31
30
  })
32
31
  .nullable();
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "plugin-sensitive-filter-xr",
3
- "version": "0.1.21",
3
+ "version": "0.1.23",
4
4
  "author": {
5
5
  "name": "XpertAI",
6
6
  "url": "https://xpertai.cn"