@jesonliu/lark-claudecode-bridge 1.3.5 → 1.3.7

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.
Files changed (41) hide show
  1. package/README.md +14 -1
  2. package/assets/web/js/pages/plugins.js +91 -56
  3. package/config.example.yaml +36 -11
  4. package/dist/config.js +80 -13
  5. package/dist/config.js.map +1 -1
  6. package/dist/executor/claude-executor.d.ts +8 -1
  7. package/dist/executor/claude-executor.js +47 -5
  8. package/dist/executor/claude-executor.js.map +1 -1
  9. package/dist/executor/notify-server.js +1 -1
  10. package/dist/executor/notify-server.js.map +1 -1
  11. package/dist/executor/permission-gate.d.ts +31 -0
  12. package/dist/executor/permission-gate.js +49 -0
  13. package/dist/executor/permission-gate.js.map +1 -1
  14. package/dist/executor/plugin-manager.d.ts +2 -2
  15. package/dist/executor/plugin-manager.js +9 -3
  16. package/dist/executor/plugin-manager.js.map +1 -1
  17. package/dist/gateway/feishu-gateway.d.ts +23 -2
  18. package/dist/gateway/feishu-gateway.js +71 -6
  19. package/dist/gateway/feishu-gateway.js.map +1 -1
  20. package/dist/gateway/progress-card.d.ts +9 -3
  21. package/dist/gateway/progress-card.js +17 -4
  22. package/dist/gateway/progress-card.js.map +1 -1
  23. package/dist/index.d.ts +3 -0
  24. package/dist/index.js +81 -13
  25. package/dist/index.js.map +1 -1
  26. package/dist/notify-sop.d.ts +1 -1
  27. package/dist/notify-sop.js +3 -3
  28. package/dist/notify-sop.js.map +1 -1
  29. package/dist/security/audit.d.ts +43 -0
  30. package/dist/security/audit.js +46 -0
  31. package/dist/security/audit.js.map +1 -0
  32. package/dist/security/paths.d.ts +39 -0
  33. package/dist/security/paths.js +216 -0
  34. package/dist/security/paths.js.map +1 -0
  35. package/dist/security/redact.d.ts +59 -0
  36. package/dist/security/redact.js +151 -0
  37. package/dist/security/redact.js.map +1 -0
  38. package/dist/types.d.ts +29 -5
  39. package/dist/web/server.js +1 -1
  40. package/dist/web/server.js.map +1 -1
  41. package/package.json +1 -1
@@ -4,6 +4,14 @@ import { basename, join } from 'node:path';
4
4
  import { CONFIG_DIR } from '../config.js';
5
5
  import { buildImageCard, buildTextCard } from './card-builder.js';
6
6
  import { isImageFile } from '../util/file-types.js';
7
+ import { CANARY_ALERT_TEXT } from '../security/audit.js';
8
+ /**
9
+ * 文件外发黑名单(R3 出口红线的一部分):凭证/密钥类文件不问来源一律不进飞书消息——
10
+ * 正常协作永远不会把 .pem/.key/credentials/.env 发到聊天里,命中即拦截 + 审计。
11
+ * 二进制与图片内容无法正则脱敏,这里是文件通道唯一的硬拦截点(OS 沙箱落地前的已知边界)。
12
+ */
13
+ const DENIED_FILE_NAME_RE = /(^|[/\\])(credentials[^/\\]*|\.env(\.|$)|id_rsa[^/\\]*$)/i;
14
+ const DENIED_FILE_EXT = new Set(['.pem', '.key', '.enc', '.p12', '.pfx', '.keystore']);
7
15
  /**
8
16
  * 消息卡通道不支持的 cardkit 专属属性:im.message.create / im.message.patch 的卡片 JSON
9
17
  * 校验对它们报 230099/200621 "unknown property"(2026-09-19 真机实锤 multiline 与
@@ -243,6 +251,13 @@ export class FeishuGateway {
243
251
  * 对象,getter 每次发卡现读 → 热生效)。sendText/sendImage 的文本卡与图片卡都消费它,
244
252
  * 进度卡/长回复卡由 wiring 直接传参(同一 config 源)。缺省 default 与旧行为一致 */
245
253
  cardWidth;
254
+ /** R3 出站脱敏器(wiring 注入,按 config.security 现取 getter 形态 → 热生效);缺省不脱敏(测试/旧 mock) */
255
+ redactor;
256
+ /** 安全事件回调(脱敏/金丝雀/文件拦截 → 审计落盘) */
257
+ onSecurityEvent;
258
+ // 金丝雀告警节流:同一聊天 5 分钟最多告警一次(持续穿透时不刷屏,审计全量可查)
259
+ canaryAlertAt = new Map();
260
+ static CANARY_ALERT_INTERVAL_MS = 5 * 60_000;
246
261
  // 入站消息去重:飞书 WS 长连接 at-least-once 投递,重连窗口内同一消息可能重投——
247
262
  // 不去重会导致整个任务跑两遍(两张进度卡 + 两条结果)。Map 迭代序即插入序,容量超限删最旧。
248
263
  seenMessageIds = new Map();
@@ -258,9 +273,43 @@ export class FeishuGateway {
258
273
  this.strictGroupMention = deps.strictGroupMention ?? false;
259
274
  this.inboxDir = deps.inboxDir ?? join(CONFIG_DIR, 'inbox');
260
275
  this.cardWidth = deps.cardWidth ?? (() => 'default');
276
+ this.redactor = deps.redactor;
277
+ this.onSecurityEvent = deps.onSecurityEvent;
261
278
  const domain = cfg.domain === 'lark' ? this.sdk.Domain.Lark : this.sdk.Domain.Feishu;
262
279
  this.client = new this.sdk.Client({ appId: cfg.appId, appSecret: cfg.appSecret, domain });
263
280
  }
281
+ /** 出站卡片深度脱敏(R3 单点):审计事件在此统一上报;金丝雀走 chatId 可得的告警通道 */
282
+ sanitizeCard(chatId, card) {
283
+ const r = this.sanitizeValue(card);
284
+ if (r.canary)
285
+ this.alertCanary(chatId);
286
+ return r.value;
287
+ }
288
+ /** 无 chatId 出口的脱敏(cardkit 实体全量替换):事件照常审计,告警退化为日志 */
289
+ sanitizeValue(card) {
290
+ const redactor = this.redactor?.();
291
+ if (!redactor)
292
+ return { value: card, canary: false };
293
+ const r = redactor.deep(card);
294
+ if (r.hits.length)
295
+ this.onSecurityEvent?.({ kind: 'redact', ruleIds: [...new Set(r.hits)], source: 'card' });
296
+ if (r.canary) {
297
+ this.onSecurityEvent?.({ kind: 'canary', source: 'card' });
298
+ this.log.error('[security] 🚨 金丝雀命中:敏感标记出现在对外卡片中,已脱敏并告警(无 chatId,仅审计+日志)');
299
+ }
300
+ return { value: r.value, canary: r.canary };
301
+ }
302
+ /** 金丝雀命中:审计 + 控制台 + 向当前聊天发固定告警模板(节流;告警文本无敏感内容,无递归风险) */
303
+ alertCanary(chatId) {
304
+ this.onSecurityEvent?.({ kind: 'canary', source: 'card' });
305
+ this.log.error('[security] 🚨 金丝雀命中:敏感标记出现在对外卡片中,已脱敏并告警');
306
+ const now = Date.now();
307
+ const last = this.canaryAlertAt.get(chatId) ?? 0;
308
+ if (now - last < FeishuGateway.CANARY_ALERT_INTERVAL_MS)
309
+ return;
310
+ this.canaryAlertAt.set(chatId, now);
311
+ void this.sendText(chatId, CANARY_ALERT_TEXT).catch(() => { });
312
+ }
264
313
  /**
265
314
  * 拉取机器人 open_id:群聊 @检测的精确匹配依据。
266
315
  * SDK 1.73.0 未封装「获取机器人信息」接口(bot 命名空间仅 v4.bot.search),
@@ -480,11 +529,13 @@ export class FeishuGateway {
480
529
  // best effort:关闭失败不阻断其余连接的关闭
481
530
  }
482
531
  }
483
- /** 发送卡片消息,返回 message_id(消息卡通道:入口剥离 cardkit 专属属性,见 strip 函数注释) */
532
+ /** 发送卡片消息,返回 message_id(消息卡通道:入口剥离 cardkit 专属属性,见 strip 函数注释)。
533
+ * R3:先经出站深度脱敏——文本卡/进度卡/结果卡/diff 卡/notify 卡全部走此口 */
484
534
  async sendCard(chatId, card) {
535
+ const safe = this.sanitizeCard(chatId, card);
485
536
  const res = await this.client.im.message.create({
486
537
  params: { receive_id_type: 'chat_id' },
487
- data: { receive_id: chatId, msg_type: 'interactive', content: JSON.stringify(stripMessageChannelUnsupportedProps(card)) },
538
+ data: { receive_id: chatId, msg_type: 'interactive', content: JSON.stringify(stripMessageChannelUnsupportedProps(safe)) },
488
539
  });
489
540
  if (!res.data?.message_id)
490
541
  throw new Error(`发送卡片失败: ${JSON.stringify(res)}`);
@@ -494,9 +545,12 @@ export class FeishuGateway {
494
545
  async sendText(chatId, markdown) {
495
546
  return this.sendCard(chatId, buildTextCard(markdown, this.cardWidth()));
496
547
  }
497
- /** 更新已发送卡片(流式进度刷新;消息卡通道:入口剥离 cardkit 专属属性) */
548
+ /** 更新已发送卡片(流式进度刷新;消息卡通道:入口剥离 cardkit 专属属性)。
549
+ * R3:流式正文同样出站,先深度脱敏(chatId 不可得 → 告警通道退化为仅审计+日志,
550
+ * 流式块的金丝雀告警由 wiring 在 finalText/流文本层覆盖) */
498
551
  async updateCard(messageId, card) {
499
- await this.client.im.message.patch({ path: { message_id: messageId }, data: { content: JSON.stringify(stripMessageChannelUnsupportedProps(card)) } });
552
+ const safe = this.sanitizeValue(card);
553
+ await this.client.im.message.patch({ path: { message_id: messageId }, data: { content: JSON.stringify(stripMessageChannelUnsupportedProps(safe.value)) } });
500
554
  }
501
555
  /**
502
556
  * 创建卡片实体并发送(cardkit 实体模式):实体卡片支持 batch_update 局部更新——
@@ -505,9 +559,10 @@ export class FeishuGateway {
505
559
  * 调用方(ProgressCard.start)捕获失败后自动降级普通卡片 + 整卡 PATCH。
506
560
  */
507
561
  async sendCardEntity(chatId, card) {
562
+ const safe = this.sanitizeCard(chatId, card);
508
563
  const create = await this.client.request({
509
564
  method: 'POST', url: '/open-apis/cardkit/v1/cards',
510
- data: { type: 'card_json', data: JSON.stringify(card) },
565
+ data: { type: 'card_json', data: JSON.stringify(safe) },
511
566
  });
512
567
  const cardId = create.data?.card_id;
513
568
  if (create.code !== 0 || !cardId)
@@ -535,9 +590,10 @@ export class FeishuGateway {
535
590
  * 发创建式字段会被飞书直接 400(card is required),所有结构变化(confirm/plan/
536
591
  * question 区、终态)都渲染不上屏,且结构签名不变回来前连计时局部更新也一并停摆 */
537
592
  async replaceCardEntity(cardId, sequence, card) {
593
+ const safe = this.sanitizeValue(card);
538
594
  const res = await this.client.request({
539
595
  method: 'PUT', url: `/open-apis/cardkit/v1/cards/${cardId}`,
540
- data: { card: { type: 'card_json', data: JSON.stringify(card) }, sequence },
596
+ data: { card: { type: 'card_json', data: JSON.stringify(safe.value) }, sequence },
541
597
  });
542
598
  if (res.code !== 0)
543
599
  throw new Error(`卡片全量更新失败: ${JSON.stringify(res)}`);
@@ -583,6 +639,15 @@ export class FeishuGateway {
583
639
  * 不校验会静默 resolve,用户收不到文件且无任何报错。
584
640
  */
585
641
  async uploadAndSendFile(chatId, filePath) {
642
+ // R3 文件出口红线:凭证/密钥类文件名一律不进飞书(模型 send_file、用户点名取文件、
643
+ // 计划文件发送全部经此口)。命中即抛错 + 审计——调用方(notify 工具/取文件通道)会把
644
+ // 错误消息回给模型或用户,文件本体不出进程
645
+ const name = basename(filePath);
646
+ if (DENIED_FILE_NAME_RE.test(name) || DENIED_FILE_EXT.has(name.slice(name.lastIndexOf('.')).toLowerCase())) {
647
+ this.onSecurityEvent?.({ kind: 'file-deny', path: filePath });
648
+ this.log.error(`[security] 已拦截凭证类文件外发:${name}`);
649
+ throw new Error('⛔ 没有权限发送该文件(安全红线)');
650
+ }
586
651
  if (isImageFile(filePath)) {
587
652
  const up = await this.client.im.image.create({
588
653
  data: { image_type: 'message', image: createReadStream(filePath) },
@@ -1 +1 @@
1
- {"version":3,"file":"feishu-gateway.js","sourceRoot":"","sources":["../../src/gateway/feishu-gateway.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"feishu-gateway.js","sourceRoot":"","sources":["../../src/gateway/feishu-gateway.ts"],"names":[],"mappings":"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"}
@@ -57,11 +57,17 @@ export declare class ProgressCard {
57
57
  toolStart(name: string, summary: string): void;
58
58
  toolResult(name: string, ok: boolean, note?: string): void;
59
59
  /**
60
- * 首个执行事件(流式文本/工具调用)到达:初始「已接收,启动中…」切为「正在执行…」。
61
- * 幂等且仅在状态行仍是初始文案时改写——CLI status 心跳(🌐 等待模型响应等)若先到
62
- * 则不覆盖;解决长任务期间状态行一直停留在"启动中"与实际执行进度不符的问题
60
+ * 首个执行事件(流式增量/工具调用)到达:启动阶段文案(已接收/会话已建立)切为「正在执行…」。
61
+ * 幂等且仅在状态行仍处于启动阶段(INITIAL/BOOT)时改写——CLI status 心跳(🌐 等待模型响应等)
62
+ * 若先到则不覆盖;解决长任务期间状态行一直停留在"启动中"与实际执行进度不符的问题
63
63
  */
64
64
  markStarted(): void;
65
+ /**
66
+ * system/init 到达(CLI 进程已起、会话已建立):「已接收,启动中…」切为「会话已建立」,
67
+ * 冷启动期间(加载配置/插件/MCP server、resume 回放,常见数十秒)不再黑盒。幂等且仅在
68
+ * 初始文案时生效——CLI status 心跳若先到则不倒退
69
+ */
70
+ markSessionReady(): void;
65
71
  setStatus(status: string): void;
66
72
  /**
67
73
  * 挂起/清除内嵌工具确认:非 undefined 时卡片底部渲染确认按钮区并收敛正文,
@@ -1,6 +1,9 @@
1
1
  import { buildProgressCard, buildPartialUpdateActions, buildQaButtonActions } from './card-builder.js';
2
2
  /** 进度卡初始文案:markStarted 据此识别「尚未进入执行阶段」——首个执行事件到达时切为执行中 */
3
3
  const INITIAL_STATUS = '🚀 已接收,启动中…';
4
+ /** init 到达后的启动阶段文案(CLI 进程已起、会话已建,仍在加载上下文/工具):markSessionReady
5
+ * 切入此态,markStarted 同样允许从此态接管——冷启动大头发生在 init 之前,先让用户看到进程已建立 */
6
+ const BOOT_STATUS = '🔌 会话已建立,加载上下文与工具中…';
4
7
  /** 单次卡片更新请求超时:飞书 SDK 的 axios 无超时(timeout=0),请求被网络黑洞时
5
8
  * flush 串行链会无限期挂起(生产实测单次挂 7.4 分钟)——挂起期间计时/交互区全停,
6
9
  * 与任务卡死无从区分。到点按失败处理(seq 不推进)下轮重试;若超时请求实际已在
@@ -102,15 +105,25 @@ export class ProgressCard {
102
105
  this.lastActivityAt = Date.now();
103
106
  }
104
107
  /**
105
- * 首个执行事件(流式文本/工具调用)到达:初始「已接收,启动中…」切为「正在执行…」。
106
- * 幂等且仅在状态行仍是初始文案时改写——CLI status 心跳(🌐 等待模型响应等)若先到
107
- * 则不覆盖;解决长任务期间状态行一直停留在"启动中"与实际执行进度不符的问题
108
+ * 首个执行事件(流式增量/工具调用)到达:启动阶段文案(已接收/会话已建立)切为「正在执行…」。
109
+ * 幂等且仅在状态行仍处于启动阶段(INITIAL/BOOT)时改写——CLI status 心跳(🌐 等待模型响应等)
110
+ * 若先到则不覆盖;解决长任务期间状态行一直停留在"启动中"与实际执行进度不符的问题
108
111
  */
109
112
  markStarted() {
110
- if (this.done || this.state.status !== INITIAL_STATUS)
113
+ if (this.done || (this.state.status !== INITIAL_STATUS && this.state.status !== BOOT_STATUS))
111
114
  return;
112
115
  this.setStatus('🔄 正在执行…');
113
116
  }
117
+ /**
118
+ * system/init 到达(CLI 进程已起、会话已建立):「已接收,启动中…」切为「会话已建立」,
119
+ * 冷启动期间(加载配置/插件/MCP server、resume 回放,常见数十秒)不再黑盒。幂等且仅在
120
+ * 初始文案时生效——CLI status 心跳若先到则不倒退
121
+ */
122
+ markSessionReady() {
123
+ if (this.done || this.state.status !== INITIAL_STATUS)
124
+ return;
125
+ this.setStatus(BOOT_STATUS);
126
+ }
114
127
  setStatus(status) {
115
128
  if (this.done)
116
129
  return;
@@ -1 +1 @@
1
- {"version":3,"file":"progress-card.js","sourceRoot":"","sources":["../../src/gateway/progress-card.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,yBAAyB,EAAE,oBAAoB,EAAsB,MAAM,mBAAmB,CAAC;AAkB3H,yDAAyD;AACzD,MAAM,cAAc,GAAG,aAAa,CAAC;AACrC;;;gCAGgC;AAChC,MAAM,iBAAiB,GAAG,MAAM,CAAC;AAEjC,kDAAkD;AAClD,SAAS,WAAW,CAAI,CAAa,EAAE,EAAU;IAC/C,OAAO,IAAI,OAAO,CAAI,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;QACxC,MAAM,KAAK,GAAG,UAAU,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,IAAI,KAAK,CAAC,UAAU,EAAE,mBAAmB,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;QACvF,KAAK,CAAC,KAAK,EAAE,CAAC;QACd,CAAC,CAAC,IAAI,CACJ,CAAC,CAAC,EAAE,EAAE,GAAG,YAAY,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAC3C,CAAC,CAAC,EAAE,EAAE,GAAG,YAAY,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAC3C,CAAC;IACJ,CAAC,CAAC,CAAC;AACL,CAAC;AAED,MAAM,OAAO,YAAY;IA8Bb,MAAM;IAEN,IAAI;IA/BN,SAAS,CAAU;IAC3B,8DAA8D;IACtD,MAAM,CAAU;IACxB,sDAAsD;IAC9C,GAAG,GAAG,CAAC,CAAC;IAChB,qDAAqD;IAC7C,mBAAmB,GAAG,CAAC,CAAC;IAChC;kEAC8D;IACtD,aAAa,GAAG,EAAE,CAAC;IAC3B;;wDAEoD;IAC5C,cAAc,GAAG,KAAK,CAAC;IAC/B,sDAAsD;IAC9C,SAAS,GAAG,KAAK,CAAC;IAClB,KAAK,CAAgB;IACrB,UAAU,CAAkB;IAC5B,cAAc,CAAkB;IAChC,cAAc,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IAC5B,IAAI,GAAG,KAAK,CAAC;IACrB,oDAAoD;IACpD,2CAA2C;IAC3C,iCAAiC;IACzB,UAAU,GAAkB,OAAO,CAAC,OAAO,EAAE,CAAC;IAC9C,KAAK,GAAG,KAAK,CAAC;IACd,QAAQ,GAAG,KAAK,CAAC;IAEzB,YACU,MAAkB,EAC1B,KAAa,EACL,IAAI,GAAyH,EAAE;sBAF/H,MAAM;oBAEN,IAAI;QAEZ,IAAI,CAAC,KAAK,GAAG,EAAE,KAAK,EAAE,MAAM,EAAE,cAAc,EAAE,QAAQ,EAAE,EAAE,EAAE,SAAS,EAAE,IAAI,CAAC,GAAG,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC;IAClG,CAAC;IAED,KAAK,CAAC,KAAK;QACT,MAAM,OAAO,GAAG,iBAAiB,CAAC,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,IAAI,CAAC,aAAa,IAAI,SAAS,CAAC,CAAC;QACpF,sCAAsC;QACtC,6DAA6D;QAC7D,IAAI,IAAI,CAAC,MAAM,CAAC,cAAc,EAAE,CAAC;YAC/B,IAAI,CAAC;gBACH,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC;gBACxE,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;gBAC3B,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;YACvB,CAAC;YAAC,OAAO,CAAC,EAAE,CAAC;gBACX,OAAO,CAAC,IAAI,CAAC,6GAA6G,EAAE,CAAC,YAAY,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;YAClK,CAAC;QACH,CAAC;QACD,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,CAAC;YACpB,IAAI,CAAC,SAAS,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QACvD,CAAC;QACD,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,YAAY,EAAE,CAAC;QACzC,IAAI,CAAC,cAAc,GAAG,KAAK,CAAC;QAC5B,gEAAgE;QAChE,8BAA8B;QAC9B,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,eAAe,IAAI,IAAI,CAAC;QACnD,IAAI,CAAC,UAAU,GAAG,WAAW,CAAC,GAAG,EAAE,CAAC,KAAK,IAAI,CAAC,KAAK,EAAE,EAAE,QAAQ,CAAC,CAAC,KAAK,EAAE,CAAC;QACzE,IAAI,CAAC,cAAc,GAAG,WAAW,CAAC,GAAG,EAAE;YACrC,IAAI,IAAI,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,cAAc,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,eAAe,IAAI,MAAM,CAAC,EAAE,CAAC;gBAC9E,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC,8BAA8B;gBAChE,KAAK,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC,kBAAkB;YACvC,CAAC;QACH,CAAC,EAAE,IAAI,CAAC,CAAC,KAAK,EAAE,CAAC;IACnB,CAAC;IAED;;2CAEuC;IACvC,UAAU,CAAC,MAAc;QACvB,IAAI,IAAI,CAAC,IAAI;YAAE,OAAO;QACtB,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IACnC,CAAC;IAED,SAAS,CAAC,IAAY,EAAE,OAAe;QACrC,IAAI,IAAI,CAAC,IAAI;YAAE,OAAO;QACtB,IAAI,CAAC,KAAK,CAAC,QAAQ,GAAG,GAAG,IAAI,KAAK,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,CAAC;QAC1D,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QACjC,KAAK,IAAI,CAAC,KAAK,EAAE,CAAC;IACpB,CAAC;IAED,UAAU,CAAC,IAAY,EAAE,EAAW,EAAE,IAAa;QACjD,IAAI,IAAI,CAAC,IAAI;YAAE,OAAO;QACtB,4CAA4C;QAC5C,IAAI,CAAC,KAAK,CAAC,QAAQ,GAAG,IAAI,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,IAAI,IAAI,MAAM,IAAI,EAAE,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,IAAI,IAAI,EAAE,CAAC;QACjG,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IACnC,CAAC;IAED;;;;OAIG;IACH,WAAW;QACT,IAAI,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,KAAK,CAAC,MAAM,KAAK,cAAc;YAAE,OAAO;QAC9D,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC;IAC7B,CAAC;IAED,SAAS,CAAC,MAAc;QACtB,IAAI,IAAI,CAAC,IAAI;YAAE,OAAO;QACtB,IAAI,CAAC,KAAK,CAAC,MAAM,GAAG,MAAM,CAAC;QAC3B,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QACjC,KAAK,IAAI,CAAC,KAAK,EAAE,CAAC;IACpB,CAAC;IAED;;;;OAIG;IACH,UAAU,CAAC,GAAoC;QAC7C,IAAI,IAAI,CAAC,IAAI;YAAE,OAAO;QACtB,IAAI,CAAC,KAAK,CAAC,OAAO,GAAG,GAAG,CAAC;QACzB,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QACjC,KAAK,IAAI,CAAC,KAAK,EAAE,CAAC;IACpB,CAAC;IAED;;;OAGG;IACH,OAAO,CAAC,GAA8D;QACpE,IAAI,IAAI,CAAC,IAAI;YAAE,OAAO;QACtB,IAAI,CAAC,KAAK,CAAC,IAAI,GAAG,GAAG,CAAC;QACtB,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QACjC,KAAK,IAAI,CAAC,KAAK,EAAE,CAAC;IACpB,CAAC;IAED;;;OAGG;IACH,WAAW,CAAC,GAAkE;QAC5E,IAAI,IAAI,CAAC,IAAI;YAAE,OAAO;QACtB,IAAI,CAAC,KAAK,CAAC,QAAQ,GAAG,GAAG,CAAC;QAC1B,6CAA6C;QAC7C,IAAI,CAAC,GAAG;YAAE,IAAI,CAAC,cAAc,GAAG,KAAK,CAAC;QACtC,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QACjC,KAAK,IAAI,CAAC,KAAK,EAAE,CAAC;IACpB,CAAC;IAED;2CACuC;IACvC,iBAAiB,CAAC,MAAc;QAC9B,OAAO,IAAI,CAAC,KAAK,CAAC,QAAQ,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC;IAC9C,CAAC;IAED,mEAAmE;IACnE,UAAU;QACR,OAAO;YACL,MAAM,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,SAAS;YAClC,UAAU,EAAE,IAAI,CAAC,KAAK,CAAC,QAAQ,EAAE,SAAS;SAC3C,CAAC;IACJ,CAAC;IAED;;;OAGG;IACH,oBAAoB,CAAC,MAAc,EAAE,MAAc,EAAE,WAAoB;QACvE,IAAI,IAAI,CAAC,IAAI,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ;YAAE,OAAO;QAC9C,MAAM,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;QAChD,IAAI,CAAC,CAAC;YAAE,OAAO;QACf,IAAI,WAAW,EAAE,CAAC;YAChB,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;YAChD,MAAM,GAAG,GAAG,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,KAAK,SAAS,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;YAC3E,MAAM,CAAC,GAAG,GAAG,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;YAC9B,IAAI,CAAC,IAAI,CAAC,IAAI,GAAG,CAAC,MAAM,GAAG,CAAC;gBAAE,GAAG,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,oBAAoB;iBAC/D,IAAI,CAAC,GAAG,CAAC;gBAAE,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;YACjC,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,OAAO,CAAC,MAAM,CAAC,GAAG,GAAG,CAAC;QAC5C,CAAC;aAAM,CAAC;YACN,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,OAAO,CAAC,MAAM,CAAC,GAAG,MAAM,CAAC;QAC/C,CAAC;QACD,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC,CAAC,4CAA4C;QACxE,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QACjC,KAAK,IAAI,CAAC,KAAK,EAAE,CAAC;IACpB,CAAC;IAED,qCAAqC;IACrC,UAAU,CAAC,KAAwD;QACjE,IAAI,IAAI,CAAC,IAAI;YAAE,OAAO;QACtB,IAAI,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,KAAK,CAAC,EAAE,CAAC;YAAE,OAAO;QAC7D,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,GAAG,KAAK,EAAE,SAAS,EAAE,IAAI,CAAC,GAAG,EAAE,EAAE,MAAM,EAAE,SAAS,EAAE,CAAC,CAAC;QAC/E,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QACjC,KAAK,IAAI,CAAC,KAAK,EAAE,CAAC;IACpB,CAAC;IAED;;;OAGG;IACH,WAAW,CAAC,EAAU,EAAE,MAAqC,EAAE,OAAgB;QAC7E,IAAI,IAAI,CAAC,IAAI;YAAE,OAAO;QACtB,MAAM,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC;QACrD,IAAI,CAAC,EAAE,CAAC;YACN,CAAC,CAAC,MAAM,GAAG,MAAM,CAAC;YAClB,IAAI,OAAO;gBAAE,CAAC,CAAC,OAAO,GAAG,OAAO,CAAC;QACnC,CAAC;aAAM,CAAC;YACN,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,WAAW,EAAE,OAAO,EAAE,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,IAAI,CAAC,GAAG,EAAE,EAAE,MAAM,EAAE,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;QACzJ,CAAC;QACD,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QACjC,KAAK,IAAI,CAAC,KAAK,EAAE,CAAC;IACpB,CAAC;IAED;;;OAGG;IACH,KAAK,CAAC,MAAM,CAAC,OAAe,EAAE,WAAoB;QAChD,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,IAAI,CAAC,KAAK,CAAC,IAAI,GAAG,IAAI,CAAC;QACvB,aAAa,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;QAC/B,aAAa,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;QACnC,IAAI,CAAC,KAAK,CAAC,MAAM,GAAG,OAAO,CAAC;QAC5B,IAAI,CAAC,KAAK,CAAC,QAAQ,GAAG,EAAE,CAAC;QACzB,IAAI,CAAC,KAAK,CAAC,WAAW,GAAG,WAAW,CAAC;QACrC,mEAAmE;QACnE,IAAI,CAAC,KAAK,CAAC,OAAO,GAAG,SAAS,CAAC;QAC/B,IAAI,CAAC,KAAK,CAAC,IAAI,GAAG,SAAS,CAAC;QAC5B,IAAI,CAAC,KAAK,CAAC,QAAQ,GAAG,SAAS,CAAC;QAChC,MAAM,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC,oCAAoC;IAC1D,CAAC;IAED;;;;;;OAMG;IACH,KAAK,CAAC,YAAY;QAChB,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC;YAAC,IAAI,CAAC,SAAS,GAAG,KAAK,CAAC;YAAC,OAAO;QAAC,CAAC;QAClD,IAAI,CAAC,IAAI,CAAC,SAAS;YAAE,OAAO;QAC5B,yCAAyC;QACzC,8BAA8B;QAC9B,IAAI,IAAI,CAAC,eAAe,EAAE,EAAE,CAAC;YAAC,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC;YAAC,OAAO;QAAC,CAAC;QAC9D,MAAM,GAAG,GAAG,IAAI,CAAC,SAAS,CAAC;QAC3B,MAAM,SAAS,GAAG,IAAI,CAAC,MAAM,CAAC;QAC9B,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC,CAAC,kCAAkC;QAC9D,IAAI,CAAC,MAAM,GAAG,SAAS,CAAC;QACxB,IAAI,IAAI,CAAC,MAAM,CAAC,UAAU;YAAE,MAAM,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;QAC9E,KAAK,IAAI,OAAO,GAAG,CAAC,EAAE,OAAO,GAAG,CAAC,EAAE,OAAO,EAAE,EAAE,CAAC;YAC7C,IAAI,CAAC;gBACH,MAAM,KAAK,GAAG,iBAAiB,CAAC,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,IAAI,CAAC,aAAa,IAAI,SAAS,CAAC,CAAC;gBAClF,uCAAuC;gBACvC,IAAI,IAAI,CAAC,MAAM,CAAC,cAAc,IAAI,SAAS,EAAE,CAAC;oBAC5C,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC;oBACtE,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;oBAC3B,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;oBACrB,IAAI,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,6BAA6B;gBAC7C,CAAC;qBAAM,CAAC;oBACN,IAAI,CAAC,SAAS,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;gBACrD,CAAC;gBACD,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,YAAY,EAAE,CAAC;gBACzC,IAAI,CAAC,cAAc,GAAG,KAAK,CAAC,CAAC,cAAc;gBAC3C,KAAK,IAAI,CAAC,KAAK,EAAE,CAAC;gBAClB,OAAO;YACT,CAAC;YAAC,OAAO,CAAC,EAAE,CAAC;gBACX,IAAI,OAAO,KAAK,CAAC;oBAAE,MAAM,IAAI,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,UAAU,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC,kBAAkB;;oBAC9E,OAAO,CAAC,IAAI,CAAC,gCAAgC,EAAE,CAAC,YAAY,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;YAC1F,CAAC;QACH,CAAC;IACH,CAAC;IAED;;;;;;;;;;OAUG;IACK,KAAK;QACX,IAAI,CAAC,IAAI,CAAC,SAAS;YAAE,OAAO,OAAO,CAAC,OAAO,EAAE,CAAC;QAC9C,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;YAClB,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,CAAC,4BAA4B;YAC/C,OAAO,IAAI,CAAC,UAAU,CAAC;QACzB,CAAC;QACD,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC;QACrB,IAAI,CAAC,UAAU,GAAG,CAAC,KAAK,IAAI,EAAE;YAC5B,SAAS,CAAC;gBACR,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;gBACnB,MAAM,WAAW,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,qBAAqB;gBACvD,MAAM,SAAS,GAAG,IAAI,CAAC,IAAI,CAAC,eAAe,IAAI,iBAAiB,CAAC;gBACjE,8CAA8C;gBAC9C,iDAAiD;gBACjD,qDAAqD;gBACrD,IAAI,aAAa,GAAG,KAAK,CAAC;gBAC1B,IAAI,CAAC;oBACH,IAAI,IAAI,CAAC,MAAM,IAAI,IAAI,CAAC,MAAM,CAAC,iBAAiB,IAAI,IAAI,CAAC,MAAM,CAAC,WAAW,EAAE,CAAC;wBAC5E,MAAM,SAAS,GAAG,IAAI,CAAC,YAAY,EAAE,CAAC;wBACtC,IAAI,SAAS,KAAK,IAAI,CAAC,aAAa,EAAE,CAAC;4BACrC,qDAAqD;4BACrD,6CAA6C;4BAC7C,2CAA2C;4BAC3C,uCAAuC;4BACvC,qCAAqC;4BACrC,8CAA8C;4BAC9C,IAAI,IAAI,CAAC,eAAe,EAAE,IAAI,CAAC,IAAI,CAAC,cAAc;gCAAE,MAAM;4BAC1D,aAAa,GAAG,IAAI,CAAC,cAAc,CAAC;4BACpC,IAAI,CAAC,cAAc,GAAG,KAAK,CAAC,CAAC,mBAAmB;4BAChD,MAAM,OAAO,GAAG,IAAI,CAAC,eAAe,EAAE;gCACpC,CAAC,CAAC,oBAAoB,CAAC,IAAI,CAAC,KAAK,CAAC;gCAClC,CAAC,CAAC,yBAAyB,CAAC,IAAI,CAAC,KAAK,EAAE,aAAa,CAAC,CAAC;4BACzD,8CAA8C;4BAC9C,iCAAiC;4BACjC,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC;gCAAE,MAAM;4BAChC,MAAM,WAAW,CAAC,IAAI,CAAC,MAAM,CAAC,iBAAiB,CAAC,IAAI,CAAC,MAAM,EAAE,WAAW,EAAE,OAAO,CAAC,EAAE,SAAS,CAAC,CAAC;wBACjG,CAAC;6BAAM,CAAC;4BACN,0CAA0C;4BAC1C,gDAAgD;4BAChD,6CAA6C;4BAC7C,aAAa,GAAG,IAAI,CAAC,cAAc,CAAC;4BACpC,IAAI,CAAC,cAAc,GAAG,KAAK,CAAC;4BAC5B,MAAM,WAAW,CAAC,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,IAAI,CAAC,MAAM,EAAE,WAAW,EAAE,iBAAiB,CAAC,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,IAAI,CAAC,aAAa,IAAI,SAAS,CAAC,CAAC,EAAE,SAAS,CAAC,CAAC;4BACrJ,IAAI,CAAC,aAAa,GAAG,SAAS,CAAC;wBACjC,CAAC;oBACH,CAAC;yBAAM,CAAC;wBACN,wDAAwD;wBACxD,kDAAkD;wBAClD,uCAAuC;wBACvC,yCAAyC;wBACzC,MAAM,SAAS,GAAG,IAAI,CAAC,YAAY,EAAE,CAAC;wBACtC,IAAI,IAAI,CAAC,eAAe,EAAE,IAAI,SAAS,KAAK,IAAI,CAAC,aAAa;4BAAE,MAAM;wBACtE,MAAM,WAAW,CAAC,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,IAAI,CAAC,SAAU,EAAE,iBAAiB,CAAC,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,IAAI,CAAC,aAAa,IAAI,SAAS,CAAC,CAAC,EAAE,SAAS,CAAC,CAAC;wBAC3I,IAAI,CAAC,aAAa,GAAG,SAAS,CAAC;oBACjC,CAAC;oBACD,IAAI,CAAC,GAAG,GAAG,WAAW,CAAC,CAAC,WAAW;oBACnC,IAAI,CAAC,mBAAmB,GAAG,CAAC,CAAC,CAAC,cAAc;gBAC9C,CAAC;gBAAC,OAAO,CAAC,EAAE,CAAC;oBACX,+CAA+C;oBAC/C,IAAI,aAAa;wBAAE,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC;oBAC9C,6BAA6B;oBAC7B,oDAAoD;oBACpD,uDAAuD;oBACvD,kDAAkD;oBAClD,sBAAsB;oBACtB,yEAAyE;oBACzE,kEAAkE;oBAClE,oCAAoC;oBACpC,qDAAqD;oBACrD,kCAAkC;oBAClC,4EAA4E;oBAC5E,MAAM,IAAI,GAAG,sBAAsB,CAAC,CAAC,CAAC,CAAC;oBACvC,MAAM,MAAM,GAAG,eAAe,CAAC,CAAC,CAAC,CAAC;oBAClC,MAAM,MAAM,GAAG,IAAI,KAAK,QAAQ,IAAI,EAAE,IAAI,CAAC,mBAAmB,IAAI,CAAC,CAAC;oBACpE,IAAI,MAAM,EAAE,CAAC;wBACX,IAAI,CAAC,mBAAmB,GAAG,CAAC,CAAC;wBAC7B,OAAO,CAAC,IAAI,CAAC,wBAAwB,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,sBAAsB,CAAC,CAAC,CAAC,UAAU,SAAS,EACnG,CAAC,YAAY,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,EAAE,MAAM,IAAI,EAAE,CAAC,CAAC;wBACpD,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC;4BACd,+CAA+C;4BAC/C,IAAI,CAAC;gCACH,MAAM,WAAW,CAAC,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,IAAI,CAAC,SAAU,EAAE,iBAAiB,CAAC,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,IAAI,CAAC,aAAa,IAAI,SAAS,CAAC,CAAC,EAAE,SAAS,CAAC,CAAC;gCAC3I,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,YAAY,EAAE,CAAC;4BAC3C,CAAC;4BAAC,MAAM,CAAC,CAAC,UAAU,CAAC,CAAC;wBACxB,CAAC;6BAAM,CAAC;4BACN,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,CAAC,oCAAoC;4BAC3D,MAAM,CAAC,8CAA8C;wBACvD,CAAC;oBACH,CAAC;yBAAM,CAAC;wBACN,OAAO,CAAC,IAAI,CAAC,2CAA2C,EACtD,CAAC,YAAY,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,EAAE,MAAM,IAAI,EAAE,CAAC,CAAC;oBACtD,CAAC;gBACH,CAAC;gBACD,IAAI,CAAC,IAAI,CAAC,KAAK;oBAAE,MAAM,CAAC,cAAc;YACxC,CAAC;YACD,sDAAsD;YACtD,IAAI,IAAI,CAAC,SAAS,IAAI,CAAC,IAAI,CAAC,eAAe,EAAE,EAAE,CAAC;gBAC9C,IAAI,CAAC,SAAS,GAAG,KAAK,CAAC;gBACvB,KAAK,IAAI,CAAC,YAAY,EAAE,CAAC;YAC3B,CAAC;QACH,CAAC,CAAC,EAAE,CAAC,OAAO,CAAC,GAAG,EAAE;YAChB,IAAI,CAAC,QAAQ,GAAG,KAAK,CAAC;YACtB,sDAAsD;YACtD,2DAA2D;YAC3D,sDAAsD;YACtD,8CAA8C;YAC9C,IAAI,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,SAAS;gBAAE,KAAK,IAAI,CAAC,KAAK,EAAE,CAAC;QACtD,CAAC,CAAC,CAAC;QACH,OAAO,IAAI,CAAC,UAAU,CAAC;IACzB,CAAC;IAED,0DAA0D;IAClD,eAAe;QACrB,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,IAAI,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;IACpD,CAAC;IAED;;+CAE2C;IACnC,YAAY;QAClB,MAAM,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC;QACrB,OAAO,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;IACzE,CAAC;CACF;AAED;;;;;;GAMG;AACH,MAAM,UAAU,eAAe,CAAC,CAAU;IACxC,MAAM,IAAI,GAAI,CAA0D,EAAE,QAAQ,EAAE,IAAI,CAAC;IACzF,IAAI,IAAI,KAAK,SAAS,IAAI,IAAI,KAAK,IAAI;QAAE,OAAO,SAAS,CAAC;IAC1D,MAAM,CAAC,GAAG,OAAO,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;IACjE,OAAO,CAAC,CAAC,MAAM,GAAG,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;AACpD,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,UAAU,sBAAsB,CAAC,CAAU;IAC/C,IAAI,CAAC,CAAC,CAAC,YAAY,KAAK,CAAC;QAAE,OAAO,SAAS,CAAC;IAC5C,MAAM,CAAC,GAAG,oBAAoB,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,CAAC;IACrE,OAAO,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;AAChB,CAAC"}
1
+ {"version":3,"file":"progress-card.js","sourceRoot":"","sources":["../../src/gateway/progress-card.ts"],"names":[],"mappings":"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"}
package/dist/index.d.ts CHANGED
@@ -3,6 +3,7 @@ import { AccessControl } from './access/access-control.js';
3
3
  import { runTask } from './executor/claude-executor.js';
4
4
  import { SessionStore } from './session/session-store.js';
5
5
  import { type TranscriptRecorder } from './transcript/transcript-writer.js';
6
+ import { type SecurityAuditWriter } from './security/audit.js';
6
7
  export { VERSION } from './version.js';
7
8
  export interface BridgeDeps {
8
9
  gateway: {
@@ -30,6 +31,8 @@ export interface BridgeDeps {
30
31
  executor: typeof runTask;
31
32
  /** 对话落盘记录器(可选依赖:缺失即不落盘,写失败自身消化不抛出) */
32
33
  transcript?: TranscriptRecorder;
34
+ /** 安全面审计(可选依赖:deny/脱敏/金丝雀事件落盘;缺失时仅控制台日志) */
35
+ audit?: SecurityAuditWriter;
33
36
  }
34
37
  export declare function createBridge(config: BridgeConfig, app: FeishuAppConfig, // 本 bridge 绑定的飞书应用:并发/默认工作区/Claude Code 环境/人格均 per-app
35
38
  deps: BridgeDeps, opts?: {
package/dist/index.js CHANGED
@@ -31,6 +31,9 @@ import { isLocalCommandRewrite, matchTrigger, rewriteByTrigger } from './session
31
31
  import { Semaphore, channelKey } from './session/channel.js';
32
32
  import { TranscriptWriter, sweepTranscripts } from './transcript/transcript-writer.js';
33
33
  import { nowBeijingISO } from './util/beijing-time.js';
34
+ import { getRedactor } from './security/redact.js';
35
+ import { DEFAULT_REDZONE_READ_SOURCES } from './security/paths.js';
36
+ import { CANARY_ALERT_TEXT, SecurityAudit } from './security/audit.js';
34
37
  // 版本号收敛到 version.ts 单一来源(bin/lcb.ts 与 smoke 测试均引用)
35
38
  export { VERSION } from './version.js';
36
39
  // 任务总超时 4 小时(防挂死;确认等待、长编译均在正常范围)
@@ -322,9 +325,10 @@ deps, opts = {}) {
322
325
  // currentWorkspace 语义:store 中已设置的工作区优先,否则 app 默认,最后全局默认——
323
326
  // 保证 /new、/status 回复与实际一致。用 || 而非 ??:archiveSession 为新通道建档时
324
327
  // workspaceName 存 ''(归档时不知工作区),空串必须回退默认,否则 inventory 键错位。
325
- // 分身角色恒锁首个允许的工作区(config 已校验非空):命令上下文、inventory 键与任务
326
- // wsName 同源锁定,通道 state 旧存的 workspaceName 一律不采信
327
- const currentWorkspace = app.role === 'deputy'
328
+ // 分身角色配置了工作区白名单时恒锁首个允许的工作区:命令上下文、inventory 键与任务
329
+ // wsName 同源锁定,通道 state 旧存的 workspaceName 一律不采信;未配置白名单 =
330
+ // 权限轴「全给」,与主机器人同规则(state 优先 → app 默认 → 全局默认)
331
+ const currentWorkspace = app.role === 'deputy' && app.allowedWorkspaces?.length
328
332
  ? app.allowedWorkspaces[0]
329
333
  : (st?.workspaceName || app.defaultWorkspace || config.defaults.workspace);
330
334
  // 2.4 触发词两段式补充(ask_detail):上一条消息命中「需补充」规则且正在等待时,本条
@@ -534,6 +538,27 @@ deps, opts = {}) {
534
538
  // 白名单/黑名单经 getter 传入:gate 虽按通道永久复用,decide 时才经 getter 现读
535
539
  // config.permissions——热重载原地 mutate 同一 config 对象后,已有通道的下一个工具
536
540
  // 调用即生效(不再需要新通道/重启;0.17.0 静态快照导致改配置后旧通道不生效)
541
+ // 分身安全闸(R1/R2/Bash 三态):仅 deputy 注入,主机器人行为零变化
542
+ const securityGuard = app.role === 'deputy'
543
+ ? {
544
+ cwd: workspacePath(wsName),
545
+ redzone: () => config.security?.redzone?.read ?? DEFAULT_REDZONE_READ_SOURCES,
546
+ // 未配置工作区白名单 = 权限轴全给:写根 = 全部已配置工作区(R2 红线仍在:工作区外只读)
547
+ writeRoots: () => (app.allowedWorkspaces?.length ? app.allowedWorkspaces : config.workspaces.map((w) => w.name))
548
+ .map((n) => workspacePath(n)),
549
+ bashMode: () => app.bashMode ?? 'confirm',
550
+ }
551
+ : undefined;
552
+ // 安全事件分流:审计落盘(always)+ 金丝雀向当前聊天告警(固定模板,节流在 gateway 侧)
553
+ const onSecurityEvent = (ev) => {
554
+ deps.audit?.write(app.appId, ev);
555
+ if (ev.kind !== 'canary') {
556
+ console.warn(tag, '[安全拦截]', JSON.stringify(ev));
557
+ return;
558
+ }
559
+ console.error(tag, '[安全告警] 🚨 金丝雀命中(防线疑似被穿透),已脱敏并告警');
560
+ void deps.gateway.sendTextTo(msg.chatId, CANARY_ALERT_TEXT).catch(() => { });
561
+ };
537
562
  let gate = gates.get(key);
538
563
  if (!gate) {
539
564
  gate = new PermissionGate({
@@ -541,6 +566,8 @@ deps, opts = {}) {
541
566
  // ?? 而非 ||:显式 false(用户主动关闭全部免确认)不能被回落到缺省的 true
542
567
  allowAllTools: () => config.permissions?.allowAllTools ?? DEFAULT_ALLOW_ALL_TOOLS,
543
568
  dangerousCommands: () => config.permissions?.dangerousCommands ?? DEFAULT_DANGEROUS_COMMANDS,
569
+ ...(securityGuard ? { security: securityGuard } : {}),
570
+ onSecurityEvent,
544
571
  ask: async (req) => {
545
572
  // 工具确认嵌入当前任务的进度卡(按钮在计时行上方、正文收敛)——不再单独发确认卡:
546
573
  // 独立确认卡与进度卡正文内容大量重复,且追加在进度卡下方会把进度卡顶出会话底部。
@@ -774,24 +801,29 @@ deps, opts = {}) {
774
801
  // managed 模式合并发现两处目录(自管 + 本机 ~/.claude):按绝对 installPath 传 SDK,
775
802
  // 用户本机已装插件无须重装;resolvePluginPaths 按 name 去重,当前生效目录优先。
776
803
  // 分身角色按 allowed_plugins 白名单过滤(显式 app.plugins 始终保留——写在分身配置里
777
- // 的就是要给的);未配 allowed_plugins 时自动发现全剔除(分身不声明 = 不加载)
804
+ // 的就是要给的);未配 allowed_plugins = 权限轴「全给」,自动发现插件全部加载
778
805
  ...(() => {
779
806
  const discovered = claudeDir === DEFAULT_CLAUDE_DIR
780
807
  ? discoverPlugins(claudeDir)
781
808
  : [...discoverPlugins(claudeDir), ...discoverPlugins(DEFAULT_CLAUDE_DIR)];
782
809
  let merged = resolvePluginPaths(app.plugins, discovered);
783
- if (app.role === 'deputy') {
784
- merged = merged.filter((p) => app.plugins?.some((e) => e.name === p.name) || app.allowedPlugins?.includes(p.name));
810
+ if (app.role === 'deputy' && app.allowedPlugins !== undefined) {
811
+ merged = merged.filter((p) => app.plugins?.some((e) => e.name === p.name) || app.allowedPlugins.includes(p.name));
785
812
  }
786
813
  return merged.length ? { plugins: merged.map((p) => ({ path: p.path })) } : {};
787
814
  })(),
788
815
  // 分身技能白名单:透传 SDK Options.skills(官方上下文过滤器——未列出技能对模型不可见
789
816
  // 且被 Skill 工具拒绝;非沙箱:技能文件仍在磁盘可被 Read/Bash 读到,用户已知悉此边界)
790
817
  ...(app.role === 'deputy' && app.allowedSkills?.length ? { allowedSkills: app.allowedSkills } : {}),
818
+ // 分身计划批准不升级 acceptEdits:该模式会绕过 canUseTool,宿主安全闸(R1/R2)随之失效
819
+ ...(app.role === 'deputy' ? { planApproveEscalates: false } : {}),
791
820
  canUseTool: (toolName, input, ctx) => gate.decide(toolName, input, wsName, ctx),
792
821
  onQuery: (handle) => { activeQueries.set(key, { wsName, handle }); },
793
822
  }, {
794
823
  onInit: (inv) => {
824
+ // CLI 进程已起、会话已建:状态从「已接收,启动中」切「会话已建立」(冷启动大头在
825
+ // init 之前,先让用户看到进程已建立而非黑盒等待)
826
+ progress.markSessionReady();
795
827
  // inventory 键带 appId 前缀:分身机器人技能/插件集与主机器人不同,两个 app 共用
796
828
  // 工作区时 /skills /plugins /mcp 清单不能互相污染
797
829
  inventories.set(`${app.appId}:${wsName}`, { ...inv, workspace: wsName, loadedAt: new Date().toISOString() });
@@ -809,22 +841,36 @@ deps, opts = {}) {
809
841
  // CLI 状态心跳(等待模型响应/上下文压缩):刷新进度卡状态行,避免静默期黑盒感
810
842
  progress.setStatus(e.content);
811
843
  }
844
+ else if (e.kind === 'first-delta') {
845
+ // 首个流式增量(模型开始吐字):提前点亮「正在执行」,不等首个完整块
846
+ progress.markStarted();
847
+ }
812
848
  else if (e.kind === 'text') {
813
849
  progress.markStarted();
814
- progress.appendText(e.content);
850
+ // R3:流式正文块脱敏后再渲染/落盘(进度卡展示 + transcript 双消费点;
851
+ // gateway 深度脱敏仍在其后兜底,双保险覆盖 transcript 这一本地落盘面)
852
+ const streamRedaction = getRedactor(config.security).text(e.content);
853
+ if (streamRedaction.hits.length) {
854
+ deps.audit?.write(app.appId, { kind: 'redact', ruleIds: [...new Set(streamRedaction.hits)], source: 'stream' });
855
+ }
856
+ if (streamRedaction.canary)
857
+ onSecurityEvent({ kind: 'canary', source: 'stream' });
858
+ progress.appendText(streamRedaction.text);
815
859
  // 落盘 · assistant:流式文本块全文(每块一行,天然增量)
816
860
  deps.transcript?.assistant({
817
861
  v: 1, ts: now(), kind: 'assistant', app: app.appId,
818
- chatId: msg.chatId, userId: msg.userId, text: e.content,
862
+ chatId: msg.chatId, userId: msg.userId, text: streamRedaction.text,
819
863
  });
820
864
  }
821
865
  else if (e.kind === 'tool-start') {
822
866
  const [n, ...rest] = e.content.split(': ');
823
867
  progress.markStarted();
824
- progress.toolStart(n, rest.join(': '));
868
+ // 摘要(命令串/路径)同样过脱敏再落盘——命令回显可能带出先前输出中的秘密
869
+ const summaryRedaction = getRedactor(config.security).text(rest.join(': '));
870
+ progress.toolStart(n, summaryRedaction.text);
825
871
  deps.transcript?.tool({
826
872
  v: 1, ts: now(), kind: 'tool', app: app.appId,
827
- chatId: msg.chatId, userId: msg.userId, phase: 'start', tool: n, summary: rest.join(': '), ok: true,
873
+ chatId: msg.chatId, userId: msg.userId, phase: 'start', tool: n, summary: summaryRedaction.text, ok: true,
828
874
  });
829
875
  }
830
876
  else if (e.kind === 'tool-result') {
@@ -854,8 +900,16 @@ deps, opts = {}) {
854
900
  });
855
901
  return;
856
902
  }
857
- // finalText 提前算好:finish 携带字数,终态进度卡据此显示「完整回复已单独发送」提示行
858
- const finalText = outcome.finalText?.trim() ?? '';
903
+ // finalText 提前算好:finish 携带字数,终态进度卡据此显示「完整回复已单独发送」提示行。
904
+ // R3:先脱敏再落盘/发送——transcript 写入(下方 result 事件)与结果卡都消费脱敏后文本,
905
+ // bridge 自己的落盘不再残留明文(方案 v3 §八.4:脱敏点在 transcript 之前,非发送点)
906
+ const finalRedaction = getRedactor(config.security).text(outcome.finalText?.trim() ?? '');
907
+ if (finalRedaction.hits.length) {
908
+ deps.audit?.write(app.appId, { kind: 'redact', ruleIds: [...new Set(finalRedaction.hits)], source: 'final' });
909
+ }
910
+ if (finalRedaction.canary)
911
+ onSecurityEvent({ kind: 'canary', source: 'final' });
912
+ const finalText = finalRedaction.text;
859
913
  await progress.finish('✅ 完成', finalText.length || undefined);
860
914
  archive(outcome.sessionId);
861
915
  deps.transcript?.result({
@@ -1225,8 +1279,10 @@ export function createConfigReloader(config, configPath) {
1225
1279
  config.workspaces = fresh.workspaces;
1226
1280
  config.defaults = fresh.defaults;
1227
1281
  // 权限白名单/黑名单热应用:通道级 gate 复用,但经 getter 在 decide 时现读 config.permissions,
1228
- // 此处原地替换后已有通道的下一个工具调用即用新名单
1282
+ // 此处原地替换后已有通道的下一个工具调用即用新名单。安保段(红区/脱敏/金丝雀)同款 getter
1283
+ // 现读 → 热生效;脱敏器按配置键 memo,键变化自动重编译
1229
1284
  config.permissions = fresh.permissions;
1285
+ config.security = fresh.security;
1230
1286
  config.claude = fresh.claude;
1231
1287
  config.server = fresh.server;
1232
1288
  config.slashCommands = fresh.slashCommands;
@@ -1257,6 +1313,8 @@ export function createConfigReloader(config, configPath) {
1257
1313
  // 机器人级厂商档案热生效:executeTask 每任务经 app-profile.ts 现读解析
1258
1314
  config.apps[i].profile = fa.profile;
1259
1315
  config.apps[i].profileModel = fa.profileModel;
1316
+ // 分身 Bash 三态热生效:gate 在 decide 时经 getter 现读 app.bashMode
1317
+ config.apps[i].bashMode = fa.bashMode;
1260
1318
  });
1261
1319
  }
1262
1320
  return null;
@@ -1292,6 +1350,8 @@ export async function startBridge(configPath = CONFIG_PATH) {
1292
1350
  }
1293
1351
  }
1294
1352
  // 每 app 一对 gateway+bridge:长连接/会话池/并发闸/Claude Code 环境/落盘目录全部 per-app 隔离
1353
+ // 安全面审计:单实例按 appId 分文件落盘(CONFIG_DIR/security/audit-<appId>.jsonl)
1354
+ const securityAudit = new SecurityAudit(join(CONFIG_DIR, 'security'));
1295
1355
  const runners = config.apps.map((app) => {
1296
1356
  const tag = `[app:${app.name}]`;
1297
1357
  const gateway = new FeishuGateway(app, {
@@ -1300,6 +1360,13 @@ export async function startBridge(configPath = CONFIG_PATH) {
1300
1360
  strictGroupMention: config.apps.length > 1,
1301
1361
  // 卡片宽度热生效:getter 现读 config.card(reloader 原地 mutate 同一对象)
1302
1362
  cardWidth: () => config.card?.width ?? 'default',
1363
+ // R3 出站脱敏(恒开,全部机器人):getter 现读 config.security → 热重载即生效
1364
+ redactor: () => getRedactor(config.security),
1365
+ onSecurityEvent: (ev) => {
1366
+ securityAudit.write(app.appId, ev);
1367
+ if (ev.kind !== 'redact')
1368
+ console.warn(tag, '[安全事件]', ev.kind);
1369
+ },
1303
1370
  });
1304
1371
  const deps = {
1305
1372
  gateway: {
@@ -1320,6 +1387,7 @@ export async function startBridge(configPath = CONFIG_PATH) {
1320
1387
  store: SessionStore.load(join(CONFIG_DIR, `sessions.${app.appId}.json`)),
1321
1388
  executor: runTask,
1322
1389
  transcript: new TranscriptWriter(join(CONFIG_DIR, 'transcripts', app.appId)),
1390
+ audit: securityAudit,
1323
1391
  };
1324
1392
  return { app, gateway, bridge: createBridge(config, app, deps, { reloadConfig }) };
1325
1393
  });