@capybara-hq/kernel 0.1.0-rc.2 → 0.1.0-rc.21

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 (1039) hide show
  1. package/bootstrap.json +94 -5
  2. package/dist/admin/admin-agents.controller.d.ts +28 -0
  3. package/dist/admin/admin-agents.controller.js +79 -0
  4. package/dist/admin/admin-connectors.controller.d.ts +29 -0
  5. package/dist/admin/admin-connectors.controller.js +79 -0
  6. package/dist/admin/admin-items.schemas.d.ts +42 -0
  7. package/dist/admin/admin-items.schemas.js +48 -0
  8. package/dist/admin/admin.controller.d.ts +52 -80
  9. package/dist/admin/admin.controller.js +112 -81
  10. package/dist/admin/admin.module.d.ts +4 -1
  11. package/dist/admin/admin.module.js +50 -4
  12. package/dist/admin/admin.schemas.d.ts +69 -0
  13. package/dist/admin/admin.schemas.js +53 -0
  14. package/dist/admin/audit.controller.d.ts +14 -0
  15. package/dist/admin/audit.controller.js +42 -0
  16. package/dist/admin/audit.schemas.d.ts +8 -0
  17. package/dist/admin/audit.schemas.js +17 -0
  18. package/dist/admin/extensions.controller.d.ts +34 -3
  19. package/dist/admin/extensions.controller.js +66 -8
  20. package/dist/admin/extensions.schemas.d.ts +7 -0
  21. package/dist/admin/extensions.schemas.js +10 -0
  22. package/dist/admin/health.service.d.ts +104 -0
  23. package/dist/admin/health.service.js +246 -0
  24. package/dist/admin/limit-defaults.d.ts +20 -0
  25. package/dist/admin/limit-defaults.js +10 -0
  26. package/dist/admin/overview.controller.d.ts +31 -0
  27. package/dist/admin/overview.controller.js +78 -0
  28. package/dist/admin/overview.schemas.d.ts +8 -0
  29. package/dist/admin/overview.schemas.js +13 -0
  30. package/dist/admin/overview.service.d.ts +112 -0
  31. package/dist/admin/overview.service.js +223 -0
  32. package/dist/admin/platform-audit.service.d.ts +41 -0
  33. package/dist/admin/platform-audit.service.js +70 -0
  34. package/dist/admin/setup-lock.d.ts +1 -1
  35. package/dist/admin/setup-lock.js +1 -1
  36. package/dist/admin/setup.controller.d.ts +1 -1
  37. package/dist/admin/setup.controller.js +1 -1
  38. package/dist/admin/setup.service.d.ts +4 -4
  39. package/dist/admin/setup.service.js +8 -8
  40. package/dist/admin/usage.service.d.ts +149 -0
  41. package/dist/admin/usage.service.js +321 -0
  42. package/dist/agents/admin-agents.d.ts +92 -0
  43. package/dist/agents/admin-agents.js +170 -0
  44. package/dist/agents/agent-lookup.d.ts +24 -0
  45. package/dist/agents/agent-lookup.js +46 -2
  46. package/dist/agents/agent-profile.service.d.ts +31 -0
  47. package/dist/agents/agent-profile.service.js +122 -0
  48. package/dist/agents/agents.controller.d.ts +53 -168
  49. package/dist/agents/agents.controller.js +163 -34
  50. package/dist/agents/agents.module.d.ts +6 -2
  51. package/dist/agents/agents.module.js +41 -7
  52. package/dist/agents/agents.schemas.d.ts +392 -0
  53. package/dist/agents/agents.schemas.js +126 -0
  54. package/dist/agents/agents.service.d.ts +121 -36
  55. package/dist/agents/agents.service.js +411 -121
  56. package/dist/agents/definition.d.ts +142 -21
  57. package/dist/agents/definition.js +389 -43
  58. package/dist/agents/from-template.d.ts +106 -0
  59. package/dist/agents/from-template.js +680 -0
  60. package/dist/agents/from-template.service.d.ts +72 -0
  61. package/dist/agents/from-template.service.js +178 -0
  62. package/dist/agents/instruction-files.d.ts +60 -0
  63. package/dist/agents/instruction-files.js +111 -0
  64. package/dist/agents/models.controller.d.ts +44 -6
  65. package/dist/agents/models.controller.js +84 -8
  66. package/dist/agents/org-templates.d.ts +186 -0
  67. package/dist/agents/org-templates.js +876 -0
  68. package/dist/agents/pending-connector-requests.d.ts +79 -0
  69. package/dist/agents/pending-connector-requests.js +215 -0
  70. package/dist/agents/pending-connectors.controller.d.ts +39 -0
  71. package/dist/agents/pending-connectors.controller.js +91 -0
  72. package/dist/agents/pending-connectors.service.d.ts +62 -0
  73. package/dist/agents/pending-connectors.service.js +282 -0
  74. package/dist/agents/profile.d.ts +114 -0
  75. package/dist/agents/profile.js +55 -0
  76. package/dist/agents/readiness.controller.d.ts +26 -0
  77. package/dist/agents/readiness.controller.js +56 -0
  78. package/dist/agents/templates.controller.d.ts +77 -5
  79. package/dist/agents/templates.controller.js +153 -7
  80. package/dist/agents/templates.d.ts +127 -23
  81. package/dist/agents/templates.js +482 -44
  82. package/dist/agents/templates.schemas.d.ts +20 -0
  83. package/dist/agents/templates.schemas.js +45 -0
  84. package/dist/background/background.controller.d.ts +38 -0
  85. package/dist/background/background.controller.js +88 -0
  86. package/dist/background/background.module.d.ts +10 -0
  87. package/dist/background/background.module.js +39 -0
  88. package/dist/background/background.schemas.d.ts +10 -0
  89. package/dist/background/background.schemas.js +16 -0
  90. package/dist/background/finish.d.ts +44 -0
  91. package/dist/background/finish.js +95 -0
  92. package/dist/background/launch-lock.d.ts +15 -0
  93. package/dist/background/launch-lock.js +40 -0
  94. package/dist/background/launch.d.ts +42 -0
  95. package/dist/background/launch.js +77 -0
  96. package/dist/background/poll.job.d.ts +56 -0
  97. package/dist/background/poll.job.js +195 -0
  98. package/dist/background/render.d.ts +23 -0
  99. package/dist/background/render.js +48 -0
  100. package/dist/background/session.d.ts +48 -0
  101. package/dist/background/session.js +80 -0
  102. package/dist/background/status.d.ts +35 -0
  103. package/dist/background/status.js +57 -0
  104. package/dist/background/stop.d.ts +68 -0
  105. package/dist/background/stop.js +244 -0
  106. package/dist/background/store.d.ts +167 -0
  107. package/dist/background/store.js +361 -0
  108. package/dist/background/store.module.d.ts +6 -0
  109. package/dist/background/store.module.js +22 -0
  110. package/dist/background/tasks.service.d.ts +109 -0
  111. package/dist/background/tasks.service.js +271 -0
  112. package/dist/background/wake-rules.d.ts +66 -0
  113. package/dist/background/wake-rules.js +113 -0
  114. package/dist/background/wake.d.ts +30 -0
  115. package/dist/background/wake.js +63 -0
  116. package/dist/catalog/admin-catalog.controller.d.ts +136 -52
  117. package/dist/catalog/admin-catalog.controller.js +275 -65
  118. package/dist/catalog/admin-catalog.schemas.d.ts +82 -0
  119. package/dist/catalog/admin-catalog.schemas.js +99 -0
  120. package/dist/catalog/appearance.schemas.d.ts +10 -0
  121. package/dist/catalog/appearance.schemas.js +20 -0
  122. package/dist/catalog/appearance.service.d.ts +105 -0
  123. package/dist/catalog/appearance.service.js +306 -0
  124. package/dist/catalog/catalog-content.d.ts +122 -35
  125. package/dist/catalog/catalog-content.js +122 -14
  126. package/dist/catalog/catalog-files.d.ts +42 -0
  127. package/dist/catalog/catalog-files.js +89 -0
  128. package/dist/catalog/catalog-import.module.d.ts +7 -0
  129. package/dist/catalog/catalog-import.module.js +63 -0
  130. package/dist/catalog/catalog-items.d.ts +122 -7
  131. package/dist/catalog/catalog-items.js +301 -13
  132. package/dist/catalog/catalog-scope.service.d.ts +293 -0
  133. package/dist/catalog/catalog-scope.service.js +1236 -0
  134. package/dist/catalog/catalog.module.d.ts +7 -9
  135. package/dist/catalog/catalog.module.js +47 -31
  136. package/dist/catalog/catalog.service.d.ts +122 -31
  137. package/dist/catalog/catalog.service.js +177 -105
  138. package/dist/catalog/claude/agents.js +15 -10
  139. package/dist/catalog/claude/translate.js +3 -0
  140. package/dist/catalog/cli.d.ts +11 -1
  141. package/dist/catalog/cli.js +29 -1
  142. package/dist/catalog/component-promotion.d.ts +96 -0
  143. package/dist/catalog/component-promotion.js +395 -0
  144. package/dist/catalog/component-scope.controller.d.ts +102 -0
  145. package/dist/catalog/component-scope.controller.js +257 -0
  146. package/dist/catalog/component-scope.schemas.d.ts +118 -0
  147. package/dist/catalog/component-scope.schemas.js +97 -0
  148. package/dist/catalog/component-scope.service.d.ts +394 -0
  149. package/dist/catalog/component-scope.service.js +1133 -0
  150. package/dist/catalog/component-state.d.ts +207 -0
  151. package/dist/catalog/component-state.js +484 -0
  152. package/dist/catalog/git-source.d.ts +9 -1
  153. package/dist/catalog/git-source.js +29 -2
  154. package/dist/catalog/job-ids.d.ts +30 -0
  155. package/dist/catalog/job-ids.js +25 -0
  156. package/dist/catalog/marketplace-fetch.d.ts +1 -1
  157. package/dist/catalog/marketplace-icons.d.ts +64 -0
  158. package/dist/catalog/marketplace-icons.js +131 -0
  159. package/dist/catalog/marketplaces.controller.d.ts +50 -41
  160. package/dist/catalog/marketplaces.controller.js +130 -46
  161. package/dist/catalog/marketplaces.schemas.d.ts +48 -0
  162. package/dist/catalog/marketplaces.schemas.js +53 -0
  163. package/dist/catalog/marketplaces.service.d.ts +110 -17
  164. package/dist/catalog/marketplaces.service.js +337 -29
  165. package/dist/catalog/org-catalog.controller.d.ts +114 -62
  166. package/dist/catalog/org-catalog.controller.js +191 -98
  167. package/dist/catalog/org-catalog.schemas.d.ts +104 -0
  168. package/dist/catalog/org-catalog.schemas.js +107 -0
  169. package/dist/catalog/org-catalog.service.d.ts +72 -33
  170. package/dist/catalog/org-catalog.service.js +367 -158
  171. package/dist/catalog/org-extension-switch.d.ts +41 -0
  172. package/dist/catalog/org-extension-switch.js +115 -0
  173. package/dist/catalog/org-extension.controller.d.ts +133 -0
  174. package/dist/catalog/org-extension.controller.js +313 -0
  175. package/dist/catalog/org-extension.schemas.d.ts +15 -0
  176. package/dist/catalog/org-extension.schemas.js +22 -0
  177. package/dist/catalog/org-plugin-uploads.controller.d.ts +77 -0
  178. package/dist/catalog/org-plugin-uploads.controller.js +200 -0
  179. package/dist/catalog/org-plugin-uploads.d.ts +71 -0
  180. package/dist/catalog/org-plugin-uploads.js +122 -0
  181. package/dist/catalog/org-plugin-uploads.schemas.d.ts +20 -0
  182. package/dist/catalog/org-plugin-uploads.schemas.js +32 -0
  183. package/dist/catalog/owned-items.d.ts +188 -0
  184. package/dist/catalog/owned-items.js +808 -0
  185. package/dist/catalog/owned-plugin-cleanup.d.ts +56 -0
  186. package/dist/catalog/owned-plugin-cleanup.js +194 -0
  187. package/dist/catalog/ownership.d.ts +172 -0
  188. package/dist/catalog/ownership.js +326 -0
  189. package/dist/catalog/platform-components.d.ts +243 -0
  190. package/dist/catalog/platform-components.js +872 -0
  191. package/dist/catalog/platform-migration.d.ts +115 -0
  192. package/dist/catalog/platform-migration.js +583 -0
  193. package/dist/catalog/plugin-import.d.ts +254 -47
  194. package/dist/catalog/plugin-import.js +810 -112
  195. package/dist/catalog/plugin-install.d.ts +205 -42
  196. package/dist/catalog/plugin-install.js +828 -126
  197. package/dist/catalog/plugin-package.d.ts +43 -4
  198. package/dist/catalog/plugin-package.js +194 -7
  199. package/dist/catalog/plugin-upgrade.d.ts +308 -225
  200. package/dist/catalog/plugin-upgrade.js +1325 -1131
  201. package/dist/catalog/request-rules.d.ts +65 -0
  202. package/dist/catalog/request-rules.js +217 -0
  203. package/dist/catalog/requests.service.d.ts +194 -118
  204. package/dist/catalog/requests.service.js +530 -343
  205. package/dist/catalog/reserved-names.d.ts +8 -0
  206. package/dist/catalog/reserved-names.js +42 -0
  207. package/dist/catalog/scope-orgs.d.ts +21 -0
  208. package/dist/catalog/scope-orgs.js +67 -0
  209. package/dist/catalog/scope-state.d.ts +35 -0
  210. package/dist/catalog/scope-state.js +87 -0
  211. package/dist/catalog/scope-sync-workers.d.ts +7 -0
  212. package/dist/catalog/scope-sync-workers.js +29 -0
  213. package/dist/catalog/scope-sync.d.ts +176 -0
  214. package/dist/catalog/scope-sync.js +576 -0
  215. package/dist/catalog/scope.d.ts +42 -0
  216. package/dist/catalog/scope.js +42 -0
  217. package/dist/catalog/unshare.d.ts +22 -0
  218. package/dist/catalog/unshare.js +119 -0
  219. package/dist/channels/actions.js +10 -3
  220. package/dist/channels/cards.d.ts +36 -10
  221. package/dist/channels/cards.js +100 -25
  222. package/dist/channels/channels.module.js +13 -2
  223. package/dist/channels/channels.schemas.d.ts +41 -0
  224. package/dist/channels/channels.schemas.js +40 -0
  225. package/dist/channels/connections.controller.d.ts +46 -37
  226. package/dist/channels/connections.controller.js +76 -34
  227. package/dist/channels/connections.service.d.ts +102 -10
  228. package/dist/channels/connections.service.js +271 -24
  229. package/dist/channels/inbound.d.ts +11 -1
  230. package/dist/channels/inbound.js +87 -7
  231. package/dist/channels/outbound.d.ts +14 -1
  232. package/dist/channels/outbound.js +64 -15
  233. package/dist/channels/phrases.d.ts +33 -2
  234. package/dist/channels/phrases.js +29 -1
  235. package/dist/channels/supervisor.d.ts +2 -0
  236. package/dist/channels/supervisor.js +4 -0
  237. package/dist/channels/threads.d.ts +5 -0
  238. package/dist/channels/threads.js +8 -0
  239. package/dist/channels/webhook.d.ts +21 -1
  240. package/dist/channels/webhook.js +39 -4
  241. package/dist/client/client-access.service.d.ts +102 -0
  242. package/dist/client/client-access.service.js +303 -0
  243. package/dist/client/client-builds.service.d.ts +109 -0
  244. package/dist/client/client-builds.service.js +229 -0
  245. package/dist/client/client-delivery.controller.d.ts +25 -0
  246. package/dist/client/client-delivery.controller.js +66 -0
  247. package/dist/client/client-files.d.ts +48 -0
  248. package/dist/client/client-files.js +136 -0
  249. package/dist/client/client-reports.cron.d.ts +13 -0
  250. package/dist/client/client-reports.cron.js +42 -0
  251. package/dist/client/client-reports.service.d.ts +30 -0
  252. package/dist/client/client-reports.service.js +102 -0
  253. package/dist/client/client-sign-in.service.d.ts +21 -0
  254. package/dist/client/client-sign-in.service.js +49 -0
  255. package/dist/client/client.controller.d.ts +49 -0
  256. package/dist/client/client.controller.js +129 -0
  257. package/dist/client/client.module.d.ts +8 -0
  258. package/dist/client/client.module.js +28 -0
  259. package/dist/client/client.schemas.d.ts +61 -0
  260. package/dist/client/client.schemas.js +27 -0
  261. package/dist/config/docs.js +5 -1
  262. package/dist/config/schema.d.ts +35 -2
  263. package/dist/config/schema.js +216 -21
  264. package/dist/conversations/access.d.ts +6 -4
  265. package/dist/conversations/access.js +29 -5
  266. package/dist/conversations/agent-tree.d.ts +46 -0
  267. package/dist/conversations/agent-tree.js +92 -0
  268. package/dist/conversations/artifacts.d.ts +1 -1
  269. package/dist/conversations/artifacts.js +1 -1
  270. package/dist/conversations/attachments.service.d.ts +30 -0
  271. package/dist/conversations/attachments.service.js +130 -5
  272. package/dist/conversations/conversations.controller.d.ts +79 -44
  273. package/dist/conversations/conversations.controller.js +133 -82
  274. package/dist/conversations/conversations.module.d.ts +1 -1
  275. package/dist/conversations/conversations.module.js +10 -7
  276. package/dist/conversations/conversations.schemas.d.ts +52 -0
  277. package/dist/conversations/conversations.schemas.js +79 -0
  278. package/dist/conversations/conversations.service.d.ts +161 -13
  279. package/dist/conversations/conversations.service.js +329 -57
  280. package/dist/conversations/device-status.d.ts +24 -0
  281. package/dist/conversations/device-status.js +71 -0
  282. package/dist/conversations/event-log.d.ts +45 -9
  283. package/dist/conversations/event-log.js +113 -6
  284. package/dist/conversations/events.d.ts +255 -9
  285. package/dist/conversations/events.js +250 -34
  286. package/dist/conversations/message-context.d.ts +79 -0
  287. package/dist/conversations/message-context.js +145 -0
  288. package/dist/conversations/queue.d.ts +5 -2
  289. package/dist/conversations/queue.js +24 -4
  290. package/dist/conversations/queue.service.d.ts +2 -2
  291. package/dist/conversations/queue.service.js +21 -3
  292. package/dist/conversations/titles.d.ts +12 -3
  293. package/dist/conversations/titles.js +40 -16
  294. package/dist/conversations/tree.d.ts +17 -0
  295. package/dist/conversations/tree.js +42 -0
  296. package/dist/ctx/create-ctx.d.ts +48 -5
  297. package/dist/ctx/create-ctx.js +174 -34
  298. package/dist/db/kernel-schema.d.ts +668 -27
  299. package/dist/db/pool.d.ts +5 -0
  300. package/dist/db/pool.js +3 -0
  301. package/dist/devices/access.d.ts +66 -0
  302. package/dist/devices/access.js +113 -0
  303. package/dist/devices/conversation-devices.d.ts +75 -0
  304. package/dist/devices/conversation-devices.js +230 -0
  305. package/dist/devices/devices.controller.d.ts +36 -0
  306. package/dist/devices/devices.controller.js +124 -0
  307. package/dist/devices/devices.module.d.ts +8 -0
  308. package/dist/devices/devices.module.js +34 -0
  309. package/dist/devices/devices.schemas.d.ts +3 -0
  310. package/dist/devices/devices.schemas.js +14 -0
  311. package/dist/devices/devices.service.d.ts +251 -0
  312. package/dist/devices/devices.service.js +791 -0
  313. package/dist/devices/dto.d.ts +25 -0
  314. package/dist/devices/dto.js +12 -0
  315. package/dist/devices/label.d.ts +11 -0
  316. package/dist/devices/label.js +25 -0
  317. package/dist/devices/legacy-cleanup.job.d.ts +34 -0
  318. package/dist/devices/legacy-cleanup.job.js +141 -0
  319. package/dist/errors.d.ts +215 -3
  320. package/dist/errors.js +215 -3
  321. package/dist/evals/evals.module.js +11 -2
  322. package/dist/evals/evals.schemas.d.ts +110 -0
  323. package/dist/evals/evals.schemas.js +107 -0
  324. package/dist/evals/reconstruct.d.ts +18 -9
  325. package/dist/evals/reconstruct.js +36 -10
  326. package/dist/evals/recorded-tools.d.ts +37 -1
  327. package/dist/evals/recorded-tools.js +120 -10
  328. package/dist/evals/run-replay.d.ts +20 -3
  329. package/dist/evals/run-replay.js +78 -14
  330. package/dist/evals/runs.controller.d.ts +2 -57
  331. package/dist/evals/runs.controller.js +1 -42
  332. package/dist/evals/runs.service.d.ts +8 -7
  333. package/dist/evals/runs.service.js +45 -30
  334. package/dist/evals/sets.controller.d.ts +2 -28
  335. package/dist/evals/sets.controller.js +1 -31
  336. package/dist/evals/sets.service.d.ts +7 -7
  337. package/dist/evals/sets.service.js +23 -17
  338. package/dist/evals/snapshot.d.ts +3 -2
  339. package/dist/evals/snapshot.js +17 -4
  340. package/dist/evals/step-replay.d.ts +4 -6
  341. package/dist/evals/step-replay.js +16 -9
  342. package/dist/evals/trajectory.d.ts +5 -3
  343. package/dist/evals/trajectory.js +4 -1
  344. package/dist/evals/trajectory.service.d.ts +8 -3
  345. package/dist/evals/trajectory.service.js +26 -14
  346. package/dist/evals/worker.d.ts +5 -5
  347. package/dist/evals/worker.js +9 -3
  348. package/dist/extensions/admin-ops.d.ts +81 -14
  349. package/dist/extensions/admin-ops.js +181 -47
  350. package/dist/extensions/admin-view.d.ts +57 -10
  351. package/dist/extensions/admin-view.js +249 -27
  352. package/dist/extensions/approvals.d.ts +12 -2
  353. package/dist/extensions/blobs.d.ts +14 -1
  354. package/dist/extensions/blobs.js +49 -5
  355. package/dist/extensions/bootstrap.d.ts +85 -10
  356. package/dist/extensions/bootstrap.js +215 -36
  357. package/dist/extensions/cli.d.ts +12 -0
  358. package/dist/extensions/cli.js +11 -2
  359. package/dist/extensions/config-hash.d.ts +10 -0
  360. package/dist/extensions/config-hash.js +38 -0
  361. package/dist/extensions/config-issues.d.ts +13 -1
  362. package/dist/extensions/config-issues.js +22 -5
  363. package/dist/extensions/config-json-schema.d.ts +43 -7
  364. package/dist/extensions/config-json-schema.js +124 -58
  365. package/dist/extensions/deployment-config-store.d.ts +6 -0
  366. package/dist/extensions/deployment-config.d.ts +94 -9
  367. package/dist/extensions/deployment-config.js +255 -34
  368. package/dist/extensions/display-name.d.ts +22 -0
  369. package/dist/extensions/display-name.js +77 -0
  370. package/dist/extensions/effective-config.d.ts +133 -0
  371. package/dist/extensions/effective-config.js +379 -0
  372. package/dist/extensions/extensions.module.js +31 -12
  373. package/dist/extensions/guide-places.d.ts +68 -0
  374. package/dist/extensions/guide-places.js +152 -0
  375. package/dist/extensions/hooks.d.ts +37 -4
  376. package/dist/extensions/hooks.js +82 -16
  377. package/dist/extensions/host.d.ts +105 -12
  378. package/dist/extensions/host.js +372 -87
  379. package/dist/extensions/installs.d.ts +30 -9
  380. package/dist/extensions/installs.js +57 -16
  381. package/dist/extensions/instance.d.ts +17 -2
  382. package/dist/extensions/instance.js +21 -0
  383. package/dist/extensions/ledger.d.ts +1 -1
  384. package/dist/extensions/locks.d.ts +12 -0
  385. package/dist/extensions/locks.js +26 -0
  386. package/dist/extensions/org-config.d.ts +97 -7
  387. package/dist/extensions/org-config.js +215 -45
  388. package/dist/extensions/org-levels.d.ts +37 -0
  389. package/dist/extensions/org-levels.js +71 -0
  390. package/dist/extensions/org-overrides.d.ts +151 -0
  391. package/dist/extensions/org-overrides.js +524 -0
  392. package/dist/extensions/package.d.ts +18 -4
  393. package/dist/extensions/package.js +56 -3
  394. package/dist/extensions/permission-set.d.ts +35 -5
  395. package/dist/extensions/permission-set.js +36 -5
  396. package/dist/extensions/permission-view.d.ts +106 -13
  397. package/dist/extensions/permission-view.js +33 -15
  398. package/dist/extensions/plugin-guides.d.ts +282 -0
  399. package/dist/extensions/plugin-guides.js +554 -0
  400. package/dist/extensions/plugin-icons.d.ts +54 -0
  401. package/dist/extensions/plugin-icons.js +125 -0
  402. package/dist/extensions/plugin-items.d.ts +21 -0
  403. package/dist/extensions/plugin-items.js +42 -0
  404. package/dist/extensions/point-defaults.controller.d.ts +28 -0
  405. package/dist/extensions/point-defaults.controller.js +69 -0
  406. package/dist/extensions/point-defaults.d.ts +73 -0
  407. package/dist/extensions/point-defaults.js +236 -0
  408. package/dist/extensions/point-defaults.schemas.d.ts +9 -0
  409. package/dist/extensions/point-defaults.schemas.js +14 -0
  410. package/dist/extensions/registry.d.ts +1 -1
  411. package/dist/extensions/registry.js +2 -0
  412. package/dist/extensions/resolve.d.ts +51 -1
  413. package/dist/extensions/resolve.js +85 -3
  414. package/dist/extensions/single-provider.d.ts +92 -0
  415. package/dist/extensions/single-provider.js +180 -0
  416. package/dist/extensions/sources.d.ts +13 -2
  417. package/dist/extensions/sources.js +2 -0
  418. package/dist/extensions/state.module.d.ts +9 -0
  419. package/dist/extensions/state.module.js +46 -0
  420. package/dist/extensions/unavailable.d.ts +50 -0
  421. package/dist/extensions/unavailable.js +115 -0
  422. package/dist/files/previewers.controller.js +2 -3
  423. package/dist/files/previewers.d.ts +10 -3
  424. package/dist/files/previewers.js +40 -11
  425. package/dist/files/previewers.schemas.d.ts +10 -0
  426. package/dist/files/previewers.schemas.js +9 -0
  427. package/dist/http/api.module.js +76 -4
  428. package/dist/http/app.d.ts +11 -2
  429. package/dist/http/app.js +31 -5
  430. package/dist/http/gateway-routes.d.ts +7 -3
  431. package/dist/http/gateway-routes.js +6 -3
  432. package/dist/http/nest-logger.d.ts +6 -5
  433. package/dist/http/nest-logger.js +24 -10
  434. package/dist/http/plugin-dispatch.d.ts +4 -1
  435. package/dist/http/plugin-dispatch.js +14 -2
  436. package/dist/identity/accounts.d.ts +77 -31
  437. package/dist/identity/accounts.js +133 -52
  438. package/dist/identity/audit.d.ts +2 -1
  439. package/dist/identity/auth.controller.js +9 -5
  440. package/dist/identity/auth.guard.d.ts +13 -5
  441. package/dist/identity/auth.guard.js +35 -9
  442. package/dist/identity/cookies.d.ts +26 -5
  443. package/dist/identity/cookies.js +58 -6
  444. package/dist/identity/identity.module.d.ts +1 -1
  445. package/dist/identity/identity.module.js +7 -4
  446. package/dist/identity/initial-passwords.controller.d.ts +22 -0
  447. package/dist/identity/initial-passwords.controller.js +49 -0
  448. package/dist/identity/initial-passwords.d.ts +61 -0
  449. package/dist/identity/initial-passwords.job.d.ts +16 -0
  450. package/dist/identity/initial-passwords.job.js +46 -0
  451. package/dist/identity/initial-passwords.js +159 -0
  452. package/dist/identity/me.controller.d.ts +17 -1
  453. package/dist/identity/me.controller.js +45 -4
  454. package/dist/identity/me.schemas.d.ts +24 -0
  455. package/dist/identity/me.schemas.js +25 -0
  456. package/dist/identity/principal.d.ts +11 -3
  457. package/dist/identity/principal.js +11 -3
  458. package/dist/identity/sessions.d.ts +12 -0
  459. package/dist/identity/sessions.js +45 -0
  460. package/dist/identity/settings.d.ts +99 -12
  461. package/dist/identity/settings.js +234 -25
  462. package/dist/identity/{enterprise-admin.d.ts → super-admin.d.ts} +5 -5
  463. package/dist/identity/{enterprise-admin.js → super-admin.js} +24 -24
  464. package/dist/identity/write-actor.d.ts +11 -0
  465. package/dist/identity/write-actor.js +7 -0
  466. package/dist/inbox/inbox.module.d.ts +4 -1
  467. package/dist/inbox/inbox.module.js +7 -3
  468. package/dist/inbox/inbox.schemas.d.ts +8 -0
  469. package/dist/inbox/inbox.schemas.js +11 -0
  470. package/dist/inbox/inbox.service.d.ts +64 -4
  471. package/dist/inbox/inbox.service.js +74 -4
  472. package/dist/inbox/org-notices.d.ts +63 -0
  473. package/dist/inbox/org-notices.js +91 -0
  474. package/dist/inbox/platform-inbox.controller.d.ts +23 -0
  475. package/dist/inbox/platform-inbox.controller.js +58 -0
  476. package/dist/inbox/platform-inbox.service.d.ts +157 -0
  477. package/dist/inbox/platform-inbox.service.js +281 -0
  478. package/dist/inbox/platform-notices.d.ts +19 -0
  479. package/dist/inbox/platform-notices.js +9 -0
  480. package/dist/index.d.ts +6 -2
  481. package/dist/index.js +7 -1
  482. package/dist/infra/cli/kernel-cli.module.js +9 -1
  483. package/dist/infra/config/kernel-config.service.js +32 -1
  484. package/dist/infra/database/database.module.js +1 -0
  485. package/dist/infra/database/xact-lock.d.ts +1 -1
  486. package/dist/infra/database/xact-lock.js +1 -1
  487. package/dist/infra/events/kernel-events.d.ts +31 -3
  488. package/dist/infra/lifecycle/process-guards.js +4 -0
  489. package/dist/infra/lock/lock.service.d.ts +8 -0
  490. package/dist/infra/lock/lock.service.js +27 -0
  491. package/dist/infra/logging/logging.module.d.ts +4 -2
  492. package/dist/infra/logging/logging.module.js +24 -6
  493. package/dist/infra/presence/presence.module.d.ts +6 -0
  494. package/dist/infra/presence/presence.module.js +22 -0
  495. package/dist/infra/presence/replica-presence.d.ts +87 -0
  496. package/dist/infra/presence/replica-presence.js +189 -0
  497. package/dist/infra/queue/add-job-once.d.ts +14 -0
  498. package/dist/infra/queue/add-job-once.js +16 -0
  499. package/dist/infra/queue/redis-connection.d.ts +6 -0
  500. package/dist/infra/queue/redis-connection.js +7 -0
  501. package/dist/infra/redis/redis.module.js +6 -2
  502. package/dist/infra/throttler/named-throttlers.d.ts +12 -0
  503. package/dist/infra/throttler/named-throttlers.js +67 -0
  504. package/dist/infra/throttler/throttler.guard.js +1 -1
  505. package/dist/infra/tokens.d.ts +6 -1
  506. package/dist/infra/tokens.js +6 -1
  507. package/dist/kernel.module.js +15 -0
  508. package/dist/lifecycle/kernel-lifecycle.d.ts +9 -3
  509. package/dist/lifecycle/kernel-lifecycle.js +51 -11
  510. package/dist/local-devices/device-auth.controller.d.ts +42 -0
  511. package/dist/local-devices/device-auth.controller.js +116 -0
  512. package/dist/local-devices/device-auth.d.ts +119 -0
  513. package/dist/local-devices/device-auth.js +401 -0
  514. package/dist/local-devices/device-auth.module.d.ts +7 -0
  515. package/dist/local-devices/device-auth.module.js +25 -0
  516. package/dist/local-devices/device-routes.d.ts +36 -0
  517. package/dist/local-devices/device-routes.js +90 -0
  518. package/dist/local-devices/dto.d.ts +66 -0
  519. package/dist/local-devices/dto.js +44 -0
  520. package/dist/local-devices/keys.d.ts +25 -0
  521. package/dist/local-devices/keys.js +25 -0
  522. package/dist/local-devices/local-device-gateway.d.ts +134 -0
  523. package/dist/local-devices/local-device-gateway.js +542 -0
  524. package/dist/local-devices/local-device-provider.d.ts +89 -0
  525. package/dist/local-devices/local-device-provider.js +151 -0
  526. package/dist/local-devices/local-devices.module.d.ts +16 -0
  527. package/dist/local-devices/local-devices.module.js +44 -0
  528. package/dist/local-devices/machines.d.ts +118 -0
  529. package/dist/local-devices/machines.js +366 -0
  530. package/dist/local-devices/relay.d.ts +100 -0
  531. package/dist/local-devices/relay.js +373 -0
  532. package/dist/local-devices/targets.d.ts +28 -0
  533. package/dist/local-devices/targets.js +73 -0
  534. package/dist/log.d.ts +13 -1
  535. package/dist/log.js +93 -17
  536. package/dist/models/embeddings.d.ts +82 -0
  537. package/dist/models/embeddings.js +326 -0
  538. package/dist/models/enablement.controller.d.ts +40 -0
  539. package/dist/models/enablement.controller.js +74 -0
  540. package/dist/models/enablement.d.ts +101 -0
  541. package/dist/models/enablement.js +264 -0
  542. package/dist/models/models.module.d.ts +5 -1
  543. package/dist/models/models.module.js +16 -4
  544. package/dist/models/org-models.schemas.d.ts +8 -0
  545. package/dist/models/org-models.schemas.js +22 -0
  546. package/dist/models/prices.d.ts +8 -6
  547. package/dist/models/prices.js +11 -9
  548. package/dist/models/purposes.controller.d.ts +6 -4
  549. package/dist/models/purposes.controller.js +13 -7
  550. package/dist/models/purposes.d.ts +72 -14
  551. package/dist/models/purposes.js +115 -34
  552. package/dist/orgs/directory-sync.d.ts +14 -5
  553. package/dist/orgs/directory-sync.js +41 -17
  554. package/dist/orgs/offboarding.d.ts +12 -8
  555. package/dist/orgs/offboarding.js +54 -33
  556. package/dist/orgs/org-lock.d.ts +5 -0
  557. package/dist/orgs/org-lock.js +13 -0
  558. package/dist/orgs/org.guard.d.ts +10 -0
  559. package/dist/orgs/org.guard.js +43 -32
  560. package/dist/orgs/orgs.controller.d.ts +2 -5
  561. package/dist/orgs/orgs.controller.js +3 -6
  562. package/dist/orgs/orgs.module.js +3 -0
  563. package/dist/orgs/orgs.schemas.d.ts +8 -0
  564. package/dist/orgs/orgs.schemas.js +16 -0
  565. package/dist/orgs/orgs.service.d.ts +23 -8
  566. package/dist/orgs/orgs.service.js +38 -16
  567. package/dist/orgs/roles.d.ts +1 -1
  568. package/dist/orgs/roles.js +5 -1
  569. package/dist/orgs/settings.controller.d.ts +1 -1
  570. package/dist/orgs/settings.service.d.ts +66 -6
  571. package/dist/orgs/settings.service.js +89 -10
  572. package/dist/overrides.d.ts +16 -1
  573. package/dist/overrides.js +10 -0
  574. package/dist/platform/actor.d.ts +48 -0
  575. package/dist/platform/actor.js +100 -0
  576. package/dist/platform/agent-docs.d.ts +18 -0
  577. package/dist/platform/agent-docs.js +59 -0
  578. package/dist/platform/availability.d.ts +14 -0
  579. package/dist/platform/availability.js +43 -0
  580. package/dist/platform/errors.d.ts +28 -0
  581. package/dist/platform/errors.js +65 -0
  582. package/dist/platform/exclusions.d.ts +11 -0
  583. package/dist/platform/exclusions.js +774 -0
  584. package/dist/platform/method.d.ts +6 -0
  585. package/dist/platform/method.js +15 -0
  586. package/dist/platform/operation.d.ts +169 -0
  587. package/dist/platform/operation.js +102 -0
  588. package/dist/platform/ops/accounts.ops.d.ts +32 -0
  589. package/dist/platform/ops/accounts.ops.js +291 -0
  590. package/dist/platform/ops/admin-items.ops.d.ts +37 -0
  591. package/dist/platform/ops/admin-items.ops.js +278 -0
  592. package/dist/platform/ops/admin.ops.d.ts +38 -0
  593. package/dist/platform/ops/admin.ops.js +497 -0
  594. package/dist/platform/ops/agent-skills.ops.d.ts +50 -0
  595. package/dist/platform/ops/agent-skills.ops.js +509 -0
  596. package/dist/platform/ops/agent-templates.ops.d.ts +17 -0
  597. package/dist/platform/ops/agent-templates.ops.js +272 -0
  598. package/dist/platform/ops/agents.ops.d.ts +37 -0
  599. package/dist/platform/ops/agents.ops.js +730 -0
  600. package/dist/platform/ops/approvals.ops.d.ts +30 -0
  601. package/dist/platform/ops/approvals.ops.js +116 -0
  602. package/dist/platform/ops/background.ops.d.ts +14 -0
  603. package/dist/platform/ops/background.ops.js +134 -0
  604. package/dist/platform/ops/catalog-admin.ops.d.ts +92 -0
  605. package/dist/platform/ops/catalog-admin.ops.js +682 -0
  606. package/dist/platform/ops/channels.ops.d.ts +16 -0
  607. package/dist/platform/ops/channels.ops.js +195 -0
  608. package/dist/platform/ops/components.ops.d.ts +46 -0
  609. package/dist/platform/ops/components.ops.js +854 -0
  610. package/dist/platform/ops/connectors.ops.d.ts +17 -0
  611. package/dist/platform/ops/connectors.ops.js +190 -0
  612. package/dist/platform/ops/conversations.ops.d.ts +30 -0
  613. package/dist/platform/ops/conversations.ops.js +470 -0
  614. package/dist/platform/ops/devices.ops.d.ts +26 -0
  615. package/dist/platform/ops/devices.ops.js +311 -0
  616. package/dist/platform/ops/errors.d.ts +16 -0
  617. package/dist/platform/ops/errors.js +30 -0
  618. package/dist/platform/ops/evals.ops.d.ts +28 -0
  619. package/dist/platform/ops/evals.ops.js +783 -0
  620. package/dist/platform/ops/extensions-admin.ops.d.ts +25 -0
  621. package/dist/platform/ops/extensions-admin.ops.js +372 -0
  622. package/dist/platform/ops/extensions.ops.d.ts +25 -0
  623. package/dist/platform/ops/extensions.ops.js +347 -0
  624. package/dist/platform/ops/inbox.ops.d.ts +25 -0
  625. package/dist/platform/ops/inbox.ops.js +381 -0
  626. package/dist/platform/ops/marketplaces.ops.d.ts +22 -0
  627. package/dist/platform/ops/marketplaces.ops.js +466 -0
  628. package/dist/platform/ops/models.ops.d.ts +25 -0
  629. package/dist/platform/ops/models.ops.js +232 -0
  630. package/dist/platform/ops/org-plugins.ops.d.ts +35 -0
  631. package/dist/platform/ops/org-plugins.ops.js +388 -0
  632. package/dist/platform/ops/org-settings.ops.d.ts +18 -0
  633. package/dist/platform/ops/org-settings.ops.js +127 -0
  634. package/dist/platform/ops/orgs.ops.d.ts +28 -0
  635. package/dist/platform/ops/orgs.ops.js +298 -0
  636. package/dist/platform/ops/other-orgs.d.ts +20 -0
  637. package/dist/platform/ops/other-orgs.js +72 -0
  638. package/dist/platform/ops/paging.d.ts +14 -0
  639. package/dist/platform/ops/paging.js +20 -0
  640. package/dist/platform/ops/platform.ops.d.ts +30 -0
  641. package/dist/platform/ops/platform.ops.js +231 -0
  642. package/dist/platform/ops/plugins.ops.d.ts +35 -0
  643. package/dist/platform/ops/plugins.ops.js +476 -0
  644. package/dist/platform/ops/previewers.ops.d.ts +14 -0
  645. package/dist/platform/ops/previewers.ops.js +109 -0
  646. package/dist/platform/ops/requests.ops.d.ts +14 -0
  647. package/dist/platform/ops/requests.ops.js +191 -0
  648. package/dist/platform/ops/role.d.ts +4 -0
  649. package/dist/platform/ops/role.js +10 -0
  650. package/dist/platform/ops/setup.ops.d.ts +24 -0
  651. package/dist/platform/ops/setup.ops.js +212 -0
  652. package/dist/platform/ops/skills.ops.d.ts +17 -0
  653. package/dist/platform/ops/skills.ops.js +160 -0
  654. package/dist/platform/ops/summary.d.ts +10 -0
  655. package/dist/platform/ops/summary.js +18 -0
  656. package/dist/platform/ops/themes.ops.d.ts +14 -0
  657. package/dist/platform/ops/themes.ops.js +47 -0
  658. package/dist/platform/ops/ui.ops.d.ts +8 -0
  659. package/dist/platform/ops/ui.ops.js +41 -0
  660. package/dist/platform/ops/unavailable.d.ts +23 -0
  661. package/dist/platform/ops/unavailable.js +118 -0
  662. package/dist/platform/parity.d.ts +33 -0
  663. package/dist/platform/parity.js +272 -0
  664. package/dist/platform/platform-ops.module.d.ts +43 -0
  665. package/dist/platform/platform-ops.module.js +142 -0
  666. package/dist/platform/platform.module.d.ts +8 -0
  667. package/dist/platform/platform.module.js +25 -0
  668. package/dist/platform/registry.d.ts +30 -0
  669. package/dist/platform/registry.js +111 -0
  670. package/dist/platform/route-schemas.d.ts +18 -0
  671. package/dist/platform/route-schemas.js +85 -0
  672. package/dist/roles/gateway-role.d.ts +18 -3
  673. package/dist/roles/gateway-role.js +33 -5
  674. package/dist/roles/gateway.module.d.ts +2 -1
  675. package/dist/roles/gateway.module.js +6 -3
  676. package/dist/roles/worker-role.d.ts +6 -4
  677. package/dist/roles/worker-role.js +14 -7
  678. package/dist/roles/worker.module.d.ts +1 -1
  679. package/dist/roles/worker.module.js +21 -1
  680. package/dist/runtime/context/build.d.ts +21 -13
  681. package/dist/runtime/context/build.js +106 -29
  682. package/dist/runtime/context/claude-tools.d.ts +4 -1
  683. package/dist/runtime/context/claude-tools.js +13 -12
  684. package/dist/runtime/context/compaction.js +24 -1
  685. package/dist/runtime/context/device-paths.d.ts +40 -0
  686. package/dist/runtime/context/device-paths.js +48 -0
  687. package/dist/runtime/context/legacy-text.d.ts +22 -0
  688. package/dist/runtime/context/legacy-text.js +37 -0
  689. package/dist/runtime/context/reminders.d.ts +2 -0
  690. package/dist/runtime/context/reminders.js +2 -0
  691. package/dist/runtime/context/run-context.d.ts +65 -0
  692. package/dist/runtime/context/run-context.js +215 -0
  693. package/dist/runtime/context/skills.d.ts +29 -11
  694. package/dist/runtime/context/skills.js +46 -32
  695. package/dist/runtime/context/tool-changes.d.ts +27 -0
  696. package/dist/runtime/context/tool-changes.js +60 -0
  697. package/dist/runtime/hook-calls.d.ts +8 -1
  698. package/dist/runtime/hook-calls.js +40 -7
  699. package/dist/runtime/langgraph-loop.d.ts +3 -1
  700. package/dist/runtime/langgraph-loop.js +36 -17
  701. package/dist/runtime/loop.d.ts +35 -6
  702. package/dist/runtime/maintenance.d.ts +9 -4
  703. package/dist/runtime/maintenance.js +35 -8
  704. package/dist/runtime/model-call.d.ts +54 -11
  705. package/dist/runtime/model-call.js +105 -28
  706. package/dist/runtime/providers.d.ts +149 -29
  707. package/dist/runtime/providers.js +332 -63
  708. package/dist/runtime/run-context.service.d.ts +65 -0
  709. package/dist/runtime/run-context.service.js +236 -0
  710. package/dist/runtime/run-control.d.ts +11 -1
  711. package/dist/runtime/run-control.js +12 -0
  712. package/dist/runtime/run-drafts.d.ts +85 -0
  713. package/dist/runtime/run-drafts.js +230 -0
  714. package/dist/runtime/run-finish.d.ts +1 -1
  715. package/dist/runtime/run-jobs.d.ts +3 -5
  716. package/dist/runtime/run-jobs.js +7 -9
  717. package/dist/runtime/run-queue.d.ts +62 -5
  718. package/dist/runtime/run-queue.js +313 -40
  719. package/dist/runtime/run-worker.d.ts +19 -8
  720. package/dist/runtime/run-worker.js +105 -44
  721. package/dist/runtime/runtime.module.js +13 -3
  722. package/dist/runtime/step-log.d.ts +15 -4
  723. package/dist/runtime/step-log.js +24 -7
  724. package/dist/runtime/stream.controller.d.ts +23 -1
  725. package/dist/runtime/stream.controller.js +60 -3
  726. package/dist/runtime/stream.d.ts +4 -1
  727. package/dist/runtime/stream.js +27 -3
  728. package/dist/runtime/subagents/child.d.ts +55 -7
  729. package/dist/runtime/subagents/child.js +105 -7
  730. package/dist/runtime/subagents/definition.d.ts +31 -26
  731. package/dist/runtime/subagents/definition.js +89 -142
  732. package/dist/runtime/subagents/deliveries.d.ts +71 -0
  733. package/dist/runtime/subagents/deliveries.js +228 -0
  734. package/dist/runtime/subagents/dispatch.d.ts +116 -27
  735. package/dist/runtime/subagents/dispatch.js +213 -142
  736. package/dist/runtime/subagents/limits.d.ts +24 -5
  737. package/dist/runtime/subagents/limits.js +40 -6
  738. package/dist/runtime/subagents/messages.d.ts +95 -0
  739. package/dist/runtime/subagents/messages.js +328 -0
  740. package/dist/runtime/subagents/org-agents.js +2 -1
  741. package/dist/runtime/subagents/preamble.d.ts +4 -4
  742. package/dist/runtime/subagents/preamble.js +9 -7
  743. package/dist/runtime/subagents/progress.d.ts +8 -6
  744. package/dist/runtime/subagents/progress.js +11 -6
  745. package/dist/runtime/subagents/render.d.ts +30 -0
  746. package/dist/runtime/subagents/render.js +53 -0
  747. package/dist/runtime/subagents/roster.d.ts +25 -8
  748. package/dist/runtime/subagents/roster.js +48 -12
  749. package/dist/runtime/subagents/skill-fork.d.ts +4 -3
  750. package/dist/runtime/subagents/skill-fork.js +9 -5
  751. package/dist/runtime/subagents/status.d.ts +14 -0
  752. package/dist/runtime/subagents/status.js +23 -0
  753. package/dist/runtime/subagents/subagents.service.d.ts +9 -6
  754. package/dist/runtime/subagents/subagents.service.js +13 -8
  755. package/dist/runtime/usage-report-jobs.d.ts +88 -0
  756. package/dist/runtime/usage-report-jobs.js +158 -0
  757. package/dist/runtime/usage-report.d.ts +35 -39
  758. package/dist/runtime/usage-report.js +171 -97
  759. package/dist/runtime/waits.d.ts +148 -39
  760. package/dist/runtime/waits.js +426 -112
  761. package/dist/sandbox/jobs.d.ts +40 -13
  762. package/dist/sandbox/jobs.js +57 -20
  763. package/dist/sandbox/leases.d.ts +37 -54
  764. package/dist/sandbox/leases.js +71 -115
  765. package/dist/sandbox/providers.d.ts +34 -7
  766. package/dist/sandbox/providers.js +54 -9
  767. package/dist/sandbox/sandbox-file-reader.d.ts +35 -0
  768. package/dist/sandbox/sandbox-file-reader.js +98 -0
  769. package/dist/sandbox/sandbox.module.d.ts +3 -2
  770. package/dist/sandbox/sandbox.module.js +10 -4
  771. package/dist/sandbox/sandbox.service.d.ts +345 -132
  772. package/dist/sandbox/sandbox.service.js +883 -399
  773. package/dist/sandbox/unreachable.d.ts +30 -0
  774. package/dist/sandbox/unreachable.js +108 -0
  775. package/dist/setup/kernel-checks.d.ts +91 -0
  776. package/dist/setup/kernel-checks.js +295 -0
  777. package/dist/setup/oauth-token-probe.d.ts +47 -0
  778. package/dist/setup/oauth-token-probe.js +108 -0
  779. package/dist/setup/redact-check.d.ts +18 -0
  780. package/dist/setup/redact-check.js +46 -0
  781. package/dist/setup/setup-check-registry.d.ts +86 -0
  782. package/dist/setup/setup-check-registry.js +75 -0
  783. package/dist/setup/setup-checks.controller.d.ts +28 -0
  784. package/dist/setup/setup-checks.controller.js +78 -0
  785. package/dist/setup/setup-checks.schemas.d.ts +38 -0
  786. package/dist/setup/setup-checks.schemas.js +43 -0
  787. package/dist/setup/setup-checks.service.d.ts +144 -0
  788. package/dist/setup/setup-checks.service.js +683 -0
  789. package/dist/setup/setup-guides.controller.d.ts +18 -0
  790. package/dist/setup/setup-guides.controller.js +48 -0
  791. package/dist/setup/setup-guides.schemas.d.ts +10 -0
  792. package/dist/setup/setup-guides.schemas.js +6 -0
  793. package/dist/setup/setup-guides.service.d.ts +126 -0
  794. package/dist/setup/setup-guides.service.js +315 -0
  795. package/dist/setup/setup.module.d.ts +8 -0
  796. package/dist/setup/setup.module.js +31 -0
  797. package/dist/skills/agent-skills.controller.d.ts +48 -0
  798. package/dist/skills/agent-skills.controller.js +131 -0
  799. package/dist/skills/agent-skills.service.d.ts +262 -0
  800. package/dist/skills/agent-skills.service.js +996 -0
  801. package/dist/skills/catalog.d.ts +14 -11
  802. package/dist/skills/catalog.js +32 -50
  803. package/dist/skills/changes.controller.d.ts +12 -22
  804. package/dist/skills/changes.controller.js +27 -56
  805. package/dist/skills/changes.service.d.ts +69 -115
  806. package/dist/skills/changes.service.js +249 -598
  807. package/dist/skills/conversation-catalog.d.ts +53 -0
  808. package/dist/skills/conversation-catalog.js +149 -0
  809. package/dist/skills/invocable.controller.d.ts +1 -1
  810. package/dist/skills/invocable.controller.js +2 -2
  811. package/dist/skills/invocation-keys.d.ts +1 -1
  812. package/dist/skills/invocation-keys.js +1 -1
  813. package/dist/skills/invoke.d.ts +3 -3
  814. package/dist/skills/invoke.js +21 -8
  815. package/dist/skills/package.d.ts +15 -1
  816. package/dist/skills/package.js +14 -1
  817. package/dist/skills/skills.controller.d.ts +32 -6
  818. package/dist/skills/skills.controller.js +64 -11
  819. package/dist/skills/skills.module.js +25 -3
  820. package/dist/skills/skills.schemas.d.ts +44 -0
  821. package/dist/skills/skills.schemas.js +68 -0
  822. package/dist/skills/skills.service.d.ts +123 -26
  823. package/dist/skills/skills.service.js +493 -76
  824. package/dist/skills/usable.d.ts +82 -0
  825. package/dist/skills/usable.js +388 -0
  826. package/dist/themes/render-css.d.ts +13 -0
  827. package/dist/themes/render-css.js +135 -0
  828. package/dist/themes/theme-delivery.service.d.ts +36 -0
  829. package/dist/themes/theme-delivery.service.js +116 -0
  830. package/dist/themes/theme-state.d.ts +116 -0
  831. package/dist/themes/theme-state.js +221 -0
  832. package/dist/themes/theme-usage.d.ts +61 -0
  833. package/dist/themes/theme-usage.js +98 -0
  834. package/dist/themes/themes-public.controller.d.ts +33 -0
  835. package/dist/themes/themes-public.controller.js +98 -0
  836. package/dist/themes/themes.controller.d.ts +13 -0
  837. package/dist/themes/themes.controller.js +38 -0
  838. package/dist/themes/themes.module.d.ts +3 -0
  839. package/dist/themes/themes.module.js +21 -0
  840. package/dist/themes/themes.schemas.d.ts +3 -0
  841. package/dist/themes/themes.schemas.js +2 -0
  842. package/dist/themes/themes.service.d.ts +50 -0
  843. package/dist/themes/themes.service.js +99 -0
  844. package/dist/time-zone.d.ts +5 -0
  845. package/dist/time-zone.js +19 -0
  846. package/dist/tools/admin-connectors.d.ts +69 -0
  847. package/dist/tools/admin-connectors.js +135 -0
  848. package/dist/tools/approvals.controller.js +2 -3
  849. package/dist/tools/approvals.schemas.d.ts +21 -0
  850. package/dist/tools/approvals.schemas.js +15 -0
  851. package/dist/tools/approvals.service.d.ts +26 -2
  852. package/dist/tools/approvals.service.js +44 -5
  853. package/dist/tools/builtin-names.d.ts +104 -0
  854. package/dist/tools/builtin-names.js +164 -0
  855. package/dist/tools/builtins/agent.d.ts +27 -25
  856. package/dist/tools/builtins/agent.js +66 -63
  857. package/dist/tools/builtins/ask-user.d.ts +1 -1
  858. package/dist/tools/builtins/ask-user.js +5 -4
  859. package/dist/tools/builtins/builtin-tools.d.ts +23 -4
  860. package/dist/tools/builtins/builtin-tools.js +78 -12
  861. package/dist/tools/builtins/current-time.d.ts +26 -0
  862. package/dist/tools/builtins/current-time.js +99 -0
  863. package/dist/tools/builtins/handback.d.ts +28 -0
  864. package/dist/tools/builtins/handback.js +53 -0
  865. package/dist/tools/builtins/platform.d.ts +51 -0
  866. package/dist/tools/builtins/platform.js +451 -0
  867. package/dist/tools/builtins/read-tool-output.d.ts +1 -1
  868. package/dist/tools/builtins/read-tool-output.js +2 -2
  869. package/dist/tools/builtins/sandbox/bash.d.ts +5 -5
  870. package/dist/tools/builtins/sandbox/bash.js +291 -39
  871. package/dist/tools/builtins/sandbox/common.d.ts +135 -36
  872. package/dist/tools/builtins/sandbox/common.js +222 -62
  873. package/dist/tools/builtins/sandbox/deliver.d.ts +1 -1
  874. package/dist/tools/builtins/sandbox/deliver.js +19 -16
  875. package/dist/tools/builtins/sandbox/edit.d.ts +1 -1
  876. package/dist/tools/builtins/sandbox/edit.js +64 -50
  877. package/dist/tools/builtins/sandbox/file-state.d.ts +34 -0
  878. package/dist/tools/builtins/sandbox/file-state.js +34 -0
  879. package/dist/tools/builtins/sandbox/glob-match.d.ts +1 -1
  880. package/dist/tools/builtins/sandbox/glob-match.js +1 -1
  881. package/dist/tools/builtins/sandbox/glob.d.ts +1 -1
  882. package/dist/tools/builtins/sandbox/glob.js +17 -12
  883. package/dist/tools/builtins/sandbox/grep.d.ts +7 -4
  884. package/dist/tools/builtins/sandbox/grep.js +153 -34
  885. package/dist/tools/builtins/sandbox/index.d.ts +9 -5
  886. package/dist/tools/builtins/sandbox/index.js +13 -5
  887. package/dist/tools/builtins/sandbox/read.d.ts +2 -2
  888. package/dist/tools/builtins/sandbox/read.js +29 -19
  889. package/dist/tools/builtins/sandbox/task-output.d.ts +79 -0
  890. package/dist/tools/builtins/sandbox/task-output.js +334 -0
  891. package/dist/tools/builtins/sandbox/task-stop.d.ts +10 -0
  892. package/dist/tools/builtins/sandbox/task-stop.js +113 -0
  893. package/dist/tools/builtins/sandbox/write.d.ts +1 -1
  894. package/dist/tools/builtins/sandbox/write.js +51 -44
  895. package/dist/tools/builtins/send-message.d.ts +56 -0
  896. package/dist/tools/builtins/send-message.js +100 -0
  897. package/dist/tools/builtins/skill-load.d.ts +29 -18
  898. package/dist/tools/builtins/skill-load.js +125 -73
  899. package/dist/tools/builtins/tool-search.d.ts +13 -9
  900. package/dist/tools/builtins/tool-search.js +25 -14
  901. package/dist/tools/builtins/web/errors.d.ts +8 -0
  902. package/dist/tools/builtins/web/errors.js +53 -0
  903. package/dist/tools/builtins/web/extract.d.ts +62 -0
  904. package/dist/tools/builtins/web/extract.js +271 -0
  905. package/dist/tools/builtins/web/fetch.d.ts +55 -0
  906. package/dist/tools/builtins/web/fetch.js +175 -0
  907. package/dist/tools/builtins/web/index.d.ts +13 -0
  908. package/dist/tools/builtins/web/index.js +12 -0
  909. package/dist/tools/builtins/web/page-cache.d.ts +25 -0
  910. package/dist/tools/builtins/web/page-cache.js +77 -0
  911. package/dist/tools/builtins/web/search.d.ts +25 -0
  912. package/dist/tools/builtins/web/search.js +210 -0
  913. package/dist/tools/builtins/web/url.d.ts +17 -0
  914. package/dist/tools/builtins/web/url.js +43 -0
  915. package/dist/tools/connector-account-policies.d.ts +51 -0
  916. package/dist/tools/connector-account-policies.js +165 -0
  917. package/dist/tools/connectors.controller.d.ts +74 -9
  918. package/dist/tools/connectors.controller.js +133 -16
  919. package/dist/tools/connectors.schemas.d.ts +27 -0
  920. package/dist/tools/connectors.schemas.js +34 -0
  921. package/dist/tools/connectors.service.d.ts +101 -8
  922. package/dist/tools/connectors.service.js +266 -28
  923. package/dist/tools/credentials.d.ts +23 -0
  924. package/dist/tools/credentials.js +90 -1
  925. package/dist/tools/display-names.d.ts +9 -0
  926. package/dist/tools/display-names.js +24 -0
  927. package/dist/tools/drift.js +5 -5
  928. package/dist/tools/elicitation.js +1 -1
  929. package/dist/tools/extension-tools.controller.d.ts +14 -0
  930. package/dist/tools/extension-tools.controller.js +37 -0
  931. package/dist/tools/info.d.ts +61 -4
  932. package/dist/tools/info.js +119 -33
  933. package/dist/tools/legacy-data.d.ts +34 -0
  934. package/dist/tools/legacy-data.js +76 -0
  935. package/dist/tools/legacy-keys.d.ts +51 -0
  936. package/dist/tools/legacy-keys.js +114 -0
  937. package/dist/tools/naming.d.ts +1 -5
  938. package/dist/tools/naming.js +1 -7
  939. package/dist/tools/oauth/flow-paths.d.ts +1 -1
  940. package/dist/tools/oauth/flow-paths.js +1 -1
  941. package/dist/tools/oauth/flow.js +1 -1
  942. package/dist/tools/oauth/tokens.d.ts +54 -7
  943. package/dist/tools/oauth/tokens.js +87 -17
  944. package/dist/tools/org-tool-switches.d.ts +89 -0
  945. package/dist/tools/org-tool-switches.js +201 -0
  946. package/dist/tools/outputs.js +1 -1
  947. package/dist/tools/pipeline.d.ts +67 -47
  948. package/dist/tools/pipeline.js +319 -380
  949. package/dist/tools/policy.d.ts +30 -23
  950. package/dist/tools/policy.js +142 -64
  951. package/dist/tools/questions.controller.d.ts +1 -1
  952. package/dist/tools/questions.controller.js +1 -1
  953. package/dist/tools/questions.service.d.ts +23 -2
  954. package/dist/tools/questions.service.js +104 -2
  955. package/dist/tools/registry.d.ts +189 -68
  956. package/dist/tools/registry.js +318 -236
  957. package/dist/tools/resources.d.ts +1 -1
  958. package/dist/tools/resources.js +1 -1
  959. package/dist/tools/tools.module.js +31 -3
  960. package/dist/tools/validate.js +1 -1
  961. package/dist/ui/admin-ui.controller.d.ts +56 -0
  962. package/dist/ui/admin-ui.controller.js +192 -0
  963. package/dist/ui/arrangement.d.ts +65 -0
  964. package/dist/ui/arrangement.js +171 -0
  965. package/dist/ui/embed-token.d.ts +2 -2
  966. package/dist/ui/embed-token.js +30 -5
  967. package/dist/ui/registry.d.ts +42 -17
  968. package/dist/ui/registry.js +46 -14
  969. package/dist/ui/slots.controller.d.ts +11 -0
  970. package/dist/ui/slots.controller.js +25 -0
  971. package/dist/ui/ui-stream.d.ts +20 -3
  972. package/dist/ui/ui-stream.js +25 -7
  973. package/dist/ui/ui.schemas.d.ts +70 -0
  974. package/dist/ui/ui.schemas.js +65 -0
  975. package/dist/ui/views.controller.d.ts +35 -49
  976. package/dist/ui/views.controller.js +48 -70
  977. package/dist/ui/views.d.ts +112 -18
  978. package/dist/ui/views.js +254 -47
  979. package/package.json +6 -3
  980. package/src/migrations/0063_tool_keys_claude_code.sql +220 -0
  981. package/src/migrations/0064_account_last_org.sql +7 -0
  982. package/src/migrations/0065_conversation_archive.sql +8 -0
  983. package/src/migrations/0066_extension_display_name.sql +4 -0
  984. package/src/migrations/0067_agent_profiles.sql +20 -0
  985. package/src/migrations/0068_agent_avatar_uploads.sql +7 -0
  986. package/src/migrations/0069_attachments_agent_idx.sql +3 -0
  987. package/src/migrations/0070_background_tasks.sql +37 -0
  988. package/src/migrations/0071_background_tasks_reserve.sql +6 -0
  989. package/src/migrations/0072_background_tasks_stopping.sql +5 -0
  990. package/src/migrations/0073_org_extension_point_defaults.sql +11 -0
  991. package/src/migrations/0074_subagent_tree.sql +50 -0
  992. package/src/migrations/0075_plugin_scope.sql +61 -0
  993. package/src/migrations/0076_skills_created_by_nullable.sql +6 -0
  994. package/src/migrations/0077_scope_requests.sql +52 -0
  995. package/src/migrations/0078_scope_grant_switches.sql +18 -0
  996. package/src/migrations/0079_scope_live_install_switches.sql +19 -0
  997. package/src/migrations/0080_rename_enterprise_admin.sql +18 -0
  998. package/src/migrations/0081_platform_components.sql +129 -0
  999. package/src/migrations/0082_platform_migration.sql +33 -0
  1000. package/src/migrations/0083_plugin_scope_sync_failures.sql +15 -0
  1001. package/src/migrations/0084_org_owned_items.sql +85 -0
  1002. package/src/migrations/0085_agent_templates_phase4.sql +45 -0
  1003. package/src/migrations/0086_org_layering.sql +30 -0
  1004. package/src/migrations/0087_approval_summary.sql +6 -0
  1005. package/src/migrations/0088_environments.sql +80 -0
  1006. package/src/migrations/0089_model_kinds_usage.sql +38 -0
  1007. package/src/migrations/0090_initial_passwords.sql +27 -0
  1008. package/src/migrations/0091_account_time_zone.sql +4 -0
  1009. package/src/migrations/0092_tools_default_on.sql +27 -0
  1010. package/src/migrations/0093_connected_environments.sql +37 -0
  1011. package/src/migrations/0094_environment_paths_idx.sql +7 -0
  1012. package/src/migrations/0095_environment_files_resets.sql +5 -0
  1013. package/src/migrations/0096_environment_demoted_default.sql +18 -0
  1014. package/src/migrations/0097_extension_installs_enabled_at.sql +16 -0
  1015. package/src/migrations/0098_single_provider_running_first.sql +41 -0
  1016. package/src/migrations/0099_channel_connection_guide_ack.sql +6 -0
  1017. package/src/migrations/0100_catalog_files.sql +13 -0
  1018. package/src/migrations/0101_marketplace_icons.sql +32 -0
  1019. package/src/migrations/0102_themes.sql +64 -0
  1020. package/src/migrations/0103_ui_theme_setting.sql +7 -0
  1021. package/src/migrations/0104_connector_tool_account_policies.sql +16 -0
  1022. package/src/migrations/0105_devices_rename.sql +136 -0
  1023. package/src/migrations/0106_setup_guides_v2.sql +10 -0
  1024. package/src/migrations/0107_extension_client_builds.sql +50 -0
  1025. package/src/migrations/0108_question_skipped.sql +6 -0
  1026. package/src/migrations/0109_audit_platform_idx.sql +5 -0
  1027. package/src/migrations/0110_usage_time_idx.sql +8 -0
  1028. package/src/migrations/0111_agent_skill_sharing.sql +22 -0
  1029. package/src/migrations/0112_skill_share_requests.sql +4 -0
  1030. package/dist/catalog/upgrade-targets.d.ts +0 -56
  1031. package/dist/catalog/upgrade-targets.js +0 -90
  1032. package/dist/conversations/sandbox-status.d.ts +0 -24
  1033. package/dist/conversations/sandbox-status.js +0 -52
  1034. package/dist/extensions/org-config.controller.d.ts +0 -24
  1035. package/dist/extensions/org-config.controller.js +0 -62
  1036. package/dist/tools/builtins/sandbox/names.d.ts +0 -7
  1037. package/dist/tools/builtins/sandbox/names.js +0 -20
  1038. package/dist/tools/builtins/skill-write.d.ts +0 -59
  1039. package/dist/tools/builtins/skill-write.js +0 -244
@@ -0,0 +1,41 @@
1
+ -- A deployment that already has two enabled providers of one single-provider extension point
2
+ -- (sandbox, object-store, secret-store, config-source; enabled before the second enable was
3
+ -- refused) loads the one with the earliest `enabled_at` (0097). 0097 backfilled it from the audit
4
+ -- or the install time, which can name a provider other than the one the replicas run now: the
5
+ -- rolling deploy would switch the provider. Prefer what is running: of the enabled providers of a
6
+ -- contested point, the one with a `loaded` replica status row (the most recent heartbeat) gets an
7
+ -- `enabled_at` just before every other provider of that point. A point with no loaded provider
8
+ -- keeps the 0097 values. Idempotent: once the running provider is the earliest, nothing matches.
9
+ WITH provided AS (
10
+ SELECT i.name, split_part(p.ref, '@', 1) AS point, i.enabled_at
11
+ FROM extension_installs i
12
+ JOIN extension_packages k ON k.sha256 = i.sha256
13
+ CROSS JOIN LATERAL jsonb_array_elements_text(
14
+ CASE WHEN jsonb_typeof(k.section -> 'manifest' -> 'provides') = 'array'
15
+ THEN k.section -> 'manifest' -> 'provides' ELSE '[]'::jsonb END) AS p(ref)
16
+ WHERE i.desired_state = 'enabled'
17
+ AND split_part(p.ref, '@', 1) IN ('sandbox', 'object-store', 'secret-store', 'config-source')
18
+ ),
19
+ contested AS (
20
+ SELECT point FROM provided GROUP BY point HAVING count(DISTINCT name) > 1
21
+ ),
22
+ running AS (
23
+ SELECT DISTINCT ON (pr.point) pr.point, pr.name
24
+ FROM provided pr
25
+ JOIN contested c ON c.point = pr.point
26
+ JOIN extension_replica_status s
27
+ ON s.plugin = pr.name AND s.source = 'install' AND s.state = 'loaded'
28
+ ORDER BY pr.point, s.heartbeat_at DESC, pr.name
29
+ ),
30
+ target AS (
31
+ SELECT r.name, min(o.enabled_at) AS others_first
32
+ FROM running r
33
+ JOIN provided o ON o.point = r.point AND o.name <> r.name
34
+ GROUP BY r.name
35
+ )
36
+ UPDATE extension_installs i
37
+ SET enabled_at = t.others_first - interval '1 millisecond'
38
+ FROM target t
39
+ WHERE i.name = t.name
40
+ AND t.others_first IS NOT NULL
41
+ AND (i.enabled_at IS NULL OR i.enabled_at >= t.others_first);
@@ -0,0 +1,6 @@
1
+ -- The setup guide a channel connection was last set up with (plugin setup guides spec
2
+ -- 2026-11-08-plugin-setup-guides-design.md §6): { guideId, version, hash, mode } of the plugin's
3
+ -- channel-connection guide, recorded on create, on an inbound mode switch and when an admin
4
+ -- confirms the platform app was updated. NULL = unknown (rows before this column, or a plugin
5
+ -- without a guide): no drift notice for those.
6
+ ALTER TABLE channel_connections ADD COLUMN IF NOT EXISTS guide_ack jsonb;
@@ -0,0 +1,13 @@
1
+ -- Catalog display files kept in PG (bootstrap catalog files fix, 2026-11-08): a plugin's icon, its
2
+ -- connector templates' icons and its setup guide files, each capped at 64 KiB by the plugin format.
3
+ -- Content-addressed: one row per sha256, shared by every version (and org) whose
4
+ -- catalog_item_versions.files lists it; a reader only asks for the sha256 its version row records
5
+ -- and re-checks it. They are in PG, not object storage, so a bootstrap plugin's icon is stored
6
+ -- before any object-store extension runs (the object store's own icon included). touched_at: set
7
+ -- by every import that stores the file again; the staging cleanup removes rows no version or
8
+ -- staging lists once they are older than the staging TTL.
9
+ CREATE TABLE IF NOT EXISTS catalog_files (
10
+ sha256 text PRIMARY KEY CHECK (sha256 ~ '^[0-9a-f]{64}$'),
11
+ data bytea NOT NULL,
12
+ touched_at timestamptz NOT NULL DEFAULT now()
13
+ );
@@ -0,0 +1,32 @@
1
+ -- Marketplace entry icons (maintainer decision 2026-11-08): the svg / png an entry's `icon` names
2
+ -- (an https URL, or a path in a git marketplace's repository), downloaded on refresh through the
3
+ -- marketplace network rules and kept here so the market list never hits the network per request
4
+ -- and every replica serves the same bytes. One row per (marketplace, icon as the entry writes it);
5
+ -- entries naming the same icon share it. Each is at most 64 KiB (the plugin icon limit). A URL's
6
+ -- content is treated as fixed (fetched once); a repository path is read again at every new commit.
7
+ -- Rows no entry names any more are removed by the refresh; deleting the marketplace removes them.
8
+ CREATE TABLE IF NOT EXISTS marketplace_icons (
9
+ source_id text NOT NULL REFERENCES marketplaces(id) ON DELETE CASCADE,
10
+ ref text NOT NULL,
11
+ sha256 text NOT NULL CHECK (sha256 ~ '^[0-9a-f]{64}$'),
12
+ content_type text NOT NULL CHECK (content_type IN ('image/svg+xml', 'image/png')),
13
+ data bytea NOT NULL,
14
+ fetched_at timestamptz NOT NULL DEFAULT now(),
15
+ PRIMARY KEY (source_id, ref)
16
+ );
17
+
18
+ -- Icon URLs whose last download failed (HTTP error, invalid content, refused by the network rules,
19
+ -- timeout): retried only after a backoff, and after the URLs never tried, so a few broken URLs never
20
+ -- starve the rest of a refresh's download cap. Removed when the URL is stored or no entry names it.
21
+ CREATE TABLE IF NOT EXISTS marketplace_icon_failures (
22
+ source_id text NOT NULL REFERENCES marketplaces(id) ON DELETE CASCADE,
23
+ ref text NOT NULL,
24
+ failed_at timestamptz NOT NULL DEFAULT now(),
25
+ attempts integer NOT NULL DEFAULT 1,
26
+ PRIMARY KEY (source_id, ref)
27
+ );
28
+
29
+ -- The git commit whose repository-path icons were last stored completely (null: none yet, or a
30
+ -- refresh that predates icons). A refresh at last_commit is not_modified only when this equals it;
31
+ -- otherwise the commit is read again, so a failed icon write recovers at the same commit.
32
+ ALTER TABLE marketplaces ADD COLUMN IF NOT EXISTS icons_commit text;
@@ -0,0 +1,64 @@
1
+ -- Themes as a platform component kind (themes spec 2026-11-08-themes-design.md §6, §7): rows and
2
+ -- versions shaped like platform agent templates, with the owner columns of org-owned items; the
3
+ -- `theme` kind in the component scope, switch and install component tables; the person's pick on
4
+ -- the account. Expand-only: the only dropped objects are the three kind checks, re-added wider in
5
+ -- the next statement each.
6
+
7
+ CREATE TABLE IF NOT EXISTS platform_themes (
8
+ id text PRIMARY KEY,
9
+ catalog_item_id uuid REFERENCES catalog_items(id) ON DELETE SET NULL,
10
+ plugin_name text,
11
+ name text NOT NULL,
12
+ description text,
13
+ description_zh text,
14
+ current_version integer NOT NULL CHECK (current_version >= 1),
15
+ scope_mode text NOT NULL DEFAULT 'follow' CHECK (scope_mode IN ('follow', 'own')),
16
+ scope text NOT NULL DEFAULT 'optional' CHECK (scope IN ('all', 'optional', 'named')),
17
+ disabled boolean NOT NULL DEFAULT false,
18
+ shown_to_others boolean NOT NULL DEFAULT true,
19
+ scope_version integer NOT NULL DEFAULT 0,
20
+ -- The owning org (NULL = the platform), the org it was created in (no FK, immutable) and the
21
+ -- share switch, as on the other platform components (0084).
22
+ owner_org_id text REFERENCES orgs(id) ON DELETE SET NULL,
23
+ origin_org_id text,
24
+ shareable boolean NOT NULL DEFAULT false,
25
+ created_at timestamptz NOT NULL DEFAULT now(),
26
+ updated_at timestamptz NOT NULL DEFAULT now(),
27
+ deleted_at timestamptz
28
+ );
29
+ CREATE UNIQUE INDEX IF NOT EXISTS platform_themes_live_name_origin_uq
30
+ ON platform_themes ((coalesce(plugin_name, '')), name, (coalesce(origin_org_id, '')))
31
+ WHERE deleted_at IS NULL;
32
+
33
+ -- One version of a theme: `definition` is the parsed theme file (`ParsedTheme`); fonts and logo
34
+ -- live under `object_prefix` in `deployment/` (NULL for a theme without assets).
35
+ CREATE TABLE IF NOT EXISTS platform_theme_versions (
36
+ theme_id text NOT NULL REFERENCES platform_themes(id) ON DELETE CASCADE,
37
+ version integer NOT NULL CHECK (version >= 1),
38
+ definition jsonb NOT NULL,
39
+ object_prefix text,
40
+ catalog_version text,
41
+ updated_on_own boolean NOT NULL DEFAULT false,
42
+ created_by text,
43
+ created_at timestamptz NOT NULL DEFAULT now(),
44
+ PRIMARY KEY (theme_id, version)
45
+ );
46
+
47
+ -- 0081 declared these checks inline, so they carry the default names.
48
+ -- capybara:allow-destructive the check is added back with 'theme' in the next statement; existing rows satisfy it
49
+ ALTER TABLE component_scope_orgs DROP CONSTRAINT IF EXISTS component_scope_orgs_kind_check;
50
+ ALTER TABLE component_scope_orgs ADD CONSTRAINT component_scope_orgs_kind_check
51
+ CHECK (kind IN ('skill', 'agent_template', 'connector_template', 'theme'));
52
+ -- capybara:allow-destructive the check is added back with 'theme' in the next statement; existing rows satisfy it
53
+ ALTER TABLE component_org_switches DROP CONSTRAINT IF EXISTS component_org_switches_kind_check;
54
+ ALTER TABLE component_org_switches ADD CONSTRAINT component_org_switches_kind_check
55
+ CHECK (kind IN ('skill', 'agent_template', 'connector_template', 'theme'));
56
+ -- NOT VALID as in 0053: existing rows were checked by the narrower constraint already.
57
+ -- capybara:allow-destructive the check is added back with 'theme' in the next statement; existing rows satisfy it
58
+ ALTER TABLE plugin_install_components DROP CONSTRAINT IF EXISTS plugin_install_components_kind_check;
59
+ ALTER TABLE plugin_install_components ADD CONSTRAINT plugin_install_components_kind_check
60
+ CHECK (kind IN ('extension', 'connector', 'skill', 'plugin', 'agent_template', 'theme')) NOT VALID;
61
+
62
+ -- The person's theme (§7): one value across all their orgs; NULL follows the org. No FK: a pick
63
+ -- that is not on in the current org (or no longer exists) is skipped, never an error.
64
+ ALTER TABLE accounts ADD COLUMN IF NOT EXISTS theme text;
@@ -0,0 +1,7 @@
1
+ -- The platform default theme setting `uiTheme` (themes spec §7) always has a row: the guards that
2
+ -- refuse taking the default theme away from an org read it FOR SHARE, and the setting's write
3
+ -- locks it FOR UPDATE before checking the chosen theme, so the two serialize on this row.
4
+ -- `{"id": null}` is the built-in theme (the default when the key is missing).
5
+ INSERT INTO deployment_settings (key, value)
6
+ VALUES ('uiTheme', '{"id": null}'::jsonb)
7
+ ON CONFLICT (key) DO NOTHING;
@@ -0,0 +1,16 @@
1
+ -- A member's own tool policies for their own connection of a personal-credential connector
2
+ -- (maintainer decision 2026-11-09, the connector card's 权限): one row per account, connector and
3
+ -- tool name. They apply to every agent the account uses; an agent's tool policy overrides them, and
4
+ -- a tool the org switched off (or set to deny) stays denied whatever they say.
5
+ CREATE TABLE IF NOT EXISTS capybara.connector_tool_account_policies (
6
+ org_id text NOT NULL REFERENCES capybara.orgs(id) ON DELETE CASCADE,
7
+ connector_id text NOT NULL REFERENCES capybara.connectors(id) ON DELETE CASCADE,
8
+ account_id text NOT NULL REFERENCES capybara.accounts(id) ON DELETE CASCADE,
9
+ tool_name text NOT NULL,
10
+ policy text NOT NULL CHECK (policy IN ('allow', 'ask', 'deny')),
11
+ updated_at timestamptz NOT NULL DEFAULT now(),
12
+ PRIMARY KEY (connector_id, account_id, tool_name)
13
+ );
14
+
15
+ CREATE INDEX IF NOT EXISTS connector_tool_account_policies_account
16
+ ON capybara.connector_tool_account_policies (account_id);
@@ -0,0 +1,136 @@
1
+ -- One name: devices (spec 2026-11-07-environments-design §15.2). Every environment table, column,
2
+ -- index and constraint takes the device name; a connected machine's source 'device' becomes
3
+ -- 'local', the kernel-internal provider '@device' becomes '@local', and the log event
4
+ -- 'environment_paths' becomes 'device_paths' (in the log and in eval case snapshots). The kernel
5
+ -- is renamed in the same release; before 0.1.0, so no compatibility layer and no rolling deploy
6
+ -- across this migration. Every statement is guarded, so a rerun changes nothing.
7
+
8
+ -- capybara:allow-destructive table rename; the kernel is renamed in the same release (not released, no compatibility layer)
9
+ ALTER TABLE IF EXISTS environments RENAME TO devices;
10
+ -- capybara:allow-destructive table rename; the kernel is renamed in the same release (not released, no compatibility layer)
11
+ ALTER TABLE IF EXISTS environment_instances RENAME TO device_instances;
12
+ -- capybara:allow-destructive table rename; the kernel is renamed in the same release (not released, no compatibility layer)
13
+ ALTER TABLE IF EXISTS environment_defaults RENAME TO device_defaults;
14
+ -- capybara:allow-destructive table rename; the kernel is renamed in the same release (not released, no compatibility layer)
15
+ ALTER TABLE IF EXISTS environment_machines RENAME TO device_machines;
16
+
17
+ -- RENAME COLUMN has no IF EXISTS: checked against information_schema first.
18
+ -- capybara:allow-destructive column rename environment_id -> device_id; the kernel is renamed in the same release (not released)
19
+ DO $$
20
+ DECLARE
21
+ t text;
22
+ BEGIN
23
+ FOREACH t IN ARRAY ARRAY['device_instances', 'device_defaults', 'device_machines',
24
+ 'conversations', 'background_tasks'] LOOP
25
+ IF EXISTS (
26
+ SELECT 1 FROM information_schema.columns
27
+ WHERE table_schema = 'capybara' AND table_name = t AND column_name = 'environment_id'
28
+ ) THEN
29
+ EXECUTE format('ALTER TABLE capybara.%I RENAME COLUMN environment_id TO device_id', t);
30
+ END IF;
31
+ END LOOP;
32
+ END
33
+ $$;
34
+
35
+ -- Indexes, including those behind the primary keys and unique constraints (renaming such an
36
+ -- index renames its constraint too).
37
+ -- capybara:allow-destructive index rename; names follow the table rename (not released)
38
+ ALTER INDEX IF EXISTS environments_pkey RENAME TO devices_pkey;
39
+ -- capybara:allow-destructive index rename; names follow the table rename (not released)
40
+ ALTER INDEX IF EXISTS environments_default_uq RENAME TO devices_default_uq;
41
+ -- capybara:allow-destructive index rename; names follow the table rename (not released)
42
+ ALTER INDEX IF EXISTS environments_name_uq RENAME TO devices_name_uq;
43
+ -- capybara:allow-destructive index rename; names follow the table rename (not released)
44
+ ALTER INDEX IF EXISTS environment_instances_pkey RENAME TO device_instances_pkey;
45
+ -- capybara:allow-destructive index rename; names follow the table rename (not released)
46
+ ALTER INDEX IF EXISTS environment_instances_running_idx RENAME TO device_instances_running_idx;
47
+ -- capybara:allow-destructive index rename; names follow the table rename (not released)
48
+ ALTER INDEX IF EXISTS environment_instances_live_idx RENAME TO device_instances_live_idx;
49
+ -- capybara:allow-destructive index rename; names follow the table rename (not released)
50
+ ALTER INDEX IF EXISTS environment_instances_org_idx RENAME TO device_instances_org_idx;
51
+ -- capybara:allow-destructive index rename; names follow the table rename (not released)
52
+ ALTER INDEX IF EXISTS environment_defaults_pkey RENAME TO device_defaults_pkey;
53
+ -- capybara:allow-destructive index rename; names follow the column rename (not released)
54
+ ALTER INDEX IF EXISTS background_tasks_environment_running_idx RENAME TO background_tasks_device_running_idx;
55
+ -- capybara:allow-destructive index rename; names follow the table rename (not released)
56
+ ALTER INDEX IF EXISTS environment_machines_pkey RENAME TO device_machines_pkey;
57
+ -- capybara:allow-destructive index rename; names follow the table rename (not released)
58
+ ALTER INDEX IF EXISTS environment_machines_credential_hash_key RENAME TO device_machines_credential_hash_key;
59
+ -- capybara:allow-destructive index rename; names follow the table rename (not released)
60
+ ALTER INDEX IF EXISTS environment_machines_active_uq RENAME TO device_machines_active_uq;
61
+ -- capybara:allow-destructive index rename; names follow the table rename (not released)
62
+ ALTER INDEX IF EXISTS environment_machines_org_idx RENAME TO device_machines_org_idx;
63
+
64
+ -- NOT NULL constraints are unnamed on PostgreSQL 17 (the target), so nothing to rename there.
65
+ -- The other CHECK and foreign key constraints: RENAME CONSTRAINT has no IF EXISTS, so each is
66
+ -- checked against pg_constraint first. The source CHECK is not renamed here: it is replaced
67
+ -- below with the new value list.
68
+ -- capybara:allow-destructive constraint rename; names follow the table and column renames (not released)
69
+ DO $$
70
+ DECLARE
71
+ r record;
72
+ BEGIN
73
+ FOR r IN
74
+ SELECT * FROM (VALUES
75
+ ('devices', 'environments_org_id_fkey', 'devices_org_id_fkey'),
76
+ ('devices', 'environments_owner_account_id_fkey', 'devices_owner_account_id_fkey'),
77
+ ('devices', 'environments_owner_kind_check', 'devices_owner_kind_check'),
78
+ ('device_instances', 'environment_instances_fs_status_check', 'device_instances_fs_status_check'),
79
+ ('device_instances', 'environment_instances_status_check', 'device_instances_status_check'),
80
+ ('device_instances', 'environment_instances_environment_id_fkey', 'device_instances_device_id_fkey'),
81
+ ('device_defaults', 'environment_defaults_environment_id_fkey', 'device_defaults_device_id_fkey'),
82
+ ('conversations', 'conversations_environment_id_fkey', 'conversations_device_id_fkey'),
83
+ ('device_machines', 'environment_machines_mode_check', 'device_machines_mode_check'),
84
+ ('device_machines', 'environment_machines_org_id_fkey', 'device_machines_org_id_fkey'),
85
+ ('device_machines', 'environment_machines_environment_id_fkey', 'device_machines_device_id_fkey')
86
+ ) AS v(tbl, old_name, new_name)
87
+ LOOP
88
+ IF EXISTS (
89
+ SELECT 1 FROM pg_constraint c
90
+ JOIN pg_namespace s ON s.oid = c.connamespace
91
+ WHERE s.nspname = 'capybara' AND c.conname = r.old_name
92
+ ) THEN
93
+ EXECUTE format('ALTER TABLE capybara.%I RENAME CONSTRAINT %I TO %I',
94
+ r.tbl, r.old_name, r.new_name);
95
+ END IF;
96
+ END LOOP;
97
+ END
98
+ $$;
99
+
100
+ -- A connected machine's source 'device' becomes 'local': the old CHECK goes, the rows change, and
101
+ -- the CHECK comes back under the new name with the new list.
102
+ ALTER TABLE devices DROP CONSTRAINT IF EXISTS environments_source_check;
103
+ ALTER TABLE devices DROP CONSTRAINT IF EXISTS devices_source_check;
104
+ UPDATE devices SET source = 'local' WHERE source = 'device';
105
+ ALTER TABLE devices
106
+ ADD CONSTRAINT devices_source_check CHECK (source IN ('cloud', 'local'));
107
+
108
+ -- The kernel-internal provider '@device' becomes '@local' wherever a provider name is stored.
109
+ UPDATE devices SET provider = '@local' WHERE provider = '@device';
110
+ UPDATE device_instances SET provider = '@local' WHERE provider = '@device';
111
+ UPDATE device_instances SET prev_provider = '@local' WHERE prev_provider = '@device';
112
+
113
+ -- The log event 'environment_paths' becomes 'device_paths' (its idempotency key prefix too); the
114
+ -- rows are updated first, so the old partial index (0094) finds them, then the index follows.
115
+ UPDATE conversation_events
116
+ SET type = 'device_paths',
117
+ idem_key = CASE
118
+ WHEN idem_key LIKE 'environment_paths:%' THEN 'device_paths:' || substr(idem_key, 19)
119
+ ELSE idem_key
120
+ END
121
+ WHERE type = 'environment_paths';
122
+ DROP INDEX IF EXISTS conversation_events_environment_paths_idx;
123
+ CREATE INDEX IF NOT EXISTS conversation_events_device_paths_idx
124
+ ON conversation_events (conversation_id, seq)
125
+ WHERE type = 'device_paths';
126
+
127
+ -- Eval case snapshots carry the events of their run: the same event type change, order kept.
128
+ -- snapshot_bytes is not recomputed: only type names change (a few bytes shorter), harmless.
129
+ UPDATE eval_cases
130
+ SET snapshot = jsonb_set(snapshot, '{events}', (
131
+ SELECT jsonb_agg(
132
+ CASE WHEN e->>'type' = 'environment_paths' THEN jsonb_set(e, '{type}', '"device_paths"')
133
+ ELSE e END
134
+ ORDER BY ord)
135
+ FROM jsonb_array_elements(snapshot->'events') WITH ORDINALITY AS t(e, ord)))
136
+ WHERE snapshot @? '$.events[*] ? (@.type == "environment_paths")';
@@ -0,0 +1,10 @@
1
+ -- Setup guides v2 (spec 2026-11-09-setup-guides-v2-design.md §11, §15).
2
+ -- A connector made from a connector template records the setup guide it was set up with:
3
+ -- { guideId, version, hash, mode } (mode null: the place has no modes), recorded when the
4
+ -- connector is created from the template and when an org admin confirms the third-party app was
5
+ -- updated. NULL = unknown (connectors before this column, custom ones): no drift notice for those.
6
+ ALTER TABLE connectors ADD COLUMN IF NOT EXISTS guide_ack jsonb;
7
+ -- The v1 acks of channel connections hold v1 template hashes that no v2 hash can equal; keeping
8
+ -- them would show every existing connection a false update notice. Cleared ("no ack, no notice"):
9
+ -- those connections start tracking again at their next mode switch or ack.
10
+ UPDATE channel_connections SET guide_ack = NULL WHERE guide_ack IS NOT NULL;
@@ -0,0 +1,50 @@
1
+ -- Client extensions (spec 2026-11-09-client-extensions-design.md §9.1, §10.4).
2
+ -- extension_client_builds: the client files of an extension package, keyed by the package sha256
3
+ -- (the build id). The files live in object storage under `deployment/<object_prefix>`; the
4
+ -- integrity values delivered to browsers come from this row, never from the object store.
5
+ CREATE TABLE IF NOT EXISTS extension_client_builds (
6
+ package_sha256 text PRIMARY KEY REFERENCES extension_packages(sha256) ON DELETE CASCADE,
7
+ plugin text NOT NULL,
8
+ entry text,
9
+ styles text[] NOT NULL,
10
+ assets text[] NOT NULL,
11
+ integrity jsonb NOT NULL,
12
+ sizes jsonb NOT NULL,
13
+ api_version int NOT NULL,
14
+ object_prefix text NOT NULL,
15
+ created_at timestamptz NOT NULL DEFAULT now()
16
+ );
17
+
18
+ -- extension_client_reports: crash and load reports of client code, one row per
19
+ -- (plugin, build, org, contribution, kind); org_id is null for admin pages. Upserted, pruned after
20
+ -- 30 days.
21
+ CREATE TABLE IF NOT EXISTS extension_client_reports (
22
+ plugin text NOT NULL,
23
+ build text NOT NULL,
24
+ org_id text NULL,
25
+ contribution text NULL,
26
+ kind text NOT NULL CHECK (kind IN ('load', 'render', 'event', 'api', 'budget')),
27
+ count int NOT NULL DEFAULT 1,
28
+ first_at timestamptz NOT NULL DEFAULT now(),
29
+ last_at timestamptz NOT NULL DEFAULT now(),
30
+ last_message text NOT NULL
31
+ );
32
+
33
+ CREATE UNIQUE INDEX IF NOT EXISTS extension_client_reports_key_uq
34
+ ON extension_client_reports (
35
+ plugin, build, (coalesce(org_id, '')), (coalesce(contribution, '')), kind
36
+ );
37
+
38
+ CREATE INDEX IF NOT EXISTS extension_client_reports_last_at
39
+ ON extension_client_reports (last_at);
40
+
41
+ -- extension_replica_status.serving_sha256: the package a replica actually serves for the plugin
42
+ -- (the row's own sha256 when loaded; the older package still running when the row's version is
43
+ -- pending approval or failed; null when none runs). Client code follows the server code that runs
44
+ -- (spec §9.3): a build is delivered while a live replica serves its package.
45
+ ALTER TABLE extension_replica_status ADD COLUMN IF NOT EXISTS serving_sha256 text NULL;
46
+
47
+ -- catalog_item_versions.appearance_order: the keys of plugin.json's
48
+ -- suggestedAppearance.replacements in the author's order (a jsonb object does not keep key order),
49
+ -- so the suggestion is listed and applied in that order (spec §6.5); null without replacements.
50
+ ALTER TABLE catalog_item_versions ADD COLUMN IF NOT EXISTS appearance_order text[] NULL;
@@ -0,0 +1,6 @@
1
+ -- A message from the run's starter closes a pending question as skipped (reply-while-question spec
2
+ -- §6.2). Widening the inline CHECK of 0010 (PG's default name questions_status_check): drop and add
3
+ -- in the file's one transaction, idempotent.
4
+ ALTER TABLE questions DROP CONSTRAINT IF EXISTS questions_status_check;
5
+ ALTER TABLE questions ADD CONSTRAINT questions_status_check
6
+ CHECK (status IN ('pending', 'answered', 'skipped', 'expired', 'cancelled'));
@@ -0,0 +1,5 @@
1
+ -- Platform-level audit events (org_id null), newest first: the admin overview's recent platform
2
+ -- operations and /admin/audit page by keyset on id (admin overview spec §4.4, §5.4). A plain
3
+ -- CREATE INDEX: the migrator runs each file in a transaction.
4
+ CREATE INDEX IF NOT EXISTS audit_events_platform_idx
5
+ ON audit_events (id DESC) WHERE org_id IS NULL;
@@ -0,0 +1,8 @@
1
+ -- The admin overview's seven-day usage aggregate (admin overview spec §4.3, §5.4) reads runs and
2
+ -- embedding usage of every org by time: runs by created_at (only (conversation_id, created_at)
3
+ -- existed) and model_usage by occurred_at (only (org_id, occurred_at) and a partial index on the
4
+ -- unreported rows existed). Chat usage events already have conversation_events_usage_idx (0040).
5
+ -- A plain CREATE INDEX: the migrator runs each file in a transaction, so not CONCURRENTLY; it
6
+ -- locks writes to the table while it builds (pre-0.1.0: no large deployments).
7
+ CREATE INDEX IF NOT EXISTS runs_created_idx ON runs (created_at);
8
+ CREATE INDEX IF NOT EXISTS model_usage_time_idx ON model_usage (occurred_at);
@@ -0,0 +1,22 @@
1
+ -- Skill authoring via the Platform tool: an agent's owner shares an agent skill with the org. The
2
+ -- shared skill is an org skill (scope 'org') that remembers the agent it came from
3
+ -- (origin_agent_id, cleared when that agent is deleted; the skill stays) and the account that
4
+ -- maintains it (maintainer_account_id).
5
+ ALTER TABLE skills
6
+ ADD COLUMN IF NOT EXISTS origin_agent_id text REFERENCES agents(id) ON DELETE SET NULL;
7
+ ALTER TABLE skills
8
+ ADD COLUMN IF NOT EXISTS maintainer_account_id text REFERENCES accounts(id);
9
+ -- The skills an agent shared, for its skill list and for sharing again.
10
+ CREATE INDEX IF NOT EXISTS skills_origin_agent_idx
11
+ ON skills (origin_agent_id)
12
+ WHERE origin_agent_id IS NOT NULL AND deleted_at IS NULL;
13
+
14
+ -- A request is either a share of an agent skill with the org or a new version of a shared skill.
15
+ ALTER TABLE skill_change_requests
16
+ ADD COLUMN IF NOT EXISTS kind text NOT NULL DEFAULT 'version'
17
+ CHECK (kind IN ('share', 'version'));
18
+
19
+ -- The R4 owner-approved change flow ends. The draft objects of the cancelled rows are left to the
20
+ -- org data cleanup.
21
+ -- capybara:allow-destructive R4 owner-approved changes are removed; pending ones cannot be decided any more
22
+ UPDATE skill_change_requests SET status = 'cancelled', decided_at = now() WHERE status = 'pending';
@@ -0,0 +1,4 @@
1
+ -- A share request of an agent skill comes from the agent page or the Platform operation and has
2
+ -- no trial, so it records no conversation; a version proposal registered on the web has none
3
+ -- either. requested_in_conversation becomes optional.
4
+ ALTER TABLE skill_change_requests ALTER COLUMN requested_in_conversation DROP NOT NULL;
@@ -1,56 +0,0 @@
1
- import type { KernelSchemaDb } from "../db/kernel-schema.js";
2
- import type { ExtensionRegistry } from "../extensions/registry.js";
3
- /**
4
- * Which versions an org may upgrade an installed plugin to (package ecosystem spec §10, Decision
5
- * 10, Ruling 8):
6
- * - a plugin with an extension follows the deployment: the only target is the catalog version
7
- * whose extension package (sha256) is the one installed on the deployment, the newest import on
8
- * ties (`1.0.0` and `1.0.0+sha256.x` can share an extension version with different bytes); an
9
- * extension loaded from the startup config (config, no package) is matched by its
10
- * version;
11
- * - a purely declarative plugin may move to any other imported version (an older one is a
12
- * rollback).
13
- */
14
- /** The extension the deployment runs for a plugin name. */
15
- export interface DeployedExtension {
16
- /** The installed package's sha256 (null for a config extension). */
17
- sha256: string | null;
18
- version: string;
19
- }
20
- /** A catalog version row as the target rules read it. */
21
- export interface TargetVersion {
22
- version: string;
23
- manifest: unknown;
24
- extension_sha256: string | null;
25
- imported_at: Date;
26
- }
27
- /**
28
- * The deployment's extension for plugin `name`: its install record (`extension_installs`, the
29
- * deployment's desired package; disabled on the deployment counts as none), else the extension
30
- * this replica loaded from the startup config; undefined when the deployment runs none (then no
31
- * upgrade target and no "upgrade pending").
32
- */
33
- export declare function deployedExtension(db: KernelSchemaDb, host: Pick<ExtensionRegistry, "manifests">, name: string): Promise<DeployedExtension | undefined>;
34
- /** Whether catalog version `v` carries the deployment's extension `d`. */
35
- export declare const runsDeployed: (v: TargetVersion, d: DeployedExtension) => boolean;
36
- /**
37
- * The catalog version an org install of an extension-bearing plugin may move to: the one carrying
38
- * the deployment's extension, the newest import on ties; undefined when none does.
39
- */
40
- export declare function deploymentTarget(versions: readonly TargetVersion[], d: DeployedExtension | undefined): TargetVersion | undefined;
41
- /** What an install view says about upgrades (Decision 10). */
42
- export interface UpgradeInfo {
43
- /** The version an upgrade can move to now (the highest allowed target), null when none. */
44
- upgradeAvailable: string | null;
45
- /** An extension-bearing plugin whose org version is not the one the deployment runs. */
46
- deploymentPending: boolean;
47
- }
48
- /**
49
- * The upgrade info of org installs (`itemId`, `name`, `version`), keyed by `itemId@version`; reads
50
- * the items' catalog versions and the deployment's extensions in a few queries.
51
- */
52
- export declare function upgradeInfo(db: KernelSchemaDb, host: Pick<ExtensionRegistry, "manifests">, installs: readonly {
53
- itemId: string;
54
- name: string;
55
- version: string;
56
- }[]): Promise<Map<string, UpgradeInfo>>;
@@ -1,90 +0,0 @@
1
- import { compareVersions } from "./versions.js";
2
- /**
3
- * The deployment's extension for plugin `name`: its install record (`extension_installs`, the
4
- * deployment's desired package; disabled on the deployment counts as none), else the extension
5
- * this replica loaded from the startup config; undefined when the deployment runs none (then no
6
- * upgrade target and no "upgrade pending").
7
- */
8
- export async function deployedExtension(db, host, name) {
9
- const row = await db
10
- .selectFrom("extension_installs")
11
- .select(["sha256", "version", "desired_state"])
12
- .where("name", "=", name)
13
- .executeTakeFirst();
14
- if (row) {
15
- return row.desired_state === "enabled"
16
- ? { sha256: row.sha256, version: row.version }
17
- : undefined;
18
- }
19
- const loaded = host.manifests().find((m) => m.name === name);
20
- return loaded ? { sha256: null, version: loaded.version } : undefined;
21
- }
22
- const extensionVersionOf = (v) => v.manifest.extension?.manifest.version;
23
- /** Whether catalog version `v` carries the deployment's extension `d`. */
24
- export const runsDeployed = (v, d) => d.sha256 !== null
25
- ? v.extension_sha256 === d.sha256
26
- : v.manifest.extension !== undefined && extensionVersionOf(v) === d.version;
27
- /**
28
- * The catalog version an org install of an extension-bearing plugin may move to: the one carrying
29
- * the deployment's extension, the newest import on ties; undefined when none does.
30
- */
31
- export function deploymentTarget(versions, d) {
32
- if (d === undefined)
33
- return undefined;
34
- let best;
35
- for (const v of versions) {
36
- if (!runsDeployed(v, d))
37
- continue;
38
- if (best === undefined ||
39
- v.imported_at.getTime() > best.imported_at.getTime() ||
40
- (v.imported_at.getTime() === best.imported_at.getTime() && compareVersions(v, best) > 0)) {
41
- best = v;
42
- }
43
- }
44
- return best;
45
- }
46
- /**
47
- * The upgrade info of org installs (`itemId`, `name`, `version`), keyed by `itemId@version`; reads
48
- * the items' catalog versions and the deployment's extensions in a few queries.
49
- */
50
- export async function upgradeInfo(db, host, installs) {
51
- const out = new Map();
52
- if (installs.length === 0)
53
- return out;
54
- const rows = await db
55
- .selectFrom("catalog_item_versions")
56
- .select(["item_id", "version", "manifest", "extension_sha256", "imported_at"])
57
- .where("item_id", "in", [...new Set(installs.map((i) => i.itemId))])
58
- .execute();
59
- const deployed = new Map();
60
- for (const i of installs) {
61
- const versions = rows.filter((r) => r.item_id === i.itemId);
62
- const current = versions.find((v) => v.version === i.version);
63
- if (current && current.manifest.extension !== undefined) {
64
- if (!deployed.has(i.name))
65
- deployed.set(i.name, await deployedExtension(db, host, i.name));
66
- const d = deployed.get(i.name);
67
- const target = deploymentTarget(versions, d);
68
- out.set(`${i.itemId}@${i.version}`, {
69
- upgradeAvailable: target && target.version !== i.version ? target.version : null,
70
- deploymentPending: d !== undefined && !runsDeployed(current, d),
71
- });
72
- continue;
73
- }
74
- let newest;
75
- for (const v of versions) {
76
- if (newest === undefined || compareVersions(v, newest) > 0)
77
- newest = v;
78
- }
79
- const newer = newest !== undefined &&
80
- newest.version !== i.version &&
81
- (current === undefined
82
- ? compareVersions(newest.version, i.version) > 0
83
- : compareVersions(newest, current) > 0);
84
- out.set(`${i.itemId}@${i.version}`, {
85
- upgradeAvailable: newer ? newest.version : null,
86
- deploymentPending: false,
87
- });
88
- }
89
- return out;
90
- }
@@ -1,24 +0,0 @@
1
- import { SandboxService } from "../sandbox/sandbox.service.js";
2
- import { ConversationAccess } from "./access.js";
3
- import { ConversationsService } from "./conversations.service.js";
4
- export interface SandboxStatusView {
5
- status: "running" | "suspended";
6
- lastUsedAt: string;
7
- }
8
- /**
9
- * 对话沙箱的状态(网页上下文标签,M5 T11):会话不可见 → `conversation.not_found`;
10
- * 没有可用的沙箱(未创建、已销毁、正在创建)→ `sandbox.not_found`(界面显示「未创建」)。
11
- */
12
- export declare class ConversationSandboxStatus {
13
- /** 会话可见性(与会话 SSE 流同一判定)。 */
14
- private readonly access;
15
- /** The conversation whose sandbox it works in: a sub-agent's parent, else itself. */
16
- private readonly conversations;
17
- private readonly sandbox;
18
- constructor(
19
- /** 会话可见性(与会话 SSE 流同一判定)。 */
20
- access: Pick<ConversationAccess, "isAccessible">,
21
- /** The conversation whose sandbox it works in: a sub-agent's parent, else itself. */
22
- conversations: Pick<ConversationsService, "sandboxConversationOf">, sandbox: Pick<SandboxService, "status">);
23
- get(orgId: string, conversationId: string, viewerAccountId: string): Promise<SandboxStatusView>;
24
- }