botmux 2.33.0 → 2.33.1

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 (281) hide show
  1. package/README.en.md +12 -1
  2. package/README.md +45 -1
  3. package/dist/adapters/cli/claude-code.d.ts.map +1 -1
  4. package/dist/adapters/cli/claude-code.js +11 -0
  5. package/dist/adapters/cli/claude-code.js.map +1 -1
  6. package/dist/cli/bots-list-output.d.ts +21 -0
  7. package/dist/cli/bots-list-output.d.ts.map +1 -0
  8. package/dist/cli/bots-list-output.js +23 -0
  9. package/dist/cli/bots-list-output.js.map +1 -0
  10. package/dist/cli/workflow.d.ts +13 -0
  11. package/dist/cli/workflow.d.ts.map +1 -0
  12. package/dist/cli/workflow.js +781 -0
  13. package/dist/cli/workflow.js.map +1 -0
  14. package/dist/cli.js +69 -14
  15. package/dist/cli.js.map +1 -1
  16. package/dist/core/command-handler.d.ts.map +1 -1
  17. package/dist/core/command-handler.js +211 -4
  18. package/dist/core/command-handler.js.map +1 -1
  19. package/dist/core/session-manager.d.ts +6 -1
  20. package/dist/core/session-manager.d.ts.map +1 -1
  21. package/dist/core/session-manager.js +22 -12
  22. package/dist/core/session-manager.js.map +1 -1
  23. package/dist/core/worker-pool.d.ts +13 -0
  24. package/dist/core/worker-pool.d.ts.map +1 -1
  25. package/dist/core/worker-pool.js +100 -6
  26. package/dist/core/worker-pool.js.map +1 -1
  27. package/dist/daemon.d.ts +3 -0
  28. package/dist/daemon.d.ts.map +1 -1
  29. package/dist/daemon.js +884 -3
  30. package/dist/daemon.js.map +1 -1
  31. package/dist/dashboard/auth.d.ts +36 -0
  32. package/dist/dashboard/auth.d.ts.map +1 -1
  33. package/dist/dashboard/auth.js +22 -0
  34. package/dist/dashboard/auth.js.map +1 -1
  35. package/dist/dashboard/web/app.js +20 -1
  36. package/dist/dashboard/web/app.js.map +1 -1
  37. package/dist/dashboard/web/i18n.d.ts.map +1 -1
  38. package/dist/dashboard/web/i18n.js +356 -0
  39. package/dist/dashboard/web/i18n.js.map +1 -1
  40. package/dist/dashboard/web/workflow-catalog.d.ts +2 -0
  41. package/dist/dashboard/web/workflow-catalog.d.ts.map +1 -0
  42. package/dist/dashboard/web/workflow-catalog.js +323 -0
  43. package/dist/dashboard/web/workflow-catalog.js.map +1 -0
  44. package/dist/dashboard/web/workflows.d.ts +2 -0
  45. package/dist/dashboard/web/workflows.d.ts.map +1 -0
  46. package/dist/dashboard/web/workflows.js +1618 -0
  47. package/dist/dashboard/web/workflows.js.map +1 -0
  48. package/dist/dashboard/workflow-api.d.ts +23 -0
  49. package/dist/dashboard/workflow-api.d.ts.map +1 -0
  50. package/dist/dashboard/workflow-api.js +463 -0
  51. package/dist/dashboard/workflow-api.js.map +1 -0
  52. package/dist/dashboard-web/app.js +494 -199
  53. package/dist/dashboard-web/index.html +1 -0
  54. package/dist/dashboard-web/style.css +160 -6
  55. package/dist/dashboard-web/terminal-replay.html +227 -0
  56. package/dist/dashboard.js +29 -12
  57. package/dist/dashboard.js.map +1 -1
  58. package/dist/i18n/en.d.ts.map +1 -1
  59. package/dist/i18n/en.js +12 -0
  60. package/dist/i18n/en.js.map +1 -1
  61. package/dist/i18n/zh.d.ts.map +1 -1
  62. package/dist/i18n/zh.js +12 -0
  63. package/dist/i18n/zh.js.map +1 -1
  64. package/dist/im/lark/card-handler.d.ts +3 -0
  65. package/dist/im/lark/card-handler.d.ts.map +1 -1
  66. package/dist/im/lark/card-handler.js +27 -1
  67. package/dist/im/lark/card-handler.js.map +1 -1
  68. package/dist/im/lark/client.d.ts +19 -2
  69. package/dist/im/lark/client.d.ts.map +1 -1
  70. package/dist/im/lark/client.js +21 -2
  71. package/dist/im/lark/client.js.map +1 -1
  72. package/dist/im/lark/workflow-card-handler.d.ts +50 -0
  73. package/dist/im/lark/workflow-card-handler.d.ts.map +1 -0
  74. package/dist/im/lark/workflow-card-handler.js +152 -0
  75. package/dist/im/lark/workflow-card-handler.js.map +1 -0
  76. package/dist/im/lark/workflow-cards.d.ts +46 -0
  77. package/dist/im/lark/workflow-cards.d.ts.map +1 -0
  78. package/dist/im/lark/workflow-cards.js +226 -0
  79. package/dist/im/lark/workflow-cards.js.map +1 -0
  80. package/dist/im/lark/workflow-progress-card.d.ts +76 -0
  81. package/dist/im/lark/workflow-progress-card.d.ts.map +1 -0
  82. package/dist/im/lark/workflow-progress-card.js +279 -0
  83. package/dist/im/lark/workflow-progress-card.js.map +1 -0
  84. package/dist/im/lark/workflow-slash-command.d.ts +92 -0
  85. package/dist/im/lark/workflow-slash-command.d.ts.map +1 -0
  86. package/dist/im/lark/workflow-slash-command.js +185 -0
  87. package/dist/im/lark/workflow-slash-command.js.map +1 -0
  88. package/dist/services/group-creator.d.ts.map +1 -1
  89. package/dist/services/group-creator.js +17 -4
  90. package/dist/services/group-creator.js.map +1 -1
  91. package/dist/services/groups-store.d.ts +11 -0
  92. package/dist/services/groups-store.d.ts.map +1 -1
  93. package/dist/services/groups-store.js +26 -0
  94. package/dist/services/groups-store.js.map +1 -1
  95. package/dist/services/jsonl-cursor.d.ts +12 -0
  96. package/dist/services/jsonl-cursor.d.ts.map +1 -0
  97. package/dist/services/jsonl-cursor.js +45 -0
  98. package/dist/services/jsonl-cursor.js.map +1 -0
  99. package/dist/services/schedule-store.d.ts +35 -0
  100. package/dist/services/schedule-store.d.ts.map +1 -1
  101. package/dist/services/schedule-store.js +108 -1
  102. package/dist/services/schedule-store.js.map +1 -1
  103. package/dist/skills/definitions.d.ts.map +1 -1
  104. package/dist/skills/definitions.js +399 -0
  105. package/dist/skills/definitions.js.map +1 -1
  106. package/dist/types.d.ts +4 -0
  107. package/dist/types.d.ts.map +1 -1
  108. package/dist/utils/cli-usage-limit.d.ts.map +1 -1
  109. package/dist/utils/cli-usage-limit.js +4 -0
  110. package/dist/utils/cli-usage-limit.js.map +1 -1
  111. package/dist/worker.js +118 -14
  112. package/dist/worker.js.map +1 -1
  113. package/dist/workflows/attempt-resume.d.ts +114 -0
  114. package/dist/workflows/attempt-resume.d.ts.map +1 -0
  115. package/dist/workflows/attempt-resume.js +385 -0
  116. package/dist/workflows/attempt-resume.js.map +1 -0
  117. package/dist/workflows/attempt-terminal.d.ts +21 -0
  118. package/dist/workflows/attempt-terminal.d.ts.map +1 -0
  119. package/dist/workflows/attempt-terminal.js +7 -0
  120. package/dist/workflows/attempt-terminal.js.map +1 -0
  121. package/dist/workflows/blob.d.ts +27 -0
  122. package/dist/workflows/blob.d.ts.map +1 -0
  123. package/dist/workflows/blob.js +39 -0
  124. package/dist/workflows/blob.js.map +1 -0
  125. package/dist/workflows/cancel-run.d.ts +45 -0
  126. package/dist/workflows/cancel-run.d.ts.map +1 -0
  127. package/dist/workflows/cancel-run.js +99 -0
  128. package/dist/workflows/cancel-run.js.map +1 -0
  129. package/dist/workflows/cancel.d.ts +111 -0
  130. package/dist/workflows/cancel.d.ts.map +1 -0
  131. package/dist/workflows/cancel.js +120 -0
  132. package/dist/workflows/cancel.js.map +1 -0
  133. package/dist/workflows/catalog.d.ts +60 -0
  134. package/dist/workflows/catalog.d.ts.map +1 -0
  135. package/dist/workflows/catalog.js +119 -0
  136. package/dist/workflows/catalog.js.map +1 -0
  137. package/dist/workflows/cold-attach.d.ts +30 -0
  138. package/dist/workflows/cold-attach.d.ts.map +1 -0
  139. package/dist/workflows/cold-attach.js +40 -0
  140. package/dist/workflows/cold-attach.js.map +1 -0
  141. package/dist/workflows/cold-scan.d.ts +21 -0
  142. package/dist/workflows/cold-scan.d.ts.map +1 -0
  143. package/dist/workflows/cold-scan.js +70 -0
  144. package/dist/workflows/cold-scan.js.map +1 -0
  145. package/dist/workflows/daemon-spawn.d.ts +117 -0
  146. package/dist/workflows/daemon-spawn.d.ts.map +1 -0
  147. package/dist/workflows/daemon-spawn.js +551 -0
  148. package/dist/workflows/daemon-spawn.js.map +1 -0
  149. package/dist/workflows/definition.d.ts +1309 -0
  150. package/dist/workflows/definition.d.ts.map +1 -0
  151. package/dist/workflows/definition.js +334 -0
  152. package/dist/workflows/definition.js.map +1 -0
  153. package/dist/workflows/effect-input.d.ts +4 -0
  154. package/dist/workflows/effect-input.d.ts.map +1 -0
  155. package/dist/workflows/effect-input.js +18 -0
  156. package/dist/workflows/effect-input.js.map +1 -0
  157. package/dist/workflows/events/append.d.ts +77 -0
  158. package/dist/workflows/events/append.d.ts.map +1 -0
  159. package/dist/workflows/events/append.js +214 -0
  160. package/dist/workflows/events/append.js.map +1 -0
  161. package/dist/workflows/events/idempotency.d.ts +77 -0
  162. package/dist/workflows/events/idempotency.d.ts.map +1 -0
  163. package/dist/workflows/events/idempotency.js +116 -0
  164. package/dist/workflows/events/idempotency.js.map +1 -0
  165. package/dist/workflows/events/index.d.ts +7 -0
  166. package/dist/workflows/events/index.d.ts.map +1 -0
  167. package/dist/workflows/events/index.js +7 -0
  168. package/dist/workflows/events/index.js.map +1 -0
  169. package/dist/workflows/events/payloads.d.ts +917 -0
  170. package/dist/workflows/events/payloads.d.ts.map +1 -0
  171. package/dist/workflows/events/payloads.js +337 -0
  172. package/dist/workflows/events/payloads.js.map +1 -0
  173. package/dist/workflows/events/replay.d.ts +238 -0
  174. package/dist/workflows/events/replay.d.ts.map +1 -0
  175. package/dist/workflows/events/replay.js +608 -0
  176. package/dist/workflows/events/replay.js.map +1 -0
  177. package/dist/workflows/events/schema.d.ts +5242 -0
  178. package/dist/workflows/events/schema.d.ts.map +1 -0
  179. package/dist/workflows/events/schema.js +295 -0
  180. package/dist/workflows/events/schema.js.map +1 -0
  181. package/dist/workflows/events/types.d.ts +34 -0
  182. package/dist/workflows/events/types.d.ts.map +1 -0
  183. package/dist/workflows/events/types.js +2 -0
  184. package/dist/workflows/events/types.js.map +1 -0
  185. package/dist/workflows/fanout.d.ts +36 -0
  186. package/dist/workflows/fanout.d.ts.map +1 -0
  187. package/dist/workflows/fanout.js +114 -0
  188. package/dist/workflows/fanout.js.map +1 -0
  189. package/dist/workflows/hostExecutors/botmux-schedule.d.ts +41 -0
  190. package/dist/workflows/hostExecutors/botmux-schedule.d.ts.map +1 -0
  191. package/dist/workflows/hostExecutors/botmux-schedule.js +121 -0
  192. package/dist/workflows/hostExecutors/botmux-schedule.js.map +1 -0
  193. package/dist/workflows/hostExecutors/feishu-im.d.ts +12 -0
  194. package/dist/workflows/hostExecutors/feishu-im.d.ts.map +1 -0
  195. package/dist/workflows/hostExecutors/feishu-im.js +49 -0
  196. package/dist/workflows/hostExecutors/feishu-im.js.map +1 -0
  197. package/dist/workflows/hostExecutors/feishu-reply.d.ts +24 -0
  198. package/dist/workflows/hostExecutors/feishu-reply.d.ts.map +1 -0
  199. package/dist/workflows/hostExecutors/feishu-reply.js +88 -0
  200. package/dist/workflows/hostExecutors/feishu-reply.js.map +1 -0
  201. package/dist/workflows/hostExecutors/feishu-send.d.ts +23 -0
  202. package/dist/workflows/hostExecutors/feishu-send.d.ts.map +1 -0
  203. package/dist/workflows/hostExecutors/feishu-send.js +124 -0
  204. package/dist/workflows/hostExecutors/feishu-send.js.map +1 -0
  205. package/dist/workflows/hostExecutors/index.d.ts +8 -0
  206. package/dist/workflows/hostExecutors/index.d.ts.map +1 -0
  207. package/dist/workflows/hostExecutors/index.js +8 -0
  208. package/dist/workflows/hostExecutors/index.js.map +1 -0
  209. package/dist/workflows/hostExecutors/protocol.d.ts +42 -0
  210. package/dist/workflows/hostExecutors/protocol.d.ts.map +1 -0
  211. package/dist/workflows/hostExecutors/protocol.js +181 -0
  212. package/dist/workflows/hostExecutors/protocol.js.map +1 -0
  213. package/dist/workflows/hostExecutors/registry.d.ts +10 -0
  214. package/dist/workflows/hostExecutors/registry.d.ts.map +1 -0
  215. package/dist/workflows/hostExecutors/registry.js +36 -0
  216. package/dist/workflows/hostExecutors/registry.js.map +1 -0
  217. package/dist/workflows/hostExecutors/types.d.ts +78 -0
  218. package/dist/workflows/hostExecutors/types.d.ts.map +1 -0
  219. package/dist/workflows/hostExecutors/types.js +2 -0
  220. package/dist/workflows/hostExecutors/types.js.map +1 -0
  221. package/dist/workflows/loader.d.ts +16 -0
  222. package/dist/workflows/loader.d.ts.map +1 -0
  223. package/dist/workflows/loader.js +56 -0
  224. package/dist/workflows/loader.js.map +1 -0
  225. package/dist/workflows/loop.d.ts +50 -0
  226. package/dist/workflows/loop.d.ts.map +1 -0
  227. package/dist/workflows/loop.js +350 -0
  228. package/dist/workflows/loop.js.map +1 -0
  229. package/dist/workflows/ops-projection.d.ts +168 -0
  230. package/dist/workflows/ops-projection.d.ts.map +1 -0
  231. package/dist/workflows/ops-projection.js +707 -0
  232. package/dist/workflows/ops-projection.js.map +1 -0
  233. package/dist/workflows/orchestrator.d.ts +107 -0
  234. package/dist/workflows/orchestrator.d.ts.map +1 -0
  235. package/dist/workflows/orchestrator.js +197 -0
  236. package/dist/workflows/orchestrator.js.map +1 -0
  237. package/dist/workflows/output-binding.d.ts +70 -0
  238. package/dist/workflows/output-binding.d.ts.map +1 -0
  239. package/dist/workflows/output-binding.js +265 -0
  240. package/dist/workflows/output-binding.js.map +1 -0
  241. package/dist/workflows/params.d.ts +61 -0
  242. package/dist/workflows/params.d.ts.map +1 -0
  243. package/dist/workflows/params.js +195 -0
  244. package/dist/workflows/params.js.map +1 -0
  245. package/dist/workflows/resume.d.ts +263 -0
  246. package/dist/workflows/resume.d.ts.map +1 -0
  247. package/dist/workflows/resume.js +808 -0
  248. package/dist/workflows/resume.js.map +1 -0
  249. package/dist/workflows/run-id.d.ts +2 -0
  250. package/dist/workflows/run-id.d.ts.map +1 -0
  251. package/dist/workflows/run-id.js +7 -0
  252. package/dist/workflows/run-id.js.map +1 -0
  253. package/dist/workflows/run-init.d.ts +48 -0
  254. package/dist/workflows/run-init.d.ts.map +1 -0
  255. package/dist/workflows/run-init.js +99 -0
  256. package/dist/workflows/run-init.js.map +1 -0
  257. package/dist/workflows/runs-dir.d.ts +4 -0
  258. package/dist/workflows/runs-dir.d.ts.map +1 -0
  259. package/dist/workflows/runs-dir.js +15 -0
  260. package/dist/workflows/runs-dir.js.map +1 -0
  261. package/dist/workflows/runtime.d.ts +211 -0
  262. package/dist/workflows/runtime.d.ts.map +1 -0
  263. package/dist/workflows/runtime.js +594 -0
  264. package/dist/workflows/runtime.js.map +1 -0
  265. package/dist/workflows/spawn-bot.d.ts +165 -0
  266. package/dist/workflows/spawn-bot.d.ts.map +1 -0
  267. package/dist/workflows/spawn-bot.js +215 -0
  268. package/dist/workflows/spawn-bot.js.map +1 -0
  269. package/dist/workflows/system.d.ts +49 -0
  270. package/dist/workflows/system.d.ts.map +1 -0
  271. package/dist/workflows/system.js +48 -0
  272. package/dist/workflows/system.js.map +1 -0
  273. package/dist/workflows/trigger-run.d.ts +70 -0
  274. package/dist/workflows/trigger-run.d.ts.map +1 -0
  275. package/dist/workflows/trigger-run.js +88 -0
  276. package/dist/workflows/trigger-run.js.map +1 -0
  277. package/dist/workflows/wait.d.ts +120 -0
  278. package/dist/workflows/wait.d.ts.map +1 -0
  279. package/dist/workflows/wait.js +181 -0
  280. package/dist/workflows/wait.js.map +1 -0
  281. package/package.json +3 -3
@@ -32,7 +32,17 @@ function getLarkErrorCode(err) {
32
32
  return err?.response?.data?.code ?? err?.code;
33
33
  }
34
34
  const LARK_CODE_MESSAGE_WITHDRAWN = 230011;
35
- export async function sendMessage(larkAppId, chatId, content, msgType = 'text') {
35
+ /**
36
+ * Send a message to a chat.
37
+ *
38
+ * `uuid` is an optional opt-in dedupe token (Feishu IM uuid field, ≤ 50
39
+ * chars, 1-hour TTL — see spike report §1.2). When supplied, the Feishu
40
+ * server returns the original message_id for repeat requests within TTL,
41
+ * making the send idempotent. Workflow runtime passes the attempt's
42
+ * idempotencyKey here so retries don't re-send. Existing callers omit
43
+ * the param and get exactly the pre-Step-6 behavior.
44
+ */
45
+ export async function sendMessage(larkAppId, chatId, content, msgType = 'text', uuid) {
36
46
  const c = getBotClient(larkAppId);
37
47
  const body = msgType === 'text' ? JSON.stringify({ text: content }) : content;
38
48
  let res;
@@ -43,6 +53,7 @@ export async function sendMessage(larkAppId, chatId, content, msgType = 'text')
43
53
  receive_id: chatId,
44
54
  msg_type: msgType,
45
55
  content: body,
56
+ ...(uuid ? { uuid } : {}),
46
57
  },
47
58
  });
48
59
  }
@@ -63,7 +74,14 @@ export async function sendMessage(larkAppId, chatId, content, msgType = 'text')
63
74
  logger.info(`Sent message ${messageId} to chat ${chatId}`);
64
75
  return messageId;
65
76
  }
66
- export async function replyMessage(larkAppId, messageId, content, msgType = 'text', replyInThread = false) {
77
+ /**
78
+ * Reply to an existing message. See {@link sendMessage} for the `uuid`
79
+ * dedupe parameter — same semantics apply to replies (Feishu reply API
80
+ * also accepts `uuid` and yields the same 1-hour idempotent return). See
81
+ * spike report §1.4 for the reply-specific test results, including the
82
+ * cross-parent dedupe behavior that informs the inputHash design.
83
+ */
84
+ export async function replyMessage(larkAppId, messageId, content, msgType = 'text', replyInThread = false, uuid) {
67
85
  const c = getBotClient(larkAppId);
68
86
  const body = msgType === 'text' ? JSON.stringify({ text: content }) : content;
69
87
  let res;
@@ -74,6 +92,7 @@ export async function replyMessage(larkAppId, messageId, content, msgType = 'tex
74
92
  msg_type: msgType,
75
93
  content: body,
76
94
  ...(replyInThread ? { reply_in_thread: true } : {}),
95
+ ...(uuid ? { uuid } : {}),
77
96
  },
78
97
  });
79
98
  }
@@ -1 +1 @@
1
- {"version":3,"file":"client.js","sourceRoot":"","sources":["../../../src/im/lark/client.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"client.js","sourceRoot":"","sources":["../../../src/im/lark/client.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,50 @@
1
+ import { EventLog } from '../../workflows/events/append.js';
2
+ import { type ResolveWaitInput, type ResolveWaitResult } from '../../workflows/wait.js';
3
+ import { type RequestCancelInput } from '../../workflows/cancel.js';
4
+ import type { CancelRequestedEvent } from '../../workflows/events/types.js';
5
+ import type { FrozenCard } from '../../core/types.js';
6
+ export type WorkflowCardActionData = {
7
+ operator?: {
8
+ open_id?: string;
9
+ };
10
+ action?: {
11
+ value?: Record<string, string>;
12
+ form_value?: Record<string, string>;
13
+ };
14
+ context?: {
15
+ open_message_id?: string;
16
+ };
17
+ open_message_id?: string;
18
+ };
19
+ export type WorkflowApprovalHandlerDeps = {
20
+ runsDir?: string;
21
+ makeEventLog?: (runId: string, runsDir: string) => EventLog;
22
+ resolveWaitFn?: (log: EventLog, input: ResolveWaitInput) => Promise<ResolveWaitResult>;
23
+ requestCancelFn?: (log: EventLog, input: RequestCancelInput, actor: 'human') => Promise<CancelRequestedEvent>;
24
+ loadFrozenCardsFn?: (storeId: string) => Map<string, FrozenCard>;
25
+ saveFrozenCardsFn?: (storeId: string, cards: Map<string, FrozenCard>) => void;
26
+ };
27
+ export type WorkflowApprovalHandlerResult = {
28
+ ok: true;
29
+ duplicate: true;
30
+ cardNonce: string;
31
+ } | {
32
+ ok: true;
33
+ duplicate: false;
34
+ cardNonce: string;
35
+ result: ResolveWaitResult | CancelRequestedEvent;
36
+ /** Frozen card body (no buttons) for the dispatcher to in-place patch the
37
+ * clicked card. Undefined if rebuild failed — caller falls back to no
38
+ * patch and the card stays interactive (handler is idempotent via
39
+ * frozenCards). */
40
+ resolvedCardJson?: string;
41
+ } | {
42
+ ok: false;
43
+ error: 'not_approver';
44
+ cardNonce: string;
45
+ };
46
+ export declare function isWorkflowApprovalAction(action?: string): boolean;
47
+ export declare function workflowRunsDir(): string;
48
+ export declare function workflowFrozenStoreId(runId: string): string;
49
+ export declare function handleWorkflowApprovalAction(data: WorkflowCardActionData, deps?: WorkflowApprovalHandlerDeps): Promise<WorkflowApprovalHandlerResult | undefined>;
50
+ //# sourceMappingURL=workflow-card-handler.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"workflow-card-handler.d.ts","sourceRoot":"","sources":["../../../src/im/lark/workflow-card-handler.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,QAAQ,EAAE,MAAM,kCAAkC,CAAC;AAK5D,OAAO,EAEL,KAAK,gBAAgB,EACrB,KAAK,iBAAiB,EACvB,MAAM,yBAAyB,CAAC;AACjC,OAAO,EAEL,KAAK,kBAAkB,EACxB,MAAM,2BAA2B,CAAC;AACnC,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,iCAAiC,CAAC;AAC5E,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAUtD,MAAM,MAAM,sBAAsB,GAAG;IACnC,QAAQ,CAAC,EAAE;QAAE,OAAO,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;IAChC,MAAM,CAAC,EAAE;QACP,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;QAC/B,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;KACrC,CAAC;IACF,OAAO,CAAC,EAAE;QAAE,eAAe,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;IACvC,eAAe,CAAC,EAAE,MAAM,CAAC;CAC1B,CAAC;AAEF,MAAM,MAAM,2BAA2B,GAAG;IACxC,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,YAAY,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,KAAK,QAAQ,CAAC;IAC5D,aAAa,CAAC,EAAE,CAAC,GAAG,EAAE,QAAQ,EAAE,KAAK,EAAE,gBAAgB,KAAK,OAAO,CAAC,iBAAiB,CAAC,CAAC;IACvF,eAAe,CAAC,EAAE,CAChB,GAAG,EAAE,QAAQ,EACb,KAAK,EAAE,kBAAkB,EACzB,KAAK,EAAE,OAAO,KACX,OAAO,CAAC,oBAAoB,CAAC,CAAC;IACnC,iBAAiB,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,GAAG,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC;IACjE,iBAAiB,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,GAAG,CAAC,MAAM,EAAE,UAAU,CAAC,KAAK,IAAI,CAAC;CAC/E,CAAC;AAEF,MAAM,MAAM,6BAA6B,GACrC;IAAE,EAAE,EAAE,IAAI,CAAC;IAAC,SAAS,EAAE,IAAI,CAAC;IAAC,SAAS,EAAE,MAAM,CAAA;CAAE,GAChD;IACE,EAAE,EAAE,IAAI,CAAC;IACT,SAAS,EAAE,KAAK,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE,iBAAiB,GAAG,oBAAoB,CAAC;IACjD;;;wBAGoB;IACpB,gBAAgB,CAAC,EAAE,MAAM,CAAC;CAC3B,GACD;IAAE,EAAE,EAAE,KAAK,CAAC;IAAC,KAAK,EAAE,cAAc,CAAC;IAAC,SAAS,EAAE,MAAM,CAAA;CAAE,CAAC;AAE5D,wBAAgB,wBAAwB,CAAC,MAAM,CAAC,EAAE,MAAM,GAAG,OAAO,CAMjE;AAED,wBAAgB,eAAe,IAAI,MAAM,CAExC;AAED,wBAAgB,qBAAqB,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAE3D;AAED,wBAAsB,4BAA4B,CAChD,IAAI,EAAE,sBAAsB,EAC5B,IAAI,GAAE,2BAAgC,GACrC,OAAO,CAAC,6BAA6B,GAAG,SAAS,CAAC,CAkFpD"}
@@ -0,0 +1,152 @@
1
+ import { logger } from '../../utils/logger.js';
2
+ import { loadFrozenCards, saveFrozenCards } from '../../services/frozen-card-store.js';
3
+ import { EventLog } from '../../workflows/events/append.js';
4
+ import { replay } from '../../workflows/events/replay.js';
5
+ import { getRunsDir } from '../../workflows/runs-dir.js';
6
+ import { resolveWait, } from '../../workflows/wait.js';
7
+ import { requestCancel, } from '../../workflows/cancel.js';
8
+ import { buildWorkflowApprovalCard, WORKFLOW_APPROVE_ACTION, WORKFLOW_CANCEL_ACTION, WORKFLOW_COMMENT_FIELD, WORKFLOW_REJECT_ACTION, } from './workflow-cards.js';
9
+ export function isWorkflowApprovalAction(action) {
10
+ return (action === WORKFLOW_APPROVE_ACTION ||
11
+ action === WORKFLOW_REJECT_ACTION ||
12
+ action === WORKFLOW_CANCEL_ACTION);
13
+ }
14
+ export function workflowRunsDir() {
15
+ return getRunsDir();
16
+ }
17
+ export function workflowFrozenStoreId(runId) {
18
+ return `workflow-${runId.replace(/[^a-zA-Z0-9._-]/g, '_')}`;
19
+ }
20
+ export async function handleWorkflowApprovalAction(data, deps = {}) {
21
+ const value = data.action?.value;
22
+ const action = value?.action;
23
+ if (!isWorkflowApprovalAction(action))
24
+ return undefined;
25
+ const runId = requiredValue(value, 'run_id');
26
+ const activityId = requiredValue(value, 'activity_id');
27
+ const attemptId = requiredValue(value, 'attempt_id');
28
+ const cardNonce = requiredValue(value, 'card_nonce');
29
+ const by = data.operator?.open_id;
30
+ if (!by)
31
+ throw new Error('workflow approval action missing operator.open_id');
32
+ const storeId = workflowFrozenStoreId(runId);
33
+ const loadCards = deps.loadFrozenCardsFn ?? loadFrozenCards;
34
+ const saveCards = deps.saveFrozenCardsFn ?? saveFrozenCards;
35
+ const frozenCards = loadCards(storeId);
36
+ if (frozenCards.has(cardNonce)) {
37
+ logger.info(`[workflow:${runId}] duplicate approval card click ignored: ${cardNonce}`);
38
+ return { ok: true, duplicate: true, cardNonce };
39
+ }
40
+ const comment = cleanComment(data.action?.form_value?.[WORKFLOW_COMMENT_FIELD]);
41
+ const runsDir = deps.runsDir ?? workflowRunsDir();
42
+ const makeEventLog = deps.makeEventLog ?? ((rid, base) => new EventLog(rid, base));
43
+ const log = makeEventLog(runId, runsDir);
44
+ const eventsBefore = await log.readAll();
45
+ if (!canApproveFromEvents(eventsBefore, activityId, by)) {
46
+ logger.info(`[workflow:${runId}] approval card action blocked for non-approver ${by}`);
47
+ return { ok: false, error: 'not_approver', cardNonce };
48
+ }
49
+ const result = action === WORKFLOW_CANCEL_ACTION
50
+ ? await (deps.requestCancelFn ?? requestCancel)(log, {
51
+ target: { kind: 'run', runId },
52
+ reason: cancelReason(comment),
53
+ by,
54
+ }, 'human')
55
+ : await (deps.resolveWaitFn ?? resolveWait)(log, {
56
+ activityId,
57
+ attemptId,
58
+ resolution: action === WORKFLOW_APPROVE_ACTION ? 'approved' : 'rejected',
59
+ by,
60
+ comment,
61
+ });
62
+ const resolutionKind = action === WORKFLOW_APPROVE_ACTION
63
+ ? 'approved'
64
+ : action === WORKFLOW_REJECT_ACTION
65
+ ? 'rejected'
66
+ : 'cancelled';
67
+ frozenCards.set(cardNonce, {
68
+ messageId: data.context?.open_message_id ?? data.open_message_id ?? '',
69
+ title: `workflow approval ${runId}/${activityId}`,
70
+ content: JSON.stringify({
71
+ runId,
72
+ activityId,
73
+ attemptId,
74
+ resolution: resolutionKind,
75
+ by,
76
+ ...(comment ? { comment } : {}),
77
+ }),
78
+ });
79
+ saveCards(storeId, frozenCards);
80
+ if (action === WORKFLOW_CANCEL_ACTION) {
81
+ logger.info(`[workflow:${runId}] run cancel requested from approval card by ${by}`);
82
+ }
83
+ else {
84
+ logger.info(`[workflow:${runId}] wait ${activityId}/${attemptId} resolved by ${by}`);
85
+ }
86
+ const resolvedCardJson = buildResolvedCardJson(eventsBefore, activityId, {
87
+ kind: resolutionKind,
88
+ by,
89
+ comment,
90
+ });
91
+ return { ok: true, duplicate: false, cardNonce, result, resolvedCardJson };
92
+ }
93
+ function buildResolvedCardJson(events, activityId, resolution) {
94
+ try {
95
+ const waitEvent = findLatestWaitCreated(events, activityId);
96
+ if (!waitEvent)
97
+ return undefined;
98
+ const snapshot = replay(events);
99
+ return buildWorkflowApprovalCard(waitEvent, snapshot, { resolution });
100
+ }
101
+ catch (err) {
102
+ logger.warn(`failed to build resolved approval card: ${err instanceof Error ? err.message : String(err)}`);
103
+ return undefined;
104
+ }
105
+ }
106
+ function findLatestWaitCreated(events, activityId) {
107
+ for (let i = events.length - 1; i >= 0; i--) {
108
+ const evt = events[i];
109
+ if (evt.type !== 'waitCreated')
110
+ continue;
111
+ if (waitCreatedActivityId(evt) !== activityId)
112
+ continue;
113
+ return evt;
114
+ }
115
+ return undefined;
116
+ }
117
+ function requiredValue(value, key) {
118
+ const v = value?.[key];
119
+ if (!v)
120
+ throw new Error(`workflow approval action missing ${key}`);
121
+ return v;
122
+ }
123
+ function cleanComment(s) {
124
+ const trimmed = s?.trim();
125
+ return trimmed ? trimmed : undefined;
126
+ }
127
+ function cancelReason(comment) {
128
+ return comment ? `cancelled from approval card: ${comment}` : 'cancelled from approval card';
129
+ }
130
+ function canApproveFromEvents(events, activityId, by) {
131
+ const wait = findLatestWaitCreated(events, activityId);
132
+ const approvers = waitCreatedApprovers(wait);
133
+ if (!approvers || approvers.length === 0)
134
+ return true;
135
+ return approvers.includes(by);
136
+ }
137
+ function waitCreatedActivityId(event) {
138
+ const payload = event.payload;
139
+ if (typeof payload !== 'object' || payload === null || 'ref' in payload)
140
+ return undefined;
141
+ return payload.activityId;
142
+ }
143
+ function waitCreatedApprovers(event) {
144
+ if (!event)
145
+ return undefined;
146
+ const payload = event.payload;
147
+ if (typeof payload !== 'object' || payload === null || 'ref' in payload)
148
+ return undefined;
149
+ const approvers = payload.approvers;
150
+ return Array.isArray(approvers) ? approvers.filter((x) => typeof x === 'string') : undefined;
151
+ }
152
+ //# sourceMappingURL=workflow-card-handler.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"workflow-card-handler.js","sourceRoot":"","sources":["../../../src/im/lark/workflow-card-handler.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,46 @@
1
+ import type { WaitCreatedEvent } from '../../workflows/events/types.js';
2
+ import type { Snapshot } from '../../workflows/events/replay.js';
3
+ export declare const WORKFLOW_APPROVE_ACTION = "wf_approve";
4
+ export declare const WORKFLOW_REJECT_ACTION = "wf_reject";
5
+ export declare const WORKFLOW_CANCEL_ACTION = "wf_cancel";
6
+ export declare const WORKFLOW_COMMENT_FIELD = "wf_comment";
7
+ export declare const WORKFLOW_APPROVAL_FORM = "wf_approval_form";
8
+ export type WorkflowApprovalResolutionKind = 'approved' | 'rejected' | 'cancelled';
9
+ export type WorkflowApprovalCardResolution = {
10
+ kind: WorkflowApprovalResolutionKind;
11
+ by: string;
12
+ comment?: string;
13
+ };
14
+ export type WorkflowApprovalCardOptions = {
15
+ webDetailUrl?: string;
16
+ cardNonce?: string;
17
+ promptMaxChars?: number;
18
+ /** When present, render a frozen "已通过 / 已拒绝 / 已取消" card — no form,
19
+ * no clickable approve/reject/cancel buttons — so the same surface that
20
+ * triggered the action can't be re-submitted from a stale UI. */
21
+ resolution?: WorkflowApprovalCardResolution;
22
+ };
23
+ export type WorkflowApprovalCardContext = {
24
+ runId: string;
25
+ workflowId?: string;
26
+ revisionId?: string;
27
+ nodeId: string;
28
+ activityId: string;
29
+ attemptId: string;
30
+ deadlineAt?: number;
31
+ /** Body text for the card. Either the full inline prompt (small case)
32
+ * or the inline promptPreview (large case). Cards must NEVER read
33
+ * promptRef blob files — see `hasFullBehindRef`. */
34
+ prompt: string;
35
+ /** True when the upstream waitCreated event spilled its prompt to a
36
+ * blob (promptRef set). Card-builder uses this to render a hint
37
+ * pointing the approver to the dashboard for the complete text. */
38
+ hasFullBehindRef: boolean;
39
+ cardNonce: string;
40
+ webDetailUrl: string;
41
+ };
42
+ export declare function workflowApprovalCardNonce(runId: string, activityId: string, attemptId: string): string;
43
+ export declare function workflowRunDetailUrl(runId: string): string;
44
+ export declare function getWorkflowApprovalCardContext(event: WaitCreatedEvent, snapshot: Snapshot, opts?: WorkflowApprovalCardOptions): WorkflowApprovalCardContext;
45
+ export declare function buildWorkflowApprovalCard(event: WaitCreatedEvent, snapshot: Snapshot, opts?: WorkflowApprovalCardOptions): string;
46
+ //# sourceMappingURL=workflow-cards.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"workflow-cards.d.ts","sourceRoot":"","sources":["../../../src/im/lark/workflow-cards.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,iCAAiC,CAAC;AACxE,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,kCAAkC,CAAC;AAGjE,eAAO,MAAM,uBAAuB,eAAe,CAAC;AACpD,eAAO,MAAM,sBAAsB,cAAc,CAAC;AAClD,eAAO,MAAM,sBAAsB,cAAc,CAAC;AAClD,eAAO,MAAM,sBAAsB,eAAe,CAAC;AACnD,eAAO,MAAM,sBAAsB,qBAAqB,CAAC;AAIzD,MAAM,MAAM,8BAA8B,GAAG,UAAU,GAAG,UAAU,GAAG,WAAW,CAAC;AAEnF,MAAM,MAAM,8BAA8B,GAAG;IAC3C,IAAI,EAAE,8BAA8B,CAAC;IACrC,EAAE,EAAE,MAAM,CAAC;IACX,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB,CAAC;AAEF,MAAM,MAAM,2BAA2B,GAAG;IACxC,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB;;sEAEkE;IAClE,UAAU,CAAC,EAAE,8BAA8B,CAAC;CAC7C,CAAC;AAEF,MAAM,MAAM,2BAA2B,GAAG;IACxC,KAAK,EAAE,MAAM,CAAC;IACd,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,MAAM,EAAE,MAAM,CAAC;IACf,UAAU,EAAE,MAAM,CAAC;IACnB,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB;;yDAEqD;IACrD,MAAM,EAAE,MAAM,CAAC;IACf;;wEAEoE;IACpE,gBAAgB,EAAE,OAAO,CAAC;IAC1B,SAAS,EAAE,MAAM,CAAC;IAClB,YAAY,EAAE,MAAM,CAAC;CACtB,CAAC;AAEF,wBAAgB,yBAAyB,CACvC,KAAK,EAAE,MAAM,EACb,UAAU,EAAE,MAAM,EAClB,SAAS,EAAE,MAAM,GAChB,MAAM,CAER;AAED,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAE1D;AAED,wBAAgB,8BAA8B,CAC5C,KAAK,EAAE,gBAAgB,EACvB,QAAQ,EAAE,QAAQ,EAClB,IAAI,GAAE,2BAAgC,GACrC,2BAA2B,CAmC7B;AAED,wBAAgB,yBAAyB,CACvC,KAAK,EAAE,gBAAgB,EACvB,QAAQ,EAAE,QAAQ,EAClB,IAAI,GAAE,2BAAgC,GACrC,MAAM,CAgIR"}