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

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 (604) hide show
  1. package/bootstrap.json +61 -5
  2. package/dist/admin/admin.controller.d.ts +47 -16
  3. package/dist/admin/admin.controller.js +44 -19
  4. package/dist/admin/extensions.controller.d.ts +24 -3
  5. package/dist/admin/extensions.controller.js +48 -8
  6. package/dist/admin/setup-lock.d.ts +1 -1
  7. package/dist/admin/setup-lock.js +1 -1
  8. package/dist/admin/setup.controller.d.ts +1 -1
  9. package/dist/admin/setup.controller.js +1 -1
  10. package/dist/admin/setup.service.d.ts +4 -4
  11. package/dist/admin/setup.service.js +8 -8
  12. package/dist/agents/agent-lookup.d.ts +19 -0
  13. package/dist/agents/agent-lookup.js +21 -0
  14. package/dist/agents/agent-profile.service.d.ts +29 -0
  15. package/dist/agents/agent-profile.service.js +117 -0
  16. package/dist/agents/agents.controller.d.ts +168 -3
  17. package/dist/agents/agents.controller.js +201 -12
  18. package/dist/agents/agents.module.d.ts +4 -1
  19. package/dist/agents/agents.module.js +36 -6
  20. package/dist/agents/agents.service.d.ts +64 -27
  21. package/dist/agents/agents.service.js +199 -74
  22. package/dist/agents/definition.d.ts +53 -0
  23. package/dist/agents/definition.js +55 -0
  24. package/dist/agents/from-template.d.ts +106 -0
  25. package/dist/agents/from-template.js +649 -0
  26. package/dist/agents/from-template.service.d.ts +60 -0
  27. package/dist/agents/from-template.service.js +161 -0
  28. package/dist/agents/instruction-files.d.ts +60 -0
  29. package/dist/agents/instruction-files.js +111 -0
  30. package/dist/agents/models.controller.d.ts +9 -3
  31. package/dist/agents/models.controller.js +19 -4
  32. package/dist/agents/org-templates.d.ts +176 -0
  33. package/dist/agents/org-templates.js +827 -0
  34. package/dist/agents/pending-connector-requests.d.ts +77 -0
  35. package/dist/agents/pending-connector-requests.js +215 -0
  36. package/dist/agents/pending-connectors.controller.d.ts +39 -0
  37. package/dist/agents/pending-connectors.controller.js +91 -0
  38. package/dist/agents/pending-connectors.service.d.ts +62 -0
  39. package/dist/agents/pending-connectors.service.js +282 -0
  40. package/dist/agents/profile.d.ts +96 -0
  41. package/dist/agents/profile.js +51 -0
  42. package/dist/agents/readiness.controller.d.ts +26 -0
  43. package/dist/agents/readiness.controller.js +56 -0
  44. package/dist/agents/templates.controller.d.ts +86 -5
  45. package/dist/agents/templates.controller.js +171 -7
  46. package/dist/agents/templates.d.ts +127 -23
  47. package/dist/agents/templates.js +476 -53
  48. package/dist/background/background.controller.d.ts +38 -0
  49. package/dist/background/background.controller.js +87 -0
  50. package/dist/background/background.module.d.ts +10 -0
  51. package/dist/background/background.module.js +39 -0
  52. package/dist/background/finish.d.ts +44 -0
  53. package/dist/background/finish.js +94 -0
  54. package/dist/background/launch-lock.d.ts +15 -0
  55. package/dist/background/launch-lock.js +40 -0
  56. package/dist/background/launch.d.ts +36 -0
  57. package/dist/background/launch.js +70 -0
  58. package/dist/background/poll.job.d.ts +56 -0
  59. package/dist/background/poll.job.js +190 -0
  60. package/dist/background/render.d.ts +23 -0
  61. package/dist/background/render.js +48 -0
  62. package/dist/background/session.d.ts +48 -0
  63. package/dist/background/session.js +79 -0
  64. package/dist/background/status.d.ts +35 -0
  65. package/dist/background/status.js +57 -0
  66. package/dist/background/stop.d.ts +68 -0
  67. package/dist/background/stop.js +243 -0
  68. package/dist/background/store.d.ts +162 -0
  69. package/dist/background/store.js +357 -0
  70. package/dist/background/store.module.d.ts +6 -0
  71. package/dist/background/store.module.js +22 -0
  72. package/dist/background/tasks.service.d.ts +77 -0
  73. package/dist/background/tasks.service.js +211 -0
  74. package/dist/background/wake-rules.d.ts +66 -0
  75. package/dist/background/wake-rules.js +113 -0
  76. package/dist/background/wake.d.ts +30 -0
  77. package/dist/background/wake.js +63 -0
  78. package/dist/catalog/admin-catalog.controller.d.ts +129 -30
  79. package/dist/catalog/admin-catalog.controller.js +213 -42
  80. package/dist/catalog/catalog-content.d.ts +58 -32
  81. package/dist/catalog/catalog-content.js +34 -8
  82. package/dist/catalog/catalog-import.module.d.ts +7 -0
  83. package/dist/catalog/catalog-import.module.js +60 -0
  84. package/dist/catalog/catalog-items.d.ts +111 -7
  85. package/dist/catalog/catalog-items.js +279 -13
  86. package/dist/catalog/catalog-scope.service.d.ts +260 -0
  87. package/dist/catalog/catalog-scope.service.js +1116 -0
  88. package/dist/catalog/catalog.module.d.ts +7 -9
  89. package/dist/catalog/catalog.module.js +41 -31
  90. package/dist/catalog/catalog.service.d.ts +101 -29
  91. package/dist/catalog/catalog.service.js +104 -106
  92. package/dist/catalog/claude/agents.js +2 -0
  93. package/dist/catalog/cli.d.ts +11 -1
  94. package/dist/catalog/cli.js +26 -1
  95. package/dist/catalog/component-promotion.d.ts +96 -0
  96. package/dist/catalog/component-promotion.js +395 -0
  97. package/dist/catalog/component-scope.controller.d.ts +152 -0
  98. package/dist/catalog/component-scope.controller.js +287 -0
  99. package/dist/catalog/component-scope.service.d.ts +303 -0
  100. package/dist/catalog/component-scope.service.js +936 -0
  101. package/dist/catalog/component-state.d.ts +174 -0
  102. package/dist/catalog/component-state.js +437 -0
  103. package/dist/catalog/job-ids.d.ts +30 -0
  104. package/dist/catalog/job-ids.js +25 -0
  105. package/dist/catalog/marketplace-fetch.d.ts +1 -1
  106. package/dist/catalog/marketplaces.controller.d.ts +22 -5
  107. package/dist/catalog/marketplaces.controller.js +56 -7
  108. package/dist/catalog/marketplaces.service.d.ts +54 -14
  109. package/dist/catalog/marketplaces.service.js +71 -22
  110. package/dist/catalog/org-catalog.controller.d.ts +125 -34
  111. package/dist/catalog/org-catalog.controller.js +181 -65
  112. package/dist/catalog/org-catalog.service.d.ts +65 -33
  113. package/dist/catalog/org-catalog.service.js +324 -157
  114. package/dist/catalog/org-extension-switch.d.ts +41 -0
  115. package/dist/catalog/org-extension-switch.js +115 -0
  116. package/dist/catalog/org-extension.controller.d.ts +119 -0
  117. package/dist/catalog/org-extension.controller.js +266 -0
  118. package/dist/catalog/org-plugin-uploads.controller.d.ts +98 -0
  119. package/dist/catalog/org-plugin-uploads.controller.js +213 -0
  120. package/dist/catalog/org-plugin-uploads.d.ts +63 -0
  121. package/dist/catalog/org-plugin-uploads.js +116 -0
  122. package/dist/catalog/owned-items.d.ts +184 -0
  123. package/dist/catalog/owned-items.js +789 -0
  124. package/dist/catalog/owned-plugin-cleanup.d.ts +56 -0
  125. package/dist/catalog/owned-plugin-cleanup.js +194 -0
  126. package/dist/catalog/ownership.d.ts +172 -0
  127. package/dist/catalog/ownership.js +326 -0
  128. package/dist/catalog/platform-components.d.ts +221 -0
  129. package/dist/catalog/platform-components.js +761 -0
  130. package/dist/catalog/platform-migration.d.ts +115 -0
  131. package/dist/catalog/platform-migration.js +582 -0
  132. package/dist/catalog/plugin-import.d.ts +178 -34
  133. package/dist/catalog/plugin-import.js +623 -83
  134. package/dist/catalog/plugin-install.d.ts +185 -41
  135. package/dist/catalog/plugin-install.js +758 -126
  136. package/dist/catalog/plugin-upgrade.d.ts +260 -225
  137. package/dist/catalog/plugin-upgrade.js +1148 -1137
  138. package/dist/catalog/request-rules.d.ts +65 -0
  139. package/dist/catalog/request-rules.js +217 -0
  140. package/dist/catalog/requests.service.d.ts +193 -118
  141. package/dist/catalog/requests.service.js +526 -343
  142. package/dist/catalog/reserved-names.d.ts +8 -0
  143. package/dist/catalog/reserved-names.js +42 -0
  144. package/dist/catalog/scope-orgs.d.ts +21 -0
  145. package/dist/catalog/scope-orgs.js +67 -0
  146. package/dist/catalog/scope-state.d.ts +35 -0
  147. package/dist/catalog/scope-state.js +87 -0
  148. package/dist/catalog/scope-sync-workers.d.ts +7 -0
  149. package/dist/catalog/scope-sync-workers.js +29 -0
  150. package/dist/catalog/scope-sync.d.ts +176 -0
  151. package/dist/catalog/scope-sync.js +576 -0
  152. package/dist/catalog/scope.d.ts +42 -0
  153. package/dist/catalog/scope.js +42 -0
  154. package/dist/catalog/unshare.d.ts +22 -0
  155. package/dist/catalog/unshare.js +118 -0
  156. package/dist/channels/actions.js +1 -0
  157. package/dist/channels/cards.js +21 -3
  158. package/dist/channels/channels.module.js +2 -0
  159. package/dist/channels/connections.service.d.ts +16 -1
  160. package/dist/channels/connections.service.js +38 -4
  161. package/dist/channels/inbound.d.ts +9 -1
  162. package/dist/channels/inbound.js +67 -5
  163. package/dist/channels/phrases.d.ts +35 -0
  164. package/dist/channels/phrases.js +29 -0
  165. package/dist/channels/threads.d.ts +5 -0
  166. package/dist/channels/threads.js +8 -0
  167. package/dist/config/docs.js +3 -1
  168. package/dist/config/schema.d.ts +24 -2
  169. package/dist/config/schema.js +145 -19
  170. package/dist/conversations/access.d.ts +6 -4
  171. package/dist/conversations/access.js +29 -5
  172. package/dist/conversations/agent-tree.d.ts +46 -0
  173. package/dist/conversations/agent-tree.js +92 -0
  174. package/dist/conversations/attachments.service.d.ts +30 -0
  175. package/dist/conversations/attachments.service.js +130 -5
  176. package/dist/conversations/conversations.controller.d.ts +79 -23
  177. package/dist/conversations/conversations.controller.js +141 -50
  178. package/dist/conversations/conversations.module.d.ts +1 -1
  179. package/dist/conversations/conversations.module.js +10 -7
  180. package/dist/conversations/conversations.service.d.ts +108 -9
  181. package/dist/conversations/conversations.service.js +237 -30
  182. package/dist/conversations/environment-status.d.ts +24 -0
  183. package/dist/conversations/environment-status.js +71 -0
  184. package/dist/conversations/event-log.d.ts +21 -6
  185. package/dist/conversations/event-log.js +70 -1
  186. package/dist/conversations/events.d.ts +140 -0
  187. package/dist/conversations/events.js +142 -13
  188. package/dist/conversations/queue.d.ts +3 -1
  189. package/dist/conversations/queue.js +13 -2
  190. package/dist/conversations/queue.service.d.ts +1 -1
  191. package/dist/conversations/queue.service.js +8 -1
  192. package/dist/conversations/titles.d.ts +12 -3
  193. package/dist/conversations/titles.js +36 -8
  194. package/dist/conversations/tree.d.ts +17 -0
  195. package/dist/conversations/tree.js +42 -0
  196. package/dist/ctx/create-ctx.d.ts +5 -0
  197. package/dist/ctx/create-ctx.js +15 -5
  198. package/dist/db/kernel-schema.d.ts +420 -20
  199. package/dist/db/pool.d.ts +5 -0
  200. package/dist/db/pool.js +3 -0
  201. package/dist/environments/access.d.ts +41 -0
  202. package/dist/environments/access.js +77 -0
  203. package/dist/environments/conversation-environments.d.ts +61 -0
  204. package/dist/environments/conversation-environments.js +170 -0
  205. package/dist/environments/dto.d.ts +25 -0
  206. package/dist/environments/dto.js +12 -0
  207. package/dist/environments/environments.controller.d.ts +33 -0
  208. package/dist/environments/environments.controller.js +110 -0
  209. package/dist/environments/environments.module.d.ts +8 -0
  210. package/dist/environments/environments.module.js +27 -0
  211. package/dist/environments/environments.service.d.ts +153 -0
  212. package/dist/environments/environments.service.js +541 -0
  213. package/dist/environments/legacy-cleanup.job.d.ts +34 -0
  214. package/dist/environments/legacy-cleanup.job.js +141 -0
  215. package/dist/errors.d.ts +90 -2
  216. package/dist/errors.js +90 -2
  217. package/dist/evals/reconstruct.d.ts +18 -9
  218. package/dist/evals/reconstruct.js +26 -7
  219. package/dist/evals/run-replay.d.ts +7 -2
  220. package/dist/evals/run-replay.js +42 -7
  221. package/dist/evals/step-replay.d.ts +2 -5
  222. package/dist/evals/step-replay.js +13 -7
  223. package/dist/evals/trajectory.js +1 -1
  224. package/dist/evals/trajectory.service.d.ts +8 -3
  225. package/dist/evals/trajectory.service.js +26 -14
  226. package/dist/evals/worker.d.ts +5 -5
  227. package/dist/evals/worker.js +9 -3
  228. package/dist/extensions/admin-ops.d.ts +36 -10
  229. package/dist/extensions/admin-ops.js +67 -42
  230. package/dist/extensions/admin-view.d.ts +39 -10
  231. package/dist/extensions/admin-view.js +111 -20
  232. package/dist/extensions/blobs.js +1 -0
  233. package/dist/extensions/bootstrap.d.ts +17 -4
  234. package/dist/extensions/bootstrap.js +70 -9
  235. package/dist/extensions/cli.d.ts +12 -0
  236. package/dist/extensions/cli.js +11 -2
  237. package/dist/extensions/config-issues.d.ts +13 -1
  238. package/dist/extensions/config-issues.js +22 -5
  239. package/dist/extensions/config-json-schema.d.ts +43 -7
  240. package/dist/extensions/config-json-schema.js +124 -58
  241. package/dist/extensions/deployment-config-store.d.ts +6 -0
  242. package/dist/extensions/deployment-config.d.ts +78 -8
  243. package/dist/extensions/deployment-config.js +172 -34
  244. package/dist/extensions/display-name.d.ts +22 -0
  245. package/dist/extensions/display-name.js +77 -0
  246. package/dist/extensions/effective-config.d.ts +127 -0
  247. package/dist/extensions/effective-config.js +368 -0
  248. package/dist/extensions/extensions.module.js +14 -2
  249. package/dist/extensions/hooks.d.ts +37 -4
  250. package/dist/extensions/hooks.js +82 -16
  251. package/dist/extensions/host.d.ts +45 -2
  252. package/dist/extensions/host.js +112 -16
  253. package/dist/extensions/installs.d.ts +20 -8
  254. package/dist/extensions/installs.js +37 -15
  255. package/dist/extensions/org-config.d.ts +81 -6
  256. package/dist/extensions/org-config.js +195 -44
  257. package/dist/extensions/org-levels.d.ts +37 -0
  258. package/dist/extensions/org-levels.js +71 -0
  259. package/dist/extensions/org-overrides.d.ts +151 -0
  260. package/dist/extensions/org-overrides.js +524 -0
  261. package/dist/extensions/package.d.ts +14 -1
  262. package/dist/extensions/package.js +51 -2
  263. package/dist/extensions/permission-view.d.ts +19 -4
  264. package/dist/extensions/permission-view.js +4 -4
  265. package/dist/extensions/plugin-items.d.ts +21 -0
  266. package/dist/extensions/plugin-items.js +42 -0
  267. package/dist/extensions/point-defaults.controller.d.ts +34 -0
  268. package/dist/extensions/point-defaults.controller.js +71 -0
  269. package/dist/extensions/point-defaults.d.ts +71 -0
  270. package/dist/extensions/point-defaults.js +234 -0
  271. package/dist/extensions/registry.d.ts +1 -1
  272. package/dist/extensions/registry.js +2 -0
  273. package/dist/extensions/resolve.d.ts +5 -1
  274. package/dist/extensions/resolve.js +15 -2
  275. package/dist/files/previewers.d.ts +8 -1
  276. package/dist/files/previewers.js +35 -6
  277. package/dist/http/api.module.js +31 -3
  278. package/dist/http/app.d.ts +11 -2
  279. package/dist/http/app.js +31 -5
  280. package/dist/http/nest-logger.d.ts +6 -5
  281. package/dist/http/nest-logger.js +24 -10
  282. package/dist/identity/accounts.d.ts +29 -29
  283. package/dist/identity/accounts.js +47 -47
  284. package/dist/identity/audit.d.ts +2 -1
  285. package/dist/identity/auth.controller.js +9 -5
  286. package/dist/identity/auth.guard.d.ts +13 -5
  287. package/dist/identity/auth.guard.js +26 -9
  288. package/dist/identity/cookies.d.ts +20 -5
  289. package/dist/identity/cookies.js +44 -6
  290. package/dist/identity/identity.module.d.ts +1 -1
  291. package/dist/identity/identity.module.js +4 -4
  292. package/dist/identity/me.controller.d.ts +5 -1
  293. package/dist/identity/me.controller.js +12 -3
  294. package/dist/identity/principal.d.ts +3 -3
  295. package/dist/identity/principal.js +3 -3
  296. package/dist/identity/sessions.d.ts +12 -0
  297. package/dist/identity/sessions.js +45 -0
  298. package/dist/identity/settings.d.ts +22 -11
  299. package/dist/identity/settings.js +53 -18
  300. package/dist/identity/{enterprise-admin.d.ts → super-admin.d.ts} +5 -5
  301. package/dist/identity/{enterprise-admin.js → super-admin.js} +24 -24
  302. package/dist/inbox/inbox.module.d.ts +4 -1
  303. package/dist/inbox/inbox.module.js +7 -3
  304. package/dist/inbox/inbox.service.d.ts +62 -3
  305. package/dist/inbox/inbox.service.js +74 -4
  306. package/dist/inbox/org-notices.d.ts +63 -0
  307. package/dist/inbox/org-notices.js +91 -0
  308. package/dist/inbox/platform-inbox.controller.d.ts +23 -0
  309. package/dist/inbox/platform-inbox.controller.js +58 -0
  310. package/dist/inbox/platform-inbox.service.d.ts +151 -0
  311. package/dist/inbox/platform-inbox.service.js +263 -0
  312. package/dist/inbox/platform-notices.d.ts +19 -0
  313. package/dist/inbox/platform-notices.js +9 -0
  314. package/dist/index.d.ts +2 -2
  315. package/dist/index.js +1 -1
  316. package/dist/infra/cli/kernel-cli.module.js +9 -1
  317. package/dist/infra/config/kernel-config.service.js +27 -1
  318. package/dist/infra/database/database.module.js +1 -0
  319. package/dist/infra/database/xact-lock.d.ts +1 -1
  320. package/dist/infra/database/xact-lock.js +1 -1
  321. package/dist/infra/events/kernel-events.d.ts +19 -2
  322. package/dist/infra/lifecycle/process-guards.js +4 -0
  323. package/dist/infra/logging/logging.module.d.ts +4 -2
  324. package/dist/infra/logging/logging.module.js +24 -6
  325. package/dist/infra/queue/add-job-once.d.ts +14 -0
  326. package/dist/infra/queue/add-job-once.js +16 -0
  327. package/dist/infra/queue/redis-connection.d.ts +6 -0
  328. package/dist/infra/queue/redis-connection.js +7 -0
  329. package/dist/infra/redis/redis.module.js +6 -2
  330. package/dist/infra/tokens.d.ts +6 -1
  331. package/dist/infra/tokens.js +6 -1
  332. package/dist/kernel.module.js +6 -0
  333. package/dist/lifecycle/kernel-lifecycle.d.ts +1 -1
  334. package/dist/lifecycle/kernel-lifecycle.js +4 -4
  335. package/dist/log.d.ts +13 -1
  336. package/dist/log.js +93 -17
  337. package/dist/models/prices.d.ts +5 -5
  338. package/dist/models/prices.js +4 -4
  339. package/dist/models/purposes.controller.d.ts +6 -4
  340. package/dist/models/purposes.controller.js +13 -7
  341. package/dist/models/purposes.d.ts +43 -9
  342. package/dist/models/purposes.js +48 -18
  343. package/dist/orgs/directory-sync.d.ts +14 -5
  344. package/dist/orgs/directory-sync.js +41 -17
  345. package/dist/orgs/offboarding.d.ts +12 -8
  346. package/dist/orgs/offboarding.js +54 -33
  347. package/dist/orgs/org-lock.d.ts +5 -0
  348. package/dist/orgs/org-lock.js +13 -0
  349. package/dist/orgs/org.guard.d.ts +10 -0
  350. package/dist/orgs/org.guard.js +43 -32
  351. package/dist/orgs/orgs.module.js +3 -0
  352. package/dist/orgs/orgs.service.d.ts +20 -7
  353. package/dist/orgs/orgs.service.js +32 -12
  354. package/dist/orgs/roles.d.ts +1 -1
  355. package/dist/orgs/roles.js +5 -1
  356. package/dist/orgs/settings.controller.d.ts +1 -1
  357. package/dist/orgs/settings.service.d.ts +20 -3
  358. package/dist/orgs/settings.service.js +19 -4
  359. package/dist/overrides.d.ts +3 -0
  360. package/dist/overrides.js +2 -0
  361. package/dist/platform/actor.d.ts +48 -0
  362. package/dist/platform/actor.js +100 -0
  363. package/dist/platform/agent-docs.d.ts +18 -0
  364. package/dist/platform/agent-docs.js +59 -0
  365. package/dist/platform/availability.d.ts +14 -0
  366. package/dist/platform/availability.js +43 -0
  367. package/dist/platform/errors.d.ts +11 -0
  368. package/dist/platform/errors.js +26 -0
  369. package/dist/platform/exclusions.d.ts +12 -0
  370. package/dist/platform/exclusions.js +1387 -0
  371. package/dist/platform/method.d.ts +6 -0
  372. package/dist/platform/method.js +15 -0
  373. package/dist/platform/operation.d.ts +92 -0
  374. package/dist/platform/operation.js +35 -0
  375. package/dist/platform/ops/agent-templates.ops.d.ts +14 -0
  376. package/dist/platform/ops/agent-templates.ops.js +92 -0
  377. package/dist/platform/ops/agents.ops.d.ts +19 -0
  378. package/dist/platform/ops/agents.ops.js +294 -0
  379. package/dist/platform/ops/connectors.ops.d.ts +15 -0
  380. package/dist/platform/ops/connectors.ops.js +126 -0
  381. package/dist/platform/ops/errors.d.ts +11 -0
  382. package/dist/platform/ops/errors.js +22 -0
  383. package/dist/platform/ops/extensions.ops.d.ts +19 -0
  384. package/dist/platform/ops/extensions.ops.js +116 -0
  385. package/dist/platform/ops/marketplaces.ops.d.ts +16 -0
  386. package/dist/platform/ops/marketplaces.ops.js +157 -0
  387. package/dist/platform/ops/paging.d.ts +14 -0
  388. package/dist/platform/ops/paging.js +20 -0
  389. package/dist/platform/ops/platform.ops.d.ts +23 -0
  390. package/dist/platform/ops/platform.ops.js +158 -0
  391. package/dist/platform/ops/plugins.ops.d.ts +33 -0
  392. package/dist/platform/ops/plugins.ops.js +377 -0
  393. package/dist/platform/ops/requests.ops.d.ts +14 -0
  394. package/dist/platform/ops/requests.ops.js +153 -0
  395. package/dist/platform/ops/role.d.ts +4 -0
  396. package/dist/platform/ops/role.js +10 -0
  397. package/dist/platform/ops/skills.ops.d.ts +13 -0
  398. package/dist/platform/ops/skills.ops.js +98 -0
  399. package/dist/platform/ops/summary.d.ts +10 -0
  400. package/dist/platform/ops/summary.js +18 -0
  401. package/dist/platform/platform-ops.module.d.ts +7 -0
  402. package/dist/platform/platform-ops.module.js +55 -0
  403. package/dist/platform/platform.module.d.ts +8 -0
  404. package/dist/platform/platform.module.js +25 -0
  405. package/dist/platform/redact-orgs.d.ts +7 -0
  406. package/dist/platform/redact-orgs.js +52 -0
  407. package/dist/platform/registry.d.ts +30 -0
  408. package/dist/platform/registry.js +111 -0
  409. package/dist/roles/worker-role.d.ts +6 -4
  410. package/dist/roles/worker-role.js +14 -7
  411. package/dist/roles/worker.module.d.ts +1 -1
  412. package/dist/roles/worker.module.js +15 -1
  413. package/dist/runtime/context/build.d.ts +11 -7
  414. package/dist/runtime/context/build.js +46 -19
  415. package/dist/runtime/context/claude-tools.d.ts +3 -1
  416. package/dist/runtime/context/claude-tools.js +8 -6
  417. package/dist/runtime/context/compaction.js +13 -0
  418. package/dist/runtime/context/reminders.d.ts +2 -0
  419. package/dist/runtime/context/reminders.js +2 -0
  420. package/dist/runtime/context/skills.js +9 -2
  421. package/dist/runtime/context/tool-changes.d.ts +27 -0
  422. package/dist/runtime/context/tool-changes.js +60 -0
  423. package/dist/runtime/hook-calls.js +2 -0
  424. package/dist/runtime/langgraph-loop.d.ts +3 -1
  425. package/dist/runtime/langgraph-loop.js +36 -17
  426. package/dist/runtime/loop.d.ts +34 -5
  427. package/dist/runtime/maintenance.d.ts +9 -4
  428. package/dist/runtime/maintenance.js +35 -8
  429. package/dist/runtime/model-call.d.ts +46 -8
  430. package/dist/runtime/model-call.js +72 -21
  431. package/dist/runtime/providers.d.ts +6 -0
  432. package/dist/runtime/providers.js +8 -0
  433. package/dist/runtime/run-control.d.ts +11 -1
  434. package/dist/runtime/run-control.js +12 -0
  435. package/dist/runtime/run-drafts.d.ts +85 -0
  436. package/dist/runtime/run-drafts.js +230 -0
  437. package/dist/runtime/run-jobs.d.ts +3 -5
  438. package/dist/runtime/run-jobs.js +3 -7
  439. package/dist/runtime/run-queue.d.ts +59 -2
  440. package/dist/runtime/run-queue.js +311 -38
  441. package/dist/runtime/run-worker.d.ts +11 -5
  442. package/dist/runtime/run-worker.js +69 -33
  443. package/dist/runtime/runtime.module.js +11 -3
  444. package/dist/runtime/step-log.d.ts +15 -4
  445. package/dist/runtime/step-log.js +24 -7
  446. package/dist/runtime/stream.controller.d.ts +23 -1
  447. package/dist/runtime/stream.controller.js +60 -3
  448. package/dist/runtime/stream.d.ts +4 -1
  449. package/dist/runtime/stream.js +27 -3
  450. package/dist/runtime/subagents/child.d.ts +55 -7
  451. package/dist/runtime/subagents/child.js +105 -7
  452. package/dist/runtime/subagents/definition.d.ts +12 -3
  453. package/dist/runtime/subagents/definition.js +44 -28
  454. package/dist/runtime/subagents/deliveries.d.ts +71 -0
  455. package/dist/runtime/subagents/deliveries.js +228 -0
  456. package/dist/runtime/subagents/dispatch.d.ts +115 -26
  457. package/dist/runtime/subagents/dispatch.js +212 -141
  458. package/dist/runtime/subagents/limits.d.ts +24 -5
  459. package/dist/runtime/subagents/limits.js +40 -6
  460. package/dist/runtime/subagents/messages.d.ts +95 -0
  461. package/dist/runtime/subagents/messages.js +328 -0
  462. package/dist/runtime/subagents/preamble.d.ts +4 -4
  463. package/dist/runtime/subagents/preamble.js +9 -7
  464. package/dist/runtime/subagents/progress.d.ts +8 -6
  465. package/dist/runtime/subagents/progress.js +11 -6
  466. package/dist/runtime/subagents/render.d.ts +30 -0
  467. package/dist/runtime/subagents/render.js +53 -0
  468. package/dist/runtime/subagents/roster.d.ts +24 -7
  469. package/dist/runtime/subagents/roster.js +47 -11
  470. package/dist/runtime/subagents/skill-fork.d.ts +3 -2
  471. package/dist/runtime/subagents/skill-fork.js +8 -4
  472. package/dist/runtime/subagents/status.d.ts +14 -0
  473. package/dist/runtime/subagents/status.js +23 -0
  474. package/dist/runtime/subagents/subagents.service.d.ts +7 -4
  475. package/dist/runtime/subagents/subagents.service.js +11 -6
  476. package/dist/runtime/usage-report.d.ts +2 -1
  477. package/dist/runtime/usage-report.js +19 -13
  478. package/dist/runtime/waits.d.ts +145 -36
  479. package/dist/runtime/waits.js +423 -109
  480. package/dist/sandbox/jobs.d.ts +40 -13
  481. package/dist/sandbox/jobs.js +57 -20
  482. package/dist/sandbox/leases.d.ts +37 -54
  483. package/dist/sandbox/leases.js +71 -115
  484. package/dist/sandbox/providers.d.ts +2 -2
  485. package/dist/sandbox/providers.js +1 -1
  486. package/dist/sandbox/sandbox.module.d.ts +3 -2
  487. package/dist/sandbox/sandbox.module.js +10 -4
  488. package/dist/sandbox/sandbox.service.d.ts +282 -129
  489. package/dist/sandbox/sandbox.service.js +736 -381
  490. package/dist/skills/catalog.d.ts +3 -2
  491. package/dist/skills/catalog.js +21 -43
  492. package/dist/skills/changes.controller.d.ts +7 -0
  493. package/dist/skills/changes.controller.js +19 -1
  494. package/dist/skills/invoke.js +8 -3
  495. package/dist/skills/package.d.ts +20 -1
  496. package/dist/skills/package.js +28 -1
  497. package/dist/skills/skills.controller.d.ts +39 -4
  498. package/dist/skills/skills.controller.js +88 -10
  499. package/dist/skills/skills.module.js +10 -1
  500. package/dist/skills/skills.service.d.ts +106 -26
  501. package/dist/skills/skills.service.js +421 -75
  502. package/dist/skills/usable.d.ts +81 -0
  503. package/dist/skills/usable.js +379 -0
  504. package/dist/tools/approvals.service.d.ts +20 -2
  505. package/dist/tools/approvals.service.js +25 -4
  506. package/dist/tools/builtin-names.d.ts +41 -7
  507. package/dist/tools/builtin-names.js +59 -7
  508. package/dist/tools/builtins/agent.d.ts +23 -21
  509. package/dist/tools/builtins/agent.js +62 -55
  510. package/dist/tools/builtins/builtin-tools.d.ts +19 -1
  511. package/dist/tools/builtins/builtin-tools.js +59 -2
  512. package/dist/tools/builtins/handback.d.ts +28 -0
  513. package/dist/tools/builtins/handback.js +53 -0
  514. package/dist/tools/builtins/platform.d.ts +34 -0
  515. package/dist/tools/builtins/platform.js +362 -0
  516. package/dist/tools/builtins/sandbox/bash.d.ts +1 -1
  517. package/dist/tools/builtins/sandbox/bash.js +241 -4
  518. package/dist/tools/builtins/sandbox/common.d.ts +69 -27
  519. package/dist/tools/builtins/sandbox/common.js +87 -48
  520. package/dist/tools/builtins/sandbox/deliver.js +1 -1
  521. package/dist/tools/builtins/sandbox/edit.js +2 -2
  522. package/dist/tools/builtins/sandbox/glob.js +2 -2
  523. package/dist/tools/builtins/sandbox/grep.js +2 -4
  524. package/dist/tools/builtins/sandbox/index.d.ts +3 -1
  525. package/dist/tools/builtins/sandbox/index.js +7 -1
  526. package/dist/tools/builtins/sandbox/read.js +1 -1
  527. package/dist/tools/builtins/sandbox/task-output.d.ts +74 -0
  528. package/dist/tools/builtins/sandbox/task-output.js +329 -0
  529. package/dist/tools/builtins/sandbox/task-stop.d.ts +10 -0
  530. package/dist/tools/builtins/sandbox/task-stop.js +113 -0
  531. package/dist/tools/builtins/sandbox/write.js +2 -2
  532. package/dist/tools/builtins/send-message.d.ts +56 -0
  533. package/dist/tools/builtins/send-message.js +100 -0
  534. package/dist/tools/builtins/skill-load.d.ts +22 -14
  535. package/dist/tools/builtins/skill-load.js +86 -57
  536. package/dist/tools/builtins/skill-write.js +1 -1
  537. package/dist/tools/builtins/web/errors.d.ts +8 -0
  538. package/dist/tools/builtins/web/errors.js +53 -0
  539. package/dist/tools/builtins/web/extract.d.ts +62 -0
  540. package/dist/tools/builtins/web/extract.js +271 -0
  541. package/dist/tools/builtins/web/fetch.d.ts +55 -0
  542. package/dist/tools/builtins/web/fetch.js +175 -0
  543. package/dist/tools/builtins/web/index.d.ts +13 -0
  544. package/dist/tools/builtins/web/index.js +12 -0
  545. package/dist/tools/builtins/web/page-cache.d.ts +25 -0
  546. package/dist/tools/builtins/web/page-cache.js +77 -0
  547. package/dist/tools/builtins/web/search.d.ts +25 -0
  548. package/dist/tools/builtins/web/search.js +210 -0
  549. package/dist/tools/builtins/web/url.d.ts +17 -0
  550. package/dist/tools/builtins/web/url.js +43 -0
  551. package/dist/tools/connectors.controller.d.ts +10 -0
  552. package/dist/tools/connectors.controller.js +12 -0
  553. package/dist/tools/connectors.service.d.ts +46 -5
  554. package/dist/tools/connectors.service.js +94 -15
  555. package/dist/tools/extension-tools.controller.d.ts +14 -0
  556. package/dist/tools/extension-tools.controller.js +37 -0
  557. package/dist/tools/info.d.ts +42 -1
  558. package/dist/tools/info.js +64 -1
  559. package/dist/tools/oauth/flow-paths.d.ts +1 -1
  560. package/dist/tools/oauth/flow-paths.js +1 -1
  561. package/dist/tools/org-tool-switches.d.ts +74 -0
  562. package/dist/tools/org-tool-switches.js +184 -0
  563. package/dist/tools/pipeline.d.ts +46 -40
  564. package/dist/tools/pipeline.js +202 -364
  565. package/dist/tools/policy.d.ts +1 -1
  566. package/dist/tools/policy.js +36 -16
  567. package/dist/tools/registry.d.ts +120 -8
  568. package/dist/tools/registry.js +112 -19
  569. package/dist/tools/tools.module.js +24 -2
  570. package/dist/tools/validate.js +1 -1
  571. package/dist/ui/views.d.ts +2 -1
  572. package/dist/ui/views.js +17 -3
  573. package/package.json +3 -3
  574. package/src/migrations/0064_account_last_org.sql +7 -0
  575. package/src/migrations/0065_conversation_archive.sql +8 -0
  576. package/src/migrations/0066_extension_display_name.sql +4 -0
  577. package/src/migrations/0067_agent_profiles.sql +20 -0
  578. package/src/migrations/0068_agent_avatar_uploads.sql +7 -0
  579. package/src/migrations/0069_attachments_agent_idx.sql +3 -0
  580. package/src/migrations/0070_background_tasks.sql +37 -0
  581. package/src/migrations/0071_background_tasks_reserve.sql +6 -0
  582. package/src/migrations/0072_background_tasks_stopping.sql +5 -0
  583. package/src/migrations/0073_org_extension_point_defaults.sql +11 -0
  584. package/src/migrations/0074_subagent_tree.sql +50 -0
  585. package/src/migrations/0075_plugin_scope.sql +61 -0
  586. package/src/migrations/0076_skills_created_by_nullable.sql +6 -0
  587. package/src/migrations/0077_scope_requests.sql +52 -0
  588. package/src/migrations/0078_scope_grant_switches.sql +18 -0
  589. package/src/migrations/0079_scope_live_install_switches.sql +19 -0
  590. package/src/migrations/0080_rename_enterprise_admin.sql +18 -0
  591. package/src/migrations/0081_platform_components.sql +129 -0
  592. package/src/migrations/0082_platform_migration.sql +33 -0
  593. package/src/migrations/0083_plugin_scope_sync_failures.sql +15 -0
  594. package/src/migrations/0084_org_owned_items.sql +85 -0
  595. package/src/migrations/0085_agent_templates_phase4.sql +45 -0
  596. package/src/migrations/0086_org_layering.sql +30 -0
  597. package/src/migrations/0087_approval_summary.sql +6 -0
  598. package/src/migrations/0088_environments.sql +80 -0
  599. package/dist/catalog/upgrade-targets.d.ts +0 -56
  600. package/dist/catalog/upgrade-targets.js +0 -90
  601. package/dist/conversations/sandbox-status.d.ts +0 -24
  602. package/dist/conversations/sandbox-status.js +0 -52
  603. package/dist/extensions/org-config.controller.d.ts +0 -24
  604. package/dist/extensions/org-config.controller.js +0 -62
@@ -1,26 +1,33 @@
1
- import { type AgentTemplate, type AgentTemplateTier, type LocalizedName } from "@capybara-hq/plugin-sdk";
1
+ import { type AgentTemplate, type AgentTemplateTier, type LocalizedName, type PluginManifest } from "@capybara-hq/plugin-sdk";
2
+ import type { Queue } from "bullmq";
2
3
  import { ApiError } from "../errors.js";
3
4
  import { ExtensionAdminOps } from "../extensions/admin-ops.js";
5
+ import { ExtensionAdmin } from "../extensions/admin-view.js";
4
6
  import { ExtensionBlobs } from "../extensions/blobs.js";
5
7
  import { ExtensionInstalls } from "../extensions/installs.js";
6
8
  import { PluginApproveLock, PluginInstallLock } from "../extensions/locks.js";
7
9
  import { ExtensionPackageError } from "../extensions/package.js";
8
10
  import { type PackageWarning, type PermissionGroup, type PermissionItem } from "../extensions/permission-view.js";
9
11
  import { ExtensionRegistry } from "../extensions/registry.js";
10
- import { EnterpriseAdminLock } from "../identity/enterprise-admin.js";
12
+ import { SuperAdminLock } from "../identity/super-admin.js";
11
13
  import { KernelConfigService } from "../infra/config/kernel-config.service.js";
12
14
  import { KernelDb } from "../infra/database/kernel-db.js";
13
15
  import { TransactionHost } from "../infra/database/transaction-host.js";
14
16
  import type { KernelLogger } from "../log.js";
17
+ import { OrgLock } from "../orgs/org-lock.js";
15
18
  import type { ProvenanceResult } from "../packages/provenance.js";
16
19
  import { type PrefixedStorage, StorageService } from "../storage/storage.service.js";
17
20
  import type { ActorOpts, CatalogItemView, PermissionsMismatch, SourceDetail } from "./catalog.service.js";
18
21
  import { type ClaudeEntryOverlay } from "./claude/manifest.js";
19
22
  import { type TranslationReport } from "./claude/report.js";
20
23
  import { CatalogItemLock } from "./locks.js";
24
+ import { PlatformComponents } from "./platform-components.js";
21
25
  import { PluginPackageError } from "./plugin-package.js";
26
+ import type { PluginScope } from "./scope.js";
27
+ /** How long after a failed post-import platform sync the migration job runs for the item. */
28
+ export declare const PLATFORM_SYNC_RETRY_MS = 60000;
22
29
  /**
23
- * Enterprise import of a plugin (package ecosystem spec §4.3): one review for every plugin, whatever
30
+ * Platform import of a plugin (package ecosystem spec §4.3): one review for every plugin, whatever
24
31
  * it contains (an extension, skills, connector templates, dependencies), confirmed once.
25
32
  *
26
33
  * prepare: the tgz is always hostile input, and **nothing is written until every check passes**
@@ -30,7 +37,7 @@ import { PluginPackageError } from "./plugin-package.js";
30
37
  * refused; name ownership; a downgrade to a version with unrun migrations is refused), each skill by
31
38
  * the skill package rules, each connector template against the connector loaded on this replica (or
32
39
  * statically when the connector is provided by the plugin's own extension or by a dependency), the
33
- * catalog name / version conflicts and the actor still an enterprise admin. Dependencies are only
40
+ * catalog name / version conflicts and the actor still a super admin. Dependencies are only
34
41
  * resolved against the imported catalog versions for the review (an unresolved one does not block
35
42
  * the import, spec §4.1); they are never fetched. Only then is the extension handed to
36
43
  * `ExtensionInstalls.ingest` (source `catalog`), the skill / template / icon files written to object
@@ -39,13 +46,13 @@ import { PluginPackageError } from "./plugin-package.js";
39
46
  * confirm: `reviewHash` must match the staging; in one transaction it deletes the staging row
40
47
  * (confirm works once), locks the extension name and recomputes its deployment state (installed /
41
48
  * upgraded / swapped after the review -> `plugin.review_stale`), writes the extension's permission
42
- * snapshot when it is installed by this import (or upgraded with `deployExtension`; source web, audit
43
- * `extension.permissions_approved` carrying the plugin), and creates the item or adds the version
44
- * (`manifest` = the normalized plugin.json, `extension_sha256`, the files under the staging prefix).
45
- * After the commit, with `deployExtension`, the plugin's own extension is installed on the
46
- * deployment and enabled (`ExtensionAdminOps.install` + `enable`; each replica reconciles, no
47
- * restart); a failure is returned, not thrown, and an upgrade that was not installed gets its old
48
- * snapshot back.
49
+ * snapshot when it is installed or upgraded by this import (source web, audit
50
+ * `extension.permissions_approved` carrying the plugin), and creates the item (with the scope the
51
+ * admin chose, default `optional`) or adds the version (`manifest` = the normalized plugin.json,
52
+ * `extension_sha256`, the files under the staging prefix). After the commit the plugin's own
53
+ * extension is installed on the deployment and enabled (`ExtensionAdminOps.install` + `enable`;
54
+ * each replica reconciles, no restart); a failure is returned, not thrown, and an upgrade that was
55
+ * not installed gets its old snapshot back.
49
56
  *
50
57
  * Expired staging is cleaned by the maintenance job `app-staging-cleanup`
51
58
  * ({@link PluginImport.cleanupExpired}): it deletes the staging row and its object prefix; a stored
@@ -54,7 +61,7 @@ import { PluginPackageError } from "./plugin-package.js";
54
61
  */
55
62
  /** How long a staged import is kept. */
56
63
  export declare const PLUGIN_STAGING_TTL_MS: number;
57
- /** The deployment state of the plugin's extension and what confirming with `deployExtension` does. */
64
+ /** The deployment state of the plugin's extension and what confirming does with it. */
58
65
  export type ExtensionReviewAction = "install" | "upgrade" | "keep";
59
66
  /** The plugin's extension in a review. */
60
67
  export interface PluginReviewExtension {
@@ -63,10 +70,17 @@ export interface PluginReviewExtension {
63
70
  /** sha256 of the plugin tgz (the package store key). */
64
71
  sha256: string;
65
72
  /**
66
- * install: not on the deployment; upgrade: installed from another package (another version), the
67
- * import's package replaces it when deployed; keep: this exact package is installed.
73
+ * install: not on the deployment; upgrade: installed from another package whose version is not
74
+ * above the import's, the import's package replaces it when confirmed; keep: this exact package is
75
+ * installed, or the installed version is newer (`olderThanDeployed`): the confirm records the
76
+ * version in the catalog only and never downgrades the deployment.
68
77
  */
69
78
  action: ExtensionReviewAction;
79
+ /**
80
+ * The import's version is below the one deployed: the review warns that confirming keeps the
81
+ * deployed extension (action `keep`); absent otherwise.
82
+ */
83
+ olderThanDeployed?: true;
70
84
  /** Installed on the deployment (any version). */
71
85
  deployed: boolean;
72
86
  /** The installed version (null when not installed). */
@@ -131,11 +145,19 @@ export interface PluginImportSource {
131
145
  /** Where it came from (stored on the catalog version as `source_detail`). */
132
146
  detail?: SourceDetail;
133
147
  }
148
+ /**
149
+ * An org upload (spec §14, rulings P3-7, P3-8): the org that will own the plugin. Its admin is
150
+ * authorized (`catalog.upload`) instead of the super admin, its staging is its own, and the new
151
+ * item is owned by it with scope `named: [orgId]`.
152
+ */
153
+ export interface ImportOwner {
154
+ orgId: string;
155
+ }
134
156
  /** The format a plugin was read from: a Capybara plugin, or a translated Claude Code plugin. */
135
157
  export type PluginSourceFormat = "capybara" | "claude-code";
136
158
  /** The largest license text stored (bytes); a longer one is omitted (`licenseTruncated`). */
137
159
  export declare const LICENSE_TEXT_MAX_BYTES = 65536;
138
- /** The one review of a plugin (the enterprise admin sees every component before confirming). */
160
+ /** The one review of a plugin (the super admin sees every component before confirming). */
139
161
  export interface PluginReview {
140
162
  name: string;
141
163
  /** `claude-code`: translated from a Claude Code plugin (no extension; see `translation`). */
@@ -166,7 +188,10 @@ export interface PluginReview {
166
188
  /** package.json `name`; null for a git plugin without package.json. */
167
189
  packageName: string | null;
168
190
  publisher: string;
191
+ /** The plugin.json description's English text (a plain string description is English). */
169
192
  description: string;
193
+ /** Its Chinese text (`description.zh`); null without one. */
194
+ descriptionZh: string | null;
170
195
  displayName?: LocalizedName;
171
196
  license?: string;
172
197
  homepage?: string;
@@ -209,7 +234,7 @@ export interface PluginReview {
209
234
  /** Digest of everything above that confirm depends on; sent back on confirm. */
210
235
  reviewHash: string;
211
236
  }
212
- /** The deploy result of the plugin's extension with `deployExtension`. */
237
+ /** The deploy result of the plugin's extension at confirm. */
213
238
  export interface ExtensionDeployResult {
214
239
  name: string;
215
240
  action: "install" | "upgrade";
@@ -229,8 +254,21 @@ export interface ExtensionDeployResult {
229
254
  /** The result of {@link PluginImport.confirm}. */
230
255
  export interface PluginConfirmResult {
231
256
  item: CatalogItemView;
232
- /** null without `deployExtension` or when there is nothing to deploy (no extension, keep). */
257
+ /** This confirm created the item (a first import of the name), else it added a version. */
258
+ created: boolean;
259
+ /** null when there is nothing to deploy (no extension, or keep). */
233
260
  deploy: ExtensionDeployResult | null;
261
+ /**
262
+ * An org upload with an extension: the version waits for the super admin's confirmation
263
+ * (ruling P3-10); nothing was approved, installed or synced.
264
+ */
265
+ pending: boolean;
266
+ /**
267
+ * The confirm made the item's first usable version: it created the item, or it replaced an org
268
+ * upload's first version that was still waiting for the super admin with a version without an
269
+ * extension (applied at once, plan Task 6).
270
+ */
271
+ firstVersion: boolean;
234
272
  }
235
273
  /** What prepare checks besides the package itself (npm and marketplace imports). */
236
274
  export interface PluginPrepareExpect {
@@ -252,6 +290,33 @@ export interface ReviewProvenance {
252
290
  provenance: ProvenanceResult;
253
291
  warning?: "repository_mismatch";
254
292
  }
293
+ /** What an org's staged upload targets (see {@link PluginImport.stagedTarget}). */
294
+ export interface StagedTarget {
295
+ itemId: string;
296
+ version: string;
297
+ /** The review's own hash (an org's review of an update shows a combined one, P3-12). */
298
+ reviewHash: string;
299
+ /** The review has an extension. */
300
+ extension: boolean;
301
+ /** The live item exists already (a new version), owned by the staging's org. */
302
+ existing: boolean;
303
+ /** That item's first version still waits for the super admin (P3-9). */
304
+ awaiting: boolean;
305
+ /** The version is imported already (pre-flight F4). */
306
+ retry: boolean;
307
+ /** The target as the platform updater reads it (the staged manifest and files). */
308
+ target: {
309
+ version: string;
310
+ manifest: PluginManifest;
311
+ object_prefix: string | null;
312
+ files: {
313
+ path: string;
314
+ size: number;
315
+ sha256: string;
316
+ }[];
317
+ extension_sha256: string | null;
318
+ };
319
+ }
255
320
  /**
256
321
  * The API error of a plugin package that cannot be read in a catalog path: the pre-0.1.0 format ->
257
322
  * `catalog.legacy_format`, anything else -> `catalog.invalid_manifest` (issues as details).
@@ -259,20 +324,27 @@ export interface ReviewProvenance {
259
324
  export declare function catalogPackageError(e: PluginPackageError | ExtensionPackageError): ApiError;
260
325
  export declare class PluginImport {
261
326
  private readonly kdb;
262
- /** The enterprise admin lock (identity/enterprise-admin.ts): joins the caller's transaction. */
327
+ /** The super admin lock (identity/super-admin.ts): joins the caller's transaction. */
263
328
  private readonly adminLock;
329
+ /** The owner org's lock: an org upload re-checks its admin under it (ruling P3-7). */
330
+ private readonly orgLock;
264
331
  private readonly installLock;
265
332
  private readonly approveLock;
266
333
  private readonly itemLock;
267
334
  private readonly config;
268
335
  private readonly installs;
269
336
  private readonly ops;
337
+ private readonly admin;
270
338
  /** Reads a package from the package store (confirm recomputes the permission set). */
271
339
  private readonly blobs;
272
340
  /** Config-declared names, loaded connectors and extension versions (the extension registry). */
273
341
  private readonly registry;
274
342
  private readonly log;
275
343
  readonly txHost: TransactionHost;
344
+ /** The platform rows of a new item's components, written after the confirm's commit. */
345
+ private readonly platform;
346
+ /** A failed platform sync enqueues a run of the migration job here (it heals the item). */
347
+ private readonly maintenance;
276
348
  /** Where plugin files go (the kernel's object storage; the CLI's own, see {@link useCliStorage}). */
277
349
  private files;
278
350
  /**
@@ -282,12 +354,18 @@ export declare class PluginImport {
282
354
  */
283
355
  private connectorsLoaded;
284
356
  constructor(kdb: KernelDb,
285
- /** The enterprise admin lock (identity/enterprise-admin.ts): joins the caller's transaction. */
286
- adminLock: EnterpriseAdminLock, installLock: PluginInstallLock, approveLock: PluginApproveLock, itemLock: CatalogItemLock, config: KernelConfigService, storage: StorageService, installs: ExtensionInstalls, ops: ExtensionAdminOps,
357
+ /** The super admin lock (identity/super-admin.ts): joins the caller's transaction. */
358
+ adminLock: SuperAdminLock,
359
+ /** The owner org's lock: an org upload re-checks its admin under it (ruling P3-7). */
360
+ orgLock: OrgLock, installLock: PluginInstallLock, approveLock: PluginApproveLock, itemLock: CatalogItemLock, config: KernelConfigService, storage: StorageService, installs: ExtensionInstalls, ops: ExtensionAdminOps, admin: ExtensionAdmin,
287
361
  /** Reads a package from the package store (confirm recomputes the permission set). */
288
362
  blobs: ExtensionBlobs,
289
363
  /** Config-declared names, loaded connectors and extension versions (the extension registry). */
290
- registry: ExtensionRegistry, log: KernelLogger, txHost: TransactionHost);
364
+ registry: ExtensionRegistry, log: KernelLogger, txHost: TransactionHost,
365
+ /** The platform rows of a new item's components, written after the confirm's commit. */
366
+ platform: PlatformComponents,
367
+ /** A failed platform sync enqueues a run of the migration job here (it heals the item). */
368
+ maintenance: Pick<Queue, "add">);
291
369
  /** The kernel-schema handle of the current context (the transaction, else the pool). */
292
370
  private get db();
293
371
  /**
@@ -297,9 +375,11 @@ export declare class PluginImport {
297
375
  */
298
376
  useCliStorage(storage: PrefixedStorage): void;
299
377
  /**
300
- * The enterprise-admin re-check under the lock, in the caller's transaction. `actor` null is the
378
+ * The super-admin re-check under the lock, in the caller's transaction. `actor` null is the
301
379
  * CLI (the operator of the deployment: no account to re-check, audits carry no actor), like
302
- * `ExtensionInstalls.ingest`.
380
+ * `ExtensionInstalls.ingest`. An org upload (`owner`) re-checks the actor as an admin of the
381
+ * owner org under the org row lock instead (`catalog.upload`; an org deleted meanwhile -> 404
382
+ * `org.not_found`).
303
383
  */
304
384
  private authorizeActor;
305
385
  /** The re-check alone, in a transaction of its own (before anything is written). */
@@ -318,6 +398,8 @@ export declare class PluginImport {
318
398
  };
319
399
  provenance?: ReviewProvenance;
320
400
  claudeManifestIgnored?: true;
401
+ /** An org upload (a `file` source only, ruling P3-7). */
402
+ owner?: ImportOwner;
321
403
  }): Promise<{
322
404
  stagingId: string;
323
405
  review: PluginReview;
@@ -371,39 +453,90 @@ export declare class PluginImport {
371
453
  /**
372
454
  * A staged import's review, as prepare returned it, with a marketplace import's permission
373
455
  * mismatch when there is one (the import page loads `?staging=<id>` with it). Unknown, expired or
374
- * already confirmed -> 404 `plugin.staging_not_found`.
456
+ * already confirmed -> 404 `plugin.staging_not_found`. Each sees only its own staging (P3-8):
457
+ * the super admin's routes the platform's (no `owner`), an org's routes that org's.
375
458
  */
376
- staged(stagingId: string): Promise<{
459
+ staged(stagingId: string, owner?: ImportOwner): Promise<{
377
460
  stagingId: string;
378
461
  review: PluginReview;
379
462
  permissionsMismatch?: PermissionsMismatch;
380
463
  }>;
381
464
  /**
382
- * Confirms a staged import (see the file header). Returns the committed catalog item and, with
383
- * `deployExtension`, the extension's deploy result (a failed deploy is returned, not thrown).
465
+ * What an org's staged upload targets (P3-12, pre-flight F3): its item, version and review hash,
466
+ * whether the item exists (a new version of the org's own plugin) or the version is imported
467
+ * already (F4), and the target as the platform updater reads it: the staged manifest and files,
468
+ * or the imported version's for a retry. Another org's staging -> 404 `plugin.staging_not_found`.
469
+ */
470
+ stagedTarget(stagingId: string, owner: ImportOwner): Promise<StagedTarget>;
471
+ /** The catalog item's view (as a confirm returns it). */
472
+ view(itemId: string): Promise<CatalogItemView>;
473
+ /**
474
+ * Confirms a staged import (see the file header). Returns the committed catalog item and the
475
+ * extension's deploy result (a failed deploy is returned, not thrown). `scope` (default
476
+ * `optional`) and `orgs` (only with `named`; each an existing org, else `validation_failed`) are
477
+ * written when this confirm creates the item; a new version of an existing item keeps its scope.
478
+ * The caller enqueues the scope sync of the item after this returns.
479
+ *
480
+ * An org upload (`opts.owner`, spec §14): only that org's staging; the actor re-checked as its
481
+ * admin; `scope` / `orgs` are not taken: a new item is owned by the org, scope `named: [owner]`,
482
+ * not shown to other orgs, `shareable` as given (default false). Custom deny, the name owner and
483
+ * the dependencies are checked again under the item name's lock. A package with an extension
484
+ * is stored and its extension name claimed, nothing approved or installed: the version waits
485
+ * for the super admin (`pending`, ruling P3-10; see {@link commit}).
384
486
  */
385
487
  confirm(actor: string | null, stagingId: string, input: {
386
488
  reviewHash: string;
387
- deployExtension: boolean;
388
489
  /**
389
- * With `deployExtension`: enable the extension after installing it (default true). false
390
- * keeps the install record's desired state (a new install stays disabled), for the bootstrap
391
- * step's upgrades of a plugin an enterprise admin may have disabled.
490
+ * Enable the extension after installing it (default true). false keeps the install record's
491
+ * desired state (a new install stays disabled), for the bootstrap step's upgrades of a
492
+ * plugin a super admin may have disabled.
392
493
  */
393
494
  enable?: boolean;
495
+ /** The new item's scope (default `optional`). */
496
+ scope?: PluginScope;
497
+ /** The orgs of a `named` scope. */
498
+ orgs?: string[];
394
499
  /**
395
500
  * The skills (by name, each in the review) suggested as pinned when an agent selects them
396
501
  * (spec §9.1); replaces the plugin's `pinned` flags in the stored manifest. Omitted keeps
397
- * them. An admin decision like `deployExtension`, so not part of `reviewHash`.
502
+ * them. An admin decision like the scope, so not part of `reviewHash`.
398
503
  */
399
504
  pinnedSuggestions?: string[];
400
- }, opts?: ActorOpts): Promise<PluginConfirmResult>;
505
+ /** An org upload's new item: shared with other orgs by its owner (default false, P3-16). */
506
+ shareable?: boolean;
507
+ }, opts?: ActorOpts & {
508
+ owner?: ImportOwner;
509
+ }): Promise<PluginConfirmResult>;
510
+ /**
511
+ * Writes the platform components of an item's first usable version after a commit made
512
+ * elsewhere (the super admin's confirmation of an org upload, `CatalogScopeService`); a failure
513
+ * is logged and retried by the migration job (see {@link syncPlatform}).
514
+ */
515
+ writePlatformComponents(itemId: string, version: string): Promise<void>;
401
516
  /**
402
517
  * The confirm's transaction: the staging row consumed, the extension's action recomputed under
403
518
  * its install lock (stale -> `plugin.review_stale`), its snapshot approved, and the catalog
404
519
  * version written under the item name's lock.
520
+ *
521
+ * An org upload with an extension (ruling P3-10) approves nothing: under the install lock it
522
+ * claims the extension name for its package (another package's -> 409
523
+ * `extension.name_conflict` naming its owner, before anything is written), and the version
524
+ * written becomes the item's pending one (`pending_version` / `_by` / `_at`; a first version
525
+ * also `awaiting_confirmation`). A later upload replaces the pending version (P3-11). An org
526
+ * upload without an extension for an item whose first version still waits (plan Task 6) replaces
527
+ * that upload and applies at once: the item stops waiting and the claim is released (nothing
528
+ * was installed under it).
405
529
  */
406
530
  private commit;
531
+ /**
532
+ * The platform components of a new item. The item is committed already, so a failure is logged
533
+ * and not thrown (like a failed deploy, the import itself succeeded); a run of the platform
534
+ * components migration job (which writes what is missing) is enqueued on `cap-kernel-maintenance`
535
+ * after {@link PLATFORM_SYNC_RETRY_MS}, one per item (deterministic job id). If that run fails
536
+ * too, its `itemsFailed` shows in the super admin's inbox; the daily run and every worker start
537
+ * try again.
538
+ */
539
+ private syncPlatform;
407
540
  /**
408
541
  * Writes the extension's permission snapshot for the version being imported (source web; cli
409
542
  * without an actor; bootstrap for the bootstrap step), after
@@ -437,6 +570,14 @@ export declare class PluginImport {
437
570
  * replica has it or it is gone.
438
571
  */
439
572
  private cleanupOne;
573
+ /**
574
+ * An expired org staging's extension package (an org upload stores it at prepare, P3-10): removed
575
+ * with the staging unless something else uses it — an install (running or migrated), a catalog
576
+ * version, another staging — or it was stored by anyone else (the package row's source must be
577
+ * this staging's own `catalog` ref). A platform staging keeps its package, as before. Its object
578
+ * is deleted after the commit.
579
+ */
580
+ private dropOrgPackage;
440
581
  /** npm / marketplace imports: the package must be the one that was asked for. */
441
582
  private checkExpected;
442
583
  /** A config-declared extension's name cannot be taken by an imported plugin. */
@@ -448,7 +589,10 @@ export declare class PluginImport {
448
589
  private checkContent;
449
590
  /**
450
591
  * The highest imported, non-deleted catalog version satisfying each dependency's range (null when
451
- * none does).
592
+ * none does). An org upload (`owner`, P3-13) resolves only against items the org can use
593
+ * ({@link usableBy}: confirmed, not disabled, offered to it), and any dependency left unresolved
594
+ * -> 409 `plugin.dependency_unavailable` (details `[{ dependencies }]`, their names): an org
595
+ * upload never brings in anything the org could not install itself.
452
596
  */
453
597
  private resolveDependencies;
454
598
  /**