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

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 (670) hide show
  1. package/dist/admin/admin.controller.d.ts +17 -17
  2. package/dist/admin/admin.controller.js +43 -26
  3. package/dist/admin/admin.module.d.ts +3 -0
  4. package/dist/admin/admin.module.js +22 -0
  5. package/dist/admin/extensions.controller.d.ts +14 -14
  6. package/dist/admin/extensions.controller.js +30 -17
  7. package/dist/admin/setup-lock.d.ts +16 -0
  8. package/dist/admin/setup-lock.js +47 -0
  9. package/dist/admin/setup.controller.d.ts +8 -8
  10. package/dist/admin/setup.controller.js +27 -25
  11. package/dist/admin/setup.service.d.ts +19 -27
  12. package/dist/admin/setup.service.js +61 -61
  13. package/dist/agents/agent-lookup.d.ts +53 -0
  14. package/dist/agents/agent-lookup.js +187 -0
  15. package/dist/agents/agents.controller.d.ts +1 -1
  16. package/dist/agents/agents.controller.js +14 -8
  17. package/dist/agents/agents.module.d.ts +7 -0
  18. package/dist/agents/agents.module.js +41 -0
  19. package/dist/agents/agents.service.d.ts +39 -58
  20. package/dist/agents/agents.service.js +280 -335
  21. package/dist/agents/definition.d.ts +39 -8
  22. package/dist/agents/definition.js +201 -17
  23. package/dist/agents/models.controller.d.ts +1 -1
  24. package/dist/agents/models.controller.js +2 -2
  25. package/dist/agents/templates.controller.d.ts +1 -1
  26. package/dist/agents/templates.controller.js +2 -2
  27. package/dist/agents/templates.d.ts +6 -8
  28. package/dist/agents/templates.js +39 -8
  29. package/dist/app.d.ts +93 -0
  30. package/dist/app.js +150 -0
  31. package/dist/catalog/admin-catalog.controller.d.ts +3 -3
  32. package/dist/catalog/admin-catalog.controller.js +27 -13
  33. package/dist/catalog/catalog-content.d.ts +185 -0
  34. package/dist/catalog/catalog-content.js +326 -0
  35. package/dist/catalog/catalog-items.d.ts +186 -0
  36. package/dist/catalog/catalog-items.js +410 -0
  37. package/dist/catalog/catalog.module.d.ts +14 -0
  38. package/dist/catalog/catalog.module.js +71 -0
  39. package/dist/catalog/catalog.service.d.ts +34 -188
  40. package/dist/catalog/catalog.service.js +155 -489
  41. package/dist/catalog/claude/agents.js +13 -10
  42. package/dist/catalog/cli.d.ts +3 -2
  43. package/dist/catalog/cli.js +13 -31
  44. package/dist/catalog/job-ids.d.ts +15 -0
  45. package/dist/catalog/job-ids.js +15 -0
  46. package/dist/catalog/jobs.d.ts +27 -0
  47. package/dist/catalog/jobs.js +70 -0
  48. package/dist/catalog/locks.d.ts +24 -0
  49. package/dist/catalog/locks.js +63 -0
  50. package/dist/catalog/marketplaces.controller.d.ts +4 -4
  51. package/dist/catalog/marketplaces.controller.js +22 -11
  52. package/dist/catalog/marketplaces.service.d.ts +31 -14
  53. package/dist/catalog/marketplaces.service.js +330 -256
  54. package/dist/catalog/org-catalog.controller.d.ts +4 -3
  55. package/dist/catalog/org-catalog.controller.js +29 -14
  56. package/dist/catalog/org-catalog.service.d.ts +32 -198
  57. package/dist/catalog/org-catalog.service.js +159 -400
  58. package/dist/catalog/plugin-import.d.ts +73 -34
  59. package/dist/catalog/plugin-import.js +356 -217
  60. package/dist/catalog/plugin-install.d.ts +83 -41
  61. package/dist/catalog/plugin-install.js +421 -269
  62. package/dist/catalog/plugin-upgrade.d.ts +59 -4
  63. package/dist/catalog/plugin-upgrade.js +407 -282
  64. package/dist/catalog/requests.service.d.ts +27 -15
  65. package/dist/catalog/requests.service.js +201 -145
  66. package/dist/catalog/upgrade-targets.d.ts +4 -7
  67. package/dist/channels/actions.d.ts +6 -4
  68. package/dist/channels/actions.js +1 -1
  69. package/dist/channels/cards.d.ts +10 -4
  70. package/dist/channels/cards.js +16 -8
  71. package/dist/channels/channels.module.d.ts +40 -0
  72. package/dist/channels/channels.module.js +128 -0
  73. package/dist/channels/connections.controller.d.ts +1 -1
  74. package/dist/channels/connections.controller.js +11 -6
  75. package/dist/channels/connections.service.d.ts +43 -21
  76. package/dist/channels/connections.service.js +236 -131
  77. package/dist/channels/inbound.d.ts +34 -38
  78. package/dist/channels/inbound.js +107 -41
  79. package/dist/channels/job-ids.d.ts +10 -0
  80. package/dist/channels/job-ids.js +10 -0
  81. package/dist/channels/jobs.d.ts +85 -0
  82. package/dist/channels/jobs.js +157 -0
  83. package/dist/channels/outbound.d.ts +60 -82
  84. package/dist/channels/outbound.js +165 -194
  85. package/dist/channels/supervisor.d.ts +88 -46
  86. package/dist/channels/supervisor.js +230 -132
  87. package/dist/channels/threads.d.ts +29 -8
  88. package/dist/channels/threads.js +71 -13
  89. package/dist/channels/webhook.d.ts +20 -14
  90. package/dist/channels/webhook.js +51 -20
  91. package/dist/config/load.d.ts +3 -2
  92. package/dist/config/load.js +3 -2
  93. package/dist/config/nacos-source.js +11 -2
  94. package/dist/config/schema.d.ts +1 -0
  95. package/dist/config/schema.js +12 -6
  96. package/dist/conversations/access.d.ts +29 -0
  97. package/dist/conversations/access.js +86 -0
  98. package/dist/conversations/artifacts.d.ts +11 -11
  99. package/dist/conversations/artifacts.js +36 -10
  100. package/dist/conversations/attachments.controller.d.ts +1 -1
  101. package/dist/conversations/attachments.controller.js +8 -6
  102. package/dist/conversations/attachments.module.d.ts +7 -0
  103. package/dist/conversations/attachments.module.js +25 -0
  104. package/dist/conversations/attachments.service.d.ts +30 -22
  105. package/dist/conversations/attachments.service.js +119 -46
  106. package/dist/conversations/conversations.controller.d.ts +8 -7
  107. package/dist/conversations/conversations.controller.js +59 -29
  108. package/dist/conversations/conversations.module.d.ts +8 -0
  109. package/dist/conversations/conversations.module.js +69 -0
  110. package/dist/conversations/conversations.service.d.ts +40 -38
  111. package/dist/conversations/conversations.service.js +130 -140
  112. package/dist/conversations/event-log.d.ts +39 -18
  113. package/dist/conversations/event-log.js +93 -27
  114. package/dist/conversations/events.d.ts +23 -3
  115. package/dist/conversations/events.js +26 -14
  116. package/dist/conversations/files.d.ts +10 -10
  117. package/dist/conversations/files.js +37 -11
  118. package/dist/conversations/idem-keys.d.ts +5 -0
  119. package/dist/conversations/idem-keys.js +5 -0
  120. package/dist/conversations/job-ids.d.ts +6 -0
  121. package/dist/conversations/job-ids.js +6 -0
  122. package/dist/conversations/outputs-read.d.ts +11 -11
  123. package/dist/conversations/outputs-read.js +31 -7
  124. package/dist/conversations/queue.d.ts +48 -56
  125. package/dist/conversations/queue.js +13 -289
  126. package/dist/conversations/queue.service.d.ts +60 -0
  127. package/dist/conversations/queue.service.js +343 -0
  128. package/dist/conversations/sandbox-status.d.ts +13 -10
  129. package/dist/conversations/sandbox-status.js +36 -8
  130. package/dist/conversations/titles.d.ts +71 -24
  131. package/dist/conversations/titles.js +159 -63
  132. package/dist/ctx/bus.js +9 -3
  133. package/dist/ctx/create-ctx.d.ts +6 -0
  134. package/dist/ctx/create-ctx.js +7 -9
  135. package/dist/ctx/lock.d.ts +7 -3
  136. package/dist/ctx/lock.js +9 -20
  137. package/dist/ctx/secrets.d.ts +10 -2
  138. package/dist/ctx/secrets.js +7 -3
  139. package/dist/db/kernel-schema.d.ts +4 -4
  140. package/dist/db/pool.d.ts +5 -0
  141. package/dist/db/pool.js +1 -0
  142. package/dist/errors.d.ts +1 -0
  143. package/dist/errors.js +1 -0
  144. package/dist/evals/budget.d.ts +42 -21
  145. package/dist/evals/budget.js +114 -62
  146. package/dist/evals/evals.module.d.ts +31 -0
  147. package/dist/evals/evals.module.js +114 -0
  148. package/dist/evals/jobs.d.ts +20 -0
  149. package/dist/evals/jobs.js +45 -0
  150. package/dist/evals/recorded-tools.d.ts +27 -1
  151. package/dist/evals/recorded-tools.js +85 -10
  152. package/dist/evals/run-replay.d.ts +61 -8
  153. package/dist/evals/run-replay.js +159 -85
  154. package/dist/evals/runs.controller.d.ts +1 -1
  155. package/dist/evals/runs.controller.js +17 -8
  156. package/dist/evals/runs.service.d.ts +23 -45
  157. package/dist/evals/runs.service.js +245 -234
  158. package/dist/evals/sets.controller.d.ts +1 -1
  159. package/dist/evals/sets.controller.js +17 -8
  160. package/dist/evals/sets.service.d.ts +22 -6
  161. package/dist/evals/sets.service.js +248 -194
  162. package/dist/evals/snapshot.d.ts +2 -2
  163. package/dist/evals/step-replay.d.ts +2 -2
  164. package/dist/evals/step-replay.js +1 -1
  165. package/dist/evals/trajectory.controller.d.ts +1 -1
  166. package/dist/evals/trajectory.controller.js +11 -7
  167. package/dist/evals/trajectory.d.ts +2 -2
  168. package/dist/evals/trajectory.service.d.ts +5 -4
  169. package/dist/evals/trajectory.service.js +30 -7
  170. package/dist/evals/worker.d.ts +44 -27
  171. package/dist/evals/worker.js +220 -121
  172. package/dist/extensions/admin-ops.d.ts +61 -33
  173. package/dist/extensions/admin-ops.js +248 -154
  174. package/dist/extensions/admin-view.d.ts +38 -27
  175. package/dist/extensions/admin-view.js +126 -55
  176. package/dist/extensions/approvals.d.ts +12 -8
  177. package/dist/extensions/approvals.js +73 -46
  178. package/dist/extensions/blobs.d.ts +27 -10
  179. package/dist/extensions/blobs.js +111 -45
  180. package/dist/extensions/bootstrap.d.ts +58 -31
  181. package/dist/extensions/bootstrap.js +175 -121
  182. package/dist/extensions/cli.d.ts +20 -10
  183. package/dist/extensions/cli.js +41 -96
  184. package/dist/extensions/config-issues.d.ts +7 -0
  185. package/dist/extensions/config-issues.js +31 -0
  186. package/dist/extensions/deployment-config-store.d.ts +49 -0
  187. package/dist/extensions/deployment-config-store.js +133 -0
  188. package/dist/extensions/deployment-config.d.ts +58 -67
  189. package/dist/extensions/deployment-config.js +202 -230
  190. package/dist/extensions/enabled.d.ts +5 -5
  191. package/dist/extensions/extensions.module.d.ts +8 -0
  192. package/dist/extensions/extensions.module.js +77 -0
  193. package/dist/extensions/hooks.d.ts +3 -2
  194. package/dist/extensions/hooks.js +1 -1
  195. package/dist/extensions/host.d.ts +72 -68
  196. package/dist/extensions/host.js +191 -152
  197. package/dist/extensions/installs.d.ts +49 -16
  198. package/dist/extensions/installs.js +128 -32
  199. package/dist/extensions/job-ids.d.ts +6 -0
  200. package/dist/extensions/job-ids.js +6 -0
  201. package/dist/extensions/lifecycle-topics.d.ts +18 -0
  202. package/dist/extensions/lifecycle-topics.js +18 -0
  203. package/dist/extensions/lifecycle.d.ts +35 -47
  204. package/dist/extensions/lifecycle.js +103 -39
  205. package/dist/extensions/locks.d.ts +33 -0
  206. package/dist/extensions/locks.js +86 -0
  207. package/dist/extensions/migrate-lock.d.ts +3 -4
  208. package/dist/extensions/org-config.controller.d.ts +1 -1
  209. package/dist/extensions/org-config.controller.js +8 -5
  210. package/dist/extensions/org-config.d.ts +48 -46
  211. package/dist/extensions/org-config.js +284 -226
  212. package/dist/extensions/registry.d.ts +50 -2
  213. package/dist/extensions/registry.js +89 -4
  214. package/dist/extensions/sources.d.ts +12 -8
  215. package/dist/extensions/sources.js +34 -13
  216. package/dist/files/files.module.d.ts +3 -0
  217. package/dist/files/files.module.js +22 -0
  218. package/dist/files/previewers.controller.d.ts +7 -2
  219. package/dist/files/previewers.controller.js +17 -9
  220. package/dist/files/previewers.d.ts +13 -18
  221. package/dist/files/previewers.js +83 -36
  222. package/dist/http/adapter.d.ts +3 -0
  223. package/dist/http/adapter.js +25 -0
  224. package/dist/http/api.module.d.ts +3 -110
  225. package/dist/http/api.module.js +47 -355
  226. package/dist/http/app.d.ts +11 -15
  227. package/dist/http/app.js +17 -62
  228. package/dist/http/error-filter.module.d.ts +5 -0
  229. package/dist/http/error-filter.module.js +18 -0
  230. package/dist/http/error.filter.js +2 -2
  231. package/dist/identity/accounts.d.ts +82 -29
  232. package/dist/identity/accounts.js +294 -175
  233. package/dist/identity/api-tokens.d.ts +11 -7
  234. package/dist/identity/api-tokens.js +71 -44
  235. package/dist/identity/audit.d.ts +7 -4
  236. package/dist/identity/audit.js +5 -1
  237. package/dist/identity/auth.controller.d.ts +11 -10
  238. package/dist/identity/auth.controller.js +31 -25
  239. package/dist/identity/auth.guard.d.ts +3 -3
  240. package/dist/identity/auth.guard.js +6 -4
  241. package/dist/identity/binding.d.ts +9 -11
  242. package/dist/identity/binding.js +41 -13
  243. package/dist/identity/enterprise-admin.d.ts +18 -12
  244. package/dist/identity/enterprise-admin.js +67 -13
  245. package/dist/identity/external-identity-lock.d.ts +17 -0
  246. package/dist/identity/external-identity-lock.js +39 -0
  247. package/dist/identity/external.d.ts +19 -15
  248. package/dist/identity/external.js +163 -125
  249. package/dist/identity/identity.module.d.ts +6 -0
  250. package/dist/identity/identity.module.js +56 -0
  251. package/dist/identity/me.controller.d.ts +16 -15
  252. package/dist/identity/me.controller.js +37 -31
  253. package/dist/identity/sessions.d.ts +12 -10
  254. package/dist/identity/sessions.js +74 -42
  255. package/dist/identity/settings.d.ts +20 -14
  256. package/dist/identity/settings.js +86 -58
  257. package/dist/identity/sso.controller.d.ts +7 -7
  258. package/dist/identity/sso.controller.js +13 -9
  259. package/dist/identity/sso.d.ts +9 -12
  260. package/dist/identity/sso.js +54 -24
  261. package/dist/inbox/inbox.module.d.ts +3 -0
  262. package/dist/inbox/inbox.module.js +22 -0
  263. package/dist/inbox/inbox.service.d.ts +7 -9
  264. package/dist/inbox/inbox.service.js +32 -11
  265. package/dist/index.d.ts +16 -11
  266. package/dist/index.js +9 -6
  267. package/dist/infra/cache/cache.module.d.ts +3 -0
  268. package/dist/infra/cache/cache.module.js +16 -0
  269. package/dist/infra/cache/cache.service.d.ts +21 -0
  270. package/dist/infra/cache/cache.service.js +80 -0
  271. package/dist/infra/cache/cacheable.decorator.d.ts +32 -0
  272. package/dist/infra/cache/cacheable.decorator.js +83 -0
  273. package/dist/infra/cli/kernel-cli.module.d.ts +66 -0
  274. package/dist/infra/cli/kernel-cli.module.js +165 -0
  275. package/dist/infra/close-within.d.ts +15 -0
  276. package/dist/infra/close-within.js +36 -0
  277. package/dist/infra/config/config.module.d.ts +13 -0
  278. package/dist/infra/config/config.module.js +39 -0
  279. package/dist/infra/config/kernel-config.service.d.ts +25 -0
  280. package/dist/infra/config/kernel-config.service.js +126 -0
  281. package/dist/infra/database/after-commit.d.ts +6 -0
  282. package/dist/infra/database/after-commit.js +9 -0
  283. package/dist/infra/database/database.module.d.ts +25 -0
  284. package/dist/infra/database/database.module.js +90 -0
  285. package/dist/infra/database/kernel-db.d.ts +22 -0
  286. package/dist/infra/database/kernel-db.js +65 -0
  287. package/dist/infra/database/transaction-host.d.ts +50 -0
  288. package/dist/infra/database/transaction-host.js +125 -0
  289. package/dist/infra/database/transactional.decorator.d.ts +15 -0
  290. package/dist/infra/database/transactional.decorator.js +27 -0
  291. package/dist/infra/database/xact-lock.d.ts +17 -0
  292. package/dist/infra/database/xact-lock.js +43 -0
  293. package/dist/infra/events/kernel-events.d.ts +96 -0
  294. package/dist/infra/events/kernel-events.js +65 -0
  295. package/dist/infra/health/health.controller.d.ts +26 -0
  296. package/dist/infra/health/health.controller.js +104 -0
  297. package/dist/infra/health/health.module.d.ts +9 -0
  298. package/dist/infra/health/health.module.js +24 -0
  299. package/dist/infra/health/health.options.d.ts +10 -0
  300. package/dist/infra/health/health.options.js +15 -0
  301. package/dist/infra/health/shutdown-state.d.ts +6 -0
  302. package/dist/infra/health/shutdown-state.js +2 -0
  303. package/dist/infra/lifecycle/graceful-shutdown.module.d.ts +6 -0
  304. package/dist/infra/lifecycle/graceful-shutdown.module.js +23 -0
  305. package/dist/infra/lifecycle/graceful-shutdown.service.d.ts +70 -0
  306. package/dist/infra/lifecycle/graceful-shutdown.service.js +135 -0
  307. package/dist/infra/lifecycle/process-guards.d.ts +52 -0
  308. package/dist/infra/lifecycle/process-guards.js +86 -0
  309. package/dist/infra/lifecycle/shutdown-signals.d.ts +30 -0
  310. package/dist/infra/lifecycle/shutdown-signals.js +48 -0
  311. package/dist/infra/lock/key-template.d.ts +13 -0
  312. package/dist/infra/lock/key-template.js +46 -0
  313. package/dist/infra/lock/lock.module.d.ts +3 -0
  314. package/dist/infra/lock/lock.module.js +16 -0
  315. package/dist/infra/lock/lock.service.d.ts +120 -0
  316. package/dist/infra/lock/lock.service.js +343 -0
  317. package/dist/infra/lock/shared-lease.d.ts +44 -0
  318. package/dist/infra/lock/shared-lease.js +121 -0
  319. package/dist/infra/lock/with-lock.decorator.d.ts +28 -0
  320. package/dist/infra/lock/with-lock.decorator.js +49 -0
  321. package/dist/infra/logging/logging.module.d.ts +16 -0
  322. package/dist/infra/logging/logging.module.js +34 -0
  323. package/dist/infra/queue/configured-processor.d.ts +18 -0
  324. package/dist/infra/queue/configured-processor.js +23 -0
  325. package/dist/infra/queue/job-failure.d.ts +18 -0
  326. package/dist/infra/queue/job-failure.js +26 -0
  327. package/dist/infra/queue/queue-shutdown.d.ts +27 -0
  328. package/dist/infra/queue/queue-shutdown.js +81 -0
  329. package/dist/infra/queue/queue.module.d.ts +16 -0
  330. package/dist/infra/queue/queue.module.js +61 -0
  331. package/dist/infra/queue/redis-connection.d.ts +7 -0
  332. package/dist/infra/queue/redis-connection.js +18 -0
  333. package/dist/infra/queue/retired-schedulers.d.ts +7 -0
  334. package/dist/infra/queue/retired-schedulers.js +9 -0
  335. package/dist/infra/queue/run-job.d.ts +16 -0
  336. package/dist/infra/queue/run-job.js +19 -0
  337. package/dist/infra/redis/redis.module.d.ts +24 -0
  338. package/dist/infra/redis/redis.module.js +87 -0
  339. package/dist/infra/schedule/cron-tick.d.ts +12 -0
  340. package/dist/infra/schedule/cron-tick.js +25 -0
  341. package/dist/infra/schedule/locked-cron.decorator.d.ts +27 -0
  342. package/dist/infra/schedule/locked-cron.decorator.js +53 -0
  343. package/dist/infra/schedule/locked-interval.d.ts +69 -0
  344. package/dist/infra/schedule/locked-interval.js +190 -0
  345. package/dist/infra/schedule/locked-tick.d.ts +90 -0
  346. package/dist/infra/schedule/locked-tick.js +137 -0
  347. package/dist/infra/schedule/schedule.module.d.ts +8 -0
  348. package/dist/infra/schedule/schedule.module.js +27 -0
  349. package/dist/infra/schedule/scheduled-runs.d.ts +69 -0
  350. package/dist/infra/schedule/scheduled-runs.js +163 -0
  351. package/dist/infra/swagger/swagger.d.ts +16 -0
  352. package/dist/infra/swagger/swagger.js +31 -0
  353. package/dist/infra/throttler/credential-throttler.d.ts +35 -0
  354. package/dist/infra/throttler/credential-throttler.js +77 -0
  355. package/dist/infra/throttler/named-throttlers.d.ts +31 -0
  356. package/dist/infra/throttler/named-throttlers.js +119 -0
  357. package/dist/infra/throttler/redis-throttler-storage.d.ts +38 -0
  358. package/dist/infra/throttler/redis-throttler-storage.js +130 -0
  359. package/dist/infra/throttler/throttler.guard.d.ts +23 -0
  360. package/dist/infra/throttler/throttler.guard.js +68 -0
  361. package/dist/infra/throttler/throttler.module.d.ts +15 -0
  362. package/dist/infra/throttler/throttler.module.js +53 -0
  363. package/dist/infra/tokens.d.ts +15 -0
  364. package/dist/infra/tokens.js +15 -0
  365. package/dist/infra/validation/create-zod-dto.d.ts +23 -0
  366. package/dist/infra/validation/create-zod-dto.js +35 -0
  367. package/dist/infra/validation/parse-with-zod.d.ts +7 -0
  368. package/dist/infra/validation/parse-with-zod.js +12 -0
  369. package/dist/infra/validation/validation.module.d.ts +3 -0
  370. package/dist/infra/validation/validation.module.js +16 -0
  371. package/dist/infra/validation/zod-params.d.ts +7 -0
  372. package/dist/infra/validation/zod-params.js +42 -0
  373. package/dist/infra/validation/zod-validation.pipe.d.ts +11 -0
  374. package/dist/infra/validation/zod-validation.pipe.js +31 -0
  375. package/dist/kernel.d.ts +9 -244
  376. package/dist/kernel.js +8 -1305
  377. package/dist/kernel.module.d.ts +17 -0
  378. package/dist/kernel.module.js +136 -0
  379. package/dist/lifecycle/kernel-lifecycle.d.ts +140 -0
  380. package/dist/lifecycle/kernel-lifecycle.js +456 -0
  381. package/dist/lifecycle/tokens.d.ts +3 -0
  382. package/dist/lifecycle/tokens.js +3 -0
  383. package/dist/log-context.d.ts +2 -0
  384. package/dist/log-context.js +4 -0
  385. package/dist/models/models.module.d.ts +3 -0
  386. package/dist/models/models.module.js +24 -0
  387. package/dist/models/prices.d.ts +8 -2
  388. package/dist/models/prices.js +65 -37
  389. package/dist/models/purposes.controller.d.ts +1 -1
  390. package/dist/models/purposes.controller.js +5 -6
  391. package/dist/models/purposes.d.ts +35 -13
  392. package/dist/models/purposes.js +101 -51
  393. package/dist/orgs/directory-sync.controller.d.ts +1 -1
  394. package/dist/orgs/directory-sync.controller.js +2 -2
  395. package/dist/orgs/directory-sync.d.ts +61 -31
  396. package/dist/orgs/directory-sync.js +212 -125
  397. package/dist/orgs/invitations.controller.d.ts +8 -8
  398. package/dist/orgs/invitations.controller.js +27 -26
  399. package/dist/orgs/invitations.service.d.ts +12 -9
  400. package/dist/orgs/invitations.service.js +130 -92
  401. package/dist/orgs/job-ids.d.ts +8 -0
  402. package/dist/orgs/job-ids.js +8 -0
  403. package/dist/orgs/members.service.d.ts +19 -12
  404. package/dist/orgs/members.service.js +161 -117
  405. package/dist/orgs/offboarding.d.ts +54 -57
  406. package/dist/orgs/offboarding.js +161 -71
  407. package/dist/orgs/org-lock.d.ts +28 -19
  408. package/dist/orgs/org-lock.js +81 -35
  409. package/dist/orgs/org.guard.d.ts +1 -1
  410. package/dist/orgs/org.guard.js +2 -2
  411. package/dist/orgs/orgs.controller.d.ts +13 -13
  412. package/dist/orgs/orgs.controller.js +29 -17
  413. package/dist/orgs/orgs.module.d.ts +6 -0
  414. package/dist/orgs/orgs.module.js +68 -0
  415. package/dist/orgs/orgs.service.d.ts +30 -19
  416. package/dist/orgs/orgs.service.js +139 -86
  417. package/dist/orgs/settings.controller.d.ts +1 -1
  418. package/dist/orgs/settings.controller.js +8 -6
  419. package/dist/orgs/settings.service.d.ts +16 -10
  420. package/dist/orgs/settings.service.js +77 -48
  421. package/dist/overrides.d.ts +56 -0
  422. package/dist/overrides.js +30 -0
  423. package/dist/roles/gateway-role.d.ts +43 -0
  424. package/dist/roles/gateway-role.js +98 -0
  425. package/dist/roles/gateway.module.d.ts +8 -0
  426. package/dist/roles/gateway.module.js +28 -0
  427. package/dist/roles/worker-role.d.ts +63 -0
  428. package/dist/roles/worker-role.js +144 -0
  429. package/dist/roles/worker.module.d.ts +14 -0
  430. package/dist/roles/worker.module.js +90 -0
  431. package/dist/runtime/abort.js +19 -2
  432. package/dist/runtime/checkpointer.d.ts +8 -3
  433. package/dist/runtime/checkpointer.js +87 -55
  434. package/dist/runtime/context/build.d.ts +6 -6
  435. package/dist/runtime/context/build.js +18 -8
  436. package/dist/runtime/context/claude-tools.d.ts +2 -1
  437. package/dist/runtime/context/claude-tools.js +9 -10
  438. package/dist/runtime/context/legacy-text.d.ts +22 -0
  439. package/dist/runtime/context/legacy-text.js +37 -0
  440. package/dist/runtime/context/skills.d.ts +29 -11
  441. package/dist/runtime/context/skills.js +37 -30
  442. package/dist/runtime/conversation-lock.d.ts +20 -11
  443. package/dist/runtime/conversation-lock.js +62 -72
  444. package/dist/runtime/hook-calls.d.ts +3 -3
  445. package/dist/runtime/hook-calls.js +1 -6
  446. package/dist/runtime/job-ids.d.ts +10 -0
  447. package/dist/runtime/job-ids.js +10 -0
  448. package/dist/runtime/langgraph-loop.js +1 -1
  449. package/dist/runtime/loop.d.ts +8 -1
  450. package/dist/runtime/loop.js +14 -0
  451. package/dist/runtime/maintenance-queue.d.ts +10 -0
  452. package/dist/runtime/maintenance-queue.js +10 -0
  453. package/dist/runtime/maintenance.d.ts +45 -74
  454. package/dist/runtime/maintenance.js +139 -137
  455. package/dist/runtime/model-call.d.ts +7 -4
  456. package/dist/runtime/model-call.js +25 -58
  457. package/dist/runtime/providers.d.ts +17 -6
  458. package/dist/runtime/providers.js +66 -25
  459. package/dist/runtime/quota.d.ts +17 -3
  460. package/dist/runtime/quota.js +27 -2
  461. package/dist/runtime/retired-schedulers.d.ts +7 -0
  462. package/dist/runtime/retired-schedulers.js +31 -0
  463. package/dist/runtime/run-control.d.ts +33 -0
  464. package/dist/runtime/run-control.js +77 -0
  465. package/dist/runtime/run-finish.d.ts +27 -18
  466. package/dist/runtime/run-finish.js +98 -51
  467. package/dist/runtime/run-jobs.d.ts +48 -0
  468. package/dist/runtime/run-jobs.js +95 -0
  469. package/dist/runtime/run-processors.d.ts +60 -0
  470. package/dist/runtime/run-processors.js +185 -0
  471. package/dist/runtime/run-queue.d.ts +32 -57
  472. package/dist/runtime/run-queue.js +291 -295
  473. package/dist/runtime/run-steps.d.ts +39 -0
  474. package/dist/runtime/run-steps.js +96 -0
  475. package/dist/runtime/run-worker.d.ts +122 -76
  476. package/dist/runtime/run-worker.js +343 -229
  477. package/dist/runtime/runtime.module.d.ts +10 -0
  478. package/dist/runtime/runtime.module.js +112 -0
  479. package/dist/runtime/step-log.d.ts +40 -0
  480. package/dist/runtime/step-log.js +94 -0
  481. package/dist/runtime/stream.controller.d.ts +5 -8
  482. package/dist/runtime/stream.controller.js +14 -12
  483. package/dist/runtime/stream.d.ts +24 -6
  484. package/dist/runtime/stream.js +78 -7
  485. package/dist/runtime/subagents/child.d.ts +3 -44
  486. package/dist/runtime/subagents/child.js +0 -79
  487. package/dist/runtime/subagents/definition.d.ts +5 -10
  488. package/dist/runtime/subagents/definition.js +13 -14
  489. package/dist/runtime/subagents/dispatch.d.ts +89 -8
  490. package/dist/runtime/subagents/dispatch.js +137 -142
  491. package/dist/runtime/subagents/limits.d.ts +9 -4
  492. package/dist/runtime/subagents/limits.js +4 -2
  493. package/dist/runtime/subagents/org-agents.d.ts +4 -4
  494. package/dist/runtime/subagents/org-agents.js +3 -2
  495. package/dist/runtime/subagents/progress.d.ts +2 -2
  496. package/dist/runtime/subagents/roster.d.ts +4 -4
  497. package/dist/runtime/subagents/roster.js +2 -2
  498. package/dist/runtime/subagents/skill-fork.d.ts +8 -9
  499. package/dist/runtime/subagents/skill-fork.js +17 -6
  500. package/dist/runtime/subagents/subagents.service.d.ts +40 -0
  501. package/dist/runtime/subagents/subagents.service.js +101 -0
  502. package/dist/runtime/usage-report.d.ts +94 -52
  503. package/dist/runtime/usage-report.js +200 -100
  504. package/dist/runtime/waits.d.ts +127 -59
  505. package/dist/runtime/waits.js +433 -210
  506. package/dist/sandbox/job-ids.d.ts +10 -0
  507. package/dist/sandbox/job-ids.js +10 -0
  508. package/dist/sandbox/jobs.d.ts +41 -0
  509. package/dist/sandbox/jobs.js +113 -0
  510. package/dist/sandbox/leases.d.ts +39 -31
  511. package/dist/sandbox/leases.js +117 -257
  512. package/dist/sandbox/providers.d.ts +19 -0
  513. package/dist/sandbox/providers.js +38 -0
  514. package/dist/sandbox/sandbox.module.d.ts +8 -0
  515. package/dist/sandbox/sandbox.module.js +30 -0
  516. package/dist/sandbox/sandbox.service.d.ts +24 -29
  517. package/dist/sandbox/sandbox.service.js +106 -75
  518. package/dist/skills/catalog.d.ts +37 -24
  519. package/dist/skills/catalog.js +100 -57
  520. package/dist/skills/changes.controller.d.ts +4 -4
  521. package/dist/skills/changes.controller.js +15 -9
  522. package/dist/skills/changes.service.d.ts +30 -20
  523. package/dist/skills/changes.service.js +425 -367
  524. package/dist/skills/invocable.controller.d.ts +1 -1
  525. package/dist/skills/invocable.controller.js +8 -5
  526. package/dist/skills/invocation-keys.d.ts +1 -1
  527. package/dist/skills/invocation-keys.js +1 -1
  528. package/dist/skills/invoke.d.ts +17 -16
  529. package/dist/skills/invoke.js +53 -21
  530. package/dist/skills/skills.controller.d.ts +1 -1
  531. package/dist/skills/skills.controller.js +11 -6
  532. package/dist/skills/skills.module.d.ts +6 -0
  533. package/dist/skills/skills.module.js +30 -0
  534. package/dist/skills/skills.service.d.ts +47 -30
  535. package/dist/skills/skills.service.js +221 -158
  536. package/dist/storage/job-ids.d.ts +6 -0
  537. package/dist/storage/job-ids.js +6 -0
  538. package/dist/storage/purge.d.ts +22 -7
  539. package/dist/storage/purge.js +55 -3
  540. package/dist/storage/storage.module.d.ts +6 -0
  541. package/dist/storage/storage.module.js +23 -0
  542. package/dist/storage/storage.service.d.ts +18 -4
  543. package/dist/storage/storage.service.js +44 -3
  544. package/dist/tools/approvals.controller.d.ts +1 -1
  545. package/dist/tools/approvals.controller.js +12 -8
  546. package/dist/tools/approvals.service.d.ts +33 -25
  547. package/dist/tools/approvals.service.js +343 -259
  548. package/dist/tools/breaker.d.ts +2 -2
  549. package/dist/tools/breaker.js +21 -3
  550. package/dist/tools/builtin-names.d.ts +73 -0
  551. package/dist/tools/builtin-names.js +116 -0
  552. package/dist/tools/builtins/agent.d.ts +7 -7
  553. package/dist/tools/builtins/agent.js +7 -11
  554. package/dist/tools/builtins/ask-user.d.ts +3 -3
  555. package/dist/tools/builtins/ask-user.js +3 -3
  556. package/dist/tools/builtins/builtin-tools.d.ts +21 -0
  557. package/dist/tools/builtins/builtin-tools.js +80 -0
  558. package/dist/tools/builtins/read-tool-output.d.ts +3 -3
  559. package/dist/tools/builtins/read-tool-output.js +3 -3
  560. package/dist/tools/builtins/sandbox/bash.d.ts +5 -5
  561. package/dist/tools/builtins/sandbox/bash.js +33 -30
  562. package/dist/tools/builtins/sandbox/common.d.ts +5 -4
  563. package/dist/tools/builtins/sandbox/common.js +2 -2
  564. package/dist/tools/builtins/sandbox/deliver.d.ts +1 -1
  565. package/dist/tools/builtins/sandbox/deliver.js +13 -13
  566. package/dist/tools/builtins/sandbox/edit.d.ts +1 -1
  567. package/dist/tools/builtins/sandbox/edit.js +42 -31
  568. package/dist/tools/builtins/sandbox/file-state.d.ts +34 -0
  569. package/dist/tools/builtins/sandbox/file-state.js +34 -0
  570. package/dist/tools/builtins/sandbox/glob-match.d.ts +1 -1
  571. package/dist/tools/builtins/sandbox/glob-match.js +1 -1
  572. package/dist/tools/builtins/sandbox/glob.d.ts +1 -1
  573. package/dist/tools/builtins/sandbox/glob.js +6 -6
  574. package/dist/tools/builtins/sandbox/grep.d.ts +7 -4
  575. package/dist/tools/builtins/sandbox/grep.js +149 -32
  576. package/dist/tools/builtins/sandbox/index.d.ts +1 -1
  577. package/dist/tools/builtins/sandbox/index.js +1 -1
  578. package/dist/tools/builtins/sandbox/read.d.ts +2 -2
  579. package/dist/tools/builtins/sandbox/read.js +22 -15
  580. package/dist/tools/builtins/sandbox/write.d.ts +1 -1
  581. package/dist/tools/builtins/sandbox/write.js +38 -34
  582. package/dist/tools/builtins/skill-load.d.ts +6 -6
  583. package/dist/tools/builtins/skill-load.js +33 -17
  584. package/dist/tools/builtins/skill-write.d.ts +4 -4
  585. package/dist/tools/builtins/skill-write.js +10 -10
  586. package/dist/tools/builtins/tool-search.d.ts +13 -9
  587. package/dist/tools/builtins/tool-search.js +25 -14
  588. package/dist/tools/canonical-json.d.ts +6 -0
  589. package/dist/tools/canonical-json.js +16 -0
  590. package/dist/tools/connector-content.controller.d.ts +1 -1
  591. package/dist/tools/connector-content.controller.js +11 -6
  592. package/dist/tools/connector-content.d.ts +12 -15
  593. package/dist/tools/connector-content.js +53 -18
  594. package/dist/tools/connectors.controller.d.ts +1 -1
  595. package/dist/tools/connectors.controller.js +21 -10
  596. package/dist/tools/connectors.service.d.ts +31 -13
  597. package/dist/tools/connectors.service.js +438 -348
  598. package/dist/tools/credentials.d.ts +17 -20
  599. package/dist/tools/credentials.js +55 -34
  600. package/dist/tools/display-names.d.ts +9 -0
  601. package/dist/tools/display-names.js +24 -0
  602. package/dist/tools/drift.d.ts +29 -41
  603. package/dist/tools/drift.js +116 -84
  604. package/dist/tools/elicitation.js +1 -1
  605. package/dist/tools/info.d.ts +32 -13
  606. package/dist/tools/info.js +88 -39
  607. package/dist/tools/job-ids.d.ts +13 -0
  608. package/dist/tools/job-ids.js +15 -0
  609. package/dist/tools/jobs.d.ts +24 -0
  610. package/dist/tools/jobs.js +69 -0
  611. package/dist/tools/legacy-data.d.ts +34 -0
  612. package/dist/tools/legacy-data.js +76 -0
  613. package/dist/tools/legacy-keys.d.ts +51 -0
  614. package/dist/tools/legacy-keys.js +115 -0
  615. package/dist/tools/naming.d.ts +1 -5
  616. package/dist/tools/naming.js +1 -7
  617. package/dist/tools/oauth/flow-paths.d.ts +16 -0
  618. package/dist/tools/oauth/flow-paths.js +38 -0
  619. package/dist/tools/oauth/flow.d.ts +30 -30
  620. package/dist/tools/oauth/flow.js +109 -81
  621. package/dist/tools/oauth/oauth.controller.d.ts +3 -3
  622. package/dist/tools/oauth/oauth.controller.js +12 -9
  623. package/dist/tools/oauth/tokens.d.ts +11 -3
  624. package/dist/tools/oauth/tokens.js +15 -14
  625. package/dist/tools/outputs.d.ts +13 -4
  626. package/dist/tools/outputs.js +48 -4
  627. package/dist/tools/pipeline.d.ts +72 -50
  628. package/dist/tools/pipeline.js +239 -100
  629. package/dist/tools/policy.d.ts +3 -16
  630. package/dist/tools/policy.js +13 -19
  631. package/dist/tools/questions.controller.d.ts +2 -2
  632. package/dist/tools/questions.controller.js +9 -6
  633. package/dist/tools/questions.service.d.ts +26 -25
  634. package/dist/tools/questions.service.js +201 -142
  635. package/dist/tools/registry.d.ts +43 -38
  636. package/dist/tools/registry.js +100 -72
  637. package/dist/tools/resources.d.ts +1 -1
  638. package/dist/tools/resources.js +1 -1
  639. package/dist/tools/specs.d.ts +5 -4
  640. package/dist/tools/specs.js +3 -1
  641. package/dist/tools/tools.module.d.ts +10 -0
  642. package/dist/tools/tools.module.js +91 -0
  643. package/dist/ui/call-extension.d.ts +16 -0
  644. package/dist/ui/call-extension.js +38 -0
  645. package/dist/ui/embed-token.d.ts +9 -5
  646. package/dist/ui/embed-token.js +34 -6
  647. package/dist/ui/ui-stream.d.ts +22 -17
  648. package/dist/ui/ui-stream.js +72 -12
  649. package/dist/ui/ui.module.d.ts +7 -0
  650. package/dist/ui/ui.module.js +28 -0
  651. package/dist/ui/views.controller.d.ts +14 -12
  652. package/dist/ui/views.controller.js +32 -25
  653. package/dist/ui/views.d.ts +9 -57
  654. package/dist/ui/views.js +43 -45
  655. package/package.json +10 -3
  656. package/src/migrations/0063_tool_keys_claude_code.sql +220 -0
  657. package/dist/http/health.controller.d.ts +0 -26
  658. package/dist/http/health.controller.js +0 -79
  659. package/dist/http/tokens.d.ts +0 -131
  660. package/dist/http/tokens.js +0 -131
  661. package/dist/http/zod.pipe.d.ts +0 -8
  662. package/dist/http/zod.pipe.js +0 -14
  663. package/dist/identity/rate-limit.d.ts +0 -55
  664. package/dist/identity/rate-limit.js +0 -121
  665. package/dist/sandbox/lifecycle.d.ts +0 -21
  666. package/dist/sandbox/lifecycle.js +0 -68
  667. package/dist/tools/builtins/sandbox/names.d.ts +0 -7
  668. package/dist/tools/builtins/sandbox/names.js +0 -20
  669. /package/dist/http/{gateway.module.d.ts → gateway-routes.d.ts} +0 -0
  670. /package/dist/http/{gateway.module.js → gateway-routes.js} +0 -0
@@ -2,10 +2,11 @@ import type { FastifyReply } from "fastify";
2
2
  import { z } from "zod";
3
3
  import { type Principal } from "../identity/principal.js";
4
4
  import { type OrgContext } from "../orgs/org.guard.js";
5
- import type { CatalogIcon, OrgCatalogDetail, OrgCatalogItem, OrgCatalogService, OrgInstallResult, OrgUpgradeResult } from "./org-catalog.service.js";
6
- import type { PluginInstaller, PluginInstallView, UninstallReport } from "./plugin-install.js";
5
+ import type { CatalogIcon, OrgCatalogDetail, OrgCatalogItem, OrgInstallResult, OrgUpgradeResult } from "./catalog-content.js";
6
+ import { OrgCatalogService } from "./org-catalog.service.js";
7
+ import { PluginInstaller, type PluginInstallView, type UninstallReport } from "./plugin-install.js";
7
8
  import type { UpgradePreview } from "./plugin-upgrade.js";
8
- import type { CatalogRequestsService, CatalogRequestView } from "./requests.service.js";
9
+ import { CatalogRequestsService, type CatalogRequestView } from "./requests.service.js";
9
10
  declare const RequestBody: z.ZodObject<{
10
11
  note: z.ZodOptional<z.ZodString>;
11
12
  version: z.ZodOptional<z.ZodString>;
@@ -7,14 +7,17 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
7
7
  var __param = (this && this.__param) || function (paramIndex, decorator) {
8
8
  return function (target, key) { decorator(target, key, paramIndex); }
9
9
  };
10
- import { Body, Controller, Delete, Get, HttpCode, Inject, Param, Post, Query, Res, } from "@nestjs/common";
10
+ import { Controller, Delete, Get, HttpCode, Inject, Param, Post, Res } from "@nestjs/common";
11
11
  import { z } from "zod";
12
- import { CATALOG_REQUESTS, ORG_CATALOG, PLUGIN_INSTALLER } from "../http/tokens.js";
13
- import { ZodPipe } from "../http/zod.pipe.js";
14
12
  import { CurrentPrincipal, EnterpriseAdmin, patTokenId, requireUser, } from "../identity/principal.js";
13
+ import { createZodDto } from "../infra/validation/create-zod-dto.js";
14
+ import { ZBody, ZQuery } from "../infra/validation/zod-params.js";
15
15
  import { CurrentOrg, OrgAction } from "../orgs/org.guard.js";
16
16
  import { roleAtLeast } from "../orgs/roles.js";
17
17
  import { CredentialValue } from "../tools/connectors.controller.js";
18
+ import { OrgCatalogService } from "./org-catalog.service.js";
19
+ import { PluginInstaller } from "./plugin-install.js";
20
+ import { CatalogRequestsService } from "./requests.service.js";
18
21
  const RequestBody = z
19
22
  .object({
20
23
  note: z.string().max(1000).optional(),
@@ -71,6 +74,18 @@ const DecideBody = z.object({ decision: z.enum(["approve", "reject"]) }).strict(
71
74
  const AdminListQuery = z.object({
72
75
  status: z.enum(["pending", "approved", "rejected", "cancelled"]).optional(),
73
76
  });
77
+ class CatalogRequestsQuery extends createZodDto(AdminListQuery, "CatalogRequestsQuery") {
78
+ }
79
+ class CatalogDecideBody extends createZodDto(DecideBody, "CatalogDecideBody") {
80
+ }
81
+ class OrgPluginInstallBody extends createZodDto(InstallBody, "OrgPluginInstallBody") {
82
+ }
83
+ class CatalogRequestBody extends createZodDto(RequestBody, "CatalogRequestBody") {
84
+ }
85
+ class OrgPluginUpgradeBody extends createZodDto(UpgradeBody, "OrgPluginUpgradeBody") {
86
+ }
87
+ class OrgPluginUpgradePreviewBody extends createZodDto(UpgradePreviewBody, "OrgPluginUpgradePreviewBody") {
88
+ }
74
89
  /**
75
90
  * The enterprise catalog from an organization's view (`/api/v1/orgs/:orgId/...`, human users only):
76
91
  * - `GET catalog` (`catalog.read`, member and up; members do not see disabled items);
@@ -182,7 +197,7 @@ __decorate([
182
197
  __param(0, CurrentPrincipal()),
183
198
  __param(1, CurrentOrg()),
184
199
  __param(2, Param("itemId")),
185
- __param(3, Body(new ZodPipe(RequestBody)))
200
+ __param(3, ZBody(CatalogRequestBody))
186
201
  ], OrgCatalogController.prototype, "request", null);
187
202
  __decorate([
188
203
  Post("catalog/:itemId/install"),
@@ -190,7 +205,7 @@ __decorate([
190
205
  __param(0, CurrentPrincipal()),
191
206
  __param(1, CurrentOrg()),
192
207
  __param(2, Param("itemId")),
193
- __param(3, Body(new ZodPipe(InstallBody))),
208
+ __param(3, ZBody(OrgPluginInstallBody)),
194
209
  __param(4, Res({ passthrough: true }))
195
210
  ], OrgCatalogController.prototype, "install", null);
196
211
  __decorate([
@@ -212,7 +227,7 @@ __decorate([
212
227
  __param(0, CurrentPrincipal()),
213
228
  __param(1, CurrentOrg()),
214
229
  __param(2, Param("installId")),
215
- __param(3, Body(new ZodPipe(UpgradePreviewBody)))
230
+ __param(3, ZBody(OrgPluginUpgradePreviewBody))
216
231
  ], OrgCatalogController.prototype, "upgradePreview", null);
217
232
  __decorate([
218
233
  Post("plugin-installs/:installId/upgrade"),
@@ -220,7 +235,7 @@ __decorate([
220
235
  __param(0, CurrentPrincipal()),
221
236
  __param(1, CurrentOrg()),
222
237
  __param(2, Param("installId")),
223
- __param(3, Body(new ZodPipe(UpgradeBody))),
238
+ __param(3, ZBody(OrgPluginUpgradeBody)),
224
239
  __param(4, Res({ passthrough: true }))
225
240
  ], OrgCatalogController.prototype, "upgrade", null);
226
241
  __decorate([
@@ -230,13 +245,13 @@ __decorate([
230
245
  __param(0, CurrentPrincipal()),
231
246
  __param(1, CurrentOrg()),
232
247
  __param(2, Param("id")),
233
- __param(3, Body(new ZodPipe(DecideBody)))
248
+ __param(3, ZBody(CatalogDecideBody))
234
249
  ], OrgCatalogController.prototype, "decide", null);
235
250
  OrgCatalogController = __decorate([
236
251
  Controller("api/v1/orgs/:orgId"),
237
- __param(0, Inject(ORG_CATALOG)),
238
- __param(1, Inject(CATALOG_REQUESTS)),
239
- __param(2, Inject(PLUGIN_INSTALLER))
252
+ __param(0, Inject(OrgCatalogService)),
253
+ __param(1, Inject(CatalogRequestsService)),
254
+ __param(2, Inject(PluginInstaller))
240
255
  ], OrgCatalogController);
241
256
  export { OrgCatalogController };
242
257
  /** Enterprise admins decide deployment-level catalog requests (`/api/v1/admin/catalog/requests`). */
@@ -260,18 +275,18 @@ let AdminCatalogRequestsController = class AdminCatalogRequestsController {
260
275
  };
261
276
  __decorate([
262
277
  Get(),
263
- __param(0, Query(new ZodPipe(AdminListQuery)))
278
+ __param(0, ZQuery(CatalogRequestsQuery))
264
279
  ], AdminCatalogRequestsController.prototype, "list", null);
265
280
  __decorate([
266
281
  Post(":id/decide"),
267
282
  HttpCode(200),
268
283
  __param(0, CurrentPrincipal()),
269
284
  __param(1, Param("id")),
270
- __param(2, Body(new ZodPipe(DecideBody)))
285
+ __param(2, ZBody(CatalogDecideBody))
271
286
  ], AdminCatalogRequestsController.prototype, "decide", null);
272
287
  AdminCatalogRequestsController = __decorate([
273
288
  Controller("api/v1/admin/catalog/requests"),
274
289
  EnterpriseAdmin(),
275
- __param(0, Inject(CATALOG_REQUESTS))
290
+ __param(0, Inject(CatalogRequestsService))
276
291
  ], AdminCatalogRequestsController);
277
292
  export { AdminCatalogRequestsController };
@@ -1,199 +1,13 @@
1
- import { type AgentTemplate, type Connector, type ConnectorTemplateFile, type ConnectorTemplateSpec, type LocalizedName, type Logger, type PluginManifest } from "@capybara-hq/plugin-sdk";
2
- import type { Transaction } from "kysely";
3
- import type { KernelDatabase, KernelDb } from "../db/kernel-schema.js";
4
- import type { ExtensionHost } from "../extensions/host.js";
5
- import { type OrgAction } from "../orgs/roles.js";
6
- import { checkSkillFiles, type SkillPackageFile } from "../skills/package.js";
7
- import type { StorageService } from "../storage/storage.service.js";
8
- import type { ConnectorTemplateRef, CreateConnectorInput } from "../tools/connectors.service.js";
9
- import { type CatalogItemView } from "./catalog.service.js";
10
- import type { ConnectorInstallInput, PluginInstaller, PluginInstallInput, PluginInstallView } from "./plugin-install.js";
11
- import type { PluginUpgradeInput, PluginUpgrader, UpgradePreview } from "./plugin-upgrade.js";
12
- import type { CatalogRequestsService, CatalogRequestView } from "./requests.service.js";
13
- type Trx = Transaction<KernelDatabase>;
14
- /** A catalog item from an organization's view (`GET /orgs/:orgId/catalog`). */
15
- export interface OrgCatalogItem extends Omit<CatalogItemView, "installs" | "marketplaceId" | "latestMarketplaceVersion" | "newerInMarketplace"> {
16
- /**
17
- * `yes` installable now; `needs_approval` needs enterprise admin approval (install returns 202 and
18
- * creates a request); `granted` approved for this org; `disabled` disabled by the enterprise admin
19
- * (members don't see it); `not_deployed` the plugin's extension is not on the deployment.
20
- */
21
- installable: "yes" | "needs_approval" | "granted" | "disabled" | "not_deployed";
22
- /**
23
- * This org's live plugin install of the item (installing, installed or upgrading);
24
- * `upgradeAvailable` is the version it can be upgraded to now (spec §10), null when none.
25
- */
26
- installed: {
27
- pluginInstallId: string;
28
- version: string;
29
- upgradeAvailable: string | null;
30
- } | null;
31
- /** This org's latest request for the item. */
32
- request: {
33
- id: string;
34
- stage: "org" | "deployment";
35
- status: string;
36
- } | null;
37
- }
38
- /**
39
- * One connector template in an item's detail (for the install wizard): the endpoint preset, the
40
- * paths an org may edit and the auth preset (no credentials). `id` is the template file's base name,
41
- * sent as `connectors[id]` in the install body.
42
- */
43
- export interface OrgCatalogTemplate {
44
- id: string;
45
- displayName: LocalizedName | null;
46
- description: string;
47
- plugin: string;
48
- connector: string;
49
- endpoint: Record<string, unknown>;
50
- editableEndpoint: string[];
51
- auth: Record<string, unknown>;
52
- ownership: "org" | "personal" | null;
53
- }
54
- /** `GET /orgs/:orgId/catalog/:itemId`: the item and what the install wizard needs (latest version). */
55
- export interface OrgCatalogDetail {
56
- item: OrgCatalogItem;
57
- /** The latest version has an icon (`GET .../icon`). */
58
- hasIcon: boolean;
59
- /** The plugin's extension (its name), null without one. */
60
- extension: string | null;
61
- templates: OrgCatalogTemplate[];
62
- /** The plugin's dependencies (name and range). */
63
- dependencies: {
64
- name: string;
65
- range: string;
66
- }[];
67
- /** The skill directories. */
68
- skills: string[];
69
- /** The agent template files (`agents/<name>.md`, sub-agents spec §16). */
70
- agents: string[];
71
- }
72
- /**
73
- * A connector template as an org sees it (the install wizard and the upgrade preview's inputs):
74
- * presets and editable paths, no credentials.
75
- */
76
- export declare function orgTemplateView(id: string, file: ConnectorTemplateFile): OrgCatalogTemplate;
77
- /** An item's icon (the latest version's plugin icon). */
78
- export interface CatalogIcon {
79
- data: Uint8Array;
80
- contentType: "image/svg+xml" | "image/png";
81
- policy: "allow" | "needs_approval" | "disabled";
82
- }
83
- /** The parts of a catalog version row an org install reads. */
84
- export interface CatalogVersionFiles {
85
- manifest: unknown;
86
- object_prefix: string | null;
87
- files: {
88
- path: string;
89
- size: number;
90
- sha256: string;
91
- }[];
92
- }
93
- /** Whether the item's latest version has an icon; unreadable counts as none. */
94
- export declare function catalogHasIcon(db: KernelDb, itemId: string): Promise<boolean>;
95
- /**
96
- * Reads the icon of the item's latest version (served only through kernel routes, with nosniff and
97
- * a CSP sandbox in the response headers; the web only shows it with `<img>`). Item missing, deleted
98
- * or (when `includeDisabled` is false) disabled -> `catalog.item_not_found` (decided before reading
99
- * storage); no icon -> `catalog.icon_not_found`; stored content that is not a valid svg / png
100
- * (checked at import, this guards against tampered storage) -> `internal`.
101
- */
102
- export declare function readCatalogIcon(db: KernelDb, storage: StorageService, itemId: string, includeDisabled: boolean): Promise<CatalogIcon>;
103
- export type { ConnectorInstallInput };
104
- /** The input of `POST /orgs/:orgId/catalog/:itemId/install` (default version: the latest). */
105
- export interface OrgInstallInput extends PluginInstallInput {
106
- version?: string;
107
- }
108
- /** Install result: 201 installed; 202 needs enterprise admin approval, a request was created (or escalated). */
109
- export type OrgInstallResult = {
110
- status: 201;
111
- installed: {
112
- itemId: string;
113
- version: string;
114
- pluginInstallId: string;
115
- };
116
- /** The install view (its components, dependency installs included). */
117
- install: PluginInstallView;
118
- } | {
119
- status: 202;
120
- request: CatalogRequestView;
121
- };
122
- export interface OrgCatalogDeps {
123
- db: KernelDb;
124
- storage: StorageService;
125
- host: Pick<ExtensionHost, "manifests">;
126
- /** The connector `kind` provided by extension `plugin` loaded on this replica. */
127
- findConnector: TemplateDeps["findConnector"];
128
- requests: CatalogRequestsService;
129
- pluginInstaller: Pick<PluginInstaller, "install" | "preflight">;
130
- pluginUpgrader: Pick<PluginUpgrader, "preview" | "check" | "upgrade">;
131
- log?: Pick<Logger, "warn">;
132
- }
133
- /** Upgrade result: 200 upgraded (the install view); 202 needs enterprise admin approval, a request was created. */
134
- export type OrgUpgradeResult = {
135
- status: 200;
136
- install: PluginInstallView;
137
- } | {
138
- status: 202;
139
- request: CatalogRequestView;
140
- };
141
- /**
142
- * The org actions installing / uninstalling a plugin needs: the union over its components (an
143
- * extension -> `org.extensions.manage`, skills -> `skills.manage`, connector templates ->
144
- * `connectors.manage`, agent templates -> `agents.manage`), re-checked inside the org row lock.
145
- */
146
- export declare function requiredActions(m: PluginManifest): OrgAction[];
147
- /** Locks the org row in the caller's transaction and re-checks the actor can do every action (else `forbidden`). */
148
- export declare function lockOrgForActions(t: Trx, orgId: string, actor: string, actions: OrgAction[]): Promise<void>;
149
- /** The value at a dot path of `v` (own keys only), undefined when absent. */
150
- export declare function getPath(v: unknown, path: string): unknown;
151
- /** Sets the value at a dot path of `obj`, creating the objects on the way. */
152
- export declare function setPath(obj: Record<string, unknown>, path: string, value: unknown): void;
153
- /** What checking a template's connector extension needs. */
154
- export interface TemplateDeps {
155
- /** The connector `kind` provided by extension `plugin` loaded on this replica. */
156
- findConnector: (plugin: string, kind: string) => Connector | undefined;
157
- /** The version of an extension loaded on this replica (undefined when not loaded). */
158
- pluginVersion: (plugin: string) => string | undefined;
159
- }
160
- /**
161
- * 模板的连接器插件此刻是否可用:插件加载且提供该 kind,并满足 `pluginVersion`(若写了);不可用返回原因
162
- * (模型不可见,给管理员看的英文)。
163
- */
164
- export declare function templatePluginProblem(d: TemplateDeps, template: ConnectorTemplateSpec): string | undefined;
165
- /**
166
- * Builds the connector install input from a connector template plus what the org filled in (C30):
167
- * the endpoint comes from the template, only paths listed in `editableEndpoint` (or fields under
168
- * them) may be changed by the org, changing another path -> `validation_failed`; the auth method
169
- * comes from the template, the org only gives credentials (static credentials via `credential`,
170
- * OAuth via `client`). Re-checks the template's plugin, kind and `pluginVersion` against the
171
- * connectors loaded on this replica right now (unmet -> `catalog.not_deployed`); the endpoint
172
- * (merged as a whole) schema check, credential pattern check and OAuth URL policy are re-checked by
173
- * `ConnectorsService.create`.
174
- */
175
- export declare function templateConnectorInput(deps: TemplateDeps, template: ConnectorTemplateSpec, ref: ConnectorTemplateRef, input: ConnectorInstallInput | undefined, defaultName: string, at?: string): CreateConnectorInput;
176
- /** 从部署存储读目录版本里的文件(按版本行的 sha256 校验);`under` 给出时只读该目录下的文件,路径去掉该前缀。 */
177
- export declare function readCatalogFiles(storage: StorageService, objectPrefix: string | null, files: {
178
- path: string;
179
- size: number;
180
- sha256: string;
181
- }[], under?: string): Promise<SkillPackageFile[]>;
182
- /** 校验技能文件并取名字与描述(导入时已校验过;这里防存储被改)。 */
183
- export declare function skillOf(files: SkillPackageFile[]): ReturnType<typeof checkSkillFiles>;
184
- /** The connector templates of a catalog version, read from storage (id = the file's base name). */
185
- export declare function readCatalogTemplates(storage: StorageService, v: CatalogVersionFiles): Promise<{
186
- id: string;
187
- file: ConnectorTemplateFile;
188
- }[]>;
189
- /**
190
- * The agent templates of a catalog version (`manifest.agents`, listed explicitly since import),
191
- * parsed from storage (checked at import; parsed again in case storage was changed).
192
- */
193
- export declare function readCatalogAgentTemplates(storage: StorageService, v: CatalogVersionFiles): Promise<{
194
- path: string;
195
- template: AgentTemplate;
196
- }[]>;
1
+ import { ExtensionRegistry } from "../extensions/registry.js";
2
+ import { KernelDb } from "../infra/database/kernel-db.js";
3
+ import { TransactionHost } from "../infra/database/transaction-host.js";
4
+ import type { KernelLogger } from "../log.js";
5
+ import { OrgLock } from "../orgs/org-lock.js";
6
+ import { StorageService } from "../storage/storage.service.js";
7
+ import { type CatalogIcon, type OrgCatalogDetail, type OrgCatalogItem, type OrgInstallInput, type OrgInstallResult, type OrgUpgradeResult } from "./catalog-content.js";
8
+ import { PluginInstaller } from "./plugin-install.js";
9
+ import { type PluginUpgradeInput, PluginUpgrader, type UpgradePreview } from "./plugin-upgrade.js";
10
+ import { CatalogRequestsService } from "./requests.service.js";
197
11
  /**
198
12
  * Organizations browse and install from the enterprise catalog (C22): members browse (without
199
13
  * disabled items) and request, org admins install. Every item is a plugin, installed with its
@@ -205,8 +19,21 @@ export declare function readCatalogAgentTemplates(storage: StorageService, v: Ca
205
19
  * dependencies are not approved separately, spec §10). No in-process state.
206
20
  */
207
21
  export declare class OrgCatalogService {
208
- private readonly d;
209
- constructor(d: OrgCatalogDeps);
22
+ private readonly kdb;
23
+ /** The org row lock (orgs/org-lock.ts): joins the caller's transaction. */
24
+ private readonly orgLock;
25
+ private readonly storage;
26
+ private readonly registry;
27
+ private readonly requests;
28
+ private readonly pluginInstaller;
29
+ private readonly pluginUpgrader;
30
+ private readonly log;
31
+ readonly txHost: TransactionHost;
32
+ constructor(kdb: KernelDb,
33
+ /** The org row lock (orgs/org-lock.ts): joins the caller's transaction. */
34
+ orgLock: OrgLock, storage: StorageService, registry: ExtensionRegistry, requests: CatalogRequestsService, pluginInstaller: PluginInstaller, pluginUpgrader: PluginUpgrader, log: KernelLogger, txHost: TransactionHost);
35
+ /** The kernel-schema handle of the current context (the transaction, else the pool). */
36
+ private get db();
210
37
  /** The org's view of the items; members (not admins) don't see disabled items. */
211
38
  list(orgId: string, accountId: string, itemId?: string): Promise<OrgCatalogItem[]>;
212
39
  /**
@@ -232,6 +59,11 @@ export declare class OrgCatalogService {
232
59
  private undeployed;
233
60
  /** Installs a plugin in the org (see the class comment). */
234
61
  install(orgId: string, actor: string, itemId: string, body: OrgInstallInput, actorTokenId?: string): Promise<OrgInstallResult>;
62
+ /**
63
+ * Role and policy under the org row lock; needs_approval without a grant -> a stage deployment
64
+ * request (its id). Approval follows this plugin's policy only, not its dependencies' (spec §10).
65
+ */
66
+ private requestIfNeeded;
235
67
  /** The upgrade preview of an org install (spec §10, see `PluginUpgrader`). */
236
68
  upgradePreview(orgId: string, actor: string, installId: string, version: string): Promise<UpgradePreview>;
237
69
  /**
@@ -241,6 +73,8 @@ export declare class OrgCatalogService {
241
73
  * org admin runs the upgrade again); otherwise the upgrade runs (200, the install view).
242
74
  */
243
75
  upgrade(orgId: string, actor: string, installId: string, body: PluginUpgradeInput, actorTokenId?: string): Promise<OrgUpgradeResult>;
76
+ /** Like {@link requestIfNeeded}, for an upgrade's target version. */
77
+ private upgradeRequestIfNeeded;
244
78
  /** The actor can install something in the org (forbidden otherwise), checked before item errors. */
245
79
  private assertCanInstall;
246
80
  }