botmux 2.111.0 → 2.112.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 (1041) hide show
  1. package/README.en.md +19 -7
  2. package/README.md +19 -7
  3. package/dist/adapters/adopt-route.d.ts.map +1 -1
  4. package/dist/adapters/adopt-route.js +2 -1
  5. package/dist/adapters/adopt-route.js.map +1 -1
  6. package/dist/adapters/backend/herdr-backend.d.ts +29 -0
  7. package/dist/adapters/backend/herdr-backend.d.ts.map +1 -1
  8. package/dist/adapters/backend/herdr-backend.js +167 -0
  9. package/dist/adapters/backend/herdr-backend.js.map +1 -1
  10. package/dist/adapters/backend/riff-backend.js +2 -2
  11. package/dist/adapters/backend/sandbox.d.ts +61 -6
  12. package/dist/adapters/backend/sandbox.d.ts.map +1 -1
  13. package/dist/adapters/backend/sandbox.js +235 -43
  14. package/dist/adapters/backend/sandbox.js.map +1 -1
  15. package/dist/adapters/backend/tmux-backend.d.ts +1 -0
  16. package/dist/adapters/backend/tmux-backend.d.ts.map +1 -1
  17. package/dist/adapters/backend/tmux-backend.js +1 -0
  18. package/dist/adapters/backend/tmux-backend.js.map +1 -1
  19. package/dist/adapters/cli/claude-code.d.ts +2 -0
  20. package/dist/adapters/cli/claude-code.d.ts.map +1 -1
  21. package/dist/adapters/cli/claude-code.js +7 -0
  22. package/dist/adapters/cli/claude-code.js.map +1 -1
  23. package/dist/adapters/cli/codex-app-turn.d.ts +16 -0
  24. package/dist/adapters/cli/codex-app-turn.d.ts.map +1 -1
  25. package/dist/adapters/cli/codex-app-turn.js +26 -0
  26. package/dist/adapters/cli/codex-app-turn.js.map +1 -1
  27. package/dist/adapters/cli/codex.d.ts.map +1 -1
  28. package/dist/adapters/cli/codex.js +1 -0
  29. package/dist/adapters/cli/codex.js.map +1 -1
  30. package/dist/adapters/cli/grok.d.ts +8 -6
  31. package/dist/adapters/cli/grok.d.ts.map +1 -1
  32. package/dist/adapters/cli/grok.js +14 -6
  33. package/dist/adapters/cli/grok.js.map +1 -1
  34. package/dist/adapters/cli/read-isolation.d.ts +40 -14
  35. package/dist/adapters/cli/read-isolation.d.ts.map +1 -1
  36. package/dist/adapters/cli/read-isolation.js +116 -19
  37. package/dist/adapters/cli/read-isolation.js.map +1 -1
  38. package/dist/adapters/cli/runner-control-channel.d.ts +32 -0
  39. package/dist/adapters/cli/runner-control-channel.d.ts.map +1 -0
  40. package/dist/adapters/cli/runner-control-channel.js +104 -0
  41. package/dist/adapters/cli/runner-control-channel.js.map +1 -0
  42. package/dist/adapters/cli/shared-hints.d.ts +1 -1
  43. package/dist/adapters/cli/shared-hints.d.ts.map +1 -1
  44. package/dist/adapters/cli/shared-hints.js +9 -0
  45. package/dist/adapters/cli/shared-hints.js.map +1 -1
  46. package/dist/adapters/cli/traex.d.ts.map +1 -1
  47. package/dist/adapters/cli/traex.js +100 -64
  48. package/dist/adapters/cli/traex.js.map +1 -1
  49. package/dist/adapters/cli/types.d.ts +13 -0
  50. package/dist/adapters/cli/types.d.ts.map +1 -1
  51. package/dist/bot-registry.d.ts +36 -27
  52. package/dist/bot-registry.d.ts.map +1 -1
  53. package/dist/bot-registry.js +354 -8
  54. package/dist/bot-registry.js.map +1 -1
  55. package/dist/cli/saved-workflow.d.ts +25 -0
  56. package/dist/cli/saved-workflow.d.ts.map +1 -0
  57. package/dist/cli/saved-workflow.js +338 -0
  58. package/dist/cli/saved-workflow.js.map +1 -0
  59. package/dist/cli/send-dispatch.d.ts +18 -3
  60. package/dist/cli/send-dispatch.d.ts.map +1 -1
  61. package/dist/cli/send-dispatch.js +22 -3
  62. package/dist/cli/send-dispatch.js.map +1 -1
  63. package/dist/cli/v3-run-cancel.d.ts +47 -0
  64. package/dist/cli/v3-run-cancel.d.ts.map +1 -0
  65. package/dist/cli/v3-run-cancel.js +96 -0
  66. package/dist/cli/v3-run-cancel.js.map +1 -0
  67. package/dist/cli/vc-agent.d.ts.map +1 -1
  68. package/dist/cli/vc-agent.js +54 -1
  69. package/dist/cli/vc-agent.js.map +1 -1
  70. package/dist/cli/workflow-migration.d.ts +39 -0
  71. package/dist/cli/workflow-migration.d.ts.map +1 -0
  72. package/dist/cli/workflow-migration.js +302 -0
  73. package/dist/cli/workflow-migration.js.map +1 -0
  74. package/dist/cli/workflow-run-archive.d.ts +29 -0
  75. package/dist/cli/workflow-run-archive.d.ts.map +1 -0
  76. package/dist/cli/workflow-run-archive.js +183 -0
  77. package/dist/cli/workflow-run-archive.js.map +1 -0
  78. package/dist/cli/workflow.d.ts +5 -10
  79. package/dist/cli/workflow.d.ts.map +1 -1
  80. package/dist/cli/workflow.js +85 -764
  81. package/dist/cli/workflow.js.map +1 -1
  82. package/dist/cli.d.ts.map +1 -1
  83. package/dist/cli.js +1018 -191
  84. package/dist/cli.js.map +1 -1
  85. package/dist/codex-app-runner.js +30 -21
  86. package/dist/codex-app-runner.js.map +1 -1
  87. package/dist/core/command-handler.d.ts.map +1 -1
  88. package/dist/core/command-handler.js +21 -9
  89. package/dist/core/command-handler.js.map +1 -1
  90. package/dist/core/current-turn-provenance.d.ts +39 -0
  91. package/dist/core/current-turn-provenance.d.ts.map +1 -0
  92. package/dist/core/current-turn-provenance.js +122 -0
  93. package/dist/core/current-turn-provenance.js.map +1 -0
  94. package/dist/core/daemon-ipc-auth.d.ts +20 -0
  95. package/dist/core/daemon-ipc-auth.d.ts.map +1 -0
  96. package/dist/core/daemon-ipc-auth.js +44 -0
  97. package/dist/core/daemon-ipc-auth.js.map +1 -0
  98. package/dist/core/daemon-ipc-session-auth.d.ts +37 -0
  99. package/dist/core/daemon-ipc-session-auth.d.ts.map +1 -0
  100. package/dist/core/daemon-ipc-session-auth.js +35 -0
  101. package/dist/core/daemon-ipc-session-auth.js.map +1 -0
  102. package/dist/core/dashboard-command/index.d.ts +0 -2
  103. package/dist/core/dashboard-command/index.d.ts.map +1 -1
  104. package/dist/core/dashboard-command/index.js +2 -2
  105. package/dist/core/dashboard-command/index.js.map +1 -1
  106. package/dist/core/dashboard-command/stub.d.ts +1 -1
  107. package/dist/core/dashboard-command/stub.d.ts.map +1 -1
  108. package/dist/core/dashboard-command/stub.js +0 -1
  109. package/dist/core/dashboard-command/stub.js.map +1 -1
  110. package/dist/core/dashboard-ipc-server.d.ts +11 -2
  111. package/dist/core/dashboard-ipc-server.d.ts.map +1 -1
  112. package/dist/core/dashboard-ipc-server.js +266 -41
  113. package/dist/core/dashboard-ipc-server.js.map +1 -1
  114. package/dist/core/dashboard-secret.d.ts +3 -0
  115. package/dist/core/dashboard-secret.d.ts.map +1 -0
  116. package/dist/core/dashboard-secret.js +7 -0
  117. package/dist/core/dashboard-secret.js.map +1 -0
  118. package/dist/core/data-dir.d.ts +24 -0
  119. package/dist/core/data-dir.d.ts.map +1 -0
  120. package/dist/core/data-dir.js +48 -0
  121. package/dist/core/data-dir.js.map +1 -0
  122. package/dist/core/inflight-input-tracker.d.ts +4 -2
  123. package/dist/core/inflight-input-tracker.d.ts.map +1 -1
  124. package/dist/core/inflight-input-tracker.js +6 -5
  125. package/dist/core/inflight-input-tracker.js.map +1 -1
  126. package/dist/core/inject-queue-policy.d.ts +70 -0
  127. package/dist/core/inject-queue-policy.d.ts.map +1 -0
  128. package/dist/core/inject-queue-policy.js +30 -0
  129. package/dist/core/inject-queue-policy.js.map +1 -0
  130. package/dist/core/maintenance.d.ts +1 -1
  131. package/dist/core/maintenance.d.ts.map +1 -1
  132. package/dist/core/maintenance.js +3 -2
  133. package/dist/core/maintenance.js.map +1 -1
  134. package/dist/core/managed-origin-capability.d.ts +30 -0
  135. package/dist/core/managed-origin-capability.d.ts.map +1 -0
  136. package/dist/core/managed-origin-capability.js +88 -0
  137. package/dist/core/managed-origin-capability.js.map +1 -0
  138. package/dist/core/role-library.d.ts +15 -0
  139. package/dist/core/role-library.d.ts.map +1 -0
  140. package/dist/core/role-library.js +75 -0
  141. package/dist/core/role-library.js.map +1 -0
  142. package/dist/core/session-cwd.d.ts +14 -0
  143. package/dist/core/session-cwd.d.ts.map +1 -0
  144. package/dist/core/session-cwd.js +17 -0
  145. package/dist/core/session-cwd.js.map +1 -0
  146. package/dist/core/session-manager.d.ts +4 -1
  147. package/dist/core/session-manager.d.ts.map +1 -1
  148. package/dist/core/session-manager.js +27 -8
  149. package/dist/core/session-manager.js.map +1 -1
  150. package/dist/core/session-marker.d.ts +22 -0
  151. package/dist/core/session-marker.d.ts.map +1 -1
  152. package/dist/core/session-marker.js +185 -20
  153. package/dist/core/session-marker.js.map +1 -1
  154. package/dist/core/slash-inject.d.ts +15 -0
  155. package/dist/core/slash-inject.d.ts.map +1 -0
  156. package/dist/core/slash-inject.js +25 -0
  157. package/dist/core/slash-inject.js.map +1 -0
  158. package/dist/core/terminal-url.d.ts +1 -0
  159. package/dist/core/terminal-url.d.ts.map +1 -1
  160. package/dist/core/terminal-url.js +14 -8
  161. package/dist/core/terminal-url.js.map +1 -1
  162. package/dist/core/terminal-write-auth.d.ts +26 -0
  163. package/dist/core/terminal-write-auth.d.ts.map +1 -1
  164. package/dist/core/terminal-write-auth.js +48 -3
  165. package/dist/core/terminal-write-auth.js.map +1 -1
  166. package/dist/core/trigger-session.d.ts +24 -1
  167. package/dist/core/trigger-session.d.ts.map +1 -1
  168. package/dist/core/trigger-session.js +106 -15
  169. package/dist/core/trigger-session.js.map +1 -1
  170. package/dist/core/types.d.ts +26 -1
  171. package/dist/core/types.d.ts.map +1 -1
  172. package/dist/core/types.js +10 -0
  173. package/dist/core/types.js.map +1 -1
  174. package/dist/core/worker-pool.d.ts +65 -2
  175. package/dist/core/worker-pool.d.ts.map +1 -1
  176. package/dist/core/worker-pool.js +459 -39
  177. package/dist/core/worker-pool.js.map +1 -1
  178. package/dist/daemon.d.ts +249 -8
  179. package/dist/daemon.d.ts.map +1 -1
  180. package/dist/daemon.js +7383 -1195
  181. package/dist/daemon.js.map +1 -1
  182. package/dist/dashboard/aggregator.d.ts +1 -1
  183. package/dist/dashboard/aggregator.d.ts.map +1 -1
  184. package/dist/dashboard/aggregator.js +2 -2
  185. package/dist/dashboard/aggregator.js.map +1 -1
  186. package/dist/dashboard/auth.d.ts +3 -8
  187. package/dist/dashboard/auth.d.ts.map +1 -1
  188. package/dist/dashboard/auth.js +63 -22
  189. package/dist/dashboard/auth.js.map +1 -1
  190. package/dist/dashboard/bot-onboarding.d.ts +5 -0
  191. package/dist/dashboard/bot-onboarding.d.ts.map +1 -1
  192. package/dist/dashboard/bot-onboarding.js +37 -0
  193. package/dist/dashboard/bot-onboarding.js.map +1 -1
  194. package/dist/dashboard/connector-api.d.ts.map +1 -1
  195. package/dist/dashboard/connector-api.js +42 -2
  196. package/dist/dashboard/connector-api.js.map +1 -1
  197. package/dist/dashboard/daemon-internal-api.d.ts +0 -2
  198. package/dist/dashboard/daemon-internal-api.d.ts.map +1 -1
  199. package/dist/dashboard/daemon-internal-api.js +26 -93
  200. package/dist/dashboard/daemon-internal-api.js.map +1 -1
  201. package/dist/dashboard/daemon-internal-client.d.ts.map +1 -1
  202. package/dist/dashboard/daemon-internal-client.js +2 -3
  203. package/dist/dashboard/daemon-internal-client.js.map +1 -1
  204. package/dist/dashboard/federation-api.js +1 -1
  205. package/dist/dashboard/federation-api.js.map +1 -1
  206. package/dist/dashboard/federation-spoke-api.js +1 -1
  207. package/dist/dashboard/federation-spoke-api.js.map +1 -1
  208. package/dist/dashboard/history-senders.d.ts +3 -0
  209. package/dist/dashboard/history-senders.d.ts.map +1 -1
  210. package/dist/dashboard/history-senders.js.map +1 -1
  211. package/dist/dashboard/http.d.ts +4 -0
  212. package/dist/dashboard/http.d.ts.map +1 -0
  213. package/dist/dashboard/http.js +6 -0
  214. package/dist/dashboard/http.js.map +1 -0
  215. package/dist/dashboard/registry.d.ts +4 -0
  216. package/dist/dashboard/registry.d.ts.map +1 -1
  217. package/dist/dashboard/registry.js.map +1 -1
  218. package/dist/dashboard/trigger-api.js +1 -1
  219. package/dist/dashboard/trigger-api.js.map +1 -1
  220. package/dist/dashboard/v3-runs-api.d.ts +13 -10
  221. package/dist/dashboard/v3-runs-api.d.ts.map +1 -1
  222. package/dist/dashboard/v3-runs-api.js +121 -4
  223. package/dist/dashboard/v3-runs-api.js.map +1 -1
  224. package/dist/dashboard/vc-consumer-profiles-api.d.ts +105 -0
  225. package/dist/dashboard/vc-consumer-profiles-api.d.ts.map +1 -0
  226. package/dist/dashboard/vc-consumer-profiles-api.js +312 -0
  227. package/dist/dashboard/vc-consumer-profiles-api.js.map +1 -0
  228. package/dist/dashboard/web/app.d.ts.map +1 -1
  229. package/dist/dashboard/web/app.js +7 -6
  230. package/dist/dashboard/web/app.js.map +1 -1
  231. package/dist/dashboard/web/bot-defaults-page.d.ts.map +1 -1
  232. package/dist/dashboard/web/bot-defaults-page.js +9 -14
  233. package/dist/dashboard/web/bot-defaults-page.js.map +1 -1
  234. package/dist/dashboard/web/bot-onboarding.d.ts.map +1 -1
  235. package/dist/dashboard/web/bot-onboarding.js +7 -3
  236. package/dist/dashboard/web/bot-onboarding.js.map +1 -1
  237. package/dist/dashboard/web/connectors-page.d.ts +5 -0
  238. package/dist/dashboard/web/connectors-page.d.ts.map +1 -1
  239. package/dist/dashboard/web/connectors-page.js +16 -12
  240. package/dist/dashboard/web/connectors-page.js.map +1 -1
  241. package/dist/dashboard/web/create-session-entry.d.ts +4 -0
  242. package/dist/dashboard/web/create-session-entry.d.ts.map +1 -0
  243. package/dist/dashboard/web/create-session-entry.js +17 -0
  244. package/dist/dashboard/web/create-session-entry.js.map +1 -0
  245. package/dist/dashboard/web/dashboard-components.d.ts +5 -0
  246. package/dist/dashboard/web/dashboard-components.d.ts.map +1 -1
  247. package/dist/dashboard/web/dashboard-components.js +29 -4
  248. package/dist/dashboard/web/dashboard-components.js.map +1 -1
  249. package/dist/dashboard/web/dashboard-routes.d.ts.map +1 -1
  250. package/dist/dashboard/web/dashboard-routes.js +0 -1
  251. package/dist/dashboard/web/dashboard-routes.js.map +1 -1
  252. package/dist/dashboard/web/i18n.d.ts.map +1 -1
  253. package/dist/dashboard/web/i18n.js +192 -382
  254. package/dist/dashboard/web/i18n.js.map +1 -1
  255. package/dist/dashboard/web/preferences.d.ts +3 -0
  256. package/dist/dashboard/web/preferences.d.ts.map +1 -1
  257. package/dist/dashboard/web/preferences.js +18 -0
  258. package/dist/dashboard/web/preferences.js.map +1 -1
  259. package/dist/dashboard/web/schedules-page.d.ts.map +1 -1
  260. package/dist/dashboard/web/schedules-page.js +4 -1
  261. package/dist/dashboard/web/schedules-page.js.map +1 -1
  262. package/dist/dashboard/web/sessions-page.d.ts.map +1 -1
  263. package/dist/dashboard/web/sessions-page.js +64 -18
  264. package/dist/dashboard/web/sessions-page.js.map +1 -1
  265. package/dist/dashboard/web/settings-page.d.ts.map +1 -1
  266. package/dist/dashboard/web/settings-page.js +2 -1
  267. package/dist/dashboard/web/settings-page.js.map +1 -1
  268. package/dist/dashboard/web/v3-api.d.ts +12 -2
  269. package/dist/dashboard/web/v3-api.d.ts.map +1 -1
  270. package/dist/dashboard/web/v3-api.js +34 -6
  271. package/dist/dashboard/web/v3-api.js.map +1 -1
  272. package/dist/dashboard/web/v3-components.d.ts +6 -0
  273. package/dist/dashboard/web/v3-components.d.ts.map +1 -1
  274. package/dist/dashboard/web/v3-components.js +66 -23
  275. package/dist/dashboard/web/v3-components.js.map +1 -1
  276. package/dist/dashboard/web/v3-model.js +1 -1
  277. package/dist/dashboard/web/v3-model.js.map +1 -1
  278. package/dist/dashboard/web/v3-terminal.js +2 -2
  279. package/dist/dashboard/web/v3-terminal.js.map +1 -1
  280. package/dist/dashboard/web/vc-consumer-profiles-section.d.ts +19 -0
  281. package/dist/dashboard/web/vc-consumer-profiles-section.d.ts.map +1 -0
  282. package/dist/dashboard/web/vc-consumer-profiles-section.js +382 -0
  283. package/dist/dashboard/web/vc-consumer-profiles-section.js.map +1 -0
  284. package/dist/dashboard/webhook-routes.d.ts.map +1 -1
  285. package/dist/dashboard/webhook-routes.js +29 -6
  286. package/dist/dashboard/webhook-routes.js.map +1 -1
  287. package/dist/dashboard-web/app.js +1 -1
  288. package/dist/dashboard-web/chunks/bot-defaults-page-RYBL4ZYE.js +4 -0
  289. package/dist/dashboard-web/chunks/{chunk-OEJIT66L.js → chunk-CMDPZOPK.js} +1 -1
  290. package/dist/dashboard-web/chunks/chunk-I35DXGM4.js +1 -0
  291. package/dist/dashboard-web/chunks/chunk-NYZHARIU.js +47 -0
  292. package/dist/dashboard-web/chunks/chunk-SZOB6VK2.js +1 -0
  293. package/dist/dashboard-web/chunks/{chunk-YQFXGRSD.js → chunk-YBOHL7T7.js} +1 -1
  294. package/dist/dashboard-web/chunks/chunk-YWCPDL4S.js +1 -0
  295. package/dist/dashboard-web/chunks/connectors-page-DAMP7TTV.js +1 -0
  296. package/dist/dashboard-web/chunks/{groups-page-5AJPPJH2.js → groups-page-BPFA356N.js} +1 -1
  297. package/dist/dashboard-web/chunks/{insights-page-R3DFECX4.js → insights-page-SHOPHTWY.js} +1 -1
  298. package/dist/dashboard-web/chunks/{monitor-room-NLMKJLDY.js → monitor-room-PXPJGZCN.js} +1 -1
  299. package/dist/dashboard-web/chunks/{monitoring-page-EHSOX4GV.js → monitoring-page-4DF54M5Y.js} +1 -1
  300. package/dist/dashboard-web/chunks/{office-page-OXJKFJ4R.js → office-page-6OHU6KMZ.js} +1 -1
  301. package/dist/dashboard-web/chunks/{overview-page-GJHIVXJF.js → overview-page-IHIZ6F5M.js} +1 -1
  302. package/dist/dashboard-web/chunks/{roles-page-6ZODQISW.js → roles-page-JYTBYKEF.js} +1 -1
  303. package/dist/dashboard-web/chunks/{schedules-page-DAGMHVCH.js → schedules-page-WJ72T7KV.js} +1 -1
  304. package/dist/dashboard-web/chunks/sessions-page-QC56OIAI.js +3 -0
  305. package/dist/dashboard-web/chunks/settings-page-TCKWEXTN.js +2 -0
  306. package/dist/dashboard-web/chunks/{skills-page-J7EVUHXP.js → skills-page-RJJNIECW.js} +1 -1
  307. package/dist/dashboard-web/chunks/{team-federation-page-YM5JBIII.js → team-federation-page-ZMDX3E7K.js} +1 -1
  308. package/dist/dashboard-web/chunks/v3-page-VLLAUQ33.js +94 -0
  309. package/dist/dashboard-web/chunks/{whiteboards-page-75N2U6W4.js → whiteboards-page-NAO53CKM.js} +1 -1
  310. package/dist/dashboard-web/style.css +363 -274
  311. package/dist/dashboard.js +194 -78
  312. package/dist/dashboard.js.map +1 -1
  313. package/dist/global-config.d.ts +1 -1
  314. package/dist/i18n/en.d.ts.map +1 -1
  315. package/dist/i18n/en.js +12 -87
  316. package/dist/i18n/en.js.map +1 -1
  317. package/dist/i18n/zh.d.ts.map +1 -1
  318. package/dist/i18n/zh.js +12 -87
  319. package/dist/i18n/zh.js.map +1 -1
  320. package/dist/im/lark/brand-template.d.ts +15 -0
  321. package/dist/im/lark/brand-template.d.ts.map +1 -0
  322. package/dist/im/lark/brand-template.js +114 -0
  323. package/dist/im/lark/brand-template.js.map +1 -0
  324. package/dist/im/lark/card-handler.d.ts +6 -3
  325. package/dist/im/lark/card-handler.d.ts.map +1 -1
  326. package/dist/im/lark/card-handler.js +23 -39
  327. package/dist/im/lark/card-handler.js.map +1 -1
  328. package/dist/im/lark/client.d.ts +8 -2
  329. package/dist/im/lark/client.d.ts.map +1 -1
  330. package/dist/im/lark/client.js +33 -31
  331. package/dist/im/lark/client.js.map +1 -1
  332. package/dist/im/lark/doc-comment.d.ts +18 -0
  333. package/dist/im/lark/doc-comment.d.ts.map +1 -1
  334. package/dist/im/lark/doc-comment.js +119 -5
  335. package/dist/im/lark/doc-comment.js.map +1 -1
  336. package/dist/im/lark/event-dispatcher.d.ts +18 -2
  337. package/dist/im/lark/event-dispatcher.d.ts.map +1 -1
  338. package/dist/im/lark/event-dispatcher.js +41 -19
  339. package/dist/im/lark/event-dispatcher.js.map +1 -1
  340. package/dist/im/lark/merge-forward.d.ts.map +1 -1
  341. package/dist/im/lark/merge-forward.js +7 -2
  342. package/dist/im/lark/merge-forward.js.map +1 -1
  343. package/dist/im/lark/message-parser.d.ts.map +1 -1
  344. package/dist/im/lark/message-parser.js +7 -0
  345. package/dist/im/lark/message-parser.js.map +1 -1
  346. package/dist/im/lark/overview-card.d.ts +1 -2
  347. package/dist/im/lark/overview-card.d.ts.map +1 -1
  348. package/dist/im/lark/overview-card.js +1 -48
  349. package/dist/im/lark/overview-card.js.map +1 -1
  350. package/dist/im/lark/v3-blocked-card-handler.d.ts.map +1 -1
  351. package/dist/im/lark/v3-blocked-card-handler.js +5 -5
  352. package/dist/im/lark/v3-blocked-card-handler.js.map +1 -1
  353. package/dist/im/lark/v3-blocked-card.d.ts +1 -0
  354. package/dist/im/lark/v3-blocked-card.d.ts.map +1 -1
  355. package/dist/im/lark/v3-blocked-card.js +19 -2
  356. package/dist/im/lark/v3-blocked-card.js.map +1 -1
  357. package/dist/im/lark/v3-distillation-card-handler.d.ts +12 -0
  358. package/dist/im/lark/v3-distillation-card-handler.d.ts.map +1 -0
  359. package/dist/im/lark/v3-distillation-card-handler.js +107 -0
  360. package/dist/im/lark/v3-distillation-card-handler.js.map +1 -0
  361. package/dist/im/lark/v3-distillation-card.d.ts +42 -0
  362. package/dist/im/lark/v3-distillation-card.d.ts.map +1 -0
  363. package/dist/im/lark/v3-distillation-card.js +206 -0
  364. package/dist/im/lark/v3-distillation-card.js.map +1 -0
  365. package/dist/im/lark/v3-gate-card-handler.d.ts +1 -1
  366. package/dist/im/lark/v3-gate-card-handler.d.ts.map +1 -1
  367. package/dist/im/lark/v3-gate-card-handler.js +6 -5
  368. package/dist/im/lark/v3-gate-card-handler.js.map +1 -1
  369. package/dist/im/lark/v3-gate-card.d.ts +8 -1
  370. package/dist/im/lark/v3-gate-card.d.ts.map +1 -1
  371. package/dist/im/lark/v3-gate-card.js +38 -7
  372. package/dist/im/lark/v3-gate-card.js.map +1 -1
  373. package/dist/im/lark/v3-loop-grant-card-handler.d.ts.map +1 -1
  374. package/dist/im/lark/v3-loop-grant-card-handler.js +3 -4
  375. package/dist/im/lark/v3-loop-grant-card-handler.js.map +1 -1
  376. package/dist/im/lark/v3-loop-grant-card.js +1 -1
  377. package/dist/im/lark/v3-loop-grant-card.js.map +1 -1
  378. package/dist/im/lark/v3-progress-card-manager.d.ts +79 -0
  379. package/dist/im/lark/v3-progress-card-manager.d.ts.map +1 -0
  380. package/dist/im/lark/v3-progress-card-manager.js +444 -0
  381. package/dist/im/lark/v3-progress-card-manager.js.map +1 -0
  382. package/dist/im/lark/v3-progress-card.d.ts +26 -0
  383. package/dist/im/lark/v3-progress-card.d.ts.map +1 -0
  384. package/dist/im/lark/v3-progress-card.js +211 -0
  385. package/dist/im/lark/v3-progress-card.js.map +1 -0
  386. package/dist/im/lark/v3-revisit-grant-card-handler.d.ts.map +1 -1
  387. package/dist/im/lark/v3-revisit-grant-card-handler.js +3 -4
  388. package/dist/im/lark/v3-revisit-grant-card-handler.js.map +1 -1
  389. package/dist/im/lark/v3-revisit-grant-card.js +1 -1
  390. package/dist/im/lark/v3-revisit-grant-card.js.map +1 -1
  391. package/dist/im/lark/v3-run-save-card-handler.d.ts +12 -0
  392. package/dist/im/lark/v3-run-save-card-handler.d.ts.map +1 -0
  393. package/dist/im/lark/v3-run-save-card-handler.js +160 -0
  394. package/dist/im/lark/v3-run-save-card-handler.js.map +1 -0
  395. package/dist/im/lark/v3-run-save-card.d.ts +38 -0
  396. package/dist/im/lark/v3-run-save-card.d.ts.map +1 -0
  397. package/dist/im/lark/v3-run-save-card.js +125 -0
  398. package/dist/im/lark/v3-run-save-card.js.map +1 -0
  399. package/dist/im/lark/v3-saved-workflow-command.d.ts +36 -0
  400. package/dist/im/lark/v3-saved-workflow-command.d.ts.map +1 -0
  401. package/dist/im/lark/v3-saved-workflow-command.js +186 -0
  402. package/dist/im/lark/v3-saved-workflow-command.js.map +1 -0
  403. package/dist/im/lark/v3-saved-workflow-handler.d.ts +89 -0
  404. package/dist/im/lark/v3-saved-workflow-handler.d.ts.map +1 -0
  405. package/dist/im/lark/v3-saved-workflow-handler.js +212 -0
  406. package/dist/im/lark/v3-saved-workflow-handler.js.map +1 -0
  407. package/dist/im/lark/workflow-slash-command.d.ts +7 -110
  408. package/dist/im/lark/workflow-slash-command.d.ts.map +1 -1
  409. package/dist/im/lark/workflow-slash-command.js +16 -230
  410. package/dist/im/lark/workflow-slash-command.js.map +1 -1
  411. package/dist/index-daemon.js +1 -1
  412. package/dist/index-daemon.js.map +1 -1
  413. package/dist/mir-runner.js +11 -15
  414. package/dist/mir-runner.js.map +1 -1
  415. package/dist/mira-runner.js +8 -12
  416. package/dist/mira-runner.js.map +1 -1
  417. package/dist/services/bridge-turn-queue.d.ts +29 -12
  418. package/dist/services/bridge-turn-queue.d.ts.map +1 -1
  419. package/dist/services/bridge-turn-queue.js +59 -23
  420. package/dist/services/bridge-turn-queue.js.map +1 -1
  421. package/dist/services/claude-transcript.d.ts +15 -0
  422. package/dist/services/claude-transcript.d.ts.map +1 -1
  423. package/dist/services/claude-transcript.js +24 -0
  424. package/dist/services/claude-transcript.js.map +1 -1
  425. package/dist/services/codex-bridge-queue.d.ts +13 -2
  426. package/dist/services/codex-bridge-queue.d.ts.map +1 -1
  427. package/dist/services/codex-bridge-queue.js +20 -3
  428. package/dist/services/codex-bridge-queue.js.map +1 -1
  429. package/dist/services/codex-transcript.d.ts +6 -0
  430. package/dist/services/codex-transcript.d.ts.map +1 -1
  431. package/dist/services/codex-transcript.js.map +1 -1
  432. package/dist/services/grok-transcript.d.ts +3 -2
  433. package/dist/services/grok-transcript.d.ts.map +1 -1
  434. package/dist/services/grok-transcript.js +73 -22
  435. package/dist/services/grok-transcript.js.map +1 -1
  436. package/dist/services/hook-runner.d.ts.map +1 -1
  437. package/dist/services/hook-runner.js +26 -3
  438. package/dist/services/hook-runner.js.map +1 -1
  439. package/dist/services/schedule-store.d.ts +37 -0
  440. package/dist/services/schedule-store.d.ts.map +1 -1
  441. package/dist/services/schedule-store.js +259 -141
  442. package/dist/services/schedule-store.js.map +1 -1
  443. package/dist/services/send-policy.d.ts +50 -0
  444. package/dist/services/send-policy.d.ts.map +1 -1
  445. package/dist/services/send-policy.js +65 -0
  446. package/dist/services/send-policy.js.map +1 -1
  447. package/dist/services/session-lifecycle-hooks.d.ts.map +1 -1
  448. package/dist/services/session-lifecycle-hooks.js +12 -0
  449. package/dist/services/session-lifecycle-hooks.js.map +1 -1
  450. package/dist/services/traex-transcript.d.ts +11 -2
  451. package/dist/services/traex-transcript.d.ts.map +1 -1
  452. package/dist/services/traex-transcript.js +142 -8
  453. package/dist/services/traex-transcript.js.map +1 -1
  454. package/dist/services/trigger-types.d.ts +6 -1
  455. package/dist/services/trigger-types.d.ts.map +1 -1
  456. package/dist/services/trigger-types.js.map +1 -1
  457. package/dist/services/turn-terminal-deduper.d.ts +14 -0
  458. package/dist/services/turn-terminal-deduper.d.ts.map +1 -0
  459. package/dist/services/turn-terminal-deduper.js +34 -0
  460. package/dist/services/turn-terminal-deduper.js.map +1 -0
  461. package/dist/services/vc-meeting-action-gate.d.ts +246 -0
  462. package/dist/services/vc-meeting-action-gate.d.ts.map +1 -0
  463. package/dist/services/vc-meeting-action-gate.js +756 -0
  464. package/dist/services/vc-meeting-action-gate.js.map +1 -0
  465. package/dist/services/vc-meeting-action-store.d.ts +222 -0
  466. package/dist/services/vc-meeting-action-store.d.ts.map +1 -0
  467. package/dist/services/vc-meeting-action-store.js +806 -0
  468. package/dist/services/vc-meeting-action-store.js.map +1 -0
  469. package/dist/services/vc-meeting-consumer-isolation.d.ts +27 -0
  470. package/dist/services/vc-meeting-consumer-isolation.d.ts.map +1 -0
  471. package/dist/services/vc-meeting-consumer-isolation.js +37 -0
  472. package/dist/services/vc-meeting-consumer-isolation.js.map +1 -0
  473. package/dist/services/vc-meeting-consumer-profile-bootstrap.d.ts +72 -0
  474. package/dist/services/vc-meeting-consumer-profile-bootstrap.d.ts.map +1 -0
  475. package/dist/services/vc-meeting-consumer-profile-bootstrap.js +343 -0
  476. package/dist/services/vc-meeting-consumer-profile-bootstrap.js.map +1 -0
  477. package/dist/services/vc-meeting-consumer-profile-store.d.ts +39 -0
  478. package/dist/services/vc-meeting-consumer-profile-store.d.ts.map +1 -0
  479. package/dist/services/vc-meeting-consumer-profile-store.js +190 -0
  480. package/dist/services/vc-meeting-consumer-profile-store.js.map +1 -0
  481. package/dist/services/vc-meeting-daemon-auth.d.ts +29 -0
  482. package/dist/services/vc-meeting-daemon-auth.d.ts.map +1 -0
  483. package/dist/services/vc-meeting-daemon-auth.js +117 -0
  484. package/dist/services/vc-meeting-daemon-auth.js.map +1 -0
  485. package/dist/services/vc-meeting-delivery-feed.d.ts +52 -0
  486. package/dist/services/vc-meeting-delivery-feed.d.ts.map +1 -0
  487. package/dist/services/vc-meeting-delivery-feed.js +231 -0
  488. package/dist/services/vc-meeting-delivery-feed.js.map +1 -0
  489. package/dist/services/vc-meeting-delivery-hub-store.d.ts +213 -0
  490. package/dist/services/vc-meeting-delivery-hub-store.d.ts.map +1 -0
  491. package/dist/services/vc-meeting-delivery-hub-store.js +1230 -0
  492. package/dist/services/vc-meeting-delivery-hub-store.js.map +1 -0
  493. package/dist/services/vc-meeting-delivery-protocol.d.ts +159 -0
  494. package/dist/services/vc-meeting-delivery-protocol.d.ts.map +1 -0
  495. package/dist/services/vc-meeting-delivery-protocol.js +443 -0
  496. package/dist/services/vc-meeting-delivery-protocol.js.map +1 -0
  497. package/dist/services/vc-meeting-delivery-receiver.d.ts +80 -0
  498. package/dist/services/vc-meeting-delivery-receiver.d.ts.map +1 -0
  499. package/dist/services/vc-meeting-delivery-receiver.js +543 -0
  500. package/dist/services/vc-meeting-delivery-receiver.js.map +1 -0
  501. package/dist/services/vc-meeting-delivery-store.d.ts +339 -0
  502. package/dist/services/vc-meeting-delivery-store.d.ts.map +1 -0
  503. package/dist/services/vc-meeting-delivery-store.js +1024 -0
  504. package/dist/services/vc-meeting-delivery-store.js.map +1 -0
  505. package/dist/services/vc-meeting-feed-metadata-store.d.ts +58 -0
  506. package/dist/services/vc-meeting-feed-metadata-store.d.ts.map +1 -0
  507. package/dist/services/vc-meeting-feed-metadata-store.js +356 -0
  508. package/dist/services/vc-meeting-feed-metadata-store.js.map +1 -0
  509. package/dist/services/vc-meeting-im-reply.d.ts +55 -0
  510. package/dist/services/vc-meeting-im-reply.d.ts.map +1 -0
  511. package/dist/services/vc-meeting-im-reply.js +279 -0
  512. package/dist/services/vc-meeting-im-reply.js.map +1 -0
  513. package/dist/services/vc-meeting-im-routing.d.ts +131 -0
  514. package/dist/services/vc-meeting-im-routing.d.ts.map +1 -0
  515. package/dist/services/vc-meeting-im-routing.js +449 -0
  516. package/dist/services/vc-meeting-im-routing.js.map +1 -0
  517. package/dist/services/vc-meeting-listener-message-store.d.ts +23 -0
  518. package/dist/services/vc-meeting-listener-message-store.d.ts.map +1 -0
  519. package/dist/services/vc-meeting-listener-message-store.js +142 -0
  520. package/dist/services/vc-meeting-listener-message-store.js.map +1 -0
  521. package/dist/services/vc-meeting-member-policy.d.ts +37 -0
  522. package/dist/services/vc-meeting-member-policy.d.ts.map +1 -0
  523. package/dist/services/vc-meeting-member-policy.js +102 -0
  524. package/dist/services/vc-meeting-member-policy.js.map +1 -0
  525. package/dist/services/vc-meeting-profile-instructions.d.ts +22 -0
  526. package/dist/services/vc-meeting-profile-instructions.d.ts.map +1 -0
  527. package/dist/services/vc-meeting-profile-instructions.js +64 -0
  528. package/dist/services/vc-meeting-profile-instructions.js.map +1 -0
  529. package/dist/services/vc-meeting-runtime-store.d.ts +63 -0
  530. package/dist/services/vc-meeting-runtime-store.d.ts.map +1 -1
  531. package/dist/services/vc-meeting-runtime-store.js +605 -116
  532. package/dist/services/vc-meeting-runtime-store.js.map +1 -1
  533. package/dist/services/vc-meeting-send-policy.d.ts +89 -0
  534. package/dist/services/vc-meeting-send-policy.d.ts.map +1 -0
  535. package/dist/services/vc-meeting-send-policy.js +150 -0
  536. package/dist/services/vc-meeting-send-policy.js.map +1 -0
  537. package/dist/services/vc-meeting-terminal-reconciler.d.ts +93 -0
  538. package/dist/services/vc-meeting-terminal-reconciler.d.ts.map +1 -0
  539. package/dist/services/vc-meeting-terminal-reconciler.js +198 -0
  540. package/dist/services/vc-meeting-terminal-reconciler.js.map +1 -0
  541. package/dist/setup/open-platform-automation.d.ts +2 -0
  542. package/dist/setup/open-platform-automation.d.ts.map +1 -1
  543. package/dist/setup/open-platform-automation.js +1 -0
  544. package/dist/setup/open-platform-automation.js.map +1 -1
  545. package/dist/setup/open-platform-outcome.d.ts +50 -0
  546. package/dist/setup/open-platform-outcome.d.ts.map +1 -0
  547. package/dist/setup/open-platform-outcome.js +56 -0
  548. package/dist/setup/open-platform-outcome.js.map +1 -0
  549. package/dist/setup/setup-args.d.ts +7 -2
  550. package/dist/setup/setup-args.d.ts.map +1 -1
  551. package/dist/setup/setup-args.js +21 -5
  552. package/dist/setup/setup-args.js.map +1 -1
  553. package/dist/skills/definitions.d.ts.map +1 -1
  554. package/dist/skills/definitions.js +66 -54
  555. package/dist/skills/definitions.js.map +1 -1
  556. package/dist/skills/injection-mode.d.ts +5 -4
  557. package/dist/skills/injection-mode.d.ts.map +1 -1
  558. package/dist/skills/injection-mode.js +19 -10
  559. package/dist/skills/injection-mode.js.map +1 -1
  560. package/dist/types.d.ts +187 -0
  561. package/dist/types.d.ts.map +1 -1
  562. package/dist/utils/canonical-input-hash.d.ts +5 -0
  563. package/dist/utils/canonical-input-hash.d.ts.map +1 -0
  564. package/dist/utils/canonical-input-hash.js +43 -0
  565. package/dist/utils/canonical-input-hash.js.map +1 -0
  566. package/dist/utils/canonical-json.d.ts +10 -0
  567. package/dist/utils/canonical-json.d.ts.map +1 -0
  568. package/dist/utils/canonical-json.js +23 -0
  569. package/dist/utils/canonical-json.js.map +1 -0
  570. package/dist/utils/child-env.d.ts +1 -1
  571. package/dist/utils/child-env.d.ts.map +1 -1
  572. package/dist/utils/child-env.js +8 -0
  573. package/dist/utils/child-env.js.map +1 -1
  574. package/dist/utils/daemon-discovery.d.ts +4 -0
  575. package/dist/utils/daemon-discovery.d.ts.map +1 -1
  576. package/dist/utils/daemon-discovery.js +12 -6
  577. package/dist/utils/daemon-discovery.js.map +1 -1
  578. package/dist/utils/file-lock.d.ts.map +1 -1
  579. package/dist/utils/file-lock.js +696 -102
  580. package/dist/utils/file-lock.js.map +1 -1
  581. package/dist/utils/fs-durability.d.ts +20 -0
  582. package/dist/utils/fs-durability.d.ts.map +1 -0
  583. package/dist/utils/fs-durability.js +84 -0
  584. package/dist/utils/fs-durability.js.map +1 -0
  585. package/dist/utils/global-install.d.ts +5 -2
  586. package/dist/utils/global-install.d.ts.map +1 -1
  587. package/dist/utils/global-install.js +22 -4
  588. package/dist/utils/global-install.js.map +1 -1
  589. package/dist/utils/herdr-web-history.d.ts +12 -0
  590. package/dist/utils/herdr-web-history.d.ts.map +1 -0
  591. package/dist/utils/herdr-web-history.js +74 -0
  592. package/dist/utils/herdr-web-history.js.map +1 -0
  593. package/dist/utils/herdr-web-terminal-binding.d.ts +39 -0
  594. package/dist/utils/herdr-web-terminal-binding.d.ts.map +1 -0
  595. package/dist/utils/herdr-web-terminal-binding.js +56 -0
  596. package/dist/utils/herdr-web-terminal-binding.js.map +1 -0
  597. package/dist/utils/pending-input-queue.d.ts +30 -1
  598. package/dist/utils/pending-input-queue.d.ts.map +1 -1
  599. package/dist/utils/pending-input-queue.js +45 -5
  600. package/dist/utils/pending-input-queue.js.map +1 -1
  601. package/dist/vc-agent/cards.d.ts +49 -4
  602. package/dist/vc-agent/cards.d.ts.map +1 -1
  603. package/dist/vc-agent/cards.js +460 -70
  604. package/dist/vc-agent/cards.js.map +1 -1
  605. package/dist/vc-agent/polling-source.d.ts +6 -1
  606. package/dist/vc-agent/polling-source.d.ts.map +1 -1
  607. package/dist/vc-agent/polling-source.js +17 -4
  608. package/dist/vc-agent/polling-source.js.map +1 -1
  609. package/dist/worker.js +1333 -283
  610. package/dist/worker.js.map +1 -1
  611. package/dist/workflows/definition.d.ts +28 -35
  612. package/dist/workflows/definition.d.ts.map +1 -1
  613. package/dist/workflows/definition.js +7 -24
  614. package/dist/workflows/definition.js.map +1 -1
  615. package/dist/workflows/events/payloads.d.ts +28 -28
  616. package/dist/workflows/events/replay.d.ts +5 -0
  617. package/dist/workflows/events/replay.d.ts.map +1 -1
  618. package/dist/workflows/events/replay.js +6 -1
  619. package/dist/workflows/events/replay.js.map +1 -1
  620. package/dist/workflows/events/schema.d.ts +663 -663
  621. package/dist/workflows/events/schema.d.ts.map +1 -1
  622. package/dist/workflows/events/schema.js +1 -4
  623. package/dist/workflows/events/schema.js.map +1 -1
  624. package/dist/workflows/hostExecutors/botmux-schedule.d.ts +5 -4
  625. package/dist/workflows/hostExecutors/botmux-schedule.d.ts.map +1 -1
  626. package/dist/workflows/hostExecutors/botmux-schedule.js +80 -35
  627. package/dist/workflows/hostExecutors/botmux-schedule.js.map +1 -1
  628. package/dist/workflows/hostExecutors/feishu-im.d.ts +3 -3
  629. package/dist/workflows/hostExecutors/feishu-im.d.ts.map +1 -1
  630. package/dist/workflows/hostExecutors/feishu-im.js +3 -3
  631. package/dist/workflows/hostExecutors/feishu-im.js.map +1 -1
  632. package/dist/workflows/hostExecutors/feishu-reply.d.ts +1 -1
  633. package/dist/workflows/hostExecutors/feishu-reply.d.ts.map +1 -1
  634. package/dist/workflows/hostExecutors/feishu-reply.js +1 -1
  635. package/dist/workflows/hostExecutors/feishu-reply.js.map +1 -1
  636. package/dist/workflows/hostExecutors/feishu-send.d.ts +1 -1
  637. package/dist/workflows/hostExecutors/feishu-send.d.ts.map +1 -1
  638. package/dist/workflows/hostExecutors/feishu-send.js +1 -1
  639. package/dist/workflows/hostExecutors/feishu-send.js.map +1 -1
  640. package/dist/workflows/hostExecutors/index.d.ts +0 -1
  641. package/dist/workflows/hostExecutors/index.d.ts.map +1 -1
  642. package/dist/workflows/hostExecutors/index.js +0 -1
  643. package/dist/workflows/hostExecutors/index.js.map +1 -1
  644. package/dist/workflows/hostExecutors/registry.d.ts +1 -1
  645. package/dist/workflows/hostExecutors/registry.d.ts.map +1 -1
  646. package/dist/workflows/hostExecutors/types.d.ts +21 -29
  647. package/dist/workflows/hostExecutors/types.d.ts.map +1 -1
  648. package/dist/workflows/migration/v2-definition-paths.d.ts +3 -0
  649. package/dist/workflows/migration/v2-definition-paths.d.ts.map +1 -0
  650. package/dist/workflows/migration/v2-definition-paths.js +10 -0
  651. package/dist/workflows/migration/v2-definition-paths.js.map +1 -0
  652. package/dist/workflows/migration/v2-ledger.d.ts +138 -0
  653. package/dist/workflows/migration/v2-ledger.d.ts.map +1 -0
  654. package/dist/workflows/migration/v2-ledger.js +599 -0
  655. package/dist/workflows/migration/v2-ledger.js.map +1 -0
  656. package/dist/workflows/migration/v2-migration-service.d.ts +40 -0
  657. package/dist/workflows/migration/v2-migration-service.d.ts.map +1 -0
  658. package/dist/workflows/migration/v2-migration-service.js +454 -0
  659. package/dist/workflows/migration/v2-migration-service.js.map +1 -0
  660. package/dist/workflows/migration/v2-read-only-ids.d.ts +7 -0
  661. package/dist/workflows/migration/v2-read-only-ids.d.ts.map +1 -0
  662. package/dist/workflows/migration/v2-read-only-ids.js +9 -0
  663. package/dist/workflows/migration/v2-read-only-ids.js.map +1 -0
  664. package/dist/workflows/migration/v2-run-archive-schema.d.ts +976 -0
  665. package/dist/workflows/migration/v2-run-archive-schema.d.ts.map +1 -0
  666. package/dist/workflows/migration/v2-run-archive-schema.js +113 -0
  667. package/dist/workflows/migration/v2-run-archive-schema.js.map +1 -0
  668. package/dist/workflows/migration/v2-run-archive.d.ts +92 -0
  669. package/dist/workflows/migration/v2-run-archive.d.ts.map +1 -0
  670. package/dist/workflows/migration/v2-run-archive.js +1220 -0
  671. package/dist/workflows/migration/v2-run-archive.js.map +1 -0
  672. package/dist/workflows/migration/v2-scanner.d.ts +22 -0
  673. package/dist/workflows/migration/v2-scanner.d.ts.map +1 -0
  674. package/dist/workflows/migration/v2-scanner.js +114 -0
  675. package/dist/workflows/migration/v2-scanner.js.map +1 -0
  676. package/dist/workflows/migration/v2-to-v3.d.ts +32 -0
  677. package/dist/workflows/migration/v2-to-v3.d.ts.map +1 -0
  678. package/dist/workflows/migration/v2-to-v3.js +494 -0
  679. package/dist/workflows/migration/v2-to-v3.js.map +1 -0
  680. package/dist/workflows/ops-projection.d.ts.map +1 -1
  681. package/dist/workflows/ops-projection.js +4 -3
  682. package/dist/workflows/ops-projection.js.map +1 -1
  683. package/dist/workflows/shared/idempotency-key.d.ts +19 -0
  684. package/dist/workflows/shared/idempotency-key.d.ts.map +1 -0
  685. package/dist/workflows/shared/idempotency-key.js +23 -0
  686. package/dist/workflows/shared/idempotency-key.js.map +1 -0
  687. package/dist/workflows/{params.d.ts → shared/params.d.ts} +42 -6
  688. package/dist/workflows/shared/params.d.ts.map +1 -0
  689. package/dist/workflows/{params.js → shared/params.js} +91 -4
  690. package/dist/workflows/shared/params.js.map +1 -0
  691. package/dist/workflows/shared/provider-reconciler.d.ts +47 -0
  692. package/dist/workflows/shared/provider-reconciler.d.ts.map +1 -0
  693. package/dist/workflows/shared/provider-reconciler.js +17 -0
  694. package/dist/workflows/shared/provider-reconciler.js.map +1 -0
  695. package/dist/workflows/{spawn-policy.d.ts → shared/sandbox-policy.d.ts} +2 -2
  696. package/dist/workflows/shared/sandbox-policy.d.ts.map +1 -0
  697. package/dist/workflows/{spawn-policy.js → shared/sandbox-policy.js} +1 -1
  698. package/dist/workflows/shared/sandbox-policy.js.map +1 -0
  699. package/dist/workflows/shared/worker-process.d.ts +29 -0
  700. package/dist/workflows/shared/worker-process.d.ts.map +1 -0
  701. package/dist/workflows/shared/worker-process.js +56 -0
  702. package/dist/workflows/shared/worker-process.js.map +1 -0
  703. package/dist/workflows/v3/architect.d.ts.map +1 -1
  704. package/dist/workflows/v3/architect.js +16 -4
  705. package/dist/workflows/v3/architect.js.map +1 -1
  706. package/dist/workflows/v3/attempt-ledger.d.ts +23 -0
  707. package/dist/workflows/v3/attempt-ledger.d.ts.map +1 -0
  708. package/dist/workflows/v3/attempt-ledger.js +74 -0
  709. package/dist/workflows/v3/attempt-ledger.js.map +1 -0
  710. package/dist/workflows/v3/bot-resolve.d.ts +19 -1
  711. package/dist/workflows/v3/bot-resolve.d.ts.map +1 -1
  712. package/dist/workflows/v3/bot-resolve.js +129 -3
  713. package/dist/workflows/v3/bot-resolve.js.map +1 -1
  714. package/dist/workflows/v3/cli-daemon-command-authority.d.ts +59 -0
  715. package/dist/workflows/v3/cli-daemon-command-authority.d.ts.map +1 -0
  716. package/dist/workflows/v3/cli-daemon-command-authority.js +175 -0
  717. package/dist/workflows/v3/cli-daemon-command-authority.js.map +1 -0
  718. package/dist/workflows/v3/cli-run.d.ts +27 -0
  719. package/dist/workflows/v3/cli-run.d.ts.map +1 -1
  720. package/dist/workflows/v3/cli-run.js +113 -29
  721. package/dist/workflows/v3/cli-run.js.map +1 -1
  722. package/dist/workflows/v3/contract.d.ts +16 -16
  723. package/dist/workflows/v3/contract.d.ts.map +1 -1
  724. package/dist/workflows/v3/contract.js +15 -11
  725. package/dist/workflows/v3/contract.js.map +1 -1
  726. package/dist/workflows/v3/daemon-ipc-auth.d.ts +113 -0
  727. package/dist/workflows/v3/daemon-ipc-auth.d.ts.map +1 -0
  728. package/dist/workflows/v3/daemon-ipc-auth.js +294 -0
  729. package/dist/workflows/v3/daemon-ipc-auth.js.map +1 -0
  730. package/dist/workflows/v3/daemon-ipc-body.d.ts +30 -0
  731. package/dist/workflows/v3/daemon-ipc-body.d.ts.map +1 -0
  732. package/dist/workflows/v3/daemon-ipc-body.js +65 -0
  733. package/dist/workflows/v3/daemon-ipc-body.js.map +1 -0
  734. package/dist/workflows/v3/daemon-ipc-client.d.ts +32 -0
  735. package/dist/workflows/v3/daemon-ipc-client.d.ts.map +1 -0
  736. package/dist/workflows/v3/daemon-ipc-client.js +74 -0
  737. package/dist/workflows/v3/daemon-ipc-client.js.map +1 -0
  738. package/dist/workflows/v3/daemon-run.d.ts +87 -2
  739. package/dist/workflows/v3/daemon-run.d.ts.map +1 -1
  740. package/dist/workflows/v3/daemon-run.js +863 -68
  741. package/dist/workflows/v3/daemon-run.js.map +1 -1
  742. package/dist/workflows/v3/dag.d.ts +22 -8
  743. package/dist/workflows/v3/dag.d.ts.map +1 -1
  744. package/dist/workflows/v3/dag.js +214 -22
  745. package/dist/workflows/v3/dag.js.map +1 -1
  746. package/dist/workflows/v3/distillation-compiler.d.ts +36 -0
  747. package/dist/workflows/v3/distillation-compiler.d.ts.map +1 -0
  748. package/dist/workflows/v3/distillation-compiler.js +704 -0
  749. package/dist/workflows/v3/distillation-compiler.js.map +1 -0
  750. package/dist/workflows/v3/distillation-private-root.d.ts +10 -0
  751. package/dist/workflows/v3/distillation-private-root.d.ts.map +1 -0
  752. package/dist/workflows/v3/distillation-private-root.js +34 -0
  753. package/dist/workflows/v3/distillation-private-root.js.map +1 -0
  754. package/dist/workflows/v3/distillation-runner.d.ts +64 -0
  755. package/dist/workflows/v3/distillation-runner.d.ts.map +1 -0
  756. package/dist/workflows/v3/distillation-runner.js +1028 -0
  757. package/dist/workflows/v3/distillation-runner.js.map +1 -0
  758. package/dist/workflows/v3/distillation-schema.d.ts +63 -0
  759. package/dist/workflows/v3/distillation-schema.d.ts.map +1 -0
  760. package/dist/workflows/v3/distillation-schema.js +184 -0
  761. package/dist/workflows/v3/distillation-schema.js.map +1 -0
  762. package/dist/workflows/v3/distillation-service.d.ts +78 -0
  763. package/dist/workflows/v3/distillation-service.d.ts.map +1 -0
  764. package/dist/workflows/v3/distillation-service.js +416 -0
  765. package/dist/workflows/v3/distillation-service.js.map +1 -0
  766. package/dist/workflows/v3/distillation-source.d.ts +35 -0
  767. package/dist/workflows/v3/distillation-source.d.ts.map +1 -0
  768. package/dist/workflows/v3/distillation-source.js +118 -0
  769. package/dist/workflows/v3/distillation-source.js.map +1 -0
  770. package/dist/workflows/v3/distillation-store.d.ts +185 -0
  771. package/dist/workflows/v3/distillation-store.d.ts.map +1 -0
  772. package/dist/workflows/v3/distillation-store.js +1127 -0
  773. package/dist/workflows/v3/distillation-store.js.map +1 -0
  774. package/dist/workflows/v3/drive-lease.d.ts +7 -0
  775. package/dist/workflows/v3/drive-lease.d.ts.map +1 -0
  776. package/dist/workflows/v3/drive-lease.js +10 -0
  777. package/dist/workflows/v3/drive-lease.js.map +1 -0
  778. package/dist/workflows/v3/ephemeral-pool.d.ts +1 -1
  779. package/dist/workflows/v3/ephemeral-pool.d.ts.map +1 -1
  780. package/dist/workflows/v3/ephemeral-pool.js +222 -37
  781. package/dist/workflows/v3/ephemeral-pool.js.map +1 -1
  782. package/dist/workflows/v3/grill-state.d.ts +18 -3
  783. package/dist/workflows/v3/grill-state.d.ts.map +1 -1
  784. package/dist/workflows/v3/grill-state.js +22 -5
  785. package/dist/workflows/v3/grill-state.js.map +1 -1
  786. package/dist/workflows/v3/host-bindings.d.ts +40 -0
  787. package/dist/workflows/v3/host-bindings.d.ts.map +1 -0
  788. package/dist/workflows/v3/host-bindings.js +272 -0
  789. package/dist/workflows/v3/host-bindings.js.map +1 -0
  790. package/dist/workflows/v3/host-effect-ledger.d.ts +22 -0
  791. package/dist/workflows/v3/host-effect-ledger.d.ts.map +1 -0
  792. package/dist/workflows/v3/host-effect-ledger.js +110 -0
  793. package/dist/workflows/v3/host-effect-ledger.js.map +1 -0
  794. package/dist/workflows/v3/host-execution.d.ts +142 -0
  795. package/dist/workflows/v3/host-execution.d.ts.map +1 -0
  796. package/dist/workflows/v3/host-execution.js +424 -0
  797. package/dist/workflows/v3/host-execution.js.map +1 -0
  798. package/dist/workflows/v3/host.d.ts +46 -10
  799. package/dist/workflows/v3/host.d.ts.map +1 -1
  800. package/dist/workflows/v3/host.js +419 -140
  801. package/dist/workflows/v3/host.js.map +1 -1
  802. package/dist/workflows/v3/human-gate.d.ts +19 -1
  803. package/dist/workflows/v3/human-gate.d.ts.map +1 -1
  804. package/dist/workflows/v3/human-gate.js +145 -19
  805. package/dist/workflows/v3/human-gate.js.map +1 -1
  806. package/dist/workflows/v3/journal.d.ts +125 -7
  807. package/dist/workflows/v3/journal.d.ts.map +1 -1
  808. package/dist/workflows/v3/journal.js +154 -38
  809. package/dist/workflows/v3/journal.js.map +1 -1
  810. package/dist/workflows/v3/library-materialize.d.ts +88 -0
  811. package/dist/workflows/v3/library-materialize.d.ts.map +1 -0
  812. package/dist/workflows/v3/library-materialize.js +294 -0
  813. package/dist/workflows/v3/library-materialize.js.map +1 -0
  814. package/dist/workflows/v3/library-schema.d.ts +138 -0
  815. package/dist/workflows/v3/library-schema.d.ts.map +1 -0
  816. package/dist/workflows/v3/library-schema.js +573 -0
  817. package/dist/workflows/v3/library-schema.js.map +1 -0
  818. package/dist/workflows/v3/library-service.d.ts +126 -0
  819. package/dist/workflows/v3/library-service.d.ts.map +1 -0
  820. package/dist/workflows/v3/library-service.js +542 -0
  821. package/dist/workflows/v3/library-service.js.map +1 -0
  822. package/dist/workflows/v3/library-store.d.ts +124 -0
  823. package/dist/workflows/v3/library-store.d.ts.map +1 -0
  824. package/dist/workflows/v3/library-store.js +665 -0
  825. package/dist/workflows/v3/library-store.js.map +1 -0
  826. package/dist/workflows/v3/orchestrator.d.ts +9 -1
  827. package/dist/workflows/v3/orchestrator.d.ts.map +1 -1
  828. package/dist/workflows/v3/orchestrator.js +2 -1
  829. package/dist/workflows/v3/orchestrator.js.map +1 -1
  830. package/dist/workflows/v3/progress-projection.d.ts +99 -0
  831. package/dist/workflows/v3/progress-projection.d.ts.map +1 -0
  832. package/dist/workflows/v3/progress-projection.js +197 -0
  833. package/dist/workflows/v3/progress-projection.js.map +1 -0
  834. package/dist/workflows/v3/run-envelope.d.ts +1279 -0
  835. package/dist/workflows/v3/run-envelope.d.ts.map +1 -0
  836. package/dist/workflows/v3/run-envelope.js +681 -0
  837. package/dist/workflows/v3/run-envelope.js.map +1 -0
  838. package/dist/workflows/v3/runtime.d.ts +39 -7
  839. package/dist/workflows/v3/runtime.d.ts.map +1 -1
  840. package/dist/workflows/v3/runtime.js +1992 -100
  841. package/dist/workflows/v3/runtime.js.map +1 -1
  842. package/dist/workflows/v3/session-relay-client.d.ts +61 -0
  843. package/dist/workflows/v3/session-relay-client.d.ts.map +1 -0
  844. package/dist/workflows/v3/session-relay-client.js +92 -0
  845. package/dist/workflows/v3/session-relay-client.js.map +1 -0
  846. package/dist/workflows/v3/session-relay.d.ts +66 -0
  847. package/dist/workflows/v3/session-relay.d.ts.map +1 -0
  848. package/dist/workflows/v3/session-relay.js +157 -0
  849. package/dist/workflows/v3/session-relay.js.map +1 -0
  850. package/dist/workflows/v3/start-intent.d.ts +8 -0
  851. package/dist/workflows/v3/start-intent.d.ts.map +1 -0
  852. package/dist/workflows/v3/start-intent.js +34 -0
  853. package/dist/workflows/v3/start-intent.js.map +1 -0
  854. package/dist/workflows/v3/state.d.ts +11 -2
  855. package/dist/workflows/v3/state.d.ts.map +1 -1
  856. package/dist/workflows/v3/state.js +182 -10
  857. package/dist/workflows/v3/state.js.map +1 -1
  858. package/dist/workflows/v3/template-bindings.d.ts +22 -0
  859. package/dist/workflows/v3/template-bindings.d.ts.map +1 -0
  860. package/dist/workflows/v3/template-bindings.js +204 -0
  861. package/dist/workflows/v3/template-bindings.js.map +1 -0
  862. package/dist/workflows/v3/worker-fence.d.ts +158 -0
  863. package/dist/workflows/v3/worker-fence.d.ts.map +1 -0
  864. package/dist/workflows/v3/worker-fence.js +685 -0
  865. package/dist/workflows/v3/worker-fence.js.map +1 -0
  866. package/package.json +3 -2
  867. package/dist/core/dashboard-command/workflows.d.ts +0 -20
  868. package/dist/core/dashboard-command/workflows.d.ts.map +0 -1
  869. package/dist/core/dashboard-command/workflows.js +0 -45
  870. package/dist/core/dashboard-command/workflows.js.map +0 -1
  871. package/dist/dashboard/web/legacy-workflow-link.d.ts +0 -2
  872. package/dist/dashboard/web/legacy-workflow-link.d.ts.map +0 -1
  873. package/dist/dashboard/web/legacy-workflow-link.js +0 -12
  874. package/dist/dashboard/web/legacy-workflow-link.js.map +0 -1
  875. package/dist/dashboard/web/legacy-workflow-page.d.ts +0 -3
  876. package/dist/dashboard/web/legacy-workflow-page.d.ts.map +0 -1
  877. package/dist/dashboard/web/legacy-workflow-page.js +0 -717
  878. package/dist/dashboard/web/legacy-workflow-page.js.map +0 -1
  879. package/dist/dashboard/web/workflow-version-switch.d.ts +0 -8
  880. package/dist/dashboard/web/workflow-version-switch.d.ts.map +0 -1
  881. package/dist/dashboard/web/workflow-version-switch.js +0 -9
  882. package/dist/dashboard/web/workflow-version-switch.js.map +0 -1
  883. package/dist/dashboard/web/workflows.d.ts +0 -273
  884. package/dist/dashboard/web/workflows.d.ts.map +0 -1
  885. package/dist/dashboard/web/workflows.js +0 -436
  886. package/dist/dashboard/web/workflows.js.map +0 -1
  887. package/dist/dashboard/workflow-api.d.ts +0 -30
  888. package/dist/dashboard/workflow-api.d.ts.map +0 -1
  889. package/dist/dashboard/workflow-api.js +0 -397
  890. package/dist/dashboard/workflow-api.js.map +0 -1
  891. package/dist/dashboard/workflow-card-model.d.ts +0 -127
  892. package/dist/dashboard/workflow-card-model.d.ts.map +0 -1
  893. package/dist/dashboard/workflow-card-model.js +0 -186
  894. package/dist/dashboard/workflow-card-model.js.map +0 -1
  895. package/dist/dashboard/workflows-action-helpers.d.ts +0 -105
  896. package/dist/dashboard/workflows-action-helpers.d.ts.map +0 -1
  897. package/dist/dashboard/workflows-action-helpers.js +0 -196
  898. package/dist/dashboard/workflows-action-helpers.js.map +0 -1
  899. package/dist/dashboard-web/chunks/bot-defaults-page-7T7DPOV6.js +0 -4
  900. package/dist/dashboard-web/chunks/chunk-IGXYYRYJ.js +0 -1
  901. package/dist/dashboard-web/chunks/chunk-ISOD7VDX.js +0 -1
  902. package/dist/dashboard-web/chunks/chunk-PNK3HQBI.js +0 -37
  903. package/dist/dashboard-web/chunks/chunk-SRIE4MLQ.js +0 -1
  904. package/dist/dashboard-web/chunks/connectors-page-UQ4QBE45.js +0 -1
  905. package/dist/dashboard-web/chunks/legacy-workflow-page-QMC7OZXH.js +0 -2
  906. package/dist/dashboard-web/chunks/sessions-page-NNZIDHZM.js +0 -3
  907. package/dist/dashboard-web/chunks/settings-page-LJIXX5LQ.js +0 -2
  908. package/dist/dashboard-web/chunks/v3-page-YLYVHGKD.js +0 -94
  909. package/dist/dashboard-web/terminal-replay.html +0 -227
  910. package/dist/im/lark/workflow-card-handler.d.ts +0 -51
  911. package/dist/im/lark/workflow-card-handler.d.ts.map +0 -1
  912. package/dist/im/lark/workflow-card-handler.js +0 -163
  913. package/dist/im/lark/workflow-card-handler.js.map +0 -1
  914. package/dist/im/lark/workflow-cards.d.ts +0 -47
  915. package/dist/im/lark/workflow-cards.d.ts.map +0 -1
  916. package/dist/im/lark/workflow-cards.js +0 -231
  917. package/dist/im/lark/workflow-cards.js.map +0 -1
  918. package/dist/im/lark/workflow-progress-card.d.ts +0 -81
  919. package/dist/im/lark/workflow-progress-card.d.ts.map +0 -1
  920. package/dist/im/lark/workflow-progress-card.js +0 -336
  921. package/dist/im/lark/workflow-progress-card.js.map +0 -1
  922. package/dist/im/lark/workflows-card.d.ts +0 -102
  923. package/dist/im/lark/workflows-card.d.ts.map +0 -1
  924. package/dist/im/lark/workflows-card.js +0 -737
  925. package/dist/im/lark/workflows-card.js.map +0 -1
  926. package/dist/workflows/attempt-resume.d.ts +0 -119
  927. package/dist/workflows/attempt-resume.d.ts.map +0 -1
  928. package/dist/workflows/attempt-resume.js +0 -392
  929. package/dist/workflows/attempt-resume.js.map +0 -1
  930. package/dist/workflows/blob.d.ts +0 -27
  931. package/dist/workflows/blob.d.ts.map +0 -1
  932. package/dist/workflows/blob.js +0 -40
  933. package/dist/workflows/blob.js.map +0 -1
  934. package/dist/workflows/cancel-run.d.ts +0 -45
  935. package/dist/workflows/cancel-run.d.ts.map +0 -1
  936. package/dist/workflows/cancel-run.js +0 -99
  937. package/dist/workflows/cancel-run.js.map +0 -1
  938. package/dist/workflows/cancel.d.ts +0 -111
  939. package/dist/workflows/cancel.d.ts.map +0 -1
  940. package/dist/workflows/cancel.js +0 -120
  941. package/dist/workflows/cancel.js.map +0 -1
  942. package/dist/workflows/catalog.d.ts +0 -60
  943. package/dist/workflows/catalog.d.ts.map +0 -1
  944. package/dist/workflows/catalog.js +0 -119
  945. package/dist/workflows/catalog.js.map +0 -1
  946. package/dist/workflows/cold-attach.d.ts +0 -30
  947. package/dist/workflows/cold-attach.d.ts.map +0 -1
  948. package/dist/workflows/cold-attach.js +0 -40
  949. package/dist/workflows/cold-attach.js.map +0 -1
  950. package/dist/workflows/cold-scan.d.ts +0 -21
  951. package/dist/workflows/cold-scan.d.ts.map +0 -1
  952. package/dist/workflows/cold-scan.js +0 -70
  953. package/dist/workflows/cold-scan.js.map +0 -1
  954. package/dist/workflows/daemon-spawn.d.ts +0 -119
  955. package/dist/workflows/daemon-spawn.d.ts.map +0 -1
  956. package/dist/workflows/daemon-spawn.js +0 -564
  957. package/dist/workflows/daemon-spawn.js.map +0 -1
  958. package/dist/workflows/effect-input.d.ts +0 -4
  959. package/dist/workflows/effect-input.d.ts.map +0 -1
  960. package/dist/workflows/effect-input.js +0 -19
  961. package/dist/workflows/effect-input.js.map +0 -1
  962. package/dist/workflows/events/append.d.ts +0 -77
  963. package/dist/workflows/events/append.d.ts.map +0 -1
  964. package/dist/workflows/events/append.js +0 -214
  965. package/dist/workflows/events/append.js.map +0 -1
  966. package/dist/workflows/events/idempotency.d.ts +0 -77
  967. package/dist/workflows/events/idempotency.d.ts.map +0 -1
  968. package/dist/workflows/events/idempotency.js +0 -116
  969. package/dist/workflows/events/idempotency.js.map +0 -1
  970. package/dist/workflows/events/index.d.ts +0 -7
  971. package/dist/workflows/events/index.d.ts.map +0 -1
  972. package/dist/workflows/events/index.js +0 -7
  973. package/dist/workflows/events/index.js.map +0 -1
  974. package/dist/workflows/fanout.d.ts +0 -36
  975. package/dist/workflows/fanout.d.ts.map +0 -1
  976. package/dist/workflows/fanout.js +0 -115
  977. package/dist/workflows/fanout.js.map +0 -1
  978. package/dist/workflows/hostExecutors/protocol.d.ts +0 -42
  979. package/dist/workflows/hostExecutors/protocol.d.ts.map +0 -1
  980. package/dist/workflows/hostExecutors/protocol.js +0 -181
  981. package/dist/workflows/hostExecutors/protocol.js.map +0 -1
  982. package/dist/workflows/loader.d.ts +0 -30
  983. package/dist/workflows/loader.d.ts.map +0 -1
  984. package/dist/workflows/loader.js +0 -84
  985. package/dist/workflows/loader.js.map +0 -1
  986. package/dist/workflows/loop.d.ts +0 -50
  987. package/dist/workflows/loop.d.ts.map +0 -1
  988. package/dist/workflows/loop.js +0 -408
  989. package/dist/workflows/loop.js.map +0 -1
  990. package/dist/workflows/orchestrator.d.ts +0 -171
  991. package/dist/workflows/orchestrator.d.ts.map +0 -1
  992. package/dist/workflows/orchestrator.js +0 -609
  993. package/dist/workflows/orchestrator.js.map +0 -1
  994. package/dist/workflows/output-binding.d.ts +0 -77
  995. package/dist/workflows/output-binding.d.ts.map +0 -1
  996. package/dist/workflows/output-binding.js +0 -329
  997. package/dist/workflows/output-binding.js.map +0 -1
  998. package/dist/workflows/params.d.ts.map +0 -1
  999. package/dist/workflows/params.js.map +0 -1
  1000. package/dist/workflows/resume.d.ts +0 -263
  1001. package/dist/workflows/resume.d.ts.map +0 -1
  1002. package/dist/workflows/resume.js +0 -808
  1003. package/dist/workflows/resume.js.map +0 -1
  1004. package/dist/workflows/run-id.d.ts +0 -2
  1005. package/dist/workflows/run-id.d.ts.map +0 -1
  1006. package/dist/workflows/run-id.js +0 -7
  1007. package/dist/workflows/run-id.js.map +0 -1
  1008. package/dist/workflows/run-init.d.ts +0 -48
  1009. package/dist/workflows/run-init.d.ts.map +0 -1
  1010. package/dist/workflows/run-init.js +0 -100
  1011. package/dist/workflows/run-init.js.map +0 -1
  1012. package/dist/workflows/runs-dir.d.ts +0 -4
  1013. package/dist/workflows/runs-dir.d.ts.map +0 -1
  1014. package/dist/workflows/runs-dir.js +0 -15
  1015. package/dist/workflows/runs-dir.js.map +0 -1
  1016. package/dist/workflows/runtime.d.ts +0 -215
  1017. package/dist/workflows/runtime.d.ts.map +0 -1
  1018. package/dist/workflows/runtime.js +0 -630
  1019. package/dist/workflows/runtime.js.map +0 -1
  1020. package/dist/workflows/spawn-bot.d.ts +0 -165
  1021. package/dist/workflows/spawn-bot.d.ts.map +0 -1
  1022. package/dist/workflows/spawn-bot.js +0 -215
  1023. package/dist/workflows/spawn-bot.js.map +0 -1
  1024. package/dist/workflows/spawn-policy.d.ts.map +0 -1
  1025. package/dist/workflows/spawn-policy.js.map +0 -1
  1026. package/dist/workflows/system.d.ts +0 -49
  1027. package/dist/workflows/system.d.ts.map +0 -1
  1028. package/dist/workflows/system.js +0 -48
  1029. package/dist/workflows/system.js.map +0 -1
  1030. package/dist/workflows/trigger-from-envelope.d.ts +0 -13
  1031. package/dist/workflows/trigger-from-envelope.d.ts.map +0 -1
  1032. package/dist/workflows/trigger-from-envelope.js +0 -68
  1033. package/dist/workflows/trigger-from-envelope.js.map +0 -1
  1034. package/dist/workflows/trigger-run.d.ts +0 -70
  1035. package/dist/workflows/trigger-run.d.ts.map +0 -1
  1036. package/dist/workflows/trigger-run.js +0 -88
  1037. package/dist/workflows/trigger-run.js.map +0 -1
  1038. package/dist/workflows/wait.d.ts +0 -141
  1039. package/dist/workflows/wait.d.ts.map +0 -1
  1040. package/dist/workflows/wait.js +0 -203
  1041. package/dist/workflows/wait.js.map +0 -1
@@ -0,0 +1,704 @@
1
+ import { createHash } from 'node:crypto';
2
+ import { isIP } from 'node:net';
3
+ import { posix, win32 } from 'node:path';
4
+ import { canonicalJsonStringify } from '../../utils/canonical-json.js';
5
+ import { computeSavedWorkflowGateDigest, computeSavedWorkflowSideEffects, validateSavedWorkflowRevisionDraft, } from './library-schema.js';
6
+ import { buildSavedWorkflowRevisionBaseline, collectSavedWorkflowReusableTextWarnings, } from './library-materialize.js';
7
+ import { assertSavedWorkflowSpecTemplateBindings, assertSavedWorkflowTemplateBindings, } from './template-bindings.js';
8
+ import { V3_DISTILLATION_COMPILED_SCHEMA_VERSION, V3_DISTILLATION_COMPILER_VERSION, V3DistillationCompileError, fieldCategoryForV3DistillationPath, isAllowedV3DistillationDagPath, parseV3DistillationCompiledBody, parseV3DistillationSuggestion, } from './distillation-schema.js';
9
+ function sha256(value) {
10
+ return `sha256:${createHash('sha256').update(value).digest('hex')}`;
11
+ }
12
+ function compareText(left, right) {
13
+ return left < right ? -1 : left > right ? 1 : 0;
14
+ }
15
+ const KNOWN_SECRET_TOKEN_SOURCE = String.raw `(?:sk[-_][A-Za-z0-9_-]{12,}|gh[pousr]_[A-Za-z0-9_-]{12,}|github_pat_[A-Za-z0-9_-]{12,}|glpat-[A-Za-z0-9_-]{12,}|npm_[A-Za-z0-9_-]{20,}|hf_[A-Za-z0-9_-]{20,}|AIza[A-Za-z0-9_-]{30,}|xox[baprs]-[A-Za-z0-9_-]{12,}|xapp-[A-Za-z0-9-]{12,})`;
16
+ const SENSITIVE_LABEL_SOURCE = String.raw `(?:api[_-]?key|access[_-]?(?:token|key(?:[_-]?id)?)|(?:client|session|refresh|id)?[_-]?token|client[_-]?secret|password|passwd|passphrase|credential(?:s)?|authorization|auth|bearer|private[_-]?key|cookie|secret)`;
17
+ function isKnownSecretToken(value) {
18
+ return new RegExp(`^${KNOWN_SECRET_TOKEN_SOURCE}$`).test(value);
19
+ }
20
+ function containsKnownSecretToken(value) {
21
+ return new RegExp(`(?:^|[^A-Za-z0-9_-])${KNOWN_SECRET_TOKEN_SOURCE}(?=$|[^A-Za-z0-9_-])`).test(value);
22
+ }
23
+ function cloneJson(value) {
24
+ return JSON.parse(JSON.stringify(value));
25
+ }
26
+ function pointer(parts) {
27
+ return `/${parts.map((part) => String(part).replace(/~/g, '~0').replace(/\//g, '~1')).join('/')}`;
28
+ }
29
+ function decodePointer(path) {
30
+ return path.slice(1).split('/').map((part) => part.replace(/~1/g, '/').replace(/~0/g, '~'));
31
+ }
32
+ function readPointer(root, path) {
33
+ let current = root;
34
+ for (const part of decodePointer(path)) {
35
+ if (Array.isArray(current)) {
36
+ if (!/^\d+$/.test(part))
37
+ return undefined;
38
+ current = current[Number(part)];
39
+ }
40
+ else if (current && typeof current === 'object') {
41
+ current = current[part];
42
+ }
43
+ else {
44
+ return undefined;
45
+ }
46
+ }
47
+ return current;
48
+ }
49
+ function writePointer(root, path, value) {
50
+ const parts = decodePointer(path);
51
+ let current = root;
52
+ for (let index = 0; index < parts.length - 1; index++) {
53
+ const part = parts[index];
54
+ current = Array.isArray(current)
55
+ ? current[Number(part)]
56
+ : current[part];
57
+ }
58
+ const leaf = parts.at(-1);
59
+ if (Array.isArray(current))
60
+ current[Number(leaf)] = value;
61
+ else
62
+ current[leaf] = value;
63
+ }
64
+ function enumerateDagTargets(revision) {
65
+ const targets = new Map();
66
+ let nodeOrdinal = 0;
67
+ const visit = (nodes, prefix) => {
68
+ nodes.forEach((rawNode, index) => {
69
+ if (!rawNode || typeof rawNode !== 'object')
70
+ return;
71
+ const node = rawNode;
72
+ nodeOrdinal++;
73
+ const base = [...prefix, 'nodes', index];
74
+ if (node.type === 'goal' && typeof node.goal === 'string') {
75
+ const path = pointer([...base, 'goal']);
76
+ targets.set(path, { path, text: node.goal, category: 'goal', nodeOrdinal });
77
+ }
78
+ if (node.type === 'goal' && node.override && typeof node.override === 'object') {
79
+ const instruction = node.override.systemPromptAppend;
80
+ if (typeof instruction === 'string') {
81
+ const path = pointer([...base, 'override', 'systemPromptAppend']);
82
+ targets.set(path, { path, text: instruction, category: 'instruction', nodeOrdinal });
83
+ }
84
+ }
85
+ if (node.type === 'loop' && node.body && typeof node.body === 'object') {
86
+ const bodyNodes = node.body.nodes;
87
+ if (Array.isArray(bodyNodes))
88
+ visit(bodyNodes, [...base, 'body']);
89
+ }
90
+ });
91
+ };
92
+ visit(revision.dagTemplate.nodes, ['dagTemplate']);
93
+ return targets;
94
+ }
95
+ /** Canonical exact-save baseline from one verified in-memory source read. */
96
+ export function buildV3DistillationBaseline(loaded) {
97
+ if (loaded.envelope.source.kind !== 'ad_hoc' || !loaded.spec || loaded.botSnapshots === undefined) {
98
+ throw new V3DistillationCompileError('SOURCE_NOT_ELIGIBLE');
99
+ }
100
+ try {
101
+ return buildSavedWorkflowRevisionBaseline(loaded).revision;
102
+ }
103
+ catch {
104
+ throw new V3DistillationCompileError('TEMPLATE_VALIDATION_FAILED');
105
+ }
106
+ }
107
+ /** Minimal model-visible execution text; no ids, topology, gates, or host input. */
108
+ export function enumerateV3DistillationModelFields(baselineRevision) {
109
+ let baseline;
110
+ try {
111
+ baseline = validateSavedWorkflowRevisionDraft(baselineRevision);
112
+ }
113
+ catch {
114
+ throw new V3DistillationCompileError('TEMPLATE_VALIDATION_FAILED');
115
+ }
116
+ return [...enumerateDagTargets(baseline).values()].map((target, index) => ({
117
+ ref: `field-${String(index + 1).padStart(3, '0')}`,
118
+ path: target.path,
119
+ category: target.category,
120
+ nodeOrdinal: target.nodeOrdinal,
121
+ text: target.text,
122
+ }));
123
+ }
124
+ export function computeV3DistillationBaselineSha256(baselineRevision) {
125
+ let baseline;
126
+ try {
127
+ baseline = validateSavedWorkflowRevisionDraft(baselineRevision);
128
+ }
129
+ catch {
130
+ throw new V3DistillationCompileError('TEMPLATE_VALIDATION_FAILED');
131
+ }
132
+ return sha256(canonicalJsonStringify(baseline));
133
+ }
134
+ function enumerateSpecTargets(revision) {
135
+ const spec = revision.specTemplate;
136
+ const targets = new Map();
137
+ const add = (parts, value) => {
138
+ if (typeof value !== 'string')
139
+ return;
140
+ const path = pointer(['specTemplate', ...parts]);
141
+ targets.set(path, { path, text: value, category: 'spec' });
142
+ };
143
+ add(['title'], spec.title);
144
+ add(['requirement'], spec.requirement);
145
+ add(['acceptance'], spec.acceptance);
146
+ spec.nonGoals?.forEach((value, index) => add(['nonGoals', index], value));
147
+ spec.nodes.forEach((node, nodeIndex) => {
148
+ add(['nodes', nodeIndex, 'goal'], node.goal);
149
+ add(['nodes', nodeIndex, 'acceptance'], node.acceptance);
150
+ node.input_needs.forEach((value, index) => add(['nodes', nodeIndex, 'input_needs', index], value));
151
+ node.expected_outputs.forEach((value, index) => add(['nodes', nodeIndex, 'expected_outputs', index], value));
152
+ node.unknowns.forEach((value, index) => add(['nodes', nodeIndex, 'unknowns', index], value));
153
+ });
154
+ return targets;
155
+ }
156
+ function occurrences(text, literal) {
157
+ const found = [];
158
+ for (let start = 0; start <= text.length - literal.length;) {
159
+ const index = text.indexOf(literal, start);
160
+ if (index < 0)
161
+ break;
162
+ found.push(index);
163
+ start = index + literal.length;
164
+ }
165
+ return found;
166
+ }
167
+ function looksLikeSecretOrIdentity(literal, containingText) {
168
+ if (/-----BEGIN [A-Z ]*PRIVATE KEY-----/.test(literal))
169
+ return true;
170
+ if (isKnownSecretToken(literal))
171
+ return true;
172
+ if (/^(?:AKIA|ASIA|AIDA|AROA|AIPA|ANPA|ANVA|ASCA)[A-Z0-9]{16}$/.test(literal))
173
+ return true;
174
+ if (/^eyJ[A-Za-z0-9_-]{10,}\.[A-Za-z0-9_-]{10,}\.[A-Za-z0-9_-]{10,}$/.test(literal))
175
+ return true;
176
+ if (/^(?:ou|on|oc|om|cli)_[A-Za-z0-9_-]{8,}$/.test(literal))
177
+ return true;
178
+ if (/^[^\s@]+@[^\s@]+\.[^\s@]+$/.test(literal))
179
+ return true;
180
+ const escaped = literal.replace(/[.*+?^${}()|[\]\\]/g, '\\$&');
181
+ return new RegExp(`${SENSITIVE_LABEL_SOURCE}\\s*[:=]\\s*["']?${escaped}(?:["']|\\s|$)`, 'i').test(containingText);
182
+ }
183
+ function isAbsoluteMachinePath(literal) {
184
+ return posix.isAbsolute(literal) || win32.isAbsolute(literal) ||
185
+ /^~(?:[A-Za-z0-9._-]+)?[\\/]/.test(literal);
186
+ }
187
+ const SOURCE_FILE_SUFFIXES = new Set([
188
+ '7z', 'avi', 'avro', 'bz2', 'c', 'cfg', 'cjs', 'conf', 'cpp', 'css', 'csv',
189
+ 'db', 'doc', 'docx', 'ex', 'exs', 'flac', 'gif', 'go', 'gql', 'graphql',
190
+ 'gz', 'h', 'hpp', 'html', 'ini', 'java', 'jpeg', 'jpg', 'js', 'json', 'jsx',
191
+ 'kt', 'lock', 'md', 'mjs', 'mov', 'mp3', 'mp4', 'parquet', 'pdf', 'php',
192
+ 'png', 'ppt', 'pptx', 'proto', 'py', 'r', 'rb', 'rs', 'scala', 'sh', 'sql',
193
+ 'sqlite', 'svelte', 'svg', 'swift', 'tar', 'tgz', 'toml', 'ts', 'tsx', 'txt',
194
+ 'vue', 'wasm', 'wav', 'webm', 'webp', 'xls', 'xlsx', 'xml', 'yaml', 'yml',
195
+ ]);
196
+ const COMMON_SOURCE_BASENAMES = new Set([
197
+ 'package.json', 'package-lock.json', 'pnpm-lock.yaml', 'yarn.lock',
198
+ 'tsconfig.json', 'jsconfig.json', 'composer.json', 'cargo.toml', 'cargo.lock',
199
+ 'go.mod', 'go.sum', 'requirements.txt', 'pyproject.toml', 'dockerfile',
200
+ 'readme.md', 'license.md', 'changelog.md',
201
+ ]);
202
+ function isClearlyFileReferenceAt(literal, containingText, occurrenceStart) {
203
+ const normalized = literal.replace(/\.$/, '');
204
+ if (COMMON_SOURCE_BASENAMES.has(normalized.toLowerCase()))
205
+ return true;
206
+ const labels = normalized.split('.');
207
+ if (labels.length < 2 || !SOURCE_FILE_SUFFIXES.has(labels.at(-1).toLowerCase()))
208
+ return false;
209
+ if (!Number.isSafeInteger(occurrenceStart) || occurrenceStart < 0 ||
210
+ containingText.slice(occurrenceStart, occurrenceStart + literal.length) !== literal) {
211
+ return false;
212
+ }
213
+ // Classification is deliberately occurrence-local. A file-shaped use of a
214
+ // token earlier in the field must not exempt a later hostname use of the
215
+ // same bytes (for example, "read api.sh, then connect to api.sh").
216
+ const before = containingText.slice(Math.max(0, occurrenceStart - 192), occurrenceStart);
217
+ if (/(?:\b(?:file|filename|module|script|document|config(?:uration)?|manifest)\s+(?:named\s+)?[`"']?|\b(?:edit|update|refactor|fix|test|lint|format|compile|build|delete|create|read|write)\s+(?:the\s+)?(?:file\s+)?[`"']?)$/i.test(before)) {
218
+ return true;
219
+ }
220
+ return /(?:^|[\s("'`])(?:\.\.?[\\/])?(?:[A-Za-z0-9_.-]+[\\/])+$/.test(before);
221
+ }
222
+ function looksLikeNetworkLocator(literal, containingText = literal, occurrenceStart = containingText === literal ? 0 : -1) {
223
+ if (literal !== literal.trim() || literal.length === 0)
224
+ return false;
225
+ if (/^\d{1,2}:\d{2}(?::\d{2})?$/.test(literal))
226
+ return false;
227
+ if (/^\d{4}-\d{2}-\d{2}T\d{2}:\d{2}(?::\d{2}(?:\.\d+)?)?(?:Z|[+-]\d{2}:?\d{2})?$/.test(literal)) {
228
+ return false;
229
+ }
230
+ if (/^(?:node|python|ubuntu|debian|alpine|golang|ruby|php|openjdk):v?\d+(?:\.\d+){0,3}(?:-[a-z0-9.-]+)?$/i.test(literal)) {
231
+ return false;
232
+ }
233
+ if (isIP(literal) !== 0)
234
+ return true;
235
+ const normalized = literal.replace(/[.:]+$/, '');
236
+ if (/^[^@\s]+@(?:\[[0-9A-Fa-f:]+\]|[A-Za-z0-9][A-Za-z0-9.-]{0,252}):[^\s]+$/.test(normalized)) {
237
+ return true;
238
+ }
239
+ const bracketedIpv6 = /^\[([0-9A-Fa-f:]+)\](?::\d{1,5})?$/.exec(normalized);
240
+ if (bracketedIpv6 && isIP(bracketedIpv6[1]) === 6)
241
+ return true;
242
+ const hasExplicitPort = /:\d{1,5}$/.test(normalized);
243
+ const host = normalized.replace(/:\d{1,5}$/, '');
244
+ if (isIP(host) !== 0)
245
+ return true;
246
+ if (/^[a-z][a-z0-9+.-]*:\/\/[^\s]+$/i.test(normalized))
247
+ return true;
248
+ if (hasExplicitPort && /^(?=.{1,253}$)(?=.*[A-Za-z-])[A-Za-z0-9](?:[A-Za-z0-9-]{0,251}[A-Za-z0-9])?$/.test(host)) {
249
+ return true;
250
+ }
251
+ if (/^(?:localhost|[^.]+\.(?:localhost|local|internal|corp|lan))$/i.test(host))
252
+ return true;
253
+ if (/^(?:prod(?:uction)?|stag(?:e|ing)|dev|qa|uat|build|db|api|host|server|svc)(?=[a-z0-9-]{1,63}$)(?:[a-z0-9-]*\d[a-z0-9-]*|[a-z0-9]*-[a-z0-9-]+)$/i.test(host)) {
254
+ return true;
255
+ }
256
+ if (/^(?:jenkins|jira|redis|mysql|postgres|kafka|elastic|grafana|corp)[a-z0-9-]*(?:\d|-(?:prod|primary|replica|db|cache|api|host|server|svc|internal))$/i.test(host)) {
257
+ return true;
258
+ }
259
+ if (/^[a-z0-9-]+-(?:prod|primary|replica|db|cache|api|host|server|svc|internal)$/i.test(host)) {
260
+ return true;
261
+ }
262
+ const namedService = /^(.+):[A-Za-z][A-Za-z0-9_-]{0,31}$/.exec(host);
263
+ if (namedService) {
264
+ const namedHost = namedService[1];
265
+ if (isIP(namedHost) !== 0 ||
266
+ /^(?=.{1,253}$)(?:[A-Za-z0-9](?:[A-Za-z0-9-]{0,61}[A-Za-z0-9])?\.)+[A-Za-z]{2,63}$/i.test(namedHost)) {
267
+ return true;
268
+ }
269
+ }
270
+ if (!/^(?=.{1,253}$)(?:[A-Za-z0-9](?:[A-Za-z0-9-]{0,61}[A-Za-z0-9])?\.)+[A-Za-z]{2,63}$/i.test(host)) {
271
+ return false;
272
+ }
273
+ return !isClearlyFileReferenceAt(host, containingText, occurrenceStart);
274
+ }
275
+ /** Strict host-side privacy predicate shared by source and display-name gates. */
276
+ export function containsUnsafeV3DistillationReusableText(text) {
277
+ // Authenticated context markers are a binding instruction, not a hostname.
278
+ const scanned = text.replace(/\$\{context\.[A-Za-z0-9_.-]+\}/g, '');
279
+ if (/-----BEGIN [A-Z ]*PRIVATE KEY-----/.test(scanned))
280
+ return true;
281
+ if (containsKnownSecretToken(scanned))
282
+ return true;
283
+ if (/(?:^|[^A-Z0-9])(?:AKIA|ASIA|AIDA|AROA|AIPA|ANPA|ANVA|ASCA)[A-Z0-9]{16}(?=$|[^A-Z0-9])/.test(scanned)) {
284
+ return true;
285
+ }
286
+ if (/(?:^|[^A-Za-z0-9_-])eyJ[A-Za-z0-9_-]{10,}\.[A-Za-z0-9_-]{10,}\.[A-Za-z0-9_-]{10,}(?=$|[^A-Za-z0-9_-])/.test(scanned)) {
287
+ return true;
288
+ }
289
+ if (/(?:^|[^A-Za-z0-9_-])(?:ou|on|oc|om|cli)_[A-Za-z0-9_-]{8,}(?=$|[^A-Za-z0-9_-])/.test(scanned)) {
290
+ return true;
291
+ }
292
+ if (/authorization\s*:\s*(?:bearer|basic)\s+[A-Za-z0-9+/_.=-]{6,}/i.test(scanned))
293
+ return true;
294
+ if (/(?:^|\s)[^\s@]+@[^\s@]+\.[^\s@]+(?=$|\s)/.test(scanned))
295
+ return true;
296
+ if (new RegExp(`${SENSITIVE_LABEL_SOURCE}\\s*[:=]\\s*(?:["'][^"'\\r\\n]{1,4096}["']|[^\\s"']{1,4096})`, 'i').test(scanned)) {
297
+ return true;
298
+ }
299
+ if (/(?:^|[^A-Za-z0-9_.~+\\/-])\/(?:[^\s"'`<>]+)/.test(scanned) ||
300
+ /(?:^|[^A-Za-z0-9_.~+\\/-])[A-Za-z]:[\\/][^\s"'`<>]+/.test(scanned) ||
301
+ /(?:^|[^A-Za-z0-9_.~+\\/-])\\\\[^\\\s"'`<>]+\\[^\s"'`<>]+/.test(scanned) ||
302
+ /(?:^|[^A-Za-z0-9_.~+\\/-])~(?:[A-Za-z0-9._-]+)?[\\/][^\s"'`<>]+/.test(scanned)) {
303
+ return true;
304
+ }
305
+ if (/\b[a-z][a-z0-9+.-]*:\/\/[^\s"'`<>]+/i.test(scanned))
306
+ return true;
307
+ if (/[^@\s]+@(?:\[[0-9A-Fa-f:]+\]|[A-Za-z0-9][A-Za-z0-9.-]{0,252}):[^\s"'`<>]+/.test(scanned)) {
308
+ return true;
309
+ }
310
+ const locatorTokenRe = /\[[0-9A-Fa-f:]+\](?::\d{1,5})?|(?<![A-Za-z0-9])[0-9A-Fa-f:]*:[0-9A-Fa-f:]+|[A-Za-z0-9][A-Za-z0-9.:-]{2,252}/g;
311
+ for (const match of scanned.matchAll(locatorTokenRe)) {
312
+ const token = match[0];
313
+ if (isIP(token) !== 0 || looksLikeNetworkLocator(token, scanned, match.index))
314
+ return true;
315
+ }
316
+ return false;
317
+ }
318
+ function enumerateAdditionalReusableText(revision) {
319
+ const out = [];
320
+ const visitValue = (value) => {
321
+ if (typeof value === 'string')
322
+ out.push(value);
323
+ else if (Array.isArray(value))
324
+ value.forEach(visitValue);
325
+ else if (value && typeof value === 'object') {
326
+ const record = value;
327
+ // Typed whole-value bindings were validated by the DAG schema. Their
328
+ // dotted `$ref` payload is not reusable free text and must not be
329
+ // mistaken for a network hostname.
330
+ if (Object.keys(record).length === 1 && typeof record.$ref === 'string')
331
+ return;
332
+ for (const [key, child] of Object.entries(record)) {
333
+ out.push(key);
334
+ visitValue(child);
335
+ }
336
+ }
337
+ };
338
+ const visitNodes = (nodes) => {
339
+ for (const raw of nodes) {
340
+ if (!raw || typeof raw !== 'object')
341
+ continue;
342
+ const node = raw;
343
+ const gate = node.humanGate;
344
+ if (gate && typeof gate === 'object') {
345
+ visitValue(gate);
346
+ }
347
+ if (node.type === 'host')
348
+ visitValue(node.input);
349
+ if (node.resultSchema && typeof node.resultSchema === 'object')
350
+ visitValue(node.resultSchema);
351
+ if (node.type === 'loop' && node.body && typeof node.body === 'object') {
352
+ const bodyNodes = node.body.nodes;
353
+ if (Array.isArray(bodyNodes))
354
+ visitNodes(bodyNodes);
355
+ }
356
+ }
357
+ };
358
+ visitNodes(revision.dagTemplate.nodes);
359
+ return out;
360
+ }
361
+ function assertNoUnsafeReusableSourceText(revision, dagTargets, specTargets) {
362
+ const values = [
363
+ ...[...dagTargets.values()].map((target) => target.text),
364
+ ...[...specTargets.values()].map((target) => target.text),
365
+ ...enumerateAdditionalReusableText(revision),
366
+ ];
367
+ if (values.some(containsUnsafeV3DistillationReusableText)) {
368
+ throw new V3DistillationCompileError('SECRET_OR_IDENTITY_LITERAL');
369
+ }
370
+ }
371
+ function assertNoBaselineMarkers(dagTargets, specTargets) {
372
+ for (const target of [...dagTargets.values(), ...specTargets.values()]) {
373
+ // Built-in context markers are an authenticated binding surface and are
374
+ // preserved verbatim. Only an already-parameterized execution template is
375
+ // outside P0's concrete-run abstraction contract.
376
+ if (target.text.includes('${params.')) {
377
+ throw new V3DistillationCompileError('BASELINE_ALREADY_PARAMETERIZED');
378
+ }
379
+ }
380
+ }
381
+ /** Privacy/eligibility preflight that must run before model-visible fields leave the host. */
382
+ export function assertV3DistillationBaselineSafe(baselineRevision) {
383
+ let baseline;
384
+ try {
385
+ baseline = validateSavedWorkflowRevisionDraft(baselineRevision);
386
+ }
387
+ catch {
388
+ throw new V3DistillationCompileError('TEMPLATE_VALIDATION_FAILED');
389
+ }
390
+ if (Object.keys(baseline.inputs).length > 0 || baseline.specStatus !== 'current') {
391
+ throw new V3DistillationCompileError('BASELINE_ALREADY_PARAMETERIZED');
392
+ }
393
+ const dagTargets = enumerateDagTargets(baseline);
394
+ const specTargets = enumerateSpecTargets(baseline);
395
+ assertNoUnsafeReusableSourceText(baseline, dagTargets, specTargets);
396
+ assertNoBaselineMarkers(dagTargets, specTargets);
397
+ }
398
+ function assertNoStructuralResidue(revision, literal, allowedPaths) {
399
+ const walk = (value, parts) => {
400
+ if (typeof value === 'string') {
401
+ if (value.includes(literal) && !allowedPaths.has(pointer(parts))) {
402
+ throw new V3DistillationCompileError('SOURCE_VALUE_RESIDUE');
403
+ }
404
+ return;
405
+ }
406
+ if (Array.isArray(value)) {
407
+ value.forEach((child, index) => walk(child, [...parts, index]));
408
+ return;
409
+ }
410
+ if (value && typeof value === 'object') {
411
+ for (const [key, child] of Object.entries(value)) {
412
+ if (key.includes(literal)) {
413
+ throw new V3DistillationCompileError('SOURCE_VALUE_RESIDUE');
414
+ }
415
+ walk(child, [...parts, key]);
416
+ }
417
+ }
418
+ };
419
+ walk(revision, []);
420
+ }
421
+ function assertNoOverlaps(replacements) {
422
+ const byPath = new Map();
423
+ for (const replacement of replacements) {
424
+ const list = byPath.get(replacement.path) ?? [];
425
+ list.push(replacement);
426
+ byPath.set(replacement.path, list);
427
+ }
428
+ for (const list of byPath.values()) {
429
+ list.sort((left, right) => left.startChar - right.startChar || left.endChar - right.endChar);
430
+ for (let index = 1; index < list.length; index++) {
431
+ if (list[index].startChar < list[index - 1].endChar) {
432
+ throw new V3DistillationCompileError('OVERLAPPING_REPLACEMENTS');
433
+ }
434
+ }
435
+ }
436
+ }
437
+ function applyReplacements(revision, replacements) {
438
+ const byPath = new Map();
439
+ for (const replacement of replacements) {
440
+ const list = byPath.get(replacement.path) ?? [];
441
+ list.push(replacement);
442
+ byPath.set(replacement.path, list);
443
+ }
444
+ for (const [path, list] of byPath) {
445
+ const source = readPointer(revision, path);
446
+ if (typeof source !== 'string')
447
+ throw new V3DistillationCompileError('REVERSE_FILL_MISMATCH');
448
+ let next = source;
449
+ for (const replacement of [...list].sort((left, right) => right.startChar - left.startChar)) {
450
+ if (source.slice(replacement.startChar, replacement.endChar) !== replacement.literal) {
451
+ throw new V3DistillationCompileError('REVERSE_FILL_MISMATCH');
452
+ }
453
+ next = next.slice(0, replacement.startChar) + replacement.replacement + next.slice(replacement.endChar);
454
+ }
455
+ writePointer(revision, path, next);
456
+ }
457
+ }
458
+ function reverseFill(revision, sources) {
459
+ const out = cloneJson(revision);
460
+ for (const target of [
461
+ ...enumerateDagTargets(out).values(),
462
+ ...enumerateSpecTargets(out).values(),
463
+ ]) {
464
+ let next = target.text;
465
+ for (const [name, source] of sources) {
466
+ next = next.split(`\${params.${name}}`).join(source.literal);
467
+ }
468
+ writePointer(out, target.path, next);
469
+ }
470
+ return out;
471
+ }
472
+ function durableReplacement(replacement) {
473
+ const { startChar: _startChar, endChar: _endChar, literal: _literal, ...durable } = replacement;
474
+ return durable;
475
+ }
476
+ export function compileV3DistillationProposal(input) {
477
+ let baseline;
478
+ try {
479
+ baseline = validateSavedWorkflowRevisionDraft(input.baselineRevision);
480
+ }
481
+ catch {
482
+ throw new V3DistillationCompileError('TEMPLATE_VALIDATION_FAILED');
483
+ }
484
+ if (Object.keys(baseline.inputs).length > 0 || baseline.specStatus !== 'current') {
485
+ throw new V3DistillationCompileError('BASELINE_ALREADY_PARAMETERIZED');
486
+ }
487
+ assertV3DistillationBaselineSafe(baseline);
488
+ const suggestion = parseV3DistillationSuggestion(input.suggestion);
489
+ if (suggestion.candidates.length === 0) {
490
+ throw new V3DistillationCompileError('ZERO_CANDIDATES');
491
+ }
492
+ const dagTargets = enumerateDagTargets(baseline);
493
+ const specTargets = enumerateSpecTargets(baseline);
494
+ const allowedPaths = new Set([...dagTargets.keys(), ...specTargets.keys()]);
495
+ const replacements = [];
496
+ const sources = new Map();
497
+ const candidateKeys = new Set();
498
+ // The model never controls persisted or rendered metadata. Assign generic
499
+ // parameter names from a host-canonical candidate order; identical literals
500
+ // intentionally share one parameter so repeated concrete values remain tied.
501
+ const canonicalCandidates = [...suggestion.candidates].sort((left, right) => compareText(left.path, right.path) || left.occurrence - right.occurrence ||
502
+ compareText(left.literal, right.literal));
503
+ const parameterNameByLiteral = new Map();
504
+ for (const candidate of canonicalCandidates) {
505
+ if (!parameterNameByLiteral.has(candidate.literal)) {
506
+ parameterNameByLiteral.set(candidate.literal, `param_${parameterNameByLiteral.size + 1}`);
507
+ }
508
+ }
509
+ for (const candidate of canonicalCandidates) {
510
+ const paramName = parameterNameByLiteral.get(candidate.literal);
511
+ if (!isAllowedV3DistillationDagPath(candidate.path)) {
512
+ throw new V3DistillationCompileError('UNSUPPORTED_PATH');
513
+ }
514
+ const target = dagTargets.get(candidate.path);
515
+ if (!target || !fieldCategoryForV3DistillationPath(candidate.path)) {
516
+ throw new V3DistillationCompileError('UNSUPPORTED_PATH');
517
+ }
518
+ const candidateKey = canonicalJsonStringify([
519
+ candidate.path, candidate.literal, candidate.occurrence,
520
+ ]);
521
+ if (candidateKeys.has(candidateKey)) {
522
+ throw new V3DistillationCompileError('DUPLICATE_CANDIDATE');
523
+ }
524
+ candidateKeys.add(candidateKey);
525
+ const starts = occurrences(target.text, candidate.literal);
526
+ const startChar = starts[candidate.occurrence];
527
+ if (startChar === undefined) {
528
+ throw new V3DistillationCompileError('SOURCE_LITERAL_NOT_FOUND');
529
+ }
530
+ if (candidate.literal.includes('${') ||
531
+ looksLikeSecretOrIdentity(candidate.literal, target.text) ||
532
+ isAbsoluteMachinePath(candidate.literal) ||
533
+ looksLikeNetworkLocator(candidate.literal, target.text, startChar)) {
534
+ throw new V3DistillationCompileError('SECRET_OR_IDENTITY_LITERAL');
535
+ }
536
+ const literalSha256 = sha256(candidate.literal);
537
+ const existing = sources.get(paramName);
538
+ const field = {
539
+ nodeOrdinal: target.nodeOrdinal,
540
+ field: target.category,
541
+ };
542
+ const source = existing ?? { literal: candidate.literal, literalSha256, fields: [] };
543
+ if (!source.fields.some((item) => item.nodeOrdinal === field.nodeOrdinal && item.field === field.field)) {
544
+ source.fields.push(field);
545
+ }
546
+ sources.set(paramName, source);
547
+ const endChar = startChar + candidate.literal.length;
548
+ replacements.push({
549
+ path: candidate.path,
550
+ startChar,
551
+ endChar,
552
+ startUtf8: Buffer.byteLength(target.text.slice(0, startChar), 'utf8'),
553
+ endUtf8: Buffer.byteLength(target.text.slice(0, endChar), 'utf8'),
554
+ literalSha256,
555
+ replacement: `\${params.${paramName}}`,
556
+ paramName,
557
+ fieldCategory: target.category,
558
+ literal: candidate.literal,
559
+ });
560
+ }
561
+ for (const source of sources.values()) {
562
+ assertNoStructuralResidue(baseline, source.literal, allowedPaths);
563
+ }
564
+ // Spec is a deterministic mirror: replace every exact narrative occurrence.
565
+ for (const [paramName, source] of sources) {
566
+ for (const target of specTargets.values()) {
567
+ for (const startChar of occurrences(target.text, source.literal)) {
568
+ const endChar = startChar + source.literal.length;
569
+ replacements.push({
570
+ path: target.path,
571
+ startChar,
572
+ endChar,
573
+ startUtf8: Buffer.byteLength(target.text.slice(0, startChar), 'utf8'),
574
+ endUtf8: Buffer.byteLength(target.text.slice(0, endChar), 'utf8'),
575
+ literalSha256: source.literalSha256,
576
+ replacement: `\${params.${paramName}}`,
577
+ paramName,
578
+ fieldCategory: 'spec',
579
+ literal: source.literal,
580
+ });
581
+ }
582
+ }
583
+ }
584
+ assertNoOverlaps(replacements);
585
+ const revisionDraft = cloneJson(baseline);
586
+ applyReplacements(revisionDraft, replacements);
587
+ revisionDraft.inputs = Object.fromEntries([...sources.keys()].sort().map((name) => [name, { type: 'string', required: true }]));
588
+ revisionDraft.specStatus = 'current';
589
+ revisionDraft.safety = {
590
+ gateDigest: computeSavedWorkflowGateDigest(revisionDraft.dagTemplate),
591
+ sideEffects: computeSavedWorkflowSideEffects(revisionDraft.dagTemplate),
592
+ };
593
+ const lintWarnings = [];
594
+ collectSavedWorkflowReusableTextWarnings(revisionDraft.dagTemplate, 'dagTemplate', lintWarnings);
595
+ collectSavedWorkflowReusableTextWarnings(revisionDraft.specTemplate, 'specTemplate', lintWarnings);
596
+ if (lintWarnings.length > 0) {
597
+ throw new V3DistillationCompileError('TEMPLATE_VALIDATION_FAILED');
598
+ }
599
+ try {
600
+ assertSavedWorkflowTemplateBindings(revisionDraft.dagTemplate, revisionDraft.inputs, revisionDraft.contextRefs);
601
+ assertSavedWorkflowSpecTemplateBindings(revisionDraft.specTemplate, revisionDraft.inputs, revisionDraft.contextRefs);
602
+ validateSavedWorkflowRevisionDraft(revisionDraft);
603
+ }
604
+ catch {
605
+ throw new V3DistillationCompileError('TEMPLATE_VALIDATION_FAILED');
606
+ }
607
+ const reversed = reverseFill(revisionDraft, sources);
608
+ reversed.inputs = cloneJson(baseline.inputs);
609
+ if (canonicalJsonStringify(reversed) !== canonicalJsonStringify(baseline)) {
610
+ throw new V3DistillationCompileError('REVERSE_FILL_MISMATCH');
611
+ }
612
+ const durable = replacements
613
+ .map(durableReplacement)
614
+ .sort((left, right) => compareText(left.path, right.path) ||
615
+ left.startUtf8 - right.startUtf8 || left.endUtf8 - right.endUtf8 ||
616
+ compareText(left.paramName, right.paramName));
617
+ const body = {
618
+ schemaVersion: V3_DISTILLATION_COMPILED_SCHEMA_VERSION,
619
+ compilerVersion: V3_DISTILLATION_COMPILER_VERSION,
620
+ baselineRevisionSha256: computeV3DistillationBaselineSha256(baseline),
621
+ revisionDraft,
622
+ replacements: durable,
623
+ safeSummary: {
624
+ parameters: [...sources.entries()].sort(([left], [right]) => compareText(left, right))
625
+ .map(([name, source]) => ({
626
+ name,
627
+ type: 'string',
628
+ required: true,
629
+ hasDefault: false,
630
+ replacementCount: durable.filter((item) => item.paramName === name).length,
631
+ fields: [...source.fields].sort((left, right) => left.nodeOrdinal - right.nodeOrdinal || compareText(left.field, right.field)),
632
+ })),
633
+ roundTripVerified: true,
634
+ structuralFieldsUnchanged: true,
635
+ },
636
+ };
637
+ return parseV3DistillationCompiledBody(body);
638
+ }
639
+ function charIndexAtUtf8Offset(text, offset) {
640
+ if (!Number.isInteger(offset) || offset < 0)
641
+ return undefined;
642
+ let utf8 = 0;
643
+ for (let index = 0; index <= text.length;) {
644
+ if (utf8 === offset)
645
+ return index;
646
+ if (index === text.length || utf8 > offset)
647
+ return undefined;
648
+ const codePoint = text.codePointAt(index);
649
+ if (codePoint === undefined)
650
+ return undefined;
651
+ const width = codePoint > 0xffff ? 2 : 1;
652
+ utf8 += Buffer.byteLength(text.slice(index, index + width), 'utf8');
653
+ index += width;
654
+ }
655
+ return undefined;
656
+ }
657
+ /**
658
+ * Re-derive every model-selected candidate from the authenticated baseline,
659
+ * run the current deterministic compiler again, and require a byte-canonical
660
+ * match. Approval therefore never trusts stored spans, hashes, summaries, or
661
+ * revision bytes merely because they satisfy the storage schema.
662
+ */
663
+ export function recompileV3DistillationProposal(baselineRevision, compiledBody) {
664
+ let baseline;
665
+ try {
666
+ baseline = validateSavedWorkflowRevisionDraft(baselineRevision);
667
+ }
668
+ catch {
669
+ throw new V3DistillationCompileError('TEMPLATE_VALIDATION_FAILED');
670
+ }
671
+ const compiled = parseV3DistillationCompiledBody(compiledBody);
672
+ const dagTargets = enumerateDagTargets(baseline);
673
+ const candidates = compiled.replacements
674
+ .filter((replacement) => replacement.fieldCategory !== 'spec')
675
+ .map((replacement) => {
676
+ const target = dagTargets.get(replacement.path);
677
+ if (!target)
678
+ throw new V3DistillationCompileError('REVERSE_FILL_MISMATCH');
679
+ const startChar = charIndexAtUtf8Offset(target.text, replacement.startUtf8);
680
+ const endChar = charIndexAtUtf8Offset(target.text, replacement.endUtf8);
681
+ if (startChar === undefined || endChar === undefined || endChar <= startChar) {
682
+ throw new V3DistillationCompileError('REVERSE_FILL_MISMATCH');
683
+ }
684
+ const literal = target.text.slice(startChar, endChar);
685
+ if (sha256(literal) !== replacement.literalSha256) {
686
+ throw new V3DistillationCompileError('REVERSE_FILL_MISMATCH');
687
+ }
688
+ const occurrence = occurrences(target.text, literal).indexOf(startChar);
689
+ if (occurrence < 0)
690
+ throw new V3DistillationCompileError('REVERSE_FILL_MISMATCH');
691
+ return { path: replacement.path, literal, occurrence, type: 'string' };
692
+ });
693
+ if (candidates.length === 0)
694
+ throw new V3DistillationCompileError('REVERSE_FILL_MISMATCH');
695
+ const recompiled = compileV3DistillationProposal({
696
+ baselineRevision: baseline,
697
+ suggestion: { schemaVersion: 1, candidates },
698
+ });
699
+ if (canonicalJsonStringify(recompiled) !== canonicalJsonStringify(compiled)) {
700
+ throw new V3DistillationCompileError('REVERSE_FILL_MISMATCH');
701
+ }
702
+ return recompiled;
703
+ }
704
+ //# sourceMappingURL=distillation-compiler.js.map