@xgjktech/xg_cwork_im 1.19.29 → 1.19.32

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 (28) hide show
  1. package/dist/src/connection/connection.d.ts.map +1 -1
  2. package/dist/src/connection/connection.js +13 -9
  3. package/dist/src/connection/connection.js.map +1 -1
  4. package/dist/src/connection/ws-message-segment.d.ts +35 -0
  5. package/dist/src/connection/ws-message-segment.d.ts.map +1 -0
  6. package/dist/src/connection/ws-message-segment.js +111 -0
  7. package/dist/src/connection/ws-message-segment.js.map +1 -0
  8. package/dist/src/connection/ws-message-segment.test.d.ts +2 -0
  9. package/dist/src/connection/ws-message-segment.test.d.ts.map +1 -0
  10. package/dist/src/connection/ws-message-segment.test.js +76 -0
  11. package/dist/src/connection/ws-message-segment.test.js.map +1 -0
  12. package/dist/src/inbound/dispatch-mentioned-reply.d.ts.map +1 -1
  13. package/dist/src/inbound/dispatch-mentioned-reply.js +57 -14
  14. package/dist/src/inbound/dispatch-mentioned-reply.js.map +1 -1
  15. package/dist/src/turn/active-round-registry.d.ts +5 -0
  16. package/dist/src/turn/active-round-registry.d.ts.map +1 -1
  17. package/dist/src/turn/active-round-registry.js +27 -2
  18. package/dist/src/turn/active-round-registry.js.map +1 -1
  19. package/dist/src/turn/active-round-registry.test.js +32 -1
  20. package/dist/src/turn/active-round-registry.test.js.map +1 -1
  21. package/dist/src/workspace/connection-workspace-event.test.js +58 -0
  22. package/dist/src/workspace/connection-workspace-event.test.js.map +1 -1
  23. package/dist/src/workspace/workspace-event.d.ts.map +1 -1
  24. package/dist/src/workspace/workspace-event.js +62 -6
  25. package/dist/src/workspace/workspace-event.js.map +1 -1
  26. package/dist/src/workspace/workspace-event.test.js +42 -0
  27. package/dist/src/workspace/workspace-event.test.js.map +1 -1
  28. package/package.json +2 -1
@@ -1 +1 @@
1
- {"version":3,"file":"dispatch-mentioned-reply.js","sourceRoot":"","sources":["../../../src/inbound/dispatch-mentioned-reply.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"dispatch-mentioned-reply.js","sourceRoot":"","sources":["../../../src/inbound/dispatch-mentioned-reply.ts"],"names":[],"mappings":"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"}
@@ -13,6 +13,11 @@ export interface ActiveRound {
13
13
  interrupted: boolean;
14
14
  }
15
15
  export declare const buildRoundKey: (accountId: string, groupId: string) => string;
16
+ /**
17
+ * 续期活跃轮次(命中即视为有活动)。轮次仍在跑时,任何一次事件路由都会把 TTL 从当前时刻
18
+ * 重新起算;只有真正静默超过 TTL 的轮次才会被 pruneExpired 回收。
19
+ */
20
+ export declare function touchActiveRound(roundKey: string, generation: number, now?: number): boolean;
16
21
  export declare function registerActiveRound(params: {
17
22
  accountId: string;
18
23
  groupId: string;
@@ -1 +1 @@
1
- {"version":3,"file":"active-round-registry.d.ts","sourceRoot":"","sources":["../../../src/turn/active-round-registry.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,6BAA6B,CAAC;AAIlE,MAAM,WAAW,WAAW;IACxB,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;IAChB,UAAU,EAAE,MAAM,CAAC;IACnB,YAAY,EAAE,MAAM,CAAC;IACrB,UAAU,EAAE,MAAM,CAAC;IACnB,YAAY,EAAE,cAAc,CAAC;IAC7B,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,EAAE,OAAO,CAAC;CACxB;AAKD,eAAO,MAAM,aAAa,GAAI,WAAW,MAAM,EAAE,SAAS,MAAM,KAAG,MACI,CAAC;AAQxE,wBAAgB,mBAAmB,CAAC,MAAM,EAAE;IACxC,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;IAChB,UAAU,EAAE,MAAM,CAAC;IACnB,YAAY,EAAE,MAAM,CAAC;IACrB,YAAY,EAAE,cAAc,CAAC;IAC7B,GAAG,CAAC,EAAE,MAAM,CAAC;CAChB,GAAG,WAAW,CAqBd;AAED,wBAAgB,0BAA0B,CACtC,OAAO,EAAE,MAAM,EACf,GAAG,SAAa,GACjB,WAAW,GAAG,SAAS,CAWzB;AAED,2DAA2D;AAC3D,wBAAgB,yBAAyB,CAAC,UAAU,EAAE,MAAM,EAAE,GAAG,SAAa,GAAG,WAAW,GAAG,SAAS,CAYvG;AAED,wBAAgB,cAAc,CAAC,QAAQ,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,WAAW,GAAG,SAAS,CAI5F;AAED,wBAAgB,WAAW,CAAC,QAAQ,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,OAAO,CAEzE;AAED,wBAAgB,2BAA2B,CACvC,SAAS,EAAE,MAAM,EACjB,OAAO,EAAE,MAAM,EACf,GAAG,SAAa,GACjB,WAAW,GAAG,SAAS,CAMzB;AAED,wBAAgB,mBAAmB,CAAC,QAAQ,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,OAAO,CAKjF;AAED,wBAAgB,kCAAkC,IAAI,IAAI,CAEzD;AAED,wBAAwB;AACxB,wBAAgB,0BAA0B,IAAI,IAAI,CAGjD"}
1
+ {"version":3,"file":"active-round-registry.d.ts","sourceRoot":"","sources":["../../../src/turn/active-round-registry.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,6BAA6B,CAAC;AASlE,MAAM,WAAW,WAAW;IACxB,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;IAChB,UAAU,EAAE,MAAM,CAAC;IACnB,YAAY,EAAE,MAAM,CAAC;IACrB,UAAU,EAAE,MAAM,CAAC;IACnB,YAAY,EAAE,cAAc,CAAC;IAC7B,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,EAAE,OAAO,CAAC;CACxB;AAKD,eAAO,MAAM,aAAa,GAAI,WAAW,MAAM,EAAE,SAAS,MAAM,KAAG,MACI,CAAC;AAQxE;;;GAGG;AACH,wBAAgB,gBAAgB,CAAC,QAAQ,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,GAAG,SAAa,GAAG,OAAO,CAKhG;AAED,wBAAgB,mBAAmB,CAAC,MAAM,EAAE;IACxC,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;IAChB,UAAU,EAAE,MAAM,CAAC;IACnB,YAAY,EAAE,MAAM,CAAC;IACrB,YAAY,EAAE,cAAc,CAAC;IAC7B,GAAG,CAAC,EAAE,MAAM,CAAC;CAChB,GAAG,WAAW,CAqBd;AAED,wBAAgB,0BAA0B,CACtC,OAAO,EAAE,MAAM,EACf,GAAG,SAAa,GACjB,WAAW,GAAG,SAAS,CAczB;AAED,2DAA2D;AAC3D,wBAAgB,yBAAyB,CAAC,UAAU,EAAE,MAAM,EAAE,GAAG,SAAa,GAAG,WAAW,GAAG,SAAS,CAgBvG;AAED,wBAAgB,cAAc,CAAC,QAAQ,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,WAAW,GAAG,SAAS,CAI5F;AAED,wBAAgB,WAAW,CAAC,QAAQ,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,OAAO,CAEzE;AAED,wBAAgB,2BAA2B,CACvC,SAAS,EAAE,MAAM,EACjB,OAAO,EAAE,MAAM,EACf,GAAG,SAAa,GACjB,WAAW,GAAG,SAAS,CAMzB;AAED,wBAAgB,mBAAmB,CAAC,QAAQ,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,OAAO,CAKjF;AAED,wBAAgB,kCAAkC,IAAI,IAAI,CAEzD;AAED,wBAAwB;AACxB,wBAAgB,0BAA0B,IAAI,IAAI,CAGjD"}
@@ -1,4 +1,9 @@
1
1
  import { getSharedMap } from "../plugin/process-shared-store.js";
2
+ /**
3
+ * 活跃轮次的基础 TTL。注意它是「最后一次活动」起算的滑动窗口,而不是注册时刻的固定
4
+ * 死线:只要有事件命中该轮次(plan/tool/usage/thinking 等路由查询),就会续期
5
+ * (见 touchActiveRound),因此长轮次不会因 30 分钟到点被提前清理而丢事件。
6
+ */
2
7
  const ACTIVE_ROUND_TTL_MS = 30 * 60 * 1000;
3
8
  const rounds = getSharedMap("active-rounds");
4
9
  const generations = getSharedMap("active-round-generations");
@@ -9,6 +14,17 @@ function pruneExpired(now = Date.now()) {
9
14
  rounds.delete(roundKey);
10
15
  }
11
16
  }
17
+ /**
18
+ * 续期活跃轮次(命中即视为有活动)。轮次仍在跑时,任何一次事件路由都会把 TTL 从当前时刻
19
+ * 重新起算;只有真正静默超过 TTL 的轮次才会被 pruneExpired 回收。
20
+ */
21
+ export function touchActiveRound(roundKey, generation, now = Date.now()) {
22
+ const round = getActiveRound(roundKey, generation);
23
+ if (!round)
24
+ return false;
25
+ round.expiresAt = now + ACTIVE_ROUND_TTL_MS;
26
+ return true;
27
+ }
12
28
  export function registerActiveRound(params) {
13
29
  const now = params.now ?? Date.now();
14
30
  pruneExpired(now);
@@ -37,7 +53,11 @@ export function findActiveRoundForSubagent(groupId, now = Date.now()) {
37
53
  if (matches.length > 1) {
38
54
  console.warn(`[xg_cwork_im] [subagent] ambiguous active round groupId=${groupId}; monitoring rejected`);
39
55
  }
40
- return matches.length === 1 ? matches[0] : undefined;
56
+ const match = matches.length === 1 ? matches[0] : undefined;
57
+ // 命中即续期:只要这轮还在产生事件,就不因固定 TTL 到点被回收(长轮次丢 PLAN_STAT 的根因)。
58
+ if (match)
59
+ match.expiresAt = now + ACTIVE_ROUND_TTL_MS;
60
+ return match;
41
61
  }
42
62
  /** 按整轮父会话 sessionKey 定位活跃轮次(lifecycle/thinking 等事件路由用)。 */
43
63
  export function findActiveRoundForSession(sessionKey, now = Date.now()) {
@@ -48,7 +68,12 @@ export function findActiveRoundForSession(sessionKey, now = Date.now()) {
48
68
  if (matches.length > 1) {
49
69
  console.warn(`[xg_cwork_im] [turn] ambiguous active round sessionKey=${sessionKey}; lifecycle routing rejected`);
50
70
  }
51
- return matches.length === 1 ? matches[0] : undefined;
71
+ const match = matches.length === 1 ? matches[0] : undefined;
72
+ // 命中即续期:长轮次(>30min)持续有 plan/tool/usage/thinking 事件时保持登记,
73
+ // 避免后半段事件定位不到活跃轮次而被静默丢弃。
74
+ if (match)
75
+ match.expiresAt = now + ACTIVE_ROUND_TTL_MS;
76
+ return match;
52
77
  }
53
78
  export function getActiveRound(roundKey, generation) {
54
79
  const round = rounds.get(roundKey);
@@ -1 +1 @@
1
- {"version":3,"file":"active-round-registry.js","sourceRoot":"","sources":["../../../src/turn/active-round-registry.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"active-round-registry.js","sourceRoot":"","sources":["../../../src/turn/active-round-registry.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,6 @@
1
1
  import assert from "node:assert/strict";
2
2
  import { afterEach, describe, it } from "node:test";
3
- import { __resetActiveRoundRegistryForTests, completeActiveRound, findActiveRoundForSubagent, prepareActiveRoundInterrupt, registerActiveRound, } from "./active-round-registry.js";
3
+ import { __resetActiveRoundRegistryForTests, completeActiveRound, findActiveRoundForSession, findActiveRoundForSubagent, prepareActiveRoundInterrupt, registerActiveRound, touchActiveRound, } from "./active-round-registry.js";
4
4
  const client = {};
5
5
  afterEach(() => __resetActiveRoundRegistryForTests());
6
6
  describe("active round registry", () => {
@@ -58,5 +58,36 @@ describe("active round registry", () => {
58
58
  });
59
59
  assert.equal(findActiveRoundForSubagent("group-1"), round);
60
60
  });
61
+ it("按 sessionKey 命中会续期 TTL:长轮次在滑动窗口内持续可见", () => {
62
+ const round = registerActiveRound({
63
+ accountId: "account-a",
64
+ groupId: "group-1",
65
+ agentId: "main",
66
+ sessionKey: "session-a1",
67
+ replyToMsgId: "reply-a1",
68
+ streamClient: client,
69
+ now: 0,
70
+ });
71
+ // 20 分钟时有事件:命中并续期到 50 分钟。
72
+ assert.equal(findActiveRoundForSession("session-a1", 20 * 60_000), round);
73
+ // 40 分钟(越过原始 30 分钟死线、但在续期窗口内)仍能命中。
74
+ assert.equal(findActiveRoundForSession("session-a1", 40 * 60_000), round);
75
+ // 续期后静默超过 30 分钟才真正过期。
76
+ assert.equal(findActiveRoundForSession("session-a1", 40 * 60_000 + 30 * 60_000 + 1), undefined);
77
+ });
78
+ it("touchActiveRound 只对当前 generation 生效", () => {
79
+ const round = registerActiveRound({
80
+ accountId: "account-a",
81
+ groupId: "group-1",
82
+ agentId: "main",
83
+ sessionKey: "session-a1",
84
+ replyToMsgId: "reply-a1",
85
+ streamClient: client,
86
+ now: 0,
87
+ });
88
+ assert.equal(touchActiveRound(round.roundKey, round.generation, 25 * 60_000), true);
89
+ assert.equal(findActiveRoundForSession("session-a1", 50 * 60_000), round);
90
+ assert.equal(touchActiveRound(round.roundKey, round.generation - 1, 0), false);
91
+ });
61
92
  });
62
93
  //# sourceMappingURL=active-round-registry.test.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"active-round-registry.test.js","sourceRoot":"","sources":["../../../src/turn/active-round-registry.test.ts"],"names":[],"mappings":"AAAA,OAAO,MAAM,MAAM,oBAAoB,CAAC;AACxC,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,EAAE,EAAE,MAAM,WAAW,CAAC;AAEpD,OAAO,EACH,kCAAkC,EAClC,mBAAmB,EACnB,0BAA0B,EAC1B,2BAA2B,EAC3B,mBAAmB,GACtB,MAAM,4BAA4B,CAAC;AAEpC,MAAM,MAAM,GAAG,EAAoB,CAAC;AAEpC,SAAS,CAAC,GAAG,EAAE,CAAC,kCAAkC,EAAE,CAAC,CAAC;AAEtD,QAAQ,CAAC,uBAAuB,EAAE,GAAG,EAAE;IACnC,EAAE,CAAC,iDAAiD,EAAE,GAAG,EAAE;QACvD,MAAM,KAAK,GAAG,mBAAmB,CAAC;YAC9B,SAAS,EAAE,WAAW;YACtB,OAAO,EAAE,SAAS;YAClB,OAAO,EAAE,MAAM;YACf,UAAU,EAAE,YAAY;YACxB,YAAY,EAAE,UAAU;YACxB,YAAY,EAAE,MAAM;SACvB,CAAC,CAAC;QACH,MAAM,YAAY,GAAG,mBAAmB,CAAC;YACrC,SAAS,EAAE,WAAW;YACtB,OAAO,EAAE,SAAS;YAClB,OAAO,EAAE,MAAM;YACf,UAAU,EAAE,YAAY;YACxB,YAAY,EAAE,UAAU;YACxB,YAAY,EAAE,MAAM;SACvB,CAAC,CAAC;QAEH,MAAM,CAAC,KAAK,CAAC,0BAA0B,CAAC,SAAS,CAAC,EAAE,SAAS,CAAC,CAAC;QAC/D,MAAM,CAAC,KAAK,CAAC,2BAA2B,CAAC,WAAW,EAAE,SAAS,CAAC,EAAE,KAAK,CAAC,CAAC;QACzE,MAAM,CAAC,KAAK,CAAC,2BAA2B,CAAC,WAAW,EAAE,SAAS,CAAC,EAAE,YAAY,CAAC,CAAC;QAEhF,MAAM,IAAI,GAAG,mBAAmB,CAAC;YAC7B,SAAS,EAAE,WAAW;YACtB,OAAO,EAAE,SAAS;YAClB,OAAO,EAAE,MAAM;YACf,UAAU,EAAE,YAAY;YACxB,YAAY,EAAE,UAAU;YACxB,YAAY,EAAE,MAAM;SACvB,CAAC,CAAC;QACH,MAAM,CAAC,KAAK,CAAC,mBAAmB,CAAC,KAAK,CAAC,QAAQ,EAAE,KAAK,CAAC,UAAU,CAAC,EAAE,KAAK,CAAC,CAAC;QAC3E,MAAM,CAAC,KAAK,CAAC,2BAA2B,CAAC,WAAW,EAAE,SAAS,CAAC,EAAE,IAAI,CAAC,CAAC;IAC5E,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,2BAA2B,EAAE,GAAG,EAAE;QACjC,mBAAmB,CAAC;YAChB,SAAS,EAAE,WAAW;YACtB,OAAO,EAAE,SAAS;YAClB,OAAO,EAAE,MAAM;YACf,UAAU,EAAE,YAAY;YACxB,YAAY,EAAE,UAAU;YACxB,YAAY,EAAE,MAAM;YACpB,GAAG,EAAE,CAAC;SACT,CAAC,CAAC;QAEH,MAAM,CAAC,KAAK,CAAC,2BAA2B,CAAC,WAAW,EAAE,SAAS,EAAE,EAAE,GAAG,MAAM,GAAG,CAAC,CAAC,EAAE,SAAS,CAAC,CAAC;IAClG,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,2CAA2C,EAAE,GAAG,EAAE;QACjD,MAAM,KAAK,GAAG,mBAAmB,CAAC;YAC9B,SAAS,EAAE,WAAW;YACtB,OAAO,EAAE,SAAS;YAClB,OAAO,EAAE,MAAM;YACf,UAAU,EAAE,YAAY;YACxB,YAAY,EAAE,UAAU;YACxB,YAAY,EAAE,MAAM;SACvB,CAAC,CAAC;QAEH,MAAM,CAAC,KAAK,CAAC,0BAA0B,CAAC,SAAS,CAAC,EAAE,KAAK,CAAC,CAAC;IAC/D,CAAC,CAAC,CAAC;AACP,CAAC,CAAC,CAAC"}
1
+ {"version":3,"file":"active-round-registry.test.js","sourceRoot":"","sources":["../../../src/turn/active-round-registry.test.ts"],"names":[],"mappings":"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"}
@@ -70,5 +70,63 @@ describe("connection workspace event routing", () => {
70
70
  await new Promise((resolve) => server.close(() => resolve()));
71
71
  }
72
72
  });
73
+ it("segments a large workspace response and preserves relay routing on every frame", async () => {
74
+ const server = new WebSocketServer({ port: 0 });
75
+ await once(server, "listening");
76
+ const address = server.address();
77
+ if (typeof address === "string" || address == null)
78
+ throw new Error("test server has no TCP port");
79
+ const handle = startWebSocket({
80
+ baseUrl: `http://127.0.0.1:${address.port}`,
81
+ wsBaseUrl: `ws://127.0.0.1:${address.port}`,
82
+ agentId: "main",
83
+ maxConnectionAttempts: 0,
84
+ }, "test-token", () => undefined, quietLog, {
85
+ onWorkspaceEvent: async (params) => ({
86
+ _wsRelayId: params._wsRelayId,
87
+ event: "FILE_RESULT",
88
+ groupId: params.groupId,
89
+ success: true,
90
+ path: "result.md",
91
+ content: "中".repeat(10_000),
92
+ }),
93
+ });
94
+ try {
95
+ const [socket] = await once(server, "connection");
96
+ const frames = [];
97
+ const complete = new Promise((resolve) => {
98
+ socket.on("message", (raw) => {
99
+ const frame = JSON.parse(raw.toString());
100
+ frames.push(frame);
101
+ if (frames.length === frame.params.total)
102
+ resolve();
103
+ });
104
+ });
105
+ socket.send(JSON.stringify({
106
+ cmd: OPENCLAW_WORKSPACE_EVENT_CMD,
107
+ params: {
108
+ _wsRelayId: "relay-large",
109
+ event: "FILE_REQUEST",
110
+ groupId: "42",
111
+ },
112
+ }));
113
+ await complete;
114
+ assert.ok(frames.length > 1);
115
+ assert.equal(frames.every((frame) => frame.cmd === "_msgSegment"), true);
116
+ assert.equal(frames.every((frame) => typeof frame.params.transferId === "string"), true);
117
+ assert.equal(new Set(frames.map((frame) => frame.params.transferId)).size, 1);
118
+ assert.equal(frames.every((frame) => !("groupId" in frame.params)), true);
119
+ assert.equal(frames.every((frame) => frame.params._wsRelayId === "relay-large"), true);
120
+ assert.equal(frames.every((frame) => Buffer.byteLength(JSON.stringify(frame), "utf8") <= 7_500), true);
121
+ const restored = Buffer.concat(frames.map((frame) => Buffer.from(frame.params.data, "base64")));
122
+ const message = JSON.parse(restored.toString("utf8"));
123
+ assert.equal(message.cmd, OPENCLAW_WORKSPACE_EVENT_CMD);
124
+ assert.equal(message.params.content, "中".repeat(10_000));
125
+ }
126
+ finally {
127
+ handle.stop();
128
+ await new Promise((resolve) => server.close(() => resolve()));
129
+ }
130
+ });
73
131
  });
74
132
  //# sourceMappingURL=connection-workspace-event.test.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"connection-workspace-event.test.js","sourceRoot":"","sources":["../../../src/workspace/connection-workspace-event.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"connection-workspace-event.test.js","sourceRoot":"","sources":["../../../src/workspace/connection-workspace-event.test.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"workspace-event.d.ts","sourceRoot":"","sources":["../../../src/workspace/workspace-event.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAKH,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAE/D,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,mBAAmB,CAAC;AAiB7C,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AAGrD,OAAO,EAAE,4BAA4B,EAAE,MAAM,+BAA+B,CAAC;AAU7E,MAAM,MAAM,qBAAqB,GAAG,cAAc,GAAG,cAAc,CAAC;AACpE,MAAM,MAAM,oBAAoB,GAAG,aAAa,GAAG,aAAa,CAAC;AACjE,MAAM,MAAM,kBAAkB,GACxB,iBAAiB,GACjB,wBAAwB,GACxB,WAAW,GACX,iBAAiB,GACjB,YAAY,GACZ,uBAAuB,GACvB,gBAAgB,GAChB,MAAM,GACN,aAAa,CAAC;AA8BpB,MAAM,WAAW,qBAAqB;IAClC,MAAM,EAAE,UAAU,CAAC;IACnB,GAAG,EAAE,cAAc,CAAC;IACpB,GAAG,EAAE,GAAG,CAAC;IACT,SAAS,EAAE,MAAM,CAAC;IAClB,uDAAuD;IACvD,iBAAiB,CAAC,EAAE,MAAM,CAAC;CAC9B;AAED,MAAM,MAAM,sBAAsB,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;AAmtB7D;;GAEG;AACH,wBAAsB,oBAAoB,CACtC,GAAG,EAAE,qBAAqB,EAC1B,SAAS,EAAE,OAAO,GACnB,OAAO,CAAC,sBAAsB,CAAC,CAajC"}
1
+ {"version":3,"file":"workspace-event.d.ts","sourceRoot":"","sources":["../../../src/workspace/workspace-event.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAKH,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAG/D,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,mBAAmB,CAAC;AAiB7C,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AAIrD,OAAO,EAAE,4BAA4B,EAAE,MAAM,+BAA+B,CAAC;AAW7E,MAAM,MAAM,qBAAqB,GAAG,cAAc,GAAG,cAAc,CAAC;AACpE,MAAM,MAAM,oBAAoB,GAAG,aAAa,GAAG,aAAa,CAAC;AACjE,MAAM,MAAM,kBAAkB,GACxB,iBAAiB,GACjB,wBAAwB,GACxB,WAAW,GACX,iBAAiB,GACjB,YAAY,GACZ,uBAAuB,GACvB,gBAAgB,GAChB,MAAM,GACN,aAAa,CAAC;AAoCpB,MAAM,WAAW,qBAAqB;IAClC,MAAM,EAAE,UAAU,CAAC;IACnB,GAAG,EAAE,cAAc,CAAC;IACpB,GAAG,EAAE,GAAG,CAAC;IACT,SAAS,EAAE,MAAM,CAAC;IAClB,uDAAuD;IACvD,iBAAiB,CAAC,EAAE,MAAM,CAAC;CAC9B;AAED,MAAM,MAAM,sBAAsB,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;AA4wB7D;;GAEG;AACH,wBAAsB,oBAAoB,CACtC,GAAG,EAAE,qBAAqB,EAC1B,SAAS,EAAE,OAAO,GACnB,OAAO,CAAC,sBAAsB,CAAC,CAajC"}
@@ -9,10 +9,12 @@ import { readdir, readFile, realpath, stat } from "node:fs/promises";
9
9
  import path from "node:path";
10
10
  import { TextDecoder } from "node:util";
11
11
  import { resolveAgentWorkspaceDir } from "openclaw/plugin-sdk/memory-core-host-engine-foundation";
12
+ import { RE2JS, RE2Set } from "re2js";
12
13
  import { normalizeNasDockerDir, resolveNasVolumeHostDirectoryForRead, } from "./nas-volumes.js";
13
14
  import { resolveNasSiteCode } from "./nas-site.js";
14
15
  import { resolveWorkspaceEventConcurrencyLimits, workspaceEventScheduler, } from "./workspace-event-scheduler.js";
15
16
  import { LOCAL_ROOT_KINDS, resolveLocalAbsolutePath, } from "./project-path-normalize.js";
17
+ import { WS_MAX_MESSAGE_BYTES } from "../connection/ws-message-segment.js";
16
18
  import { OPENCLAW_WORKSPACE_EVENT_CMD } from "./workspace-event-protocol.js";
17
19
  export { OPENCLAW_WORKSPACE_EVENT_CMD } from "./workspace-event-protocol.js";
18
20
  const DEFAULT_TREE_LIMIT = 200;
@@ -20,8 +22,9 @@ const MAX_TREE_LIMIT = 500;
20
22
  const MAX_FILE_BYTES = 1024 * 1024;
21
23
  const MAX_CURSOR_CHARS = 4096;
22
24
  const MAX_REQUEST_PATH_CHARS = 4096;
23
- /** ws-notify 文本帧上限为 2 MiB;保留 64 KiB 给信封和实现差异。 */
24
- const MAX_WS_RESPONSE_BYTES = 2 * 1024 * 1024 - 64 * 1024;
25
+ const MAX_FILE_FILTER_PATTERNS = 8;
26
+ const MAX_FILE_FILTER_PATTERN_CHARS = 128;
27
+ const MAX_FILE_FILTER_DFA_BYTES = 512 * 1024;
25
28
  class WorkspaceEventError extends Error {
26
29
  code;
27
30
  constructor(code, message) {
@@ -96,6 +99,44 @@ function parseWorkspaceDescriptor(raw) {
96
99
  }
97
100
  throw new WorkspaceEventError("INVALID_REQUEST", "workspace.sourceType 不支持");
98
101
  }
102
+ function compileFileFilterPatterns(raw) {
103
+ if (!Array.isArray(raw))
104
+ return undefined;
105
+ const patterns = new RE2Set(RE2Set.UNANCHORED, RE2JS.CASE_INSENSITIVE, MAX_FILE_FILTER_DFA_BYTES);
106
+ let count = 0;
107
+ for (const value of raw.slice(0, MAX_FILE_FILTER_PATTERNS)) {
108
+ if (typeof value !== "string" ||
109
+ value.length === 0 ||
110
+ value.length > MAX_FILE_FILTER_PATTERN_CHARS) {
111
+ continue;
112
+ }
113
+ try {
114
+ patterns.add(value);
115
+ count += 1;
116
+ }
117
+ catch {
118
+ // 单条无效表达式按未传处理,不阻断目录浏览。
119
+ }
120
+ }
121
+ if (count === 0)
122
+ return undefined;
123
+ try {
124
+ patterns.compile();
125
+ return patterns;
126
+ }
127
+ catch {
128
+ // 组合编译失败同样按未传处理;已通过 add 的正常表达式通常不会走到这里。
129
+ return undefined;
130
+ }
131
+ }
132
+ function parseWorkspaceFileFilter(raw) {
133
+ const record = asRecord(raw);
134
+ if (!record)
135
+ return undefined;
136
+ const include = compileFileFilterPatterns(record.include);
137
+ const exclude = compileFileFilterPatterns(record.exclude);
138
+ return include || exclude ? { include, exclude } : undefined;
139
+ }
99
140
  function parseWorkspaceRequest(raw) {
100
141
  const record = asRecord(raw);
101
142
  if (!record)
@@ -125,6 +166,7 @@ function parseWorkspaceRequest(raw) {
125
166
  fullPath,
126
167
  limit,
127
168
  ...(cursor ? { cursor } : {}),
169
+ ...(event === "TREE_REQUEST" ? { fileFilter: parseWorkspaceFileFilter(record.fileFilter) } : {}),
128
170
  };
129
171
  }
130
172
  function normalizeLogicalPath(raw, allowEmpty) {
@@ -234,6 +276,19 @@ function compareEntries(left, right) {
234
276
  const b = entrySortKey(right);
235
277
  return a < b ? -1 : a > b ? 1 : 0;
236
278
  }
279
+ function filterWorkspaceEntries(entries, filter) {
280
+ if (!filter)
281
+ return entries;
282
+ return entries.filter((entry) => {
283
+ if (entry.type === "DIRECTORY")
284
+ return true;
285
+ const included = !filter.include || filter.include.match(entry.name).length > 0;
286
+ if (!included)
287
+ return false;
288
+ // include/exclude 同时命中时,exclude 优先。
289
+ return !filter.exclude || filter.exclude.match(entry.name).length === 0;
290
+ });
291
+ }
237
292
  function encodeCursor(displayPath, entry) {
238
293
  return Buffer.from(JSON.stringify({ v: 1, path: displayPath, key: entrySortKey(entry) }), "utf8").toString("base64url");
239
294
  }
@@ -578,7 +633,7 @@ function fitTreeResponse(base, displayPath, page) {
578
633
  let nextCursor = page.nextCursor;
579
634
  while (true) {
580
635
  const response = { ...base, success: true, entries, nextCursor };
581
- if (responseBytes(response) <= MAX_WS_RESPONSE_BYTES)
636
+ if (responseBytes(response) <= WS_MAX_MESSAGE_BYTES)
582
637
  return response;
583
638
  const removed = entries.pop();
584
639
  if (!removed || entries.length === 0) {
@@ -602,7 +657,8 @@ async function executeWorkspaceEvent(ctx, rawParams) {
602
657
  const target = await resolveLocalTarget(ctx, request, resolvedPath);
603
658
  return listPhysicalDirectory(target.realRoot, target.target, resolvedPath.displayPath);
604
659
  })();
605
- const page = paginateEntries(entries, resolvedPath.displayPath, request.limit, request.cursor);
660
+ const filteredEntries = filterWorkspaceEntries(entries, request.fileFilter);
661
+ const page = paginateEntries(filteredEntries, resolvedPath.displayPath, request.limit, request.cursor);
606
662
  const response = fitTreeResponse(base, resolvedPath.displayPath, page);
607
663
  ctx.log.info(`${ctx.logPrefix} [workspace] event=TREE_REQUEST groupId=${request.groupId} ` +
608
664
  `relayId=${clipPath(request.relayId)} path=${clipPath(resolvedPath.displayPath)} entries=${response.entries.length}`);
@@ -614,8 +670,8 @@ async function executeWorkspaceEvent(ctx, rawParams) {
614
670
  const readResult = await readTextFile(target.target, path.posix.basename(resolvedPath.displayPath));
615
671
  const { sourceEncoding, ...file } = readResult;
616
672
  const response = { ...base, success: true, ...file };
617
- if (responseBytes(response) > MAX_WS_RESPONSE_BYTES) {
618
- throw new WorkspaceEventError("FILE_TOO_LARGE", "文件编码后超过WebSocket返回上限");
673
+ if (responseBytes(response) > WS_MAX_MESSAGE_BYTES) {
674
+ throw new WorkspaceEventError("FILE_TOO_LARGE", "文件编码后超过WebSocket逻辑消息上限");
619
675
  }
620
676
  ctx.log.info(`${ctx.logPrefix} [workspace] event=FILE_REQUEST groupId=${request.groupId} ` +
621
677
  `relayId=${clipPath(request.relayId)} path=${clipPath(resolvedPath.displayPath)} ` +