@capybara-hq/kernel 0.1.0-rc.1 → 0.1.0-rc.11

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 (1170) 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 +60 -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 +264 -0
  99. package/dist/catalog/catalog-content.js +430 -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 +677 -0
  106. package/dist/catalog/catalog-scope.service.d.ts +286 -0
  107. package/dist/catalog/catalog-scope.service.js +1196 -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 +144 -207
  111. package/dist/catalog/catalog.service.js +258 -528
  112. package/dist/catalog/claude/agents.js +15 -10
  113. package/dist/catalog/claude/translate.js +3 -0
  114. package/dist/catalog/cli.d.ts +14 -3
  115. package/dist/catalog/cli.js +39 -32
  116. package/dist/catalog/component-promotion.d.ts +96 -0
  117. package/dist/catalog/component-promotion.js +395 -0
  118. package/dist/catalog/component-scope.controller.d.ts +90 -0
  119. package/dist/catalog/component-scope.controller.js +234 -0
  120. package/dist/catalog/component-scope.schemas.d.ts +118 -0
  121. package/dist/catalog/component-scope.schemas.js +97 -0
  122. package/dist/catalog/component-scope.service.d.ts +366 -0
  123. package/dist/catalog/component-scope.service.js +1115 -0
  124. package/dist/catalog/component-state.d.ts +197 -0
  125. package/dist/catalog/component-state.js +473 -0
  126. package/dist/catalog/git-source.d.ts +9 -1
  127. package/dist/catalog/git-source.js +29 -2
  128. package/dist/catalog/job-ids.d.ts +45 -0
  129. package/dist/catalog/job-ids.js +40 -0
  130. package/dist/catalog/jobs.d.ts +27 -0
  131. package/dist/catalog/jobs.js +70 -0
  132. package/dist/catalog/locks.d.ts +24 -0
  133. package/dist/catalog/locks.js +63 -0
  134. package/dist/catalog/marketplace-fetch.d.ts +1 -1
  135. package/dist/catalog/marketplace-icons.d.ts +64 -0
  136. package/dist/catalog/marketplace-icons.js +131 -0
  137. package/dist/catalog/marketplaces.controller.d.ts +53 -44
  138. package/dist/catalog/marketplaces.controller.js +146 -51
  139. package/dist/catalog/marketplaces.schemas.d.ts +48 -0
  140. package/dist/catalog/marketplaces.schemas.js +53 -0
  141. package/dist/catalog/marketplaces.service.d.ts +136 -26
  142. package/dist/catalog/marketplaces.service.js +663 -281
  143. package/dist/catalog/org-catalog.controller.d.ts +115 -63
  144. package/dist/catalog/org-catalog.controller.js +207 -100
  145. package/dist/catalog/org-catalog.schemas.d.ts +88 -0
  146. package/dist/catalog/org-catalog.schemas.js +93 -0
  147. package/dist/catalog/org-catalog.service.d.ts +89 -216
  148. package/dist/catalog/org-catalog.service.js +434 -472
  149. package/dist/catalog/org-extension-switch.d.ts +41 -0
  150. package/dist/catalog/org-extension-switch.js +115 -0
  151. package/dist/catalog/org-extension.controller.d.ts +113 -0
  152. package/dist/catalog/org-extension.controller.js +271 -0
  153. package/dist/catalog/org-extension.schemas.d.ts +15 -0
  154. package/dist/catalog/org-extension.schemas.js +22 -0
  155. package/dist/catalog/org-plugin-uploads.controller.d.ts +77 -0
  156. package/dist/catalog/org-plugin-uploads.controller.js +200 -0
  157. package/dist/catalog/org-plugin-uploads.d.ts +71 -0
  158. package/dist/catalog/org-plugin-uploads.js +122 -0
  159. package/dist/catalog/org-plugin-uploads.schemas.d.ts +20 -0
  160. package/dist/catalog/org-plugin-uploads.schemas.js +32 -0
  161. package/dist/catalog/owned-items.d.ts +188 -0
  162. package/dist/catalog/owned-items.js +808 -0
  163. package/dist/catalog/owned-plugin-cleanup.d.ts +56 -0
  164. package/dist/catalog/owned-plugin-cleanup.js +194 -0
  165. package/dist/catalog/ownership.d.ts +172 -0
  166. package/dist/catalog/ownership.js +326 -0
  167. package/dist/catalog/platform-components.d.ts +243 -0
  168. package/dist/catalog/platform-components.js +872 -0
  169. package/dist/catalog/platform-migration.d.ts +115 -0
  170. package/dist/catalog/platform-migration.js +583 -0
  171. package/dist/catalog/plugin-import.d.ts +293 -71
  172. package/dist/catalog/plugin-import.js +1039 -281
  173. package/dist/catalog/plugin-install.d.ts +271 -66
  174. package/dist/catalog/plugin-install.js +1198 -344
  175. package/dist/catalog/plugin-package.d.ts +41 -4
  176. package/dist/catalog/plugin-package.js +140 -7
  177. package/dist/catalog/plugin-upgrade.d.ts +312 -188
  178. package/dist/catalog/plugin-upgrade.js +1371 -1065
  179. package/dist/catalog/request-rules.d.ts +65 -0
  180. package/dist/catalog/request-rules.js +217 -0
  181. package/dist/catalog/requests.service.d.ts +205 -117
  182. package/dist/catalog/requests.service.js +612 -369
  183. package/dist/catalog/reserved-names.d.ts +8 -0
  184. package/dist/catalog/reserved-names.js +42 -0
  185. package/dist/catalog/scope-orgs.d.ts +21 -0
  186. package/dist/catalog/scope-orgs.js +67 -0
  187. package/dist/catalog/scope-state.d.ts +35 -0
  188. package/dist/catalog/scope-state.js +87 -0
  189. package/dist/catalog/scope-sync-workers.d.ts +7 -0
  190. package/dist/catalog/scope-sync-workers.js +29 -0
  191. package/dist/catalog/scope-sync.d.ts +176 -0
  192. package/dist/catalog/scope-sync.js +576 -0
  193. package/dist/catalog/scope.d.ts +42 -0
  194. package/dist/catalog/scope.js +42 -0
  195. package/dist/catalog/unshare.d.ts +22 -0
  196. package/dist/catalog/unshare.js +119 -0
  197. package/dist/channels/actions.d.ts +6 -4
  198. package/dist/channels/actions.js +11 -4
  199. package/dist/channels/cards.d.ts +33 -11
  200. package/dist/channels/cards.js +96 -24
  201. package/dist/channels/channels.module.d.ts +40 -0
  202. package/dist/channels/channels.module.js +130 -0
  203. package/dist/channels/channels.schemas.d.ts +37 -0
  204. package/dist/channels/channels.schemas.js +38 -0
  205. package/dist/channels/connections.controller.d.ts +44 -37
  206. package/dist/channels/connections.controller.js +83 -38
  207. package/dist/channels/connections.service.d.ts +101 -30
  208. package/dist/channels/connections.service.js +380 -147
  209. package/dist/channels/inbound.d.ts +44 -38
  210. package/dist/channels/inbound.js +190 -44
  211. package/dist/channels/job-ids.d.ts +10 -0
  212. package/dist/channels/job-ids.js +10 -0
  213. package/dist/channels/jobs.d.ts +85 -0
  214. package/dist/channels/jobs.js +157 -0
  215. package/dist/channels/outbound.d.ts +71 -80
  216. package/dist/channels/outbound.js +219 -202
  217. package/dist/channels/phrases.d.ts +33 -2
  218. package/dist/channels/phrases.js +29 -1
  219. package/dist/channels/supervisor.d.ts +88 -46
  220. package/dist/channels/supervisor.js +230 -132
  221. package/dist/channels/threads.d.ts +34 -8
  222. package/dist/channels/threads.js +79 -13
  223. package/dist/channels/webhook.d.ts +20 -14
  224. package/dist/channels/webhook.js +51 -20
  225. package/dist/config/docs.js +5 -1
  226. package/dist/config/load.d.ts +3 -2
  227. package/dist/config/load.js +3 -2
  228. package/dist/config/nacos-source.js +11 -2
  229. package/dist/config/schema.d.ts +36 -2
  230. package/dist/config/schema.js +226 -25
  231. package/dist/conversations/access.d.ts +31 -0
  232. package/dist/conversations/access.js +110 -0
  233. package/dist/conversations/agent-tree.d.ts +46 -0
  234. package/dist/conversations/agent-tree.js +92 -0
  235. package/dist/conversations/artifacts.d.ts +11 -11
  236. package/dist/conversations/artifacts.js +36 -10
  237. package/dist/conversations/attachments.controller.d.ts +1 -1
  238. package/dist/conversations/attachments.controller.js +8 -6
  239. package/dist/conversations/attachments.module.d.ts +7 -0
  240. package/dist/conversations/attachments.module.js +25 -0
  241. package/dist/conversations/attachments.service.d.ts +60 -22
  242. package/dist/conversations/attachments.service.js +249 -51
  243. package/dist/conversations/conversations.controller.d.ts +86 -50
  244. package/dist/conversations/conversations.controller.js +184 -103
  245. package/dist/conversations/conversations.module.d.ts +8 -0
  246. package/dist/conversations/conversations.module.js +72 -0
  247. package/dist/conversations/conversations.schemas.d.ts +52 -0
  248. package/dist/conversations/conversations.schemas.js +79 -0
  249. package/dist/conversations/conversations.service.d.ts +166 -49
  250. package/dist/conversations/conversations.service.js +383 -179
  251. package/dist/conversations/environment-status.d.ts +24 -0
  252. package/dist/conversations/environment-status.js +71 -0
  253. package/dist/conversations/event-log.d.ts +64 -27
  254. package/dist/conversations/event-log.js +167 -31
  255. package/dist/conversations/events.d.ts +252 -9
  256. package/dist/conversations/events.js +243 -32
  257. package/dist/conversations/files.d.ts +10 -10
  258. package/dist/conversations/files.js +37 -11
  259. package/dist/conversations/idem-keys.d.ts +5 -0
  260. package/dist/conversations/idem-keys.js +5 -0
  261. package/dist/conversations/job-ids.d.ts +6 -0
  262. package/dist/conversations/job-ids.js +6 -0
  263. package/dist/conversations/message-context.d.ts +79 -0
  264. package/dist/conversations/message-context.js +145 -0
  265. package/dist/conversations/outputs-read.d.ts +11 -11
  266. package/dist/conversations/outputs-read.js +31 -7
  267. package/dist/conversations/queue.d.ts +53 -58
  268. package/dist/conversations/queue.js +37 -293
  269. package/dist/conversations/queue.service.d.ts +60 -0
  270. package/dist/conversations/queue.service.js +350 -0
  271. package/dist/conversations/titles.d.ts +83 -27
  272. package/dist/conversations/titles.js +195 -71
  273. package/dist/conversations/tree.d.ts +17 -0
  274. package/dist/conversations/tree.js +42 -0
  275. package/dist/ctx/bus.js +9 -3
  276. package/dist/ctx/create-ctx.d.ts +26 -1
  277. package/dist/ctx/create-ctx.js +45 -16
  278. package/dist/ctx/lock.d.ts +7 -3
  279. package/dist/ctx/lock.js +9 -20
  280. package/dist/ctx/secrets.d.ts +10 -2
  281. package/dist/ctx/secrets.js +7 -3
  282. package/dist/db/kernel-schema.d.ts +589 -27
  283. package/dist/db/pool.d.ts +10 -0
  284. package/dist/db/pool.js +4 -0
  285. package/dist/devices/device-auth.controller.d.ts +42 -0
  286. package/dist/devices/device-auth.controller.js +116 -0
  287. package/dist/devices/device-auth.d.ts +119 -0
  288. package/dist/devices/device-auth.js +403 -0
  289. package/dist/devices/device-auth.module.d.ts +7 -0
  290. package/dist/devices/device-auth.module.js +25 -0
  291. package/dist/devices/device-gateway.d.ts +128 -0
  292. package/dist/devices/device-gateway.js +530 -0
  293. package/dist/devices/device-provider.d.ts +89 -0
  294. package/dist/devices/device-provider.js +151 -0
  295. package/dist/devices/device-routes.d.ts +36 -0
  296. package/dist/devices/device-routes.js +90 -0
  297. package/dist/devices/devices.module.d.ts +16 -0
  298. package/dist/devices/devices.module.js +44 -0
  299. package/dist/devices/dto.d.ts +66 -0
  300. package/dist/devices/dto.js +44 -0
  301. package/dist/devices/keys.d.ts +25 -0
  302. package/dist/devices/keys.js +25 -0
  303. package/dist/devices/machines.d.ts +118 -0
  304. package/dist/devices/machines.js +366 -0
  305. package/dist/devices/relay.d.ts +100 -0
  306. package/dist/devices/relay.js +373 -0
  307. package/dist/devices/targets.d.ts +28 -0
  308. package/dist/devices/targets.js +73 -0
  309. package/dist/environments/access.d.ts +66 -0
  310. package/dist/environments/access.js +113 -0
  311. package/dist/environments/conversation-environments.d.ts +75 -0
  312. package/dist/environments/conversation-environments.js +231 -0
  313. package/dist/environments/dto.d.ts +25 -0
  314. package/dist/environments/dto.js +12 -0
  315. package/dist/environments/environments.controller.d.ts +36 -0
  316. package/dist/environments/environments.controller.js +124 -0
  317. package/dist/environments/environments.module.d.ts +8 -0
  318. package/dist/environments/environments.module.js +31 -0
  319. package/dist/environments/environments.schemas.d.ts +3 -0
  320. package/dist/environments/environments.schemas.js +14 -0
  321. package/dist/environments/environments.service.d.ts +251 -0
  322. package/dist/environments/environments.service.js +791 -0
  323. package/dist/environments/label.d.ts +11 -0
  324. package/dist/environments/label.js +25 -0
  325. package/dist/environments/legacy-cleanup.job.d.ts +34 -0
  326. package/dist/environments/legacy-cleanup.job.js +141 -0
  327. package/dist/errors.d.ts +160 -2
  328. package/dist/errors.js +160 -2
  329. package/dist/evals/budget.d.ts +42 -21
  330. package/dist/evals/budget.js +114 -62
  331. package/dist/evals/evals.module.d.ts +31 -0
  332. package/dist/evals/evals.module.js +114 -0
  333. package/dist/evals/evals.schemas.d.ts +110 -0
  334. package/dist/evals/evals.schemas.js +107 -0
  335. package/dist/evals/jobs.d.ts +20 -0
  336. package/dist/evals/jobs.js +45 -0
  337. package/dist/evals/reconstruct.d.ts +18 -9
  338. package/dist/evals/reconstruct.js +36 -10
  339. package/dist/evals/recorded-tools.d.ts +37 -1
  340. package/dist/evals/recorded-tools.js +120 -10
  341. package/dist/evals/run-replay.d.ts +75 -10
  342. package/dist/evals/run-replay.js +218 -94
  343. package/dist/evals/runs.controller.d.ts +3 -58
  344. package/dist/evals/runs.controller.js +18 -50
  345. package/dist/evals/runs.service.d.ts +31 -52
  346. package/dist/evals/runs.service.js +281 -255
  347. package/dist/evals/sets.controller.d.ts +3 -29
  348. package/dist/evals/sets.controller.js +18 -39
  349. package/dist/evals/sets.service.d.ts +29 -13
  350. package/dist/evals/sets.service.js +262 -202
  351. package/dist/evals/snapshot.d.ts +5 -4
  352. package/dist/evals/snapshot.js +17 -4
  353. package/dist/evals/step-replay.d.ts +6 -8
  354. package/dist/evals/step-replay.js +17 -10
  355. package/dist/evals/trajectory.controller.d.ts +1 -1
  356. package/dist/evals/trajectory.controller.js +11 -7
  357. package/dist/evals/trajectory.d.ts +2 -2
  358. package/dist/evals/trajectory.js +1 -1
  359. package/dist/evals/trajectory.service.d.ts +13 -7
  360. package/dist/evals/trajectory.service.js +56 -21
  361. package/dist/evals/worker.d.ts +48 -31
  362. package/dist/evals/worker.js +229 -124
  363. package/dist/extensions/admin-ops.d.ts +133 -41
  364. package/dist/extensions/admin-ops.js +378 -172
  365. package/dist/extensions/admin-view.d.ts +82 -32
  366. package/dist/extensions/admin-view.js +284 -71
  367. package/dist/extensions/approvals.d.ts +24 -10
  368. package/dist/extensions/approvals.js +73 -46
  369. package/dist/extensions/blobs.d.ts +27 -10
  370. package/dist/extensions/blobs.js +112 -45
  371. package/dist/extensions/bootstrap.d.ts +99 -36
  372. package/dist/extensions/bootstrap.js +290 -134
  373. package/dist/extensions/cli.d.ts +32 -10
  374. package/dist/extensions/cli.js +52 -98
  375. package/dist/extensions/config-hash.d.ts +10 -0
  376. package/dist/extensions/config-hash.js +38 -0
  377. package/dist/extensions/config-issues.d.ts +19 -0
  378. package/dist/extensions/config-issues.js +48 -0
  379. package/dist/extensions/config-json-schema.d.ts +43 -7
  380. package/dist/extensions/config-json-schema.js +124 -58
  381. package/dist/extensions/deployment-config-store.d.ts +55 -0
  382. package/dist/extensions/deployment-config-store.js +133 -0
  383. package/dist/extensions/deployment-config.d.ts +146 -70
  384. package/dist/extensions/deployment-config.js +439 -246
  385. package/dist/extensions/display-name.d.ts +22 -0
  386. package/dist/extensions/display-name.js +77 -0
  387. package/dist/extensions/effective-config.d.ts +127 -0
  388. package/dist/extensions/effective-config.js +368 -0
  389. package/dist/extensions/enabled.d.ts +5 -5
  390. package/dist/extensions/extensions.module.d.ts +8 -0
  391. package/dist/extensions/extensions.module.js +96 -0
  392. package/dist/extensions/hooks.d.ts +40 -6
  393. package/dist/extensions/hooks.js +83 -17
  394. package/dist/extensions/host.d.ts +161 -80
  395. package/dist/extensions/host.js +505 -213
  396. package/dist/extensions/installs.d.ts +73 -19
  397. package/dist/extensions/installs.js +174 -37
  398. package/dist/extensions/job-ids.d.ts +6 -0
  399. package/dist/extensions/job-ids.js +6 -0
  400. package/dist/extensions/lifecycle-topics.d.ts +18 -0
  401. package/dist/extensions/lifecycle-topics.js +18 -0
  402. package/dist/extensions/lifecycle.d.ts +35 -47
  403. package/dist/extensions/lifecycle.js +103 -39
  404. package/dist/extensions/locks.d.ts +45 -0
  405. package/dist/extensions/locks.js +112 -0
  406. package/dist/extensions/migrate-lock.d.ts +3 -4
  407. package/dist/extensions/org-config.d.ts +141 -49
  408. package/dist/extensions/org-config.js +471 -243
  409. package/dist/extensions/org-levels.d.ts +37 -0
  410. package/dist/extensions/org-levels.js +71 -0
  411. package/dist/extensions/org-overrides.d.ts +151 -0
  412. package/dist/extensions/org-overrides.js +524 -0
  413. package/dist/extensions/package.d.ts +14 -1
  414. package/dist/extensions/package.js +51 -2
  415. package/dist/extensions/permission-view.d.ts +59 -6
  416. package/dist/extensions/permission-view.js +7 -5
  417. package/dist/extensions/plugin-guides.d.ts +129 -0
  418. package/dist/extensions/plugin-guides.js +283 -0
  419. package/dist/extensions/plugin-icons.d.ts +54 -0
  420. package/dist/extensions/plugin-icons.js +125 -0
  421. package/dist/extensions/plugin-items.d.ts +21 -0
  422. package/dist/extensions/plugin-items.js +42 -0
  423. package/dist/extensions/point-defaults.controller.d.ts +28 -0
  424. package/dist/extensions/point-defaults.controller.js +69 -0
  425. package/dist/extensions/point-defaults.d.ts +73 -0
  426. package/dist/extensions/point-defaults.js +236 -0
  427. package/dist/extensions/point-defaults.schemas.d.ts +9 -0
  428. package/dist/extensions/point-defaults.schemas.js +14 -0
  429. package/dist/extensions/registry.d.ts +50 -2
  430. package/dist/extensions/registry.js +91 -4
  431. package/dist/extensions/resolve.d.ts +51 -1
  432. package/dist/extensions/resolve.js +85 -3
  433. package/dist/extensions/single-provider.d.ts +92 -0
  434. package/dist/extensions/single-provider.js +180 -0
  435. package/dist/extensions/sources.d.ts +19 -10
  436. package/dist/extensions/sources.js +34 -13
  437. package/dist/extensions/state.module.d.ts +9 -0
  438. package/dist/extensions/state.module.js +38 -0
  439. package/dist/extensions/unavailable.d.ts +50 -0
  440. package/dist/extensions/unavailable.js +115 -0
  441. package/dist/files/files.module.d.ts +3 -0
  442. package/dist/files/files.module.js +22 -0
  443. package/dist/files/previewers.controller.d.ts +7 -2
  444. package/dist/files/previewers.controller.js +19 -12
  445. package/dist/files/previewers.d.ts +21 -19
  446. package/dist/files/previewers.js +114 -38
  447. package/dist/files/previewers.schemas.d.ts +10 -0
  448. package/dist/files/previewers.schemas.js +9 -0
  449. package/dist/http/adapter.d.ts +3 -0
  450. package/dist/http/adapter.js +25 -0
  451. package/dist/http/api.module.d.ts +3 -110
  452. package/dist/http/api.module.js +93 -358
  453. package/dist/http/app.d.ts +22 -17
  454. package/dist/http/app.js +46 -65
  455. package/dist/http/error-filter.module.d.ts +5 -0
  456. package/dist/http/error-filter.module.js +18 -0
  457. package/dist/http/error.filter.js +2 -2
  458. package/dist/http/{gateway.module.d.ts → gateway-routes.d.ts} +7 -3
  459. package/dist/http/gateway-routes.js +16 -0
  460. package/dist/http/nest-logger.d.ts +6 -5
  461. package/dist/http/nest-logger.js +24 -10
  462. package/dist/http/plugin-dispatch.d.ts +4 -1
  463. package/dist/http/plugin-dispatch.js +14 -2
  464. package/dist/identity/accounts.d.ts +137 -38
  465. package/dist/identity/accounts.js +386 -186
  466. package/dist/identity/api-tokens.d.ts +11 -7
  467. package/dist/identity/api-tokens.js +71 -44
  468. package/dist/identity/audit.d.ts +9 -5
  469. package/dist/identity/audit.js +5 -1
  470. package/dist/identity/auth.controller.d.ts +11 -10
  471. package/dist/identity/auth.controller.js +40 -30
  472. package/dist/identity/auth.guard.d.ts +16 -8
  473. package/dist/identity/auth.guard.js +41 -13
  474. package/dist/identity/binding.d.ts +9 -11
  475. package/dist/identity/binding.js +41 -13
  476. package/dist/identity/cookies.d.ts +26 -5
  477. package/dist/identity/cookies.js +58 -6
  478. package/dist/identity/external-identity-lock.d.ts +17 -0
  479. package/dist/identity/external-identity-lock.js +39 -0
  480. package/dist/identity/external.d.ts +19 -15
  481. package/dist/identity/external.js +163 -125
  482. package/dist/identity/identity.module.d.ts +6 -0
  483. package/dist/identity/identity.module.js +59 -0
  484. package/dist/identity/initial-passwords.controller.d.ts +22 -0
  485. package/dist/identity/initial-passwords.controller.js +49 -0
  486. package/dist/identity/initial-passwords.d.ts +61 -0
  487. package/dist/identity/initial-passwords.job.d.ts +16 -0
  488. package/dist/identity/initial-passwords.job.js +46 -0
  489. package/dist/identity/initial-passwords.js +159 -0
  490. package/dist/identity/me.controller.d.ts +32 -15
  491. package/dist/identity/me.controller.js +80 -33
  492. package/dist/identity/me.schemas.d.ts +24 -0
  493. package/dist/identity/me.schemas.js +25 -0
  494. package/dist/identity/principal.d.ts +11 -3
  495. package/dist/identity/principal.js +11 -3
  496. package/dist/identity/sessions.d.ts +24 -10
  497. package/dist/identity/sessions.js +119 -42
  498. package/dist/identity/settings.d.ts +69 -23
  499. package/dist/identity/settings.js +201 -72
  500. package/dist/identity/sso.controller.d.ts +7 -7
  501. package/dist/identity/sso.controller.js +13 -9
  502. package/dist/identity/sso.d.ts +9 -12
  503. package/dist/identity/sso.js +54 -24
  504. package/dist/identity/super-admin.d.ts +20 -0
  505. package/dist/identity/super-admin.js +81 -0
  506. package/dist/inbox/inbox.module.d.ts +6 -0
  507. package/dist/inbox/inbox.module.js +26 -0
  508. package/dist/inbox/inbox.schemas.d.ts +8 -0
  509. package/dist/inbox/inbox.schemas.js +11 -0
  510. package/dist/inbox/inbox.service.d.ts +68 -11
  511. package/dist/inbox/inbox.service.js +104 -13
  512. package/dist/inbox/org-notices.d.ts +63 -0
  513. package/dist/inbox/org-notices.js +91 -0
  514. package/dist/inbox/platform-inbox.controller.d.ts +23 -0
  515. package/dist/inbox/platform-inbox.controller.js +58 -0
  516. package/dist/inbox/platform-inbox.service.d.ts +151 -0
  517. package/dist/inbox/platform-inbox.service.js +263 -0
  518. package/dist/inbox/platform-notices.d.ts +19 -0
  519. package/dist/inbox/platform-notices.js +9 -0
  520. package/dist/index.d.ts +22 -13
  521. package/dist/index.js +16 -7
  522. package/dist/infra/cache/cache.module.d.ts +3 -0
  523. package/dist/infra/cache/cache.module.js +16 -0
  524. package/dist/infra/cache/cache.service.d.ts +21 -0
  525. package/dist/infra/cache/cache.service.js +80 -0
  526. package/dist/infra/cache/cacheable.decorator.d.ts +32 -0
  527. package/dist/infra/cache/cacheable.decorator.js +83 -0
  528. package/dist/infra/cli/kernel-cli.module.d.ts +66 -0
  529. package/dist/infra/cli/kernel-cli.module.js +173 -0
  530. package/dist/infra/close-within.d.ts +15 -0
  531. package/dist/infra/close-within.js +36 -0
  532. package/dist/infra/config/config.module.d.ts +13 -0
  533. package/dist/infra/config/config.module.js +39 -0
  534. package/dist/infra/config/kernel-config.service.d.ts +25 -0
  535. package/dist/infra/config/kernel-config.service.js +157 -0
  536. package/dist/infra/database/after-commit.d.ts +6 -0
  537. package/dist/infra/database/after-commit.js +9 -0
  538. package/dist/infra/database/database.module.d.ts +25 -0
  539. package/dist/infra/database/database.module.js +91 -0
  540. package/dist/infra/database/kernel-db.d.ts +22 -0
  541. package/dist/infra/database/kernel-db.js +65 -0
  542. package/dist/infra/database/transaction-host.d.ts +50 -0
  543. package/dist/infra/database/transaction-host.js +125 -0
  544. package/dist/infra/database/transactional.decorator.d.ts +15 -0
  545. package/dist/infra/database/transactional.decorator.js +27 -0
  546. package/dist/infra/database/xact-lock.d.ts +17 -0
  547. package/dist/infra/database/xact-lock.js +43 -0
  548. package/dist/infra/events/kernel-events.d.ts +121 -0
  549. package/dist/infra/events/kernel-events.js +65 -0
  550. package/dist/infra/health/health.controller.d.ts +26 -0
  551. package/dist/infra/health/health.controller.js +104 -0
  552. package/dist/infra/health/health.module.d.ts +9 -0
  553. package/dist/infra/health/health.module.js +24 -0
  554. package/dist/infra/health/health.options.d.ts +10 -0
  555. package/dist/infra/health/health.options.js +15 -0
  556. package/dist/infra/health/shutdown-state.d.ts +6 -0
  557. package/dist/infra/health/shutdown-state.js +2 -0
  558. package/dist/infra/lifecycle/graceful-shutdown.module.d.ts +6 -0
  559. package/dist/infra/lifecycle/graceful-shutdown.module.js +23 -0
  560. package/dist/infra/lifecycle/graceful-shutdown.service.d.ts +70 -0
  561. package/dist/infra/lifecycle/graceful-shutdown.service.js +135 -0
  562. package/dist/infra/lifecycle/process-guards.d.ts +52 -0
  563. package/dist/infra/lifecycle/process-guards.js +90 -0
  564. package/dist/infra/lifecycle/shutdown-signals.d.ts +30 -0
  565. package/dist/infra/lifecycle/shutdown-signals.js +48 -0
  566. package/dist/infra/lock/key-template.d.ts +13 -0
  567. package/dist/infra/lock/key-template.js +46 -0
  568. package/dist/infra/lock/lock.module.d.ts +3 -0
  569. package/dist/infra/lock/lock.module.js +16 -0
  570. package/dist/infra/lock/lock.service.d.ts +120 -0
  571. package/dist/infra/lock/lock.service.js +343 -0
  572. package/dist/infra/lock/shared-lease.d.ts +44 -0
  573. package/dist/infra/lock/shared-lease.js +121 -0
  574. package/dist/infra/lock/with-lock.decorator.d.ts +28 -0
  575. package/dist/infra/lock/with-lock.decorator.js +49 -0
  576. package/dist/infra/logging/logging.module.d.ts +18 -0
  577. package/dist/infra/logging/logging.module.js +52 -0
  578. package/dist/infra/queue/add-job-once.d.ts +14 -0
  579. package/dist/infra/queue/add-job-once.js +16 -0
  580. package/dist/infra/queue/configured-processor.d.ts +18 -0
  581. package/dist/infra/queue/configured-processor.js +23 -0
  582. package/dist/infra/queue/job-failure.d.ts +18 -0
  583. package/dist/infra/queue/job-failure.js +26 -0
  584. package/dist/infra/queue/queue-shutdown.d.ts +27 -0
  585. package/dist/infra/queue/queue-shutdown.js +81 -0
  586. package/dist/infra/queue/queue.module.d.ts +16 -0
  587. package/dist/infra/queue/queue.module.js +61 -0
  588. package/dist/infra/queue/redis-connection.d.ts +13 -0
  589. package/dist/infra/queue/redis-connection.js +25 -0
  590. package/dist/infra/queue/retired-schedulers.d.ts +7 -0
  591. package/dist/infra/queue/retired-schedulers.js +9 -0
  592. package/dist/infra/queue/run-job.d.ts +16 -0
  593. package/dist/infra/queue/run-job.js +19 -0
  594. package/dist/infra/redis/redis.module.d.ts +24 -0
  595. package/dist/infra/redis/redis.module.js +91 -0
  596. package/dist/infra/schedule/cron-tick.d.ts +12 -0
  597. package/dist/infra/schedule/cron-tick.js +25 -0
  598. package/dist/infra/schedule/locked-cron.decorator.d.ts +27 -0
  599. package/dist/infra/schedule/locked-cron.decorator.js +53 -0
  600. package/dist/infra/schedule/locked-interval.d.ts +69 -0
  601. package/dist/infra/schedule/locked-interval.js +190 -0
  602. package/dist/infra/schedule/locked-tick.d.ts +90 -0
  603. package/dist/infra/schedule/locked-tick.js +137 -0
  604. package/dist/infra/schedule/schedule.module.d.ts +8 -0
  605. package/dist/infra/schedule/schedule.module.js +27 -0
  606. package/dist/infra/schedule/scheduled-runs.d.ts +69 -0
  607. package/dist/infra/schedule/scheduled-runs.js +163 -0
  608. package/dist/infra/swagger/swagger.d.ts +16 -0
  609. package/dist/infra/swagger/swagger.js +31 -0
  610. package/dist/infra/throttler/credential-throttler.d.ts +35 -0
  611. package/dist/infra/throttler/credential-throttler.js +77 -0
  612. package/dist/infra/throttler/named-throttlers.d.ts +36 -0
  613. package/dist/infra/throttler/named-throttlers.js +157 -0
  614. package/dist/infra/throttler/redis-throttler-storage.d.ts +38 -0
  615. package/dist/infra/throttler/redis-throttler-storage.js +130 -0
  616. package/dist/infra/throttler/throttler.guard.d.ts +23 -0
  617. package/dist/infra/throttler/throttler.guard.js +68 -0
  618. package/dist/infra/throttler/throttler.module.d.ts +15 -0
  619. package/dist/infra/throttler/throttler.module.js +53 -0
  620. package/dist/infra/tokens.d.ts +20 -0
  621. package/dist/infra/tokens.js +20 -0
  622. package/dist/infra/validation/create-zod-dto.d.ts +23 -0
  623. package/dist/infra/validation/create-zod-dto.js +35 -0
  624. package/dist/infra/validation/parse-with-zod.d.ts +7 -0
  625. package/dist/infra/validation/parse-with-zod.js +12 -0
  626. package/dist/infra/validation/validation.module.d.ts +3 -0
  627. package/dist/infra/validation/validation.module.js +16 -0
  628. package/dist/infra/validation/zod-params.d.ts +7 -0
  629. package/dist/infra/validation/zod-params.js +42 -0
  630. package/dist/infra/validation/zod-validation.pipe.d.ts +11 -0
  631. package/dist/infra/validation/zod-validation.pipe.js +31 -0
  632. package/dist/kernel.d.ts +9 -244
  633. package/dist/kernel.js +8 -1305
  634. package/dist/kernel.module.d.ts +17 -0
  635. package/dist/kernel.module.js +145 -0
  636. package/dist/lifecycle/kernel-lifecycle.d.ts +140 -0
  637. package/dist/lifecycle/kernel-lifecycle.js +465 -0
  638. package/dist/lifecycle/tokens.d.ts +3 -0
  639. package/dist/lifecycle/tokens.js +3 -0
  640. package/dist/log-context.d.ts +2 -0
  641. package/dist/log-context.js +4 -0
  642. package/dist/log.d.ts +13 -1
  643. package/dist/log.js +93 -17
  644. package/dist/models/embeddings.d.ts +82 -0
  645. package/dist/models/embeddings.js +326 -0
  646. package/dist/models/enablement.controller.d.ts +40 -0
  647. package/dist/models/enablement.controller.js +74 -0
  648. package/dist/models/enablement.d.ts +101 -0
  649. package/dist/models/enablement.js +264 -0
  650. package/dist/models/models.module.d.ts +7 -0
  651. package/dist/models/models.module.js +36 -0
  652. package/dist/models/org-models.schemas.d.ts +8 -0
  653. package/dist/models/org-models.schemas.js +22 -0
  654. package/dist/models/prices.d.ts +13 -5
  655. package/dist/models/prices.js +69 -39
  656. package/dist/models/purposes.controller.d.ts +6 -4
  657. package/dist/models/purposes.controller.js +16 -11
  658. package/dist/models/purposes.d.ts +103 -23
  659. package/dist/models/purposes.js +208 -77
  660. package/dist/orgs/directory-sync.controller.d.ts +1 -1
  661. package/dist/orgs/directory-sync.controller.js +2 -2
  662. package/dist/orgs/directory-sync.d.ts +74 -35
  663. package/dist/orgs/directory-sync.js +243 -132
  664. package/dist/orgs/invitations.controller.d.ts +8 -8
  665. package/dist/orgs/invitations.controller.js +27 -26
  666. package/dist/orgs/invitations.service.d.ts +12 -9
  667. package/dist/orgs/invitations.service.js +130 -92
  668. package/dist/orgs/job-ids.d.ts +8 -0
  669. package/dist/orgs/job-ids.js +8 -0
  670. package/dist/orgs/members.service.d.ts +19 -12
  671. package/dist/orgs/members.service.js +161 -117
  672. package/dist/orgs/offboarding.d.ts +61 -60
  673. package/dist/orgs/offboarding.js +206 -95
  674. package/dist/orgs/org-lock.d.ts +33 -19
  675. package/dist/orgs/org-lock.js +94 -35
  676. package/dist/orgs/org.guard.d.ts +11 -1
  677. package/dist/orgs/org.guard.js +45 -34
  678. package/dist/orgs/orgs.controller.d.ts +13 -16
  679. package/dist/orgs/orgs.controller.js +29 -20
  680. package/dist/orgs/orgs.module.d.ts +6 -0
  681. package/dist/orgs/orgs.module.js +71 -0
  682. package/dist/orgs/orgs.schemas.d.ts +8 -0
  683. package/dist/orgs/orgs.schemas.js +16 -0
  684. package/dist/orgs/orgs.service.d.ts +47 -21
  685. package/dist/orgs/orgs.service.js +166 -91
  686. package/dist/orgs/roles.d.ts +1 -1
  687. package/dist/orgs/roles.js +5 -1
  688. package/dist/orgs/settings.controller.d.ts +2 -2
  689. package/dist/orgs/settings.controller.js +8 -6
  690. package/dist/orgs/settings.service.d.ts +76 -14
  691. package/dist/orgs/settings.service.js +140 -51
  692. package/dist/overrides.d.ts +63 -0
  693. package/dist/overrides.js +34 -0
  694. package/dist/platform/actor.d.ts +48 -0
  695. package/dist/platform/actor.js +100 -0
  696. package/dist/platform/agent-docs.d.ts +18 -0
  697. package/dist/platform/agent-docs.js +59 -0
  698. package/dist/platform/availability.d.ts +14 -0
  699. package/dist/platform/availability.js +43 -0
  700. package/dist/platform/errors.d.ts +28 -0
  701. package/dist/platform/errors.js +65 -0
  702. package/dist/platform/exclusions.d.ts +11 -0
  703. package/dist/platform/exclusions.js +683 -0
  704. package/dist/platform/method.d.ts +6 -0
  705. package/dist/platform/method.js +15 -0
  706. package/dist/platform/operation.d.ts +169 -0
  707. package/dist/platform/operation.js +94 -0
  708. package/dist/platform/ops/accounts.ops.d.ts +32 -0
  709. package/dist/platform/ops/accounts.ops.js +291 -0
  710. package/dist/platform/ops/admin.ops.d.ts +38 -0
  711. package/dist/platform/ops/admin.ops.js +407 -0
  712. package/dist/platform/ops/agent-skills.ops.d.ts +24 -0
  713. package/dist/platform/ops/agent-skills.ops.js +226 -0
  714. package/dist/platform/ops/agent-templates.ops.d.ts +17 -0
  715. package/dist/platform/ops/agent-templates.ops.js +272 -0
  716. package/dist/platform/ops/agents.ops.d.ts +37 -0
  717. package/dist/platform/ops/agents.ops.js +717 -0
  718. package/dist/platform/ops/approvals.ops.d.ts +30 -0
  719. package/dist/platform/ops/approvals.ops.js +116 -0
  720. package/dist/platform/ops/background.ops.d.ts +14 -0
  721. package/dist/platform/ops/background.ops.js +134 -0
  722. package/dist/platform/ops/catalog-admin.ops.d.ts +74 -0
  723. package/dist/platform/ops/catalog-admin.ops.js +599 -0
  724. package/dist/platform/ops/channels.ops.d.ts +16 -0
  725. package/dist/platform/ops/channels.ops.js +195 -0
  726. package/dist/platform/ops/components.ops.d.ts +46 -0
  727. package/dist/platform/ops/components.ops.js +854 -0
  728. package/dist/platform/ops/connectors.ops.d.ts +17 -0
  729. package/dist/platform/ops/connectors.ops.js +188 -0
  730. package/dist/platform/ops/conversations.ops.d.ts +30 -0
  731. package/dist/platform/ops/conversations.ops.js +470 -0
  732. package/dist/platform/ops/environments.ops.d.ts +26 -0
  733. package/dist/platform/ops/environments.ops.js +311 -0
  734. package/dist/platform/ops/errors.d.ts +16 -0
  735. package/dist/platform/ops/errors.js +30 -0
  736. package/dist/platform/ops/evals.ops.d.ts +28 -0
  737. package/dist/platform/ops/evals.ops.js +783 -0
  738. package/dist/platform/ops/extensions-admin.ops.d.ts +25 -0
  739. package/dist/platform/ops/extensions-admin.ops.js +372 -0
  740. package/dist/platform/ops/extensions.ops.d.ts +25 -0
  741. package/dist/platform/ops/extensions.ops.js +347 -0
  742. package/dist/platform/ops/inbox.ops.d.ts +25 -0
  743. package/dist/platform/ops/inbox.ops.js +378 -0
  744. package/dist/platform/ops/marketplaces.ops.d.ts +22 -0
  745. package/dist/platform/ops/marketplaces.ops.js +466 -0
  746. package/dist/platform/ops/models.ops.d.ts +25 -0
  747. package/dist/platform/ops/models.ops.js +232 -0
  748. package/dist/platform/ops/org-plugins.ops.d.ts +29 -0
  749. package/dist/platform/ops/org-plugins.ops.js +329 -0
  750. package/dist/platform/ops/org-settings.ops.d.ts +18 -0
  751. package/dist/platform/ops/org-settings.ops.js +127 -0
  752. package/dist/platform/ops/orgs.ops.d.ts +28 -0
  753. package/dist/platform/ops/orgs.ops.js +296 -0
  754. package/dist/platform/ops/other-orgs.d.ts +20 -0
  755. package/dist/platform/ops/other-orgs.js +72 -0
  756. package/dist/platform/ops/paging.d.ts +14 -0
  757. package/dist/platform/ops/paging.js +20 -0
  758. package/dist/platform/ops/platform.ops.d.ts +30 -0
  759. package/dist/platform/ops/platform.ops.js +231 -0
  760. package/dist/platform/ops/plugins.ops.d.ts +35 -0
  761. package/dist/platform/ops/plugins.ops.js +476 -0
  762. package/dist/platform/ops/previewers.ops.d.ts +14 -0
  763. package/dist/platform/ops/previewers.ops.js +109 -0
  764. package/dist/platform/ops/requests.ops.d.ts +14 -0
  765. package/dist/platform/ops/requests.ops.js +191 -0
  766. package/dist/platform/ops/role.d.ts +4 -0
  767. package/dist/platform/ops/role.js +10 -0
  768. package/dist/platform/ops/skills.ops.d.ts +17 -0
  769. package/dist/platform/ops/skills.ops.js +216 -0
  770. package/dist/platform/ops/summary.d.ts +10 -0
  771. package/dist/platform/ops/summary.js +18 -0
  772. package/dist/platform/ops/themes.ops.d.ts +14 -0
  773. package/dist/platform/ops/themes.ops.js +47 -0
  774. package/dist/platform/ops/unavailable.d.ts +23 -0
  775. package/dist/platform/ops/unavailable.js +118 -0
  776. package/dist/platform/parity.d.ts +33 -0
  777. package/dist/platform/parity.js +272 -0
  778. package/dist/platform/platform-ops.module.d.ts +40 -0
  779. package/dist/platform/platform-ops.module.js +127 -0
  780. package/dist/platform/platform.module.d.ts +8 -0
  781. package/dist/platform/platform.module.js +25 -0
  782. package/dist/platform/registry.d.ts +30 -0
  783. package/dist/platform/registry.js +111 -0
  784. package/dist/platform/route-schemas.d.ts +18 -0
  785. package/dist/platform/route-schemas.js +66 -0
  786. package/dist/roles/gateway-role.d.ts +54 -0
  787. package/dist/roles/gateway-role.js +118 -0
  788. package/dist/roles/gateway.module.d.ts +9 -0
  789. package/dist/roles/gateway.module.js +31 -0
  790. package/dist/roles/worker-role.d.ts +65 -0
  791. package/dist/roles/worker-role.js +151 -0
  792. package/dist/roles/worker.module.d.ts +14 -0
  793. package/dist/roles/worker.module.js +106 -0
  794. package/dist/runtime/abort.js +19 -2
  795. package/dist/runtime/checkpointer.d.ts +8 -3
  796. package/dist/runtime/checkpointer.js +87 -55
  797. package/dist/runtime/context/build.d.ts +21 -13
  798. package/dist/runtime/context/build.js +106 -29
  799. package/dist/runtime/context/claude-tools.d.ts +4 -1
  800. package/dist/runtime/context/claude-tools.js +13 -12
  801. package/dist/runtime/context/compaction.js +24 -1
  802. package/dist/runtime/context/environment-paths.d.ts +40 -0
  803. package/dist/runtime/context/environment-paths.js +48 -0
  804. package/dist/runtime/context/legacy-text.d.ts +22 -0
  805. package/dist/runtime/context/legacy-text.js +37 -0
  806. package/dist/runtime/context/reminders.d.ts +2 -0
  807. package/dist/runtime/context/reminders.js +2 -0
  808. package/dist/runtime/context/run-context.d.ts +65 -0
  809. package/dist/runtime/context/run-context.js +215 -0
  810. package/dist/runtime/context/skills.d.ts +29 -11
  811. package/dist/runtime/context/skills.js +46 -32
  812. package/dist/runtime/context/tool-changes.d.ts +27 -0
  813. package/dist/runtime/context/tool-changes.js +60 -0
  814. package/dist/runtime/conversation-lock.d.ts +20 -11
  815. package/dist/runtime/conversation-lock.js +62 -72
  816. package/dist/runtime/hook-calls.d.ts +11 -4
  817. package/dist/runtime/hook-calls.js +41 -13
  818. package/dist/runtime/job-ids.d.ts +10 -0
  819. package/dist/runtime/job-ids.js +10 -0
  820. package/dist/runtime/langgraph-loop.d.ts +3 -1
  821. package/dist/runtime/langgraph-loop.js +37 -18
  822. package/dist/runtime/loop.d.ts +42 -6
  823. package/dist/runtime/loop.js +14 -0
  824. package/dist/runtime/maintenance-queue.d.ts +10 -0
  825. package/dist/runtime/maintenance-queue.js +10 -0
  826. package/dist/runtime/maintenance.d.ts +50 -74
  827. package/dist/runtime/maintenance.js +166 -137
  828. package/dist/runtime/model-call.d.ts +61 -15
  829. package/dist/runtime/model-call.js +128 -84
  830. package/dist/runtime/providers.d.ts +158 -27
  831. package/dist/runtime/providers.js +373 -63
  832. package/dist/runtime/quota.d.ts +17 -3
  833. package/dist/runtime/quota.js +27 -2
  834. package/dist/runtime/retired-schedulers.d.ts +7 -0
  835. package/dist/runtime/retired-schedulers.js +31 -0
  836. package/dist/runtime/run-context.service.d.ts +65 -0
  837. package/dist/runtime/run-context.service.js +236 -0
  838. package/dist/runtime/run-control.d.ts +43 -0
  839. package/dist/runtime/run-control.js +89 -0
  840. package/dist/runtime/run-drafts.d.ts +85 -0
  841. package/dist/runtime/run-drafts.js +230 -0
  842. package/dist/runtime/run-finish.d.ts +27 -18
  843. package/dist/runtime/run-finish.js +98 -51
  844. package/dist/runtime/run-jobs.d.ts +46 -0
  845. package/dist/runtime/run-jobs.js +91 -0
  846. package/dist/runtime/run-processors.d.ts +60 -0
  847. package/dist/runtime/run-processors.js +185 -0
  848. package/dist/runtime/run-queue.d.ts +90 -58
  849. package/dist/runtime/run-queue.js +566 -297
  850. package/dist/runtime/run-steps.d.ts +39 -0
  851. package/dist/runtime/run-steps.js +96 -0
  852. package/dist/runtime/run-worker.d.ts +134 -77
  853. package/dist/runtime/run-worker.js +412 -237
  854. package/dist/runtime/runtime.module.d.ts +10 -0
  855. package/dist/runtime/runtime.module.js +122 -0
  856. package/dist/runtime/step-log.d.ts +51 -0
  857. package/dist/runtime/step-log.js +111 -0
  858. package/dist/runtime/stream.controller.d.ts +28 -9
  859. package/dist/runtime/stream.controller.js +72 -13
  860. package/dist/runtime/stream.d.ts +27 -6
  861. package/dist/runtime/stream.js +102 -7
  862. package/dist/runtime/subagents/child.d.ts +58 -51
  863. package/dist/runtime/subagents/child.js +105 -86
  864. package/dist/runtime/subagents/definition.d.ts +32 -28
  865. package/dist/runtime/subagents/definition.js +89 -143
  866. package/dist/runtime/subagents/deliveries.d.ts +71 -0
  867. package/dist/runtime/subagents/deliveries.js +228 -0
  868. package/dist/runtime/subagents/dispatch.d.ts +197 -27
  869. package/dist/runtime/subagents/dispatch.js +336 -270
  870. package/dist/runtime/subagents/limits.d.ts +32 -8
  871. package/dist/runtime/subagents/limits.js +44 -8
  872. package/dist/runtime/subagents/messages.d.ts +95 -0
  873. package/dist/runtime/subagents/messages.js +328 -0
  874. package/dist/runtime/subagents/org-agents.d.ts +4 -4
  875. package/dist/runtime/subagents/org-agents.js +3 -2
  876. package/dist/runtime/subagents/preamble.d.ts +4 -4
  877. package/dist/runtime/subagents/preamble.js +9 -7
  878. package/dist/runtime/subagents/progress.d.ts +10 -8
  879. package/dist/runtime/subagents/progress.js +11 -6
  880. package/dist/runtime/subagents/render.d.ts +30 -0
  881. package/dist/runtime/subagents/render.js +53 -0
  882. package/dist/runtime/subagents/roster.d.ts +27 -10
  883. package/dist/runtime/subagents/roster.js +49 -13
  884. package/dist/runtime/subagents/skill-fork.d.ts +10 -10
  885. package/dist/runtime/subagents/skill-fork.js +23 -8
  886. package/dist/runtime/subagents/status.d.ts +14 -0
  887. package/dist/runtime/subagents/status.js +23 -0
  888. package/dist/runtime/subagents/subagents.service.d.ts +43 -0
  889. package/dist/runtime/subagents/subagents.service.js +106 -0
  890. package/dist/runtime/usage-report-jobs.d.ts +88 -0
  891. package/dist/runtime/usage-report-jobs.js +158 -0
  892. package/dist/runtime/usage-report.d.ts +121 -83
  893. package/dist/runtime/usage-report.js +355 -181
  894. package/dist/runtime/waits.d.ts +258 -81
  895. package/dist/runtime/waits.js +800 -263
  896. package/dist/sandbox/job-ids.d.ts +10 -0
  897. package/dist/sandbox/job-ids.js +10 -0
  898. package/dist/sandbox/jobs.d.ts +68 -0
  899. package/dist/sandbox/jobs.js +150 -0
  900. package/dist/sandbox/leases.d.ts +73 -82
  901. package/dist/sandbox/leases.js +162 -346
  902. package/dist/sandbox/providers.d.ts +46 -0
  903. package/dist/sandbox/providers.js +83 -0
  904. package/dist/sandbox/sandbox.module.d.ts +9 -0
  905. package/dist/sandbox/sandbox.module.js +36 -0
  906. package/dist/sandbox/sandbox.service.d.ts +359 -151
  907. package/dist/sandbox/sandbox.service.js +950 -435
  908. package/dist/sandbox/unreachable.d.ts +30 -0
  909. package/dist/sandbox/unreachable.js +108 -0
  910. package/dist/skills/catalog.d.ts +40 -26
  911. package/dist/skills/catalog.js +120 -99
  912. package/dist/skills/changes.controller.d.ts +11 -4
  913. package/dist/skills/changes.controller.js +34 -9
  914. package/dist/skills/changes.service.d.ts +31 -21
  915. package/dist/skills/changes.service.js +426 -368
  916. package/dist/skills/invocable.controller.d.ts +2 -2
  917. package/dist/skills/invocable.controller.js +10 -7
  918. package/dist/skills/invocation-keys.d.ts +1 -1
  919. package/dist/skills/invocation-keys.js +1 -1
  920. package/dist/skills/invoke.d.ts +19 -18
  921. package/dist/skills/invoke.js +68 -24
  922. package/dist/skills/package.d.ts +20 -1
  923. package/dist/skills/package.js +28 -1
  924. package/dist/skills/skills.controller.d.ts +33 -7
  925. package/dist/skills/skills.controller.js +79 -12
  926. package/dist/skills/skills.module.d.ts +6 -0
  927. package/dist/skills/skills.module.js +39 -0
  928. package/dist/skills/skills.schemas.d.ts +48 -0
  929. package/dist/skills/skills.schemas.js +61 -0
  930. package/dist/skills/skills.service.d.ts +151 -44
  931. package/dist/skills/skills.service.js +636 -204
  932. package/dist/skills/usable.d.ts +81 -0
  933. package/dist/skills/usable.js +379 -0
  934. package/dist/storage/job-ids.d.ts +6 -0
  935. package/dist/storage/job-ids.js +6 -0
  936. package/dist/storage/purge.d.ts +22 -7
  937. package/dist/storage/purge.js +55 -3
  938. package/dist/storage/storage.module.d.ts +6 -0
  939. package/dist/storage/storage.module.js +23 -0
  940. package/dist/storage/storage.service.d.ts +18 -4
  941. package/dist/storage/storage.service.js +44 -3
  942. package/dist/themes/render-css.d.ts +12 -0
  943. package/dist/themes/render-css.js +132 -0
  944. package/dist/themes/theme-delivery.service.d.ts +34 -0
  945. package/dist/themes/theme-delivery.service.js +111 -0
  946. package/dist/themes/theme-state.d.ts +95 -0
  947. package/dist/themes/theme-state.js +203 -0
  948. package/dist/themes/theme-usage.d.ts +61 -0
  949. package/dist/themes/theme-usage.js +98 -0
  950. package/dist/themes/themes-public.controller.d.ts +28 -0
  951. package/dist/themes/themes-public.controller.js +92 -0
  952. package/dist/themes/themes.controller.d.ts +13 -0
  953. package/dist/themes/themes.controller.js +38 -0
  954. package/dist/themes/themes.module.d.ts +3 -0
  955. package/dist/themes/themes.module.js +21 -0
  956. package/dist/themes/themes.schemas.d.ts +3 -0
  957. package/dist/themes/themes.schemas.js +2 -0
  958. package/dist/themes/themes.service.d.ts +50 -0
  959. package/dist/themes/themes.service.js +99 -0
  960. package/dist/time-zone.d.ts +5 -0
  961. package/dist/time-zone.js +19 -0
  962. package/dist/tools/approvals.controller.d.ts +1 -1
  963. package/dist/tools/approvals.controller.js +14 -11
  964. package/dist/tools/approvals.schemas.d.ts +21 -0
  965. package/dist/tools/approvals.schemas.js +15 -0
  966. package/dist/tools/approvals.service.d.ts +53 -27
  967. package/dist/tools/approvals.service.js +365 -260
  968. package/dist/tools/breaker.d.ts +2 -2
  969. package/dist/tools/breaker.js +21 -3
  970. package/dist/tools/builtin-names.d.ts +109 -0
  971. package/dist/tools/builtin-names.js +173 -0
  972. package/dist/tools/builtins/agent.d.ts +27 -25
  973. package/dist/tools/builtins/agent.js +66 -63
  974. package/dist/tools/builtins/ask-user.d.ts +3 -3
  975. package/dist/tools/builtins/ask-user.js +3 -3
  976. package/dist/tools/builtins/builtin-tools.d.ts +41 -0
  977. package/dist/tools/builtins/builtin-tools.js +151 -0
  978. package/dist/tools/builtins/current-time.d.ts +26 -0
  979. package/dist/tools/builtins/current-time.js +99 -0
  980. package/dist/tools/builtins/handback.d.ts +28 -0
  981. package/dist/tools/builtins/handback.js +53 -0
  982. package/dist/tools/builtins/platform.d.ts +51 -0
  983. package/dist/tools/builtins/platform.js +451 -0
  984. package/dist/tools/builtins/read-tool-output.d.ts +3 -3
  985. package/dist/tools/builtins/read-tool-output.js +3 -3
  986. package/dist/tools/builtins/sandbox/bash.d.ts +5 -5
  987. package/dist/tools/builtins/sandbox/bash.js +293 -41
  988. package/dist/tools/builtins/sandbox/common.d.ts +137 -37
  989. package/dist/tools/builtins/sandbox/common.js +222 -62
  990. package/dist/tools/builtins/sandbox/deliver.d.ts +1 -1
  991. package/dist/tools/builtins/sandbox/deliver.js +21 -18
  992. package/dist/tools/builtins/sandbox/edit.d.ts +1 -1
  993. package/dist/tools/builtins/sandbox/edit.js +65 -51
  994. package/dist/tools/builtins/sandbox/file-state.d.ts +34 -0
  995. package/dist/tools/builtins/sandbox/file-state.js +34 -0
  996. package/dist/tools/builtins/sandbox/glob-match.d.ts +1 -1
  997. package/dist/tools/builtins/sandbox/glob-match.js +1 -1
  998. package/dist/tools/builtins/sandbox/glob.d.ts +1 -1
  999. package/dist/tools/builtins/sandbox/glob.js +19 -14
  1000. package/dist/tools/builtins/sandbox/grep.d.ts +7 -4
  1001. package/dist/tools/builtins/sandbox/grep.js +155 -36
  1002. package/dist/tools/builtins/sandbox/index.d.ts +9 -5
  1003. package/dist/tools/builtins/sandbox/index.js +13 -5
  1004. package/dist/tools/builtins/sandbox/read.d.ts +2 -2
  1005. package/dist/tools/builtins/sandbox/read.js +30 -20
  1006. package/dist/tools/builtins/sandbox/task-output.d.ts +79 -0
  1007. package/dist/tools/builtins/sandbox/task-output.js +334 -0
  1008. package/dist/tools/builtins/sandbox/task-stop.d.ts +10 -0
  1009. package/dist/tools/builtins/sandbox/task-stop.js +113 -0
  1010. package/dist/tools/builtins/sandbox/write.d.ts +1 -1
  1011. package/dist/tools/builtins/sandbox/write.js +52 -45
  1012. package/dist/tools/builtins/send-message.d.ts +56 -0
  1013. package/dist/tools/builtins/send-message.js +100 -0
  1014. package/dist/tools/builtins/skill-load.d.ts +32 -21
  1015. package/dist/tools/builtins/skill-load.js +125 -74
  1016. package/dist/tools/builtins/skill-write.d.ts +4 -4
  1017. package/dist/tools/builtins/skill-write.js +12 -12
  1018. package/dist/tools/builtins/tool-search.d.ts +13 -9
  1019. package/dist/tools/builtins/tool-search.js +25 -14
  1020. package/dist/tools/builtins/web/errors.d.ts +8 -0
  1021. package/dist/tools/builtins/web/errors.js +53 -0
  1022. package/dist/tools/builtins/web/extract.d.ts +62 -0
  1023. package/dist/tools/builtins/web/extract.js +271 -0
  1024. package/dist/tools/builtins/web/fetch.d.ts +55 -0
  1025. package/dist/tools/builtins/web/fetch.js +175 -0
  1026. package/dist/tools/builtins/web/index.d.ts +13 -0
  1027. package/dist/tools/builtins/web/index.js +12 -0
  1028. package/dist/tools/builtins/web/page-cache.d.ts +25 -0
  1029. package/dist/tools/builtins/web/page-cache.js +77 -0
  1030. package/dist/tools/builtins/web/search.d.ts +25 -0
  1031. package/dist/tools/builtins/web/search.js +210 -0
  1032. package/dist/tools/builtins/web/url.d.ts +17 -0
  1033. package/dist/tools/builtins/web/url.js +43 -0
  1034. package/dist/tools/canonical-json.d.ts +6 -0
  1035. package/dist/tools/canonical-json.js +16 -0
  1036. package/dist/tools/connector-content.controller.d.ts +1 -1
  1037. package/dist/tools/connector-content.controller.js +11 -6
  1038. package/dist/tools/connector-content.d.ts +12 -15
  1039. package/dist/tools/connector-content.js +53 -18
  1040. package/dist/tools/connectors.controller.d.ts +16 -3
  1041. package/dist/tools/connectors.controller.js +34 -14
  1042. package/dist/tools/connectors.schemas.d.ts +12 -0
  1043. package/dist/tools/connectors.schemas.js +19 -0
  1044. package/dist/tools/connectors.service.d.ts +80 -18
  1045. package/dist/tools/connectors.service.js +529 -358
  1046. package/dist/tools/credentials.d.ts +20 -20
  1047. package/dist/tools/credentials.js +55 -34
  1048. package/dist/tools/display-names.d.ts +9 -0
  1049. package/dist/tools/display-names.js +24 -0
  1050. package/dist/tools/drift.d.ts +29 -41
  1051. package/dist/tools/drift.js +116 -84
  1052. package/dist/tools/elicitation.js +1 -1
  1053. package/dist/tools/extension-tools.controller.d.ts +14 -0
  1054. package/dist/tools/extension-tools.controller.js +37 -0
  1055. package/dist/tools/info.d.ts +73 -13
  1056. package/dist/tools/info.js +151 -39
  1057. package/dist/tools/job-ids.d.ts +13 -0
  1058. package/dist/tools/job-ids.js +15 -0
  1059. package/dist/tools/jobs.d.ts +24 -0
  1060. package/dist/tools/jobs.js +69 -0
  1061. package/dist/tools/legacy-data.d.ts +34 -0
  1062. package/dist/tools/legacy-data.js +76 -0
  1063. package/dist/tools/legacy-keys.d.ts +51 -0
  1064. package/dist/tools/legacy-keys.js +115 -0
  1065. package/dist/tools/naming.d.ts +1 -5
  1066. package/dist/tools/naming.js +1 -7
  1067. package/dist/tools/oauth/flow-paths.d.ts +16 -0
  1068. package/dist/tools/oauth/flow-paths.js +38 -0
  1069. package/dist/tools/oauth/flow.d.ts +30 -30
  1070. package/dist/tools/oauth/flow.js +109 -81
  1071. package/dist/tools/oauth/oauth.controller.d.ts +3 -3
  1072. package/dist/tools/oauth/oauth.controller.js +12 -9
  1073. package/dist/tools/oauth/tokens.d.ts +45 -10
  1074. package/dist/tools/oauth/tokens.js +70 -24
  1075. package/dist/tools/org-tool-switches.d.ts +88 -0
  1076. package/dist/tools/org-tool-switches.js +201 -0
  1077. package/dist/tools/outputs.d.ts +13 -4
  1078. package/dist/tools/outputs.js +48 -4
  1079. package/dist/tools/pipeline.d.ts +108 -80
  1080. package/dist/tools/pipeline.js +396 -409
  1081. package/dist/tools/policy.d.ts +4 -17
  1082. package/dist/tools/policy.js +49 -35
  1083. package/dist/tools/questions.controller.d.ts +2 -2
  1084. package/dist/tools/questions.controller.js +9 -6
  1085. package/dist/tools/questions.service.d.ts +26 -25
  1086. package/dist/tools/questions.service.js +201 -142
  1087. package/dist/tools/registry.d.ts +215 -84
  1088. package/dist/tools/registry.js +382 -264
  1089. package/dist/tools/resources.d.ts +1 -1
  1090. package/dist/tools/resources.js +1 -1
  1091. package/dist/tools/specs.d.ts +5 -4
  1092. package/dist/tools/specs.js +3 -1
  1093. package/dist/tools/tools.module.d.ts +10 -0
  1094. package/dist/tools/tools.module.js +113 -0
  1095. package/dist/tools/validate.js +1 -1
  1096. package/dist/ui/call-extension.d.ts +16 -0
  1097. package/dist/ui/call-extension.js +38 -0
  1098. package/dist/ui/embed-token.d.ts +9 -5
  1099. package/dist/ui/embed-token.js +34 -6
  1100. package/dist/ui/ui-stream.d.ts +22 -17
  1101. package/dist/ui/ui-stream.js +72 -12
  1102. package/dist/ui/ui.module.d.ts +7 -0
  1103. package/dist/ui/ui.module.js +28 -0
  1104. package/dist/ui/views.controller.d.ts +14 -12
  1105. package/dist/ui/views.controller.js +32 -25
  1106. package/dist/ui/views.d.ts +10 -57
  1107. package/dist/ui/views.js +58 -46
  1108. package/package.json +13 -3
  1109. package/src/migrations/0063_tool_keys_claude_code.sql +220 -0
  1110. package/src/migrations/0064_account_last_org.sql +7 -0
  1111. package/src/migrations/0065_conversation_archive.sql +8 -0
  1112. package/src/migrations/0066_extension_display_name.sql +4 -0
  1113. package/src/migrations/0067_agent_profiles.sql +20 -0
  1114. package/src/migrations/0068_agent_avatar_uploads.sql +7 -0
  1115. package/src/migrations/0069_attachments_agent_idx.sql +3 -0
  1116. package/src/migrations/0070_background_tasks.sql +37 -0
  1117. package/src/migrations/0071_background_tasks_reserve.sql +6 -0
  1118. package/src/migrations/0072_background_tasks_stopping.sql +5 -0
  1119. package/src/migrations/0073_org_extension_point_defaults.sql +11 -0
  1120. package/src/migrations/0074_subagent_tree.sql +50 -0
  1121. package/src/migrations/0075_plugin_scope.sql +61 -0
  1122. package/src/migrations/0076_skills_created_by_nullable.sql +6 -0
  1123. package/src/migrations/0077_scope_requests.sql +52 -0
  1124. package/src/migrations/0078_scope_grant_switches.sql +18 -0
  1125. package/src/migrations/0079_scope_live_install_switches.sql +19 -0
  1126. package/src/migrations/0080_rename_enterprise_admin.sql +18 -0
  1127. package/src/migrations/0081_platform_components.sql +129 -0
  1128. package/src/migrations/0082_platform_migration.sql +33 -0
  1129. package/src/migrations/0083_plugin_scope_sync_failures.sql +15 -0
  1130. package/src/migrations/0084_org_owned_items.sql +85 -0
  1131. package/src/migrations/0085_agent_templates_phase4.sql +45 -0
  1132. package/src/migrations/0086_org_layering.sql +30 -0
  1133. package/src/migrations/0087_approval_summary.sql +6 -0
  1134. package/src/migrations/0088_environments.sql +80 -0
  1135. package/src/migrations/0089_model_kinds_usage.sql +38 -0
  1136. package/src/migrations/0090_initial_passwords.sql +27 -0
  1137. package/src/migrations/0091_account_time_zone.sql +4 -0
  1138. package/src/migrations/0092_tools_default_on.sql +27 -0
  1139. package/src/migrations/0093_connected_environments.sql +37 -0
  1140. package/src/migrations/0094_environment_paths_idx.sql +7 -0
  1141. package/src/migrations/0095_environment_files_resets.sql +5 -0
  1142. package/src/migrations/0096_environment_demoted_default.sql +18 -0
  1143. package/src/migrations/0097_extension_installs_enabled_at.sql +16 -0
  1144. package/src/migrations/0098_single_provider_running_first.sql +41 -0
  1145. package/src/migrations/0099_channel_connection_guide_ack.sql +6 -0
  1146. package/src/migrations/0100_catalog_files.sql +13 -0
  1147. package/src/migrations/0101_marketplace_icons.sql +32 -0
  1148. package/src/migrations/0102_themes.sql +64 -0
  1149. package/src/migrations/0103_ui_theme_setting.sql +7 -0
  1150. package/dist/catalog/upgrade-targets.d.ts +0 -59
  1151. package/dist/catalog/upgrade-targets.js +0 -90
  1152. package/dist/conversations/sandbox-status.d.ts +0 -21
  1153. package/dist/conversations/sandbox-status.js +0 -24
  1154. package/dist/extensions/org-config.controller.d.ts +0 -24
  1155. package/dist/extensions/org-config.controller.js +0 -59
  1156. package/dist/http/gateway.module.js +0 -13
  1157. package/dist/http/health.controller.d.ts +0 -26
  1158. package/dist/http/health.controller.js +0 -79
  1159. package/dist/http/tokens.d.ts +0 -131
  1160. package/dist/http/tokens.js +0 -131
  1161. package/dist/http/zod.pipe.d.ts +0 -8
  1162. package/dist/http/zod.pipe.js +0 -14
  1163. package/dist/identity/enterprise-admin.d.ts +0 -14
  1164. package/dist/identity/enterprise-admin.js +0 -27
  1165. package/dist/identity/rate-limit.d.ts +0 -55
  1166. package/dist/identity/rate-limit.js +0 -121
  1167. package/dist/sandbox/lifecycle.d.ts +0 -21
  1168. package/dist/sandbox/lifecycle.js +0 -68
  1169. package/dist/tools/builtins/sandbox/names.d.ts +0 -7
  1170. package/dist/tools/builtins/sandbox/names.js +0 -20
@@ -1,18 +1,37 @@
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
+ };
1
10
  import { randomUUID } from "node:crypto";
2
11
  import { CHANNEL_EXTENSION_POINT, } from "@capybara-hq/plugin-sdk";
12
+ import { Inject, Injectable } from "@nestjs/common";
3
13
  import { sql } from "kysely";
4
14
  import { configFields, getPath, secretValues } from "../config/fields.js";
5
15
  import { queryEnabledPlugins } from "../ctx/create-ctx.js";
6
16
  import { createSecrets } from "../ctx/secrets.js";
7
17
  import { ApiError } from "../errors.js";
8
- import { configToJsonSchema } from "../extensions/config-json-schema.js";
18
+ import { toIssues } from "../extensions/config-issues.js";
19
+ import { configMessages, describeConfigUiProblems, safeConfigFormSchema, } from "../extensions/config-json-schema.js";
9
20
  import { enabledExtensionsByOrg } from "../extensions/enabled.js";
10
- import { toIssues } from "../extensions/org-config.js";
21
+ import { PluginGuides } from "../extensions/plugin-guides.js";
22
+ import { ExtensionRegistry } from "../extensions/registry.js";
11
23
  import { audit } from "../identity/audit.js";
24
+ import { KernelConfigService } from "../infra/config/kernel-config.service.js";
25
+ import { KernelDb } from "../infra/database/kernel-db.js";
26
+ import { TransactionHost } from "../infra/database/transaction-host.js";
27
+ import { Transactional } from "../infra/database/transactional.decorator.js";
28
+ import { KernelEvents } from "../infra/events/kernel-events.js";
29
+ import { KERNEL_BUS, KERNEL_LOGGER, KEYRING, REDIS } from "../infra/tokens.js";
12
30
  import { createRedactor } from "../log.js";
13
- import { lockOrgAndAuthorize } from "../orgs/org-lock.js";
31
+ import { OrgLock } from "../orgs/org-lock.js";
14
32
  import { readOrgSettings } from "../orgs/settings.service.js";
15
33
  import { adaptToFeatures } from "./features.js";
34
+ import { ChannelJobs } from "./jobs.js";
16
35
  import { webhookBase, webhookUrlOf } from "./webhook-url.js";
17
36
  /** 内核 secrets 命名空间(插件名不能取 `kernel`)。 */
18
37
  const SECRETS_NAMESPACE = "kernel";
@@ -81,6 +100,7 @@ const COLUMNS = [
81
100
  "last_error",
82
101
  "bot_user_id",
83
102
  "tenant_id",
103
+ "guide_ack",
84
104
  "created_by",
85
105
  "created_at",
86
106
  "updated_at",
@@ -91,17 +111,62 @@ const COLUMNS = [
91
111
  * (命名空间 `kernel`,键 `channels:<id>:config`)。写操作在组织行锁内实时复核 `channels.manage`,写审计;
92
112
  * 改动提交后经内核 bus 广播 `channel.changed`,持有该连接的副本据此断开(下一轮扫描按新配置重连)。
93
113
  */
94
- export class ChannelConnections {
95
- deps;
96
- constructor(deps) {
97
- this.deps = deps;
114
+ let ChannelConnections = class ChannelConnections {
115
+ db;
116
+ orgLock;
117
+ keyring;
118
+ registry;
119
+ bus;
120
+ redis;
121
+ jobs;
122
+ config;
123
+ log;
124
+ txHost;
125
+ guides;
126
+ unsubscribe;
127
+ /** `<plugin>@<version>` whose invalid connection hints were warned about (a log dedupe only). */
128
+ hintsWarned = new Set();
129
+ constructor(db,
130
+ /** The org row lock (orgs/org-lock.ts): joins the transaction of the write. */
131
+ orgLock, keyring, registry, bus, redis,
132
+ /** A connection that can deliver again catches up its conversations (`resumeConnection`). */
133
+ jobs,
134
+ /** `channels.webhookBaseUrl`: without it webhook mode is unavailable. */
135
+ config, events,
136
+ /** Secret values handled here (written or decrypted) are redacted from the logs (`addOrgSecrets`). */
137
+ log, txHost,
138
+ /** The setup guide acks (spec 2026-11-08-plugin-setup-guides-design.md §6). */
139
+ guides) {
140
+ this.db = db;
141
+ this.orgLock = orgLock;
142
+ this.keyring = keyring;
143
+ this.registry = registry;
144
+ this.bus = bus;
145
+ this.redis = redis;
146
+ this.jobs = jobs;
147
+ this.config = config;
148
+ this.log = log;
149
+ this.txHost = txHost;
150
+ this.guides = guides;
151
+ this.unsubscribe = [
152
+ // a deleted org's channel connections drop their long connections at once
153
+ events.on("org.deleted", ({ orgId }) => this.notifyOrgChanged(orgId)),
154
+ // an org disabling an extension drops that extension's channel connections at once (the
155
+ // supervisor's periodic re-check is the fallback)
156
+ events.on("extension.org-disabled", ({ orgId, plugin }) => this.notifyOrgChanged(orgId, plugin)),
157
+ ];
158
+ }
159
+ /** Unsubscribes after the stop phases: events emitted while they drain are still handled. */
160
+ onApplicationShutdown() {
161
+ for (const off of this.unsubscribe)
162
+ off();
98
163
  }
99
164
  /** The extension's `channel@1`; not loaded or not provided -> `extension.not_found`. */
100
165
  channel(plugin) {
101
166
  return this.channelEntry(plugin).impl;
102
167
  }
103
168
  channelEntry(plugin) {
104
- const e = this.deps.host
169
+ const e = this.registry
105
170
  .list("channel")
106
171
  .find((x) => x.plugin === plugin && x.capability === CHANNEL_EXTENSION_POINT);
107
172
  if (!e)
@@ -110,18 +175,50 @@ export class ChannelConnections {
110
175
  }
111
176
  /** The extension is not enabled in this organization -> `extension.not_enabled`. */
112
177
  async assertEnabled(orgId, plugin) {
113
- if (!(await queryEnabledPlugins(this.deps.db, orgId)).has(plugin)) {
178
+ if (!(await queryEnabledPlugins(this.db.db, orgId)).has(plugin)) {
114
179
  throw new ApiError("extension.not_enabled", `Extension ${plugin} is not enabled for this organization`);
115
180
  }
116
181
  }
117
- /** `connectionSchema` 的 JSON Schema(同组织插件配置的转换:密钥字段带 `x-secret`、不输出取值)。 */
182
+ /**
183
+ * The connection schema's form JSON Schema (secret fields carry `x-secret`, no values), a copy.
184
+ * Never throws: when even the plain conversion fails, an empty object schema (a save is still
185
+ * validated here).
186
+ */
118
187
  jsonSchema(plugin) {
119
- return configToJsonSchema(this.channel(plugin).connectionSchema);
188
+ const entry = this.channelEntry(plugin);
189
+ const r = this.formSchema(plugin, entry.version, entry.impl.connectionSchema);
190
+ return r ? structuredClone(r.schema) : { type: "object" };
191
+ }
192
+ /**
193
+ * The connection schema's form JSON Schema; invalid hints are stripped and warned about once per
194
+ * `<plugin>@<version>` on this replica (spec §4.1: the connection level is checked at its first
195
+ * conversion, not at load). Never throws: a hint conversion that throws serves the plain schema,
196
+ * else null, with one warning per schema.
197
+ */
198
+ formSchema(plugin, version, schema) {
199
+ const r = safeConfigFormSchema(schema, "connection", (err, fallback) => this.log.warn("the channel connection form schema could not be built with its UI hints; hints dropped", { plugin, version, schema: fallback, err }));
200
+ const key = `${plugin}@${version}`;
201
+ if (r && r.problems.length > 0 && !this.hintsWarned.has(key)) {
202
+ this.hintsWarned.add(key);
203
+ this.log.warn("extension config UI hints are invalid and ignored", {
204
+ plugin,
205
+ version,
206
+ detail: describeConfigUiProblems("connection", r.problems),
207
+ });
208
+ }
209
+ return r;
210
+ }
211
+ /** The loaded version of a channel extension, for warnings ("unknown" when not provided). */
212
+ versionOf(plugin) {
213
+ return (this.registry
214
+ .list("channel")
215
+ .find((x) => x.plugin === plugin && x.capability === CHANNEL_EXTENSION_POINT)?.version ??
216
+ "unknown");
120
217
  }
121
218
  parse(plugin, schema, config) {
122
219
  const r = schema.safeParse(config);
123
220
  if (!r.success) {
124
- throw new ApiError("extension.config_invalid", `Invalid channel connection config for extension ${plugin}`, toIssues(r.error));
221
+ throw new ApiError("extension.config_invalid", `Invalid channel connection config for extension ${plugin}`, toIssues(r.error, configMessages(this.formSchema(plugin, this.versionOf(plugin), schema)?.schema)));
125
222
  }
126
223
  return r.data;
127
224
  }
@@ -141,10 +238,10 @@ export class ChannelConnections {
141
238
  reportSecrets(schema, config) {
142
239
  const values = secretValues(schema, config);
143
240
  if (values.length > 0)
144
- this.deps.onSecrets?.(values);
241
+ this.log.addOrgSecrets(values);
145
242
  }
146
- async assertAgent(t, orgId, agentId) {
147
- const a = await t
243
+ async assertAgent(orgId, agentId) {
244
+ const a = await this.db
148
245
  .selectFrom("agents")
149
246
  .select("id")
150
247
  .where("id", "=", agentId)
@@ -155,7 +252,7 @@ export class ChannelConnections {
155
252
  throw new ApiError("agent.not_found", "Agent not found");
156
253
  }
157
254
  async readSecrets(orgId, id) {
158
- const raw = await createSecrets(this.deps.db, this.deps.keyring, SECRETS_NAMESPACE).get(orgId, connectionSecretKey(id));
255
+ const raw = await createSecrets(this.db.db, this.keyring, SECRETS_NAMESPACE).get(orgId, connectionSecretKey(id));
159
256
  return raw === null ? {} : JSON.parse(raw);
160
257
  }
161
258
  view(r, setPaths) {
@@ -185,6 +282,7 @@ export class ChannelConnections {
185
282
  lastError: r.last_error,
186
283
  botUserId: r.bot_user_id,
187
284
  tenantId: r.tenant_id,
285
+ guideAck: r.guide_ack ?? null,
188
286
  config: r.config ?? {},
189
287
  secrets: paths.map((path) => ({ path, set: setPaths.has(path) })),
190
288
  createdBy: r.created_by,
@@ -193,8 +291,7 @@ export class ChannelConnections {
193
291
  };
194
292
  }
195
293
  webhookBase() {
196
- const config = this.deps.config?.();
197
- return config === undefined ? undefined : webhookBase(config);
294
+ return webhookBase(this.config.get());
198
295
  }
199
296
  /**
200
297
  * Switching to webhook mode needs a plugin that implements `Channel.webhook` and a configured
@@ -212,7 +309,7 @@ export class ChannelConnections {
212
309
  return this.view(row, new Set(Object.keys(await this.readSecrets(row.org_id, row.id))));
213
310
  }
214
311
  live(orgId) {
215
- return this.deps.db
312
+ return this.db
216
313
  .selectFrom("channel_connections")
217
314
  .select(COLUMNS)
218
315
  .where("org_id", "=", orgId)
@@ -234,51 +331,80 @@ export class ChannelConnections {
234
331
  await this.assertEnabled(orgId, input.plugin);
235
332
  const schema = channel.connectionSchema;
236
333
  const full = this.parse(input.plugin, schema, input.config);
237
- await this.assertAgent(this.deps.db, orgId, input.agentId);
334
+ await this.assertAgent(orgId, input.agentId);
238
335
  const verified = await this.verify(channel, full);
239
336
  const id = randomUUID();
240
337
  const { plain, secrets } = split(schema, full);
241
- const row = await this.deps.db.transaction().execute(async (t) => {
242
- await lockOrgAndAuthorize(t, orgId, actorAccountId, "channels.manage");
243
- await this.assertAgent(t, orgId, input.agentId);
244
- if (Object.keys(secrets).length > 0) {
245
- await createSecrets(t, this.deps.keyring, SECRETS_NAMESPACE).set(orgId, connectionSecretKey(id), JSON.stringify(secrets));
246
- }
247
- const inserted = await t
248
- .insertInto("channel_connections")
249
- .values({
250
- id,
251
- org_id: orgId,
252
- plugin: input.plugin,
253
- name: input.name,
254
- agent_id: input.agentId,
255
- config: JSON.stringify(plain),
256
- unbound_policy: input.unboundPolicy ?? "bind",
257
- bot_user_id: verified.botUserId,
258
- tenant_id: verified.tenantId,
259
- created_by: actorAccountId,
260
- })
261
- .returning(COLUMNS)
262
- .executeTakeFirstOrThrow();
263
- await audit(t, {
264
- actorAccountId,
265
- ...(actorTokenId !== undefined && { actorTokenId }),
266
- orgId,
267
- action: "channel.created",
268
- target: id,
269
- detail: { plugin: input.plugin, agentId: input.agentId },
270
- });
271
- return inserted;
338
+ // the guide the 新建渠道 page showed: the plugin's current one, for the default mode
339
+ const guideAck = await this.guides.currentAck(input.plugin, "long_connection");
340
+ const row = await this.insertIn({
341
+ orgId,
342
+ id,
343
+ input,
344
+ plain,
345
+ secrets,
346
+ verified,
347
+ guideAck,
348
+ actorAccountId,
349
+ actorTokenId,
272
350
  });
273
351
  this.reportSecrets(schema, full);
274
352
  await this.changed(id, false);
275
353
  return this.view(row, new Set(Object.keys(secrets)));
276
354
  }
355
+ /** The rows of {@link create}, in their own transaction (the caller publishes after the commit). */
356
+ async insertIn(a) {
357
+ const { orgId, id, input, actorAccountId, actorTokenId } = a;
358
+ await this.orgLock.lockAndAuthorize(orgId, actorAccountId, "channels.manage");
359
+ await this.assertAgent(orgId, input.agentId);
360
+ if (Object.keys(a.secrets).length > 0) {
361
+ await createSecrets(this.db.db, this.keyring, SECRETS_NAMESPACE).set(orgId, connectionSecretKey(id), JSON.stringify(a.secrets));
362
+ }
363
+ const inserted = await this.db
364
+ .insertInto("channel_connections")
365
+ .values({
366
+ id,
367
+ org_id: orgId,
368
+ plugin: input.plugin,
369
+ name: input.name,
370
+ agent_id: input.agentId,
371
+ config: JSON.stringify(a.plain),
372
+ unbound_policy: input.unboundPolicy ?? "bind",
373
+ bot_user_id: a.verified.botUserId,
374
+ tenant_id: a.verified.tenantId,
375
+ guide_ack: a.guideAck === null ? null : JSON.stringify(a.guideAck),
376
+ created_by: actorAccountId,
377
+ })
378
+ .returning(COLUMNS)
379
+ .executeTakeFirstOrThrow();
380
+ await audit(this.db.db, {
381
+ actorAccountId,
382
+ ...(actorTokenId !== undefined && { actorTokenId }),
383
+ orgId,
384
+ action: "channel.created",
385
+ target: id,
386
+ detail: { plugin: input.plugin, agentId: input.agentId },
387
+ });
388
+ return inserted;
389
+ }
390
+ /** The read-only refusals of {@link update} that need no write (the Platform tool's precheck). */
391
+ async checkUpdate(orgId, id, patch) {
392
+ const current = await this.live(orgId).where("id", "=", id).executeTakeFirst();
393
+ if (!current)
394
+ throw notFound();
395
+ if (patch.agentId !== undefined)
396
+ await this.assertAgent(orgId, patch.agentId);
397
+ if (patch.inboundMode === "webhook" && patch.inboundMode !== current.inbound_mode) {
398
+ this.assertWebhookAvailable(current.plugin);
399
+ }
400
+ }
277
401
  /**
278
402
  * 修改名称、agent、未绑定策略、启停,或轮换凭据(新配置同样先 `verify`,失败什么都不改)。
279
403
  * 插件在该组织停用时仍可轮换凭据,此时不 verify,返回 `verifySkipped: true`。
280
404
  */
281
- async update(orgId, id, patch, actorAccountId, actorTokenId) {
405
+ async update(orgId, id, patch, actorAccountId, actorTokenId,
406
+ /** Merged into the audit detail (the Platform tool's `via: "agent"`). */
407
+ auditDetail) {
282
408
  const current = await this.live(orgId).where("id", "=", id).executeTakeFirst();
283
409
  if (!current)
284
410
  throw notFound();
@@ -288,7 +414,7 @@ export class ChannelConnections {
288
414
  if (patch.config !== undefined) {
289
415
  const channel = this.channel(current.plugin);
290
416
  // 插件在该组织停用时也允许轮换(泄露的密钥要能立刻换掉),但不调用插件 verify:重新启用后长连接按新凭据连接
291
- const enabled = (await queryEnabledPlugins(this.deps.db, orgId)).has(current.plugin);
417
+ const enabled = (await queryEnabledPlugins(this.db.db, orgId)).has(current.plugin);
292
418
  const schema = channel.connectionSchema;
293
419
  const before = await this.readSecrets(orgId, id);
294
420
  const next = structuredClone(patch.config);
@@ -310,55 +436,26 @@ export class ChannelConnections {
310
436
  if (modeChanged && patch.inboundMode === "webhook")
311
437
  this.assertWebhookAvailable(current.plugin);
312
438
  if (patch.agentId !== undefined)
313
- await this.assertAgent(this.deps.db, orgId, patch.agentId);
314
- const row = await this.deps.db.transaction().execute(async (t) => {
315
- await lockOrgAndAuthorize(t, orgId, actorAccountId, "channels.manage");
316
- if (patch.agentId !== undefined)
317
- await this.assertAgent(t, orgId, patch.agentId);
318
- if (rotated) {
319
- const secrets = createSecrets(t, this.deps.keyring, SECRETS_NAMESPACE);
320
- if (Object.keys(rotated.secrets).length > 0) {
321
- await secrets.set(orgId, connectionSecretKey(id), JSON.stringify(rotated.secrets));
322
- }
323
- else {
324
- await secrets.delete(orgId, connectionSecretKey(id));
325
- }
326
- }
327
- const updated = await t
328
- .updateTable("channel_connections")
329
- .set({
330
- ...(patch.name !== undefined && { name: patch.name }),
331
- ...(patch.agentId !== undefined && { agent_id: patch.agentId }),
332
- ...(patch.unboundPolicy !== undefined && { unbound_policy: patch.unboundPolicy }),
333
- ...(patch.status !== undefined && { status: patch.status }),
334
- ...(patch.inboundMode !== undefined && { inbound_mode: patch.inboundMode }),
335
- ...(rotated && { config: JSON.stringify(rotated.plain) }),
336
- // 跳过了 verify:机器人 id 与租户保留原值(重新启用后插件按新凭据连接,入站以连接行的租户判断外部人员)
337
- ...(verified && { bot_user_id: verified.botUserId, tenant_id: verified.tenantId }),
338
- ...((rotated || patch.status === "active") && { last_error: null }),
339
- updated_at: sql `now()`,
340
- })
341
- .where("id", "=", id)
342
- .where("org_id", "=", orgId)
343
- .where("deleted_at", "is", null)
344
- .returning(COLUMNS)
345
- .executeTakeFirst();
346
- if (!updated)
347
- throw notFound();
348
- await audit(t, {
349
- actorAccountId,
350
- ...(actorTokenId !== undefined && { actorTokenId }),
351
- orgId,
352
- action: "channel.updated",
353
- target: id,
354
- detail: {
355
- changed: [
356
- ...Object.keys(patch).filter((k) => k !== "config" && patch[k] !== undefined),
357
- ...(rotated ? ["config"] : []),
358
- ],
359
- },
360
- });
361
- return updated;
439
+ await this.assertAgent(orgId, patch.agentId);
440
+ // A mode switch sets the platform app up for the new mode: the guide of that mode is the one
441
+ // on the page. Only an ack without drift moves on: a drifted one stays until the person
442
+ // confirms through guide-ack, so switching modes never clears the update notice (spec
443
+ // 2026-11-08-plugin-setup-guides-design.md §6)
444
+ const guideAck = modeChanged &&
445
+ patch.inboundMode !== undefined &&
446
+ !(await this.guides.ackDrifted(current.plugin, current.guide_ack ?? null))
447
+ ? await this.guides.currentAck(current.plugin, patch.inboundMode)
448
+ : undefined;
449
+ const row = await this.updateIn({
450
+ orgId,
451
+ id,
452
+ patch,
453
+ rotated,
454
+ verified,
455
+ guideAck,
456
+ actorAccountId,
457
+ actorTokenId,
458
+ auditDetail,
362
459
  });
363
460
  if (rotated)
364
461
  this.reportSecrets(rotated.schema, rotated.full);
@@ -366,50 +463,153 @@ export class ChannelConnections {
366
463
  if (rotated ||
367
464
  patch.status === "active" ||
368
465
  (modeChanged && patch.inboundMode === "long_connection")) {
369
- await this.deps.redis
466
+ await this.redis
370
467
  .del(channelBackoffKey(id), channelFailsKey(id))
371
- .catch((err) => this.deps.log.warn("cannot clear channel backoff", { err }));
468
+ .catch((err) => this.log.warn("cannot clear channel backoff", { err }));
372
469
  }
373
470
  // A mode switch also reconnects: the holder drops the long connection when going to webhook (F9)
374
471
  await this.changed(id, rotated !== undefined || patch.status !== undefined || modeChanged);
375
472
  if ((rotated || patch.status === "active") && row.status === "active") {
376
- await this.deps
377
- .onResume?.(id)
378
- .catch((err) => this.deps.log.warn("cannot resume channel deliveries", { err }));
473
+ await this.jobs
474
+ .resumeConnection(id)
475
+ .catch((err) => this.log.warn("cannot resume channel deliveries", { err }));
379
476
  }
380
477
  return { channel: await this.viewOf(row), verifySkipped };
381
478
  }
382
- /** 删除(软删除,同一事务删掉密钥);持有长连接的副本收到广播后断开。 */
383
- async remove(orgId, id, actorAccountId, actorTokenId) {
384
- await this.deps.db.transaction().execute(async (t) => {
385
- await lockOrgAndAuthorize(t, orgId, actorAccountId, "channels.manage");
386
- const r = await t
387
- .updateTable("channel_connections")
388
- .set({ deleted_at: sql `now()`, updated_at: sql `now()` })
389
- .where("id", "=", id)
390
- .where("org_id", "=", orgId)
391
- .where("deleted_at", "is", null)
392
- .executeTakeFirst();
393
- if (r.numUpdatedRows === 0n)
394
- throw notFound();
395
- await createSecrets(t, this.deps.keyring, SECRETS_NAMESPACE).delete(orgId, connectionSecretKey(id));
396
- await audit(t, {
397
- actorAccountId,
398
- ...(actorTokenId !== undefined && { actorTokenId }),
399
- orgId,
400
- action: "channel.deleted",
401
- target: id,
402
- });
479
+ /** The rows of {@link update}, in their own transaction (the caller publishes after the commit). */
480
+ async updateIn(a) {
481
+ const { orgId, id, patch, rotated, verified, actorAccountId, actorTokenId, auditDetail } = a;
482
+ await this.orgLock.lockAndAuthorize(orgId, actorAccountId, "channels.manage");
483
+ if (patch.agentId !== undefined)
484
+ await this.assertAgent(orgId, patch.agentId);
485
+ if (rotated) {
486
+ const secrets = createSecrets(this.db.db, this.keyring, SECRETS_NAMESPACE);
487
+ if (Object.keys(rotated.secrets).length > 0) {
488
+ await secrets.set(orgId, connectionSecretKey(id), JSON.stringify(rotated.secrets));
489
+ }
490
+ else {
491
+ await secrets.delete(orgId, connectionSecretKey(id));
492
+ }
493
+ }
494
+ const updated = await this.db
495
+ .updateTable("channel_connections")
496
+ .set({
497
+ ...(patch.name !== undefined && { name: patch.name }),
498
+ ...(patch.agentId !== undefined && { agent_id: patch.agentId }),
499
+ ...(patch.unboundPolicy !== undefined && { unbound_policy: patch.unboundPolicy }),
500
+ ...(patch.status !== undefined && { status: patch.status }),
501
+ ...(patch.inboundMode !== undefined && { inbound_mode: patch.inboundMode }),
502
+ ...(a.guideAck !== undefined && {
503
+ guide_ack: a.guideAck === null ? null : JSON.stringify(a.guideAck),
504
+ }),
505
+ ...(rotated && { config: JSON.stringify(rotated.plain) }),
506
+ // 跳过了 verify:机器人 id 与租户保留原值(重新启用后插件按新凭据连接,入站以连接行的租户判断外部人员)
507
+ ...(verified && { bot_user_id: verified.botUserId, tenant_id: verified.tenantId }),
508
+ ...((rotated || patch.status === "active") && { last_error: null }),
509
+ updated_at: sql `now()`,
510
+ })
511
+ .where("id", "=", id)
512
+ .where("org_id", "=", orgId)
513
+ .where("deleted_at", "is", null)
514
+ .returning(COLUMNS)
515
+ .executeTakeFirst();
516
+ if (!updated)
517
+ throw notFound();
518
+ await audit(this.db.db, {
519
+ actorAccountId,
520
+ ...(actorTokenId !== undefined && { actorTokenId }),
521
+ orgId,
522
+ action: "channel.updated",
523
+ target: id,
524
+ detail: {
525
+ changed: [
526
+ ...Object.keys(patch).filter((k) => k !== "config" && patch[k] !== undefined),
527
+ ...(rotated ? ["config"] : []),
528
+ ],
529
+ ...auditDetail,
530
+ },
403
531
  });
532
+ return updated;
533
+ }
534
+ /**
535
+ * 「我已更新应用」: records the plugin's current channel-connection guide for the connection's
536
+ * mode as the one it is set up with. `hash` is the template hash of the guide the person was
537
+ * shown; when the plugin has moved on since, 409 `channel.guide_changed` (show the new guide
538
+ * first). A plugin without a guide -> 404 `catalog.guide_not_found`.
539
+ */
540
+ async ackGuide(orgId, id, hash, actorAccountId, actorTokenId) {
541
+ const current = await this.live(orgId).where("id", "=", id).executeTakeFirst();
542
+ if (!current)
543
+ throw notFound();
544
+ const ack = await this.guides.currentAck(current.plugin, current.inbound_mode);
545
+ if (ack === null) {
546
+ throw new ApiError("catalog.guide_not_found", "The plugin has no channel setup guide");
547
+ }
548
+ if (ack.hash !== hash) {
549
+ throw new ApiError("channel.guide_changed", "The plugin's setup guide changed since it was shown; review the new guide first");
550
+ }
551
+ const row = await this.ackIn(orgId, id, ack, actorAccountId, actorTokenId);
552
+ return this.viewOf(row);
553
+ }
554
+ /** The row of {@link ackGuide}, in its own transaction. */
555
+ async ackIn(orgId, id, ack, actorAccountId, actorTokenId) {
556
+ await this.orgLock.lockAndAuthorize(orgId, actorAccountId, "channels.manage");
557
+ const row = await this.db
558
+ .updateTable("channel_connections")
559
+ .set({ guide_ack: JSON.stringify(ack), updated_at: sql `now()` })
560
+ .where("id", "=", id)
561
+ .where("org_id", "=", orgId)
562
+ .where("deleted_at", "is", null)
563
+ .returning(COLUMNS)
564
+ .executeTakeFirst();
565
+ if (!row)
566
+ throw notFound();
567
+ await audit(this.db.db, {
568
+ actorAccountId,
569
+ ...(actorTokenId !== undefined && { actorTokenId }),
570
+ orgId,
571
+ action: "channel.guide_confirmed",
572
+ target: id,
573
+ detail: { guideId: ack.guideId, version: ack.version },
574
+ });
575
+ return row;
576
+ }
577
+ /** 删除(软删除,同一事务删掉密钥);持有长连接的副本收到广播后断开。 */
578
+ async remove(orgId, id, actorAccountId, actorTokenId,
579
+ /** Merged into the audit detail (the Platform tool's `via: "agent"`). */
580
+ auditDetail) {
581
+ await this.removeIn(orgId, id, actorAccountId, actorTokenId, auditDetail);
404
582
  await this.changed(id, true);
405
583
  }
584
+ /** The rows of {@link remove}, in their own transaction (the caller publishes after the commit). */
585
+ async removeIn(orgId, id, actorAccountId, actorTokenId, auditDetail) {
586
+ await this.orgLock.lockAndAuthorize(orgId, actorAccountId, "channels.manage");
587
+ const r = await this.db
588
+ .updateTable("channel_connections")
589
+ .set({ deleted_at: sql `now()`, updated_at: sql `now()` })
590
+ .where("id", "=", id)
591
+ .where("org_id", "=", orgId)
592
+ .where("deleted_at", "is", null)
593
+ .executeTakeFirst();
594
+ if (r.numUpdatedRows === 0n)
595
+ throw notFound();
596
+ await createSecrets(this.db.db, this.keyring, SECRETS_NAMESPACE).delete(orgId, connectionSecretKey(id));
597
+ await audit(this.db.db, {
598
+ actorAccountId,
599
+ ...(actorTokenId !== undefined && { actorTokenId }),
600
+ orgId,
601
+ action: "channel.deleted",
602
+ target: id,
603
+ ...(auditDetail !== undefined && { detail: auditDetail }),
604
+ });
605
+ }
406
606
  /** 提交后广播;失败只记日志(持有方每轮续租时也会复核连接状态)。 */
407
607
  async changed(connectionId, reconnect) {
408
608
  try {
409
- await this.deps.bus.publish(CHANNEL_CHANGED_TOPIC, { connectionId, reconnect });
609
+ await this.bus.publish(CHANNEL_CHANGED_TOPIC, { connectionId, reconnect });
410
610
  }
411
611
  catch (err) {
412
- this.deps.log.warn("channel.changed publish failed", { connectionId, err });
612
+ this.log.warn("channel.changed publish failed", { connectionId, err });
413
613
  }
414
614
  }
415
615
  /**
@@ -417,10 +617,10 @@ export class ChannelConnections {
417
617
  * `pluginEnabled` 为插件此刻是否在该组织启用(入站与卡片操作每次都实时复核)。
418
618
  */
419
619
  async row(id) {
420
- const r = await this.deps.db
620
+ const r = await this.db
421
621
  .selectFrom("channel_connections as c")
422
622
  .innerJoin("orgs", "orgs.id", "c.org_id")
423
- .leftJoin(enabledExtensionsByOrg(this.deps.db).as("p"), (j) => j.onRef("p.plugin", "=", "c.plugin").onRef("p.org_id", "=", "c.org_id"))
623
+ .leftJoin(enabledExtensionsByOrg(this.db.db).as("p"), (j) => j.onRef("p.plugin", "=", "c.plugin").onRef("p.org_id", "=", "c.org_id"))
424
624
  .select([
425
625
  "c.id",
426
626
  "c.org_id",
@@ -453,7 +653,7 @@ export class ChannelConnections {
453
653
  * 持有长连接的副本立即断开(扫描复核只是兜底)。只广播,失败只记日志。
454
654
  */
455
655
  async notifyOrgChanged(orgId, plugin) {
456
- let q = this.deps.db
656
+ let q = this.db.db
457
657
  .selectFrom("channel_connections")
458
658
  .select("id")
459
659
  .where("org_id", "=", orgId)
@@ -465,7 +665,7 @@ export class ChannelConnections {
465
665
  rows = await q.execute();
466
666
  }
467
667
  catch (err) {
468
- this.deps.log.warn("cannot list channel connections to notify", { orgId, err });
668
+ this.log.warn("cannot list channel connections to notify", { orgId, err });
469
669
  return;
470
670
  }
471
671
  for (const r of rows)
@@ -485,7 +685,7 @@ export class ChannelConnections {
485
685
  const entry = this.channelEntry(row.plugin);
486
686
  const channel = entry.impl;
487
687
  await this.assertEnabled(row.orgId, row.plugin);
488
- const stored = await this.deps.db
688
+ const stored = await this.db
489
689
  .selectFrom("channel_connections")
490
690
  .select("config")
491
691
  .where("id", "=", id)
@@ -504,31 +704,64 @@ export class ChannelConnections {
504
704
  */
505
705
  async outbound(connectionId) {
506
706
  const { row, channel, config } = await this.runtime(connectionId);
507
- // 组织语言随每次发送 / 更新交给插件(Ruling A22);本次会话内不变
508
- const { locale } = await readOrgSettings(this.deps.db, row.orgId);
707
+ // the language handed to the extension with each send / update (Ruling A22): the recipient's
708
+ // when the caller gives it (IM language is per person, run context spec §3.4), else the org's
709
+ const { locale } = await readOrgSettings(this.db.db, row.orgId);
509
710
  return {
510
711
  row,
511
712
  features: channel.features,
512
713
  redact: createRedactor(secretValues(channel.connectionSchema, config), 4),
513
- send: (target, message, idempotencyKey) => channel.send({
714
+ send: (target, message, idempotencyKey, to = locale) => channel.send({
514
715
  config,
515
- ...adaptToFeatures(channel.features, target, message, locale),
716
+ ...adaptToFeatures(channel.features, target, message, to),
516
717
  signal: AbortSignal.timeout(PLUGIN_CALL_TIMEOUT_MS),
517
- locale,
718
+ locale: to,
518
719
  ...(idempotencyKey !== undefined && { idempotencyKey }),
519
720
  }),
520
- update: (target, messageId, message, idempotencyKey) => channel.update({
721
+ update: (target, messageId, message, idempotencyKey, to = locale) => channel.update({
521
722
  config,
522
- ...adaptToFeatures(channel.features, target, message, locale),
723
+ ...adaptToFeatures(channel.features, target, message, to),
523
724
  messageId,
524
725
  signal: AbortSignal.timeout(PLUGIN_CALL_TIMEOUT_MS),
525
- locale,
726
+ locale: to,
526
727
  ...(idempotencyKey !== undefined && { idempotencyKey }),
527
728
  }),
528
729
  };
529
730
  }
530
- /** 经连接的插件直接发一条消息(入站处理回绑定卡片、固定话术,卡片操作回说明);`idempotencyKey` 原样交给插件。 */
531
- async send(connectionId, target, message, idempotencyKey) {
532
- return (await this.outbound(connectionId)).send(target, message, idempotencyKey);
731
+ /**
732
+ * Sends one message through the connection's extension (inbound replies: bind cards, fixed
733
+ * phrases, card-action notes); `idempotencyKey` is passed through as is, `locale` is the
734
+ * recipient's language (else the org's).
735
+ */
736
+ async send(connectionId, target, message, idempotencyKey, locale) {
737
+ return (await this.outbound(connectionId)).send(target, message, idempotencyKey, locale);
533
738
  }
534
- }
739
+ };
740
+ __decorate([
741
+ Transactional({ propagation: "requires_new" })
742
+ ], ChannelConnections.prototype, "insertIn", null);
743
+ __decorate([
744
+ Transactional({ propagation: "requires_new" })
745
+ ], ChannelConnections.prototype, "updateIn", null);
746
+ __decorate([
747
+ Transactional({ propagation: "requires_new" })
748
+ ], ChannelConnections.prototype, "ackIn", null);
749
+ __decorate([
750
+ Transactional({ propagation: "requires_new" })
751
+ ], ChannelConnections.prototype, "removeIn", null);
752
+ ChannelConnections = __decorate([
753
+ Injectable(),
754
+ __param(0, Inject(KernelDb)),
755
+ __param(1, Inject(OrgLock)),
756
+ __param(2, Inject(KEYRING)),
757
+ __param(3, Inject(ExtensionRegistry)),
758
+ __param(4, Inject(KERNEL_BUS)),
759
+ __param(5, Inject(REDIS)),
760
+ __param(6, Inject(ChannelJobs)),
761
+ __param(7, Inject(KernelConfigService)),
762
+ __param(8, Inject(KernelEvents)),
763
+ __param(9, Inject(KERNEL_LOGGER)),
764
+ __param(10, Inject(TransactionHost)),
765
+ __param(11, Inject(PluginGuides))
766
+ ], ChannelConnections);
767
+ export { ChannelConnections };