@capybara-hq/kernel 0.1.0-rc.0 → 0.1.0-rc.10

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 (1152) hide show
  1. package/bootstrap.json +92 -8
  2. package/dist/admin/admin.controller.d.ts +52 -71
  3. package/dist/admin/admin.controller.js +117 -63
  4. package/dist/admin/admin.module.d.ts +3 -0
  5. package/dist/admin/admin.module.js +22 -0
  6. package/dist/admin/admin.schemas.d.ts +57 -0
  7. package/dist/admin/admin.schemas.js +50 -0
  8. package/dist/admin/extensions.controller.d.ts +47 -16
  9. package/dist/admin/extensions.controller.js +94 -23
  10. package/dist/admin/extensions.schemas.d.ts +7 -0
  11. package/dist/admin/extensions.schemas.js +10 -0
  12. package/dist/admin/limit-defaults.d.ts +20 -0
  13. package/dist/admin/limit-defaults.js +10 -0
  14. package/dist/admin/setup-lock.d.ts +16 -0
  15. package/dist/admin/setup-lock.js +47 -0
  16. package/dist/admin/setup.controller.d.ts +9 -9
  17. package/dist/admin/setup.controller.js +28 -26
  18. package/dist/admin/setup.service.d.ts +20 -28
  19. package/dist/admin/setup.service.js +65 -65
  20. package/dist/agents/agent-lookup.d.ts +72 -0
  21. package/dist/agents/agent-lookup.js +208 -0
  22. package/dist/agents/agent-profile.service.d.ts +31 -0
  23. package/dist/agents/agent-profile.service.js +122 -0
  24. package/dist/agents/agents.controller.d.ts +54 -169
  25. package/dist/agents/agents.controller.js +172 -37
  26. package/dist/agents/agents.module.d.ts +10 -0
  27. package/dist/agents/agents.module.js +71 -0
  28. package/dist/agents/agents.schemas.d.ts +389 -0
  29. package/dist/agents/agents.schemas.js +126 -0
  30. package/dist/agents/agents.service.d.ts +104 -76
  31. package/dist/agents/agents.service.js +509 -383
  32. package/dist/agents/definition.d.ts +133 -21
  33. package/dist/agents/definition.js +361 -41
  34. package/dist/agents/from-template.d.ts +106 -0
  35. package/dist/agents/from-template.js +680 -0
  36. package/dist/agents/from-template.service.d.ts +72 -0
  37. package/dist/agents/from-template.service.js +178 -0
  38. package/dist/agents/instruction-files.d.ts +60 -0
  39. package/dist/agents/instruction-files.js +111 -0
  40. package/dist/agents/models.controller.d.ts +44 -6
  41. package/dist/agents/models.controller.js +84 -8
  42. package/dist/agents/org-templates.d.ts +186 -0
  43. package/dist/agents/org-templates.js +868 -0
  44. package/dist/agents/pending-connector-requests.d.ts +79 -0
  45. package/dist/agents/pending-connector-requests.js +215 -0
  46. package/dist/agents/pending-connectors.controller.d.ts +39 -0
  47. package/dist/agents/pending-connectors.controller.js +91 -0
  48. package/dist/agents/pending-connectors.service.d.ts +62 -0
  49. package/dist/agents/pending-connectors.service.js +282 -0
  50. package/dist/agents/profile.d.ts +114 -0
  51. package/dist/agents/profile.js +55 -0
  52. package/dist/agents/readiness.controller.d.ts +26 -0
  53. package/dist/agents/readiness.controller.js +56 -0
  54. package/dist/agents/templates.controller.d.ts +78 -6
  55. package/dist/agents/templates.controller.js +154 -8
  56. package/dist/agents/templates.d.ts +132 -30
  57. package/dist/agents/templates.js +500 -46
  58. package/dist/agents/templates.schemas.d.ts +20 -0
  59. package/dist/agents/templates.schemas.js +45 -0
  60. package/dist/app.d.ts +93 -0
  61. package/dist/app.js +150 -0
  62. package/dist/background/background.controller.d.ts +38 -0
  63. package/dist/background/background.controller.js +88 -0
  64. package/dist/background/background.module.d.ts +10 -0
  65. package/dist/background/background.module.js +39 -0
  66. package/dist/background/background.schemas.d.ts +10 -0
  67. package/dist/background/background.schemas.js +16 -0
  68. package/dist/background/finish.d.ts +44 -0
  69. package/dist/background/finish.js +95 -0
  70. package/dist/background/launch-lock.d.ts +15 -0
  71. package/dist/background/launch-lock.js +40 -0
  72. package/dist/background/launch.d.ts +42 -0
  73. package/dist/background/launch.js +77 -0
  74. package/dist/background/poll.job.d.ts +56 -0
  75. package/dist/background/poll.job.js +195 -0
  76. package/dist/background/render.d.ts +23 -0
  77. package/dist/background/render.js +48 -0
  78. package/dist/background/session.d.ts +48 -0
  79. package/dist/background/session.js +80 -0
  80. package/dist/background/status.d.ts +35 -0
  81. package/dist/background/status.js +57 -0
  82. package/dist/background/stop.d.ts +68 -0
  83. package/dist/background/stop.js +244 -0
  84. package/dist/background/store.d.ts +167 -0
  85. package/dist/background/store.js +361 -0
  86. package/dist/background/store.module.d.ts +6 -0
  87. package/dist/background/store.module.js +22 -0
  88. package/dist/background/tasks.service.d.ts +77 -0
  89. package/dist/background/tasks.service.js +216 -0
  90. package/dist/background/wake-rules.d.ts +66 -0
  91. package/dist/background/wake-rules.js +113 -0
  92. package/dist/background/wake.d.ts +30 -0
  93. package/dist/background/wake.js +63 -0
  94. package/dist/catalog/admin-catalog.controller.d.ts +102 -52
  95. package/dist/catalog/admin-catalog.controller.js +222 -67
  96. package/dist/catalog/admin-catalog.schemas.d.ts +72 -0
  97. package/dist/catalog/admin-catalog.schemas.js +92 -0
  98. package/dist/catalog/catalog-content.d.ts +232 -0
  99. package/dist/catalog/catalog-content.js +367 -0
  100. package/dist/catalog/catalog-files.d.ts +41 -0
  101. package/dist/catalog/catalog-files.js +86 -0
  102. package/dist/catalog/catalog-import.module.d.ts +7 -0
  103. package/dist/catalog/catalog-import.module.js +60 -0
  104. package/dist/catalog/catalog-items.d.ts +290 -0
  105. package/dist/catalog/catalog-items.js +676 -0
  106. package/dist/catalog/catalog-scope.service.d.ts +260 -0
  107. package/dist/catalog/catalog-scope.service.js +1124 -0
  108. package/dist/catalog/catalog.module.d.ts +12 -0
  109. package/dist/catalog/catalog.module.js +81 -0
  110. package/dist/catalog/catalog.service.d.ts +141 -206
  111. package/dist/catalog/catalog.service.js +237 -528
  112. package/dist/catalog/claude/agents.js +15 -10
  113. package/dist/catalog/cli.d.ts +14 -3
  114. package/dist/catalog/cli.js +39 -32
  115. package/dist/catalog/component-promotion.d.ts +96 -0
  116. package/dist/catalog/component-promotion.js +395 -0
  117. package/dist/catalog/component-scope.controller.d.ts +90 -0
  118. package/dist/catalog/component-scope.controller.js +234 -0
  119. package/dist/catalog/component-scope.schemas.d.ts +114 -0
  120. package/dist/catalog/component-scope.schemas.js +97 -0
  121. package/dist/catalog/component-scope.service.d.ts +327 -0
  122. package/dist/catalog/component-scope.service.js +990 -0
  123. package/dist/catalog/component-state.d.ts +188 -0
  124. package/dist/catalog/component-state.js +455 -0
  125. package/dist/catalog/git-source.d.ts +9 -1
  126. package/dist/catalog/git-source.js +29 -2
  127. package/dist/catalog/job-ids.d.ts +45 -0
  128. package/dist/catalog/job-ids.js +40 -0
  129. package/dist/catalog/jobs.d.ts +27 -0
  130. package/dist/catalog/jobs.js +70 -0
  131. package/dist/catalog/locks.d.ts +24 -0
  132. package/dist/catalog/locks.js +63 -0
  133. package/dist/catalog/marketplace-fetch.d.ts +1 -1
  134. package/dist/catalog/marketplace-icons.d.ts +64 -0
  135. package/dist/catalog/marketplace-icons.js +131 -0
  136. package/dist/catalog/marketplaces.controller.d.ts +53 -44
  137. package/dist/catalog/marketplaces.controller.js +146 -51
  138. package/dist/catalog/marketplaces.schemas.d.ts +48 -0
  139. package/dist/catalog/marketplaces.schemas.js +53 -0
  140. package/dist/catalog/marketplaces.service.d.ts +136 -26
  141. package/dist/catalog/marketplaces.service.js +663 -281
  142. package/dist/catalog/org-catalog.controller.d.ts +115 -63
  143. package/dist/catalog/org-catalog.controller.js +207 -100
  144. package/dist/catalog/org-catalog.schemas.d.ts +88 -0
  145. package/dist/catalog/org-catalog.schemas.js +93 -0
  146. package/dist/catalog/org-catalog.service.d.ts +89 -216
  147. package/dist/catalog/org-catalog.service.js +431 -472
  148. package/dist/catalog/org-extension-switch.d.ts +41 -0
  149. package/dist/catalog/org-extension-switch.js +115 -0
  150. package/dist/catalog/org-extension.controller.d.ts +113 -0
  151. package/dist/catalog/org-extension.controller.js +271 -0
  152. package/dist/catalog/org-extension.schemas.d.ts +15 -0
  153. package/dist/catalog/org-extension.schemas.js +22 -0
  154. package/dist/catalog/org-plugin-uploads.controller.d.ts +77 -0
  155. package/dist/catalog/org-plugin-uploads.controller.js +200 -0
  156. package/dist/catalog/org-plugin-uploads.d.ts +71 -0
  157. package/dist/catalog/org-plugin-uploads.js +122 -0
  158. package/dist/catalog/org-plugin-uploads.schemas.d.ts +20 -0
  159. package/dist/catalog/org-plugin-uploads.schemas.js +32 -0
  160. package/dist/catalog/owned-items.d.ts +188 -0
  161. package/dist/catalog/owned-items.js +801 -0
  162. package/dist/catalog/owned-plugin-cleanup.d.ts +56 -0
  163. package/dist/catalog/owned-plugin-cleanup.js +194 -0
  164. package/dist/catalog/ownership.d.ts +172 -0
  165. package/dist/catalog/ownership.js +326 -0
  166. package/dist/catalog/platform-components.d.ts +223 -0
  167. package/dist/catalog/platform-components.js +763 -0
  168. package/dist/catalog/platform-migration.d.ts +115 -0
  169. package/dist/catalog/platform-migration.js +582 -0
  170. package/dist/catalog/plugin-import.d.ts +270 -68
  171. package/dist/catalog/plugin-import.js +1004 -277
  172. package/dist/catalog/plugin-install.d.ts +251 -65
  173. package/dist/catalog/plugin-install.js +1128 -344
  174. package/dist/catalog/plugin-package.js +14 -1
  175. package/dist/catalog/plugin-upgrade.d.ts +301 -188
  176. package/dist/catalog/plugin-upgrade.js +1256 -1068
  177. package/dist/catalog/request-rules.d.ts +65 -0
  178. package/dist/catalog/request-rules.js +217 -0
  179. package/dist/catalog/requests.service.d.ts +205 -117
  180. package/dist/catalog/requests.service.js +612 -369
  181. package/dist/catalog/reserved-names.d.ts +8 -0
  182. package/dist/catalog/reserved-names.js +42 -0
  183. package/dist/catalog/scope-orgs.d.ts +21 -0
  184. package/dist/catalog/scope-orgs.js +67 -0
  185. package/dist/catalog/scope-state.d.ts +35 -0
  186. package/dist/catalog/scope-state.js +87 -0
  187. package/dist/catalog/scope-sync-workers.d.ts +7 -0
  188. package/dist/catalog/scope-sync-workers.js +29 -0
  189. package/dist/catalog/scope-sync.d.ts +176 -0
  190. package/dist/catalog/scope-sync.js +576 -0
  191. package/dist/catalog/scope.d.ts +42 -0
  192. package/dist/catalog/scope.js +42 -0
  193. package/dist/catalog/unshare.d.ts +22 -0
  194. package/dist/catalog/unshare.js +118 -0
  195. package/dist/channels/actions.d.ts +6 -4
  196. package/dist/channels/actions.js +11 -4
  197. package/dist/channels/cards.d.ts +33 -11
  198. package/dist/channels/cards.js +96 -24
  199. package/dist/channels/channels.module.d.ts +40 -0
  200. package/dist/channels/channels.module.js +130 -0
  201. package/dist/channels/channels.schemas.d.ts +37 -0
  202. package/dist/channels/channels.schemas.js +38 -0
  203. package/dist/channels/connections.controller.d.ts +44 -37
  204. package/dist/channels/connections.controller.js +83 -38
  205. package/dist/channels/connections.service.d.ts +101 -30
  206. package/dist/channels/connections.service.js +380 -147
  207. package/dist/channels/inbound.d.ts +44 -38
  208. package/dist/channels/inbound.js +190 -44
  209. package/dist/channels/job-ids.d.ts +10 -0
  210. package/dist/channels/job-ids.js +10 -0
  211. package/dist/channels/jobs.d.ts +85 -0
  212. package/dist/channels/jobs.js +157 -0
  213. package/dist/channels/outbound.d.ts +71 -80
  214. package/dist/channels/outbound.js +219 -201
  215. package/dist/channels/phrases.d.ts +33 -2
  216. package/dist/channels/phrases.js +29 -1
  217. package/dist/channels/supervisor.d.ts +88 -46
  218. package/dist/channels/supervisor.js +230 -132
  219. package/dist/channels/threads.d.ts +34 -8
  220. package/dist/channels/threads.js +79 -13
  221. package/dist/channels/webhook.d.ts +20 -14
  222. package/dist/channels/webhook.js +51 -20
  223. package/dist/config/docs.js +5 -1
  224. package/dist/config/load.d.ts +3 -2
  225. package/dist/config/load.js +3 -2
  226. package/dist/config/nacos-source.js +11 -2
  227. package/dist/config/schema.d.ts +51 -3
  228. package/dist/config/schema.js +269 -27
  229. package/dist/conversations/access.d.ts +31 -0
  230. package/dist/conversations/access.js +110 -0
  231. package/dist/conversations/agent-tree.d.ts +46 -0
  232. package/dist/conversations/agent-tree.js +92 -0
  233. package/dist/conversations/artifacts.d.ts +11 -11
  234. package/dist/conversations/artifacts.js +36 -10
  235. package/dist/conversations/attachments.controller.d.ts +1 -1
  236. package/dist/conversations/attachments.controller.js +8 -6
  237. package/dist/conversations/attachments.module.d.ts +7 -0
  238. package/dist/conversations/attachments.module.js +25 -0
  239. package/dist/conversations/attachments.service.d.ts +60 -22
  240. package/dist/conversations/attachments.service.js +249 -51
  241. package/dist/conversations/conversations.controller.d.ts +86 -50
  242. package/dist/conversations/conversations.controller.js +184 -103
  243. package/dist/conversations/conversations.module.d.ts +8 -0
  244. package/dist/conversations/conversations.module.js +72 -0
  245. package/dist/conversations/conversations.schemas.d.ts +52 -0
  246. package/dist/conversations/conversations.schemas.js +79 -0
  247. package/dist/conversations/conversations.service.d.ts +166 -49
  248. package/dist/conversations/conversations.service.js +383 -179
  249. package/dist/conversations/environment-status.d.ts +24 -0
  250. package/dist/conversations/environment-status.js +71 -0
  251. package/dist/conversations/event-log.d.ts +64 -27
  252. package/dist/conversations/event-log.js +167 -31
  253. package/dist/conversations/events.d.ts +252 -9
  254. package/dist/conversations/events.js +243 -32
  255. package/dist/conversations/files.d.ts +10 -10
  256. package/dist/conversations/files.js +37 -11
  257. package/dist/conversations/idem-keys.d.ts +5 -0
  258. package/dist/conversations/idem-keys.js +5 -0
  259. package/dist/conversations/job-ids.d.ts +6 -0
  260. package/dist/conversations/job-ids.js +6 -0
  261. package/dist/conversations/message-context.d.ts +79 -0
  262. package/dist/conversations/message-context.js +145 -0
  263. package/dist/conversations/outputs-read.d.ts +11 -11
  264. package/dist/conversations/outputs-read.js +31 -7
  265. package/dist/conversations/queue.d.ts +53 -58
  266. package/dist/conversations/queue.js +37 -293
  267. package/dist/conversations/queue.service.d.ts +60 -0
  268. package/dist/conversations/queue.service.js +350 -0
  269. package/dist/conversations/titles.d.ts +83 -27
  270. package/dist/conversations/titles.js +195 -70
  271. package/dist/conversations/tree.d.ts +17 -0
  272. package/dist/conversations/tree.js +42 -0
  273. package/dist/ctx/bus.js +9 -3
  274. package/dist/ctx/create-ctx.d.ts +26 -1
  275. package/dist/ctx/create-ctx.js +45 -16
  276. package/dist/ctx/lock.d.ts +7 -3
  277. package/dist/ctx/lock.js +9 -20
  278. package/dist/ctx/queue.js +3 -2
  279. package/dist/ctx/secrets.d.ts +10 -2
  280. package/dist/ctx/secrets.js +7 -3
  281. package/dist/db/kernel-schema.d.ts +550 -25
  282. package/dist/db/pool.d.ts +10 -0
  283. package/dist/db/pool.js +4 -0
  284. package/dist/devices/device-auth.controller.d.ts +42 -0
  285. package/dist/devices/device-auth.controller.js +116 -0
  286. package/dist/devices/device-auth.d.ts +119 -0
  287. package/dist/devices/device-auth.js +403 -0
  288. package/dist/devices/device-auth.module.d.ts +7 -0
  289. package/dist/devices/device-auth.module.js +25 -0
  290. package/dist/devices/device-gateway.d.ts +128 -0
  291. package/dist/devices/device-gateway.js +530 -0
  292. package/dist/devices/device-provider.d.ts +89 -0
  293. package/dist/devices/device-provider.js +151 -0
  294. package/dist/devices/device-routes.d.ts +36 -0
  295. package/dist/devices/device-routes.js +90 -0
  296. package/dist/devices/devices.module.d.ts +16 -0
  297. package/dist/devices/devices.module.js +44 -0
  298. package/dist/devices/dto.d.ts +66 -0
  299. package/dist/devices/dto.js +44 -0
  300. package/dist/devices/keys.d.ts +25 -0
  301. package/dist/devices/keys.js +25 -0
  302. package/dist/devices/machines.d.ts +118 -0
  303. package/dist/devices/machines.js +366 -0
  304. package/dist/devices/relay.d.ts +100 -0
  305. package/dist/devices/relay.js +373 -0
  306. package/dist/devices/targets.d.ts +28 -0
  307. package/dist/devices/targets.js +73 -0
  308. package/dist/environments/access.d.ts +66 -0
  309. package/dist/environments/access.js +113 -0
  310. package/dist/environments/conversation-environments.d.ts +75 -0
  311. package/dist/environments/conversation-environments.js +231 -0
  312. package/dist/environments/dto.d.ts +25 -0
  313. package/dist/environments/dto.js +12 -0
  314. package/dist/environments/environments.controller.d.ts +36 -0
  315. package/dist/environments/environments.controller.js +124 -0
  316. package/dist/environments/environments.module.d.ts +8 -0
  317. package/dist/environments/environments.module.js +31 -0
  318. package/dist/environments/environments.schemas.d.ts +3 -0
  319. package/dist/environments/environments.schemas.js +14 -0
  320. package/dist/environments/environments.service.d.ts +251 -0
  321. package/dist/environments/environments.service.js +791 -0
  322. package/dist/environments/label.d.ts +11 -0
  323. package/dist/environments/label.js +25 -0
  324. package/dist/environments/legacy-cleanup.job.d.ts +34 -0
  325. package/dist/environments/legacy-cleanup.job.js +141 -0
  326. package/dist/errors.d.ts +136 -2
  327. package/dist/errors.js +136 -2
  328. package/dist/evals/budget.d.ts +42 -21
  329. package/dist/evals/budget.js +114 -62
  330. package/dist/evals/evals.module.d.ts +31 -0
  331. package/dist/evals/evals.module.js +114 -0
  332. package/dist/evals/evals.schemas.d.ts +110 -0
  333. package/dist/evals/evals.schemas.js +107 -0
  334. package/dist/evals/jobs.d.ts +20 -0
  335. package/dist/evals/jobs.js +45 -0
  336. package/dist/evals/reconstruct.d.ts +18 -9
  337. package/dist/evals/reconstruct.js +36 -10
  338. package/dist/evals/recorded-tools.d.ts +37 -1
  339. package/dist/evals/recorded-tools.js +120 -10
  340. package/dist/evals/run-replay.d.ts +75 -10
  341. package/dist/evals/run-replay.js +218 -94
  342. package/dist/evals/runs.controller.d.ts +3 -58
  343. package/dist/evals/runs.controller.js +18 -50
  344. package/dist/evals/runs.service.d.ts +31 -52
  345. package/dist/evals/runs.service.js +281 -255
  346. package/dist/evals/sets.controller.d.ts +3 -29
  347. package/dist/evals/sets.controller.js +18 -39
  348. package/dist/evals/sets.service.d.ts +29 -13
  349. package/dist/evals/sets.service.js +262 -202
  350. package/dist/evals/snapshot.d.ts +5 -4
  351. package/dist/evals/snapshot.js +17 -4
  352. package/dist/evals/step-replay.d.ts +6 -8
  353. package/dist/evals/step-replay.js +17 -10
  354. package/dist/evals/trajectory.controller.d.ts +1 -1
  355. package/dist/evals/trajectory.controller.js +11 -7
  356. package/dist/evals/trajectory.d.ts +2 -2
  357. package/dist/evals/trajectory.js +1 -1
  358. package/dist/evals/trajectory.service.d.ts +13 -7
  359. package/dist/evals/trajectory.service.js +56 -21
  360. package/dist/evals/worker.d.ts +48 -31
  361. package/dist/evals/worker.js +229 -123
  362. package/dist/extensions/admin-ops.d.ts +133 -41
  363. package/dist/extensions/admin-ops.js +378 -172
  364. package/dist/extensions/admin-view.d.ts +82 -32
  365. package/dist/extensions/admin-view.js +284 -71
  366. package/dist/extensions/approvals.d.ts +24 -10
  367. package/dist/extensions/approvals.js +73 -46
  368. package/dist/extensions/blobs.d.ts +27 -10
  369. package/dist/extensions/blobs.js +112 -45
  370. package/dist/extensions/bootstrap.d.ts +136 -46
  371. package/dist/extensions/bootstrap.js +417 -167
  372. package/dist/extensions/cli.d.ts +32 -10
  373. package/dist/extensions/cli.js +52 -98
  374. package/dist/extensions/config-hash.d.ts +10 -0
  375. package/dist/extensions/config-hash.js +38 -0
  376. package/dist/extensions/config-issues.d.ts +19 -0
  377. package/dist/extensions/config-issues.js +48 -0
  378. package/dist/extensions/config-json-schema.d.ts +43 -7
  379. package/dist/extensions/config-json-schema.js +124 -58
  380. package/dist/extensions/deployment-config-store.d.ts +55 -0
  381. package/dist/extensions/deployment-config-store.js +133 -0
  382. package/dist/extensions/deployment-config.d.ts +146 -70
  383. package/dist/extensions/deployment-config.js +439 -246
  384. package/dist/extensions/display-name.d.ts +22 -0
  385. package/dist/extensions/display-name.js +77 -0
  386. package/dist/extensions/effective-config.d.ts +127 -0
  387. package/dist/extensions/effective-config.js +368 -0
  388. package/dist/extensions/enabled.d.ts +5 -5
  389. package/dist/extensions/extensions.module.d.ts +8 -0
  390. package/dist/extensions/extensions.module.js +96 -0
  391. package/dist/extensions/hooks.d.ts +40 -6
  392. package/dist/extensions/hooks.js +83 -17
  393. package/dist/extensions/host.d.ts +161 -80
  394. package/dist/extensions/host.js +505 -213
  395. package/dist/extensions/installs.d.ts +73 -19
  396. package/dist/extensions/installs.js +174 -37
  397. package/dist/extensions/job-ids.d.ts +6 -0
  398. package/dist/extensions/job-ids.js +6 -0
  399. package/dist/extensions/lifecycle-topics.d.ts +18 -0
  400. package/dist/extensions/lifecycle-topics.js +18 -0
  401. package/dist/extensions/lifecycle.d.ts +35 -47
  402. package/dist/extensions/lifecycle.js +103 -39
  403. package/dist/extensions/locks.d.ts +45 -0
  404. package/dist/extensions/locks.js +112 -0
  405. package/dist/extensions/migrate-lock.d.ts +3 -4
  406. package/dist/extensions/org-config.d.ts +141 -49
  407. package/dist/extensions/org-config.js +471 -243
  408. package/dist/extensions/org-levels.d.ts +37 -0
  409. package/dist/extensions/org-levels.js +71 -0
  410. package/dist/extensions/org-overrides.d.ts +151 -0
  411. package/dist/extensions/org-overrides.js +524 -0
  412. package/dist/extensions/package.d.ts +14 -1
  413. package/dist/extensions/package.js +51 -2
  414. package/dist/extensions/permission-view.d.ts +59 -6
  415. package/dist/extensions/permission-view.js +7 -5
  416. package/dist/extensions/plugin-guides.d.ts +129 -0
  417. package/dist/extensions/plugin-guides.js +283 -0
  418. package/dist/extensions/plugin-icons.d.ts +54 -0
  419. package/dist/extensions/plugin-icons.js +125 -0
  420. package/dist/extensions/plugin-items.d.ts +21 -0
  421. package/dist/extensions/plugin-items.js +42 -0
  422. package/dist/extensions/point-defaults.controller.d.ts +28 -0
  423. package/dist/extensions/point-defaults.controller.js +69 -0
  424. package/dist/extensions/point-defaults.d.ts +73 -0
  425. package/dist/extensions/point-defaults.js +236 -0
  426. package/dist/extensions/point-defaults.schemas.d.ts +9 -0
  427. package/dist/extensions/point-defaults.schemas.js +14 -0
  428. package/dist/extensions/registry.d.ts +50 -2
  429. package/dist/extensions/registry.js +91 -4
  430. package/dist/extensions/resolve.d.ts +51 -1
  431. package/dist/extensions/resolve.js +85 -3
  432. package/dist/extensions/single-provider.d.ts +92 -0
  433. package/dist/extensions/single-provider.js +180 -0
  434. package/dist/extensions/sources.d.ts +19 -10
  435. package/dist/extensions/sources.js +34 -13
  436. package/dist/extensions/state.module.d.ts +9 -0
  437. package/dist/extensions/state.module.js +38 -0
  438. package/dist/extensions/unavailable.d.ts +50 -0
  439. package/dist/extensions/unavailable.js +115 -0
  440. package/dist/files/files.module.d.ts +3 -0
  441. package/dist/files/files.module.js +22 -0
  442. package/dist/files/previewers.controller.d.ts +7 -2
  443. package/dist/files/previewers.controller.js +19 -12
  444. package/dist/files/previewers.d.ts +21 -19
  445. package/dist/files/previewers.js +114 -38
  446. package/dist/files/previewers.schemas.d.ts +10 -0
  447. package/dist/files/previewers.schemas.js +9 -0
  448. package/dist/http/adapter.d.ts +3 -0
  449. package/dist/http/adapter.js +25 -0
  450. package/dist/http/api.module.d.ts +3 -110
  451. package/dist/http/api.module.js +86 -358
  452. package/dist/http/app.d.ts +22 -17
  453. package/dist/http/app.js +83 -52
  454. package/dist/http/error-filter.module.d.ts +5 -0
  455. package/dist/http/error-filter.module.js +18 -0
  456. package/dist/http/error.filter.js +2 -2
  457. package/dist/http/{gateway.module.d.ts → gateway-routes.d.ts} +7 -3
  458. package/dist/http/gateway-routes.js +16 -0
  459. package/dist/http/nest-logger.d.ts +6 -5
  460. package/dist/http/nest-logger.js +24 -10
  461. package/dist/http/plugin-dispatch.d.ts +4 -1
  462. package/dist/http/plugin-dispatch.js +14 -2
  463. package/dist/identity/accounts.d.ts +130 -38
  464. package/dist/identity/accounts.js +373 -186
  465. package/dist/identity/api-tokens.d.ts +11 -7
  466. package/dist/identity/api-tokens.js +71 -44
  467. package/dist/identity/audit.d.ts +9 -5
  468. package/dist/identity/audit.js +5 -1
  469. package/dist/identity/auth.controller.d.ts +11 -10
  470. package/dist/identity/auth.controller.js +40 -30
  471. package/dist/identity/auth.guard.d.ts +16 -8
  472. package/dist/identity/auth.guard.js +41 -13
  473. package/dist/identity/binding.d.ts +9 -11
  474. package/dist/identity/binding.js +41 -13
  475. package/dist/identity/cookies.d.ts +26 -5
  476. package/dist/identity/cookies.js +58 -6
  477. package/dist/identity/external-identity-lock.d.ts +17 -0
  478. package/dist/identity/external-identity-lock.js +39 -0
  479. package/dist/identity/external.d.ts +19 -15
  480. package/dist/identity/external.js +163 -125
  481. package/dist/identity/identity.module.d.ts +6 -0
  482. package/dist/identity/identity.module.js +59 -0
  483. package/dist/identity/initial-passwords.controller.d.ts +22 -0
  484. package/dist/identity/initial-passwords.controller.js +49 -0
  485. package/dist/identity/initial-passwords.d.ts +61 -0
  486. package/dist/identity/initial-passwords.job.d.ts +16 -0
  487. package/dist/identity/initial-passwords.job.js +46 -0
  488. package/dist/identity/initial-passwords.js +159 -0
  489. package/dist/identity/me.controller.d.ts +32 -15
  490. package/dist/identity/me.controller.js +78 -33
  491. package/dist/identity/me.schemas.d.ts +14 -0
  492. package/dist/identity/me.schemas.js +17 -0
  493. package/dist/identity/principal.d.ts +11 -3
  494. package/dist/identity/principal.js +11 -3
  495. package/dist/identity/sessions.d.ts +24 -10
  496. package/dist/identity/sessions.js +119 -42
  497. package/dist/identity/settings.d.ts +42 -23
  498. package/dist/identity/settings.js +137 -72
  499. package/dist/identity/sso.controller.d.ts +7 -7
  500. package/dist/identity/sso.controller.js +13 -9
  501. package/dist/identity/sso.d.ts +9 -12
  502. package/dist/identity/sso.js +54 -24
  503. package/dist/identity/super-admin.d.ts +20 -0
  504. package/dist/identity/super-admin.js +81 -0
  505. package/dist/inbox/inbox.module.d.ts +6 -0
  506. package/dist/inbox/inbox.module.js +26 -0
  507. package/dist/inbox/inbox.schemas.d.ts +8 -0
  508. package/dist/inbox/inbox.schemas.js +11 -0
  509. package/dist/inbox/inbox.service.d.ts +68 -11
  510. package/dist/inbox/inbox.service.js +104 -13
  511. package/dist/inbox/org-notices.d.ts +63 -0
  512. package/dist/inbox/org-notices.js +91 -0
  513. package/dist/inbox/platform-inbox.controller.d.ts +23 -0
  514. package/dist/inbox/platform-inbox.controller.js +58 -0
  515. package/dist/inbox/platform-inbox.service.d.ts +151 -0
  516. package/dist/inbox/platform-inbox.service.js +263 -0
  517. package/dist/inbox/platform-notices.d.ts +19 -0
  518. package/dist/inbox/platform-notices.js +9 -0
  519. package/dist/index.d.ts +25 -14
  520. package/dist/index.js +20 -9
  521. package/dist/infra/cache/cache.module.d.ts +3 -0
  522. package/dist/infra/cache/cache.module.js +16 -0
  523. package/dist/infra/cache/cache.service.d.ts +21 -0
  524. package/dist/infra/cache/cache.service.js +80 -0
  525. package/dist/infra/cache/cacheable.decorator.d.ts +32 -0
  526. package/dist/infra/cache/cacheable.decorator.js +83 -0
  527. package/dist/infra/cli/kernel-cli.module.d.ts +66 -0
  528. package/dist/infra/cli/kernel-cli.module.js +173 -0
  529. package/dist/infra/close-within.d.ts +15 -0
  530. package/dist/infra/close-within.js +36 -0
  531. package/dist/infra/config/config.module.d.ts +13 -0
  532. package/dist/infra/config/config.module.js +39 -0
  533. package/dist/infra/config/kernel-config.service.d.ts +25 -0
  534. package/dist/infra/config/kernel-config.service.js +157 -0
  535. package/dist/infra/database/after-commit.d.ts +6 -0
  536. package/dist/infra/database/after-commit.js +9 -0
  537. package/dist/infra/database/database.module.d.ts +25 -0
  538. package/dist/infra/database/database.module.js +91 -0
  539. package/dist/infra/database/kernel-db.d.ts +22 -0
  540. package/dist/infra/database/kernel-db.js +65 -0
  541. package/dist/infra/database/transaction-host.d.ts +50 -0
  542. package/dist/infra/database/transaction-host.js +125 -0
  543. package/dist/infra/database/transactional.decorator.d.ts +15 -0
  544. package/dist/infra/database/transactional.decorator.js +27 -0
  545. package/dist/infra/database/xact-lock.d.ts +17 -0
  546. package/dist/infra/database/xact-lock.js +43 -0
  547. package/dist/infra/events/kernel-events.d.ts +121 -0
  548. package/dist/infra/events/kernel-events.js +65 -0
  549. package/dist/infra/health/health.controller.d.ts +26 -0
  550. package/dist/infra/health/health.controller.js +104 -0
  551. package/dist/infra/health/health.module.d.ts +9 -0
  552. package/dist/infra/health/health.module.js +24 -0
  553. package/dist/infra/health/health.options.d.ts +10 -0
  554. package/dist/infra/health/health.options.js +15 -0
  555. package/dist/infra/health/shutdown-state.d.ts +6 -0
  556. package/dist/infra/health/shutdown-state.js +2 -0
  557. package/dist/infra/lifecycle/graceful-shutdown.module.d.ts +6 -0
  558. package/dist/infra/lifecycle/graceful-shutdown.module.js +23 -0
  559. package/dist/infra/lifecycle/graceful-shutdown.service.d.ts +70 -0
  560. package/dist/infra/lifecycle/graceful-shutdown.service.js +135 -0
  561. package/dist/infra/lifecycle/process-guards.d.ts +52 -0
  562. package/dist/infra/lifecycle/process-guards.js +90 -0
  563. package/dist/infra/lifecycle/shutdown-signals.d.ts +30 -0
  564. package/dist/infra/lifecycle/shutdown-signals.js +48 -0
  565. package/dist/infra/lock/key-template.d.ts +13 -0
  566. package/dist/infra/lock/key-template.js +46 -0
  567. package/dist/infra/lock/lock.module.d.ts +3 -0
  568. package/dist/infra/lock/lock.module.js +16 -0
  569. package/dist/infra/lock/lock.service.d.ts +120 -0
  570. package/dist/infra/lock/lock.service.js +343 -0
  571. package/dist/infra/lock/shared-lease.d.ts +44 -0
  572. package/dist/infra/lock/shared-lease.js +121 -0
  573. package/dist/infra/lock/with-lock.decorator.d.ts +28 -0
  574. package/dist/infra/lock/with-lock.decorator.js +49 -0
  575. package/dist/infra/logging/logging.module.d.ts +18 -0
  576. package/dist/infra/logging/logging.module.js +52 -0
  577. package/dist/infra/queue/add-job-once.d.ts +14 -0
  578. package/dist/infra/queue/add-job-once.js +16 -0
  579. package/dist/infra/queue/configured-processor.d.ts +18 -0
  580. package/dist/infra/queue/configured-processor.js +23 -0
  581. package/dist/infra/queue/job-failure.d.ts +18 -0
  582. package/dist/infra/queue/job-failure.js +26 -0
  583. package/dist/infra/queue/queue-shutdown.d.ts +27 -0
  584. package/dist/infra/queue/queue-shutdown.js +81 -0
  585. package/dist/infra/queue/queue.module.d.ts +16 -0
  586. package/dist/infra/queue/queue.module.js +61 -0
  587. package/dist/infra/queue/redis-connection.d.ts +13 -0
  588. package/dist/infra/queue/redis-connection.js +25 -0
  589. package/dist/infra/queue/retired-schedulers.d.ts +7 -0
  590. package/dist/infra/queue/retired-schedulers.js +9 -0
  591. package/dist/infra/queue/run-job.d.ts +16 -0
  592. package/dist/infra/queue/run-job.js +19 -0
  593. package/dist/infra/redis/redis.module.d.ts +24 -0
  594. package/dist/infra/redis/redis.module.js +91 -0
  595. package/dist/infra/schedule/cron-tick.d.ts +12 -0
  596. package/dist/infra/schedule/cron-tick.js +25 -0
  597. package/dist/infra/schedule/locked-cron.decorator.d.ts +27 -0
  598. package/dist/infra/schedule/locked-cron.decorator.js +53 -0
  599. package/dist/infra/schedule/locked-interval.d.ts +69 -0
  600. package/dist/infra/schedule/locked-interval.js +190 -0
  601. package/dist/infra/schedule/locked-tick.d.ts +90 -0
  602. package/dist/infra/schedule/locked-tick.js +137 -0
  603. package/dist/infra/schedule/schedule.module.d.ts +8 -0
  604. package/dist/infra/schedule/schedule.module.js +27 -0
  605. package/dist/infra/schedule/scheduled-runs.d.ts +69 -0
  606. package/dist/infra/schedule/scheduled-runs.js +163 -0
  607. package/dist/infra/swagger/swagger.d.ts +16 -0
  608. package/dist/infra/swagger/swagger.js +31 -0
  609. package/dist/infra/throttler/credential-throttler.d.ts +35 -0
  610. package/dist/infra/throttler/credential-throttler.js +77 -0
  611. package/dist/infra/throttler/named-throttlers.d.ts +36 -0
  612. package/dist/infra/throttler/named-throttlers.js +157 -0
  613. package/dist/infra/throttler/redis-throttler-storage.d.ts +38 -0
  614. package/dist/infra/throttler/redis-throttler-storage.js +130 -0
  615. package/dist/infra/throttler/throttler.guard.d.ts +23 -0
  616. package/dist/infra/throttler/throttler.guard.js +68 -0
  617. package/dist/infra/throttler/throttler.module.d.ts +15 -0
  618. package/dist/infra/throttler/throttler.module.js +53 -0
  619. package/dist/infra/tokens.d.ts +20 -0
  620. package/dist/infra/tokens.js +20 -0
  621. package/dist/infra/validation/create-zod-dto.d.ts +23 -0
  622. package/dist/infra/validation/create-zod-dto.js +35 -0
  623. package/dist/infra/validation/parse-with-zod.d.ts +7 -0
  624. package/dist/infra/validation/parse-with-zod.js +12 -0
  625. package/dist/infra/validation/validation.module.d.ts +3 -0
  626. package/dist/infra/validation/validation.module.js +16 -0
  627. package/dist/infra/validation/zod-params.d.ts +7 -0
  628. package/dist/infra/validation/zod-params.js +42 -0
  629. package/dist/infra/validation/zod-validation.pipe.d.ts +11 -0
  630. package/dist/infra/validation/zod-validation.pipe.js +31 -0
  631. package/dist/kernel.d.ts +9 -241
  632. package/dist/kernel.js +8 -1305
  633. package/dist/kernel.module.d.ts +17 -0
  634. package/dist/kernel.module.js +145 -0
  635. package/dist/lifecycle/kernel-lifecycle.d.ts +140 -0
  636. package/dist/lifecycle/kernel-lifecycle.js +465 -0
  637. package/dist/lifecycle/tokens.d.ts +3 -0
  638. package/dist/lifecycle/tokens.js +3 -0
  639. package/dist/log-config.d.ts +9 -0
  640. package/dist/log-config.js +27 -0
  641. package/dist/log-context.d.ts +34 -0
  642. package/dist/log-context.js +44 -0
  643. package/dist/log-loki.d.ts +34 -0
  644. package/dist/log-loki.js +145 -0
  645. package/dist/log.d.ts +53 -10
  646. package/dist/log.js +168 -18
  647. package/dist/models/embeddings.d.ts +82 -0
  648. package/dist/models/embeddings.js +326 -0
  649. package/dist/models/enablement.controller.d.ts +40 -0
  650. package/dist/models/enablement.controller.js +74 -0
  651. package/dist/models/enablement.d.ts +101 -0
  652. package/dist/models/enablement.js +264 -0
  653. package/dist/models/models.module.d.ts +7 -0
  654. package/dist/models/models.module.js +36 -0
  655. package/dist/models/org-models.schemas.d.ts +8 -0
  656. package/dist/models/org-models.schemas.js +22 -0
  657. package/dist/models/prices.d.ts +13 -5
  658. package/dist/models/prices.js +69 -39
  659. package/dist/models/purposes.controller.d.ts +6 -4
  660. package/dist/models/purposes.controller.js +16 -11
  661. package/dist/models/purposes.d.ts +103 -23
  662. package/dist/models/purposes.js +208 -77
  663. package/dist/net/public-address.js +3 -2
  664. package/dist/orgs/directory-sync.controller.d.ts +1 -1
  665. package/dist/orgs/directory-sync.controller.js +2 -2
  666. package/dist/orgs/directory-sync.d.ts +74 -35
  667. package/dist/orgs/directory-sync.js +243 -132
  668. package/dist/orgs/invitations.controller.d.ts +8 -8
  669. package/dist/orgs/invitations.controller.js +27 -26
  670. package/dist/orgs/invitations.service.d.ts +12 -9
  671. package/dist/orgs/invitations.service.js +130 -92
  672. package/dist/orgs/job-ids.d.ts +8 -0
  673. package/dist/orgs/job-ids.js +8 -0
  674. package/dist/orgs/members.service.d.ts +19 -12
  675. package/dist/orgs/members.service.js +161 -117
  676. package/dist/orgs/offboarding.d.ts +61 -60
  677. package/dist/orgs/offboarding.js +206 -95
  678. package/dist/orgs/org-lock.d.ts +33 -19
  679. package/dist/orgs/org-lock.js +94 -35
  680. package/dist/orgs/org.guard.d.ts +11 -1
  681. package/dist/orgs/org.guard.js +45 -34
  682. package/dist/orgs/orgs.controller.d.ts +13 -16
  683. package/dist/orgs/orgs.controller.js +29 -20
  684. package/dist/orgs/orgs.module.d.ts +6 -0
  685. package/dist/orgs/orgs.module.js +71 -0
  686. package/dist/orgs/orgs.schemas.d.ts +8 -0
  687. package/dist/orgs/orgs.schemas.js +16 -0
  688. package/dist/orgs/orgs.service.d.ts +47 -21
  689. package/dist/orgs/orgs.service.js +166 -91
  690. package/dist/orgs/roles.d.ts +1 -1
  691. package/dist/orgs/roles.js +5 -1
  692. package/dist/orgs/settings.controller.d.ts +2 -2
  693. package/dist/orgs/settings.controller.js +8 -6
  694. package/dist/orgs/settings.service.d.ts +45 -14
  695. package/dist/orgs/settings.service.js +110 -51
  696. package/dist/overrides.d.ts +63 -0
  697. package/dist/overrides.js +34 -0
  698. package/dist/platform/actor.d.ts +48 -0
  699. package/dist/platform/actor.js +100 -0
  700. package/dist/platform/agent-docs.d.ts +18 -0
  701. package/dist/platform/agent-docs.js +59 -0
  702. package/dist/platform/availability.d.ts +14 -0
  703. package/dist/platform/availability.js +43 -0
  704. package/dist/platform/errors.d.ts +28 -0
  705. package/dist/platform/errors.js +65 -0
  706. package/dist/platform/exclusions.d.ts +11 -0
  707. package/dist/platform/exclusions.js +667 -0
  708. package/dist/platform/method.d.ts +6 -0
  709. package/dist/platform/method.js +15 -0
  710. package/dist/platform/operation.d.ts +169 -0
  711. package/dist/platform/operation.js +90 -0
  712. package/dist/platform/ops/accounts.ops.d.ts +32 -0
  713. package/dist/platform/ops/accounts.ops.js +291 -0
  714. package/dist/platform/ops/admin.ops.d.ts +36 -0
  715. package/dist/platform/ops/admin.ops.js +389 -0
  716. package/dist/platform/ops/agent-skills.ops.d.ts +24 -0
  717. package/dist/platform/ops/agent-skills.ops.js +226 -0
  718. package/dist/platform/ops/agent-templates.ops.d.ts +17 -0
  719. package/dist/platform/ops/agent-templates.ops.js +272 -0
  720. package/dist/platform/ops/agents.ops.d.ts +37 -0
  721. package/dist/platform/ops/agents.ops.js +717 -0
  722. package/dist/platform/ops/approvals.ops.d.ts +30 -0
  723. package/dist/platform/ops/approvals.ops.js +116 -0
  724. package/dist/platform/ops/background.ops.d.ts +14 -0
  725. package/dist/platform/ops/background.ops.js +134 -0
  726. package/dist/platform/ops/catalog-admin.ops.d.ts +74 -0
  727. package/dist/platform/ops/catalog-admin.ops.js +599 -0
  728. package/dist/platform/ops/channels.ops.d.ts +16 -0
  729. package/dist/platform/ops/channels.ops.js +195 -0
  730. package/dist/platform/ops/components.ops.d.ts +46 -0
  731. package/dist/platform/ops/components.ops.js +853 -0
  732. package/dist/platform/ops/connectors.ops.d.ts +17 -0
  733. package/dist/platform/ops/connectors.ops.js +188 -0
  734. package/dist/platform/ops/conversations.ops.d.ts +30 -0
  735. package/dist/platform/ops/conversations.ops.js +470 -0
  736. package/dist/platform/ops/environments.ops.d.ts +26 -0
  737. package/dist/platform/ops/environments.ops.js +311 -0
  738. package/dist/platform/ops/errors.d.ts +16 -0
  739. package/dist/platform/ops/errors.js +30 -0
  740. package/dist/platform/ops/evals.ops.d.ts +28 -0
  741. package/dist/platform/ops/evals.ops.js +783 -0
  742. package/dist/platform/ops/extensions-admin.ops.d.ts +25 -0
  743. package/dist/platform/ops/extensions-admin.ops.js +372 -0
  744. package/dist/platform/ops/extensions.ops.d.ts +25 -0
  745. package/dist/platform/ops/extensions.ops.js +347 -0
  746. package/dist/platform/ops/inbox.ops.d.ts +25 -0
  747. package/dist/platform/ops/inbox.ops.js +378 -0
  748. package/dist/platform/ops/marketplaces.ops.d.ts +22 -0
  749. package/dist/platform/ops/marketplaces.ops.js +466 -0
  750. package/dist/platform/ops/models.ops.d.ts +25 -0
  751. package/dist/platform/ops/models.ops.js +232 -0
  752. package/dist/platform/ops/org-plugins.ops.d.ts +29 -0
  753. package/dist/platform/ops/org-plugins.ops.js +329 -0
  754. package/dist/platform/ops/org-settings.ops.d.ts +16 -0
  755. package/dist/platform/ops/org-settings.ops.js +102 -0
  756. package/dist/platform/ops/orgs.ops.d.ts +28 -0
  757. package/dist/platform/ops/orgs.ops.js +295 -0
  758. package/dist/platform/ops/other-orgs.d.ts +20 -0
  759. package/dist/platform/ops/other-orgs.js +72 -0
  760. package/dist/platform/ops/paging.d.ts +14 -0
  761. package/dist/platform/ops/paging.js +20 -0
  762. package/dist/platform/ops/platform.ops.d.ts +28 -0
  763. package/dist/platform/ops/platform.ops.js +204 -0
  764. package/dist/platform/ops/plugins.ops.d.ts +35 -0
  765. package/dist/platform/ops/plugins.ops.js +476 -0
  766. package/dist/platform/ops/previewers.ops.d.ts +14 -0
  767. package/dist/platform/ops/previewers.ops.js +109 -0
  768. package/dist/platform/ops/requests.ops.d.ts +14 -0
  769. package/dist/platform/ops/requests.ops.js +191 -0
  770. package/dist/platform/ops/role.d.ts +4 -0
  771. package/dist/platform/ops/role.js +10 -0
  772. package/dist/platform/ops/skills.ops.d.ts +17 -0
  773. package/dist/platform/ops/skills.ops.js +216 -0
  774. package/dist/platform/ops/summary.d.ts +10 -0
  775. package/dist/platform/ops/summary.js +18 -0
  776. package/dist/platform/ops/unavailable.d.ts +23 -0
  777. package/dist/platform/ops/unavailable.js +118 -0
  778. package/dist/platform/parity.d.ts +33 -0
  779. package/dist/platform/parity.js +272 -0
  780. package/dist/platform/platform-ops.module.d.ts +39 -0
  781. package/dist/platform/platform-ops.module.js +122 -0
  782. package/dist/platform/platform.module.d.ts +8 -0
  783. package/dist/platform/platform.module.js +25 -0
  784. package/dist/platform/registry.d.ts +30 -0
  785. package/dist/platform/registry.js +111 -0
  786. package/dist/platform/route-schemas.d.ts +18 -0
  787. package/dist/platform/route-schemas.js +63 -0
  788. package/dist/roles/gateway-role.d.ts +54 -0
  789. package/dist/roles/gateway-role.js +118 -0
  790. package/dist/roles/gateway.module.d.ts +9 -0
  791. package/dist/roles/gateway.module.js +31 -0
  792. package/dist/roles/worker-role.d.ts +65 -0
  793. package/dist/roles/worker-role.js +151 -0
  794. package/dist/roles/worker.module.d.ts +14 -0
  795. package/dist/roles/worker.module.js +106 -0
  796. package/dist/runtime/abort.js +19 -2
  797. package/dist/runtime/checkpointer.d.ts +8 -3
  798. package/dist/runtime/checkpointer.js +87 -55
  799. package/dist/runtime/context/build.d.ts +21 -13
  800. package/dist/runtime/context/build.js +106 -29
  801. package/dist/runtime/context/claude-tools.d.ts +4 -1
  802. package/dist/runtime/context/claude-tools.js +13 -12
  803. package/dist/runtime/context/compaction.js +24 -1
  804. package/dist/runtime/context/environment-paths.d.ts +40 -0
  805. package/dist/runtime/context/environment-paths.js +48 -0
  806. package/dist/runtime/context/legacy-text.d.ts +22 -0
  807. package/dist/runtime/context/legacy-text.js +37 -0
  808. package/dist/runtime/context/reminders.d.ts +2 -0
  809. package/dist/runtime/context/reminders.js +2 -0
  810. package/dist/runtime/context/run-context.d.ts +65 -0
  811. package/dist/runtime/context/run-context.js +215 -0
  812. package/dist/runtime/context/skills.d.ts +29 -11
  813. package/dist/runtime/context/skills.js +46 -32
  814. package/dist/runtime/context/tool-changes.d.ts +27 -0
  815. package/dist/runtime/context/tool-changes.js +60 -0
  816. package/dist/runtime/conversation-lock.d.ts +20 -11
  817. package/dist/runtime/conversation-lock.js +62 -72
  818. package/dist/runtime/hook-calls.d.ts +11 -4
  819. package/dist/runtime/hook-calls.js +41 -13
  820. package/dist/runtime/job-ids.d.ts +10 -0
  821. package/dist/runtime/job-ids.js +10 -0
  822. package/dist/runtime/langgraph-loop.d.ts +3 -1
  823. package/dist/runtime/langgraph-loop.js +37 -18
  824. package/dist/runtime/loop.d.ts +42 -6
  825. package/dist/runtime/loop.js +14 -0
  826. package/dist/runtime/maintenance-queue.d.ts +10 -0
  827. package/dist/runtime/maintenance-queue.js +10 -0
  828. package/dist/runtime/maintenance.d.ts +50 -74
  829. package/dist/runtime/maintenance.js +166 -136
  830. package/dist/runtime/model-call.d.ts +61 -15
  831. package/dist/runtime/model-call.js +128 -84
  832. package/dist/runtime/providers.d.ts +158 -27
  833. package/dist/runtime/providers.js +373 -63
  834. package/dist/runtime/quota.d.ts +17 -3
  835. package/dist/runtime/quota.js +27 -2
  836. package/dist/runtime/retired-schedulers.d.ts +7 -0
  837. package/dist/runtime/retired-schedulers.js +31 -0
  838. package/dist/runtime/run-context.service.d.ts +65 -0
  839. package/dist/runtime/run-context.service.js +236 -0
  840. package/dist/runtime/run-control.d.ts +43 -0
  841. package/dist/runtime/run-control.js +89 -0
  842. package/dist/runtime/run-drafts.d.ts +85 -0
  843. package/dist/runtime/run-drafts.js +230 -0
  844. package/dist/runtime/run-finish.d.ts +27 -18
  845. package/dist/runtime/run-finish.js +98 -51
  846. package/dist/runtime/run-jobs.d.ts +46 -0
  847. package/dist/runtime/run-jobs.js +91 -0
  848. package/dist/runtime/run-processors.d.ts +60 -0
  849. package/dist/runtime/run-processors.js +185 -0
  850. package/dist/runtime/run-queue.d.ts +90 -58
  851. package/dist/runtime/run-queue.js +566 -297
  852. package/dist/runtime/run-steps.d.ts +39 -0
  853. package/dist/runtime/run-steps.js +96 -0
  854. package/dist/runtime/run-worker.d.ts +134 -77
  855. package/dist/runtime/run-worker.js +412 -236
  856. package/dist/runtime/runtime.module.d.ts +10 -0
  857. package/dist/runtime/runtime.module.js +122 -0
  858. package/dist/runtime/step-log.d.ts +51 -0
  859. package/dist/runtime/step-log.js +111 -0
  860. package/dist/runtime/stream.controller.d.ts +28 -9
  861. package/dist/runtime/stream.controller.js +72 -13
  862. package/dist/runtime/stream.d.ts +27 -6
  863. package/dist/runtime/stream.js +102 -7
  864. package/dist/runtime/subagents/child.d.ts +58 -51
  865. package/dist/runtime/subagents/child.js +105 -86
  866. package/dist/runtime/subagents/definition.d.ts +32 -28
  867. package/dist/runtime/subagents/definition.js +89 -143
  868. package/dist/runtime/subagents/deliveries.d.ts +71 -0
  869. package/dist/runtime/subagents/deliveries.js +228 -0
  870. package/dist/runtime/subagents/dispatch.d.ts +197 -27
  871. package/dist/runtime/subagents/dispatch.js +336 -270
  872. package/dist/runtime/subagents/limits.d.ts +32 -8
  873. package/dist/runtime/subagents/limits.js +44 -8
  874. package/dist/runtime/subagents/messages.d.ts +95 -0
  875. package/dist/runtime/subagents/messages.js +328 -0
  876. package/dist/runtime/subagents/org-agents.d.ts +4 -4
  877. package/dist/runtime/subagents/org-agents.js +3 -2
  878. package/dist/runtime/subagents/preamble.d.ts +4 -4
  879. package/dist/runtime/subagents/preamble.js +9 -7
  880. package/dist/runtime/subagents/progress.d.ts +10 -8
  881. package/dist/runtime/subagents/progress.js +11 -6
  882. package/dist/runtime/subagents/render.d.ts +30 -0
  883. package/dist/runtime/subagents/render.js +53 -0
  884. package/dist/runtime/subagents/roster.d.ts +27 -10
  885. package/dist/runtime/subagents/roster.js +49 -13
  886. package/dist/runtime/subagents/skill-fork.d.ts +10 -10
  887. package/dist/runtime/subagents/skill-fork.js +23 -8
  888. package/dist/runtime/subagents/status.d.ts +14 -0
  889. package/dist/runtime/subagents/status.js +23 -0
  890. package/dist/runtime/subagents/subagents.service.d.ts +43 -0
  891. package/dist/runtime/subagents/subagents.service.js +106 -0
  892. package/dist/runtime/usage-report-jobs.d.ts +88 -0
  893. package/dist/runtime/usage-report-jobs.js +158 -0
  894. package/dist/runtime/usage-report.d.ts +121 -83
  895. package/dist/runtime/usage-report.js +355 -180
  896. package/dist/runtime/waits.d.ts +258 -81
  897. package/dist/runtime/waits.js +800 -263
  898. package/dist/sandbox/job-ids.d.ts +10 -0
  899. package/dist/sandbox/job-ids.js +10 -0
  900. package/dist/sandbox/jobs.d.ts +68 -0
  901. package/dist/sandbox/jobs.js +150 -0
  902. package/dist/sandbox/leases.d.ts +73 -82
  903. package/dist/sandbox/leases.js +162 -346
  904. package/dist/sandbox/providers.d.ts +46 -0
  905. package/dist/sandbox/providers.js +83 -0
  906. package/dist/sandbox/sandbox.module.d.ts +9 -0
  907. package/dist/sandbox/sandbox.module.js +36 -0
  908. package/dist/sandbox/sandbox.service.d.ts +359 -151
  909. package/dist/sandbox/sandbox.service.js +950 -435
  910. package/dist/sandbox/unreachable.d.ts +30 -0
  911. package/dist/sandbox/unreachable.js +108 -0
  912. package/dist/skills/catalog.d.ts +40 -26
  913. package/dist/skills/catalog.js +120 -99
  914. package/dist/skills/changes.controller.d.ts +11 -4
  915. package/dist/skills/changes.controller.js +34 -9
  916. package/dist/skills/changes.service.d.ts +31 -21
  917. package/dist/skills/changes.service.js +426 -368
  918. package/dist/skills/invocable.controller.d.ts +2 -2
  919. package/dist/skills/invocable.controller.js +10 -7
  920. package/dist/skills/invocation-keys.d.ts +1 -1
  921. package/dist/skills/invocation-keys.js +1 -1
  922. package/dist/skills/invoke.d.ts +19 -18
  923. package/dist/skills/invoke.js +68 -24
  924. package/dist/skills/package.d.ts +20 -1
  925. package/dist/skills/package.js +28 -1
  926. package/dist/skills/skills.controller.d.ts +33 -7
  927. package/dist/skills/skills.controller.js +79 -12
  928. package/dist/skills/skills.module.d.ts +6 -0
  929. package/dist/skills/skills.module.js +39 -0
  930. package/dist/skills/skills.schemas.d.ts +48 -0
  931. package/dist/skills/skills.schemas.js +61 -0
  932. package/dist/skills/skills.service.d.ts +151 -44
  933. package/dist/skills/skills.service.js +636 -204
  934. package/dist/skills/usable.d.ts +81 -0
  935. package/dist/skills/usable.js +379 -0
  936. package/dist/storage/job-ids.d.ts +6 -0
  937. package/dist/storage/job-ids.js +6 -0
  938. package/dist/storage/purge.d.ts +22 -7
  939. package/dist/storage/purge.js +55 -3
  940. package/dist/storage/storage.module.d.ts +6 -0
  941. package/dist/storage/storage.module.js +23 -0
  942. package/dist/storage/storage.service.d.ts +18 -4
  943. package/dist/storage/storage.service.js +44 -3
  944. package/dist/time-zone.d.ts +5 -0
  945. package/dist/time-zone.js +19 -0
  946. package/dist/tools/approvals.controller.d.ts +1 -1
  947. package/dist/tools/approvals.controller.js +14 -11
  948. package/dist/tools/approvals.schemas.d.ts +21 -0
  949. package/dist/tools/approvals.schemas.js +15 -0
  950. package/dist/tools/approvals.service.d.ts +53 -27
  951. package/dist/tools/approvals.service.js +365 -260
  952. package/dist/tools/breaker.d.ts +2 -2
  953. package/dist/tools/breaker.js +21 -3
  954. package/dist/tools/builtin-names.d.ts +109 -0
  955. package/dist/tools/builtin-names.js +173 -0
  956. package/dist/tools/builtins/agent.d.ts +27 -25
  957. package/dist/tools/builtins/agent.js +66 -63
  958. package/dist/tools/builtins/ask-user.d.ts +3 -3
  959. package/dist/tools/builtins/ask-user.js +3 -3
  960. package/dist/tools/builtins/builtin-tools.d.ts +41 -0
  961. package/dist/tools/builtins/builtin-tools.js +151 -0
  962. package/dist/tools/builtins/current-time.d.ts +26 -0
  963. package/dist/tools/builtins/current-time.js +99 -0
  964. package/dist/tools/builtins/handback.d.ts +28 -0
  965. package/dist/tools/builtins/handback.js +53 -0
  966. package/dist/tools/builtins/platform.d.ts +51 -0
  967. package/dist/tools/builtins/platform.js +451 -0
  968. package/dist/tools/builtins/read-tool-output.d.ts +3 -3
  969. package/dist/tools/builtins/read-tool-output.js +3 -3
  970. package/dist/tools/builtins/sandbox/bash.d.ts +5 -5
  971. package/dist/tools/builtins/sandbox/bash.js +293 -41
  972. package/dist/tools/builtins/sandbox/common.d.ts +142 -40
  973. package/dist/tools/builtins/sandbox/common.js +227 -65
  974. package/dist/tools/builtins/sandbox/deliver.d.ts +1 -1
  975. package/dist/tools/builtins/sandbox/deliver.js +21 -18
  976. package/dist/tools/builtins/sandbox/edit.d.ts +1 -1
  977. package/dist/tools/builtins/sandbox/edit.js +65 -51
  978. package/dist/tools/builtins/sandbox/file-state.d.ts +34 -0
  979. package/dist/tools/builtins/sandbox/file-state.js +34 -0
  980. package/dist/tools/builtins/sandbox/glob-match.d.ts +1 -1
  981. package/dist/tools/builtins/sandbox/glob-match.js +1 -1
  982. package/dist/tools/builtins/sandbox/glob.d.ts +1 -1
  983. package/dist/tools/builtins/sandbox/glob.js +19 -14
  984. package/dist/tools/builtins/sandbox/grep.d.ts +7 -4
  985. package/dist/tools/builtins/sandbox/grep.js +155 -36
  986. package/dist/tools/builtins/sandbox/index.d.ts +9 -5
  987. package/dist/tools/builtins/sandbox/index.js +13 -5
  988. package/dist/tools/builtins/sandbox/read.d.ts +2 -2
  989. package/dist/tools/builtins/sandbox/read.js +30 -20
  990. package/dist/tools/builtins/sandbox/task-output.d.ts +79 -0
  991. package/dist/tools/builtins/sandbox/task-output.js +334 -0
  992. package/dist/tools/builtins/sandbox/task-stop.d.ts +10 -0
  993. package/dist/tools/builtins/sandbox/task-stop.js +113 -0
  994. package/dist/tools/builtins/sandbox/write.d.ts +1 -1
  995. package/dist/tools/builtins/sandbox/write.js +52 -45
  996. package/dist/tools/builtins/send-message.d.ts +56 -0
  997. package/dist/tools/builtins/send-message.js +100 -0
  998. package/dist/tools/builtins/skill-load.d.ts +32 -21
  999. package/dist/tools/builtins/skill-load.js +125 -74
  1000. package/dist/tools/builtins/skill-write.d.ts +4 -4
  1001. package/dist/tools/builtins/skill-write.js +12 -12
  1002. package/dist/tools/builtins/tool-search.d.ts +13 -9
  1003. package/dist/tools/builtins/tool-search.js +25 -14
  1004. package/dist/tools/builtins/web/errors.d.ts +8 -0
  1005. package/dist/tools/builtins/web/errors.js +53 -0
  1006. package/dist/tools/builtins/web/extract.d.ts +62 -0
  1007. package/dist/tools/builtins/web/extract.js +271 -0
  1008. package/dist/tools/builtins/web/fetch.d.ts +55 -0
  1009. package/dist/tools/builtins/web/fetch.js +175 -0
  1010. package/dist/tools/builtins/web/index.d.ts +13 -0
  1011. package/dist/tools/builtins/web/index.js +12 -0
  1012. package/dist/tools/builtins/web/page-cache.d.ts +25 -0
  1013. package/dist/tools/builtins/web/page-cache.js +77 -0
  1014. package/dist/tools/builtins/web/search.d.ts +25 -0
  1015. package/dist/tools/builtins/web/search.js +210 -0
  1016. package/dist/tools/builtins/web/url.d.ts +17 -0
  1017. package/dist/tools/builtins/web/url.js +43 -0
  1018. package/dist/tools/canonical-json.d.ts +6 -0
  1019. package/dist/tools/canonical-json.js +16 -0
  1020. package/dist/tools/connector-content.controller.d.ts +1 -1
  1021. package/dist/tools/connector-content.controller.js +11 -6
  1022. package/dist/tools/connector-content.d.ts +12 -15
  1023. package/dist/tools/connector-content.js +53 -18
  1024. package/dist/tools/connectors.controller.d.ts +16 -3
  1025. package/dist/tools/connectors.controller.js +34 -14
  1026. package/dist/tools/connectors.schemas.d.ts +12 -0
  1027. package/dist/tools/connectors.schemas.js +19 -0
  1028. package/dist/tools/connectors.service.d.ts +80 -18
  1029. package/dist/tools/connectors.service.js +529 -358
  1030. package/dist/tools/credentials.d.ts +20 -20
  1031. package/dist/tools/credentials.js +55 -34
  1032. package/dist/tools/display-names.d.ts +9 -0
  1033. package/dist/tools/display-names.js +24 -0
  1034. package/dist/tools/drift.d.ts +29 -41
  1035. package/dist/tools/drift.js +116 -84
  1036. package/dist/tools/elicitation.js +1 -1
  1037. package/dist/tools/extension-tools.controller.d.ts +14 -0
  1038. package/dist/tools/extension-tools.controller.js +37 -0
  1039. package/dist/tools/info.d.ts +73 -13
  1040. package/dist/tools/info.js +151 -39
  1041. package/dist/tools/job-ids.d.ts +13 -0
  1042. package/dist/tools/job-ids.js +15 -0
  1043. package/dist/tools/jobs.d.ts +24 -0
  1044. package/dist/tools/jobs.js +69 -0
  1045. package/dist/tools/legacy-data.d.ts +34 -0
  1046. package/dist/tools/legacy-data.js +76 -0
  1047. package/dist/tools/legacy-keys.d.ts +51 -0
  1048. package/dist/tools/legacy-keys.js +115 -0
  1049. package/dist/tools/naming.d.ts +1 -5
  1050. package/dist/tools/naming.js +1 -7
  1051. package/dist/tools/oauth/flow-paths.d.ts +16 -0
  1052. package/dist/tools/oauth/flow-paths.js +38 -0
  1053. package/dist/tools/oauth/flow.d.ts +30 -30
  1054. package/dist/tools/oauth/flow.js +109 -81
  1055. package/dist/tools/oauth/oauth.controller.d.ts +3 -3
  1056. package/dist/tools/oauth/oauth.controller.js +12 -9
  1057. package/dist/tools/oauth/tokens.d.ts +45 -10
  1058. package/dist/tools/oauth/tokens.js +70 -24
  1059. package/dist/tools/org-tool-switches.d.ts +88 -0
  1060. package/dist/tools/org-tool-switches.js +201 -0
  1061. package/dist/tools/outputs.d.ts +13 -4
  1062. package/dist/tools/outputs.js +48 -4
  1063. package/dist/tools/pipeline.d.ts +108 -80
  1064. package/dist/tools/pipeline.js +396 -409
  1065. package/dist/tools/policy.d.ts +4 -17
  1066. package/dist/tools/policy.js +49 -35
  1067. package/dist/tools/questions.controller.d.ts +2 -2
  1068. package/dist/tools/questions.controller.js +9 -6
  1069. package/dist/tools/questions.service.d.ts +26 -25
  1070. package/dist/tools/questions.service.js +201 -142
  1071. package/dist/tools/registry.d.ts +215 -84
  1072. package/dist/tools/registry.js +382 -264
  1073. package/dist/tools/resources.d.ts +1 -1
  1074. package/dist/tools/resources.js +1 -1
  1075. package/dist/tools/specs.d.ts +5 -4
  1076. package/dist/tools/specs.js +3 -1
  1077. package/dist/tools/tools.module.d.ts +10 -0
  1078. package/dist/tools/tools.module.js +113 -0
  1079. package/dist/tools/validate.js +1 -1
  1080. package/dist/ui/call-extension.d.ts +16 -0
  1081. package/dist/ui/call-extension.js +38 -0
  1082. package/dist/ui/embed-token.d.ts +9 -5
  1083. package/dist/ui/embed-token.js +34 -6
  1084. package/dist/ui/ui-stream.d.ts +22 -17
  1085. package/dist/ui/ui-stream.js +72 -12
  1086. package/dist/ui/ui.module.d.ts +7 -0
  1087. package/dist/ui/ui.module.js +28 -0
  1088. package/dist/ui/views.controller.d.ts +14 -12
  1089. package/dist/ui/views.controller.js +32 -25
  1090. package/dist/ui/views.d.ts +10 -57
  1091. package/dist/ui/views.js +58 -46
  1092. package/package.json +15 -3
  1093. package/src/migrations/0063_tool_keys_claude_code.sql +220 -0
  1094. package/src/migrations/0064_account_last_org.sql +7 -0
  1095. package/src/migrations/0065_conversation_archive.sql +8 -0
  1096. package/src/migrations/0066_extension_display_name.sql +4 -0
  1097. package/src/migrations/0067_agent_profiles.sql +20 -0
  1098. package/src/migrations/0068_agent_avatar_uploads.sql +7 -0
  1099. package/src/migrations/0069_attachments_agent_idx.sql +3 -0
  1100. package/src/migrations/0070_background_tasks.sql +37 -0
  1101. package/src/migrations/0071_background_tasks_reserve.sql +6 -0
  1102. package/src/migrations/0072_background_tasks_stopping.sql +5 -0
  1103. package/src/migrations/0073_org_extension_point_defaults.sql +11 -0
  1104. package/src/migrations/0074_subagent_tree.sql +50 -0
  1105. package/src/migrations/0075_plugin_scope.sql +61 -0
  1106. package/src/migrations/0076_skills_created_by_nullable.sql +6 -0
  1107. package/src/migrations/0077_scope_requests.sql +52 -0
  1108. package/src/migrations/0078_scope_grant_switches.sql +18 -0
  1109. package/src/migrations/0079_scope_live_install_switches.sql +19 -0
  1110. package/src/migrations/0080_rename_enterprise_admin.sql +18 -0
  1111. package/src/migrations/0081_platform_components.sql +129 -0
  1112. package/src/migrations/0082_platform_migration.sql +33 -0
  1113. package/src/migrations/0083_plugin_scope_sync_failures.sql +15 -0
  1114. package/src/migrations/0084_org_owned_items.sql +85 -0
  1115. package/src/migrations/0085_agent_templates_phase4.sql +45 -0
  1116. package/src/migrations/0086_org_layering.sql +30 -0
  1117. package/src/migrations/0087_approval_summary.sql +6 -0
  1118. package/src/migrations/0088_environments.sql +80 -0
  1119. package/src/migrations/0089_model_kinds_usage.sql +38 -0
  1120. package/src/migrations/0090_initial_passwords.sql +27 -0
  1121. package/src/migrations/0091_account_time_zone.sql +4 -0
  1122. package/src/migrations/0092_tools_default_on.sql +27 -0
  1123. package/src/migrations/0093_connected_environments.sql +37 -0
  1124. package/src/migrations/0094_environment_paths_idx.sql +7 -0
  1125. package/src/migrations/0095_environment_files_resets.sql +5 -0
  1126. package/src/migrations/0096_environment_demoted_default.sql +18 -0
  1127. package/src/migrations/0097_extension_installs_enabled_at.sql +16 -0
  1128. package/src/migrations/0098_single_provider_running_first.sql +41 -0
  1129. package/src/migrations/0099_channel_connection_guide_ack.sql +6 -0
  1130. package/src/migrations/0100_catalog_files.sql +13 -0
  1131. package/src/migrations/0101_marketplace_icons.sql +32 -0
  1132. package/dist/catalog/upgrade-targets.d.ts +0 -59
  1133. package/dist/catalog/upgrade-targets.js +0 -90
  1134. package/dist/conversations/sandbox-status.d.ts +0 -21
  1135. package/dist/conversations/sandbox-status.js +0 -24
  1136. package/dist/extensions/org-config.controller.d.ts +0 -24
  1137. package/dist/extensions/org-config.controller.js +0 -59
  1138. package/dist/http/gateway.module.js +0 -13
  1139. package/dist/http/health.controller.d.ts +0 -26
  1140. package/dist/http/health.controller.js +0 -79
  1141. package/dist/http/tokens.d.ts +0 -131
  1142. package/dist/http/tokens.js +0 -131
  1143. package/dist/http/zod.pipe.d.ts +0 -8
  1144. package/dist/http/zod.pipe.js +0 -14
  1145. package/dist/identity/enterprise-admin.d.ts +0 -14
  1146. package/dist/identity/enterprise-admin.js +0 -27
  1147. package/dist/identity/rate-limit.d.ts +0 -55
  1148. package/dist/identity/rate-limit.js +0 -121
  1149. package/dist/sandbox/lifecycle.d.ts +0 -21
  1150. package/dist/sandbox/lifecycle.js +0 -68
  1151. package/dist/tools/builtins/sandbox/names.d.ts +0 -7
  1152. package/dist/tools/builtins/sandbox/names.js +0 -20
@@ -1,24 +1,52 @@
1
- import { hostname } from "node:os";
2
- import { DelayedError, Worker } from "bullmq";
1
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
2
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
3
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
4
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
5
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
6
+ };
7
+ var __param = (this && this.__param) || function (paramIndex, decorator) {
8
+ return function (target, key) { decorator(target, key, paramIndex); }
9
+ };
10
+ import { Inject, Injectable, Optional } from "@nestjs/common";
11
+ import { DelayedError } from "bullmq";
3
12
  import { sql } from "kysely";
4
- import { normalizeStoredDefinition } from "../agents/definition.js";
13
+ import { EventLog } from "../conversations/event-log.js";
14
+ import { isAbsorbable, } from "../conversations/events.js";
5
15
  import { effectiveDefinition, NO_SELECTION, readSelection, sameModel, sameSelection, } from "../conversations/selection.js";
16
+ import { TitleQueue } from "../conversations/titles.js";
6
17
  import { ApiError } from "../errors.js";
7
- import { pinnedFailureText, recordSkillsCatalog } from "../skills/catalog.js";
18
+ import { SettingsService } from "../identity/settings.js";
19
+ import { waitWithin } from "../infra/close-within.js";
20
+ import { KernelConfigService } from "../infra/config/kernel-config.service.js";
21
+ import { KernelDb } from "../infra/database/kernel-db.js";
22
+ import { TransactionHost } from "../infra/database/transaction-host.js";
23
+ import { Transactional } from "../infra/database/transactional.decorator.js";
24
+ import { KernelEvents } from "../infra/events/kernel-events.js";
25
+ import { KERNEL_BUS, KERNEL_LOGGER } from "../infra/tokens.js";
26
+ import { pinnedFailureText, SkillsCatalogService } from "../skills/catalog.js";
27
+ import { normalizeStoredDefinitionIn } from "../tools/legacy-data.js";
28
+ import { ToolPipeline } from "../tools/pipeline.js";
29
+ import { RunAbort } from "./abort.js";
30
+ import { KyselyCheckpointSaver } from "./checkpointer.js";
31
+ import { ConversationLock } from "./conversation-lock.js";
8
32
  import { RunError } from "./model-call.js";
9
- import { ProviderListError } from "./providers.js";
10
- import { ORG_QUOTA_LEASE_MS, orgRunLimit } from "./quota.js";
11
- import { finishRun, TERMINAL_STATUSES } from "./run-finish.js";
12
- import { bullConnection, RUN_QUEUE_NAME, SUBAGENT_RUN_QUEUE_NAME, } from "./run-queue.js";
13
- import { dispatchOfChildRun } from "./subagents/child.js";
33
+ import { ProviderListError, ProviderRegistry } from "./providers.js";
34
+ import { ORG_QUOTA_LEASE_MS, orgRunLimit, RUN_QUOTA } from "./quota.js";
35
+ import { RunContextService } from "./run-context.service.js";
36
+ import { RunDrafts, streamSink } from "./run-drafts.js";
37
+ import { RunFinish, TERMINAL_STATUSES } from "./run-finish.js";
38
+ import { RunQueue } from "./run-queue.js";
39
+ import { AgentLoops, RunSteps } from "./run-steps.js";
40
+ import { dispatchOfChildRun, rootConversationOf } from "./subagents/child.js";
14
41
  import { childRunDefinition } from "./subagents/definition.js";
15
42
  import { forkBoundary } from "./subagents/skill-fork.js";
43
+ import { Waits } from "./waits.js";
16
44
  /** 会话锁被占用时任务延后的时间。 */
17
45
  const LOCK_BUSY_DELAY_MS = 1000;
18
46
  /** 组织配额已满时任务延后的时间。 */
19
47
  const QUOTA_FULL_DELAY_MS = 2000;
20
48
  /** BullMQ stalled 检测允许的最大次数(超过则任务失败)。 */
21
- const MAX_STALLED_COUNT = 3;
49
+ export const MAX_STALLED_COUNT = 3;
22
50
  /** 停机时等待任务结束后处理(ensureRun 等)的最短时间。 */
23
51
  const FOLLOW_UP_MIN_WAIT_MS = 250;
24
52
  /** 读插话的分页大小。 */
@@ -28,88 +56,176 @@ const READ_PAGE = 500;
28
56
  * 后续处理,由 close() 跟踪并限时;全部失败也不会让会话永远卡住——打开 SSE / 读事件时会再次 ensureRun。
29
57
  */
30
58
  const ENSURE_RETRY_DELAYS_MS = [200, 1000, 3000];
31
- const noopSink = () => { };
59
+ /** Optional provider: the run worker's {@link RunHooks} (tests). */
60
+ export const RUN_HOOKS = Symbol("RUN_HOOKS");
32
61
  /** 任务回到队列:延后 delayMs 再处理(不计入 attempts)。 */
33
62
  async function requeue(job, token, delayMs) {
34
63
  await job.moveToDelayed(Date.now() + delayMs, token);
35
64
  throw new DelayedError();
36
65
  }
37
66
  /**
38
- * 运行 worker(只在含 `worker` 角色的进程启动):领取 `cap-kernel-runs` 的任务,取会话锁与组织配额,
39
- * 调用 AgentLoop,按结果写终态事件并推进 `consumed_seq`;结束后再调用一次 `ensureRun` 处理
40
- * 运行期间到达但没被吸收的消息(Review Focus 2)。
67
+ * 运行 worker(只在含 `worker` 角色的进程消费):领取 `cap-kernel-runs` 与 `cap-kernel-subagent-runs` 的任务
68
+ * (两个 `@Processor`,见 run-processors.ts),取会话锁与组织配额,调用 AgentLoop,按结果写终态事件并推进
69
+ * `consumed_seq`;结束后再调用一次 `ensureRun` 处理运行期间到达但没被吸收的消息(Review Focus 2)。
41
70
  */
42
- export class RunWorker {
43
- d;
44
- /** One BullMQ worker per run queue: conversation runs and sub-agent runs (spec §7.4). */
71
+ let RunWorker = class RunWorker {
72
+ kdb;
73
+ eventLog;
74
+ lock;
75
+ quota;
76
+ abort;
77
+ queue;
78
+ settings;
79
+ config;
80
+ log;
81
+ bus;
82
+ checkpoints;
83
+ waits;
84
+ events;
85
+ titles;
86
+ models;
87
+ skillsCatalog;
88
+ runContext;
89
+ pipeline;
90
+ finisher;
91
+ txHost;
92
+ drafts;
93
+ hooks;
94
+ /** The two run queues' BullMQ workers (spec §7.4), once {@link start}ed on the worker role. */
45
95
  workers = [];
46
- /** 传给 Worker 的连接:BullMQ 不关闭调用方传入的连接,close() 时自己关。 */
47
- conn;
48
96
  active = new Map();
49
97
  /** 进行中的「任务结束后」处理(完成后的 ensureRun、失败标记):停机时等它们做完再关闭队列。 */
50
98
  followUps = new Set();
51
99
  closing = false;
52
100
  /** close() 开始时触发:ensureRun 重试不再等待退避间隔。 */
53
101
  closingSignal = new AbortController();
54
- constructor(d) {
55
- this.d = d;
102
+ loop;
103
+ constructor(kdb, eventLog, lock, quota, abort, queue, settings, loops, steps, config, log, bus,
104
+ /** 运行到达终态后删除该运行(thread_id = runId)的 checkpoint thread(只用于续跑,结束后无用)。 */
105
+ checkpoints,
106
+ /** loop 返回 `suspended` 后把运行置为 waiting(释放会话锁与配额之后); the child lifecycle. */
107
+ waits,
108
+ /** `run.started` (the channel outbound enqueues the conversation's IM delivery). */
109
+ events,
110
+ /** A completed run enqueues the conversation's title job. */
111
+ titles,
112
+ /** Resolves a switched-to model at run start (fallback when it is gone; UI refresh B). */
113
+ models,
114
+ /** Run start's skills catalog snapshot (reads the pinned skills' bodies, phase B). */
115
+ skillsCatalog,
116
+ /** Run start's run context (run context spec §5): who the agent is, the day, the person. */
117
+ runContext,
118
+ /**
119
+ * In the terminal transaction of every run: writes its open `Agent` call results
120
+ * (`stopOpenAgentCalls`; a no-op without dispatches); `fire` runs their observe hooks after the
121
+ * commit (sub-agents spec §12, review m1: a failed or stalled parent too).
122
+ */
123
+ pipeline, finisher, txHost,
124
+ /** The steps' live drafts this process writes for the runs it executes. */
125
+ drafts, hooks) {
126
+ this.kdb = kdb;
127
+ this.eventLog = eventLog;
128
+ this.lock = lock;
129
+ this.quota = quota;
130
+ this.abort = abort;
131
+ this.queue = queue;
132
+ this.settings = settings;
133
+ this.config = config;
134
+ this.log = log;
135
+ this.bus = bus;
136
+ this.checkpoints = checkpoints;
137
+ this.waits = waits;
138
+ this.events = events;
139
+ this.titles = titles;
140
+ this.models = models;
141
+ this.skillsCatalog = skillsCatalog;
142
+ this.runContext = runContext;
143
+ this.pipeline = pipeline;
144
+ this.finisher = finisher;
145
+ this.txHost = txHost;
146
+ this.drafts = drafts;
147
+ this.hooks = hooks;
148
+ this.loop = loops.create(steps.deps);
149
+ }
150
+ get db() {
151
+ return this.kdb.db;
56
152
  }
57
- start() {
58
- if (this.workers.length > 0)
153
+ /**
154
+ * Starts consuming (worker role only): `workers` are the `@Processor` workers of both run queues
155
+ * (built with `runtime.workerConcurrency`, `jobLockMs`, `stalledIntervalMs`; never autorun).
156
+ */
157
+ start(workers) {
158
+ if (this.workers.length > 0 || this.closing)
59
159
  return;
60
- const runtime = this.d.config().runtime;
61
- this.conn = bullConnection(this.d.redisUrl, this.d.log);
62
- for (const queue of [RUN_QUEUE_NAME, SUBAGENT_RUN_QUEUE_NAME]) {
63
- const worker = new Worker(queue, (job, token) => this.process(job, token), {
64
- // the worker name is recorded on the job (BullMQ processedBy): which replica ran it
65
- name: `${hostname()}-${process.pid}`,
66
- connection: this.conn,
67
- concurrency: runtime.workerConcurrency,
68
- lockDuration: runtime.jobLockMs,
69
- stalledInterval: runtime.stalledIntervalMs,
70
- maxStalledCount: MAX_STALLED_COUNT,
71
- });
72
- // ensureRun after a run goes after its job completed and left the queue: when the latest
73
- // unconsumed message is this run's own trigger (e.g. a run ended by its deadline without
74
- // absorbing it, R34), the new job has this job's id and would be dropped as a duplicate
75
- // while this one is still active. Relies on BullMQ moving the job to completed (deleted by
76
- // removeOnComplete) before emitting "completed" (pinned by the R34 test).
77
- worker.on("completed", (job, result) => {
78
- if (result !== "ensure")
79
- return;
80
- const { conversationId, runId } = job.data;
81
- this.track(this.ensureAfterRun(conversationId, runId));
82
- });
83
- worker.on("error", (err) => this.d.log.error("run worker error", { err, queue }));
84
- worker.on("failed", (job, err) => {
85
- this.d.log.error("run job failed", { jobId: job?.id, runId: job?.data.runId, err });
86
- if (job) {
87
- this.track(this.onJobFailed(job.data, err).catch((e) => this.d.log.error("cannot mark failed run job", { runId: job.data.runId, err: e })));
88
- }
89
- });
90
- this.workers.push(worker);
160
+ this.workers = workers;
161
+ for (const w of workers) {
162
+ void w.run().catch((err) => this.onError(err, w.name));
91
163
  }
92
164
  }
93
- /** Stops the active children of a finished run (see {@link RunWorkerDeps.stopChildren}). */
94
- async stopChildren(runId) {
95
- if (!this.d.stopChildren)
165
+ /** A worker's `error` event. */
166
+ onError(err, queue) {
167
+ this.log.error("run worker error", { err, queue });
168
+ }
169
+ /**
170
+ * A job completed (the worker's `completed` event). ensureRun after a run goes after its job
171
+ * completed and left the queue: when the latest unconsumed message is this run's own trigger
172
+ * (e.g. a run ended by its deadline without absorbing it, R34), the new job has this job's id
173
+ * and would be dropped as a duplicate while this one is still active. Relies on BullMQ moving
174
+ * the job to completed (deleted by removeOnComplete) before emitting "completed" (pinned by the
175
+ * R34 test).
176
+ */
177
+ onCompleted(job, result) {
178
+ if (result !== "ensure")
96
179
  return;
180
+ const { conversationId, runId } = job.data;
181
+ this.track(this.ensureAfterRun(conversationId, runId));
182
+ }
183
+ /** A job failed (the worker's `failed` event). */
184
+ onFailed(job, err) {
185
+ this.log.error("run job failed", { jobId: job?.id, runId: job?.data.runId, err });
186
+ if (job) {
187
+ this.track(this.onJobFailed(job.data, err).catch((e) => this.log.error("cannot mark failed run job", { runId: job.data.runId, err: e })));
188
+ }
189
+ }
190
+ /**
191
+ * The run's stream sink: deltas on the conversation's topic (any replica's subscribers get them)
192
+ * and the steps' live drafts in Redis ({@link streamSink}, spec 2026-11-07 §3.2).
193
+ */
194
+ sinkFor(conversationId) {
195
+ return streamSink(conversationId, { bus: this.bus, drafts: this.drafts, log: this.log });
196
+ }
197
+ /**
198
+ * After any terminal commit of a run that is not a sub-agent's (sub-agents spec §12): stops its
199
+ * active fork invocation child on its behalf (no account); background `Agent` children keep
200
+ * running (agent map spec §5.4). The wait sweep is the backstop.
201
+ */
202
+ async stopChildren(runId) {
97
203
  try {
98
- await this.d.stopChildren(runId);
204
+ await this.waits.stopChildren(runId, null);
99
205
  }
100
206
  catch (err) {
101
- this.d.log.error("cannot stop the sub-agents of a finished run", { runId, err });
207
+ this.log.error("cannot stop the sub-agents of a finished run", { runId, err });
102
208
  }
103
209
  }
104
- /** Reports a finished sub-agent run to its parent (see {@link RunWorkerDeps.onChildFinished}). */
210
+ /**
211
+ * After a sub-agent run's terminal state committed (sub-agents spec §7.3): reports it to the
212
+ * parent. Called with any run id whose conversation may be a child; runs that were not
213
+ * dispatched are ignored. Errors are logged (the wait sweep repairs a missed call).
214
+ */
105
215
  async childFinished(runId) {
106
- if (!this.d.onChildFinished)
107
- return;
108
216
  try {
109
- await this.d.onChildFinished(runId);
217
+ await this.waits.childFinished(runId);
218
+ }
219
+ catch (err) {
220
+ this.log.error("cannot report finished sub-agent run to its parent", { runId, err });
221
+ }
222
+ // a sub-agent a person stopped stops its descendants too, also one it dispatched after the
223
+ // tree stop read the tree (agent map spec §6); any other end leaves them running
224
+ try {
225
+ await this.waits.stopDescendantsOfStopped(runId);
110
226
  }
111
227
  catch (err) {
112
- this.d.log.error("cannot report finished sub-agent run to its parent", { runId, err });
228
+ this.log.error("cannot stop the descendants of a stopped sub-agent", { runId, err });
113
229
  }
114
230
  }
115
231
  /**
@@ -119,14 +235,14 @@ export class RunWorker {
119
235
  async ensureAfterRun(conversationId, runId) {
120
236
  for (let attempt = 0;; attempt++) {
121
237
  try {
122
- await this.d.hooks?.beforeEnsureRun?.(conversationId, attempt);
123
- await this.d.queue.ensureRun(conversationId);
238
+ await this.hooks?.beforeEnsureRun?.(conversationId, attempt);
239
+ await this.queue.ensureRun(conversationId);
124
240
  return;
125
241
  }
126
242
  catch (err) {
127
243
  const delay = ENSURE_RETRY_DELAYS_MS[attempt];
128
244
  if (delay === undefined) {
129
- this.d.log.error("ensureRun after run failed; giving up", {
245
+ this.log.error("ensureRun after run failed; giving up", {
130
246
  conversationId,
131
247
  runId,
132
248
  attempts: attempt + 1,
@@ -134,7 +250,7 @@ export class RunWorker {
134
250
  });
135
251
  return;
136
252
  }
137
- this.d.log.warn("ensureRun after run failed; retrying", {
253
+ this.log.warn("ensureRun after run failed; retrying", {
138
254
  conversationId,
139
255
  runId,
140
256
  attempt,
@@ -173,15 +289,15 @@ export class RunWorker {
173
289
  async onJobFailed(data, err) {
174
290
  const { runId, conversationId } = data;
175
291
  const stalled = /stalled/i.test(err.message);
176
- await this.d.lock.releaseFor(conversationId, runId);
292
+ await this.lock.releaseFor(conversationId, runId);
177
293
  // 运行已进入 waiting(暂停后任务才失败):它有自己的续跑路径(人工决定 / 超时任务),不标记失败。
178
- const cur = await this.d.db
294
+ const cur = await this.db
179
295
  .selectFrom("runs")
180
296
  .select("status")
181
297
  .where("id", "=", runId)
182
298
  .executeTakeFirst();
183
299
  if (cur?.status === "waiting") {
184
- this.d.log.warn("run job failed after the run was suspended; leaving it waiting", { runId });
300
+ this.log.warn("run job failed after the run was suspended; leaving it waiting", { runId });
185
301
  return;
186
302
  }
187
303
  await this.finish(conversationId, runId, "failed", null, {
@@ -214,25 +330,18 @@ export class RunWorker {
214
330
  this.workers = [];
215
331
  this.closing = true;
216
332
  this.closingSignal.abort();
217
- await Promise.all(workers.map((w) => w.pause(true).catch((err) => this.d.log.warn("run worker pause failed", { err }))));
333
+ await Promise.all(workers.map((w) => w.pause(true).catch((err) => this.log.warn("run worker pause failed", { err }))));
218
334
  for (const a of this.active.values())
219
335
  a.shutdown.abort();
220
336
  const all = Promise.all([...this.active.values()].map((a) => a.done));
221
- let timer;
222
- const finished = await Promise.race([
223
- all.then(() => true),
224
- new Promise((resolve) => {
225
- timer = setTimeout(() => resolve(false), Math.max(0, budgetMs));
226
- timer.unref();
227
- }),
228
- ]);
229
- clearTimeout(timer);
337
+ const finished = await waitWithin(all, budgetMs);
230
338
  if (!finished) {
231
339
  for (const [runId, a] of this.active) {
232
340
  a.abandoned = true;
233
341
  a.lease.abandon();
342
+ a.quota?.abandon();
234
343
  a.stopTimers();
235
- this.d.log.warn("run did not reach a step boundary before shutdown; leaving it to another worker", {
344
+ this.log.warn("run did not reach a step boundary before shutdown; leaving it to another worker", {
236
345
  runId,
237
346
  });
238
347
  }
@@ -241,26 +350,15 @@ export class RunWorker {
241
350
  // 关闭期间完成 / 失败的任务登记的后续处理(ensureRun 等)要在调用方关闭运行队列之前做完,
242
351
  // 否则投递半途被打断,待处理的消息无人处理。以剩余预算为限(至少留一点时间)。
243
352
  if (this.followUps.size > 0) {
244
- let t;
245
- await Promise.race([
246
- Promise.allSettled([...this.followUps]),
247
- new Promise((resolve) => {
248
- t = setTimeout(resolve, Math.max(FOLLOW_UP_MIN_WAIT_MS, deadline - Date.now()));
249
- t.unref();
250
- }),
251
- ]);
252
- clearTimeout(t);
353
+ await waitWithin(Promise.allSettled([...this.followUps]), Math.max(FOLLOW_UP_MIN_WAIT_MS, deadline - Date.now()));
253
354
  }
254
- const conn = this.conn;
255
- this.conn = undefined;
256
- if (conn)
257
- await conn.quit().catch(() => conn.disconnect());
258
355
  }
356
+ /** One run job (the `@Processor`s of both run queues call it). */
259
357
  async process(job, token) {
260
358
  const { runId, conversationId } = job.data;
261
359
  if (this.closing)
262
360
  return requeue(job, token, 0);
263
- const run = await this.d.db
361
+ const run = await this.db
264
362
  .selectFrom("runs")
265
363
  .select([
266
364
  "id",
@@ -270,6 +368,7 @@ export class RunWorker {
270
368
  "trigger_seq",
271
369
  "started_at",
272
370
  "waited_ms",
371
+ "budget_run_id",
273
372
  ])
274
373
  .where("id", "=", runId)
275
374
  .executeTakeFirst();
@@ -285,22 +384,22 @@ export class RunWorker {
285
384
  // 运行在等人处理(例如暂停后本任务被 stalled 机制重新投递):不执行,续跑由处理 / 超时发起的新任务负责。
286
385
  if (run.status === "waiting")
287
386
  return;
288
- const conv = await this.d.db
387
+ const conv = await this.db
289
388
  .selectFrom("conversations")
290
- .select(["org_id", "agent_id", "kind"])
389
+ .select(["org_id", "agent_id", "kind", "subagent_depth"])
291
390
  .where("id", "=", conversationId)
292
391
  .executeTakeFirst();
293
392
  if (!conv)
294
393
  return;
295
394
  // 会话锁 TTL 与任务锁一致:持有者崩溃后,任务被判定 stalled 时会话锁也差不多同时过期。
296
- const lease = await this.d.lock.acquire(conversationId, runId, this.d.hooks?.lockTtlMs ?? this.d.config().runtime.jobLockMs);
395
+ const lease = await this.lock.acquire(conversationId, runId, this.hooks?.lockTtlMs ?? this.config.get().runtime.jobLockMs);
297
396
  if (!lease)
298
397
  return requeue(job, token, LOCK_BUSY_DELAY_MS);
299
398
  // A sub-agent stopped while still queued (its parent's stop or wait timeout) ends here, before
300
399
  // taking an org run slot: under a full quota it would otherwise wait for a slot only to be
301
400
  // aborted, and its parent would stay waiting meanwhile (final review m7)
302
401
  if (conv.kind === "subagent" && run.status === "queued") {
303
- const stop = await this.d.abort.requested(runId);
402
+ const stop = await this.abort.requested(runId);
304
403
  if (stop !== null) {
305
404
  try {
306
405
  await this.finish(conversationId, runId, "aborted", null, {
@@ -315,7 +414,7 @@ export class RunWorker {
315
414
  finally {
316
415
  await lease
317
416
  .release()
318
- .catch((err) => this.d.log.warn("conversation lock release failed", { runId, err }));
417
+ .catch((err) => this.log.warn("conversation lock release failed", { runId, err }));
319
418
  }
320
419
  await this.dropCheckpoints(runId);
321
420
  await this.childFinished(runId);
@@ -345,30 +444,28 @@ export class RunWorker {
345
444
  let entered = false;
346
445
  let delayMs = null;
347
446
  try {
348
- const limit = await orgRunLimit(this.d.settings, this.d.config, conv.org_id);
349
- entered = await this.d.quota.tryEnter(conv.org_id, runId, limit, ORG_QUOTA_LEASE_MS);
447
+ const limit = await orgRunLimit(this.settings, this.config, conv.org_id);
448
+ const slot = await this.quota.enter(conv.org_id, runId, limit, ORG_QUOTA_LEASE_MS);
449
+ if (slot !== undefined)
450
+ state.quota = slot;
451
+ entered = slot !== undefined;
350
452
  if (!entered) {
351
453
  delayMs = QUOTA_FULL_DELAY_MS;
352
454
  }
353
455
  else {
354
456
  // 运行开始执行(含续跑、stalled 后接手):通知旁路(渠道出站投递据此把输出投到 IM),失败不影响运行
355
- try {
356
- this.d.onRunStart?.(conversationId);
357
- }
358
- catch (err) {
359
- this.d.log.warn("onRunStart hook failed", { conversationId, err });
360
- }
457
+ void this.events.emit("run.started", { conversationId, runId });
361
458
  const r = await this.execute(run, { id: conversationId, ...conv }, state).catch(async (err) => {
362
459
  if (state.abandoned)
363
460
  return "abandoned";
364
461
  if (state.leaseLost)
365
462
  return "interrupted";
366
463
  // 编排自身出错(如写事件失败):尽力把运行标记为失败,避免会话卡在 running。
367
- this.d.log.error("run orchestration failed", { conversationId, runId, err });
464
+ this.log.error("run orchestration failed", { conversationId, runId, err });
368
465
  await this.finish(conversationId, runId, "failed", null, {
369
466
  type: "run_failed",
370
467
  payload: { error: { code: "run.internal", message: "The run failed unexpectedly" } },
371
- }).catch((e) => this.d.log.error("cannot mark run as failed", { runId, err: e }));
468
+ }).catch((e) => this.log.error("cannot mark run as failed", { runId, err: e }));
372
469
  return "broken";
373
470
  });
374
471
  if (r === "interrupted")
@@ -378,16 +475,14 @@ export class RunWorker {
378
475
  finally {
379
476
  state.stopTimers();
380
477
  if (!state.abandoned) {
381
- if (entered) {
382
- await this.d.quota
383
- .leave(conv.org_id, runId)
384
- .catch((err) => this.d.log.warn("org quota leave failed", { runId, err }));
385
- }
478
+ // releasing the slot stops its renewal and leaves (a failure is logged by the lock service)
479
+ if (entered)
480
+ await state.quota?.release();
386
481
  // 锁已丢失时不释放(已不属于本运行;RELEASE 虽比对 runId,这里也不再触碰)。
387
482
  if (!state.leaseLost) {
388
483
  await lease
389
484
  .release()
390
- .catch((err) => this.d.log.warn("conversation lock release failed", { runId, err }));
485
+ .catch((err) => this.log.warn("conversation lock release failed", { runId, err }));
391
486
  }
392
487
  }
393
488
  this.active.delete(runId);
@@ -400,7 +495,7 @@ export class RunWorker {
400
495
  // 暂停:会话锁与配额已释放,checkpoint 保留;置 waiting 并投递超时任务。任务就此完成,不 ensureRun
401
496
  // (等待期间的新消息在续跑后作为插话吸收)。
402
497
  if (state.suspended) {
403
- await this.d.waits.suspend(runId, conversationId, state.suspended.waitingFor, state.suspended.abort);
498
+ await this.waits.suspend(runId, conversationId, state.suspended.waitingFor, state.suspended.abort);
404
499
  return;
405
500
  }
406
501
  // 运行已到达终态(broken 时已尽力标记失败):checkpoint 只用于续跑,删除。
@@ -414,51 +509,72 @@ export class RunWorker {
414
509
  async execute(run, conv, state) {
415
510
  const runId = run.id;
416
511
  const conversationId = conv.id;
417
- const runtime = this.d.config().runtime;
512
+ const runtime = this.config.get().runtime;
418
513
  let agent;
419
514
  // a chat run's saved agent version, under the conversation's model switch (UI refresh B); a
420
515
  // sub-agent has none: it never takes a selection
421
516
  let saved;
422
517
  let maxSteps = runtime.maxSteps;
423
518
  let parent;
519
+ /** A sub-agent's name in its run context: the roster name, or the forked skill's. */
520
+ let childName;
424
521
  if (conv.kind === "subagent") {
425
522
  // a sub-agent runs its effective definition frozen at dispatch, never agent_versions
426
523
  // (spec §6.3), and works for the parent call that dispatched this run
427
- const started = await this.d.eventLog.findByIdem(conversationId, "subagent_started");
524
+ const started = await this.eventLog.findByIdem(conversationId, "subagent_started");
428
525
  if (started?.type !== "subagent_started") {
429
526
  throw new Error(`sub-agent conversation ${conversationId} has no subagent_started`);
430
527
  }
431
528
  // a follow-up runs with its task message's narrowing (final review I1): the frozen tools
432
529
  // and org skills the current version still allows, recorded at its dispatch
433
- const trigger = (await this.d.eventLog.readAfter(conversationId, Number(run.trigger_seq) - 1, 1))[0];
434
- agent = childRunDefinition(normalizeStoredDefinition(started.payload.definition), trigger?.type === "user_message" && trigger.seq === Number(run.trigger_seq)
530
+ const trigger = (await this.eventLog.readAfter(conversationId, Number(run.trigger_seq) - 1, 1))[0];
531
+ agent = childRunDefinition(await normalizeStoredDefinitionIn(this.db, conv.org_id, started.payload.definition), trigger?.type === "user_message" && trigger.seq === Number(run.trigger_seq)
435
532
  ? trigger.payload.dispatch?.narrowed
436
533
  : undefined);
437
534
  maxSteps = Math.min(started.payload.maxSteps, runtime.maxSteps);
438
- const row = await dispatchOfChildRun(this.d.db, runId);
535
+ childName = started.payload.template.invokedSkill?.name ?? started.payload.agentType;
536
+ const row = await dispatchOfChildRun(this.db, runId);
439
537
  const otherAgent = started.payload.template.source === "agent";
538
+ const parentConversationId = row?.parentConversationId ?? started.payload.parent.conversationId;
539
+ // a sub-agent conversation is at depth 1 at least: one written before depths were recorded
540
+ // (default 0) was a child of a root
541
+ const depth = Math.max(conv.subagent_depth, 1) - 1;
542
+ const rootConversationId = depth === 0
543
+ ? parentConversationId
544
+ : await rootConversationOf(this.db, parentConversationId);
545
+ // the tree's budget window of THIS run (agent map spec §6): its own `budget_run_id`, set when
546
+ // it was created (a dispatch, or a wake run from the root's current window), else its
547
+ // dispatch's; never derived from the parent run, which for a wake run is the first dispatch's
548
+ const budgetRunId = run.budget_run_id ?? row?.budgetRunId;
440
549
  parent = row
441
550
  ? {
442
551
  conversationId: row.parentConversationId,
443
552
  runId: row.parentRunId,
444
553
  callId: row.parentCallId,
554
+ depth,
555
+ rootConversationId,
445
556
  otherAgent,
557
+ ...(budgetRunId !== undefined && { budgetRunId }),
558
+ ...(row.forSkill === true && { forSkill: true }),
446
559
  }
447
560
  : {
448
561
  conversationId: started.payload.parent.conversationId,
449
562
  runId: started.payload.parent.runId,
450
563
  callId: started.payload.parent.callId,
564
+ depth,
565
+ rootConversationId,
451
566
  otherAgent,
567
+ ...(budgetRunId !== undefined && { budgetRunId }),
452
568
  };
453
569
  }
454
570
  else {
455
- const version = await this.d.db
571
+ const version = await this.db
456
572
  .selectFrom("agent_versions")
457
573
  .select("definition")
458
574
  .where("agent_id", "=", conv.agent_id)
459
575
  .where("version", "=", run.agent_version)
460
576
  .executeTakeFirstOrThrow();
461
- saved = normalizeStoredDefinition(version.definition);
577
+ saved = await normalizeStoredDefinitionIn(this.db, conv.org_id, version.definition);
462
578
  agent = saved;
463
579
  }
464
580
  let startedAt = run.started_at;
@@ -466,66 +582,40 @@ export class RunWorker {
466
582
  // run's `run_started`, read under the conversation lock when the run starts, so a replay
467
583
  // (`selectionAt`) sees exactly what the run used.
468
584
  // A sub-agent (no `saved`) runs its frozen definition as is.
469
- const existingStart = await this.d.eventLog.findByIdem(conversationId, `run_started:${runId}`);
585
+ const existingStart = await this.eventLog.findByIdem(conversationId, `run_started:${runId}`);
470
586
  if (existingStart && saved !== undefined) {
471
- agent = effectiveDefinition(saved, await readSelection(this.d.db, conversationId, existingStart.seq));
587
+ agent = effectiveDefinition(saved, await readSelection(this.db, conversationId, existingStart.seq));
472
588
  }
473
589
  if (run.status === "queued" || startedAt === null) {
474
590
  if (!existingStart) {
475
591
  if (saved !== undefined)
476
- await this.fallBackIfUnavailable(conversationId, runId, saved);
477
- const toSeq = await this.d.db.transaction().execute(async (t) => {
478
- await t
479
- .selectFrom("conversations")
480
- .select("id")
481
- .where("id", "=", conversationId)
482
- .forUpdate()
483
- .execute();
484
- if (saved !== undefined) {
485
- agent = effectiveDefinition(saved, await readSelection(t, conversationId));
486
- }
487
- const [ev] = await this.d.eventLog.append(conversationId, [
488
- {
489
- type: "run_started",
490
- runId,
491
- idemKey: `run_started:${runId}`,
492
- payload: {
493
- agentVersion: run.agent_version,
494
- model: agent.model,
495
- triggerAccountId: run.trigger_account_id,
496
- },
497
- },
498
- ], t);
499
- return ev?.seq;
500
- });
592
+ await this.fallBackIfUnavailable(conv.org_id, conversationId, runId, saved);
593
+ const started = await this.appendRunStarted(conversationId, run, agent, saved);
594
+ agent = started.agent;
595
+ const toSeq = started.toSeq;
501
596
  if (toSeq !== undefined)
502
- await this.d.eventLog.notify(conversationId, toSeq);
597
+ await this.eventLog.notify(conversationId, toSeq);
503
598
  }
504
599
  // 技能目录快照(Ruling M17):在置为 running 之前写,崩溃重试时仍走这里(幂等键去重)
505
600
  try {
506
- await recordSkillsCatalog({
507
- db: this.d.db,
508
- eventLog: this.d.eventLog,
509
- log: this.d.log,
510
- ...(this.d.storage !== undefined && { storage: this.d.storage }),
511
- }, {
601
+ await this.skillsCatalog.record({
512
602
  orgId: conv.org_id,
513
603
  agentId: conv.agent_id,
514
604
  conversationId,
515
605
  runId,
516
606
  agent,
517
- });
607
+ }, { log: this.log });
518
608
  }
519
609
  catch (e) {
520
610
  // Pinned skill bodies could not be read (Decision 9), or the pinned skills kept changing
521
611
  // while they were read (`conflict`): fail before any model request. A transient failure
522
612
  // or a conflict is fixed by sending again; a permanent one names the skill for the owner
523
- // (`recordSkillsCatalog` already logged it at error). Other errors take the generic path.
613
+ // (`SkillsCatalogService.record` already logged it at error). Other errors take the generic path.
524
614
  if (!(e instanceof ApiError) ||
525
615
  (e.code !== "storage.unavailable" && e.code !== "conflict")) {
526
616
  throw e;
527
617
  }
528
- this.d.log.warn("skills catalog not recorded at run start", {
618
+ this.log.warn("skills catalog not recorded at run start", {
529
619
  conversationId,
530
620
  runId,
531
621
  code: e.code,
@@ -538,7 +628,23 @@ export class RunWorker {
538
628
  });
539
629
  return "finished";
540
630
  }
541
- const updated = await this.d.db
631
+ // run context (spec §5): after the catalog, before the run is running, so before any
632
+ // compaction and model call; a retried run start finds its event or no change
633
+ await this.runContext.record({
634
+ orgId: conv.org_id,
635
+ conversationId,
636
+ runId,
637
+ triggerSeq: Number(run.trigger_seq),
638
+ agent,
639
+ ...(parent !== undefined && {
640
+ subagent: {
641
+ parentConversationId: parent.conversationId,
642
+ parentRunId: parent.runId,
643
+ name: childName ?? agent.name,
644
+ },
645
+ }),
646
+ });
647
+ const updated = await this.db
542
648
  .updateTable("runs")
543
649
  .set({ status: "running", started_at: sql `COALESCE(started_at, now())` })
544
650
  .where("id", "=", runId)
@@ -556,44 +662,34 @@ export class RunWorker {
556
662
  deadlineHit = true;
557
663
  ac.abort();
558
664
  }, Math.max(0, deadline - Date.now()));
559
- const quotaTimer = setInterval(() => {
560
- this.d.quota
561
- .renew(conv.org_id, runId, ORG_QUOTA_LEASE_MS)
562
- .then((ok) => {
563
- if (!ok)
564
- this.d.log.warn("org quota lease lost", { runId, orgId: conv.org_id });
565
- })
566
- .catch((err) => this.d.log.warn("org quota renew failed", { runId, err }));
567
- }, ORG_QUOTA_LEASE_MS / 3);
568
- quotaTimer.unref();
569
665
  state.stopTimers = () => {
570
666
  clearTimeout(deadlineTimer);
571
- clearInterval(quotaTimer);
572
667
  };
573
668
  let unwatch;
574
669
  try {
575
- unwatch = await this.d.abort.watch(runId, (by, detail) => {
670
+ unwatch = await this.abort.watch(runId, (by, detail) => {
576
671
  abortedBy = by;
577
672
  abortDetail = detail;
578
673
  ac.abort();
579
674
  });
580
675
  // 取得会话锁之后再读 consumed_seq(锁内不会有别的运行推进它)。
581
- const { consumed_seq } = await this.d.db
676
+ const { consumed_seq } = await this.db
582
677
  .selectFrom("conversations")
583
678
  .select("consumed_seq")
584
679
  .where("id", "=", conversationId)
585
680
  .executeTakeFirstOrThrow();
586
681
  const startConsumed = Number(consumed_seq);
587
682
  let absorbed = startConsumed;
588
- const pendingUserMessages = async (afterSeq) => {
683
+ const pendingAbsorbable = async (afterSeq) => {
589
684
  // loop 声明已吸收到 afterSeq(续跑时来自 checkpoint,可能包含之前进程吸收的消息)。
590
685
  absorbed = Math.max(absorbed, afterSeq);
591
686
  const out = [];
592
687
  let after = Math.max(afterSeq, startConsumed);
593
688
  for (;;) {
594
- const page = await this.d.eventLog.readAfter(conversationId, after, READ_PAGE);
689
+ const page = await this.eventLog.readAfter(conversationId, after, READ_PAGE);
690
+ // messages and finished background tasks (spec 2026-11-05-background-bash-design §2.4)
595
691
  for (const e of page)
596
- if (e.type === "user_message")
692
+ if (isAbsorbable(e))
597
693
  out.push(e);
598
694
  const last = page.at(-1);
599
695
  if (page.length < READ_PAGE || !last)
@@ -609,7 +705,7 @@ export class RunWorker {
609
705
  };
610
706
  let outcome;
611
707
  try {
612
- outcome = await this.d.loop.run({
708
+ outcome = await this.loop.run({
613
709
  orgId: conv.org_id,
614
710
  conversationId,
615
711
  runId,
@@ -619,8 +715,8 @@ export class RunWorker {
619
715
  agentVersion: run.agent_version,
620
716
  signal: ac.signal,
621
717
  shutdown: state.shutdown.signal,
622
- sink: this.d.sinkFor?.(conversationId) ?? noopSink,
623
- pendingUserMessages,
718
+ sink: this.sinkFor(conversationId),
719
+ pendingAbsorbable,
624
720
  limits: { maxSteps, deadline },
625
721
  // a sub-agent's conversation fires hooks like a chat, with `parent` set (spec §11)
626
722
  conversationKind: conv.kind === "eval" ? "eval" : conv.kind === "subagent" ? "subagent" : "chat",
@@ -634,7 +730,7 @@ export class RunWorker {
634
730
  return "interrupted";
635
731
  const err = e instanceof RunError ? e : new RunError("run.internal", "The run failed unexpectedly");
636
732
  if (!(e instanceof RunError)) {
637
- this.d.log.error("agent loop threw", { conversationId, runId, err: e });
733
+ this.log.error("agent loop threw", { conversationId, runId, err: e });
638
734
  }
639
735
  // 失败也推进 consumed_seq 到已吸收的位置:否则结束时的 ensureRun 会对同一条消息无限重试;
640
736
  // 用户看到 run_failed 后可以重发。
@@ -644,6 +740,10 @@ export class RunWorker {
644
740
  });
645
741
  return "finished";
646
742
  }
743
+ finally {
744
+ // the execution here ended: what this process held of the run's drafts goes
745
+ this.drafts.release(runId);
746
+ }
647
747
  if (state.abandoned)
648
748
  return "abandoned";
649
749
  // 锁在运行中丢失:无论 loop 返回什么都不写终态,任务回到队列由持锁者续跑。
@@ -701,32 +801,26 @@ export class RunWorker {
701
801
  }
702
802
  finally {
703
803
  state.stopTimers();
704
- await unwatch?.().catch((err) => this.d.log.warn("abort unwatch failed", { runId, err }));
804
+ await unwatch?.().catch((err) => this.log.warn("abort unwatch failed", { runId, err }));
705
805
  }
706
806
  }
707
807
  completed(conversationId) {
708
- try {
709
- this.d.onRunCompleted?.(conversationId);
710
- }
711
- catch (err) {
712
- this.d.log.warn("onRunCompleted hook failed", { conversationId, err });
713
- }
808
+ // a completed run enqueues the conversation's title job (never throws)
809
+ void this.titles.maybeEnqueue(conversationId);
714
810
  }
715
811
  /**
716
812
  * When the conversation was switched to a model that no longer resolves (provider disabled,
717
813
  * model removed), writes `model_switched { model: null, effort: null, reason: "unavailable" }`
718
814
  * for this run (idempotent) and clears the cached selection: the run and the next ones use the
719
815
  * agent's model. A provider that only failed to list its models is not "gone" (the run's ladder
720
- * handles it).
816
+ * handles it). Resolved for the conversation's org (its effective provider config).
721
817
  */
722
- async fallBackIfUnavailable(conversationId, runId, agent) {
723
- if (!this.d.models)
724
- return;
725
- const sel = await readSelection(this.d.db, conversationId);
818
+ async fallBackIfUnavailable(orgId, conversationId, runId, agent) {
819
+ const sel = await readSelection(this.db, conversationId);
726
820
  if (sel.model === null || sameModel(sel.model, agent.model))
727
821
  return;
728
822
  try {
729
- await this.d.models.resolve(sel.model);
823
+ await this.models.resolve(orgId, sel.model);
730
824
  return;
731
825
  }
732
826
  catch (e) {
@@ -735,71 +829,153 @@ export class RunWorker {
735
829
  if (!(e instanceof ApiError && e.code === "agent.model_unavailable"))
736
830
  throw e;
737
831
  }
738
- this.d.log.warn("switched-to model unavailable; falling back to the agent's model", {
832
+ this.log.warn("switched-to model unavailable; falling back to the agent's model", {
739
833
  conversationId,
740
834
  runId,
741
835
  model: sel.model,
742
836
  });
743
- const ev = await this.d.db.transaction().execute(async (t) => {
744
- // re-check under the row lock: a person who switched again since the read above wins
745
- await t
746
- .selectFrom("conversations")
747
- .select("id")
748
- .where("id", "=", conversationId)
749
- .forUpdate()
750
- .executeTakeFirst();
751
- if (!sameSelection(await readSelection(t, conversationId), sel))
752
- return null;
753
- const [written] = await this.d.eventLog.append(conversationId, [
754
- {
755
- type: "model_switched",
756
- runId,
757
- idemKey: `model_fallback:${runId}`,
758
- payload: { model: null, effort: null, byAccountId: null, reason: "unavailable" },
759
- },
760
- ], t);
761
- await t
762
- .updateTable("conversations")
763
- .set({ selection: JSON.stringify(NO_SELECTION) })
764
- .where("id", "=", conversationId)
765
- .execute();
766
- return written ?? null;
767
- });
837
+ const ev = await this.fallBackIn(conversationId, runId, sel);
768
838
  if (ev === null)
769
839
  return;
770
- await this.d.eventLog.notify(conversationId, ev.seq);
771
- await this.d.eventLog.publishChanged(conversationId, "selection");
840
+ await this.eventLog.notify(conversationId, ev.seq);
841
+ await this.eventLog.publishChanged(conversationId, "selection");
842
+ }
843
+ /**
844
+ * `run_started` under the conversation row lock, with the model / effort switch in effect then
845
+ * (a chat run's `saved` version under the conversation's selection): what the run uses.
846
+ */
847
+ async appendRunStarted(conversationId, run,
848
+ /** The definition so far (a sub-agent's frozen one is final). */
849
+ current, saved) {
850
+ const t = this.db;
851
+ await t
852
+ .selectFrom("conversations")
853
+ .select("id")
854
+ .where("id", "=", conversationId)
855
+ .forUpdate()
856
+ .execute();
857
+ const agent = saved !== undefined
858
+ ? effectiveDefinition(saved, await readSelection(t, conversationId))
859
+ : current;
860
+ // a wake run's boundary is a finished background task (background Bash §3) or a sub-agent's
861
+ // delivery (agent map spec §5.3), not a message
862
+ const boundary = await t
863
+ .selectFrom("conversation_events")
864
+ .select("type")
865
+ .where("conversation_id", "=", conversationId)
866
+ .where("seq", "=", run.trigger_seq)
867
+ .executeTakeFirst();
868
+ const [ev] = await this.eventLog.appendIn(conversationId, [
869
+ {
870
+ type: "run_started",
871
+ runId: run.id,
872
+ idemKey: `run_started:${run.id}`,
873
+ payload: {
874
+ agentVersion: run.agent_version,
875
+ model: agent.model,
876
+ triggerAccountId: run.trigger_account_id,
877
+ ...(boundary?.type === "background_task_finished" && {
878
+ trigger: "background_task",
879
+ triggerSeq: Number(run.trigger_seq),
880
+ }),
881
+ ...(boundary?.type === "subagent_delivery" && {
882
+ trigger: "subagent",
883
+ triggerSeq: Number(run.trigger_seq),
884
+ }),
885
+ },
886
+ },
887
+ ]);
888
+ return { toSeq: ev?.seq, agent };
889
+ }
890
+ /** {@link fallBackIfUnavailable}'s write: null when the person switched again meanwhile. */
891
+ async fallBackIn(conversationId, runId, sel) {
892
+ const t = this.db;
893
+ // re-check under the row lock: a person who switched again since the read above wins
894
+ await t
895
+ .selectFrom("conversations")
896
+ .select("id")
897
+ .where("id", "=", conversationId)
898
+ .forUpdate()
899
+ .executeTakeFirst();
900
+ if (!sameSelection(await readSelection(t, conversationId), sel))
901
+ return null;
902
+ const [written] = await this.eventLog.appendIn(conversationId, [
903
+ {
904
+ type: "model_switched",
905
+ runId,
906
+ idemKey: `model_fallback:${runId}`,
907
+ payload: { model: null, effort: null, byAccountId: null, reason: "unavailable" },
908
+ },
909
+ ]);
910
+ await t
911
+ .updateTable("conversations")
912
+ .set({ selection: JSON.stringify(NO_SELECTION) })
913
+ .where("id", "=", conversationId)
914
+ .execute();
915
+ return written ?? null;
772
916
  }
773
917
  /** 删除已结束运行的 checkpoint thread(失败只记日志)。 */
774
918
  async dropCheckpoints(runId) {
775
- await this.d.checkpoints
776
- ?.deleteThread(runId)
777
- .catch((err) => this.d.log.warn("checkpoint delete failed", { runId, err }));
919
+ await this.checkpoints
920
+ .deleteThread(runId)
921
+ .catch((err) => this.log.warn("checkpoint delete failed", { runId, err }));
778
922
  }
779
923
  /**
780
924
  * 写终态(见 `finishRun`:运行仍未结束才写,同一事务内推进 `consumed_seq` 并更新 `runs.status`),
781
925
  * 提交后发布会话通知,然后调用测试钩子。返回终态事件 seq;运行已是终态 → null。
782
926
  */
783
927
  async finish(conversationId, runId, status, consumed, event, hook = true, floorToTrigger = true) {
784
- const stopOpen = this.d.stopOpenCalls;
785
928
  let fire = () => { };
786
- const toSeq = await finishRun(this.d.db, this.d.eventLog, {
929
+ const toSeq = await this.finisher.finish({
787
930
  conversationId,
788
931
  runId,
789
932
  status,
790
933
  consumed,
791
934
  event,
792
935
  floorToTrigger,
793
- ...(stopOpen !== undefined && {
794
- beforeTerminal: async (t) => {
795
- fire = (await stopOpen(t, runId)).fire;
796
- },
797
- }),
936
+ beforeTerminal: async () => {
937
+ fire = (await this.pipeline.stopOpenAgentCalls(runId)).fire;
938
+ },
798
939
  });
799
940
  if (toSeq !== null)
800
941
  fire();
801
942
  if (hook)
802
- await this.d.hooks?.beforeRelease?.(runId, conversationId);
943
+ await this.hooks?.beforeRelease?.(runId, conversationId);
803
944
  return toSeq;
804
945
  }
805
- }
946
+ };
947
+ __decorate([
948
+ Transactional({ propagation: "requires_new" })
949
+ ], RunWorker.prototype, "appendRunStarted", null);
950
+ __decorate([
951
+ Transactional({ propagation: "requires_new" })
952
+ ], RunWorker.prototype, "fallBackIn", null);
953
+ RunWorker = __decorate([
954
+ Injectable(),
955
+ __param(0, Inject(KernelDb)),
956
+ __param(1, Inject(EventLog)),
957
+ __param(2, Inject(ConversationLock)),
958
+ __param(3, Inject(RUN_QUOTA)),
959
+ __param(4, Inject(RunAbort)),
960
+ __param(5, Inject(RunQueue)),
961
+ __param(6, Inject(SettingsService)),
962
+ __param(7, Inject(AgentLoops)),
963
+ __param(8, Inject(RunSteps)),
964
+ __param(9, Inject(KernelConfigService)),
965
+ __param(10, Inject(KERNEL_LOGGER)),
966
+ __param(11, Inject(KERNEL_BUS)),
967
+ __param(12, Inject(KyselyCheckpointSaver)),
968
+ __param(13, Inject(Waits)),
969
+ __param(14, Inject(KernelEvents)),
970
+ __param(15, Inject(TitleQueue)),
971
+ __param(16, Inject(ProviderRegistry)),
972
+ __param(17, Inject(SkillsCatalogService)),
973
+ __param(18, Inject(RunContextService)),
974
+ __param(19, Inject(ToolPipeline)),
975
+ __param(20, Inject(RunFinish)),
976
+ __param(21, Inject(TransactionHost)),
977
+ __param(22, Inject(RunDrafts)),
978
+ __param(23, Optional()),
979
+ __param(23, Inject(RUN_HOOKS))
980
+ ], RunWorker);
981
+ export { RunWorker };