@xgjktech/xg_cwork_im 1.16.44 → 1.17.0

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 (59) hide show
  1. package/README.md +433 -433
  2. package/dist/index.d.ts.map +1 -1
  3. package/dist/index.js +27 -0
  4. package/dist/index.js.map +1 -1
  5. package/dist/src/deliver-text.test.js +22 -22
  6. package/dist/src/dispatch-mentioned-reply.d.ts.map +1 -1
  7. package/dist/src/dispatch-mentioned-reply.js +8 -0
  8. package/dist/src/dispatch-mentioned-reply.js.map +1 -1
  9. package/dist/src/plan-blocked-notice.d.ts +15 -0
  10. package/dist/src/plan-blocked-notice.d.ts.map +1 -0
  11. package/dist/src/plan-blocked-notice.js +28 -0
  12. package/dist/src/plan-blocked-notice.js.map +1 -0
  13. package/dist/src/plan-blocked-notice.test.d.ts +2 -0
  14. package/dist/src/plan-blocked-notice.test.d.ts.map +1 -0
  15. package/dist/src/plan-blocked-notice.test.js +80 -0
  16. package/dist/src/plan-blocked-notice.test.js.map +1 -0
  17. package/dist/src/plan-event-subscription.d.ts +26 -0
  18. package/dist/src/plan-event-subscription.d.ts.map +1 -0
  19. package/dist/src/plan-event-subscription.js +121 -0
  20. package/dist/src/plan-event-subscription.js.map +1 -0
  21. package/dist/src/plan-event-subscription.test.d.ts +2 -0
  22. package/dist/src/plan-event-subscription.test.d.ts.map +1 -0
  23. package/dist/src/plan-event-subscription.test.js +257 -0
  24. package/dist/src/plan-event-subscription.test.js.map +1 -0
  25. package/dist/src/plan-session-registry.d.ts +24 -0
  26. package/dist/src/plan-session-registry.d.ts.map +1 -0
  27. package/dist/src/plan-session-registry.js +84 -0
  28. package/dist/src/plan-session-registry.js.map +1 -0
  29. package/dist/src/plan-session-registry.test.d.ts +2 -0
  30. package/dist/src/plan-session-registry.test.d.ts.map +1 -0
  31. package/dist/src/plan-session-registry.test.js +109 -0
  32. package/dist/src/plan-session-registry.test.js.map +1 -0
  33. package/dist/src/plan-store-access.d.ts +16 -0
  34. package/dist/src/plan-store-access.d.ts.map +1 -0
  35. package/dist/src/plan-store-access.js +76 -0
  36. package/dist/src/plan-store-access.js.map +1 -0
  37. package/dist/src/plan-store-access.test.d.ts +2 -0
  38. package/dist/src/plan-store-access.test.d.ts.map +1 -0
  39. package/dist/src/plan-store-access.test.js +139 -0
  40. package/dist/src/plan-store-access.test.js.map +1 -0
  41. package/dist/src/plan-tool-middleware.d.ts +20 -0
  42. package/dist/src/plan-tool-middleware.d.ts.map +1 -0
  43. package/dist/src/plan-tool-middleware.js +99 -0
  44. package/dist/src/plan-tool-middleware.js.map +1 -0
  45. package/dist/src/plan-tool-middleware.test.d.ts +2 -0
  46. package/dist/src/plan-tool-middleware.test.d.ts.map +1 -0
  47. package/dist/src/plan-tool-middleware.test.js +329 -0
  48. package/dist/src/plan-tool-middleware.test.js.map +1 -0
  49. package/dist/src/plan-tool-result.d.ts +20 -0
  50. package/dist/src/plan-tool-result.d.ts.map +1 -0
  51. package/dist/src/plan-tool-result.js +78 -0
  52. package/dist/src/plan-tool-result.js.map +1 -0
  53. package/dist/src/plan-tool-result.test.d.ts +2 -0
  54. package/dist/src/plan-tool-result.test.d.ts.map +1 -0
  55. package/dist/src/plan-tool-result.test.js +107 -0
  56. package/dist/src/plan-tool-result.test.js.map +1 -0
  57. package/dist/src/turn-deliver-buffer.test.js +25 -25
  58. package/openclaw.plugin.json +27 -26
  59. package/package.json +76 -72
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAUH,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,gBAAgB,CAAC;AAE5D,OAAO,EAAE,uCAAuC,EAAE,MAAM,oCAAoC,CAAC;AAsB7F,QAAA,MAAM,MAAM,EAAE,qBAsEb,CAAC;AAEF,eAAe,MAAM,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAcH,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,gBAAgB,CAAC;AAE5D,OAAO,EAAE,uCAAuC,EAAE,MAAM,oCAAoC,CAAC;AAsB7F,QAAA,MAAM,MAAM,EAAE,qBAgGb,CAAC;AAEF,eAAe,MAAM,CAAC"}
package/dist/index.js CHANGED
@@ -10,6 +10,10 @@ import { registerPerMessageModelHook } from "./src/register-per-message-model-ho
10
10
  import { buildSendFileTool } from "./src/send-file-tool.js";
11
11
  import { buildSendGroupMessageTool } from "./src/send-group-message-tool.js";
12
12
  import { setPluginApi, startMonitor, markSubagentCompleted } from "./src/subagent-monitor.js";
13
+ import { registerPlanEventSubscription } from "./src/plan-event-subscription.js";
14
+ import { getPlanById, setPlanStateDir } from "./src/plan-store-access.js";
15
+ import { createPlanToolResultMiddleware } from "./src/plan-tool-middleware.js";
16
+ import { sendTextMessage } from "./src/send-service.js";
13
17
  export { XG_IM_RECOMMENDED_CHANNEL_SYSTEM_PROMPT } from "./src/recommended-system-prompt.js";
14
18
  const plugin = {
15
19
  id: "xg_cwork_im",
@@ -41,6 +45,12 @@ const plugin = {
41
45
  markSubagentCompleted(event.targetSessionKey, event.runId);
42
46
  }
43
47
  });
48
+ try {
49
+ setPlanStateDir(api.runtime.state.resolveStateDir());
50
+ }
51
+ catch (err) {
52
+ console.warn(`[xg_cwork_im] [plan] setPlanStateDir failed: ${String(err)}`);
53
+ }
44
54
  // 必须使用工厂 `(ctx) => tool`:OpenClaw 文档化行为为「静态工具等价于 (_ctx)=>tool」,会丢弃每回合的
45
55
  // runtimeConfig / agentAccountId / requesterSenderId;工厂才能在执行前重建工具并打通鉴权与多账户路由。
46
56
  const snapshot = extractXgCworkImConfig(api.config);
@@ -60,6 +70,23 @@ const plugin = {
60
70
  requesterSenderId: ctx.requesterSenderId ?? undefined,
61
71
  deliveryContext: ctx.deliveryContext ?? undefined,
62
72
  }), { optional: true });
73
+ try {
74
+ api.registerAgentToolResultMiddleware(createPlanToolResultMiddleware({
75
+ sendText: async (target, content) => {
76
+ await sendTextMessage(snapshot, target.token, target.groupId, content);
77
+ },
78
+ getPlanById,
79
+ }), { runtimes: ["openclaw"] });
80
+ }
81
+ catch (err) {
82
+ console.warn(`[xg_cwork_im] [plan] registerAgentToolResultMiddleware failed: ${String(err)}`);
83
+ }
84
+ try {
85
+ registerPlanEventSubscription(api, snapshot);
86
+ }
87
+ catch (err) {
88
+ console.warn(`[xg_cwork_im] [plan] registerPlanEventSubscription failed: ${String(err)}`);
89
+ }
63
90
  }
64
91
  else {
65
92
  console.warn("[xg_cwork_im] channel config not found, skipping tool registration");
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":"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"}
@@ -2,30 +2,30 @@ import assert from "node:assert/strict";
2
2
  import { describe, it } from "node:test";
3
3
  import { normalizeDeliverComparableText, shouldOmitDuplicateFileCaption, shouldSuppressDuplicateTextDeliver, stripMediaDirectiveLines, stripModelUsageFooter, } from "./deliver-text.js";
4
4
  // 生产 incident 回归:侯桐 2026-07-10 终态三连发(空行/footer 微差)
5
- const HOUTONG_BODY_LOOSE = `确实是这个问题:昨天那版虽然用了内嵌 SVG,但你现在的文档预览器没有把 SVG 正常渲染出来,所以流程看不到。
6
-
7
- 我已经重新生成了一版**纯 Markdown 可读版**:
8
-
9
- - 不用 SVG
10
- - 不用 Mermaid
11
- - 不用图片
12
- - 全部用 Markdown 表格 + 文本流程图 + 状态表表达
13
-
14
- 这样在 IM 文件预览里也能直接看懂完整流程。
15
-
16
- 新文件:
17
-
5
+ const HOUTONG_BODY_LOOSE = `确实是这个问题:昨天那版虽然用了内嵌 SVG,但你现在的文档预览器没有把 SVG 正常渲染出来,所以流程看不到。
6
+
7
+ 我已经重新生成了一版**纯 Markdown 可读版**:
8
+
9
+ - 不用 SVG
10
+ - 不用 Mermaid
11
+ - 不用图片
12
+ - 全部用 Markdown 表格 + 文本流程图 + 状态表表达
13
+
14
+ 这样在 IM 文件预览里也能直接看懂完整流程。
15
+
16
+ 新文件:
17
+
18
18
  -----`;
19
- const HOUTONG_BODY_TIGHT = `确实是这个问题:昨天那版虽然用了内嵌 SVG,但你现在的文档预览器没有把 SVG 正常渲染出来,所以流程看不到。
20
- 我已经重新生成了一版**纯 Markdown 可读版**:
21
- - 不用 SVG
22
- - 不用 Mermaid
23
- - 不用图片
24
- - 全部用 Markdown 表格 + 文本流程图 + 状态表表达
25
- 这样在 IM 文件预览里也能直接看懂完整流程。
19
+ const HOUTONG_BODY_TIGHT = `确实是这个问题:昨天那版虽然用了内嵌 SVG,但你现在的文档预览器没有把 SVG 正常渲染出来,所以流程看不到。
20
+ 我已经重新生成了一版**纯 Markdown 可读版**:
21
+ - 不用 SVG
22
+ - 不用 Mermaid
23
+ - 不用图片
24
+ - 全部用 Markdown 表格 + 文本流程图 + 状态表表达
25
+ 这样在 IM 文件预览里也能直接看懂完整流程。
26
26
  新文件:`;
27
- const HOUTONG_BODY_WITH_FOOTER = `${HOUTONG_BODY_TIGHT}
28
-
27
+ const HOUTONG_BODY_WITH_FOOTER = `${HOUTONG_BODY_TIGHT}
28
+
29
29
  _🟡 ↑111k ↓164 · 63%ctx · openai/gpt-5.5_`;
30
30
  describe("stripMediaDirectiveLines", () => {
31
31
  it("removes MEDIA directive lines", () => {
@@ -1 +1 @@
1
- {"version":3,"file":"dispatch-mentioned-reply.d.ts","sourceRoot":"","sources":["../../src/dispatch-mentioned-reply.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAC1D,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;AACtD,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAC;AAC/C,OAAO,EAA2C,KAAK,cAAc,EAAE,MAAM,wBAAwB,CAAC;AAwCtG,OAAO,KAAK,EAAE,WAAW,EAAE,eAAe,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AA+F3E,4EAA4E;AAC5E,wBAAsB,sBAAsB,CAAC,IAAI,EAAE;IAC/C,EAAE,EAAE,GAAG,CAAC;IACR,GAAG,EAAE,cAAc,CAAC;IACpB,MAAM,EAAE,UAAU,CAAC;IACnB,GAAG,EAAE,MAAM,CAAC;IACZ,SAAS,EAAE,MAAM,CAAC;IAClB,KAAK,EAAE;QAAE,UAAU,EAAE,MAAM,CAAA;KAAE,CAAC;IAC9B,UAAU,EAAE,OAAO,CAAC;IACpB,MAAM,EAAE,eAAe,CAAC;IACxB,eAAe,EAAE,WAAW,CAAC;IAC7B,YAAY,EAAE,cAAc,CAAC;IAC7B,uDAAuD;IACvD,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,4EAA4E;IAC5E,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,qCAAqC;IACrC,cAAc,CAAC,EAAE,cAAc,CAAC;CACnC,GAAG,OAAO,CAAC,IAAI,CAAC,CAu5BhB"}
1
+ {"version":3,"file":"dispatch-mentioned-reply.d.ts","sourceRoot":"","sources":["../../src/dispatch-mentioned-reply.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAC1D,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;AACtD,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAC;AAC/C,OAAO,EAA2C,KAAK,cAAc,EAAE,MAAM,wBAAwB,CAAC;AAyCtG,OAAO,KAAK,EAAE,WAAW,EAAE,eAAe,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AA+F3E,4EAA4E;AAC5E,wBAAsB,sBAAsB,CAAC,IAAI,EAAE;IAC/C,EAAE,EAAE,GAAG,CAAC;IACR,GAAG,EAAE,cAAc,CAAC;IACpB,MAAM,EAAE,UAAU,CAAC;IACnB,GAAG,EAAE,MAAM,CAAC;IACZ,SAAS,EAAE,MAAM,CAAC;IAClB,KAAK,EAAE;QAAE,UAAU,EAAE,MAAM,CAAA;KAAE,CAAC;IAC9B,UAAU,EAAE,OAAO,CAAC;IACpB,MAAM,EAAE,eAAe,CAAC;IACxB,eAAe,EAAE,WAAW,CAAC;IAC7B,YAAY,EAAE,cAAc,CAAC;IAC7B,uDAAuD;IACvD,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,4EAA4E;IAC5E,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,qCAAqC;IACrC,cAAc,CAAC,EAAE,cAAc,CAAC;CACnC,GAAG,OAAO,CAAC,IAAI,CAAC,CA+5BhB"}
@@ -15,6 +15,7 @@ import { isDeliverPayloadSendable, snapshotSupersedesBufferText, TurnDeliverBuff
15
15
  import { buildRunUsageFromSessionEntry, hasReportableUsage, toImStreamRunUsageData } from "./run-usage.js";
16
16
  import { readSessionUsageFields } from "./run-usage-session.js";
17
17
  import { setWsClient } from "./subagent-monitor.js";
18
+ import { registerToolCallTarget } from "./plan-session-registry.js";
18
19
  /** WS `displayText` 过长封顶(避免网关/客户端溢出) */
19
20
  const WS_DISPLAY_TEXT_MAX = 200;
20
21
  /** 进度 `summary` 封顶(与网关约定一致) */
@@ -437,6 +438,13 @@ export async function dispatchMentionedReply(args) {
437
438
  }
438
439
  await flushThinkingWsOnce("before_tool");
439
440
  toolNameStack.push(name);
441
+ if (typeof p.toolCallId === "string" && p.toolCallId) {
442
+ registerToolCallTarget(p.toolCallId, {
443
+ groupId: params.groupId,
444
+ token: currentIdentity.token,
445
+ sessionKey: route.sessionKey,
446
+ });
447
+ }
440
448
  if (name.includes("sessions_spawn") && !subagentNotificationSent) {
441
449
  subagentNotificationSent = true;
442
450
  try {
@@ -1 +1 @@
1
- {"version":3,"file":"dispatch-mentioned-reply.js","sourceRoot":"","sources":["../../src/dispatch-mentioned-reply.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"dispatch-mentioned-reply.js","sourceRoot":"","sources":["../../src/dispatch-mentioned-reply.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,15 @@
1
+ import type { Plan } from "@xgjktech/xg-openclaw-shared";
2
+ export interface BlockedTaskNotice {
3
+ /** 去重键:`${planId}::${taskIndex}::${note}` */
4
+ key: string;
5
+ taskIndex: number;
6
+ taskTitle: string;
7
+ note: string;
8
+ /** 推群文案 */
9
+ content: string;
10
+ }
11
+ /** 扫描 plan 中全部 blocked task,产出待推送通知(顺序与 tasks 下标一致) */
12
+ export declare function collectBlockedNotices(plan: Plan): BlockedTaskNotice[];
13
+ /** 普通推进的进度文案,如「计划「X」进度:已完成 2/5」 */
14
+ export declare function buildPlanProgressText(plan: Plan): string;
15
+ //# sourceMappingURL=plan-blocked-notice.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"plan-blocked-notice.d.ts","sourceRoot":"","sources":["../../src/plan-blocked-notice.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,8BAA8B,CAAC;AAEzD,MAAM,WAAW,iBAAiB;IAC9B,6CAA6C;IAC7C,GAAG,EAAE,MAAM,CAAC;IACZ,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,IAAI,EAAE,MAAM,CAAC;IACb,WAAW;IACX,OAAO,EAAE,MAAM,CAAC;CACnB;AAED,uDAAuD;AACvD,wBAAgB,qBAAqB,CAAC,IAAI,EAAE,IAAI,GAAG,iBAAiB,EAAE,CAqBrE;AAED,mCAAmC;AACnC,wBAAgB,qBAAqB,CAAC,IAAI,EAAE,IAAI,GAAG,MAAM,CAIxD"}
@@ -0,0 +1,28 @@
1
+ /** 扫描 plan 中全部 blocked task,产出待推送通知(顺序与 tasks 下标一致) */
2
+ export function collectBlockedNotices(plan) {
3
+ const notices = [];
4
+ plan.tasks.forEach((task, taskIndex) => {
5
+ if (task.status !== "blocked") {
6
+ return;
7
+ }
8
+ const note = task.note?.trim() ?? "";
9
+ if (note === "") {
10
+ return;
11
+ }
12
+ notices.push({
13
+ key: `${plan.planId}::${taskIndex}::${note}`,
14
+ taskIndex,
15
+ taskTitle: task.title,
16
+ note,
17
+ content: `计划「${plan.goal}」卡在任务「${task.title}」:${note}\n需要人工介入才能继续。`,
18
+ });
19
+ });
20
+ return notices;
21
+ }
22
+ /** 普通推进的进度文案,如「计划「X」进度:已完成 2/5」 */
23
+ export function buildPlanProgressText(plan) {
24
+ const total = plan.tasks.length;
25
+ const completed = plan.tasks.filter((task) => task.status === "completed").length;
26
+ return `计划「${plan.goal}」进度:已完成 ${completed}/${total}`;
27
+ }
28
+ //# sourceMappingURL=plan-blocked-notice.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"plan-blocked-notice.js","sourceRoot":"","sources":["../../src/plan-blocked-notice.ts"],"names":[],"mappings":"AAYA,uDAAuD;AACvD,MAAM,UAAU,qBAAqB,CAAC,IAAU;IAC5C,MAAM,OAAO,GAAwB,EAAE,CAAC;IAExC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,SAAS,EAAE,EAAE;QACnC,IAAI,IAAI,CAAC,MAAM,KAAK,SAAS,EAAE,CAAC;YAC5B,OAAO;QACX,CAAC;QACD,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC;QACrC,IAAI,IAAI,KAAK,EAAE,EAAE,CAAC;YACd,OAAO;QACX,CAAC;QACD,OAAO,CAAC,IAAI,CAAC;YACT,GAAG,EAAE,GAAG,IAAI,CAAC,MAAM,KAAK,SAAS,KAAK,IAAI,EAAE;YAC5C,SAAS;YACT,SAAS,EAAE,IAAI,CAAC,KAAK;YACrB,IAAI;YACJ,OAAO,EAAE,MAAM,IAAI,CAAC,IAAI,SAAS,IAAI,CAAC,KAAK,KAAK,IAAI,eAAe;SACtE,CAAC,CAAC;IACP,CAAC,CAAC,CAAC;IAEH,OAAO,OAAO,CAAC;AACnB,CAAC;AAED,mCAAmC;AACnC,MAAM,UAAU,qBAAqB,CAAC,IAAU;IAC5C,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC;IAChC,MAAM,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,MAAM,KAAK,WAAW,CAAC,CAAC,MAAM,CAAC;IAClF,OAAO,MAAM,IAAI,CAAC,IAAI,WAAW,SAAS,IAAI,KAAK,EAAE,CAAC;AAC1D,CAAC"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=plan-blocked-notice.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"plan-blocked-notice.test.d.ts","sourceRoot":"","sources":["../../src/plan-blocked-notice.test.ts"],"names":[],"mappings":""}
@@ -0,0 +1,80 @@
1
+ import assert from "node:assert/strict";
2
+ import { describe, it } from "node:test";
3
+ import { buildPlanProgressText, collectBlockedNotices } from "./plan-blocked-notice.js";
4
+ function makePlan(overrides = {}) {
5
+ return {
6
+ planId: "plan-1",
7
+ goal: "迁移配置到新版本",
8
+ createdAt: "2026-07-27T00:00:00.000Z",
9
+ updatedAt: "2026-07-27T00:00:00.000Z",
10
+ tasks: [],
11
+ ...overrides,
12
+ };
13
+ }
14
+ describe("collectBlockedNotices", () => {
15
+ it("returns an empty array when there is no blocked task", () => {
16
+ const plan = makePlan({
17
+ tasks: [{ title: "t1", status: "pending" }, { title: "t2", status: "completed" }],
18
+ });
19
+ assert.deepEqual(collectBlockedNotices(plan), []);
20
+ });
21
+ it("collects multiple co-existing blocked tasks with distinct keys", () => {
22
+ const plan = makePlan({
23
+ tasks: [
24
+ { title: "备份旧配置", status: "blocked", note: "缺少权限" },
25
+ { title: "校验数据", status: "pending" },
26
+ { title: "切换流量", status: "blocked", note: "依赖未就绪" },
27
+ ],
28
+ });
29
+ const notices = collectBlockedNotices(plan);
30
+ assert.equal(notices.length, 2);
31
+ assert.notEqual(notices[0].key, notices[1].key);
32
+ assert.equal(notices[0].taskIndex, 0);
33
+ assert.equal(notices[1].taskIndex, 2);
34
+ });
35
+ it("produces the exact push copy including the newline", () => {
36
+ const plan = makePlan({
37
+ goal: "迁移配置到新版本",
38
+ tasks: [{ title: "备份旧配置", status: "blocked", note: "缺少权限" }],
39
+ });
40
+ const [notice] = collectBlockedNotices(plan);
41
+ assert.equal(notice.content, "计划「迁移配置到新版本」卡在任务「备份旧配置」:缺少权限\n需要人工介入才能继续。");
42
+ });
43
+ it("skips a blocked task whose note is missing or blank", () => {
44
+ const plan = makePlan({
45
+ tasks: [
46
+ { title: "无 note", status: "blocked" },
47
+ { title: "空白 note", status: "blocked", note: " " },
48
+ ],
49
+ });
50
+ assert.deepEqual(collectBlockedNotices(plan), []);
51
+ });
52
+ it("uses the same key for a repeated identical blocked snapshot, enabling dedup", () => {
53
+ const plan = makePlan({
54
+ tasks: [{ title: "备份旧配置", status: "blocked", note: "缺少权限" }],
55
+ });
56
+ const first = collectBlockedNotices(plan);
57
+ const second = collectBlockedNotices(plan);
58
+ assert.equal(first[0].key, second[0].key);
59
+ });
60
+ });
61
+ describe("buildPlanProgressText", () => {
62
+ it("includes the completed/total count", () => {
63
+ const plan = makePlan({
64
+ goal: "迁移配置到新版本",
65
+ tasks: [
66
+ { title: "t1", status: "completed" },
67
+ { title: "t2", status: "completed" },
68
+ { title: "t3", status: "in_progress" },
69
+ { title: "t4", status: "pending" },
70
+ { title: "t5", status: "pending" },
71
+ ],
72
+ });
73
+ assert.equal(buildPlanProgressText(plan), "计划「迁移配置到新版本」进度:已完成 2/5");
74
+ });
75
+ it("handles zero tasks", () => {
76
+ const plan = makePlan({ tasks: [] });
77
+ assert.equal(buildPlanProgressText(plan), "计划「迁移配置到新版本」进度:已完成 0/0");
78
+ });
79
+ });
80
+ //# sourceMappingURL=plan-blocked-notice.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"plan-blocked-notice.test.js","sourceRoot":"","sources":["../../src/plan-blocked-notice.test.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,26 @@
1
+ import type { OpenClawPluginApi } from "openclaw/plugin-sdk";
2
+ import type { XgImConfig } from "./types.js";
3
+ export interface PlanEventSubscriptionDeps {
4
+ /** 推群实现,真实入口内走 sendTextMessage;测试可注入假实现观察调用 */
5
+ sendText: (groupId: string, content: string) => Promise<void>;
6
+ }
7
+ type SubscriptionHandle = Parameters<OpenClawPluginApi["agent"]["events"]["registerAgentEventSubscription"]>[0]["handle"];
8
+ /**
9
+ * 构造事件订阅的 `handle` 回调,可独立单测(不依赖真实 api/网络)。
10
+ *
11
+ * 降级纪律同 middleware:handle 内全身 try/catch,绝不外抛(与 middleware 同进程)。
12
+ *
13
+ * ⚠️ 当前 OpenClaw 版本下 xg-harness-tools 恒因缺少 runId 而不发送此事件,
14
+ * 此 handle 不会被触发,保留以便未来该限制解除后零改动生效。
15
+ * 不得将其作为任何正确性判断依据——权威状态来自 TASK-2 的 SQLite 只读反查。
16
+ */
17
+ export declare function createPlanEventHandler(deps: PlanEventSubscriptionDeps): SubscriptionHandle;
18
+ /**
19
+ * 注册计划事件订阅(spec §1,前瞻性预留)。
20
+ *
21
+ * ⚠️ 当前 OpenClaw 版本下 xg-harness-tools 恒因缺少 runId 而不发送此事件,
22
+ * 此订阅不会被触发,保留以便未来该限制解除后零改动生效。
23
+ */
24
+ export declare function registerPlanEventSubscription(api: OpenClawPluginApi, config: XgImConfig): void;
25
+ export {};
26
+ //# sourceMappingURL=plan-event-subscription.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"plan-event-subscription.d.ts","sourceRoot":"","sources":["../../src/plan-event-subscription.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AAI7D,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AAiF7C,MAAM,WAAW,yBAAyB;IACtC,+CAA+C;IAC/C,QAAQ,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;CACjE;AAED,KAAK,kBAAkB,GAAG,UAAU,CAChC,iBAAiB,CAAC,OAAO,CAAC,CAAC,QAAQ,CAAC,CAAC,gCAAgC,CAAC,CACzE,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC;AAEf;;;;;;;;GAQG;AACH,wBAAgB,sBAAsB,CAAC,IAAI,EAAE,yBAAyB,GAAG,kBAAkB,CA0B1F;AAED;;;;;GAKG;AACH,wBAAgB,6BAA6B,CAAC,GAAG,EAAE,iBAAiB,EAAE,MAAM,EAAE,UAAU,GAAG,IAAI,CAiB9F"}
@@ -0,0 +1,121 @@
1
+ import { isPlanEventPayload, planEventStream } from "@xgjktech/xg-openclaw-shared";
2
+ import { getToken } from "./auth.js";
3
+ import { sendTextMessage } from "./send-service.js";
4
+ /**
5
+ * xg-harness-tools 的 plugin id:streams 过滤需要与其 openclaw.plugin.json 的 id 一致。
6
+ */
7
+ const HARNESS_PLUGIN_ID = "xg-harness-tools";
8
+ const LOG_PREFIX = "[xg_cwork_im] [plan-event-subscription]";
9
+ /**
10
+ * `deliveryContext` 类型在 `@xgjktech/xg-openclaw-shared` 侧声明为 `unknown`(跨插件契约不引入
11
+ * openclaw 依赖),运行时实际形状是 openclaw `DeliveryContext`(`{ to?, accountId?, ... }`),
12
+ * 这里只做安全的结构读取,不假设其余字段存在。
13
+ */
14
+ function resolveFromDeliveryContext(deliveryContext) {
15
+ if (typeof deliveryContext !== "object" || deliveryContext === null) {
16
+ return undefined;
17
+ }
18
+ const to = deliveryContext.to;
19
+ if (typeof to !== "string" || to === "") {
20
+ return undefined;
21
+ }
22
+ return { groupId: to };
23
+ }
24
+ /**
25
+ * `agentAccountId`/`messageChannel` → IM 侧 groupId 的反查目前没有映射表
26
+ * (spec §1.4:若映射彻底无法建立,该次事件应放弃推群,不影响正确性,
27
+ * 因为主感知路径本就是 SQLite 反查而非事件)。保留函数形态与 spec 一致,
28
+ * 便于未来接入映射表时零改动补上实现。
29
+ */
30
+ function resolveFromAccountAndChannel(_agentAccountId, _messageChannel) {
31
+ return undefined;
32
+ }
33
+ /**
34
+ * 路由定位(spec §1.2 优先级):
35
+ * 1. `payload.deliveryContext`
36
+ * 2. `payload.agentAccountId` / `payload.messageChannel`
37
+ * 3. 备用:`payload.sessionKey ?? event.sessionKey`(当前无 sessionKey→群 映射,直接放弃)
38
+ *
39
+ * ⚠️ 这些路由字段都在 `event.data`(即 payload)内部,`AgentEventPayload` 顶层没有
40
+ * `deliveryContext`/`agentAccountId`/`messageChannel`(DESIGN.md §3 已编译级确认),
41
+ * 只有 `sessionKey` 在顶层也存在,用作备用兜底的次优先级来源。
42
+ */
43
+ function resolveDeliveryTarget(payload, event) {
44
+ if (payload.deliveryContext !== undefined) {
45
+ return resolveFromDeliveryContext(payload.deliveryContext);
46
+ }
47
+ if (payload.agentAccountId !== undefined || payload.messageChannel !== undefined) {
48
+ return resolveFromAccountAndChannel(payload.agentAccountId, payload.messageChannel);
49
+ }
50
+ const sessionKey = payload.sessionKey ?? event.sessionKey;
51
+ if (sessionKey === undefined) {
52
+ return undefined;
53
+ }
54
+ // 当前无 sessionKey → 群 的映射表(spec §1.4:若没有可以不建,直接放弃推群)
55
+ return undefined;
56
+ }
57
+ function buildBlockedNoticeText(payload) {
58
+ if (payload.taskStatus !== "blocked" || payload.blockedNote === undefined) {
59
+ return undefined;
60
+ }
61
+ const note = payload.blockedNote.trim();
62
+ if (note === "") {
63
+ return undefined;
64
+ }
65
+ return `计划「${payload.goal}」卡在任务「${payload.taskTitle}」:${note}\n需要人工介入才能继续。`;
66
+ }
67
+ /**
68
+ * 构造事件订阅的 `handle` 回调,可独立单测(不依赖真实 api/网络)。
69
+ *
70
+ * 降级纪律同 middleware:handle 内全身 try/catch,绝不外抛(与 middleware 同进程)。
71
+ *
72
+ * ⚠️ 当前 OpenClaw 版本下 xg-harness-tools 恒因缺少 runId 而不发送此事件,
73
+ * 此 handle 不会被触发,保留以便未来该限制解除后零改动生效。
74
+ * 不得将其作为任何正确性判断依据——权威状态来自 TASK-2 的 SQLite 只读反查。
75
+ */
76
+ export function createPlanEventHandler(deps) {
77
+ return async (event, _ctx) => {
78
+ try {
79
+ if (!isPlanEventPayload(event.data)) {
80
+ return;
81
+ }
82
+ const payload = event.data;
83
+ const target = resolveDeliveryTarget(payload, { sessionKey: event.sessionKey });
84
+ if (!target) {
85
+ console.warn(`${LOG_PREFIX} 无法定位投递目标,放弃本次推群 planId=${payload.planId} taskIndex=${payload.taskIndex}`);
86
+ return;
87
+ }
88
+ const content = buildBlockedNoticeText(payload);
89
+ if (!content) {
90
+ return;
91
+ }
92
+ await deps.sendText(target.groupId, content);
93
+ }
94
+ catch (err) {
95
+ console.warn(`${LOG_PREFIX} handle 内部异常,已吞: ${String(err)}`);
96
+ }
97
+ };
98
+ }
99
+ /**
100
+ * 注册计划事件订阅(spec §1,前瞻性预留)。
101
+ *
102
+ * ⚠️ 当前 OpenClaw 版本下 xg-harness-tools 恒因缺少 runId 而不发送此事件,
103
+ * 此订阅不会被触发,保留以便未来该限制解除后零改动生效。
104
+ */
105
+ export function registerPlanEventSubscription(api, config) {
106
+ const handle = createPlanEventHandler({
107
+ sendText: async (groupId, content) => {
108
+ const identity = await getToken(config);
109
+ await sendTextMessage(config, identity.token, groupId, content);
110
+ },
111
+ });
112
+ api.agent.events.registerAgentEventSubscription({
113
+ id: "xg-cwork-im-plan-progress",
114
+ description: "订阅 xg-harness-tools 计划进度事件,推送到群。前瞻性预留:" +
115
+ "当前 OpenClaw 版本下 xg-harness-tools 恒因缺少 runId 而不发送此事件," +
116
+ "此订阅暂不会被触发,保留以便未来该限制解除后零改动生效。",
117
+ streams: [planEventStream(HARNESS_PLUGIN_ID)],
118
+ handle,
119
+ });
120
+ }
121
+ //# sourceMappingURL=plan-event-subscription.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"plan-event-subscription.js","sourceRoot":"","sources":["../../src/plan-event-subscription.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=plan-event-subscription.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"plan-event-subscription.test.d.ts","sourceRoot":"","sources":["../../src/plan-event-subscription.test.ts"],"names":[],"mappings":""}