@capybara-hq/kernel 0.1.0-rc.1 → 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 (1146) hide show
  1. package/bootstrap.json +85 -5
  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 -202
  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 +36 -2
  228. package/dist/config/schema.js +226 -25
  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 -71
  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/secrets.d.ts +10 -2
  279. package/dist/ctx/secrets.js +7 -3
  280. package/dist/db/kernel-schema.d.ts +550 -25
  281. package/dist/db/pool.d.ts +10 -0
  282. package/dist/db/pool.js +4 -0
  283. package/dist/devices/device-auth.controller.d.ts +42 -0
  284. package/dist/devices/device-auth.controller.js +116 -0
  285. package/dist/devices/device-auth.d.ts +119 -0
  286. package/dist/devices/device-auth.js +403 -0
  287. package/dist/devices/device-auth.module.d.ts +7 -0
  288. package/dist/devices/device-auth.module.js +25 -0
  289. package/dist/devices/device-gateway.d.ts +128 -0
  290. package/dist/devices/device-gateway.js +530 -0
  291. package/dist/devices/device-provider.d.ts +89 -0
  292. package/dist/devices/device-provider.js +151 -0
  293. package/dist/devices/device-routes.d.ts +36 -0
  294. package/dist/devices/device-routes.js +90 -0
  295. package/dist/devices/devices.module.d.ts +16 -0
  296. package/dist/devices/devices.module.js +44 -0
  297. package/dist/devices/dto.d.ts +66 -0
  298. package/dist/devices/dto.js +44 -0
  299. package/dist/devices/keys.d.ts +25 -0
  300. package/dist/devices/keys.js +25 -0
  301. package/dist/devices/machines.d.ts +118 -0
  302. package/dist/devices/machines.js +366 -0
  303. package/dist/devices/relay.d.ts +100 -0
  304. package/dist/devices/relay.js +373 -0
  305. package/dist/devices/targets.d.ts +28 -0
  306. package/dist/devices/targets.js +73 -0
  307. package/dist/environments/access.d.ts +66 -0
  308. package/dist/environments/access.js +113 -0
  309. package/dist/environments/conversation-environments.d.ts +75 -0
  310. package/dist/environments/conversation-environments.js +231 -0
  311. package/dist/environments/dto.d.ts +25 -0
  312. package/dist/environments/dto.js +12 -0
  313. package/dist/environments/environments.controller.d.ts +36 -0
  314. package/dist/environments/environments.controller.js +124 -0
  315. package/dist/environments/environments.module.d.ts +8 -0
  316. package/dist/environments/environments.module.js +31 -0
  317. package/dist/environments/environments.schemas.d.ts +3 -0
  318. package/dist/environments/environments.schemas.js +14 -0
  319. package/dist/environments/environments.service.d.ts +251 -0
  320. package/dist/environments/environments.service.js +791 -0
  321. package/dist/environments/label.d.ts +11 -0
  322. package/dist/environments/label.js +25 -0
  323. package/dist/environments/legacy-cleanup.job.d.ts +34 -0
  324. package/dist/environments/legacy-cleanup.job.js +141 -0
  325. package/dist/errors.d.ts +135 -2
  326. package/dist/errors.js +135 -2
  327. package/dist/evals/budget.d.ts +42 -21
  328. package/dist/evals/budget.js +114 -62
  329. package/dist/evals/evals.module.d.ts +31 -0
  330. package/dist/evals/evals.module.js +114 -0
  331. package/dist/evals/evals.schemas.d.ts +110 -0
  332. package/dist/evals/evals.schemas.js +107 -0
  333. package/dist/evals/jobs.d.ts +20 -0
  334. package/dist/evals/jobs.js +45 -0
  335. package/dist/evals/reconstruct.d.ts +18 -9
  336. package/dist/evals/reconstruct.js +36 -10
  337. package/dist/evals/recorded-tools.d.ts +37 -1
  338. package/dist/evals/recorded-tools.js +120 -10
  339. package/dist/evals/run-replay.d.ts +75 -10
  340. package/dist/evals/run-replay.js +218 -94
  341. package/dist/evals/runs.controller.d.ts +3 -58
  342. package/dist/evals/runs.controller.js +18 -50
  343. package/dist/evals/runs.service.d.ts +31 -52
  344. package/dist/evals/runs.service.js +281 -255
  345. package/dist/evals/sets.controller.d.ts +3 -29
  346. package/dist/evals/sets.controller.js +18 -39
  347. package/dist/evals/sets.service.d.ts +29 -13
  348. package/dist/evals/sets.service.js +262 -202
  349. package/dist/evals/snapshot.d.ts +5 -4
  350. package/dist/evals/snapshot.js +17 -4
  351. package/dist/evals/step-replay.d.ts +6 -8
  352. package/dist/evals/step-replay.js +17 -10
  353. package/dist/evals/trajectory.controller.d.ts +1 -1
  354. package/dist/evals/trajectory.controller.js +11 -7
  355. package/dist/evals/trajectory.d.ts +2 -2
  356. package/dist/evals/trajectory.js +1 -1
  357. package/dist/evals/trajectory.service.d.ts +13 -7
  358. package/dist/evals/trajectory.service.js +56 -21
  359. package/dist/evals/worker.d.ts +48 -31
  360. package/dist/evals/worker.js +229 -124
  361. package/dist/extensions/admin-ops.d.ts +133 -41
  362. package/dist/extensions/admin-ops.js +378 -172
  363. package/dist/extensions/admin-view.d.ts +82 -32
  364. package/dist/extensions/admin-view.js +284 -71
  365. package/dist/extensions/approvals.d.ts +24 -10
  366. package/dist/extensions/approvals.js +73 -46
  367. package/dist/extensions/blobs.d.ts +27 -10
  368. package/dist/extensions/blobs.js +112 -45
  369. package/dist/extensions/bootstrap.d.ts +99 -36
  370. package/dist/extensions/bootstrap.js +290 -134
  371. package/dist/extensions/cli.d.ts +32 -10
  372. package/dist/extensions/cli.js +52 -98
  373. package/dist/extensions/config-hash.d.ts +10 -0
  374. package/dist/extensions/config-hash.js +38 -0
  375. package/dist/extensions/config-issues.d.ts +19 -0
  376. package/dist/extensions/config-issues.js +48 -0
  377. package/dist/extensions/config-json-schema.d.ts +43 -7
  378. package/dist/extensions/config-json-schema.js +124 -58
  379. package/dist/extensions/deployment-config-store.d.ts +55 -0
  380. package/dist/extensions/deployment-config-store.js +133 -0
  381. package/dist/extensions/deployment-config.d.ts +146 -70
  382. package/dist/extensions/deployment-config.js +439 -246
  383. package/dist/extensions/display-name.d.ts +22 -0
  384. package/dist/extensions/display-name.js +77 -0
  385. package/dist/extensions/effective-config.d.ts +127 -0
  386. package/dist/extensions/effective-config.js +368 -0
  387. package/dist/extensions/enabled.d.ts +5 -5
  388. package/dist/extensions/extensions.module.d.ts +8 -0
  389. package/dist/extensions/extensions.module.js +96 -0
  390. package/dist/extensions/hooks.d.ts +40 -6
  391. package/dist/extensions/hooks.js +83 -17
  392. package/dist/extensions/host.d.ts +161 -80
  393. package/dist/extensions/host.js +505 -213
  394. package/dist/extensions/installs.d.ts +73 -19
  395. package/dist/extensions/installs.js +174 -37
  396. package/dist/extensions/job-ids.d.ts +6 -0
  397. package/dist/extensions/job-ids.js +6 -0
  398. package/dist/extensions/lifecycle-topics.d.ts +18 -0
  399. package/dist/extensions/lifecycle-topics.js +18 -0
  400. package/dist/extensions/lifecycle.d.ts +35 -47
  401. package/dist/extensions/lifecycle.js +103 -39
  402. package/dist/extensions/locks.d.ts +45 -0
  403. package/dist/extensions/locks.js +112 -0
  404. package/dist/extensions/migrate-lock.d.ts +3 -4
  405. package/dist/extensions/org-config.d.ts +141 -49
  406. package/dist/extensions/org-config.js +471 -243
  407. package/dist/extensions/org-levels.d.ts +37 -0
  408. package/dist/extensions/org-levels.js +71 -0
  409. package/dist/extensions/org-overrides.d.ts +151 -0
  410. package/dist/extensions/org-overrides.js +524 -0
  411. package/dist/extensions/package.d.ts +14 -1
  412. package/dist/extensions/package.js +51 -2
  413. package/dist/extensions/permission-view.d.ts +59 -6
  414. package/dist/extensions/permission-view.js +7 -5
  415. package/dist/extensions/plugin-guides.d.ts +129 -0
  416. package/dist/extensions/plugin-guides.js +283 -0
  417. package/dist/extensions/plugin-icons.d.ts +54 -0
  418. package/dist/extensions/plugin-icons.js +125 -0
  419. package/dist/extensions/plugin-items.d.ts +21 -0
  420. package/dist/extensions/plugin-items.js +42 -0
  421. package/dist/extensions/point-defaults.controller.d.ts +28 -0
  422. package/dist/extensions/point-defaults.controller.js +69 -0
  423. package/dist/extensions/point-defaults.d.ts +73 -0
  424. package/dist/extensions/point-defaults.js +236 -0
  425. package/dist/extensions/point-defaults.schemas.d.ts +9 -0
  426. package/dist/extensions/point-defaults.schemas.js +14 -0
  427. package/dist/extensions/registry.d.ts +50 -2
  428. package/dist/extensions/registry.js +91 -4
  429. package/dist/extensions/resolve.d.ts +51 -1
  430. package/dist/extensions/resolve.js +85 -3
  431. package/dist/extensions/single-provider.d.ts +92 -0
  432. package/dist/extensions/single-provider.js +180 -0
  433. package/dist/extensions/sources.d.ts +19 -10
  434. package/dist/extensions/sources.js +34 -13
  435. package/dist/extensions/state.module.d.ts +9 -0
  436. package/dist/extensions/state.module.js +38 -0
  437. package/dist/extensions/unavailable.d.ts +50 -0
  438. package/dist/extensions/unavailable.js +115 -0
  439. package/dist/files/files.module.d.ts +3 -0
  440. package/dist/files/files.module.js +22 -0
  441. package/dist/files/previewers.controller.d.ts +7 -2
  442. package/dist/files/previewers.controller.js +19 -12
  443. package/dist/files/previewers.d.ts +21 -19
  444. package/dist/files/previewers.js +114 -38
  445. package/dist/files/previewers.schemas.d.ts +10 -0
  446. package/dist/files/previewers.schemas.js +9 -0
  447. package/dist/http/adapter.d.ts +3 -0
  448. package/dist/http/adapter.js +25 -0
  449. package/dist/http/api.module.d.ts +3 -110
  450. package/dist/http/api.module.js +86 -358
  451. package/dist/http/app.d.ts +22 -17
  452. package/dist/http/app.js +46 -65
  453. package/dist/http/error-filter.module.d.ts +5 -0
  454. package/dist/http/error-filter.module.js +18 -0
  455. package/dist/http/error.filter.js +2 -2
  456. package/dist/http/{gateway.module.d.ts → gateway-routes.d.ts} +7 -3
  457. package/dist/http/gateway-routes.js +16 -0
  458. package/dist/http/nest-logger.d.ts +6 -5
  459. package/dist/http/nest-logger.js +24 -10
  460. package/dist/http/plugin-dispatch.d.ts +4 -1
  461. package/dist/http/plugin-dispatch.js +14 -2
  462. package/dist/identity/accounts.d.ts +130 -38
  463. package/dist/identity/accounts.js +373 -186
  464. package/dist/identity/api-tokens.d.ts +11 -7
  465. package/dist/identity/api-tokens.js +71 -44
  466. package/dist/identity/audit.d.ts +9 -5
  467. package/dist/identity/audit.js +5 -1
  468. package/dist/identity/auth.controller.d.ts +11 -10
  469. package/dist/identity/auth.controller.js +40 -30
  470. package/dist/identity/auth.guard.d.ts +16 -8
  471. package/dist/identity/auth.guard.js +41 -13
  472. package/dist/identity/binding.d.ts +9 -11
  473. package/dist/identity/binding.js +41 -13
  474. package/dist/identity/cookies.d.ts +26 -5
  475. package/dist/identity/cookies.js +58 -6
  476. package/dist/identity/external-identity-lock.d.ts +17 -0
  477. package/dist/identity/external-identity-lock.js +39 -0
  478. package/dist/identity/external.d.ts +19 -15
  479. package/dist/identity/external.js +163 -125
  480. package/dist/identity/identity.module.d.ts +6 -0
  481. package/dist/identity/identity.module.js +59 -0
  482. package/dist/identity/initial-passwords.controller.d.ts +22 -0
  483. package/dist/identity/initial-passwords.controller.js +49 -0
  484. package/dist/identity/initial-passwords.d.ts +61 -0
  485. package/dist/identity/initial-passwords.job.d.ts +16 -0
  486. package/dist/identity/initial-passwords.job.js +46 -0
  487. package/dist/identity/initial-passwords.js +159 -0
  488. package/dist/identity/me.controller.d.ts +32 -15
  489. package/dist/identity/me.controller.js +78 -33
  490. package/dist/identity/me.schemas.d.ts +14 -0
  491. package/dist/identity/me.schemas.js +17 -0
  492. package/dist/identity/principal.d.ts +11 -3
  493. package/dist/identity/principal.js +11 -3
  494. package/dist/identity/sessions.d.ts +24 -10
  495. package/dist/identity/sessions.js +119 -42
  496. package/dist/identity/settings.d.ts +42 -23
  497. package/dist/identity/settings.js +137 -72
  498. package/dist/identity/sso.controller.d.ts +7 -7
  499. package/dist/identity/sso.controller.js +13 -9
  500. package/dist/identity/sso.d.ts +9 -12
  501. package/dist/identity/sso.js +54 -24
  502. package/dist/identity/super-admin.d.ts +20 -0
  503. package/dist/identity/super-admin.js +81 -0
  504. package/dist/inbox/inbox.module.d.ts +6 -0
  505. package/dist/inbox/inbox.module.js +26 -0
  506. package/dist/inbox/inbox.schemas.d.ts +8 -0
  507. package/dist/inbox/inbox.schemas.js +11 -0
  508. package/dist/inbox/inbox.service.d.ts +68 -11
  509. package/dist/inbox/inbox.service.js +104 -13
  510. package/dist/inbox/org-notices.d.ts +63 -0
  511. package/dist/inbox/org-notices.js +91 -0
  512. package/dist/inbox/platform-inbox.controller.d.ts +23 -0
  513. package/dist/inbox/platform-inbox.controller.js +58 -0
  514. package/dist/inbox/platform-inbox.service.d.ts +151 -0
  515. package/dist/inbox/platform-inbox.service.js +263 -0
  516. package/dist/inbox/platform-notices.d.ts +19 -0
  517. package/dist/inbox/platform-notices.js +9 -0
  518. package/dist/index.d.ts +22 -13
  519. package/dist/index.js +16 -7
  520. package/dist/infra/cache/cache.module.d.ts +3 -0
  521. package/dist/infra/cache/cache.module.js +16 -0
  522. package/dist/infra/cache/cache.service.d.ts +21 -0
  523. package/dist/infra/cache/cache.service.js +80 -0
  524. package/dist/infra/cache/cacheable.decorator.d.ts +32 -0
  525. package/dist/infra/cache/cacheable.decorator.js +83 -0
  526. package/dist/infra/cli/kernel-cli.module.d.ts +66 -0
  527. package/dist/infra/cli/kernel-cli.module.js +173 -0
  528. package/dist/infra/close-within.d.ts +15 -0
  529. package/dist/infra/close-within.js +36 -0
  530. package/dist/infra/config/config.module.d.ts +13 -0
  531. package/dist/infra/config/config.module.js +39 -0
  532. package/dist/infra/config/kernel-config.service.d.ts +25 -0
  533. package/dist/infra/config/kernel-config.service.js +157 -0
  534. package/dist/infra/database/after-commit.d.ts +6 -0
  535. package/dist/infra/database/after-commit.js +9 -0
  536. package/dist/infra/database/database.module.d.ts +25 -0
  537. package/dist/infra/database/database.module.js +91 -0
  538. package/dist/infra/database/kernel-db.d.ts +22 -0
  539. package/dist/infra/database/kernel-db.js +65 -0
  540. package/dist/infra/database/transaction-host.d.ts +50 -0
  541. package/dist/infra/database/transaction-host.js +125 -0
  542. package/dist/infra/database/transactional.decorator.d.ts +15 -0
  543. package/dist/infra/database/transactional.decorator.js +27 -0
  544. package/dist/infra/database/xact-lock.d.ts +17 -0
  545. package/dist/infra/database/xact-lock.js +43 -0
  546. package/dist/infra/events/kernel-events.d.ts +121 -0
  547. package/dist/infra/events/kernel-events.js +65 -0
  548. package/dist/infra/health/health.controller.d.ts +26 -0
  549. package/dist/infra/health/health.controller.js +104 -0
  550. package/dist/infra/health/health.module.d.ts +9 -0
  551. package/dist/infra/health/health.module.js +24 -0
  552. package/dist/infra/health/health.options.d.ts +10 -0
  553. package/dist/infra/health/health.options.js +15 -0
  554. package/dist/infra/health/shutdown-state.d.ts +6 -0
  555. package/dist/infra/health/shutdown-state.js +2 -0
  556. package/dist/infra/lifecycle/graceful-shutdown.module.d.ts +6 -0
  557. package/dist/infra/lifecycle/graceful-shutdown.module.js +23 -0
  558. package/dist/infra/lifecycle/graceful-shutdown.service.d.ts +70 -0
  559. package/dist/infra/lifecycle/graceful-shutdown.service.js +135 -0
  560. package/dist/infra/lifecycle/process-guards.d.ts +52 -0
  561. package/dist/infra/lifecycle/process-guards.js +90 -0
  562. package/dist/infra/lifecycle/shutdown-signals.d.ts +30 -0
  563. package/dist/infra/lifecycle/shutdown-signals.js +48 -0
  564. package/dist/infra/lock/key-template.d.ts +13 -0
  565. package/dist/infra/lock/key-template.js +46 -0
  566. package/dist/infra/lock/lock.module.d.ts +3 -0
  567. package/dist/infra/lock/lock.module.js +16 -0
  568. package/dist/infra/lock/lock.service.d.ts +120 -0
  569. package/dist/infra/lock/lock.service.js +343 -0
  570. package/dist/infra/lock/shared-lease.d.ts +44 -0
  571. package/dist/infra/lock/shared-lease.js +121 -0
  572. package/dist/infra/lock/with-lock.decorator.d.ts +28 -0
  573. package/dist/infra/lock/with-lock.decorator.js +49 -0
  574. package/dist/infra/logging/logging.module.d.ts +18 -0
  575. package/dist/infra/logging/logging.module.js +52 -0
  576. package/dist/infra/queue/add-job-once.d.ts +14 -0
  577. package/dist/infra/queue/add-job-once.js +16 -0
  578. package/dist/infra/queue/configured-processor.d.ts +18 -0
  579. package/dist/infra/queue/configured-processor.js +23 -0
  580. package/dist/infra/queue/job-failure.d.ts +18 -0
  581. package/dist/infra/queue/job-failure.js +26 -0
  582. package/dist/infra/queue/queue-shutdown.d.ts +27 -0
  583. package/dist/infra/queue/queue-shutdown.js +81 -0
  584. package/dist/infra/queue/queue.module.d.ts +16 -0
  585. package/dist/infra/queue/queue.module.js +61 -0
  586. package/dist/infra/queue/redis-connection.d.ts +13 -0
  587. package/dist/infra/queue/redis-connection.js +25 -0
  588. package/dist/infra/queue/retired-schedulers.d.ts +7 -0
  589. package/dist/infra/queue/retired-schedulers.js +9 -0
  590. package/dist/infra/queue/run-job.d.ts +16 -0
  591. package/dist/infra/queue/run-job.js +19 -0
  592. package/dist/infra/redis/redis.module.d.ts +24 -0
  593. package/dist/infra/redis/redis.module.js +91 -0
  594. package/dist/infra/schedule/cron-tick.d.ts +12 -0
  595. package/dist/infra/schedule/cron-tick.js +25 -0
  596. package/dist/infra/schedule/locked-cron.decorator.d.ts +27 -0
  597. package/dist/infra/schedule/locked-cron.decorator.js +53 -0
  598. package/dist/infra/schedule/locked-interval.d.ts +69 -0
  599. package/dist/infra/schedule/locked-interval.js +190 -0
  600. package/dist/infra/schedule/locked-tick.d.ts +90 -0
  601. package/dist/infra/schedule/locked-tick.js +137 -0
  602. package/dist/infra/schedule/schedule.module.d.ts +8 -0
  603. package/dist/infra/schedule/schedule.module.js +27 -0
  604. package/dist/infra/schedule/scheduled-runs.d.ts +69 -0
  605. package/dist/infra/schedule/scheduled-runs.js +163 -0
  606. package/dist/infra/swagger/swagger.d.ts +16 -0
  607. package/dist/infra/swagger/swagger.js +31 -0
  608. package/dist/infra/throttler/credential-throttler.d.ts +35 -0
  609. package/dist/infra/throttler/credential-throttler.js +77 -0
  610. package/dist/infra/throttler/named-throttlers.d.ts +36 -0
  611. package/dist/infra/throttler/named-throttlers.js +157 -0
  612. package/dist/infra/throttler/redis-throttler-storage.d.ts +38 -0
  613. package/dist/infra/throttler/redis-throttler-storage.js +130 -0
  614. package/dist/infra/throttler/throttler.guard.d.ts +23 -0
  615. package/dist/infra/throttler/throttler.guard.js +68 -0
  616. package/dist/infra/throttler/throttler.module.d.ts +15 -0
  617. package/dist/infra/throttler/throttler.module.js +53 -0
  618. package/dist/infra/tokens.d.ts +20 -0
  619. package/dist/infra/tokens.js +20 -0
  620. package/dist/infra/validation/create-zod-dto.d.ts +23 -0
  621. package/dist/infra/validation/create-zod-dto.js +35 -0
  622. package/dist/infra/validation/parse-with-zod.d.ts +7 -0
  623. package/dist/infra/validation/parse-with-zod.js +12 -0
  624. package/dist/infra/validation/validation.module.d.ts +3 -0
  625. package/dist/infra/validation/validation.module.js +16 -0
  626. package/dist/infra/validation/zod-params.d.ts +7 -0
  627. package/dist/infra/validation/zod-params.js +42 -0
  628. package/dist/infra/validation/zod-validation.pipe.d.ts +11 -0
  629. package/dist/infra/validation/zod-validation.pipe.js +31 -0
  630. package/dist/kernel.d.ts +9 -244
  631. package/dist/kernel.js +8 -1305
  632. package/dist/kernel.module.d.ts +17 -0
  633. package/dist/kernel.module.js +145 -0
  634. package/dist/lifecycle/kernel-lifecycle.d.ts +140 -0
  635. package/dist/lifecycle/kernel-lifecycle.js +465 -0
  636. package/dist/lifecycle/tokens.d.ts +3 -0
  637. package/dist/lifecycle/tokens.js +3 -0
  638. package/dist/log-context.d.ts +2 -0
  639. package/dist/log-context.js +4 -0
  640. package/dist/log.d.ts +13 -1
  641. package/dist/log.js +93 -17
  642. package/dist/models/embeddings.d.ts +82 -0
  643. package/dist/models/embeddings.js +326 -0
  644. package/dist/models/enablement.controller.d.ts +40 -0
  645. package/dist/models/enablement.controller.js +74 -0
  646. package/dist/models/enablement.d.ts +101 -0
  647. package/dist/models/enablement.js +264 -0
  648. package/dist/models/models.module.d.ts +7 -0
  649. package/dist/models/models.module.js +36 -0
  650. package/dist/models/org-models.schemas.d.ts +8 -0
  651. package/dist/models/org-models.schemas.js +22 -0
  652. package/dist/models/prices.d.ts +13 -5
  653. package/dist/models/prices.js +69 -39
  654. package/dist/models/purposes.controller.d.ts +6 -4
  655. package/dist/models/purposes.controller.js +16 -11
  656. package/dist/models/purposes.d.ts +103 -23
  657. package/dist/models/purposes.js +208 -77
  658. package/dist/orgs/directory-sync.controller.d.ts +1 -1
  659. package/dist/orgs/directory-sync.controller.js +2 -2
  660. package/dist/orgs/directory-sync.d.ts +74 -35
  661. package/dist/orgs/directory-sync.js +243 -132
  662. package/dist/orgs/invitations.controller.d.ts +8 -8
  663. package/dist/orgs/invitations.controller.js +27 -26
  664. package/dist/orgs/invitations.service.d.ts +12 -9
  665. package/dist/orgs/invitations.service.js +130 -92
  666. package/dist/orgs/job-ids.d.ts +8 -0
  667. package/dist/orgs/job-ids.js +8 -0
  668. package/dist/orgs/members.service.d.ts +19 -12
  669. package/dist/orgs/members.service.js +161 -117
  670. package/dist/orgs/offboarding.d.ts +61 -60
  671. package/dist/orgs/offboarding.js +206 -95
  672. package/dist/orgs/org-lock.d.ts +33 -19
  673. package/dist/orgs/org-lock.js +94 -35
  674. package/dist/orgs/org.guard.d.ts +11 -1
  675. package/dist/orgs/org.guard.js +45 -34
  676. package/dist/orgs/orgs.controller.d.ts +13 -16
  677. package/dist/orgs/orgs.controller.js +29 -20
  678. package/dist/orgs/orgs.module.d.ts +6 -0
  679. package/dist/orgs/orgs.module.js +71 -0
  680. package/dist/orgs/orgs.schemas.d.ts +8 -0
  681. package/dist/orgs/orgs.schemas.js +16 -0
  682. package/dist/orgs/orgs.service.d.ts +47 -21
  683. package/dist/orgs/orgs.service.js +166 -91
  684. package/dist/orgs/roles.d.ts +1 -1
  685. package/dist/orgs/roles.js +5 -1
  686. package/dist/orgs/settings.controller.d.ts +2 -2
  687. package/dist/orgs/settings.controller.js +8 -6
  688. package/dist/orgs/settings.service.d.ts +45 -14
  689. package/dist/orgs/settings.service.js +110 -51
  690. package/dist/overrides.d.ts +63 -0
  691. package/dist/overrides.js +34 -0
  692. package/dist/platform/actor.d.ts +48 -0
  693. package/dist/platform/actor.js +100 -0
  694. package/dist/platform/agent-docs.d.ts +18 -0
  695. package/dist/platform/agent-docs.js +59 -0
  696. package/dist/platform/availability.d.ts +14 -0
  697. package/dist/platform/availability.js +43 -0
  698. package/dist/platform/errors.d.ts +28 -0
  699. package/dist/platform/errors.js +65 -0
  700. package/dist/platform/exclusions.d.ts +11 -0
  701. package/dist/platform/exclusions.js +667 -0
  702. package/dist/platform/method.d.ts +6 -0
  703. package/dist/platform/method.js +15 -0
  704. package/dist/platform/operation.d.ts +169 -0
  705. package/dist/platform/operation.js +90 -0
  706. package/dist/platform/ops/accounts.ops.d.ts +32 -0
  707. package/dist/platform/ops/accounts.ops.js +291 -0
  708. package/dist/platform/ops/admin.ops.d.ts +36 -0
  709. package/dist/platform/ops/admin.ops.js +389 -0
  710. package/dist/platform/ops/agent-skills.ops.d.ts +24 -0
  711. package/dist/platform/ops/agent-skills.ops.js +226 -0
  712. package/dist/platform/ops/agent-templates.ops.d.ts +17 -0
  713. package/dist/platform/ops/agent-templates.ops.js +272 -0
  714. package/dist/platform/ops/agents.ops.d.ts +37 -0
  715. package/dist/platform/ops/agents.ops.js +717 -0
  716. package/dist/platform/ops/approvals.ops.d.ts +30 -0
  717. package/dist/platform/ops/approvals.ops.js +116 -0
  718. package/dist/platform/ops/background.ops.d.ts +14 -0
  719. package/dist/platform/ops/background.ops.js +134 -0
  720. package/dist/platform/ops/catalog-admin.ops.d.ts +74 -0
  721. package/dist/platform/ops/catalog-admin.ops.js +599 -0
  722. package/dist/platform/ops/channels.ops.d.ts +16 -0
  723. package/dist/platform/ops/channels.ops.js +195 -0
  724. package/dist/platform/ops/components.ops.d.ts +46 -0
  725. package/dist/platform/ops/components.ops.js +853 -0
  726. package/dist/platform/ops/connectors.ops.d.ts +17 -0
  727. package/dist/platform/ops/connectors.ops.js +188 -0
  728. package/dist/platform/ops/conversations.ops.d.ts +30 -0
  729. package/dist/platform/ops/conversations.ops.js +470 -0
  730. package/dist/platform/ops/environments.ops.d.ts +26 -0
  731. package/dist/platform/ops/environments.ops.js +311 -0
  732. package/dist/platform/ops/errors.d.ts +16 -0
  733. package/dist/platform/ops/errors.js +30 -0
  734. package/dist/platform/ops/evals.ops.d.ts +28 -0
  735. package/dist/platform/ops/evals.ops.js +783 -0
  736. package/dist/platform/ops/extensions-admin.ops.d.ts +25 -0
  737. package/dist/platform/ops/extensions-admin.ops.js +372 -0
  738. package/dist/platform/ops/extensions.ops.d.ts +25 -0
  739. package/dist/platform/ops/extensions.ops.js +347 -0
  740. package/dist/platform/ops/inbox.ops.d.ts +25 -0
  741. package/dist/platform/ops/inbox.ops.js +378 -0
  742. package/dist/platform/ops/marketplaces.ops.d.ts +22 -0
  743. package/dist/platform/ops/marketplaces.ops.js +466 -0
  744. package/dist/platform/ops/models.ops.d.ts +25 -0
  745. package/dist/platform/ops/models.ops.js +232 -0
  746. package/dist/platform/ops/org-plugins.ops.d.ts +29 -0
  747. package/dist/platform/ops/org-plugins.ops.js +329 -0
  748. package/dist/platform/ops/org-settings.ops.d.ts +16 -0
  749. package/dist/platform/ops/org-settings.ops.js +102 -0
  750. package/dist/platform/ops/orgs.ops.d.ts +28 -0
  751. package/dist/platform/ops/orgs.ops.js +295 -0
  752. package/dist/platform/ops/other-orgs.d.ts +20 -0
  753. package/dist/platform/ops/other-orgs.js +72 -0
  754. package/dist/platform/ops/paging.d.ts +14 -0
  755. package/dist/platform/ops/paging.js +20 -0
  756. package/dist/platform/ops/platform.ops.d.ts +28 -0
  757. package/dist/platform/ops/platform.ops.js +204 -0
  758. package/dist/platform/ops/plugins.ops.d.ts +35 -0
  759. package/dist/platform/ops/plugins.ops.js +476 -0
  760. package/dist/platform/ops/previewers.ops.d.ts +14 -0
  761. package/dist/platform/ops/previewers.ops.js +109 -0
  762. package/dist/platform/ops/requests.ops.d.ts +14 -0
  763. package/dist/platform/ops/requests.ops.js +191 -0
  764. package/dist/platform/ops/role.d.ts +4 -0
  765. package/dist/platform/ops/role.js +10 -0
  766. package/dist/platform/ops/skills.ops.d.ts +17 -0
  767. package/dist/platform/ops/skills.ops.js +216 -0
  768. package/dist/platform/ops/summary.d.ts +10 -0
  769. package/dist/platform/ops/summary.js +18 -0
  770. package/dist/platform/ops/unavailable.d.ts +23 -0
  771. package/dist/platform/ops/unavailable.js +118 -0
  772. package/dist/platform/parity.d.ts +33 -0
  773. package/dist/platform/parity.js +272 -0
  774. package/dist/platform/platform-ops.module.d.ts +39 -0
  775. package/dist/platform/platform-ops.module.js +122 -0
  776. package/dist/platform/platform.module.d.ts +8 -0
  777. package/dist/platform/platform.module.js +25 -0
  778. package/dist/platform/registry.d.ts +30 -0
  779. package/dist/platform/registry.js +111 -0
  780. package/dist/platform/route-schemas.d.ts +18 -0
  781. package/dist/platform/route-schemas.js +63 -0
  782. package/dist/roles/gateway-role.d.ts +54 -0
  783. package/dist/roles/gateway-role.js +118 -0
  784. package/dist/roles/gateway.module.d.ts +9 -0
  785. package/dist/roles/gateway.module.js +31 -0
  786. package/dist/roles/worker-role.d.ts +65 -0
  787. package/dist/roles/worker-role.js +151 -0
  788. package/dist/roles/worker.module.d.ts +14 -0
  789. package/dist/roles/worker.module.js +106 -0
  790. package/dist/runtime/abort.js +19 -2
  791. package/dist/runtime/checkpointer.d.ts +8 -3
  792. package/dist/runtime/checkpointer.js +87 -55
  793. package/dist/runtime/context/build.d.ts +21 -13
  794. package/dist/runtime/context/build.js +106 -29
  795. package/dist/runtime/context/claude-tools.d.ts +4 -1
  796. package/dist/runtime/context/claude-tools.js +13 -12
  797. package/dist/runtime/context/compaction.js +24 -1
  798. package/dist/runtime/context/environment-paths.d.ts +40 -0
  799. package/dist/runtime/context/environment-paths.js +48 -0
  800. package/dist/runtime/context/legacy-text.d.ts +22 -0
  801. package/dist/runtime/context/legacy-text.js +37 -0
  802. package/dist/runtime/context/reminders.d.ts +2 -0
  803. package/dist/runtime/context/reminders.js +2 -0
  804. package/dist/runtime/context/run-context.d.ts +65 -0
  805. package/dist/runtime/context/run-context.js +215 -0
  806. package/dist/runtime/context/skills.d.ts +29 -11
  807. package/dist/runtime/context/skills.js +46 -32
  808. package/dist/runtime/context/tool-changes.d.ts +27 -0
  809. package/dist/runtime/context/tool-changes.js +60 -0
  810. package/dist/runtime/conversation-lock.d.ts +20 -11
  811. package/dist/runtime/conversation-lock.js +62 -72
  812. package/dist/runtime/hook-calls.d.ts +11 -4
  813. package/dist/runtime/hook-calls.js +41 -13
  814. package/dist/runtime/job-ids.d.ts +10 -0
  815. package/dist/runtime/job-ids.js +10 -0
  816. package/dist/runtime/langgraph-loop.d.ts +3 -1
  817. package/dist/runtime/langgraph-loop.js +37 -18
  818. package/dist/runtime/loop.d.ts +42 -6
  819. package/dist/runtime/loop.js +14 -0
  820. package/dist/runtime/maintenance-queue.d.ts +10 -0
  821. package/dist/runtime/maintenance-queue.js +10 -0
  822. package/dist/runtime/maintenance.d.ts +50 -74
  823. package/dist/runtime/maintenance.js +166 -137
  824. package/dist/runtime/model-call.d.ts +61 -15
  825. package/dist/runtime/model-call.js +128 -84
  826. package/dist/runtime/providers.d.ts +158 -27
  827. package/dist/runtime/providers.js +373 -63
  828. package/dist/runtime/quota.d.ts +17 -3
  829. package/dist/runtime/quota.js +27 -2
  830. package/dist/runtime/retired-schedulers.d.ts +7 -0
  831. package/dist/runtime/retired-schedulers.js +31 -0
  832. package/dist/runtime/run-context.service.d.ts +65 -0
  833. package/dist/runtime/run-context.service.js +236 -0
  834. package/dist/runtime/run-control.d.ts +43 -0
  835. package/dist/runtime/run-control.js +89 -0
  836. package/dist/runtime/run-drafts.d.ts +85 -0
  837. package/dist/runtime/run-drafts.js +230 -0
  838. package/dist/runtime/run-finish.d.ts +27 -18
  839. package/dist/runtime/run-finish.js +98 -51
  840. package/dist/runtime/run-jobs.d.ts +46 -0
  841. package/dist/runtime/run-jobs.js +91 -0
  842. package/dist/runtime/run-processors.d.ts +60 -0
  843. package/dist/runtime/run-processors.js +185 -0
  844. package/dist/runtime/run-queue.d.ts +90 -58
  845. package/dist/runtime/run-queue.js +566 -297
  846. package/dist/runtime/run-steps.d.ts +39 -0
  847. package/dist/runtime/run-steps.js +96 -0
  848. package/dist/runtime/run-worker.d.ts +134 -77
  849. package/dist/runtime/run-worker.js +412 -237
  850. package/dist/runtime/runtime.module.d.ts +10 -0
  851. package/dist/runtime/runtime.module.js +122 -0
  852. package/dist/runtime/step-log.d.ts +51 -0
  853. package/dist/runtime/step-log.js +111 -0
  854. package/dist/runtime/stream.controller.d.ts +28 -9
  855. package/dist/runtime/stream.controller.js +72 -13
  856. package/dist/runtime/stream.d.ts +27 -6
  857. package/dist/runtime/stream.js +102 -7
  858. package/dist/runtime/subagents/child.d.ts +58 -51
  859. package/dist/runtime/subagents/child.js +105 -86
  860. package/dist/runtime/subagents/definition.d.ts +32 -28
  861. package/dist/runtime/subagents/definition.js +89 -143
  862. package/dist/runtime/subagents/deliveries.d.ts +71 -0
  863. package/dist/runtime/subagents/deliveries.js +228 -0
  864. package/dist/runtime/subagents/dispatch.d.ts +197 -27
  865. package/dist/runtime/subagents/dispatch.js +336 -270
  866. package/dist/runtime/subagents/limits.d.ts +32 -8
  867. package/dist/runtime/subagents/limits.js +44 -8
  868. package/dist/runtime/subagents/messages.d.ts +95 -0
  869. package/dist/runtime/subagents/messages.js +328 -0
  870. package/dist/runtime/subagents/org-agents.d.ts +4 -4
  871. package/dist/runtime/subagents/org-agents.js +3 -2
  872. package/dist/runtime/subagents/preamble.d.ts +4 -4
  873. package/dist/runtime/subagents/preamble.js +9 -7
  874. package/dist/runtime/subagents/progress.d.ts +10 -8
  875. package/dist/runtime/subagents/progress.js +11 -6
  876. package/dist/runtime/subagents/render.d.ts +30 -0
  877. package/dist/runtime/subagents/render.js +53 -0
  878. package/dist/runtime/subagents/roster.d.ts +27 -10
  879. package/dist/runtime/subagents/roster.js +49 -13
  880. package/dist/runtime/subagents/skill-fork.d.ts +10 -10
  881. package/dist/runtime/subagents/skill-fork.js +23 -8
  882. package/dist/runtime/subagents/status.d.ts +14 -0
  883. package/dist/runtime/subagents/status.js +23 -0
  884. package/dist/runtime/subagents/subagents.service.d.ts +43 -0
  885. package/dist/runtime/subagents/subagents.service.js +106 -0
  886. package/dist/runtime/usage-report-jobs.d.ts +88 -0
  887. package/dist/runtime/usage-report-jobs.js +158 -0
  888. package/dist/runtime/usage-report.d.ts +121 -83
  889. package/dist/runtime/usage-report.js +355 -181
  890. package/dist/runtime/waits.d.ts +258 -81
  891. package/dist/runtime/waits.js +800 -263
  892. package/dist/sandbox/job-ids.d.ts +10 -0
  893. package/dist/sandbox/job-ids.js +10 -0
  894. package/dist/sandbox/jobs.d.ts +68 -0
  895. package/dist/sandbox/jobs.js +150 -0
  896. package/dist/sandbox/leases.d.ts +73 -82
  897. package/dist/sandbox/leases.js +162 -346
  898. package/dist/sandbox/providers.d.ts +46 -0
  899. package/dist/sandbox/providers.js +83 -0
  900. package/dist/sandbox/sandbox.module.d.ts +9 -0
  901. package/dist/sandbox/sandbox.module.js +36 -0
  902. package/dist/sandbox/sandbox.service.d.ts +359 -151
  903. package/dist/sandbox/sandbox.service.js +950 -435
  904. package/dist/sandbox/unreachable.d.ts +30 -0
  905. package/dist/sandbox/unreachable.js +108 -0
  906. package/dist/skills/catalog.d.ts +40 -26
  907. package/dist/skills/catalog.js +120 -99
  908. package/dist/skills/changes.controller.d.ts +11 -4
  909. package/dist/skills/changes.controller.js +34 -9
  910. package/dist/skills/changes.service.d.ts +31 -21
  911. package/dist/skills/changes.service.js +426 -368
  912. package/dist/skills/invocable.controller.d.ts +2 -2
  913. package/dist/skills/invocable.controller.js +10 -7
  914. package/dist/skills/invocation-keys.d.ts +1 -1
  915. package/dist/skills/invocation-keys.js +1 -1
  916. package/dist/skills/invoke.d.ts +19 -18
  917. package/dist/skills/invoke.js +68 -24
  918. package/dist/skills/package.d.ts +20 -1
  919. package/dist/skills/package.js +28 -1
  920. package/dist/skills/skills.controller.d.ts +33 -7
  921. package/dist/skills/skills.controller.js +79 -12
  922. package/dist/skills/skills.module.d.ts +6 -0
  923. package/dist/skills/skills.module.js +39 -0
  924. package/dist/skills/skills.schemas.d.ts +48 -0
  925. package/dist/skills/skills.schemas.js +61 -0
  926. package/dist/skills/skills.service.d.ts +151 -44
  927. package/dist/skills/skills.service.js +636 -204
  928. package/dist/skills/usable.d.ts +81 -0
  929. package/dist/skills/usable.js +379 -0
  930. package/dist/storage/job-ids.d.ts +6 -0
  931. package/dist/storage/job-ids.js +6 -0
  932. package/dist/storage/purge.d.ts +22 -7
  933. package/dist/storage/purge.js +55 -3
  934. package/dist/storage/storage.module.d.ts +6 -0
  935. package/dist/storage/storage.module.js +23 -0
  936. package/dist/storage/storage.service.d.ts +18 -4
  937. package/dist/storage/storage.service.js +44 -3
  938. package/dist/time-zone.d.ts +5 -0
  939. package/dist/time-zone.js +19 -0
  940. package/dist/tools/approvals.controller.d.ts +1 -1
  941. package/dist/tools/approvals.controller.js +14 -11
  942. package/dist/tools/approvals.schemas.d.ts +21 -0
  943. package/dist/tools/approvals.schemas.js +15 -0
  944. package/dist/tools/approvals.service.d.ts +53 -27
  945. package/dist/tools/approvals.service.js +365 -260
  946. package/dist/tools/breaker.d.ts +2 -2
  947. package/dist/tools/breaker.js +21 -3
  948. package/dist/tools/builtin-names.d.ts +109 -0
  949. package/dist/tools/builtin-names.js +173 -0
  950. package/dist/tools/builtins/agent.d.ts +27 -25
  951. package/dist/tools/builtins/agent.js +66 -63
  952. package/dist/tools/builtins/ask-user.d.ts +3 -3
  953. package/dist/tools/builtins/ask-user.js +3 -3
  954. package/dist/tools/builtins/builtin-tools.d.ts +41 -0
  955. package/dist/tools/builtins/builtin-tools.js +151 -0
  956. package/dist/tools/builtins/current-time.d.ts +26 -0
  957. package/dist/tools/builtins/current-time.js +99 -0
  958. package/dist/tools/builtins/handback.d.ts +28 -0
  959. package/dist/tools/builtins/handback.js +53 -0
  960. package/dist/tools/builtins/platform.d.ts +51 -0
  961. package/dist/tools/builtins/platform.js +451 -0
  962. package/dist/tools/builtins/read-tool-output.d.ts +3 -3
  963. package/dist/tools/builtins/read-tool-output.js +3 -3
  964. package/dist/tools/builtins/sandbox/bash.d.ts +5 -5
  965. package/dist/tools/builtins/sandbox/bash.js +293 -41
  966. package/dist/tools/builtins/sandbox/common.d.ts +137 -37
  967. package/dist/tools/builtins/sandbox/common.js +222 -62
  968. package/dist/tools/builtins/sandbox/deliver.d.ts +1 -1
  969. package/dist/tools/builtins/sandbox/deliver.js +21 -18
  970. package/dist/tools/builtins/sandbox/edit.d.ts +1 -1
  971. package/dist/tools/builtins/sandbox/edit.js +65 -51
  972. package/dist/tools/builtins/sandbox/file-state.d.ts +34 -0
  973. package/dist/tools/builtins/sandbox/file-state.js +34 -0
  974. package/dist/tools/builtins/sandbox/glob-match.d.ts +1 -1
  975. package/dist/tools/builtins/sandbox/glob-match.js +1 -1
  976. package/dist/tools/builtins/sandbox/glob.d.ts +1 -1
  977. package/dist/tools/builtins/sandbox/glob.js +19 -14
  978. package/dist/tools/builtins/sandbox/grep.d.ts +7 -4
  979. package/dist/tools/builtins/sandbox/grep.js +155 -36
  980. package/dist/tools/builtins/sandbox/index.d.ts +9 -5
  981. package/dist/tools/builtins/sandbox/index.js +13 -5
  982. package/dist/tools/builtins/sandbox/read.d.ts +2 -2
  983. package/dist/tools/builtins/sandbox/read.js +30 -20
  984. package/dist/tools/builtins/sandbox/task-output.d.ts +79 -0
  985. package/dist/tools/builtins/sandbox/task-output.js +334 -0
  986. package/dist/tools/builtins/sandbox/task-stop.d.ts +10 -0
  987. package/dist/tools/builtins/sandbox/task-stop.js +113 -0
  988. package/dist/tools/builtins/sandbox/write.d.ts +1 -1
  989. package/dist/tools/builtins/sandbox/write.js +52 -45
  990. package/dist/tools/builtins/send-message.d.ts +56 -0
  991. package/dist/tools/builtins/send-message.js +100 -0
  992. package/dist/tools/builtins/skill-load.d.ts +32 -21
  993. package/dist/tools/builtins/skill-load.js +125 -74
  994. package/dist/tools/builtins/skill-write.d.ts +4 -4
  995. package/dist/tools/builtins/skill-write.js +12 -12
  996. package/dist/tools/builtins/tool-search.d.ts +13 -9
  997. package/dist/tools/builtins/tool-search.js +25 -14
  998. package/dist/tools/builtins/web/errors.d.ts +8 -0
  999. package/dist/tools/builtins/web/errors.js +53 -0
  1000. package/dist/tools/builtins/web/extract.d.ts +62 -0
  1001. package/dist/tools/builtins/web/extract.js +271 -0
  1002. package/dist/tools/builtins/web/fetch.d.ts +55 -0
  1003. package/dist/tools/builtins/web/fetch.js +175 -0
  1004. package/dist/tools/builtins/web/index.d.ts +13 -0
  1005. package/dist/tools/builtins/web/index.js +12 -0
  1006. package/dist/tools/builtins/web/page-cache.d.ts +25 -0
  1007. package/dist/tools/builtins/web/page-cache.js +77 -0
  1008. package/dist/tools/builtins/web/search.d.ts +25 -0
  1009. package/dist/tools/builtins/web/search.js +210 -0
  1010. package/dist/tools/builtins/web/url.d.ts +17 -0
  1011. package/dist/tools/builtins/web/url.js +43 -0
  1012. package/dist/tools/canonical-json.d.ts +6 -0
  1013. package/dist/tools/canonical-json.js +16 -0
  1014. package/dist/tools/connector-content.controller.d.ts +1 -1
  1015. package/dist/tools/connector-content.controller.js +11 -6
  1016. package/dist/tools/connector-content.d.ts +12 -15
  1017. package/dist/tools/connector-content.js +53 -18
  1018. package/dist/tools/connectors.controller.d.ts +16 -3
  1019. package/dist/tools/connectors.controller.js +34 -14
  1020. package/dist/tools/connectors.schemas.d.ts +12 -0
  1021. package/dist/tools/connectors.schemas.js +19 -0
  1022. package/dist/tools/connectors.service.d.ts +80 -18
  1023. package/dist/tools/connectors.service.js +529 -358
  1024. package/dist/tools/credentials.d.ts +20 -20
  1025. package/dist/tools/credentials.js +55 -34
  1026. package/dist/tools/display-names.d.ts +9 -0
  1027. package/dist/tools/display-names.js +24 -0
  1028. package/dist/tools/drift.d.ts +29 -41
  1029. package/dist/tools/drift.js +116 -84
  1030. package/dist/tools/elicitation.js +1 -1
  1031. package/dist/tools/extension-tools.controller.d.ts +14 -0
  1032. package/dist/tools/extension-tools.controller.js +37 -0
  1033. package/dist/tools/info.d.ts +73 -13
  1034. package/dist/tools/info.js +151 -39
  1035. package/dist/tools/job-ids.d.ts +13 -0
  1036. package/dist/tools/job-ids.js +15 -0
  1037. package/dist/tools/jobs.d.ts +24 -0
  1038. package/dist/tools/jobs.js +69 -0
  1039. package/dist/tools/legacy-data.d.ts +34 -0
  1040. package/dist/tools/legacy-data.js +76 -0
  1041. package/dist/tools/legacy-keys.d.ts +51 -0
  1042. package/dist/tools/legacy-keys.js +115 -0
  1043. package/dist/tools/naming.d.ts +1 -5
  1044. package/dist/tools/naming.js +1 -7
  1045. package/dist/tools/oauth/flow-paths.d.ts +16 -0
  1046. package/dist/tools/oauth/flow-paths.js +38 -0
  1047. package/dist/tools/oauth/flow.d.ts +30 -30
  1048. package/dist/tools/oauth/flow.js +109 -81
  1049. package/dist/tools/oauth/oauth.controller.d.ts +3 -3
  1050. package/dist/tools/oauth/oauth.controller.js +12 -9
  1051. package/dist/tools/oauth/tokens.d.ts +45 -10
  1052. package/dist/tools/oauth/tokens.js +70 -24
  1053. package/dist/tools/org-tool-switches.d.ts +88 -0
  1054. package/dist/tools/org-tool-switches.js +201 -0
  1055. package/dist/tools/outputs.d.ts +13 -4
  1056. package/dist/tools/outputs.js +48 -4
  1057. package/dist/tools/pipeline.d.ts +108 -80
  1058. package/dist/tools/pipeline.js +396 -409
  1059. package/dist/tools/policy.d.ts +4 -17
  1060. package/dist/tools/policy.js +49 -35
  1061. package/dist/tools/questions.controller.d.ts +2 -2
  1062. package/dist/tools/questions.controller.js +9 -6
  1063. package/dist/tools/questions.service.d.ts +26 -25
  1064. package/dist/tools/questions.service.js +201 -142
  1065. package/dist/tools/registry.d.ts +215 -84
  1066. package/dist/tools/registry.js +382 -264
  1067. package/dist/tools/resources.d.ts +1 -1
  1068. package/dist/tools/resources.js +1 -1
  1069. package/dist/tools/specs.d.ts +5 -4
  1070. package/dist/tools/specs.js +3 -1
  1071. package/dist/tools/tools.module.d.ts +10 -0
  1072. package/dist/tools/tools.module.js +113 -0
  1073. package/dist/tools/validate.js +1 -1
  1074. package/dist/ui/call-extension.d.ts +16 -0
  1075. package/dist/ui/call-extension.js +38 -0
  1076. package/dist/ui/embed-token.d.ts +9 -5
  1077. package/dist/ui/embed-token.js +34 -6
  1078. package/dist/ui/ui-stream.d.ts +22 -17
  1079. package/dist/ui/ui-stream.js +72 -12
  1080. package/dist/ui/ui.module.d.ts +7 -0
  1081. package/dist/ui/ui.module.js +28 -0
  1082. package/dist/ui/views.controller.d.ts +14 -12
  1083. package/dist/ui/views.controller.js +32 -25
  1084. package/dist/ui/views.d.ts +10 -57
  1085. package/dist/ui/views.js +58 -46
  1086. package/package.json +13 -3
  1087. package/src/migrations/0063_tool_keys_claude_code.sql +220 -0
  1088. package/src/migrations/0064_account_last_org.sql +7 -0
  1089. package/src/migrations/0065_conversation_archive.sql +8 -0
  1090. package/src/migrations/0066_extension_display_name.sql +4 -0
  1091. package/src/migrations/0067_agent_profiles.sql +20 -0
  1092. package/src/migrations/0068_agent_avatar_uploads.sql +7 -0
  1093. package/src/migrations/0069_attachments_agent_idx.sql +3 -0
  1094. package/src/migrations/0070_background_tasks.sql +37 -0
  1095. package/src/migrations/0071_background_tasks_reserve.sql +6 -0
  1096. package/src/migrations/0072_background_tasks_stopping.sql +5 -0
  1097. package/src/migrations/0073_org_extension_point_defaults.sql +11 -0
  1098. package/src/migrations/0074_subagent_tree.sql +50 -0
  1099. package/src/migrations/0075_plugin_scope.sql +61 -0
  1100. package/src/migrations/0076_skills_created_by_nullable.sql +6 -0
  1101. package/src/migrations/0077_scope_requests.sql +52 -0
  1102. package/src/migrations/0078_scope_grant_switches.sql +18 -0
  1103. package/src/migrations/0079_scope_live_install_switches.sql +19 -0
  1104. package/src/migrations/0080_rename_enterprise_admin.sql +18 -0
  1105. package/src/migrations/0081_platform_components.sql +129 -0
  1106. package/src/migrations/0082_platform_migration.sql +33 -0
  1107. package/src/migrations/0083_plugin_scope_sync_failures.sql +15 -0
  1108. package/src/migrations/0084_org_owned_items.sql +85 -0
  1109. package/src/migrations/0085_agent_templates_phase4.sql +45 -0
  1110. package/src/migrations/0086_org_layering.sql +30 -0
  1111. package/src/migrations/0087_approval_summary.sql +6 -0
  1112. package/src/migrations/0088_environments.sql +80 -0
  1113. package/src/migrations/0089_model_kinds_usage.sql +38 -0
  1114. package/src/migrations/0090_initial_passwords.sql +27 -0
  1115. package/src/migrations/0091_account_time_zone.sql +4 -0
  1116. package/src/migrations/0092_tools_default_on.sql +27 -0
  1117. package/src/migrations/0093_connected_environments.sql +37 -0
  1118. package/src/migrations/0094_environment_paths_idx.sql +7 -0
  1119. package/src/migrations/0095_environment_files_resets.sql +5 -0
  1120. package/src/migrations/0096_environment_demoted_default.sql +18 -0
  1121. package/src/migrations/0097_extension_installs_enabled_at.sql +16 -0
  1122. package/src/migrations/0098_single_provider_running_first.sql +41 -0
  1123. package/src/migrations/0099_channel_connection_guide_ack.sql +6 -0
  1124. package/src/migrations/0100_catalog_files.sql +13 -0
  1125. package/src/migrations/0101_marketplace_icons.sql +32 -0
  1126. package/dist/catalog/upgrade-targets.d.ts +0 -59
  1127. package/dist/catalog/upgrade-targets.js +0 -90
  1128. package/dist/conversations/sandbox-status.d.ts +0 -21
  1129. package/dist/conversations/sandbox-status.js +0 -24
  1130. package/dist/extensions/org-config.controller.d.ts +0 -24
  1131. package/dist/extensions/org-config.controller.js +0 -59
  1132. package/dist/http/gateway.module.js +0 -13
  1133. package/dist/http/health.controller.d.ts +0 -26
  1134. package/dist/http/health.controller.js +0 -79
  1135. package/dist/http/tokens.d.ts +0 -131
  1136. package/dist/http/tokens.js +0 -131
  1137. package/dist/http/zod.pipe.d.ts +0 -8
  1138. package/dist/http/zod.pipe.js +0 -14
  1139. package/dist/identity/enterprise-admin.d.ts +0 -14
  1140. package/dist/identity/enterprise-admin.js +0 -27
  1141. package/dist/identity/rate-limit.d.ts +0 -55
  1142. package/dist/identity/rate-limit.js +0 -121
  1143. package/dist/sandbox/lifecycle.d.ts +0 -21
  1144. package/dist/sandbox/lifecycle.js +0 -68
  1145. package/dist/tools/builtins/sandbox/names.d.ts +0 -7
  1146. package/dist/tools/builtins/sandbox/names.js +0 -20
@@ -1,9 +1,18 @@
1
- import type { Transaction } from "kysely";
2
1
  import { type KernelConfig } from "../../config/schema.js";
3
- import type { KernelDatabase, KernelDb } from "../../db/kernel-schema.js";
4
- /** The sub-agent limits of one parent run (sub-agents spec §8.2). */
2
+ import type { KernelSchemaDb } from "../../db/kernel-schema.js";
3
+ /** The config the limits read (`KernelConfigService`, live: `subagents.*` is hot). */
4
+ export interface SubagentsConfig {
5
+ get(): Pick<KernelConfig, "subagents">;
6
+ }
7
+ /**
8
+ * The sub-agent limits of an organization (sub-agents spec §8.2, agent map spec §6): the depth
9
+ * below the root, the active children of one conversation, and the dispatches and tokens of one
10
+ * tree, counted on its budget run ({@link budgetRunOf}). `maxDispatchesPerRun` and
11
+ * `maxTokensPerRun` of 0 mean no limit.
12
+ */
5
13
  export interface SubagentLimits {
6
- maxConcurrentPerRun: number;
14
+ maxDepth: number;
15
+ maxConcurrentPerConversation: number;
7
16
  maxDispatchesPerRun: number;
8
17
  maxTokensPerRun: number;
9
18
  }
@@ -14,10 +23,25 @@ export declare const SUBAGENT_LIMIT_DEFAULTS: SubagentLimits;
14
23
  * `subagentLimitOverrides`, value by value, over the hot config `subagents.*`. Read live (no cache),
15
24
  * in the caller's transaction when one is given, so every replica applies a change at once.
16
25
  */
17
- export declare function subagentLimits(db: KernelDb | Transaction<KernelDatabase>, config: () => Pick<KernelConfig, "subagents">, orgId: string): Promise<SubagentLimits>;
26
+ export declare function subagentLimits(
27
+ /** The pool, or the context's handle (a `@Transactional` caller's transaction). */
28
+ db: KernelSchemaDb, config: SubagentsConfig, orgId: string): Promise<SubagentLimits>;
29
+ /**
30
+ * The budget run of `runId` (agent map spec §6): its `budget_run_id`, or the run itself when it has
31
+ * none (a person-triggered run opens its own window) or does not exist. The dispatch count and the
32
+ * token counter of a whole tree live on this run.
33
+ */
34
+ export declare function budgetRunOf(db: KernelSchemaDb, runId: string): Promise<string>;
35
+ /**
36
+ * The current budget window of the tree rooted at `rootConversationId` (agent map spec §6): its
37
+ * newest run that opened its own window (`budget_run_id` null: a person-triggered run), or null
38
+ * when it has none. A wake run of any conversation of the tree carries it as its `budget_run_id`,
39
+ * so a chain of wakes never opens a new window.
40
+ */
41
+ export declare function budgetWindowOf(db: KernelSchemaDb, rootConversationId: string): Promise<string | null>;
18
42
  /**
19
- * Whether the sub-agents of `parentRunId` have used their token budget (§8.3): its
20
- * `subagent_tokens_used`, read fresh, at or over `maxTokensPerRun`. A sub-agent's step checks it
43
+ * Whether the sub-agents of a tree have used their token budget (§8.3): the budget run's
44
+ * `subagent_tokens_used`, read fresh, at or over `maxTokensPerRun` (never when it is 0: no limit). A sub-agent's step checks it
21
45
  * before every model request and ends its run with `budget` when it is.
22
46
  */
23
- export declare function subagentBudgetUsedUp(db: KernelDb, config: () => Pick<KernelConfig, "subagents">, orgId: string, parentRunId: string): Promise<boolean>;
47
+ export declare function subagentBudgetUsedUp(db: KernelSchemaDb, config: SubagentsConfig, orgId: string, budgetRunId: string): Promise<boolean>;
@@ -7,28 +7,64 @@ export const SUBAGENT_LIMIT_DEFAULTS = KernelConfigSchema.shape.subagents.parse(
7
7
  * `subagentLimitOverrides`, value by value, over the hot config `subagents.*`. Read live (no cache),
8
8
  * in the caller's transaction when one is given, so every replica applies a change at once.
9
9
  */
10
- export async function subagentLimits(db, config, orgId) {
11
- const base = config().subagents;
10
+ export async function subagentLimits(
11
+ /** The pool, or the context's handle (a `@Transactional` caller's transaction). */
12
+ db, config, orgId) {
13
+ const base = config.get().subagents;
12
14
  const over = await readSubagentLimitOverride(db, orgId);
13
15
  return {
14
- maxConcurrentPerRun: over?.maxConcurrentPerRun ?? base.maxConcurrentPerRun,
16
+ maxDepth: over?.maxDepth ?? base.maxDepth,
17
+ maxConcurrentPerConversation: over?.maxConcurrentPerConversation ?? base.maxConcurrentPerConversation,
15
18
  maxDispatchesPerRun: over?.maxDispatchesPerRun ?? base.maxDispatchesPerRun,
16
19
  maxTokensPerRun: over?.maxTokensPerRun ?? base.maxTokensPerRun,
17
20
  };
18
21
  }
19
22
  /**
20
- * Whether the sub-agents of `parentRunId` have used their token budget (§8.3): its
21
- * `subagent_tokens_used`, read fresh, at or over `maxTokensPerRun`. A sub-agent's step checks it
23
+ * The budget run of `runId` (agent map spec §6): its `budget_run_id`, or the run itself when it has
24
+ * none (a person-triggered run opens its own window) or does not exist. The dispatch count and the
25
+ * token counter of a whole tree live on this run.
26
+ */
27
+ export async function budgetRunOf(db, runId) {
28
+ const row = await db
29
+ .selectFrom("runs")
30
+ .select("budget_run_id")
31
+ .where("id", "=", runId)
32
+ .executeTakeFirst();
33
+ return row?.budget_run_id ?? runId;
34
+ }
35
+ /**
36
+ * The current budget window of the tree rooted at `rootConversationId` (agent map spec §6): its
37
+ * newest run that opened its own window (`budget_run_id` null: a person-triggered run), or null
38
+ * when it has none. A wake run of any conversation of the tree carries it as its `budget_run_id`,
39
+ * so a chain of wakes never opens a new window.
40
+ */
41
+ export async function budgetWindowOf(db, rootConversationId) {
42
+ const row = await db
43
+ .selectFrom("runs")
44
+ .select("id")
45
+ .where("conversation_id", "=", rootConversationId)
46
+ .where("budget_run_id", "is", null)
47
+ .orderBy("created_at", "desc")
48
+ .limit(1)
49
+ .executeTakeFirst();
50
+ return row?.id ?? null;
51
+ }
52
+ /**
53
+ * Whether the sub-agents of a tree have used their token budget (§8.3): the budget run's
54
+ * `subagent_tokens_used`, read fresh, at or over `maxTokensPerRun` (never when it is 0: no limit). A sub-agent's step checks it
22
55
  * before every model request and ends its run with `budget` when it is.
23
56
  */
24
- export async function subagentBudgetUsedUp(db, config, orgId, parentRunId) {
57
+ export async function subagentBudgetUsedUp(db, config, orgId, budgetRunId) {
58
+ const { maxTokensPerRun } = await subagentLimits(db, config, orgId);
59
+ // 0: no limit
60
+ if (maxTokensPerRun === 0)
61
+ return false;
25
62
  const row = await db
26
63
  .selectFrom("runs")
27
64
  .select("subagent_tokens_used")
28
- .where("id", "=", parentRunId)
65
+ .where("id", "=", budgetRunId)
29
66
  .executeTakeFirst();
30
67
  if (!row)
31
68
  return false;
32
- const { maxTokensPerRun } = await subagentLimits(db, config, orgId);
33
69
  return Number(row.subagent_tokens_used) >= maxTokensPerRun;
34
70
  }
@@ -0,0 +1,95 @@
1
+ import { EventLog } from "../../conversations/event-log.js";
2
+ import { KernelConfigService } from "../../infra/config/kernel-config.service.js";
3
+ import { KernelDb } from "../../infra/database/kernel-db.js";
4
+ import { TransactionHost } from "../../infra/database/transaction-host.js";
5
+ import type { KernelLogger } from "../../log.js";
6
+ import type { ToolStepContext } from "../../tools/pipeline.js";
7
+ import { RunJobs } from "../run-jobs.js";
8
+ import { SubagentDeliveries } from "./deliveries.js";
9
+ /** The message tools' test seams (`SUBAGENT_MESSAGES_HOOKS`; the kernel never provides them). */
10
+ export interface SubagentMessagesHooks {
11
+ /**
12
+ * Called by {@link SubagentMessages.toChild} after it read whether the sub-agent has an active
13
+ * run and before it acts on that: a test ends the run here to race the send.
14
+ */
15
+ afterStatusRead?(childConversationId: string): Promise<void>;
16
+ }
17
+ /** Optional provider: {@link SubagentMessagesHooks} (tests). */
18
+ export declare const SUBAGENT_MESSAGES_HOOKS: unique symbol;
19
+ /**
20
+ * What a message tool call did. `logged`: its `tool_result` (and `tool.called` audit) is already
21
+ * in the log, written with the dispatch that started an idle sub-agent; otherwise the pipeline
22
+ * writes the result.
23
+ */
24
+ export interface MessageOutcome {
25
+ content: string;
26
+ isError: boolean;
27
+ logged?: boolean;
28
+ }
29
+ /** Idempotency key of a report or note a sub-agent's call delivered to its parent. */
30
+ export declare const toParentIdemKey: (runId: string, callId: string) => string;
31
+ /**
32
+ * Messages between the agents of one tree (agent map spec §4.2, §4.3, §5): `SendMessage` and
33
+ * `SubagentHandback`, called by the tool pipeline.
34
+ *
35
+ * A message to a sub-agent ({@link toChild}) is a `user_message` in its log with
36
+ * `dispatch.kind: "message"`, idempotent by the sending call. While the sub-agent has an active run
37
+ * it is appended under the sub-agent's row lock, which every terminal path of its runs takes too:
38
+ * the run absorbs it at its next model call, or, when the run ends without another call, the end's
39
+ * `ensureRun` starts the next run from it (`RunQueue.childWakeIn`). An idle sub-agent is started
40
+ * again through the dispatch transaction (a follow-up: it counts as a dispatch and takes a
41
+ * concurrency slot, refused at the limits, agent map spec §6), with the gates of the sub-agent's
42
+ * type checked again and its frozen tools narrowed to what the sender's current version allows.
43
+ * A message never waits on a lock a running sub-agent holds while it waits for the sender's run
44
+ * row (the dispatch transaction locks the sub-agent's row only when it has no active run).
45
+ *
46
+ * A sub-agent's note or report to its parent ({@link toParent}) is one `subagent_delivery` in the
47
+ * parent's log (`SubagentDeliveries.deliverIn`), idempotent by the call.
48
+ */
49
+ export declare class SubagentMessages {
50
+ private readonly kdb;
51
+ private readonly eventLog;
52
+ private readonly config;
53
+ private readonly deliveries;
54
+ readonly txHost: TransactionHost;
55
+ private readonly hooks?;
56
+ /** What the dispatch transaction of a restart needs (`commit`). */
57
+ private readonly deps;
58
+ constructor(kdb: KernelDb, eventLog: EventLog, config: KernelConfigService, jobs: RunJobs, log: KernelLogger, deliveries: SubagentDeliveries, txHost: TransactionHost, hooks?: SubagentMessagesHooks | undefined);
59
+ /** The restart's dispatch writes in a transaction of their own (see `commitDispatchIn`). */
60
+ private commitDispatch;
61
+ /** The context's handle (the transaction of a `@Transactional` method, else the pool). */
62
+ private get db();
63
+ /**
64
+ * `SendMessage` (agent map spec §4.2, §5.1): `to` is one of the caller's own sub-agents by id,
65
+ * or `"parent"` in a sub-agent. Anything else (a sibling, a grandchild, another conversation's
66
+ * sub-agent, an unknown id, `"parent"` at the root) is refused with the valid targets.
67
+ */
68
+ toChild(ctx: ToolStepContext, callId: string, childId: string, text: string,
69
+ /** The pipeline's record of why the call was allowed (the `tool.called` audit of a restart). */
70
+ opts?: {
71
+ authorization?: Record<string, unknown>;
72
+ }): Promise<MessageOutcome>;
73
+ /**
74
+ * A sub-agent's note (`SendMessage` to `"parent"`) or report (`SubagentHandback`) to its parent
75
+ * (agent map spec §4.3, §5.2): one `subagent_delivery` of this run in the parent's log,
76
+ * idempotent by the call; an active parent run absorbs it, an idle parent is woken.
77
+ */
78
+ toParent(ctx: ToolStepContext, kind: "note" | "report", text: string, callId: string): Promise<MessageOutcome>;
79
+ /**
80
+ * Appends the message to a sub-agent whose run is active, under its row lock (a run's terminal
81
+ * write takes the same lock, so the run is still active when the message lands). Null when no
82
+ * run is active any more: the caller starts one.
83
+ */
84
+ private appendToRunning;
85
+ /**
86
+ * Starts an idle sub-agent again with the message (the dispatch transaction, `commit`): its row
87
+ * is locked only after no active run was found, and again checked under the lock. `"active"`
88
+ * when a run is active after all (the caller appends to it instead).
89
+ */
90
+ private restart;
91
+ /** The active run of a conversation, if any. */
92
+ private activeRunOf;
93
+ /** The unknown-target refusal, listing the caller's own sub-agents (newest first). */
94
+ private unknownTarget;
95
+ }
@@ -0,0 +1,328 @@
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 { normalizeStoredDefinition } from "../../agents/definition.js";
12
+ import { EventLog } from "../../conversations/event-log.js";
13
+ import { KernelConfigService } from "../../infra/config/kernel-config.service.js";
14
+ import { KernelDb } from "../../infra/database/kernel-db.js";
15
+ import { TransactionHost } from "../../infra/database/transaction-host.js";
16
+ import { Transactional } from "../../infra/database/transactional.decorator.js";
17
+ import { KERNEL_LOGGER } from "../../infra/tokens.js";
18
+ import { SEND_MESSAGE } from "../../tools/builtin-names.js";
19
+ import { AGENT_REFUSALS } from "../../tools/builtins/agent.js";
20
+ import { HANDBACK_FORK_TEXT, HANDBACK_NOT_A_CHILD_TEXT, HANDBACK_RESULT_TEXT, } from "../../tools/builtins/handback.js";
21
+ import { PARENT_TARGET, SEND_MESSAGE_REFUSALS, SEND_TARGETS_LISTED, SENT_TO_PARENT_TEXT, sentToIdleText, sentToRunningText, } from "../../tools/builtins/send-message.js";
22
+ import { ACTIVE_RUN_STATUSES, RunJobs } from "../run-jobs.js";
23
+ import { deliveryRowOfChildRun, dispatchOfCall } from "./child.js";
24
+ import { narrowFollowUp } from "./definition.js";
25
+ import { SubagentDeliveries } from "./deliveries.js";
26
+ import { commit, commitDispatchIn, orgAgentGates, sentMessageIdemKey, taskMessage, } from "./dispatch.js";
27
+ import { findType, resolveRoster } from "./roster.js";
28
+ /** Optional provider: {@link SubagentMessagesHooks} (tests). */
29
+ export const SUBAGENT_MESSAGES_HOOKS = Symbol("SUBAGENT_MESSAGES_HOOKS");
30
+ /** How often a send re-reads a sub-agent whose run started or ended while it acted. */
31
+ const SEND_ATTEMPTS = 3;
32
+ /** The sub-agent's state changed on every attempt (a run starting and ending each time). */
33
+ const SEND_RETRY_TEXT = "The sub-agent changed state while the message was being sent; call SendMessage again.";
34
+ const refused = (content) => ({ content, isError: true });
35
+ /** Idempotency key of a report or note a sub-agent's call delivered to its parent. */
36
+ export const toParentIdemKey = (runId, callId) => `subagent_delivery:${runId}:${callId}`;
37
+ /**
38
+ * Messages between the agents of one tree (agent map spec §4.2, §4.3, §5): `SendMessage` and
39
+ * `SubagentHandback`, called by the tool pipeline.
40
+ *
41
+ * A message to a sub-agent ({@link toChild}) is a `user_message` in its log with
42
+ * `dispatch.kind: "message"`, idempotent by the sending call. While the sub-agent has an active run
43
+ * it is appended under the sub-agent's row lock, which every terminal path of its runs takes too:
44
+ * the run absorbs it at its next model call, or, when the run ends without another call, the end's
45
+ * `ensureRun` starts the next run from it (`RunQueue.childWakeIn`). An idle sub-agent is started
46
+ * again through the dispatch transaction (a follow-up: it counts as a dispatch and takes a
47
+ * concurrency slot, refused at the limits, agent map spec §6), with the gates of the sub-agent's
48
+ * type checked again and its frozen tools narrowed to what the sender's current version allows.
49
+ * A message never waits on a lock a running sub-agent holds while it waits for the sender's run
50
+ * row (the dispatch transaction locks the sub-agent's row only when it has no active run).
51
+ *
52
+ * A sub-agent's note or report to its parent ({@link toParent}) is one `subagent_delivery` in the
53
+ * parent's log (`SubagentDeliveries.deliverIn`), idempotent by the call.
54
+ */
55
+ let SubagentMessages = class SubagentMessages {
56
+ kdb;
57
+ eventLog;
58
+ config;
59
+ deliveries;
60
+ txHost;
61
+ hooks;
62
+ /** What the dispatch transaction of a restart needs (`commit`). */
63
+ deps;
64
+ constructor(kdb, eventLog, config, jobs, log, deliveries, txHost, hooks) {
65
+ this.kdb = kdb;
66
+ this.eventLog = eventLog;
67
+ this.config = config;
68
+ this.deliveries = deliveries;
69
+ this.txHost = txHost;
70
+ this.hooks = hooks;
71
+ this.deps = {
72
+ eventLog,
73
+ enqueue: (data, jobId, kind) => jobs.enqueue(data, jobId, kind),
74
+ log,
75
+ commitDispatch: (a, plan, child) => this.commitDispatch(a, plan, child),
76
+ };
77
+ }
78
+ /** The restart's dispatch writes in a transaction of their own (see `commitDispatchIn`). */
79
+ commitDispatch(a, plan, child) {
80
+ return commitDispatchIn({ db: this.db, eventLog: this.eventLog, config: this.config }, a, plan, child);
81
+ }
82
+ /** The context's handle (the transaction of a `@Transactional` method, else the pool). */
83
+ get db() {
84
+ return this.kdb.db;
85
+ }
86
+ /**
87
+ * `SendMessage` (agent map spec §4.2, §5.1): `to` is one of the caller's own sub-agents by id,
88
+ * or `"parent"` in a sub-agent. Anything else (a sibling, a grandchild, another conversation's
89
+ * sub-agent, an unknown id, `"parent"` at the root) is refused with the valid targets.
90
+ */
91
+ async toChild(ctx, callId, childId, text,
92
+ /** The pipeline's record of why the call was allowed (the `tool.called` audit of a restart). */
93
+ opts = {}) {
94
+ if (childId === PARENT_TARGET && ctx.parent !== undefined) {
95
+ return this.toParent(ctx, "note", text, callId);
96
+ }
97
+ const child = await this.db
98
+ .selectFrom("conversations")
99
+ .select(["id", "title", "subagent_type"])
100
+ .where("id", "=", childId)
101
+ .where("org_id", "=", ctx.orgId)
102
+ .where("kind", "=", "subagent")
103
+ .where("parent_conversation_id", "=", ctx.conversationId)
104
+ .where("deleted_at", "is", null)
105
+ .executeTakeFirst();
106
+ const started = child && (await this.eventLog.findByIdem(child.id, "subagent_started"));
107
+ if (!child || started?.type !== "subagent_started")
108
+ return this.unknownTarget(ctx, childId);
109
+ const target = { id: child.id, description: child.title ?? "" };
110
+ const { template } = started.payload;
111
+ const agentType = child.subagent_type ?? started.payload.agentType;
112
+ // a retried call (its holder died after sending): the same answer, nothing sent twice
113
+ const prior = await this.eventLog.findByIdem(child.id, sentMessageIdemKey(ctx.runId, callId));
114
+ if (prior && !(await dispatchOfCall(this.db, ctx.runId, callId))) {
115
+ return { content: sentToRunningText(target), isError: false };
116
+ }
117
+ // the sub-agent's type stays available to the sender (§4.1, checked at every message): an org
118
+ // agent passes its gates, any other type is still in the sender's roster
119
+ let current = ctx.agent;
120
+ if (template.source === "agent") {
121
+ const gates = await orgAgentGates(this.db, { ctx, callId }, template.id ?? "", agentType, true);
122
+ if ("refused" in gates)
123
+ return refused(SEND_MESSAGE_REFUSALS.notAvailable(child.id, agentType));
124
+ current = gates.checked.definition;
125
+ }
126
+ else {
127
+ const roster = await resolveRoster(this.db, ctx.orgId, ctx.agent, this.deps.log);
128
+ // a plugin template by its template id: an org template's, a linked copy's own or a
129
+ // platform template's, or an alias of the entry
130
+ const entry = template.source === "plugin"
131
+ ? roster.find((e) => e.source === "plugin" &&
132
+ template.id !== undefined &&
133
+ (e.templateId === template.id || e.aliasTemplateIds?.includes(template.id)))
134
+ : findType(roster, agentType);
135
+ if (entry?.source !== template.source) {
136
+ return refused(SEND_MESSAGE_REFUSALS.notAvailable(child.id, agentType));
137
+ }
138
+ }
139
+ const frozen = normalizeStoredDefinition(started.payload.definition);
140
+ for (let attempt = 0; attempt < SEND_ATTEMPTS; attempt++) {
141
+ const active = prior === undefined && (await this.activeRunOf(child.id)) !== undefined;
142
+ await this.hooks?.afterStatusRead?.(child.id);
143
+ if (active) {
144
+ const seq = await this.appendToRunning(ctx, callId, child.id, text, narrowFollowUp(frozen, current));
145
+ if (seq !== null) {
146
+ await this.eventLog.notify(child.id, seq);
147
+ return { content: sentToRunningText(target), isError: false };
148
+ }
149
+ continue;
150
+ }
151
+ const out = await this.restart(ctx, callId, text, target, opts.authorization, {
152
+ childConversationId: child.id,
153
+ agentType,
154
+ source: template.source,
155
+ agentId: template.source === "agent" ? (template.id ?? "") : ctx.agentId,
156
+ agentVersion: template.source === "agent" ? (template.version ?? ctx.agentVersion) : ctx.agentVersion,
157
+ resumed: true,
158
+ model: started.payload.definition.model,
159
+ tierFallback: false,
160
+ }, frozen);
161
+ if (out === "active")
162
+ continue;
163
+ return out;
164
+ }
165
+ return refused(SEND_RETRY_TEXT);
166
+ }
167
+ /**
168
+ * A sub-agent's note (`SendMessage` to `"parent"`) or report (`SubagentHandback`) to its parent
169
+ * (agent map spec §4.3, §5.2): one `subagent_delivery` of this run in the parent's log,
170
+ * idempotent by the call; an active parent run absorbs it, an idle parent is woken.
171
+ */
172
+ async toParent(ctx, kind, text, callId) {
173
+ if (ctx.parent === undefined)
174
+ return refused(HANDBACK_NOT_A_CHILD_TEXT);
175
+ const row = await deliveryRowOfChildRun(this.db, ctx.runId);
176
+ if (!row)
177
+ return refused(SEND_MESSAGE_REFUSALS.notAvailableHere);
178
+ // a fork invocation's parent run waits for the final reply (phase D, agent map spec §5.4)
179
+ if (row.forSkill === true)
180
+ return refused(HANDBACK_FORK_TEXT);
181
+ await this.deliveries.deliverIn(row, { kind, text }, { idemKey: toParentIdemKey(ctx.runId, callId) });
182
+ return {
183
+ content: kind === "report" ? HANDBACK_RESULT_TEXT : SENT_TO_PARENT_TEXT,
184
+ isError: false,
185
+ };
186
+ }
187
+ /**
188
+ * Appends the message to a sub-agent whose run is active, under its row lock (a run's terminal
189
+ * write takes the same lock, so the run is still active when the message lands). Null when no
190
+ * run is active any more: the caller starts one.
191
+ */
192
+ async appendToRunning(ctx, callId, childId, text, narrowed) {
193
+ await this.db
194
+ .selectFrom("conversations")
195
+ .select("id")
196
+ .where("id", "=", childId)
197
+ .forUpdate()
198
+ .executeTakeFirst();
199
+ if ((await this.activeRunOf(childId)) === undefined)
200
+ return null;
201
+ const [ev] = await this.eventLog.appendIn(childId, [
202
+ taskMessage(ctx, callId, text, narrowed, undefined, true),
203
+ ]);
204
+ return ev?.seq ?? null;
205
+ }
206
+ /**
207
+ * Starts an idle sub-agent again with the message (the dispatch transaction, `commit`): its row
208
+ * is locked only after no active run was found, and again checked under the lock. `"active"`
209
+ * when a run is active after all (the caller appends to it instead).
210
+ */
211
+ async restart(ctx, callId, text, target, authorization, plan, frozen) {
212
+ const a = {
213
+ ctx,
214
+ callId,
215
+ input: { description: target.description || target.id, prompt: text },
216
+ call: {
217
+ toolKey: SEND_MESSAGE,
218
+ authorization: authorization ?? { policy: "allow" },
219
+ startedAt: Date.now(),
220
+ },
221
+ sent: { content: sentToIdleText(target), refusals: SEND_MESSAGE_REFUSALS },
222
+ };
223
+ const out = await commit(this.deps, a, plan, async (t, checked) => {
224
+ const current = plan.source === "agent" ? checked?.definition : ctx.agent;
225
+ if (current === undefined)
226
+ throw new Error("org agent message without its checked version");
227
+ const activeRun = () => t
228
+ .selectFrom("runs")
229
+ .select("id")
230
+ .where("conversation_id", "=", plan.childConversationId)
231
+ .where("status", "in", ACTIVE_RUN_STATUSES)
232
+ .executeTakeFirst();
233
+ // an active sub-agent is not waited for here: its token append locks its row and then the
234
+ // sender's run row, which this transaction already holds (review I1 of phase C)
235
+ if (await activeRun())
236
+ return null;
237
+ // A brief inverted-order window remains: this transaction holds the tree's budget run
238
+ // (`commit`) and now takes the child's row, while a run of the child that started between the
239
+ // check above and this lock (a wake run, `RunQueue.childWakeIn`) takes the child's row and
240
+ // then the budget run in its token append (`StepLog.appendCounted`). PostgreSQL's deadlock
241
+ // detection aborts one of the two transactions and the other goes on: either this
242
+ // `SendMessage` call errors (nothing written; a repeat finds the running sub-agent and
243
+ // appends to it) or that step's append errors as any database error of a step does. Accepted
244
+ // rather than a lock reordering, for a window of a few statements.
245
+ await t
246
+ .selectFrom("conversations")
247
+ .select("id")
248
+ .where("id", "=", plan.childConversationId)
249
+ .forUpdate()
250
+ .executeTakeFirst();
251
+ if (await activeRun())
252
+ return null;
253
+ const [task] = await this.eventLog.appendIn(plan.childConversationId, [
254
+ taskMessage(ctx, callId, text, narrowFollowUp(frozen, current), undefined, true),
255
+ ]);
256
+ return task ?? null;
257
+ });
258
+ if (out === null)
259
+ return "active";
260
+ if (out.kind === "dispatched")
261
+ return { content: out.content, isError: false, logged: true };
262
+ // a gate revoked since the check above, under the dispatch's locks
263
+ if (out.content === AGENT_REFUSALS.agentNotAvailable(plan.agentType)) {
264
+ return refused(SEND_MESSAGE_REFUSALS.notAvailable(target.id, plan.agentType));
265
+ }
266
+ // a limit refusal counts the sub-agent's slot as free: when a run of it started meanwhile,
267
+ // the message goes to that run instead
268
+ if ((await this.activeRunOf(plan.childConversationId)) !== undefined)
269
+ return "active";
270
+ return refused(out.content);
271
+ }
272
+ /** The active run of a conversation, if any. */
273
+ activeRunOf(conversationId) {
274
+ return this.db
275
+ .selectFrom("runs")
276
+ .select("id")
277
+ .where("conversation_id", "=", conversationId)
278
+ .where("status", "in", ACTIVE_RUN_STATUSES)
279
+ .executeTakeFirst();
280
+ }
281
+ /** The unknown-target refusal, listing the caller's own sub-agents (newest first). */
282
+ async unknownTarget(ctx, to) {
283
+ const rows = await this.db
284
+ .selectFrom("conversations")
285
+ .select(["id", "title"])
286
+ .where("org_id", "=", ctx.orgId)
287
+ .where("kind", "=", "subagent")
288
+ .where("parent_conversation_id", "=", ctx.conversationId)
289
+ .where("deleted_at", "is", null)
290
+ .orderBy("created_at", "desc")
291
+ .orderBy("id")
292
+ .limit(SEND_TARGETS_LISTED + 1)
293
+ .execute();
294
+ const listed = rows.slice(0, SEND_TARGETS_LISTED);
295
+ let more = 0;
296
+ if (rows.length > SEND_TARGETS_LISTED) {
297
+ const total = await this.db
298
+ .selectFrom("conversations")
299
+ .select((eb) => eb.fn.countAll().as("n"))
300
+ .where("org_id", "=", ctx.orgId)
301
+ .where("kind", "=", "subagent")
302
+ .where("parent_conversation_id", "=", ctx.conversationId)
303
+ .where("deleted_at", "is", null)
304
+ .executeTakeFirstOrThrow();
305
+ more = Number(total.n) - listed.length;
306
+ }
307
+ return refused(SEND_MESSAGE_REFUSALS.unknownTarget(to, listed.map((r) => ({ id: r.id, description: r.title ?? "" })), { hasParent: ctx.parent !== undefined, more }));
308
+ }
309
+ };
310
+ __decorate([
311
+ Transactional({ propagation: "requires_new" })
312
+ ], SubagentMessages.prototype, "commitDispatch", null);
313
+ __decorate([
314
+ Transactional({ propagation: "requires_new" })
315
+ ], SubagentMessages.prototype, "appendToRunning", null);
316
+ SubagentMessages = __decorate([
317
+ Injectable(),
318
+ __param(0, Inject(KernelDb)),
319
+ __param(1, Inject(EventLog)),
320
+ __param(2, Inject(KernelConfigService)),
321
+ __param(3, Inject(RunJobs)),
322
+ __param(4, Inject(KERNEL_LOGGER)),
323
+ __param(5, Inject(SubagentDeliveries)),
324
+ __param(6, Inject(TransactionHost)),
325
+ __param(7, Optional()),
326
+ __param(7, Inject(SUBAGENT_MESSAGES_HOOKS))
327
+ ], SubagentMessages);
328
+ export { SubagentMessages };
@@ -1,5 +1,5 @@
1
1
  import { type AgentDefinition } from "../../agents/definition.js";
2
- import type { KernelDb } from "../../db/kernel-schema.js";
2
+ import type { KernelSchemaDb } from "../../db/kernel-schema.js";
3
3
  /**
4
4
  * The gates an org agent sub-agent passes (spec §5.5), checked at every dispatch and every
5
5
  * follow-up: `deleted` (the agent is gone, or not of this org), `allowlist` (the parent agent's
@@ -22,7 +22,7 @@ export type OrgAgentCheck = {
22
22
  * dispatches at once). On success returns the agent's current version and definition, which the
23
23
  * caller freezes as is (never read again, so the frozen version is the one the gates saw).
24
24
  */
25
- export declare function checkOrgAgent(db: KernelDb, a: {
25
+ export declare function checkOrgAgent(db: KernelSchemaDb, a: {
26
26
  orgId: string;
27
27
  parentDefinition: Pick<AgentDefinition, "subagents">;
28
28
  agentId: string;
@@ -32,12 +32,12 @@ export declare function checkOrgAgent(db: KernelDb, a: {
32
32
  * The parent agent's current definition (the allowlist gate reads it, not the run's version), or
33
33
  * null when the agent no longer exists or is deleted.
34
34
  */
35
- export declare function currentAgentDefinition(db: KernelDb, agentId: string): Promise<AgentDefinition | null>;
35
+ export declare function currentAgentDefinition(db: KernelSchemaDb, agentId: string): Promise<AgentDefinition | null>;
36
36
  /**
37
37
  * Audits a refused org agent dispatch (`subagent.refused`, spec §5.5): actor the person who
38
38
  * started the parent run, target the refused agent, so its owner can see attempts to use it.
39
39
  */
40
- export declare function auditRefusal(db: KernelDb, a: {
40
+ export declare function auditRefusal(db: KernelSchemaDb, a: {
41
41
  orgId: string;
42
42
  triggerAccountId: string;
43
43
  agentId: string;
@@ -1,6 +1,7 @@
1
- import { isAgentVisibleTo } from "../../agents/agents.service.js";
1
+ import { isAgentVisibleTo } from "../../agents/agent-lookup.js";
2
2
  import { normalizeStoredDefinition } from "../../agents/definition.js";
3
3
  import { audit } from "../../identity/audit.js";
4
+ import { normalizeStoredDefinitionIn } from "../../tools/legacy-data.js";
4
5
  /**
5
6
  * Checks the gates for dispatching `agentId` from a parent whose current definition is
6
7
  * `parentDefinition` (read live by the caller: R5, removing an allowlist entry stops new
@@ -23,7 +24,7 @@ export async function checkOrgAgent(db, a) {
23
24
  if (!(a.parentDefinition.subagents?.agents ?? []).some((x) => x.agentId === a.agentId)) {
24
25
  return { ok: false, gate: "allowlist" };
25
26
  }
26
- const definition = normalizeStoredDefinition(row.definition);
27
+ const definition = await normalizeStoredDefinitionIn(db, a.orgId, row.definition);
27
28
  if (definition.subagents?.dispatchable !== true)
28
29
  return { ok: false, gate: "dispatchable" };
29
30
  if (!(await isAgentVisibleTo(db, a.agentId, a.triggerAccountId))) {
@@ -1,7 +1,7 @@
1
1
  /**
2
- * The sub-agent preamble (spec §6.3, model-visible): rendered in a child's system text after
3
- * `BEHAVIOR_RULES` and before its instructions. Frozen into each child's `subagent_started` at
4
- * dispatch, and request building reads it from there, so changing this text never alters an old
5
- * child's requests.
2
+ * The sub-agent preamble (spec §6.3, agent map spec §4.4, model-visible): rendered in a child's
3
+ * system text after `BEHAVIOR_RULES` and before its instructions. Frozen into each child's
4
+ * `subagent_started` at dispatch, and request building reads it from there, so changing this text
5
+ * never alters an old child's requests.
6
6
  */
7
7
  export declare const SUBAGENT_PREAMBLE: string;
@@ -1,11 +1,13 @@
1
1
  /**
2
- * The sub-agent preamble (spec §6.3, model-visible): rendered in a child's system text after
3
- * `BEHAVIOR_RULES` and before its instructions. Frozen into each child's `subagent_started` at
4
- * dispatch, and request building reads it from there, so changing this text never alters an old
5
- * child's requests.
2
+ * The sub-agent preamble (spec §6.3, agent map spec §4.4, model-visible): rendered in a child's
3
+ * system text after `BEHAVIOR_RULES` and before its instructions. Frozen into each child's
4
+ * `subagent_started` at dispatch, and request building reads it from there, so changing this text
5
+ * never alters an old child's requests.
6
6
  */
7
7
  export const SUBAGENT_PREAMBLE = "You are a sub-agent. Another agent dispatched you with the task in the first user message. " +
8
8
  "Work on it on your own: the user does not watch this conversation and you cannot ask them " +
9
- "questions. When you are done, reply with your final report. That reply is the only thing " +
10
- "returned to the agent that dispatched you, so include everything it needs. If you cannot " +
11
- "finish, say what is missing and why.";
9
+ "questions. When you are done, hand your report back with SubagentHandback and include " +
10
+ "everything the agent that dispatched you needs; if you end your turn without handing back, " +
11
+ "your final reply is delivered as your report. While you work you can send that agent a short " +
12
+ 'note with SendMessage to "parent", and messages from it may arrive in this conversation. If ' +
13
+ "you cannot finish, say what is missing and why.";