@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
package/dist/http/app.js CHANGED
@@ -1,52 +1,40 @@
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
1
  import "reflect-metadata";
8
- import { randomUUID } from "node:crypto";
9
2
  import fastifyCookie from "@fastify/cookie";
10
- import { Module } from "@nestjs/common";
11
- import { APP_FILTER, NestFactory } from "@nestjs/core";
12
- import { FastifyAdapter } from "@nestjs/platform-fastify";
13
3
  import { ApiError, errorBody } from "../errors.js";
14
- import { authorizeEnterpriseAdmin } from "../identity/auth.guard.js";
4
+ import { AccountsService } from "../identity/accounts.js";
5
+ import { ApiTokenService } from "../identity/api-tokens.js";
6
+ import { authenticateOrgUploader, authorizeSuperAdmin, } from "../identity/auth.guard.js";
7
+ import { SessionService } from "../identity/sessions.js";
8
+ import { KernelDb } from "../infra/database/kernel-db.js";
15
9
  import { withLogContext } from "../log-context.js";
16
- import { ErrorFilter, redactPath } from "./error.filter.js";
17
- import { registerGatewayRoutes } from "./gateway.module.js";
18
- import { HealthController } from "./health.controller.js";
19
- import { NestLogAdapter } from "./nest-logger.js";
10
+ import { authorizeOrgAction } from "../orgs/org.guard.js";
11
+ import { redactPath } from "./error.filter.js";
12
+ import { registerGatewayRoutes } from "./gateway-routes.js";
20
13
  import { createPluginRouter, registerPluginDispatch, staticRouteTable, } from "./plugin-dispatch.js";
21
- import { ACCOUNTS, API_TOKENS, HEALTH_OPTIONS, KERNEL_LOG, SESSIONS } from "./tokens.js";
22
14
  /** The extension package upload route (Fastify route template). */
23
15
  export const EXTENSION_PACKAGE_UPLOAD_ROUTE = "/api/v1/admin/extensions/packages/file";
24
16
  /** The plugin package upload route of the catalog import (Fastify route template). */
25
17
  export const CATALOG_UPLOAD_ROUTE = "/api/v1/admin/catalog/import/file";
18
+ /** The platform skill version upload route (a skill package zip as the raw body). */
19
+ export const COMPONENT_SKILL_UPLOAD_ROUTE = "/api/v1/admin/components/skill/:id/versions";
26
20
  /**
27
21
  * The upload routes that take raw bytes (`application/octet-stream`, limit `packages.maxBytes`,
28
- * the enterprise admin is authenticated before the body is read).
22
+ * the super admin is authenticated before the body is read).
29
23
  */
30
24
  export const PACKAGE_UPLOAD_ROUTES = new Set([
31
25
  EXTENSION_PACKAGE_UPLOAD_ROUTE,
32
26
  CATALOG_UPLOAD_ROUTE,
27
+ COMPONENT_SKILL_UPLOAD_ROUTE,
33
28
  ]);
29
+ /** An org admin's plugin package upload (spec §14, ruling P3-7; a tgz as the raw body). */
30
+ export const ORG_PLUGIN_UPLOAD_ROUTE = "/api/v1/orgs/:orgId/catalog/uploads/file";
34
31
  /**
35
- * 把 `http.trustProxy` 配置转成 Fastify 的 trustProxy。布尔与 IP / CIDR 列表原样传入;
36
- * 跳数转成 `(addr, hop) => hop < n`:Fastify 5.12 起对 number 一律 fail closed(不信任任何一跳),
37
- * 所以由这里实现跳数语义——前提是服务只能经由这 n 层代理访问(配置说明里已写明,并推荐 CIDR 列表)。
32
+ * The org routes that take raw package bytes (limit `packages.maxBytes`): before the body is read
33
+ * the caller is authenticated as a person with the org role of `catalog.upload` (ruling P3-29).
38
34
  */
39
- function fastifyTrustProxy(tp) {
40
- return typeof tp === "number" ? (_addr, hop) => hop < tp : tp;
41
- }
42
- const REQUEST_ID = /^[A-Za-z0-9._-]{1,128}$/;
35
+ export const ORG_PACKAGE_UPLOAD_ROUTES = new Set([ORG_PLUGIN_UPLOAD_ROUTE]);
43
36
  /** Paths without an access log line (probes). */
44
37
  const QUIET_PATHS = new Set(["/healthz", "/readyz"]);
45
- /** The request id: a valid incoming `x-request-id`, else a random one. */
46
- function requestId(req) {
47
- const h = req.headers["x-request-id"];
48
- return typeof h === "string" && REQUEST_ID.test(h) ? h : randomUUID();
49
- }
50
38
  /**
51
39
  * Request ids and the access log. Every request runs in a log context with its `reqId` (records
52
40
  * logged while handling it carry it) and answers with `x-request-id` (set on the raw response, so
@@ -87,36 +75,16 @@ const LARGE_BODY_ROUTES = new Set([
87
75
  "/api/v1/orgs/:orgId/connectors/preview",
88
76
  ]);
89
77
  const LARGE_BODY_LIMIT = 6 * 1024 * 1024;
90
- /** 根模块:总是含健康检查;`serveApi` 时 import `apiModule`;全局错误过滤器。 */
91
- function rootModule(opts) {
92
- let RootModule = class RootModule {
93
- };
94
- RootModule = __decorate([
95
- Module({})
96
- ], RootModule);
97
- return {
98
- module: RootModule,
99
- imports: opts.serveApi && opts.apiModule ? [opts.apiModule] : [],
100
- controllers: [HealthController],
101
- providers: [
102
- { provide: KERNEL_LOG, useValue: opts.log },
103
- { provide: HEALTH_OPTIONS, useValue: opts.health },
104
- { provide: APP_FILTER, useClass: ErrorFilter },
105
- ],
106
- };
107
- }
108
78
  /**
109
- * 创建并初始化内核 HTTP 应用(NestJS + Fastify),不连接任何外部资源。
110
- * 插件路由不经过 Nest:在 Fastify 的独立作用域里统一转发 `/plugins/*`(见 plugin-dispatch.ts);
111
- * 插件加载前 `/plugins/*` 一律 404。未匹配的内核路由同样返回 404 错误信封。
79
+ * Sets up the Fastify side of the kernel's Nest application (built by `buildKernelApp` from
80
+ * `KernelModule`, which provides the health endpoints and the API) without connecting to anything,
81
+ * and returns it uninitialized: `init()` is the caller's (it runs the start sequence), `close()`
82
+ * closes only the HTTP server (the rest of the application is closed by the caller's shutdown).
83
+ * Extension routes do not go through Nest: `/plugins/*` is dispatched in its own Fastify scope
84
+ * (see plugin-dispatch.ts) and answers 404 until extensions are loaded. Unmatched kernel routes
85
+ * answer the 404 error envelope as well.
112
86
  */
113
- export async function createHttpApp(opts) {
114
- const app = await NestFactory.create(rootModule(opts), new FastifyAdapter({
115
- trustProxy: fastifyTrustProxy(opts.trustProxy ?? false),
116
- // x-request-id is read by requestId() (validated), never trusted as is
117
- requestIdHeader: false,
118
- genReqId: requestId,
119
- }), { logger: new NestLogAdapter(opts.log), abortOnError: false });
87
+ export async function createHttpApp(opts, app) {
120
88
  // Cookie 解析(会话 Cookie);必须在 init 之前注册
121
89
  await app.register(fastifyCookie);
122
90
  const fastify = app.getHttpAdapter().getInstance();
@@ -136,18 +104,19 @@ export async function createHttpApp(opts) {
136
104
  if (LARGE_BODY_ROUTES.has(r.url) && [r.method].flat().includes("POST")) {
137
105
  r.bodyLimit = LARGE_BODY_LIMIT;
138
106
  }
139
- if (PACKAGE_UPLOAD_ROUTES.has(r.url) && opts.packageMaxBytes !== undefined) {
107
+ const upload = PACKAGE_UPLOAD_ROUTES.has(r.url) || ORG_PACKAGE_UPLOAD_ROUTES.has(r.url);
108
+ if (upload && opts.packageMaxBytes !== undefined) {
140
109
  r.bodyLimit = opts.packageMaxBytes + 1;
141
110
  }
142
111
  });
143
- // 读请求体之前:包上传(插件包、企业目录包)先认证(未认证 / 非企业管理员的大请求体不读进内存);其余内核路由不收
112
+ // 读请求体之前:包上传(插件包、平台目录包)先认证(未认证 / 非超级管理员的大请求体不读进内存);其余内核路由不收
144
113
  // application/octet-stream(415)。插件路由 /plugins/* 在自己的作用域里收任何类型,不受影响
145
114
  let authServices;
146
115
  const services = () => {
147
116
  authServices ??= {
148
- accounts: app.get(ACCOUNTS, { strict: false }),
149
- sessions: app.get(SESSIONS, { strict: false }),
150
- tokens: app.get(API_TOKENS, { strict: false }),
117
+ accounts: app.get(AccountsService, { strict: false }),
118
+ sessions: app.get(SessionService, { strict: false }),
119
+ tokens: app.get(ApiTokenService, { strict: false }),
151
120
  };
152
121
  return authServices;
153
122
  };
@@ -163,7 +132,20 @@ export async function createHttpApp(opts) {
163
132
  return;
164
133
  if (req.method === "POST" && PACKAGE_UPLOAD_ROUTES.has(req.routeOptions.url ?? "")) {
165
134
  try {
166
- await authorizeEnterpriseAdmin(req, services());
135
+ await authorizeSuperAdmin(req, services());
136
+ }
137
+ catch (e) {
138
+ return sendError(reply, e, req.method, req.url);
139
+ }
140
+ return;
141
+ }
142
+ if (req.method === "POST" && ORG_PACKAGE_UPLOAD_ROUTES.has(req.routeOptions.url ?? "")) {
143
+ try {
144
+ // the org admin role before the body (ruling P3-29): no one else makes the kernel buffer
145
+ // a package-sized body
146
+ const principal = await authenticateOrgUploader(req, services());
147
+ const orgId = req.params.orgId ?? "";
148
+ await authorizeOrgAction(app.get(KernelDb, { strict: false }).db, principal, orgId, "catalog.upload");
167
149
  }
168
150
  catch (e) {
169
151
  return sendError(reply, e, req.method, req.url);
@@ -189,7 +171,6 @@ export async function createHttpApp(opts) {
189
171
  : undefined;
190
172
  if (opts.gateway)
191
173
  await registerGatewayRoutes(fastify, opts.gateway, opts.log);
192
- await app.init();
193
174
  return {
194
175
  inject: (o) => fastify.inject(o),
195
176
  routes: () => [...routes],
@@ -212,7 +193,7 @@ export async function createHttpApp(opts) {
212
193
  close: () => {
213
194
  unwatch?.();
214
195
  dispatch?.abortAll();
215
- return app.close();
196
+ return fastify.close();
216
197
  },
217
198
  abortPluginRequests: () => dispatch?.abortAll(),
218
199
  closeAllConnections: () => fastify.server.closeAllConnections(),
@@ -0,0 +1,5 @@
1
+ /**
2
+ * The global error filter (`APP_FILTER`: the error envelope for every route).
3
+ */
4
+ export declare class ErrorFilterModule {
5
+ }
@@ -0,0 +1,18 @@
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
+ import { Module } from "@nestjs/common";
8
+ import { APP_FILTER } from "@nestjs/core";
9
+ import { ErrorFilter } from "./error.filter.js";
10
+ /**
11
+ * The global error filter (`APP_FILTER`: the error envelope for every route).
12
+ */
13
+ let ErrorFilterModule = class ErrorFilterModule {
14
+ };
15
+ ErrorFilterModule = __decorate([
16
+ Module({ providers: [{ provide: APP_FILTER, useClass: ErrorFilter }] })
17
+ ], ErrorFilterModule);
18
+ export { ErrorFilterModule };
@@ -9,7 +9,7 @@ var __param = (this && this.__param) || function (paramIndex, decorator) {
9
9
  };
10
10
  import { Catch, HttpException, Inject, } from "@nestjs/common";
11
11
  import { ApiError, errorBody } from "../errors.js";
12
- import { KERNEL_LOG } from "./tokens.js";
12
+ import { KERNEL_LOGGER } from "../infra/tokens.js";
13
13
  /**
14
14
  * Nest `HttpException`(框架自身抛出,如路由不存在、请求体解析失败)的状态码 → 通用错误码。
15
15
  * 显式列出而不是反查 `ERROR_CODES`:同一状态码下有多个业务码,反查会误取到业务码。
@@ -80,6 +80,6 @@ let ErrorFilter = class ErrorFilter {
80
80
  };
81
81
  ErrorFilter = __decorate([
82
82
  Catch(),
83
- __param(0, Inject(KERNEL_LOG))
83
+ __param(0, Inject(KERNEL_LOGGER))
84
84
  ], ErrorFilter);
85
85
  export { ErrorFilter };
@@ -1,15 +1,19 @@
1
1
  import type { Logger } from "@capybara-hq/plugin-sdk";
2
2
  import type { FastifyInstance } from "fastify";
3
3
  import type { ChannelWebhooks } from "../channels/webhook.js";
4
+ import { type DeviceRoutesOptions } from "../devices/device-routes.js";
4
5
  /** What the gateway role serves over HTTP besides health and plugin routes. */
5
6
  export interface GatewayRoutes {
6
7
  webhooks: Pick<ChannelWebhooks, "handle">;
7
8
  /** `channels.webhookMaxBodyBytes`. */
8
9
  webhookMaxBodyBytes: number;
10
+ /** The device connection route (`GET /device/connect`, environments spec §13.4). */
11
+ devices: DeviceRoutesOptions;
9
12
  }
10
13
  /**
11
- * Registers the gateway role's HTTP routes (`serveGateway = roles.includes("gateway")`): today the
12
- * channel webhook. These are raw Fastify routes, not a Nest module, so the API's global guard and
13
- * CSRF check do not apply (P-4); each route does its own (plugin-side) verification.
14
+ * Registers the gateway role's HTTP routes (`serveGateway = roles.includes("gateway")`): the
15
+ * channel webhook and the device connection WebSocket. These are raw Fastify routes, not a Nest
16
+ * module, so the API's global guard and CSRF check do not apply (P-4); each route does its own
17
+ * verification (the channel plugin's signature check, the machine credential).
14
18
  */
15
19
  export declare function registerGatewayRoutes(fastify: FastifyInstance, routes: GatewayRoutes, log: Pick<Logger, "error">): Promise<void>;
@@ -0,0 +1,16 @@
1
+ import { registerChannelWebhookRoute } from "../channels/webhook.controller.js";
2
+ import { registerDeviceConnectRoute } from "../devices/device-routes.js";
3
+ /**
4
+ * Registers the gateway role's HTTP routes (`serveGateway = roles.includes("gateway")`): the
5
+ * channel webhook and the device connection WebSocket. These are raw Fastify routes, not a Nest
6
+ * module, so the API's global guard and CSRF check do not apply (P-4); each route does its own
7
+ * verification (the channel plugin's signature check, the machine credential).
8
+ */
9
+ export async function registerGatewayRoutes(fastify, routes, log) {
10
+ await registerChannelWebhookRoute(fastify, {
11
+ webhooks: routes.webhooks,
12
+ maxBodyBytes: routes.webhookMaxBodyBytes,
13
+ log,
14
+ });
15
+ await registerDeviceConnectRoute(fastify, routes.devices);
16
+ }
@@ -1,12 +1,13 @@
1
1
  import type { Logger } from "@capybara-hq/plugin-sdk";
2
2
  import type { LoggerService } from "@nestjs/common";
3
- /** 可选带 debug 的 logger(内核 logger 有 debug;插件契约的 Logger 没有)。 */
3
+ /** A logger with an optional debug (the kernel logger has one; the SDK Logger does not). */
4
4
  type MaybeDebugLogger = Logger & {
5
5
  debug?: (msg: string, fields?: Record<string, unknown>) => void;
6
6
  };
7
7
  /**
8
- * 把 Nest 自身的日志转给内核 logger:`log`(启动时的模块加载、路由映射等,每次启动几十行)降为 debug,
9
- * `warn` / `error` 原级别转发,`debug` / `verbose` 丢弃。logger 没有 debug 时 `log` 也丢弃。
8
+ * Forwards Nest's own log lines to the kernel logger, as octok does: `log` (module loading,
9
+ * the `Mapped {/api/v1/…, GET} route` lines at startup) at info, `warn` / `error` as they are,
10
+ * `debug` / `verbose` at debug. Nest's context name becomes the record's `context`.
10
11
  */
11
12
  export declare class NestLogAdapter implements LoggerService {
12
13
  private readonly logger;
@@ -14,7 +15,7 @@ export declare class NestLogAdapter implements LoggerService {
14
15
  log(message: unknown, ...params: unknown[]): void;
15
16
  warn(message: unknown, ...params: unknown[]): void;
16
17
  error(message: unknown, ...params: unknown[]): void;
17
- debug(): void;
18
- verbose(): void;
18
+ debug(message: unknown, ...params: unknown[]): void;
19
+ verbose(message: unknown, ...params: unknown[]): void;
19
20
  }
20
21
  export {};
@@ -1,6 +1,7 @@
1
1
  /**
2
- * 把 Nest 自身的日志转给内核 logger:`log`(启动时的模块加载、路由映射等,每次启动几十行)降为 debug,
3
- * `warn` / `error` 原级别转发,`debug` / `verbose` 丢弃。logger 没有 debug 时 `log` 也丢弃。
2
+ * Forwards Nest's own log lines to the kernel logger, as octok does: `log` (module loading,
3
+ * the `Mapped {/api/v1/…, GET} route` lines at startup) at info, `warn` / `error` as they are,
4
+ * `debug` / `verbose` at debug. Nest's context name becomes the record's `context`.
4
5
  */
5
6
  export class NestLogAdapter {
6
7
  logger;
@@ -8,7 +9,7 @@ export class NestLogAdapter {
8
9
  this.logger = logger;
9
10
  }
10
11
  log(message, ...params) {
11
- this.logger.debug?.(String(message), fields(params));
12
+ this.logger.info(String(message), fields(params));
12
13
  }
13
14
  warn(message, ...params) {
14
15
  this.logger.warn(String(message), fields(params));
@@ -16,13 +17,26 @@ export class NestLogAdapter {
16
17
  error(message, ...params) {
17
18
  this.logger.error(String(message), fields(params));
18
19
  }
19
- debug() { }
20
- verbose() { }
20
+ debug(message, ...params) {
21
+ this.logger.debug?.(String(message), fields(params));
22
+ }
23
+ verbose(message, ...params) {
24
+ this.logger.debug?.(String(message), fields(params));
25
+ }
21
26
  }
22
- /** Nest 把上下文名(如 `RoutesResolver`)、错误堆栈作为额外参数传入。 */
27
+ /**
28
+ * Nest passes its context name (e.g. `RoutesResolver`) last and, for errors, the stack before it. The
29
+ * name becomes `context` (the pretty `[context=…]`), anything else `nest`.
30
+ */
23
31
  function fields(params) {
24
- const ctx = params.filter((p) => p !== undefined);
25
- if (ctx.length === 0)
26
- return undefined;
27
- return { nest: ctx.length === 1 ? ctx[0] : ctx };
32
+ const rest = params.filter((p) => p !== undefined);
33
+ const last = rest.at(-1);
34
+ const out = {};
35
+ if (typeof last === "string" && /^[A-Za-z][\w.-]*$/.test(last)) {
36
+ out.context = last;
37
+ rest.pop();
38
+ }
39
+ if (rest.length > 0)
40
+ out.nest = rest.length === 1 ? rest[0] : rest;
41
+ return Object.keys(out).length > 0 ? out : undefined;
28
42
  }
@@ -45,7 +45,10 @@ export declare function createPluginRouter(routes: Route[]): PluginRouter;
45
45
  * - `req.signal` aborts only when the client disconnects before the response is written (not on
46
46
  * normal completion); long-lived handlers use it to unsubscribe;
47
47
  * - a throwing handler is logged (path redacted with `redactPath`) and returns 500 `internal` (the
48
- * error message is not echoed).
48
+ * error message is not echoed), except a `model.hook_denied` `ApiError` that escaped from
49
+ * `ctx.models.embed` (an organization policy hook denied the call, spec B §5.4): a deliberate
50
+ * outcome, not a failure, so it answers 403 `model.hook_denied` with a generic message (the
51
+ * routes are unauthenticated: the policy extension's name and reason are not echoed).
49
52
  * - Fastify's own errors (a body over 1 MiB and so on) are mapped to the error envelope by the
50
53
  * scope's error handler: 4xx by the common error code table (413 `payload_too_large`, 415
51
54
  * `unsupported_media_type` and so on), 5xx are logged and return `internal`.
@@ -1,6 +1,6 @@
1
1
  import { Readable } from "node:stream";
2
2
  import FindMyWay from "find-my-way";
3
- import { errorBody } from "../errors.js";
3
+ import { ApiError, ERROR_CODES, errorBody } from "../errors.js";
4
4
  import { ACCESS_COOKIE, REFRESH_COOKIE } from "../identity/cookies.js";
5
5
  import { codeForStatus, redactPath } from "./error.filter.js";
6
6
  /** 插件路由都在此前缀下(ctx.http.route 已加 `/plugins/<name>` 前缀)。 */
@@ -47,7 +47,10 @@ export function createPluginRouter(routes) {
47
47
  * - `req.signal` aborts only when the client disconnects before the response is written (not on
48
48
  * normal completion); long-lived handlers use it to unsubscribe;
49
49
  * - a throwing handler is logged (path redacted with `redactPath`) and returns 500 `internal` (the
50
- * error message is not echoed).
50
+ * error message is not echoed), except a `model.hook_denied` `ApiError` that escaped from
51
+ * `ctx.models.embed` (an organization policy hook denied the call, spec B §5.4): a deliberate
52
+ * outcome, not a failure, so it answers 403 `model.hook_denied` with a generic message (the
53
+ * routes are unauthenticated: the policy extension's name and reason are not echoed).
51
54
  * - Fastify's own errors (a body over 1 MiB and so on) are mapped to the error envelope by the
52
55
  * scope's error handler: 4xx by the common error code table (413 `payload_too_large`, 415
53
56
  * `unsupported_media_type` and so on), 5xx are logged and return `internal`.
@@ -108,6 +111,15 @@ export async function registerPluginDispatch(fastify, getTable, log) {
108
111
  res = await pluginHandler(webReq);
109
112
  }
110
113
  catch (err) {
114
+ if (err instanceof ApiError && err.code === "model.hook_denied") {
115
+ log.warn("plugin handler refused: a policy hook denied its model call", {
116
+ method: req.method,
117
+ path: redactPath(path),
118
+ });
119
+ return reply
120
+ .code(ERROR_CODES["model.hook_denied"])
121
+ .send(errorBody(err.code, "An organization policy denied this model call"));
122
+ }
111
123
  log.error("plugin handler failed", { method: req.method, path: redactPath(path), err });
112
124
  return reply.code(500).send(errorBody("internal", "Internal error"));
113
125
  }
@@ -1,51 +1,124 @@
1
- import { type Selectable, type Transaction } from "kysely";
2
- import type { AccountsTable, KernelDatabase, KernelDb } from "../db/kernel-schema.js";
1
+ import { type Selectable } from "kysely";
2
+ import { SetupLock } from "../admin/setup-lock.js";
3
+ import type { AccountsTable } from "../db/kernel-schema.js";
4
+ import { KernelDb } from "../infra/database/kernel-db.js";
5
+ import { TransactionHost } from "../infra/database/transaction-host.js";
6
+ import { SuperAdminLock } from "./super-admin.js";
3
7
  export interface Account {
4
8
  id: string;
5
9
  displayName: string;
6
10
  email: string | null;
7
11
  status: "active" | "disabled";
8
- isEnterpriseAdmin: boolean;
12
+ isSuperAdmin: boolean;
13
+ /**
14
+ * The account signed in with a generated initial password and must set its own before anything
15
+ * else (Platform tool spec §14.5 item 2): the auth guard refuses every other route until then.
16
+ */
17
+ mustChangePassword: boolean;
9
18
  createdAt: Date;
10
19
  }
11
- type Trx = Transaction<KernelDatabase>;
12
- /** 企业管理员可改的账号字段。 */
20
+ /** 超级管理员可改的账号字段。 */
13
21
  export type AccountPatch = {
14
22
  displayName?: string;
15
23
  status?: "active" | "disabled";
16
- isEnterpriseAdmin?: boolean;
24
+ isSuperAdmin?: boolean;
17
25
  };
18
26
  /** 构造 `Account` 所需的 accounts 列(供跨表查询 select 使用)。 */
19
- export declare const ACCOUNT_COLUMNS: readonly ["accounts.id", "accounts.display_name", "accounts.email", "accounts.status", "accounts.is_enterprise_admin", "accounts.created_at"];
20
- type AccountRow = Pick<Selectable<AccountsTable>, "id" | "display_name" | "email" | "status" | "is_enterprise_admin" | "created_at">;
27
+ export declare const ACCOUNT_COLUMNS: readonly ["accounts.id", "accounts.display_name", "accounts.email", "accounts.status", "accounts.is_super_admin", "accounts.must_change_password", "accounts.created_at"];
28
+ type AccountRow = Pick<Selectable<AccountsTable>, "id" | "display_name" | "email" | "status" | "is_super_admin" | "must_change_password" | "created_at">;
21
29
  export declare function toAccount(r: AccountRow): Account;
22
30
  export interface LocalAccountInput {
23
31
  login: string;
24
32
  password: string;
25
33
  displayName: string;
26
34
  email?: string;
27
- enterpriseAdmin?: boolean;
35
+ superAdmin?: boolean;
36
+ /** The account must set its own password at first sign-in (a generated initial password). */
37
+ mustChangePassword?: boolean;
28
38
  }
29
- /** 账号服务:本地账号的创建、认证与管理。框架无关,由调用方注入 db。 */
39
+ /** Options of {@link AccountsService.createByAdmin}. */
40
+ export interface AdminCreateOptions {
41
+ /** Merged into the `account.created` audit detail (e.g. the Platform tool's `via: "agent"`). */
42
+ auditDetail?: Record<string, unknown>;
43
+ /**
44
+ * Runs in the creation's transaction right after the insert (the generated password is sealed
45
+ * there), so the account and what goes with it commit or roll back together.
46
+ */
47
+ inTransaction?: (account: Account) => Promise<void>;
48
+ }
49
+ /**
50
+ * Accounts: local account creation, authentication and administration. Every write is
51
+ * `@Transactional` (joining the caller's transaction when there is one); scrypt runs before any
52
+ * transaction opens.
53
+ */
30
54
  export declare class AccountsService {
31
55
  private readonly db;
32
- constructor(db: KernelDb);
33
- /** 校验密码长度并算出哈希(scrypt,较慢):供需要在事务之外先算好哈希的调用方使用。 */
56
+ readonly txHost: TransactionHost;
57
+ private readonly adminLock;
58
+ private readonly setupLock;
59
+ constructor(db: KernelDb, txHost: TransactionHost, adminLock: SuperAdminLock, setupLock: SetupLock);
60
+ /** Checks the password length and hashes it (scrypt, slow): for callers that hash before their transaction opens. */
34
61
  hashNewPassword(password: string): Promise<string>;
35
62
  /**
36
- * 建本地账号。传 `trx` 时在调用方的事务内插入;在事务内调用时应先在事务**之外**用 `hashNewPassword`
37
- * 算好 `passwordHash` 传进来,避免 scrypt 期间连接处于 idle in transaction。
63
+ * Creates a local account, in the caller's transaction when there is one. A caller inside a
64
+ * transaction hashes first with {@link hashNewPassword} and passes `passwordHash`, so the
65
+ * connection is never idle in transaction during scrypt.
66
+ */
67
+ createLocal(input: LocalAccountInput, passwordHash?: string): Promise<Account>;
68
+ /**
69
+ * A super admin creates a local account (optionally a super admin): under the
70
+ * super admin lock, re-checks that the actor is still an active super admin (else
71
+ * `forbidden`), creates the account and audits `account.created`. The hash is computed before
72
+ * the lock.
38
73
  */
39
- createLocal(input: LocalAccountInput, trx?: Trx, passwordHash?: string): Promise<Account>;
74
+ createByAdmin(input: LocalAccountInput, actorAccountId: string, actorTokenId?: string, opts?: AdminCreateOptions): Promise<Account>;
40
75
  /**
41
- * 企业管理员建本地账号(可同时设为企业管理员):事务内取企业管理员锁并复核发起人仍是活跃企业管理员
42
- * (否则 `forbidden`),建号并写审计 `account.created`。密码哈希在取锁之前算好,不在锁内跑 scrypt。
76
+ * Whether `login` is free for a new local account (`account.login_taken` otherwise) and well
77
+ * formed (`validation_failed`): the read a caller checks before asking a person to confirm.
43
78
  */
44
- createByAdmin(input: LocalAccountInput, actorAccountId: string, actorTokenId?: string): Promise<Account>;
79
+ assertLoginFree(login: string): Promise<void>;
80
+ /** The local login of each account that has one (accounts without are left out). */
81
+ localLogins(accountIds: readonly string[]): Promise<Map<string, string>>;
82
+ private createByAdminIn;
83
+ /**
84
+ * CLI: creates a super admin without checking whether the deployment is set up; a taken
85
+ * login → `account.login_taken`.
86
+ */
87
+ createSuperAdmin(input: SuperAdminInput): Promise<Account>;
88
+ /**
89
+ * CLI `admin create --if-none`: creates a super admin only when no active one exists. The
90
+ * check and the insert run in one transaction under {@link SetupLock}, the lock the web setup
91
+ * takes, so concurrent runs (and a concurrent web setup) create exactly one. Returns undefined
92
+ * when an active super admin already exists; a taken login still throws
93
+ * `account.login_taken`.
94
+ */
95
+ createSuperAdminIfNone(input: SuperAdminInput): Promise<Account | undefined>;
96
+ private createSuperAdminIfNoneIn;
97
+ private insertSuperAdmin;
45
98
  authenticateLocal(login: string, password: string): Promise<Account | null>;
46
99
  /** 按账号 id 校验本地密码(改密码时核对旧密码);没有本地密码、超长或不符 → false。 */
47
100
  verifyPassword(accountId: string, password: string): Promise<boolean>;
48
101
  get(id: string): Promise<Account | undefined>;
102
+ /**
103
+ * A person's preferences: `timeZone` is their time zone setting (IANA), null = follow the browser
104
+ * (run context spec §3.4); `theme` their theme (a `platform_themes` id), null = follow the org
105
+ * (themes spec §7). Missing account -> nulls.
106
+ */
107
+ preferences(accountId: string): Promise<{
108
+ timeZone: string | null;
109
+ theme: string | null;
110
+ }>;
111
+ /**
112
+ * Updates the preferences given (a field left out keeps its value; the caller validated the time
113
+ * zone). A theme must be on in at least one of the person's orgs, else 400 `theme.not_available`.
114
+ */
115
+ setPreferences(accountId: string, prefs: {
116
+ timeZone?: string | null | undefined;
117
+ theme?: string | null | undefined;
118
+ }): Promise<{
119
+ timeZone: string | null;
120
+ theme: string | null;
121
+ }>;
49
122
  /** 按 id 升序分页,`after` 为上一页最后一个 id。 */
50
123
  list(opts: {
51
124
  limit: number;
@@ -53,41 +126,67 @@ export declare class AccountsService {
53
126
  }): Promise<Account[]>;
54
127
  setPassword(accountId: string, password: string): Promise<void>;
55
128
  /**
56
- * 用户改密码(R24):同一个 PG 事务里写新密码、吊销该账号除 `exceptSessionId` 外的全部会话
57
- * (`sessions.revoked_at`)与全部个人访问令牌,要么全部生效要么都不生效。scrypt 在 BEGIN 之前算好。
58
- * 返回被吊销的会话 id,调用方随后写 Redis 吊销标记(快速路径;鉴权以 PG `revoked_at` 为准,
59
- * 标记写失败也不会让这些会话继续可用)。
129
+ * A person changes their password (R24): one PG transaction writes the new password and revokes
130
+ * the account's sessions except `exceptSessionId` (`sessions.revoked_at`) and all its personal
131
+ * access tokens; all or nothing. scrypt runs before BEGIN. Returns the revoked session ids; the
132
+ * caller then writes the Redis revocation markers (the fast path: auth reads PG `revoked_at`,
133
+ * so a failed marker never keeps a session usable).
60
134
  */
61
135
  changePassword(accountId: string, password: string, exceptSessionId: string): Promise<string[]>;
136
+ private changePasswordIn;
62
137
  update(id: string, patch: AccountPatch, actorAccountId: string, actorTokenId?: string): Promise<Account>;
63
138
  /**
64
- * 企业管理员改账号。停用(`status: "disabled"`)时在**同一个 PG 事务**里吊销该账号的全部会话
65
- * (`sessions.revoked_at`)与个人访问令牌,要么都生效要么都不生效;返回被吊销的会话 id,
66
- * 调用方在提交后写 Redis 吊销标记(快速路径,失败只记 warn:鉴权以 PG 为准)。
139
+ * A super admin changes an account. Disabling (`status: "disabled"`) revokes the
140
+ * account's sessions (`sessions.revoked_at`) and personal tokens in **the same PG transaction**,
141
+ * all or nothing; returns the revoked session ids, whose Redis markers the caller writes after
142
+ * the commit (the fast path; a failure is only a warning: auth reads PG).
67
143
  */
68
- updateAccount(id: string, patch: AccountPatch, actorAccountId: string, actorTokenId?: string): Promise<{
144
+ updateAccount(id: string, patch: AccountPatch, actorAccountId: string, actorTokenId?: string, opts?: {
145
+ auditDetail?: Record<string, unknown>;
146
+ }): Promise<{
69
147
  account: Account;
70
148
  revokedSessionIds: string[];
71
149
  }>;
72
150
  /**
73
- * CLI 的 `capybara admin grant|revoke <login>`(没有发起账号):按本地登录名在 {@link lockEnterpriseAdmins}
74
- * 的事务里改企业管理员标记;撤销沿用 {@link updateAccount} 的「最后一个活跃企业管理员」复核
75
- * (`account.last_enterprise_admin`),在锁内判定,与网页撤销并发也不会一个都不剩。审计 `account.updated`
76
- * 不带发起账号,`detail.via = "cli"`。已是目标状态时不改、不写审计(`changed: false`)。
77
- * 登录名不存在 → `account.not_found`。
151
+ * The CLI's `capybara admin grant|revoke <login>` (no actor account): changes the super
152
+ * admin flag by local login under the super admin lock; revoking keeps the
153
+ * {@link updateAccount} "last active super admin" check (`account.last_super_admin`),
154
+ * decided under the lock, so it cannot race a web revoke into none. Audit `account.updated`
155
+ * without an actor, `detail.via = "cli"`. Already in the target state → no change and no audit
156
+ * (`changed: false`). Unknown login → `account.not_found`.
78
157
  */
79
- setEnterpriseAdminByLogin(login: string, isEnterpriseAdmin: boolean): Promise<{
158
+ setSuperAdminByLogin(login: string, isSuperAdmin: boolean): Promise<{
80
159
  account: Account;
81
160
  changed: boolean;
82
161
  }>;
162
+ private setSuperAdminIn;
163
+ /** 全部账号数(含停用的;后台概览)。 */
164
+ count(): Promise<number>;
165
+ /** Active (status = active) super admins, in the context's transaction when there is one. */
166
+ countSuperAdmins(): Promise<number>;
167
+ /** Inserts the account, its local identity and password; a taken login → `account.login_taken`. */
168
+ private insertLocal;
169
+ /** Writes (or replaces) the local password hash; a missing account → `account.not_found`. */
170
+ private writePassword;
83
171
  /**
84
- * 已持企业管理员锁的事务内改账号:改行、复核「最后一个活跃企业管理员」、写审计 `account.updated`;
85
- * 停用时吊销该账号的全部会话与个人令牌。
172
+ * Changes the account under the super admin lock the caller holds: updates the row,
173
+ * re-checks "the last active super admin", audits `account.updated`; disabling revokes the
174
+ * account's sessions and personal tokens.
86
175
  */
87
176
  private applyUpdate;
88
- /** 全部账号数(含停用的;后台概览)。 */
89
- count(): Promise<number>;
90
- /** 活跃(status = active)的企业管理员数量。 */
91
- countEnterpriseAdmins(trx?: Trx): Promise<number>;
177
+ }
178
+ /** Input of the CLI super admin creation. */
179
+ export interface SuperAdminInput {
180
+ login: string;
181
+ password: string;
182
+ displayName: string;
183
+ email?: string | undefined;
184
+ }
185
+ /**
186
+ * {@link AccountsService} with the locks it takes; needs only the database. Part of
187
+ * `IdentityModule`; the CLI's `admin create` / `admin grant` contexts and `@capybara-hq/testing`'s
188
+ * `createLocalAccount` import it alone.
189
+ */
190
+ export declare class AccountsModule {
92
191
  }
93
192
  export {};