botmux 3.9.2 → 3.10.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 (314) hide show
  1. package/README.en.md +1 -1
  2. package/README.md +1 -1
  3. package/dist/.runtime-build-id +1 -1
  4. package/dist/adapters/cli/codex.d.ts.map +1 -1
  5. package/dist/adapters/cli/codex.js +6 -0
  6. package/dist/adapters/cli/codex.js.map +1 -1
  7. package/dist/adapters/cli/opencode.d.ts.map +1 -1
  8. package/dist/adapters/cli/opencode.js +7 -1
  9. package/dist/adapters/cli/opencode.js.map +1 -1
  10. package/dist/adapters/cli/reasonix.d.ts +35 -0
  11. package/dist/adapters/cli/reasonix.d.ts.map +1 -0
  12. package/dist/adapters/cli/reasonix.js +236 -0
  13. package/dist/adapters/cli/reasonix.js.map +1 -0
  14. package/dist/adapters/cli/registry.d.ts +2 -1
  15. package/dist/adapters/cli/registry.d.ts.map +1 -1
  16. package/dist/adapters/cli/registry.js +4 -1
  17. package/dist/adapters/cli/registry.js.map +1 -1
  18. package/dist/adapters/cli/types.d.ts +5 -1
  19. package/dist/adapters/cli/types.d.ts.map +1 -1
  20. package/dist/cli.d.ts.map +1 -1
  21. package/dist/cli.js +168 -62
  22. package/dist/cli.js.map +1 -1
  23. package/dist/core/command-handler.d.ts +18 -4
  24. package/dist/core/command-handler.d.ts.map +1 -1
  25. package/dist/core/command-handler.js +234 -26
  26. package/dist/core/command-handler.js.map +1 -1
  27. package/dist/core/dashboard-ipc-server.d.ts +1 -0
  28. package/dist/core/dashboard-ipc-server.d.ts.map +1 -1
  29. package/dist/core/dashboard-ipc-server.js +27 -3
  30. package/dist/core/dashboard-ipc-server.js.map +1 -1
  31. package/dist/core/dispatch.d.ts +54 -24
  32. package/dist/core/dispatch.d.ts.map +1 -1
  33. package/dist/core/dispatch.js +81 -27
  34. package/dist/core/dispatch.js.map +1 -1
  35. package/dist/core/input-turn-dedupe.d.ts +20 -0
  36. package/dist/core/input-turn-dedupe.d.ts.map +1 -0
  37. package/dist/core/input-turn-dedupe.js +57 -0
  38. package/dist/core/input-turn-dedupe.js.map +1 -0
  39. package/dist/core/local-terminal-opener.d.ts.map +1 -1
  40. package/dist/core/local-terminal-opener.js +10 -1
  41. package/dist/core/local-terminal-opener.js.map +1 -1
  42. package/dist/core/passthrough-commands.d.ts.map +1 -1
  43. package/dist/core/passthrough-commands.js +1 -1
  44. package/dist/core/passthrough-commands.js.map +1 -1
  45. package/dist/core/plugins/pm2.d.ts.map +1 -1
  46. package/dist/core/plugins/pm2.js +7 -1
  47. package/dist/core/plugins/pm2.js.map +1 -1
  48. package/dist/core/resource-monitor/attribution.d.ts.map +1 -1
  49. package/dist/core/resource-monitor/attribution.js +17 -1
  50. package/dist/core/resource-monitor/attribution.js.map +1 -1
  51. package/dist/core/resource-monitor/darwin.d.ts +145 -0
  52. package/dist/core/resource-monitor/darwin.d.ts.map +1 -0
  53. package/dist/core/resource-monitor/darwin.js +360 -0
  54. package/dist/core/resource-monitor/darwin.js.map +1 -0
  55. package/dist/core/resource-monitor/procfs.d.ts.map +1 -1
  56. package/dist/core/resource-monitor/procfs.js +6 -0
  57. package/dist/core/resource-monitor/procfs.js.map +1 -1
  58. package/dist/core/resource-monitor/types.d.ts +1 -1
  59. package/dist/core/resource-monitor/types.d.ts.map +1 -1
  60. package/dist/core/scheduler.d.ts.map +1 -1
  61. package/dist/core/scheduler.js +5 -2
  62. package/dist/core/scheduler.js.map +1 -1
  63. package/dist/core/session-discovery.d.ts.map +1 -1
  64. package/dist/core/session-discovery.js +3 -0
  65. package/dist/core/session-discovery.js.map +1 -1
  66. package/dist/core/session-manager.d.ts +3 -1
  67. package/dist/core/session-manager.d.ts.map +1 -1
  68. package/dist/core/session-manager.js +46 -0
  69. package/dist/core/session-manager.js.map +1 -1
  70. package/dist/core/session-marker.d.ts +1 -8
  71. package/dist/core/session-marker.d.ts.map +1 -1
  72. package/dist/core/session-marker.js +2 -50
  73. package/dist/core/session-marker.js.map +1 -1
  74. package/dist/core/types.d.ts +3 -1
  75. package/dist/core/types.d.ts.map +1 -1
  76. package/dist/core/types.js.map +1 -1
  77. package/dist/core/worker-pool.d.ts +17 -0
  78. package/dist/core/worker-pool.d.ts.map +1 -1
  79. package/dist/core/worker-pool.js +292 -9
  80. package/dist/core/worker-pool.js.map +1 -1
  81. package/dist/daemon.d.ts.map +1 -1
  82. package/dist/daemon.js +27 -12
  83. package/dist/daemon.js.map +1 -1
  84. package/dist/dashboard/daemon-internal-api.d.ts.map +1 -1
  85. package/dist/dashboard/daemon-internal-api.js +11 -2
  86. package/dist/dashboard/daemon-internal-api.js.map +1 -1
  87. package/dist/dashboard/groups-action-helpers.d.ts +2 -0
  88. package/dist/dashboard/groups-action-helpers.d.ts.map +1 -1
  89. package/dist/dashboard/groups-action-helpers.js +9 -0
  90. package/dist/dashboard/groups-action-helpers.js.map +1 -1
  91. package/dist/dashboard/groups-matrix-snapshot.d.ts +56 -0
  92. package/dist/dashboard/groups-matrix-snapshot.d.ts.map +1 -0
  93. package/dist/dashboard/groups-matrix-snapshot.js +127 -0
  94. package/dist/dashboard/groups-matrix-snapshot.js.map +1 -0
  95. package/dist/dashboard/resource-monitor-service.d.ts.map +1 -1
  96. package/dist/dashboard/resource-monitor-service.js +18 -2
  97. package/dist/dashboard/resource-monitor-service.js.map +1 -1
  98. package/dist/dashboard/web/app.d.ts.map +1 -1
  99. package/dist/dashboard/web/app.js +45 -4
  100. package/dist/dashboard/web/app.js.map +1 -1
  101. package/dist/dashboard/web/groups-api.js +1 -1
  102. package/dist/dashboard/web/groups-api.js.map +1 -1
  103. package/dist/dashboard/web/i18n.js +10 -10
  104. package/dist/dashboard/web/i18n.js.map +1 -1
  105. package/dist/dashboard/web/roles-page.d.ts.map +1 -1
  106. package/dist/dashboard/web/roles-page.js +26 -11
  107. package/dist/dashboard/web/roles-page.js.map +1 -1
  108. package/dist/dashboard-web/app.js +1 -1
  109. package/dist/dashboard-web/chunks/{bot-defaults-page-BHTQEWCH.js → bot-defaults-page-LTVOUDIS.js} +1 -1
  110. package/dist/dashboard-web/chunks/{chunk-KLZCQAHF.js → chunk-3UE7S77S.js} +1 -1
  111. package/dist/dashboard-web/chunks/{chunk-W77TPKZH.js → chunk-DCS35UMD.js} +1 -1
  112. package/dist/dashboard-web/chunks/{chunk-E3HZZXK5.js → chunk-MFQPCVHY.js} +4 -4
  113. package/dist/dashboard-web/chunks/{chunk-EZH56JCI.js → chunk-ZU3UUKAR.js} +1 -1
  114. package/dist/dashboard-web/chunks/{connectors-page-BP255CAX.js → connectors-page-5KWDIMKC.js} +1 -1
  115. package/dist/dashboard-web/chunks/{groups-page-CDHVXBUT.js → groups-page-FHOKYXMW.js} +1 -1
  116. package/dist/dashboard-web/chunks/{insights-page-57BFE6GT.js → insights-page-T2ZX2RWL.js} +1 -1
  117. package/dist/dashboard-web/chunks/{monitor-room-UTOYGQVF.js → monitor-room-YNVBAGR6.js} +1 -1
  118. package/dist/dashboard-web/chunks/{monitoring-page-WTHYAIUM.js → monitoring-page-LHM55YWN.js} +1 -1
  119. package/dist/dashboard-web/chunks/{office-page-JSMIB353.js → office-page-ATXVP7PW.js} +1 -1
  120. package/dist/dashboard-web/chunks/{overview-page-3VDBOH7L.js → overview-page-QYI3KBDD.js} +1 -1
  121. package/dist/dashboard-web/chunks/roles-page-56VWM6CD.js +1 -0
  122. package/dist/dashboard-web/chunks/{schedules-page-HHN736H6.js → schedules-page-S5K6U4EO.js} +1 -1
  123. package/dist/dashboard-web/chunks/{sessions-page-EIWOZD7A.js → sessions-page-WBP4N7D2.js} +1 -1
  124. package/dist/dashboard-web/chunks/{settings-page-2IUT5LS4.js → settings-page-QUZDQARR.js} +1 -1
  125. package/dist/dashboard-web/chunks/{skills-page-JKFKMUEM.js → skills-page-IFY7AEND.js} +1 -1
  126. package/dist/dashboard-web/chunks/{team-federation-page-Q2PXC3UY.js → team-federation-page-C7FJQPFZ.js} +1 -1
  127. package/dist/dashboard-web/chunks/{v3-page-EBQCD4AO.js → v3-page-2LMF3WWR.js} +1 -1
  128. package/dist/dashboard-web/chunks/{whiteboards-page-QZRMVNZN.js → whiteboards-page-3XC6QRMY.js} +1 -1
  129. package/dist/dashboard-web/style.css +2 -4
  130. package/dist/dashboard.js +65 -9
  131. package/dist/dashboard.js.map +1 -1
  132. package/dist/i18n/en.d.ts.map +1 -1
  133. package/dist/i18n/en.js +33 -7
  134. package/dist/i18n/en.js.map +1 -1
  135. package/dist/i18n/zh.d.ts.map +1 -1
  136. package/dist/i18n/zh.js +31 -7
  137. package/dist/i18n/zh.js.map +1 -1
  138. package/dist/im/lark/card-builder.d.ts +7 -0
  139. package/dist/im/lark/card-builder.d.ts.map +1 -1
  140. package/dist/im/lark/card-builder.js +56 -0
  141. package/dist/im/lark/card-builder.js.map +1 -1
  142. package/dist/im/lark/card-handler.d.ts.map +1 -1
  143. package/dist/im/lark/card-handler.js +42 -19
  144. package/dist/im/lark/card-handler.js.map +1 -1
  145. package/dist/im/lark/client.d.ts +10 -0
  146. package/dist/im/lark/client.d.ts.map +1 -1
  147. package/dist/im/lark/client.js +79 -0
  148. package/dist/im/lark/client.js.map +1 -1
  149. package/dist/im/lark/event-dispatcher.d.ts +14 -1
  150. package/dist/im/lark/event-dispatcher.d.ts.map +1 -1
  151. package/dist/im/lark/event-dispatcher.js +171 -15
  152. package/dist/im/lark/event-dispatcher.js.map +1 -1
  153. package/dist/im/lark/lark-hosts.d.ts +5 -0
  154. package/dist/im/lark/lark-hosts.d.ts.map +1 -1
  155. package/dist/im/lark/lark-hosts.js +10 -0
  156. package/dist/im/lark/lark-hosts.js.map +1 -1
  157. package/dist/im/lark/message-parser.d.ts.map +1 -1
  158. package/dist/im/lark/message-parser.js +24 -7
  159. package/dist/im/lark/message-parser.js.map +1 -1
  160. package/dist/pm2-graceful-exit.d.ts +28 -0
  161. package/dist/pm2-graceful-exit.d.ts.map +1 -0
  162. package/dist/pm2-graceful-exit.js +39 -0
  163. package/dist/pm2-graceful-exit.js.map +1 -0
  164. package/dist/services/bridge-fallback-gate.d.ts +9 -2
  165. package/dist/services/bridge-fallback-gate.d.ts.map +1 -1
  166. package/dist/services/bridge-fallback-gate.js +31 -19
  167. package/dist/services/bridge-fallback-gate.js.map +1 -1
  168. package/dist/services/message-listener-store.d.ts +18 -0
  169. package/dist/services/message-listener-store.d.ts.map +1 -1
  170. package/dist/services/message-listener-store.js +35 -10
  171. package/dist/services/message-listener-store.js.map +1 -1
  172. package/dist/services/message-listener.d.ts +17 -0
  173. package/dist/services/message-listener.d.ts.map +1 -1
  174. package/dist/services/message-listener.js +26 -0
  175. package/dist/services/message-listener.js.map +1 -1
  176. package/dist/setup/bot-config-editor.d.ts.map +1 -1
  177. package/dist/setup/bot-config-editor.js +2 -0
  178. package/dist/setup/bot-config-editor.js.map +1 -1
  179. package/dist/setup/lark-scopes.json +1 -0
  180. package/dist/setup/verify-permissions.d.ts.map +1 -1
  181. package/dist/setup/verify-permissions.js +8 -0
  182. package/dist/setup/verify-permissions.js.map +1 -1
  183. package/dist/types.d.ts +34 -0
  184. package/dist/types.d.ts.map +1 -1
  185. package/dist/utils/child-env.d.ts +1 -1
  186. package/dist/utils/child-env.d.ts.map +1 -1
  187. package/dist/utils/child-env.js +13 -0
  188. package/dist/utils/child-env.js.map +1 -1
  189. package/dist/utils/file-lock.d.ts.map +1 -1
  190. package/dist/utils/file-lock.js +1 -1
  191. package/dist/utils/file-lock.js.map +1 -1
  192. package/dist/utils/global-install.d.ts.map +1 -1
  193. package/dist/utils/global-install.js +56 -10
  194. package/dist/utils/global-install.js.map +1 -1
  195. package/dist/utils/idle-detector.d.ts +4 -0
  196. package/dist/utils/idle-detector.d.ts.map +1 -1
  197. package/dist/utils/idle-detector.js +25 -0
  198. package/dist/utils/idle-detector.js.map +1 -1
  199. package/dist/utils/process-identity.d.ts +7 -0
  200. package/dist/utils/process-identity.d.ts.map +1 -0
  201. package/dist/utils/process-identity.js +62 -0
  202. package/dist/utils/process-identity.js.map +1 -0
  203. package/dist/worker.js +123 -9
  204. package/dist/worker.js.map +1 -1
  205. package/dist/workflows/events/payloads.d.ts +10 -10
  206. package/dist/workflows/events/schema.d.ts +28 -28
  207. package/dist/workflows/hostExecutors/registry.d.ts +2 -7
  208. package/dist/workflows/hostExecutors/registry.d.ts.map +1 -1
  209. package/dist/workflows/hostExecutors/registry.js.map +1 -1
  210. package/dist/workflows/shared/provider-reconciler.d.ts +1 -30
  211. package/dist/workflows/shared/provider-reconciler.d.ts.map +1 -1
  212. package/dist/workflows/shared/provider-reconciler.js.map +1 -1
  213. package/dist/workflows/v3/artifact-contract.d.ts +41 -0
  214. package/dist/workflows/v3/artifact-contract.d.ts.map +1 -0
  215. package/dist/workflows/v3/artifact-contract.js +20 -0
  216. package/dist/workflows/v3/artifact-contract.js.map +1 -0
  217. package/dist/workflows/v3/botmux-attempt-lease.d.ts +7 -0
  218. package/dist/workflows/v3/botmux-attempt-lease.d.ts.map +1 -0
  219. package/dist/workflows/v3/botmux-attempt-lease.js +189 -0
  220. package/dist/workflows/v3/botmux-attempt-lease.js.map +1 -0
  221. package/dist/workflows/v3/botmux-host-policy.d.ts +7 -0
  222. package/dist/workflows/v3/botmux-host-policy.d.ts.map +1 -0
  223. package/dist/workflows/v3/botmux-host-policy.js +34 -0
  224. package/dist/workflows/v3/botmux-host-policy.js.map +1 -0
  225. package/dist/workflows/v3/cli-run.d.ts +1 -1
  226. package/dist/workflows/v3/cli-run.d.ts.map +1 -1
  227. package/dist/workflows/v3/cli-run.js +1 -1
  228. package/dist/workflows/v3/cli-run.js.map +1 -1
  229. package/dist/workflows/v3/contract.d.ts +8 -89
  230. package/dist/workflows/v3/contract.d.ts.map +1 -1
  231. package/dist/workflows/v3/contract.js +2 -8
  232. package/dist/workflows/v3/contract.js.map +1 -1
  233. package/dist/workflows/v3/core-control.d.ts +16 -0
  234. package/dist/workflows/v3/core-control.d.ts.map +1 -0
  235. package/dist/workflows/v3/core-control.js +60 -0
  236. package/dist/workflows/v3/core-control.js.map +1 -0
  237. package/dist/workflows/v3/daemon-run.d.ts.map +1 -1
  238. package/dist/workflows/v3/daemon-run.js +2 -1
  239. package/dist/workflows/v3/daemon-run.js.map +1 -1
  240. package/dist/workflows/v3/dag-loader.d.ts +5 -0
  241. package/dist/workflows/v3/dag-loader.d.ts.map +1 -0
  242. package/dist/workflows/v3/dag-loader.js +22 -0
  243. package/dist/workflows/v3/dag-loader.js.map +1 -0
  244. package/dist/workflows/v3/dag.d.ts +2 -6
  245. package/dist/workflows/v3/dag.d.ts.map +1 -1
  246. package/dist/workflows/v3/dag.js +2 -24
  247. package/dist/workflows/v3/dag.js.map +1 -1
  248. package/dist/workflows/v3/ephemeral-pool.d.ts.map +1 -1
  249. package/dist/workflows/v3/ephemeral-pool.js +22 -12
  250. package/dist/workflows/v3/ephemeral-pool.js.map +1 -1
  251. package/dist/workflows/v3/event-contract.d.ts +273 -0
  252. package/dist/workflows/v3/event-contract.d.ts.map +1 -0
  253. package/dist/workflows/v3/event-contract.js +8 -0
  254. package/dist/workflows/v3/event-contract.js.map +1 -0
  255. package/dist/workflows/v3/gate-policy.d.ts +12 -0
  256. package/dist/workflows/v3/gate-policy.d.ts.map +1 -0
  257. package/dist/workflows/v3/gate-policy.js +20 -0
  258. package/dist/workflows/v3/gate-policy.js.map +1 -0
  259. package/dist/workflows/v3/gate-wait-store.d.ts +99 -0
  260. package/dist/workflows/v3/gate-wait-store.d.ts.map +1 -0
  261. package/dist/workflows/v3/gate-wait-store.js +263 -0
  262. package/dist/workflows/v3/gate-wait-store.js.map +1 -0
  263. package/dist/workflows/v3/host.js +1 -1
  264. package/dist/workflows/v3/host.js.map +1 -1
  265. package/dist/workflows/v3/human-gate.d.ts +4 -99
  266. package/dist/workflows/v3/human-gate.d.ts.map +1 -1
  267. package/dist/workflows/v3/human-gate.js +4 -275
  268. package/dist/workflows/v3/human-gate.js.map +1 -1
  269. package/dist/workflows/v3/in-process-attempt-lease.d.ts +10 -0
  270. package/dist/workflows/v3/in-process-attempt-lease.d.ts.map +1 -0
  271. package/dist/workflows/v3/in-process-attempt-lease.js +47 -0
  272. package/dist/workflows/v3/in-process-attempt-lease.js.map +1 -0
  273. package/dist/workflows/v3/journal.d.ts +2 -275
  274. package/dist/workflows/v3/journal.d.ts.map +1 -1
  275. package/dist/workflows/v3/journal.js.map +1 -1
  276. package/dist/workflows/v3/library-service.js +1 -1
  277. package/dist/workflows/v3/library-service.js.map +1 -1
  278. package/dist/workflows/v3/orchestrator.d.ts +1 -2
  279. package/dist/workflows/v3/orchestrator.d.ts.map +1 -1
  280. package/dist/workflows/v3/orchestrator.js.map +1 -1
  281. package/dist/workflows/v3/portable-artifact-snapshot.d.ts +15 -0
  282. package/dist/workflows/v3/portable-artifact-snapshot.d.ts.map +1 -0
  283. package/dist/workflows/v3/portable-artifact-snapshot.js +76 -0
  284. package/dist/workflows/v3/portable-artifact-snapshot.js.map +1 -0
  285. package/dist/workflows/v3/portable-final-outputs.d.ts +37 -0
  286. package/dist/workflows/v3/portable-final-outputs.d.ts.map +1 -0
  287. package/dist/workflows/v3/portable-final-outputs.js +137 -0
  288. package/dist/workflows/v3/portable-final-outputs.js.map +1 -0
  289. package/dist/workflows/v3/portable-run-snapshot.d.ts +14 -0
  290. package/dist/workflows/v3/portable-run-snapshot.d.ts.map +1 -0
  291. package/dist/workflows/v3/portable-run-snapshot.js +176 -0
  292. package/dist/workflows/v3/portable-run-snapshot.js.map +1 -0
  293. package/dist/workflows/v3/portable-runtime.d.ts +83 -0
  294. package/dist/workflows/v3/portable-runtime.d.ts.map +1 -0
  295. package/dist/workflows/v3/portable-runtime.js +135 -0
  296. package/dist/workflows/v3/portable-runtime.js.map +1 -0
  297. package/dist/workflows/v3/runtime-host-contract.d.ts +182 -0
  298. package/dist/workflows/v3/runtime-host-contract.d.ts.map +1 -0
  299. package/dist/workflows/v3/runtime-host-contract.js +9 -0
  300. package/dist/workflows/v3/runtime-host-contract.js.map +1 -0
  301. package/dist/workflows/v3/runtime.d.ts +12 -226
  302. package/dist/workflows/v3/runtime.d.ts.map +1 -1
  303. package/dist/workflows/v3/runtime.js +14 -3173
  304. package/dist/workflows/v3/runtime.js.map +1 -1
  305. package/dist/workflows/v3/shared-node-runtime.d.ts +203 -0
  306. package/dist/workflows/v3/shared-node-runtime.d.ts.map +1 -0
  307. package/dist/workflows/v3/shared-node-runtime.js +2978 -0
  308. package/dist/workflows/v3/shared-node-runtime.js.map +1 -0
  309. package/dist/workflows/v3/shared-runtime.d.ts +17 -0
  310. package/dist/workflows/v3/shared-runtime.d.ts.map +1 -0
  311. package/dist/workflows/v3/shared-runtime.js +12 -0
  312. package/dist/workflows/v3/shared-runtime.js.map +1 -0
  313. package/package.json +4 -1
  314. package/dist/dashboard-web/chunks/roles-page-LHVAU2BI.js +0 -1
@@ -0,0 +1 @@
1
+ {"version":3,"file":"shared-node-runtime.js","sourceRoot":"","sources":["../../../src/workflows/v3/shared-node-runtime.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,17 @@
1
+ /**
2
+ * Supported daemon-independent v3 workflow surface.
3
+ *
4
+ * Keep this module limited to schema, pure scheduling/control policy, and
5
+ * host contracts. Node filesystem stores and Botmux/Lark adapters live behind
6
+ * separate modules.
7
+ */
8
+ export { DEFAULT_HUMAN_GATE_OPTIONS, DEFAULT_REVISIT_BUDGET_PER_PAIR, DEFAULT_REVISIT_BUDGET_PER_RUN, isGoalNode, isHostNode, isLoopNode, loopInstanceId, topologicalOrder, validateDag, } from './dag.js';
9
+ export type { V3Dag, V3DependRef, V3EdgeWhen, V3GoalNode, V3HostNode, V3HumanGate, V3LoopExitWhen, V3LoopNode, V3Node, V3TriggerRule, } from './dag.js';
10
+ export { decideNext, findSinks, } from './orchestrator.js';
11
+ export type { V3Action, V3EdgeRunState, V3LoopRunState, V3NodeState, V3NodeStatus, V3RunState, } from './orchestrator.js';
12
+ export { matchLoopExitWhen, revisitBudgetStatus, } from './core-control.js';
13
+ export { canResolveGateWait, normalizeGateWaitInput, selectedResolution, } from './gate-policy.js';
14
+ export type { NormalizedGatePolicy } from './gate-policy.js';
15
+ export type { AttemptLease, ExecutionContextSnapshot, GateResolution, GateResolutionRequest, GateResolver, HostExecutorPolicy, HostExecutorPolicyRequest, } from './runtime-host-contract.js';
16
+ export type { StoredEvent, V3Event, V3LoopRef, } from './event-contract.js';
17
+ //# sourceMappingURL=shared-runtime.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"shared-runtime.d.ts","sourceRoot":"","sources":["../../../src/workflows/v3/shared-runtime.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,EACL,0BAA0B,EAC1B,+BAA+B,EAC/B,8BAA8B,EAC9B,UAAU,EACV,UAAU,EACV,UAAU,EACV,cAAc,EACd,gBAAgB,EAChB,WAAW,GACZ,MAAM,UAAU,CAAC;AAClB,YAAY,EACV,KAAK,EACL,WAAW,EACX,UAAU,EACV,UAAU,EACV,UAAU,EACV,WAAW,EACX,cAAc,EACd,UAAU,EACV,MAAM,EACN,aAAa,GACd,MAAM,UAAU,CAAC;AAClB,OAAO,EACL,UAAU,EACV,SAAS,GACV,MAAM,mBAAmB,CAAC;AAC3B,YAAY,EACV,QAAQ,EACR,cAAc,EACd,cAAc,EACd,WAAW,EACX,YAAY,EACZ,UAAU,GACX,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EACL,iBAAiB,EACjB,mBAAmB,GACpB,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EACL,kBAAkB,EAClB,sBAAsB,EACtB,kBAAkB,GACnB,MAAM,kBAAkB,CAAC;AAC1B,YAAY,EAAE,oBAAoB,EAAE,MAAM,kBAAkB,CAAC;AAC7D,YAAY,EACV,YAAY,EACZ,wBAAwB,EACxB,cAAc,EACd,qBAAqB,EACrB,YAAY,EACZ,kBAAkB,EAClB,yBAAyB,GAC1B,MAAM,4BAA4B,CAAC;AACpC,YAAY,EACV,WAAW,EACX,OAAO,EACP,SAAS,GACV,MAAM,qBAAqB,CAAC"}
@@ -0,0 +1,12 @@
1
+ /**
2
+ * Supported daemon-independent v3 workflow surface.
3
+ *
4
+ * Keep this module limited to schema, pure scheduling/control policy, and
5
+ * host contracts. Node filesystem stores and Botmux/Lark adapters live behind
6
+ * separate modules.
7
+ */
8
+ export { DEFAULT_HUMAN_GATE_OPTIONS, DEFAULT_REVISIT_BUDGET_PER_PAIR, DEFAULT_REVISIT_BUDGET_PER_RUN, isGoalNode, isHostNode, isLoopNode, loopInstanceId, topologicalOrder, validateDag, } from './dag.js';
9
+ export { decideNext, findSinks, } from './orchestrator.js';
10
+ export { matchLoopExitWhen, revisitBudgetStatus, } from './core-control.js';
11
+ export { canResolveGateWait, normalizeGateWaitInput, selectedResolution, } from './gate-policy.js';
12
+ //# sourceMappingURL=shared-runtime.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"shared-runtime.js","sourceRoot":"","sources":["../../../src/workflows/v3/shared-runtime.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,EACL,0BAA0B,EAC1B,+BAA+B,EAC/B,8BAA8B,EAC9B,UAAU,EACV,UAAU,EACV,UAAU,EACV,cAAc,EACd,gBAAgB,EAChB,WAAW,GACZ,MAAM,UAAU,CAAC;AAalB,OAAO,EACL,UAAU,EACV,SAAS,GACV,MAAM,mBAAmB,CAAC;AAS3B,OAAO,EACL,iBAAiB,EACjB,mBAAmB,GACpB,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EACL,kBAAkB,EAClB,sBAAsB,EACtB,kBAAkB,GACnB,MAAM,kBAAkB,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "botmux",
3
- "version": "3.9.2",
3
+ "version": "3.10.0",
4
4
  "description": "Bridge between IM platforms and AI coding CLIs — one topic, one CLI session with live streaming",
5
5
  "type": "module",
6
6
  "main": "dist/index-daemon.js",
@@ -20,6 +20,9 @@
20
20
  },
21
21
  "scripts": {
22
22
  "build": "pnpm audit:domains && node scripts/clean-dist.mjs && tsc && node scripts/generate-runtime-build-id.mjs && cp src/setup/lark-scopes.json dist/setup/ && pnpm dashboard:bundle && chmod +x dist/cli.js && node scripts/audit-dist.mjs",
23
+ "workflow-core:build": "node scripts/build-workflow-core-package.mjs",
24
+ "workflow-core:test": "pnpm workflow-core:build && node scripts/test-workflow-core-package.mjs",
25
+ "workflow-core:pack": "pnpm workflow-core:build && node scripts/pack-workflow-core-package.mjs",
23
26
  "audit:domains": "node scripts/audit-public-domains.mjs",
24
27
  "dashboard:bundle": "node scripts/build-dashboard.mjs",
25
28
  "dashboard:watch": "node scripts/build-dashboard.mjs --watch",
@@ -1 +0,0 @@
1
- import{a as At,b as _t,c as Bt,d as Dt}from"./chunk-R3FXBFQH.js";import{c as Et}from"./chunk-EZH56JCI.js";import{b as Ct,c as de,h as Ge,q as Fe}from"./chunk-5CJMHTT4.js";import{C as Tt,y as Lt}from"./chunk-E3HZZXK5.js";import{a as De}from"./chunk-SYC6D5XU.js";import{a as cn,d as Mt}from"./chunk-5THX4DI2.js";import{c as Be}from"./chunk-7SZRL6FY.js";var a=Be(cn(),1);function Ft(t,n){let r=n.trim().toLowerCase();return r?t.filter(o=>o.openId.toLowerCase().includes(r)||o.name.toLowerCase().includes(r)||o.memberType.toLowerCase().includes(r)):t}function Gt(t){return[...new Set([...t].filter(Boolean))]}function $t(t){let n=new Set(t.targetIds.filter(Boolean));if(t.mode==="all_except_excluded"){let o=new Set(t.exclude);for(let c of n)o.delete(c),t.listening||o.add(c);return{include:[],exclude:Gt(o)}}let r=new Set(t.include);for(let o of n)r.delete(o),t.listening&&r.add(o);return{include:Gt(r),exclude:[]}}function $e(t){let n=t.targetIds.filter(Boolean);if(n.length===0)return t.mode==="all_except_excluded"?"listen":"ignore";let r=new Set;if(t.mode==="all_except_excluded"){let o=new Set(t.exclude);for(let c of n)r.add(o.has(c)?"ignore":"listen")}else{let o=new Set(t.include);for(let c of n)r.add(o.has(c)?"listen":"ignore")}return r.size===1?[...r][0]:"mixed"}function Ot(t,n,r){let o={};for(let c of t){if(!c)continue;let f=n(c),m=f==="user"||f==="bot"?f:r?.[c];(m==="user"||m==="bot")&&(o[c]=m)}return o}var O=32768,Ut=Math.floor(O*.95),ue=32768,jt=Math.floor(ue*.95),Oe=5,Ue=20,un=/^[A-Za-z0-9._-]{1,64}$/;function je(t){return un.test(t)&&t!=="."&&t!==".."}function Ht(t=location.hash){let[,n=""]=t.split("?");return new URLSearchParams(n).get("chatId")?.trim()||null}function He(t,n){return Bt(t,n)}function Pe(t){return new TextEncoder().encode(t).length}function Vt(t){return t.memberBots.filter(n=>n.inChat&&n.hasRole).length}function qt(t){return t.memberBots.filter(n=>n.inChat).length}function pe(t,n){return n?t.find(r=>r.larkAppId===n):void 0}function Kt(t,n){let r=n.toLowerCase();return r?t.filter(o=>{let c=o.chatId.toLowerCase().includes(r)||(o.name??"").toLowerCase().includes(r),f=o.memberBots.some(m=>m.larkAppId.toLowerCase().includes(r)||(m.botName??"").toLowerCase().includes(r));return c||f}):t}function Wt(t,n){let r=n.toLowerCase();return t.filter(o=>!r||o.profileId.toLowerCase().includes(r))}async function x(t){return t.json().catch(()=>({}))}async function Yt(){let t=await fetch("/api/groups"),n=await x(t);return{bots:(n.bots??[]).map(r=>({larkAppId:r.larkAppId,botName:r.botName??r.larkAppId,botAvatarUrl:r.botAvatarUrl})),groups:(n.chats??[]).map(r=>({chatId:r.chatId,name:r.name??r.chatId,memberBots:(r.memberBots??[]).map(o=>({larkAppId:o.larkAppId,botName:o.botName??o.larkAppId,inChat:o.inChat??!1,hasRole:o.hasRole??!1,hasMessageListener:o.hasMessageListener??!1,oncallChat:o.oncallChat??null}))}))}}async function zt(){let t=await fetch("/api/role-profiles");return(await x(t)).profiles??[]}async function q(t){let n=await fetch(`/api/role-profiles/${encodeURIComponent(t)}`);return(await x(n)).entries??[]}async function Ve(t,n){let r=await fetch(`/api/roles/${encodeURIComponent(t)}/${encodeURIComponent(n)}`);return x(r)}async function Jt(t,n,r,o){return(await fetch(`/api/roles/${encodeURIComponent(t)}/${encodeURIComponent(n)}`,{method:"PUT",headers:{"content-type":"application/json"},body:JSON.stringify({content:r,injectMode:o})})).ok}async function Xt(t,n,r){return(await fetch(`/api/roles/${encodeURIComponent(t)}/${encodeURIComponent(n)}`,{method:"PUT",headers:{"content-type":"application/json"},body:JSON.stringify({injectMode:r})})).ok}async function Qt(t,n){return(await fetch(`/api/roles/${encodeURIComponent(t)}/${encodeURIComponent(n)}`,{method:"DELETE"})).ok}async function qe(t,n){let r=await fetch(`/api/message-listeners/${encodeURIComponent(t)}/${encodeURIComponent(n)}`);return(await x(r)).listener??{enabled:!1,prompt:"",messagePolicy:{scope:"top_level"}}}async function Zt(t,n,r){return(await fetch(`/api/message-listeners/${encodeURIComponent(t)}/${encodeURIComponent(n)}`,{method:"PUT",headers:{"content-type":"application/json"},body:JSON.stringify(r)})).ok}async function er(t,n){return(await fetch(`/api/message-listeners/${encodeURIComponent(t)}/${encodeURIComponent(n)}`,{method:"DELETE"})).ok}function he(t){return Number.isFinite(t)?Math.min(Ue,Math.max(1,Math.floor(t))):Oe}function ce(t){return String(t).padStart(2,"0")}function tr(t){if(!t)return"";let n=Number(t);if(!Number.isFinite(n)||n<=0)return"";let r=n<1e12?n*1e3:n,o=new Date(r);return Number.isFinite(o.getTime())?[o.getFullYear(),"-",ce(o.getMonth()+1),"-",ce(o.getDate())," ",ce(o.getHours()),":",ce(o.getMinutes()),":",ce(o.getSeconds())].join(""):""}async function rr(t,n,r,o){let c=await fetch(`/api/message-listeners/${encodeURIComponent(t)}/${encodeURIComponent(n)}/preview`,{method:"POST",headers:{"content-type":"application/json"},body:JSON.stringify({listener:r,limit:he(o)})}),f=await x(c);return{ok:c.ok&&f.ok!==!1,requestedLimit:f.requestedLimit??he(o),matches:f.matches??[],error:f.error}}async function nr(t,n,r,o){let c=await fetch(`/api/message-listeners/${encodeURIComponent(t)}/${encodeURIComponent(n)}/run-preview`,{method:"POST",headers:{"content-type":"application/json"},body:JSON.stringify({listener:r,limit:he(o)})}),f=await x(c);return{ok:c.ok&&f.ok!==!1,requestedLimit:f.requestedLimit??he(o),matches:f.matches??[],results:f.results,error:f.error}}async function sr(t,n,r){let o=await fetch(`/api/message-listeners/${encodeURIComponent(t)}/${encodeURIComponent(n)}/run-preview/${encodeURIComponent(r)}`),c=await x(o);return{ok:o.ok&&c.ok!==!1,runId:c.runId,results:c.results,error:c.error}}async function or(t,n){let r=await fetch(`/api/groups/${encodeURIComponent(t)}/${encodeURIComponent(n)}/members-display`);return(await x(r)).members??[]}async function lr(t,n){let r=await fetch(`/api/role-profiles/${encodeURIComponent(t)}/${encodeURIComponent(n)}`);return x(r)}async function ir(t,n,r){return(await fetch(`/api/role-profiles/${encodeURIComponent(t)}/${encodeURIComponent(n)}`,{method:"PUT",headers:{"content-type":"application/json"},body:JSON.stringify({content:r,allowEmpty:!0})})).ok}async function ar(t,n){return(await fetch(`/api/role-profiles/${encodeURIComponent(t)}/${encodeURIComponent(n)}`,{method:"DELETE"})).ok}async function dr(t,n){let r=await Promise.all(n.map(async m=>{try{let p=await fetch(`/api/role-profiles/${encodeURIComponent(m.profileId)}`),y=await x(p);return[m.profileId,Array.isArray(y.entries)?y.entries:[]]}catch{return[m.profileId,[]]}})),o=new Set,c=[];for(let m of t)for(let p of m.memberBots){if(!p.inChat||!p.hasRole)continue;let y=He(p.larkAppId,m.chatId);o.has(y)||(o.add(y),c.push({larkAppId:p.larkAppId,chatId:m.chatId}))}let f=await Dt(c);return{entriesByProfile:new Map(r),effectiveRolesByBot:f}}async function cr(t){let n=await fetch(`/api/role-profiles/${encodeURIComponent(t.profileId)}/apply`,{method:"POST",headers:{"content-type":"application/json"},body:JSON.stringify({chatId:t.chatId,larkAppId:t.larkAppId,force:t.force,preview:t.preview})}),r=await x(n);return{larkAppId:t.larkAppId,ok:n.ok&&r.ok!==!1,status:n.status,error:r.error,wouldRefuse:r.wouldRefuse}}var e=Be(Mt(),1),fr=["text","post","image","interactive"],K={enabled:!1,prompt:"",senderPolicy:{mode:"include_only",includeSenderTypes:["user"],excludeSelf:!0},messagePolicy:{includeMsgTypes:[...fr],scope:"top_level"}};function We(t){let n=t?.senderPolicy?.mode==="include_only"?"include_only":"all_except_excluded";return{enabled:t?.enabled===!0,name:t?.name??"",replyCardTitle:t?.replyCardTitle??"",workingDir:t?.workingDir??"",prompt:t?.prompt??"",senderPolicy:{mode:n,includeSenderOpenIds:[...t?.senderPolicy?.includeSenderOpenIds??[]],excludeSenderOpenIds:[...t?.senderPolicy?.excludeSenderOpenIds??[]],...t?.senderPolicy?.excludeSenderKinds?{excludeSenderKinds:{...t.senderPolicy.excludeSenderKinds}}:{},includeSenderTypes:[...t?.senderPolicy?.includeSenderTypes??K.senderPolicy?.includeSenderTypes??[]],excludeSenderTypes:[...t?.senderPolicy?.excludeSenderTypes??[]],excludeSelf:t?.senderPolicy?.excludeSelf!==!1},messagePolicy:{includeMsgTypes:[...t?.messagePolicy?.includeMsgTypes??K.messagePolicy?.includeMsgTypes??[]],scope:"top_level"}}}function ur(t){return t?.enabled===!0&&t.prompt.trim().length>0}function pn(t){return t.memberBots.some(n=>n.inChat&&(n.hasRole||n.hasMessageListener))}function Ke(t,n){return t?.name||n}function mn(t,n){let r=new Map;for(let o of t??[])r.set(o.messageId,o);for(let o of n)r.set(o.messageId,{...r.get(o.messageId),...o});return[...r.values()]}function fn(t,n){return!n||t==="failed"?"error":t==="replied"?"ok":t==="running"?"running":"triggered"}function gn(t,n=[]){return We(t??K)}function yn(){let t=(0,a.useRef)(!0);return(0,a.useEffect)(()=>(t.current=!0,()=>{t.current=!1}),[]),t}function vn(){let t=(0,a.useRef)(new Set);return(0,a.useEffect)(()=>()=>{for(let n of t.current)window.clearTimeout(n);t.current.clear()},[]),(0,a.useCallback)((n,r)=>{let o=window.setTimeout(()=>{t.current.delete(o),n()},r);return t.current.add(o),o},[])}function gr(t){return(0,e.jsx)(Ct,{html:Lt({name:t.bot.botName,larkAppId:t.bot.larkAppId,avatarUrl:t.bot.botAvatarUrl,size:"sm"})})}function yr(t){let n=Et(),r=yn(),o=vn(),[c,f]=(0,a.useState)([]),[m,p]=(0,a.useState)([]),[y,L]=(0,a.useState)([]),[Se,R]=(0,a.useState)({entriesByProfile:new Map,effectiveRolesByBot:new Map}),[W,A]=(0,a.useState)(!1),[we,Y]=(0,a.useState)(!0),[xe,_]=(0,a.useState)(!0),[F,k]=(0,a.useState)(""),[z,me]=(0,a.useState)(""),[U,B]=(0,a.useState)(()=>new Set),[g,fe]=(0,a.useState)(null),[v,J]=(0,a.useState)(null),[d,b]=(0,a.useState)(null),[I,T]=(0,a.useState)(""),[X,Q]=(0,a.useState)("every"),[Ye,ze]=(0,a.useState)(!1),[Je,Xe]=(0,a.useState)(!1),[vr,Qe]=(0,a.useState)(!1),[br,Re]=(0,a.useState)(null),[hr,Ze]=(0,a.useState)(null),[j,et]=(0,a.useState)("role"),[Pr,Ir]=(0,a.useState)(null),[P,D]=(0,a.useState)(()=>We(K)),[ke,tt]=(0,a.useState)([]),[Sr,rt]=(0,a.useState)(!1),[wr,nt]=(0,a.useState)(!1),[st,ot]=(0,a.useState)(!1),[Ne,lt]=(0,a.useState)(!1),[xr,G]=(0,a.useState)(null),[Le,Rr]=(0,a.useState)(Oe),[kr,ge]=(0,a.useState)({kind:"idle"}),Z=(0,a.useRef)(null),it=(0,a.useRef)(0),[S,Nr]=(0,a.useState)(null),[C,at]=(0,a.useState)(null),[ee,te]=(0,a.useState)([]),[re,ye]=(0,a.useState)(""),[$,ne]=(0,a.useState)(null),[dt,Lr]=(0,a.useState)(!1),[ct,ut]=(0,a.useState)(()=>new Set),[pt,mt]=(0,a.useState)(!1),[ft,gt]=(0,a.useState)(!1),[Tr,Te]=(0,a.useState)(null),[Mr,se]=(0,a.useState)({kind:"idle"}),H=(0,a.useRef)(0),oe=(0,a.useRef)(0),yt=(0,a.useRef)(null),Me=g?c.find(s=>s.chatId===g):void 0,Cr=Me&&v?Me.memberBots.find(s=>s.larkAppId===v):void 0,Ce=C?m.find(s=>s.larkAppId===C):void 0,Er=pe(ee,C),Ee=$?c.find(s=>s.chatId===$):void 0,ve=Ee?.memberBots.filter(s=>s.inChat)??[],Ar=ve.map(s=>s.larkAppId).join("\0"),_r=ee.map(s=>s.larkAppId).sort().join("\0"),Br=(0,a.useMemo)(()=>Kt(c,F),[c,F]),Dr=(0,a.useMemo)(()=>Wt(y,z),[y,z]),Ae=Pe(I),_e=Pe(re),vt=Pe(P.prompt),bt=(0,a.useMemo)(()=>{let s=new Map;for(let l of ke)s.set(l.openId,l);return s},[ke]),M=(0,a.useCallback)((s,l,i=!1)=>{let u=Date.now()+Math.random();s({text:l,isError:i,id:u}),o(()=>{s(h=>h?.id===u?null:h)},i?3e3:2e3)},[o]),N=(0,a.useCallback)(async(s,l)=>{try{let i=await dr(s,l);if(!r.current)return;R(i),A(!0)}catch{if(!r.current)return;R({entriesByProfile:new Map,effectiveRolesByBot:new Map}),A(!0)}},[r]),E=(0,a.useCallback)(async()=>{let s=await Yt();return r.current&&(f(s.groups),p(s.bots)),s},[r]),le=(0,a.useCallback)(async()=>{let s=await zt();return r.current&&L(s),s},[r]),ie=(0,a.useCallback)((s,l=[])=>{let i=gn(s??K,l);Ir(s),D(i)},[]),ht=(0,a.useCallback)(async(s,l,i)=>{rt(!0),nt(!0),tt([]);try{let[u,h]=await Promise.all([qe(s,l).catch(()=>We(K)),or(s,l).catch(()=>[])]);if(!r.current||i!==H.current)return;ie(ur(u)?u:null,h),tt(h),G(null)}finally{r.current&&i===H.current&&(rt(!1),nt(!1))}},[r,ie]),Pt=(0,a.useCallback)(async()=>{Y(!0),_(!0),A(!1);try{let s=await E();if(!r.current)return;let l=await le();if(!r.current||(await Tt(),!r.current))return;if(B(new Set(s.groups.filter(pn).map(i=>i.chatId))),t.tab==="profiles"){let i=Ht();ne(u=>u||(i&&s.groups.some(h=>h.chatId===i)?i:s.groups[0]?.chatId??null))}else ne(i=>i??s.groups[0]?.chatId??null);Y(!1),_(!1),N(s.groups,l)}catch{if(!r.current)return;Y(!1),_(!1),A(!0)}},[r,t.tab,E,le,N]);(0,a.useEffect)(()=>{Pt()},[Pt]),(0,a.useEffect)(()=>()=>{it.current+=1,Z.current=null},[]),(0,a.useEffect)(()=>{$||c.length===0||ne(c[0].chatId)},[c,$]),(0,a.useEffect)(()=>{let s=new Set(ve.filter(l=>!!pe(ee,l.larkAppId)).map(l=>l.larkAppId));ut(s),se({kind:"idle"})},[_r,Ar]);async function Gr(s,l){let i=++H.current;fe(s),J(l),Re(null),Ze(null),G(null),ie(null);let u=await Ve(l,s);!r.current||i!==H.current||(b(u),T(u.content??""),Q(u.injectMode==="once"?"once":"every"),await ht(l,s,i))}async function Fr(){let s=await E();if(r.current&&(N(s.groups,y),g&&v)){let l=++H.current,i=await Ve(v,g);if(!r.current||l!==H.current)return;b(i),T(i.content??""),Q(i.injectMode==="once"?"once":"every"),await ht(v,g,l)}}async function $r(){if(!(!g||!v)){ze(!0);try{let s=await Jt(v,g,I,X);if(!r.current)return;if(s){let l=await E();if(!r.current)return;b(i=>i&&{...i,content:I,hasRole:!0,injectMode:X}),N(l.groups,y),M(Re,n("roles.saved"))}else M(Re,I.trim().length===0?n("roles.emptyError"):n("roles.saveFailed"),!0)}finally{r.current&&ze(!1)}}}async function Or(){if(!(!g||!v)&&confirm(n("roles.confirmDelete"))){Xe(!0);try{let s=await Qt(v,g);if(!r.current)return;if(s){let l=await E();if(!r.current)return;fe(null),J(null),b(null),T(""),Q("every"),N(l.groups,y)}}finally{r.current&&Xe(!1)}}}async function Ur(s){if(!g||!v)return;let l=X;Q(s),Qe(!0);try{let i=await Xt(v,g,s);if(!r.current)return;i||Q(l),M(Ze,n(i?"roles.saved":"roles.saveFailed"),!i)}finally{r.current&&Qe(!1)}}function jr(s){D(l=>({...l,...s}))}function Hr(s){D(l=>({...l,senderPolicy:{...l.senderPolicy??{},...s}}))}function Vr(s){D(l=>({...l,messagePolicy:{...l.messagePolicy??{scope:"top_level"},...s,scope:"top_level"}}))}function qr(s,l){D(i=>{let u=new Set(i.senderPolicy?.includeSenderTypes??[]);if(l)u.add(s);else{if(u.size<=1&&u.has(s))return i;u.delete(s)}return{...i,senderPolicy:{...i.senderPolicy??{},includeSenderTypes:[...u]}}})}function Kr(s,l){D(i=>{let u=new Set(i.messagePolicy?.includeMsgTypes??[]);if(l)u.add(s);else{if(u.size<=1&&u.has(s))return i;u.delete(s)}return{...i,messagePolicy:{...i.messagePolicy??{scope:"top_level"},includeMsgTypes:[...u],scope:"top_level"}}})}function It(s,l){D(i=>{let u=i.senderPolicy?.mode==="all_except_excluded"?"all_except_excluded":"include_only",h=$t({mode:u,include:i.senderPolicy?.includeSenderOpenIds??[],exclude:i.senderPolicy?.excludeSenderOpenIds??[],targetIds:s,listening:l});return{...i,senderPolicy:{...i.senderPolicy??{},mode:u,includeSenderOpenIds:h.include,excludeSenderOpenIds:h.exclude}}})}function Wr(s,l){It([s],l)}function Yr(s,l){It(s,l)}function zr(s){D(l=>({...l,senderPolicy:{...l.senderPolicy??{},mode:s,includeSenderOpenIds:[...l.senderPolicy?.includeSenderOpenIds??[]],excludeSenderOpenIds:[...l.senderPolicy?.excludeSenderOpenIds??[]]}}))}function St(){let s=P.senderPolicy??{},l=P.messagePolicy??{},i=s.mode==="all_except_excluded"?"all_except_excluded":"include_only",u=[...new Set(s.includeSenderOpenIds??[])].filter(Boolean),h=[...new Set(s.excludeSenderOpenIds??[])].filter(Boolean),ae=Ot(h,be=>bt.get(be)?.memberType,s.excludeSenderKinds),w=[...new Set(s.includeSenderTypes??[])].filter(be=>be==="user"||be==="bot"),Nt=[...new Set(l.includeMsgTypes??[])].filter(Boolean);return{enabled:P.enabled,...P.name?.trim()?{name:P.name.trim()}:{},...P.replyCardTitle?.trim()?{replyCardTitle:P.replyCardTitle.trim()}:{},...P.workingDir?.trim()?{workingDir:P.workingDir.trim()}:{},prompt:P.prompt.trim(),senderPolicy:{mode:i,...i==="include_only"&&u.length>0?{includeSenderOpenIds:u}:{},...i==="all_except_excluded"&&h.length>0?{excludeSenderOpenIds:h}:{},...i==="all_except_excluded"&&Object.keys(ae).length>0?{excludeSenderKinds:ae}:{},...w.length>0?{includeSenderTypes:w}:{},excludeSelf:s.excludeSelf!==!1},messagePolicy:{...Nt.length>0?{includeMsgTypes:Nt}:{},scope:"top_level"}}}function Jr(){return P.prompt.trim()?P.senderPolicy?.mode!=="all_except_excluded"&&(P.senderPolicy?.includeSenderOpenIds?.length??0)===0?(M(G,n("roles.listenerSenderRequired"),!0),null):{...St(),enabled:!0}:(M(G,n("roles.listenerPromptRequired"),!0),null)}async function wt(s){if(!g||!v)return;let l=Jr();if(!l)return;let i=s?"run":"preview";ge({kind:"loading",mode:i});try{let u=s?await nr(v,g,l,Le):await rr(v,g,l,Le);if(!r.current)return;ge(u.ok?{kind:"result",response:u,mode:i}:{kind:"error",text:u.error||n("roles.listenerPreviewFailed")}),u.ok&&s&&u.runId&&Xr(u.runId)}catch(u){if(!r.current)return;ge({kind:"error",text:u instanceof Error?u.message:n("roles.listenerPreviewFailed")})}}function Xr(s){if(!g||!v)return;let l=++it.current;Z.current={runId:s,token:l};let i=async()=>{if(!r.current)return;let u=Z.current;if(!(!u||u.runId!==s||u.token!==l||!g||!v))try{let h=await sr(v,g,s);if(!r.current)return;if(h.ok&&h.results){let ae=h.results;ge(w=>w.kind!=="result"||w.mode!=="run"||w.response.runId!==s?w:{...w,response:{...w.response,results:mn(w.response.results,ae)}}),ae.some(w=>w.state==="triggered"||w.state==="running")?o(i,1500):Z.current?.runId===s&&(Z.current=null)}}catch{o(i,2500)}};o(i,1500)}async function Qr(){if(!(!g||!v)){if(!P.enabled){await xt(!1);return}if(!P.prompt.trim()){M(G,n("roles.listenerPromptRequired"),!0);return}if(P.senderPolicy?.mode!=="all_except_excluded"&&(P.senderPolicy?.includeSenderOpenIds?.length??0)===0){M(G,n("roles.listenerSenderRequired"),!0);return}ot(!0);try{let s=await Zt(v,g,St());if(!r.current)return;if(s){let l=await E();if(!r.current)return;let i=await qe(v,g);if(!r.current)return;ie(ur(i)?i:null),N(l.groups,y)}M(G,n(s?"roles.saved":"roles.saveFailed"),!s)}finally{r.current&&ot(!1)}}}async function xt(s=!0){if(!(!g||!v)&&!(s&&!confirm(n("roles.listenerConfirmDelete")))){lt(!0);try{let l=await er(v,g);if(!r.current)return;if(l){let i=await E();if(!r.current)return;ie(null),N(i.groups,y)}M(G,n(l?"roles.saved":"roles.saveFailed"),!l)}finally{r.current&&lt(!1)}}}async function Rt(s){let l=s.trim();if(!je(l))return;let i=++oe.current;Nr(l),at(null),ye(""),se({kind:"idle"}),ne(h=>h??c[0]?.chatId??null);let u=await q(l);!r.current||i!==oe.current||(te(u),Te(null))}async function Zr(s){if(!S)return;let l=++oe.current;at(s);let i=await lr(S,s);if(!r.current||l!==oe.current)return;ye(i.content??"");let u=await q(S);!r.current||l!==oe.current||(te(u),Te(null))}async function en(){let s=await E();if(!r.current)return;let l=await le();if(r.current){if(S){let i=await q(S);if(!r.current)return;te(i)}N(s.groups,l)}}async function tn(){let s=yt.current,l=s?.value.trim()??"";if(l){if(!je(l)){s?.setCustomValidity(n("roles.profileIdInvalid")),s?.reportValidity();return}s?.setCustomValidity(""),await Rt(l),r.current&&(location.hash.startsWith("#/roles/profile")||(location.hash="#/roles/profile"))}}async function rn(){if(!(!S||!C)){mt(!0);try{let s=await ir(S,C,re);if(!r.current)return;let l=await le();if(!r.current)return;let i=await q(S);if(!r.current)return;te(i),N(c,l),M(Te,n(s?"roles.saved":"roles.saveFailed"),!s)}finally{r.current&&mt(!1)}}}async function nn(){if(!(!S||!C)&&confirm(n("roles.confirmDeleteProfileEntry"))){gt(!0);try{if(await ar(S,C),!r.current)return;ye("");let s=await le();if(!r.current)return;let l=await q(S);if(!r.current)return;te(l),N(c,s)}finally{r.current&&gt(!1)}}}function sn(s,l){ut(i=>{let u=new Set(i);return l?u.add(s):u.delete(s),u})}async function kt(s){if(!S)return;let l=$??c[0]?.chatId;if(!l)return;let i=[...ct];if(i.length===0){se({kind:"text",text:n("roles.applyPickBots")});return}se({kind:"text",text:"..."});let u=await Promise.all(i.map(h=>cr({profileId:S,chatId:l,larkAppId:h,force:dt,preview:s})));if(r.current&&(se({kind:"results",preview:s,results:u}),!s)){let h=await E();if(!r.current)return;N(h.groups,y)}}let on=Ye||Ae>O||I.trim().length===0,ln=st||Ne||vt>ue||P.enabled&&P.prompt.trim().length===0,an=pt||_e>O||re.trim().length===0,V=t.tab==="profiles",dn=(0,e.jsxs)("nav",{className:"roles-subnav insight-tabs",role:"tablist","aria-label":n("roles.title"),children:[(0,e.jsx)("a",{href:"#/roles",className:`itab${V?"":" on"}`,role:"tab","aria-selected":!V,children:n("roles.tabGroups")}),(0,e.jsx)("a",{href:"#/roles/profile",className:`itab${V?" on":""}`,role:"tab","aria-selected":V,children:n("roles.tabProfiles")})]});return(0,e.jsxs)("section",{className:"page roles-page",children:[(0,e.jsxs)("div",{className:"page-heading roles-heading",children:[(0,e.jsxs)("div",{children:[(0,e.jsx)("p",{className:"eyebrow",children:n("nav.roles")}),(0,e.jsx)("h1",{children:n("roles.title")})]}),(0,e.jsx)("div",{className:"page-heading-actions",children:dn})]}),(0,e.jsxs)("div",{id:"roles-by-group-view",className:"roles-layout",hidden:V,children:[(0,e.jsxs)("div",{className:"roles-tree-panel",children:[(0,e.jsxs)("div",{className:"roles-tree-header dashboard-toolbar",children:[(0,e.jsx)("input",{type:"search",id:"roles-search",placeholder:n("roles.search"),value:F,onChange:s=>k(s.target.value)}),(0,e.jsx)(Ge,{id:"roles-refresh",label:n("roles.refresh"),onClick:()=>{Fr()}})]}),(0,e.jsx)("div",{id:"roles-tree",className:"roles-tree",children:we?(0,e.jsx)(de,{label:n("common.loading")}):(0,e.jsx)(Pn,{groups:Br,profiles:y,context:Se,contextLoaded:W,expandedGroups:U,selectedGroupId:g,selectedBotId:v,tr:n,onToggleGroup:s=>B(l=>bn(l,s)),onSelectBot:(s,l)=>{Gr(s,l)}})})]}),(0,e.jsx)("div",{className:"roles-editor-panel",children:!g||!v?(0,e.jsx)("div",{id:"roles-editor-empty",className:"roles-editor-empty",children:n("roles.selectHint")}):(0,e.jsxs)("div",{id:"roles-editor-form",className:"roles-editor-form",children:[(0,e.jsxs)("div",{className:"roles-editor-head",children:[(0,e.jsxs)("div",{children:[(0,e.jsxs)("div",{className:"roles-editor-breadcrumb",children:[(0,e.jsx)("span",{id:"roles-editor-group-name",children:Me?.name??g}),(0,e.jsx)("span",{className:"roles-breadcrumb-sep",children:"\u203A"}),(0,e.jsx)("span",{id:"roles-editor-bot-name",children:Cr?.botName??v})]}),(0,e.jsx)("div",{className:"roles-editor-meta",children:(0,e.jsxs)("span",{id:"roles-editor-chat-id",className:"roles-editor-meta-line",children:[g," \xB7 ",v]})})]}),(0,e.jsx)("div",{className:"roles-editor-actions roles-editor-head-actions",children:j==="role"?(0,e.jsxs)(e.Fragment,{children:[(0,e.jsx)("button",{type:"button",id:"roles-delete",className:"danger",style:{display:d?.hasRole?"":"none"},disabled:Je,onClick:()=>{Or()},children:Je?"...":n("roles.delete")}),(0,e.jsx)("button",{type:"button",id:"roles-save",className:"primary",disabled:on,onClick:()=>{$r()},children:Ye?"...":n("roles.save")})]}):(0,e.jsxs)(e.Fragment,{children:[(0,e.jsx)("button",{type:"button",id:"roles-listener-delete",className:"danger",style:{display:Pr?.enabled?"":"none"},disabled:Ne,onClick:()=>{xt()},children:Ne?"...":n("roles.delete")}),(0,e.jsx)("button",{type:"button",id:"roles-listener-save",className:"primary",disabled:ln,onClick:()=>{Qr()},children:st?"...":n("roles.save")})]})})]}),(0,e.jsxs)("div",{className:"roles-editor-switch segmented",role:"tablist","aria-label":n("roles.editorTabs"),children:[(0,e.jsx)("button",{type:"button",className:j==="role"?"active":"","aria-pressed":j==="role",onClick:()=>et("role"),children:n("roles.roleTab")}),(0,e.jsx)("button",{type:"button",className:j==="listener"?"active":"","aria-pressed":j==="listener",onClick:()=>et("listener"),children:n("roles.listenerTab")})]}),j==="role"?(0,e.jsxs)(e.Fragment,{children:[(0,e.jsxs)("div",{className:"roles-editor-inject",children:[(0,e.jsx)("span",{className:"roles-field-label",children:n("roles.injectModeLabel")}),(0,e.jsx)(Fe,{id:"roles-editor-inject-mode",className:"roles-inline-menu",ariaLabel:n("roles.injectModeLabel"),disabled:vr,label:n(X==="once"?"roles.injectModeOnce":"roles.injectModeEvery"),value:X,options:[{value:"every",label:n("roles.injectModeEvery")},{value:"once",label:n("roles.injectModeOnce")}],onChange:s=>{Ur(s==="once"?"once":"every")}}),(0,e.jsx)("span",{className:"roles-editor-inject-hint",children:n("roles.injectModeHint")}),(0,e.jsx)(Ie,{flash:hr})]}),(0,e.jsx)("textarea",{id:"roles-editor-textarea",placeholder:n("roles.editorPlaceholder"),rows:14,value:I,onChange:s=>T(s.target.value)}),(0,e.jsxs)("div",{className:"roles-editor-footer",children:[(0,e.jsxs)("span",{id:"roles-editor-bytecount",className:pr(Ae),children:[Ae," / ",O," bytes"]}),(0,e.jsx)(Ie,{flash:br})]}),(0,e.jsx)(mr,{content:I,tr:n,id:"roles-preview"})]}):(0,e.jsx)(Sn,{listener:P,members:ke,memberById:bt,promptByteLen:vt,loading:Sr,membersLoading:wr,flash:xr,tr:n,onPatch:jr,onSenderPolicyPatch:Hr,onMessagePolicyPatch:Vr,onToggleSenderType:qr,onToggleMsgType:Kr,onSetTargetPolicy:Wr,onSetTargetsPolicy:Yr,onSetSenderMode:zr,previewLimit:Le,previewStatus:kr,onPreviewLimitChange:Rr,onPreview:()=>{wt(!1)},onRunPreview:()=>{wt(!0)}})]})})]}),(0,e.jsxs)("div",{id:"roles-profiles-view",className:"roles-layout roles-profiles-layout",hidden:!V,children:[(0,e.jsxs)("div",{className:"roles-tree-panel",children:[(0,e.jsxs)("div",{className:"roles-tree-header roles-profile-create dashboard-toolbar",children:[(0,e.jsx)("input",{type:"text",id:"roles-profile-id",placeholder:n("roles.profileIdPlaceholder"),maxLength:64,ref:yt,onChange:s=>s.currentTarget.setCustomValidity("")}),(0,e.jsx)("button",{type:"button",id:"roles-profile-select",onClick:()=>{tn()},children:n("roles.openProfile")})]}),(0,e.jsxs)("div",{className:"roles-tree-header dashboard-toolbar",children:[(0,e.jsx)("input",{type:"search",id:"roles-profile-search",placeholder:n("roles.profileSearch"),value:z,onChange:s=>me(s.target.value)}),(0,e.jsx)(Ge,{id:"roles-profile-refresh",label:n("roles.refresh"),onClick:()=>{en()}})]}),(0,e.jsx)("div",{id:"roles-profile-list",className:"roles-tree",children:xe?(0,e.jsx)(de,{label:n("common.loading")}):(0,e.jsx)(Rn,{profiles:Dr,selectedProfileId:S,tr:n,onSelect:s=>{Rt(s)}})})]}),(0,e.jsx)("div",{className:"roles-editor-panel",children:S?(0,e.jsxs)("div",{id:"roles-profile-detail",className:"roles-editor-form roles-profile-detail",children:[(0,e.jsx)("div",{className:"roles-profile-title",children:(0,e.jsxs)("div",{children:[(0,e.jsxs)("div",{className:"roles-editor-breadcrumb",children:[(0,e.jsx)("span",{children:S}),Ce?(0,e.jsxs)(e.Fragment,{children:[(0,e.jsx)("span",{className:"roles-breadcrumb-sep",children:"\u203A"}),(0,e.jsx)("span",{children:Ce.botName??Ce.larkAppId})]}):null]}),(0,e.jsx)("div",{className:"roles-editor-meta-line",children:n("roles.profileRuntimeHint")})]})}),(0,e.jsxs)("div",{className:"roles-profile-grid",children:[(0,e.jsxs)("div",{className:"roles-profile-bots",children:[(0,e.jsx)("div",{className:"roles-profile-section-title",children:n("roles.profileBots")}),(0,e.jsx)("div",{className:"roles-profile-bot-list",children:m.map(s=>{let l=!!pe(ee,s.larkAppId),i=C===s.larkAppId;return(0,e.jsxs)("div",{className:`roles-bot-row roles-profile-bot-row ${i?"selected":""}`,"data-profile-bot-id":s.larkAppId,onClick:()=>{Zr(s.larkAppId)},children:[(0,e.jsx)(gr,{bot:s}),(0,e.jsxs)("div",{className:"roles-bot-info",children:[(0,e.jsx)("div",{className:"roles-bot-name",children:s.botName??s.larkAppId}),(0,e.jsx)("div",{className:"roles-bot-id",children:s.larkAppId})]}),(0,e.jsx)("span",{className:`roles-badge ${l?"has-role":"no-role"}`,children:n(l?"roles.configured":"roles.unconfigured")})]},s.larkAppId)})})]}),(0,e.jsx)("div",{className:"roles-profile-editor",children:C?(0,e.jsxs)(e.Fragment,{children:[(0,e.jsxs)("div",{className:"roles-profile-editor-head",children:[(0,e.jsxs)("span",{id:"roles-profile-bytecount",className:pr(_e),children:[_e," / ",O," bytes"]}),(0,e.jsxs)("div",{className:"roles-editor-actions roles-editor-head-actions",children:[(0,e.jsx)("button",{type:"button",id:"roles-profile-delete",className:"danger",style:{display:Er?"":"none"},disabled:ft,onClick:()=>{nn()},children:ft?"...":n("roles.delete")}),(0,e.jsx)("button",{type:"button",id:"roles-profile-save",className:"primary",disabled:an,onClick:()=>{rn()},children:pt?"...":n("roles.saveEntry")})]})]}),(0,e.jsx)("textarea",{id:"roles-profile-textarea",placeholder:n("roles.profileEditorPlaceholder"),rows:12,value:re,onChange:s=>ye(s.target.value)}),(0,e.jsx)("div",{className:"roles-editor-footer",children:(0,e.jsx)(Ie,{flash:Tr})}),(0,e.jsx)(mr,{content:re,tr:n,id:"roles-profile-preview"})]}):(0,e.jsx)("div",{className:"roles-editor-empty roles-profile-inline-empty",children:n("roles.profileBotSelectHint")})})]}),(0,e.jsxs)("div",{className:"roles-profile-apply",children:[(0,e.jsx)("div",{className:"roles-profile-section-title",children:n("roles.applyToGroup")}),(0,e.jsxs)("div",{className:"roles-profile-apply-controls",children:[(0,e.jsx)(Fe,{id:"roles-profile-apply-group",className:"roles-apply-group-menu",ariaLabel:n("roles.applyToGroup"),disabled:c.length===0,label:Ee?.name??$??n("roles.noChats"),value:$??"",options:c.map(s=>({value:s.chatId,label:s.name??s.chatId})),onChange:s=>ne(s)}),(0,e.jsxs)("label",{className:"roles-profile-force",children:[(0,e.jsx)("input",{type:"checkbox",id:"roles-profile-apply-force",checked:dt,onChange:s=>Lr(s.target.checked)})," ",n("roles.applyForce")]})]}),(0,e.jsx)("div",{id:"roles-profile-apply-bots",children:!Ee||ve.length===0?(0,e.jsx)("div",{className:"roles-empty",children:n("roles.noChats")}):ve.map(s=>{let l=!!pe(ee,s.larkAppId);return(0,e.jsxs)("label",{className:"checkbox-row roles-profile-apply-bot",children:[(0,e.jsx)("input",{type:"checkbox",name:"profile-apply-bot",value:s.larkAppId,checked:ct.has(s.larkAppId),onChange:i=>sn(s.larkAppId,i.target.checked)}),(0,e.jsx)("span",{children:s.botName??s.larkAppId}),(0,e.jsx)("small",{children:n(l?"roles.configured":"roles.profileMissing")})]},s.larkAppId)})}),(0,e.jsxs)("div",{className:"roles-editor-actions",children:[(0,e.jsx)("button",{type:"button",id:"roles-profile-preview-apply",onClick:()=>{kt(!0)},children:n("roles.previewApply")}),(0,e.jsx)("button",{type:"button",id:"roles-profile-apply",className:"primary",onClick:()=>{kt(!1)},children:n("roles.applyProfile")})]}),(0,e.jsx)("div",{id:"roles-profile-apply-status",className:"roles-profile-status",children:(0,e.jsx)(kn,{status:Mr,bots:m,tr:n})})]})]}):(0,e.jsx)("div",{id:"roles-profile-empty",className:"roles-editor-empty",children:n("roles.profileSelectHint")})})]})]})}function bn(t,n){let r=new Set(t);return r.has(n)?r.delete(n):r.add(n),r}function pr(t){return`roles-bytecount ${t>Ut?"warn":""} ${t>O?"over":""}`}function hn(t){return`roles-bytecount ${t>jt?"warn":""} ${t>ue?"over":""}`}function Ie(t){return t.flash?(0,e.jsxs)("span",{className:`roles-saved-flash ${t.flash.isError?"roles-save-error":""}`,children:[" ",t.flash.text]}):null}function Pn(t){let{tr:n}=t;return t.groups.length===0?(0,e.jsx)("div",{className:"roles-empty",children:n("roles.noChats")}):(0,e.jsx)(e.Fragment,{children:t.groups.map(r=>{let o=t.expandedGroups.has(r.chatId),c=r.memberBots.filter(p=>p.inChat),f=Vt(r),m=qt(r);return(0,e.jsxs)("div",{className:"roles-group-section",children:[(0,e.jsxs)("div",{className:`roles-group-row ${o?"expanded":""} ${t.selectedGroupId===r.chatId&&!t.selectedBotId?"selected":""}`,"data-group-id":r.chatId,onClick:()=>t.onToggleGroup(r.chatId),children:[(0,e.jsx)("span",{className:"roles-group-arrow",children:o?"\u25BE":"\u25B8"}),(0,e.jsx)("span",{className:"roles-group-icon","aria-hidden":"true",children:(0,e.jsxs)("svg",{viewBox:"0 0 16 16",children:[(0,e.jsx)("circle",{cx:"5.6",cy:"5.8",r:"2.4"}),(0,e.jsx)("path",{d:"M1.8 13.2c.5-2.4 2-3.6 3.8-3.6s3.3 1.2 3.8 3.6"}),(0,e.jsx)("circle",{cx:"11",cy:"6.8",r:"1.9"}),(0,e.jsx)("path",{d:"M9.8 12.6c.4-1.7 1.5-2.6 2.8-2.6 1 0 1.9.5 2.4 1.6"})]})}),(0,e.jsxs)("div",{className:"roles-group-info",children:[(0,e.jsx)("div",{className:"roles-group-name",children:r.name??r.chatId}),(0,e.jsxs)("div",{className:"roles-group-meta",children:[f,"/",m," ",n("roles.botsWithRoles")]}),(0,e.jsx)(In,{group:r,profiles:t.profiles,context:t.context,loaded:t.contextLoaded,tr:n})]}),(0,e.jsx)("span",{className:"roles-group-chevron"})]}),(0,e.jsx)("div",{className:"roles-bot-list",children:o?c.map(p=>{let y=t.selectedGroupId===r.chatId&&t.selectedBotId===p.larkAppId;return(0,e.jsxs)("div",{className:`roles-bot-row ${y?"selected":""}`,"data-group-id":r.chatId,"data-bot-id":p.larkAppId,onClick:L=>{L.stopPropagation(),t.onSelectBot(r.chatId,p.larkAppId)},children:[(0,e.jsx)("span",{className:"roles-bot-indent"}),(0,e.jsx)(gr,{bot:p}),(0,e.jsxs)("div",{className:"roles-bot-info",children:[(0,e.jsx)("div",{className:"roles-bot-name",children:p.botName}),(0,e.jsx)("div",{className:"roles-bot-id",children:p.larkAppId})]}),(0,e.jsxs)("div",{className:"roles-bot-badges",children:[(0,e.jsx)("span",{className:`roles-badge ${p.hasRole?"has-role":"no-role"}`,children:p.hasRole?n("roles.configured"):n("roles.unconfigured")}),p.hasMessageListener?(0,e.jsx)("span",{className:"roles-badge has-listener",children:n("roles.listenerBadge")}):null]})]},p.larkAppId)}):null})]},r.chatId)})})}function In(t){let{group:n,profiles:r,context:o,loaded:c,tr:f}=t;if(!r.length||!c)return null;let m=new Map;for(let L of n.memberBots)L.inChat&&m.set(L.larkAppId,o.effectiveRolesByBot.get(He(L.larkAppId,n.chatId))??null);if(!At(m))return null;let p=_t(n.memberBots,r,o.entriesByProfile,m)[0];if(!p)return(0,e.jsx)("div",{className:"roles-profile-match muted",children:f("groups.profileStatusUnmatched")});let y=p.kind==="full"?"groups.profileStatusFullChat":"groups.profileStatusPartial";return(0,e.jsx)("div",{className:`roles-profile-match ${p.kind}`,children:f(y,{name:p.profileId,matched:p.matched,total:p.total,chat:p.chatMatched})})}function Sn(t){let{listener:n,tr:r}=t,[o,c]=(0,a.useState)("members"),[f,m]=(0,a.useState)(""),[p,y]=(0,a.useState)(()=>new Set),L=new Set(n.senderPolicy?.includeSenderTypes??[]),Se=new Set(n.messagePolicy?.includeMsgTypes??[]),R=n.senderPolicy?.mode==="all_except_excluded"?"all_except_excluded":"include_only",W=new Set(n.senderPolicy?.includeSenderOpenIds??[]),A=new Set(n.senderPolicy?.excludeSenderOpenIds??[]),we=[...[...R==="all_except_excluded"?A:W].filter(d=>!t.memberById.has(d))],Y=[...t.members.filter(d=>d.memberType!=="bot"),...we.map(d=>({openId:d,name:d,memberType:"unknown"}))],xe=t.members.filter(d=>d.memberType==="bot"),_=o==="bots"?xe:Y,F=Ft(_,f),k=F.map(d=>d.openId),z=k.filter(d=>p.has(d)),me=k.length>0&&z.length===k.length,U=[...p].filter(d=>_.some(b=>b.openId===d)),B=U.length>0?U:k,g=$e({mode:R,include:[...W],exclude:[...A],targetIds:B});(0,a.useEffect)(()=>{m(""),y(new Set)},[o]),(0,a.useEffect)(()=>{let d=new Set(_.map(b=>b.openId));y(b=>{let I=new Set([...b].filter(T=>d.has(T)));return I.size===b.size?b:I})},[_]);let fe=(d,b)=>{y(I=>{let T=new Set(I);return b?T.add(d):T.delete(d),T})},v=()=>{y(d=>{let b=new Set(d);if(me)for(let I of k)b.delete(I);else for(let I of k)b.add(I);return b})},J=d=>{B.length!==0&&t.onSetTargetsPolicy(B,d)};return(0,e.jsxs)("div",{className:"roles-listener-editor",children:[t.loading?(0,e.jsx)(de,{label:r("common.loading")}):null,(0,e.jsxs)("label",{className:"filter-toggle roles-listener-enabled",children:[(0,e.jsx)("input",{type:"checkbox",checked:n.enabled,onChange:d=>t.onPatch({enabled:d.currentTarget.checked})}),(0,e.jsx)("span",{className:"filter-toggle-switch","aria-hidden":"true"}),(0,e.jsx)("span",{className:"filter-toggle-label",children:r("roles.listenerEnabled")})]}),(0,e.jsx)("p",{className:"roles-listener-scope-help",children:r("roles.listenerScopeHelp")}),(0,e.jsxs)("div",{className:"roles-listener-grid",children:[(0,e.jsxs)("label",{className:"roles-listener-field",children:[(0,e.jsx)("span",{className:"roles-field-label",children:r("roles.listenerName")}),(0,e.jsx)("input",{type:"text",value:n.name??"",placeholder:r("roles.listenerNamePlaceholder"),onChange:d=>t.onPatch({name:d.currentTarget.value})})]}),(0,e.jsxs)("label",{className:"roles-listener-field",children:[(0,e.jsx)("span",{className:"roles-field-label",children:r("roles.listenerReplyCardTitle")}),(0,e.jsx)("input",{type:"text",value:n.replyCardTitle??"",placeholder:r("roles.listenerReplyCardTitlePlaceholder"),onChange:d=>t.onPatch({replyCardTitle:d.currentTarget.value})})]}),(0,e.jsxs)("label",{className:"roles-listener-field",children:[(0,e.jsx)("span",{className:"roles-field-label",children:r("roles.listenerWorkingDir")}),(0,e.jsx)("input",{type:"text",value:n.workingDir??"",placeholder:r("roles.listenerWorkingDirPlaceholder"),onChange:d=>t.onPatch({workingDir:d.currentTarget.value})})]})]}),(0,e.jsxs)("div",{className:"roles-listener-policy-row",children:[(0,e.jsxs)("div",{className:"roles-listener-policy",children:[(0,e.jsx)("div",{className:"roles-field-label",children:r("roles.listenerSenderTypes")}),(0,e.jsxs)("label",{className:"roles-listener-chip",children:[(0,e.jsx)("input",{type:"checkbox",checked:L.has("user"),onChange:d=>t.onToggleSenderType("user",d.currentTarget.checked)}),(0,e.jsx)("span",{children:r("roles.listenerSenderUser")})]}),(0,e.jsxs)("label",{className:"roles-listener-chip",children:[(0,e.jsx)("input",{type:"checkbox",checked:L.has("bot"),onChange:d=>t.onToggleSenderType("bot",d.currentTarget.checked)}),(0,e.jsx)("span",{children:r("roles.listenerSenderBot")})]})]}),(0,e.jsxs)("div",{className:"roles-listener-policy",children:[(0,e.jsx)("div",{className:"roles-field-label",children:r("roles.listenerMessageTypes")}),fr.map(d=>(0,e.jsxs)("label",{className:"roles-listener-chip",children:[(0,e.jsx)("input",{type:"checkbox",checked:Se.has(d),onChange:b=>t.onToggleMsgType(d,b.currentTarget.checked)}),(0,e.jsx)("span",{children:d})]},d))]}),(0,e.jsxs)("label",{className:"roles-listener-checkbox",children:[(0,e.jsx)("input",{type:"checkbox",checked:n.senderPolicy?.excludeSelf!==!1,onChange:d=>t.onSenderPolicyPatch({excludeSelf:d.currentTarget.checked})}),(0,e.jsx)("span",{children:r("roles.listenerExcludeSelf")})]})]}),(0,e.jsx)("div",{className:"roles-listener-policy-row",children:(0,e.jsxs)("div",{className:"roles-listener-policy",children:[(0,e.jsx)("div",{className:"roles-field-label",children:r("roles.listenerSenderMode")}),(0,e.jsxs)("div",{className:"roles-listener-target-tabs segmented",role:"tablist","aria-label":r("roles.listenerSenderMode"),children:[(0,e.jsx)("button",{type:"button",className:R==="include_only"?"active":"","aria-pressed":R==="include_only",onClick:()=>t.onSetSenderMode("include_only"),children:r("roles.listenerSenderModeInclude")}),(0,e.jsx)("button",{type:"button",className:R==="all_except_excluded"?"active":"","aria-pressed":R==="all_except_excluded",onClick:()=>t.onSetSenderMode("all_except_excluded"),children:r("roles.listenerSenderModeAllExcept")})]}),(0,e.jsx)("small",{className:"roles-listener-scope-help",children:r(R==="all_except_excluded"?"roles.listenerSenderModeAllExceptHelp":"roles.listenerSenderModeIncludeHelp")})]})}),(0,e.jsxs)("label",{className:"roles-listener-field",children:[(0,e.jsx)("span",{className:"roles-field-label",children:r("roles.listenerPrompt")}),(0,e.jsx)("textarea",{id:"roles-listener-prompt",placeholder:r("roles.listenerPromptPlaceholder"),rows:9,value:n.prompt,onChange:d=>t.onPatch({prompt:d.currentTarget.value})})]}),(0,e.jsxs)("div",{className:"roles-editor-footer",children:[(0,e.jsxs)("span",{id:"roles-listener-bytecount",className:hn(t.promptByteLen),children:[t.promptByteLen," / ",ue," bytes"]}),(0,e.jsx)(Ie,{flash:t.flash})]}),(0,e.jsxs)("div",{className:"roles-listener-preview-panel",children:[(0,e.jsxs)("div",{className:"roles-listener-preview-head",children:[(0,e.jsxs)("div",{children:[(0,e.jsx)("div",{className:"roles-profile-section-title",children:r("roles.listenerPreviewTitle")}),(0,e.jsx)("small",{children:r("roles.listenerPreviewHint")})]}),(0,e.jsxs)("div",{className:"roles-listener-preview-actions",children:[(0,e.jsxs)("label",{children:[(0,e.jsx)("span",{children:r("roles.listenerPreviewCount")}),(0,e.jsx)("select",{value:t.previewLimit,onChange:d=>t.onPreviewLimitChange(Number(d.currentTarget.value)),children:Array.from({length:Ue},(d,b)=>b+1).map(d=>(0,e.jsx)("option",{value:d,children:d},d))})]}),(0,e.jsx)("button",{type:"button",onClick:t.onPreview,disabled:t.previewStatus.kind==="loading",children:t.previewStatus.kind==="loading"&&t.previewStatus.mode==="preview"?"...":r("roles.listenerPreviewButton")}),(0,e.jsx)("button",{type:"button",className:"primary",onClick:t.onRunPreview,disabled:t.previewStatus.kind==="loading",children:t.previewStatus.kind==="loading"&&t.previewStatus.mode==="run"?"...":r("roles.listenerRunPreviewButton")})]})]}),(0,e.jsx)(wn,{status:t.previewStatus,tr:r})]}),(0,e.jsxs)("div",{className:"roles-listener-members",children:[(0,e.jsxs)("div",{className:"roles-listener-members-head",children:[(0,e.jsx)("div",{className:"roles-profile-section-title",children:r("roles.listenerFilters")}),(0,e.jsx)("small",{children:t.membersLoading?r("common.loading"):r("roles.listenerMembersHint")})]}),(0,e.jsxs)("div",{className:"roles-listener-target-tabs segmented",role:"tablist","aria-label":r("roles.listenerFilters"),children:[(0,e.jsx)("button",{type:"button",className:o==="members"?"active":"","aria-pressed":o==="members",onClick:()=>c("members"),children:r("roles.listenerMembers")}),(0,e.jsx)("button",{type:"button",className:o==="bots"?"active":"","aria-pressed":o==="bots",onClick:()=>c("bots"),children:r("roles.listenerBots")})]}),(0,e.jsxs)("div",{className:"roles-listener-filter-toolbar",children:[(0,e.jsx)("input",{type:"search",value:f,placeholder:r("roles.listenerSearchPlaceholder"),onChange:d=>m(d.currentTarget.value)}),f?(0,e.jsx)("button",{type:"button",className:"roles-listener-clear-search",onClick:()=>m(""),"aria-label":r("roles.listenerClearSearch"),children:"\xD7"}):null,(0,e.jsx)("button",{type:"button",className:"roles-listener-select-all",disabled:k.length===0,onClick:v,children:r(me?"roles.listenerClearVisible":"roles.listenerSelectVisible",{count:k.length})})]}),(0,e.jsxs)("div",{className:"roles-listener-bulkbar",children:[(0,e.jsxs)("span",{children:[U.length>0?r("roles.listenerSelectedCount",{count:U.length}):r("roles.listenerFilteredCount",{count:k.length}),g==="mixed"?` \xB7 ${r("roles.listenerMixedMode")}`:""]}),(0,e.jsxs)("div",{className:"roles-listener-member-actions",role:"group","aria-label":r("roles.listenerBulkActions"),children:[(0,e.jsx)("button",{type:"button",className:g==="listen"?"active":"","aria-pressed":g==="listen",disabled:B.length===0,onClick:()=>J(!0),children:r("roles.listenerTargetListen")}),(0,e.jsx)("button",{type:"button",className:g==="ignore"?"active":"","aria-pressed":g==="ignore",disabled:B.length===0,onClick:()=>J(!1),children:r("roles.listenerTargetIgnore")})]})]}),(0,e.jsx)("div",{className:"roles-listener-member-list",children:F.length===0?(0,e.jsx)("div",{className:"roles-empty",children:r(o==="bots"?"roles.listenerBotsEmpty":"roles.listenerMembersEmpty")}):F.map(d=>{let b=$e({mode:R,include:[...W],exclude:[...A],targetIds:[d.openId]});return(0,e.jsxs)("div",{className:"roles-listener-member",children:[(0,e.jsx)("label",{className:"roles-listener-member-select","aria-label":Ke(d,d.openId),children:(0,e.jsx)("input",{type:"checkbox",checked:p.has(d.openId),onChange:I=>fe(d.openId,I.currentTarget.checked)})}),(0,e.jsxs)("div",{className:"roles-listener-member-main",children:[(0,e.jsx)("strong",{children:Ke(d,d.openId)}),(0,e.jsx)("span",{children:d.openId})]}),(0,e.jsxs)("div",{className:"roles-listener-member-actions",role:"group","aria-label":Ke(d,d.openId),children:[(0,e.jsx)("button",{type:"button",className:b==="listen"?"active":"","aria-pressed":b==="listen",onClick:()=>t.onSetTargetPolicy(d.openId,!0),children:r("roles.listenerTargetListen")}),(0,e.jsx)("button",{type:"button",className:b==="ignore"?"active":"","aria-pressed":b==="ignore",onClick:()=>t.onSetTargetPolicy(d.openId,!1),children:r("roles.listenerTargetIgnore")})]})]},d.openId)})})]})]})}function mr(t){return(0,e.jsx)("div",{id:t.id,className:"roles-preview",children:t.content.trim()?(0,e.jsxs)(e.Fragment,{children:[(0,e.jsx)("strong",{children:t.tr("roles.preview")}),(0,e.jsx)("pre",{children:t.content})]}):(0,e.jsx)("small",{children:t.tr("roles.previewEmpty")})})}function wn(t){let{status:n,tr:r}=t;if(n.kind==="idle")return(0,e.jsx)("div",{className:"roles-listener-preview-empty",children:r("roles.listenerPreviewEmpty")});if(n.kind==="loading")return(0,e.jsx)(de,{label:r("common.loading")});if(n.kind==="error")return(0,e.jsx)("div",{className:"roles-listener-preview-error",children:n.text});let o=n.response.matches??[],f=(n.response.results??[]).reduce((m,p)=>{let y=p.ok?p.state??"triggered":"failed";return m[y]=(m[y]??0)+1,m},{});return(0,e.jsxs)("div",{className:"roles-listener-preview-results",children:[(0,e.jsx)("div",{className:"roles-listener-preview-summary",children:n.mode==="run"?r("roles.listenerRunPreviewSummary",{count:o.length,triggered:f.triggered??0,running:f.running??0,replied:f.replied??0,failed:f.failed??0}):r("roles.listenerPreviewSummary",{count:o.length})}),o.length===0?(0,e.jsx)("div",{className:"roles-listener-preview-empty",children:r("roles.listenerPreviewNoMatches")}):(0,e.jsx)("div",{className:"roles-listener-preview-list",children:o.map(m=>(0,e.jsx)(xn,{item:m,result:n.response.results?.find(p=>p.messageId===m.messageId),tr:r},m.messageId))})]})}function xn(t){let n=t.item.messageText.length>300?`${t.item.messageText.slice(0,300)}...`:t.item.messageText,r=t.item.senderName||t.item.senderOpenId||t.item.senderType,o=tr(t.item.createTime);return(0,e.jsxs)("div",{className:"roles-listener-preview-item",children:[(0,e.jsxs)("div",{className:"roles-listener-preview-meta",children:[(0,e.jsx)("span",{children:t.item.msgType}),(0,e.jsx)("span",{children:t.item.senderType}),t.item.senderOpenId?(0,e.jsx)("span",{children:t.item.senderOpenId}):null,(0,e.jsx)("span",{children:t.item.messageId}),t.result?(0,e.jsx)("span",{className:fn(t.result.state,t.result.ok),children:t.tr(`roles.listenerRunPreviewState.${t.result.ok?t.result.state??"triggered":"failed"}`)}):null]}),t.result?.sessionId||t.result?.replyMessageId||t.result?.error?(0,e.jsxs)("div",{className:"roles-listener-preview-run-detail",children:[t.result.sessionId?(0,e.jsx)("span",{children:t.result.sessionId}):null,t.result.replyMessageId?(0,e.jsx)("span",{children:t.result.replyMessageId}):null,t.result.error?(0,e.jsx)("strong",{children:t.result.error}):null]}):null,(0,e.jsxs)("div",{className:"roles-listener-preview-sender",children:[(0,e.jsx)("span",{children:t.tr("roles.listenerPreviewSender")}),(0,e.jsx)("strong",{children:r})]}),o?(0,e.jsxs)("div",{className:"roles-listener-preview-time",children:[(0,e.jsx)("span",{children:t.tr("roles.listenerPreviewTime")}),(0,e.jsx)("strong",{children:o})]}):null,t.item.messageTitle?(0,e.jsxs)("div",{className:"roles-listener-preview-title",children:[(0,e.jsx)("span",{children:t.tr("roles.listenerPreviewMessageTitle")}),(0,e.jsx)("strong",{children:t.item.messageTitle})]}):null,(0,e.jsx)("div",{className:"roles-listener-preview-content-label",children:t.tr("roles.listenerPreviewContent")}),(0,e.jsx)("pre",{children:n})]})}function Rn(t){let{tr:n}=t;return t.profiles.length===0?(0,e.jsx)("div",{className:"roles-empty",children:n("roles.profileEmpty")}):(0,e.jsx)(e.Fragment,{children:t.profiles.map(r=>{let o=t.selectedProfileId===r.profileId,c=(r.botEntries??[]).some(f=>f.hasEntry);return(0,e.jsxs)("div",{className:`roles-profile-row ${o?"selected":""}`,"data-profile-id":r.profileId,onClick:()=>t.onSelect(r.profileId),children:[(0,e.jsxs)("div",{className:"roles-profile-row-main",children:[(0,e.jsx)("div",{className:"roles-profile-name",children:r.profileId}),(0,e.jsxs)("div",{className:"roles-group-meta",children:[r.entryCount," ",n("roles.profileEntries")]})]}),(0,e.jsx)("span",{className:`roles-badge ${c?"has-role":"no-role"}`,children:n(c?"roles.configured":"roles.profileMissing")})]},r.profileId)})})}function kn(t){let{status:n,bots:r,tr:o}=t;return n.kind==="idle"?null:n.kind==="text"?(0,e.jsx)(e.Fragment,{children:n.text}):(0,e.jsx)(e.Fragment,{children:n.results.map(c=>{let m=r.find(y=>y.larkAppId===c.larkAppId)?.botName??c.larkAppId,p=c.ok?n.preview?c.wouldRefuse?o("roles.applyWouldRefuse"):o("roles.applyPreviewOk"):o("roles.applyOk"):`${o("roles.applyFailed")}: ${String(c.error??`HTTP ${c.status}`)}`;return(0,e.jsxs)("div",{children:[m,": ",p]},c.larkAppId)})})}function Gn(t){return De(t,(0,e.jsx)(yr,{tab:"groups"}))}function Fn(t){return De(t,(0,e.jsx)(yr,{tab:"profiles"}))}export{Fn as renderRoleProfilesPage,Gn as renderRolesPage};