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

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (670) hide show
  1. package/dist/admin/admin.controller.d.ts +17 -17
  2. package/dist/admin/admin.controller.js +43 -26
  3. package/dist/admin/admin.module.d.ts +3 -0
  4. package/dist/admin/admin.module.js +22 -0
  5. package/dist/admin/extensions.controller.d.ts +14 -14
  6. package/dist/admin/extensions.controller.js +30 -17
  7. package/dist/admin/setup-lock.d.ts +16 -0
  8. package/dist/admin/setup-lock.js +47 -0
  9. package/dist/admin/setup.controller.d.ts +8 -8
  10. package/dist/admin/setup.controller.js +27 -25
  11. package/dist/admin/setup.service.d.ts +19 -27
  12. package/dist/admin/setup.service.js +61 -61
  13. package/dist/agents/agent-lookup.d.ts +53 -0
  14. package/dist/agents/agent-lookup.js +187 -0
  15. package/dist/agents/agents.controller.d.ts +1 -1
  16. package/dist/agents/agents.controller.js +14 -8
  17. package/dist/agents/agents.module.d.ts +7 -0
  18. package/dist/agents/agents.module.js +41 -0
  19. package/dist/agents/agents.service.d.ts +39 -58
  20. package/dist/agents/agents.service.js +280 -335
  21. package/dist/agents/definition.d.ts +39 -8
  22. package/dist/agents/definition.js +201 -17
  23. package/dist/agents/models.controller.d.ts +1 -1
  24. package/dist/agents/models.controller.js +2 -2
  25. package/dist/agents/templates.controller.d.ts +1 -1
  26. package/dist/agents/templates.controller.js +2 -2
  27. package/dist/agents/templates.d.ts +6 -8
  28. package/dist/agents/templates.js +39 -8
  29. package/dist/app.d.ts +93 -0
  30. package/dist/app.js +150 -0
  31. package/dist/catalog/admin-catalog.controller.d.ts +3 -3
  32. package/dist/catalog/admin-catalog.controller.js +27 -13
  33. package/dist/catalog/catalog-content.d.ts +185 -0
  34. package/dist/catalog/catalog-content.js +326 -0
  35. package/dist/catalog/catalog-items.d.ts +186 -0
  36. package/dist/catalog/catalog-items.js +410 -0
  37. package/dist/catalog/catalog.module.d.ts +14 -0
  38. package/dist/catalog/catalog.module.js +71 -0
  39. package/dist/catalog/catalog.service.d.ts +34 -188
  40. package/dist/catalog/catalog.service.js +155 -489
  41. package/dist/catalog/claude/agents.js +13 -10
  42. package/dist/catalog/cli.d.ts +3 -2
  43. package/dist/catalog/cli.js +13 -31
  44. package/dist/catalog/job-ids.d.ts +15 -0
  45. package/dist/catalog/job-ids.js +15 -0
  46. package/dist/catalog/jobs.d.ts +27 -0
  47. package/dist/catalog/jobs.js +70 -0
  48. package/dist/catalog/locks.d.ts +24 -0
  49. package/dist/catalog/locks.js +63 -0
  50. package/dist/catalog/marketplaces.controller.d.ts +4 -4
  51. package/dist/catalog/marketplaces.controller.js +22 -11
  52. package/dist/catalog/marketplaces.service.d.ts +31 -14
  53. package/dist/catalog/marketplaces.service.js +330 -256
  54. package/dist/catalog/org-catalog.controller.d.ts +4 -3
  55. package/dist/catalog/org-catalog.controller.js +29 -14
  56. package/dist/catalog/org-catalog.service.d.ts +32 -198
  57. package/dist/catalog/org-catalog.service.js +159 -400
  58. package/dist/catalog/plugin-import.d.ts +73 -34
  59. package/dist/catalog/plugin-import.js +356 -217
  60. package/dist/catalog/plugin-install.d.ts +83 -41
  61. package/dist/catalog/plugin-install.js +421 -269
  62. package/dist/catalog/plugin-upgrade.d.ts +59 -4
  63. package/dist/catalog/plugin-upgrade.js +407 -282
  64. package/dist/catalog/requests.service.d.ts +27 -15
  65. package/dist/catalog/requests.service.js +201 -145
  66. package/dist/catalog/upgrade-targets.d.ts +4 -7
  67. package/dist/channels/actions.d.ts +6 -4
  68. package/dist/channels/actions.js +1 -1
  69. package/dist/channels/cards.d.ts +10 -4
  70. package/dist/channels/cards.js +16 -8
  71. package/dist/channels/channels.module.d.ts +40 -0
  72. package/dist/channels/channels.module.js +128 -0
  73. package/dist/channels/connections.controller.d.ts +1 -1
  74. package/dist/channels/connections.controller.js +11 -6
  75. package/dist/channels/connections.service.d.ts +43 -21
  76. package/dist/channels/connections.service.js +236 -131
  77. package/dist/channels/inbound.d.ts +34 -38
  78. package/dist/channels/inbound.js +107 -41
  79. package/dist/channels/job-ids.d.ts +10 -0
  80. package/dist/channels/job-ids.js +10 -0
  81. package/dist/channels/jobs.d.ts +85 -0
  82. package/dist/channels/jobs.js +157 -0
  83. package/dist/channels/outbound.d.ts +60 -82
  84. package/dist/channels/outbound.js +165 -194
  85. package/dist/channels/supervisor.d.ts +88 -46
  86. package/dist/channels/supervisor.js +230 -132
  87. package/dist/channels/threads.d.ts +29 -8
  88. package/dist/channels/threads.js +71 -13
  89. package/dist/channels/webhook.d.ts +20 -14
  90. package/dist/channels/webhook.js +51 -20
  91. package/dist/config/load.d.ts +3 -2
  92. package/dist/config/load.js +3 -2
  93. package/dist/config/nacos-source.js +11 -2
  94. package/dist/config/schema.d.ts +1 -0
  95. package/dist/config/schema.js +12 -6
  96. package/dist/conversations/access.d.ts +29 -0
  97. package/dist/conversations/access.js +86 -0
  98. package/dist/conversations/artifacts.d.ts +11 -11
  99. package/dist/conversations/artifacts.js +36 -10
  100. package/dist/conversations/attachments.controller.d.ts +1 -1
  101. package/dist/conversations/attachments.controller.js +8 -6
  102. package/dist/conversations/attachments.module.d.ts +7 -0
  103. package/dist/conversations/attachments.module.js +25 -0
  104. package/dist/conversations/attachments.service.d.ts +30 -22
  105. package/dist/conversations/attachments.service.js +119 -46
  106. package/dist/conversations/conversations.controller.d.ts +8 -7
  107. package/dist/conversations/conversations.controller.js +59 -29
  108. package/dist/conversations/conversations.module.d.ts +8 -0
  109. package/dist/conversations/conversations.module.js +69 -0
  110. package/dist/conversations/conversations.service.d.ts +40 -38
  111. package/dist/conversations/conversations.service.js +130 -140
  112. package/dist/conversations/event-log.d.ts +39 -18
  113. package/dist/conversations/event-log.js +93 -27
  114. package/dist/conversations/events.d.ts +23 -3
  115. package/dist/conversations/events.js +26 -14
  116. package/dist/conversations/files.d.ts +10 -10
  117. package/dist/conversations/files.js +37 -11
  118. package/dist/conversations/idem-keys.d.ts +5 -0
  119. package/dist/conversations/idem-keys.js +5 -0
  120. package/dist/conversations/job-ids.d.ts +6 -0
  121. package/dist/conversations/job-ids.js +6 -0
  122. package/dist/conversations/outputs-read.d.ts +11 -11
  123. package/dist/conversations/outputs-read.js +31 -7
  124. package/dist/conversations/queue.d.ts +48 -56
  125. package/dist/conversations/queue.js +13 -289
  126. package/dist/conversations/queue.service.d.ts +60 -0
  127. package/dist/conversations/queue.service.js +343 -0
  128. package/dist/conversations/sandbox-status.d.ts +13 -10
  129. package/dist/conversations/sandbox-status.js +36 -8
  130. package/dist/conversations/titles.d.ts +71 -24
  131. package/dist/conversations/titles.js +159 -63
  132. package/dist/ctx/bus.js +9 -3
  133. package/dist/ctx/create-ctx.d.ts +6 -0
  134. package/dist/ctx/create-ctx.js +7 -9
  135. package/dist/ctx/lock.d.ts +7 -3
  136. package/dist/ctx/lock.js +9 -20
  137. package/dist/ctx/secrets.d.ts +10 -2
  138. package/dist/ctx/secrets.js +7 -3
  139. package/dist/db/kernel-schema.d.ts +4 -4
  140. package/dist/db/pool.d.ts +5 -0
  141. package/dist/db/pool.js +1 -0
  142. package/dist/errors.d.ts +1 -0
  143. package/dist/errors.js +1 -0
  144. package/dist/evals/budget.d.ts +42 -21
  145. package/dist/evals/budget.js +114 -62
  146. package/dist/evals/evals.module.d.ts +31 -0
  147. package/dist/evals/evals.module.js +114 -0
  148. package/dist/evals/jobs.d.ts +20 -0
  149. package/dist/evals/jobs.js +45 -0
  150. package/dist/evals/recorded-tools.d.ts +27 -1
  151. package/dist/evals/recorded-tools.js +85 -10
  152. package/dist/evals/run-replay.d.ts +61 -8
  153. package/dist/evals/run-replay.js +159 -85
  154. package/dist/evals/runs.controller.d.ts +1 -1
  155. package/dist/evals/runs.controller.js +17 -8
  156. package/dist/evals/runs.service.d.ts +23 -45
  157. package/dist/evals/runs.service.js +245 -234
  158. package/dist/evals/sets.controller.d.ts +1 -1
  159. package/dist/evals/sets.controller.js +17 -8
  160. package/dist/evals/sets.service.d.ts +22 -6
  161. package/dist/evals/sets.service.js +248 -194
  162. package/dist/evals/snapshot.d.ts +2 -2
  163. package/dist/evals/step-replay.d.ts +2 -2
  164. package/dist/evals/step-replay.js +1 -1
  165. package/dist/evals/trajectory.controller.d.ts +1 -1
  166. package/dist/evals/trajectory.controller.js +11 -7
  167. package/dist/evals/trajectory.d.ts +2 -2
  168. package/dist/evals/trajectory.service.d.ts +5 -4
  169. package/dist/evals/trajectory.service.js +30 -7
  170. package/dist/evals/worker.d.ts +44 -27
  171. package/dist/evals/worker.js +220 -121
  172. package/dist/extensions/admin-ops.d.ts +61 -33
  173. package/dist/extensions/admin-ops.js +248 -154
  174. package/dist/extensions/admin-view.d.ts +38 -27
  175. package/dist/extensions/admin-view.js +126 -55
  176. package/dist/extensions/approvals.d.ts +12 -8
  177. package/dist/extensions/approvals.js +73 -46
  178. package/dist/extensions/blobs.d.ts +27 -10
  179. package/dist/extensions/blobs.js +111 -45
  180. package/dist/extensions/bootstrap.d.ts +58 -31
  181. package/dist/extensions/bootstrap.js +175 -121
  182. package/dist/extensions/cli.d.ts +20 -10
  183. package/dist/extensions/cli.js +41 -96
  184. package/dist/extensions/config-issues.d.ts +7 -0
  185. package/dist/extensions/config-issues.js +31 -0
  186. package/dist/extensions/deployment-config-store.d.ts +49 -0
  187. package/dist/extensions/deployment-config-store.js +133 -0
  188. package/dist/extensions/deployment-config.d.ts +58 -67
  189. package/dist/extensions/deployment-config.js +202 -230
  190. package/dist/extensions/enabled.d.ts +5 -5
  191. package/dist/extensions/extensions.module.d.ts +8 -0
  192. package/dist/extensions/extensions.module.js +77 -0
  193. package/dist/extensions/hooks.d.ts +3 -2
  194. package/dist/extensions/hooks.js +1 -1
  195. package/dist/extensions/host.d.ts +72 -68
  196. package/dist/extensions/host.js +191 -152
  197. package/dist/extensions/installs.d.ts +49 -16
  198. package/dist/extensions/installs.js +128 -32
  199. package/dist/extensions/job-ids.d.ts +6 -0
  200. package/dist/extensions/job-ids.js +6 -0
  201. package/dist/extensions/lifecycle-topics.d.ts +18 -0
  202. package/dist/extensions/lifecycle-topics.js +18 -0
  203. package/dist/extensions/lifecycle.d.ts +35 -47
  204. package/dist/extensions/lifecycle.js +103 -39
  205. package/dist/extensions/locks.d.ts +33 -0
  206. package/dist/extensions/locks.js +86 -0
  207. package/dist/extensions/migrate-lock.d.ts +3 -4
  208. package/dist/extensions/org-config.controller.d.ts +1 -1
  209. package/dist/extensions/org-config.controller.js +8 -5
  210. package/dist/extensions/org-config.d.ts +48 -46
  211. package/dist/extensions/org-config.js +284 -226
  212. package/dist/extensions/registry.d.ts +50 -2
  213. package/dist/extensions/registry.js +89 -4
  214. package/dist/extensions/sources.d.ts +12 -8
  215. package/dist/extensions/sources.js +34 -13
  216. package/dist/files/files.module.d.ts +3 -0
  217. package/dist/files/files.module.js +22 -0
  218. package/dist/files/previewers.controller.d.ts +7 -2
  219. package/dist/files/previewers.controller.js +17 -9
  220. package/dist/files/previewers.d.ts +13 -18
  221. package/dist/files/previewers.js +83 -36
  222. package/dist/http/adapter.d.ts +3 -0
  223. package/dist/http/adapter.js +25 -0
  224. package/dist/http/api.module.d.ts +3 -110
  225. package/dist/http/api.module.js +47 -355
  226. package/dist/http/app.d.ts +11 -15
  227. package/dist/http/app.js +17 -62
  228. package/dist/http/error-filter.module.d.ts +5 -0
  229. package/dist/http/error-filter.module.js +18 -0
  230. package/dist/http/error.filter.js +2 -2
  231. package/dist/identity/accounts.d.ts +82 -29
  232. package/dist/identity/accounts.js +294 -175
  233. package/dist/identity/api-tokens.d.ts +11 -7
  234. package/dist/identity/api-tokens.js +71 -44
  235. package/dist/identity/audit.d.ts +7 -4
  236. package/dist/identity/audit.js +5 -1
  237. package/dist/identity/auth.controller.d.ts +11 -10
  238. package/dist/identity/auth.controller.js +31 -25
  239. package/dist/identity/auth.guard.d.ts +3 -3
  240. package/dist/identity/auth.guard.js +6 -4
  241. package/dist/identity/binding.d.ts +9 -11
  242. package/dist/identity/binding.js +41 -13
  243. package/dist/identity/enterprise-admin.d.ts +18 -12
  244. package/dist/identity/enterprise-admin.js +67 -13
  245. package/dist/identity/external-identity-lock.d.ts +17 -0
  246. package/dist/identity/external-identity-lock.js +39 -0
  247. package/dist/identity/external.d.ts +19 -15
  248. package/dist/identity/external.js +163 -125
  249. package/dist/identity/identity.module.d.ts +6 -0
  250. package/dist/identity/identity.module.js +56 -0
  251. package/dist/identity/me.controller.d.ts +16 -15
  252. package/dist/identity/me.controller.js +37 -31
  253. package/dist/identity/sessions.d.ts +12 -10
  254. package/dist/identity/sessions.js +74 -42
  255. package/dist/identity/settings.d.ts +20 -14
  256. package/dist/identity/settings.js +86 -58
  257. package/dist/identity/sso.controller.d.ts +7 -7
  258. package/dist/identity/sso.controller.js +13 -9
  259. package/dist/identity/sso.d.ts +9 -12
  260. package/dist/identity/sso.js +54 -24
  261. package/dist/inbox/inbox.module.d.ts +3 -0
  262. package/dist/inbox/inbox.module.js +22 -0
  263. package/dist/inbox/inbox.service.d.ts +7 -9
  264. package/dist/inbox/inbox.service.js +32 -11
  265. package/dist/index.d.ts +16 -11
  266. package/dist/index.js +9 -6
  267. package/dist/infra/cache/cache.module.d.ts +3 -0
  268. package/dist/infra/cache/cache.module.js +16 -0
  269. package/dist/infra/cache/cache.service.d.ts +21 -0
  270. package/dist/infra/cache/cache.service.js +80 -0
  271. package/dist/infra/cache/cacheable.decorator.d.ts +32 -0
  272. package/dist/infra/cache/cacheable.decorator.js +83 -0
  273. package/dist/infra/cli/kernel-cli.module.d.ts +66 -0
  274. package/dist/infra/cli/kernel-cli.module.js +165 -0
  275. package/dist/infra/close-within.d.ts +15 -0
  276. package/dist/infra/close-within.js +36 -0
  277. package/dist/infra/config/config.module.d.ts +13 -0
  278. package/dist/infra/config/config.module.js +39 -0
  279. package/dist/infra/config/kernel-config.service.d.ts +25 -0
  280. package/dist/infra/config/kernel-config.service.js +126 -0
  281. package/dist/infra/database/after-commit.d.ts +6 -0
  282. package/dist/infra/database/after-commit.js +9 -0
  283. package/dist/infra/database/database.module.d.ts +25 -0
  284. package/dist/infra/database/database.module.js +90 -0
  285. package/dist/infra/database/kernel-db.d.ts +22 -0
  286. package/dist/infra/database/kernel-db.js +65 -0
  287. package/dist/infra/database/transaction-host.d.ts +50 -0
  288. package/dist/infra/database/transaction-host.js +125 -0
  289. package/dist/infra/database/transactional.decorator.d.ts +15 -0
  290. package/dist/infra/database/transactional.decorator.js +27 -0
  291. package/dist/infra/database/xact-lock.d.ts +17 -0
  292. package/dist/infra/database/xact-lock.js +43 -0
  293. package/dist/infra/events/kernel-events.d.ts +96 -0
  294. package/dist/infra/events/kernel-events.js +65 -0
  295. package/dist/infra/health/health.controller.d.ts +26 -0
  296. package/dist/infra/health/health.controller.js +104 -0
  297. package/dist/infra/health/health.module.d.ts +9 -0
  298. package/dist/infra/health/health.module.js +24 -0
  299. package/dist/infra/health/health.options.d.ts +10 -0
  300. package/dist/infra/health/health.options.js +15 -0
  301. package/dist/infra/health/shutdown-state.d.ts +6 -0
  302. package/dist/infra/health/shutdown-state.js +2 -0
  303. package/dist/infra/lifecycle/graceful-shutdown.module.d.ts +6 -0
  304. package/dist/infra/lifecycle/graceful-shutdown.module.js +23 -0
  305. package/dist/infra/lifecycle/graceful-shutdown.service.d.ts +70 -0
  306. package/dist/infra/lifecycle/graceful-shutdown.service.js +135 -0
  307. package/dist/infra/lifecycle/process-guards.d.ts +52 -0
  308. package/dist/infra/lifecycle/process-guards.js +86 -0
  309. package/dist/infra/lifecycle/shutdown-signals.d.ts +30 -0
  310. package/dist/infra/lifecycle/shutdown-signals.js +48 -0
  311. package/dist/infra/lock/key-template.d.ts +13 -0
  312. package/dist/infra/lock/key-template.js +46 -0
  313. package/dist/infra/lock/lock.module.d.ts +3 -0
  314. package/dist/infra/lock/lock.module.js +16 -0
  315. package/dist/infra/lock/lock.service.d.ts +120 -0
  316. package/dist/infra/lock/lock.service.js +343 -0
  317. package/dist/infra/lock/shared-lease.d.ts +44 -0
  318. package/dist/infra/lock/shared-lease.js +121 -0
  319. package/dist/infra/lock/with-lock.decorator.d.ts +28 -0
  320. package/dist/infra/lock/with-lock.decorator.js +49 -0
  321. package/dist/infra/logging/logging.module.d.ts +16 -0
  322. package/dist/infra/logging/logging.module.js +34 -0
  323. package/dist/infra/queue/configured-processor.d.ts +18 -0
  324. package/dist/infra/queue/configured-processor.js +23 -0
  325. package/dist/infra/queue/job-failure.d.ts +18 -0
  326. package/dist/infra/queue/job-failure.js +26 -0
  327. package/dist/infra/queue/queue-shutdown.d.ts +27 -0
  328. package/dist/infra/queue/queue-shutdown.js +81 -0
  329. package/dist/infra/queue/queue.module.d.ts +16 -0
  330. package/dist/infra/queue/queue.module.js +61 -0
  331. package/dist/infra/queue/redis-connection.d.ts +7 -0
  332. package/dist/infra/queue/redis-connection.js +18 -0
  333. package/dist/infra/queue/retired-schedulers.d.ts +7 -0
  334. package/dist/infra/queue/retired-schedulers.js +9 -0
  335. package/dist/infra/queue/run-job.d.ts +16 -0
  336. package/dist/infra/queue/run-job.js +19 -0
  337. package/dist/infra/redis/redis.module.d.ts +24 -0
  338. package/dist/infra/redis/redis.module.js +87 -0
  339. package/dist/infra/schedule/cron-tick.d.ts +12 -0
  340. package/dist/infra/schedule/cron-tick.js +25 -0
  341. package/dist/infra/schedule/locked-cron.decorator.d.ts +27 -0
  342. package/dist/infra/schedule/locked-cron.decorator.js +53 -0
  343. package/dist/infra/schedule/locked-interval.d.ts +69 -0
  344. package/dist/infra/schedule/locked-interval.js +190 -0
  345. package/dist/infra/schedule/locked-tick.d.ts +90 -0
  346. package/dist/infra/schedule/locked-tick.js +137 -0
  347. package/dist/infra/schedule/schedule.module.d.ts +8 -0
  348. package/dist/infra/schedule/schedule.module.js +27 -0
  349. package/dist/infra/schedule/scheduled-runs.d.ts +69 -0
  350. package/dist/infra/schedule/scheduled-runs.js +163 -0
  351. package/dist/infra/swagger/swagger.d.ts +16 -0
  352. package/dist/infra/swagger/swagger.js +31 -0
  353. package/dist/infra/throttler/credential-throttler.d.ts +35 -0
  354. package/dist/infra/throttler/credential-throttler.js +77 -0
  355. package/dist/infra/throttler/named-throttlers.d.ts +31 -0
  356. package/dist/infra/throttler/named-throttlers.js +119 -0
  357. package/dist/infra/throttler/redis-throttler-storage.d.ts +38 -0
  358. package/dist/infra/throttler/redis-throttler-storage.js +130 -0
  359. package/dist/infra/throttler/throttler.guard.d.ts +23 -0
  360. package/dist/infra/throttler/throttler.guard.js +68 -0
  361. package/dist/infra/throttler/throttler.module.d.ts +15 -0
  362. package/dist/infra/throttler/throttler.module.js +53 -0
  363. package/dist/infra/tokens.d.ts +15 -0
  364. package/dist/infra/tokens.js +15 -0
  365. package/dist/infra/validation/create-zod-dto.d.ts +23 -0
  366. package/dist/infra/validation/create-zod-dto.js +35 -0
  367. package/dist/infra/validation/parse-with-zod.d.ts +7 -0
  368. package/dist/infra/validation/parse-with-zod.js +12 -0
  369. package/dist/infra/validation/validation.module.d.ts +3 -0
  370. package/dist/infra/validation/validation.module.js +16 -0
  371. package/dist/infra/validation/zod-params.d.ts +7 -0
  372. package/dist/infra/validation/zod-params.js +42 -0
  373. package/dist/infra/validation/zod-validation.pipe.d.ts +11 -0
  374. package/dist/infra/validation/zod-validation.pipe.js +31 -0
  375. package/dist/kernel.d.ts +9 -244
  376. package/dist/kernel.js +8 -1305
  377. package/dist/kernel.module.d.ts +17 -0
  378. package/dist/kernel.module.js +136 -0
  379. package/dist/lifecycle/kernel-lifecycle.d.ts +140 -0
  380. package/dist/lifecycle/kernel-lifecycle.js +456 -0
  381. package/dist/lifecycle/tokens.d.ts +3 -0
  382. package/dist/lifecycle/tokens.js +3 -0
  383. package/dist/log-context.d.ts +2 -0
  384. package/dist/log-context.js +4 -0
  385. package/dist/models/models.module.d.ts +3 -0
  386. package/dist/models/models.module.js +24 -0
  387. package/dist/models/prices.d.ts +8 -2
  388. package/dist/models/prices.js +65 -37
  389. package/dist/models/purposes.controller.d.ts +1 -1
  390. package/dist/models/purposes.controller.js +5 -6
  391. package/dist/models/purposes.d.ts +35 -13
  392. package/dist/models/purposes.js +101 -51
  393. package/dist/orgs/directory-sync.controller.d.ts +1 -1
  394. package/dist/orgs/directory-sync.controller.js +2 -2
  395. package/dist/orgs/directory-sync.d.ts +61 -31
  396. package/dist/orgs/directory-sync.js +212 -125
  397. package/dist/orgs/invitations.controller.d.ts +8 -8
  398. package/dist/orgs/invitations.controller.js +27 -26
  399. package/dist/orgs/invitations.service.d.ts +12 -9
  400. package/dist/orgs/invitations.service.js +130 -92
  401. package/dist/orgs/job-ids.d.ts +8 -0
  402. package/dist/orgs/job-ids.js +8 -0
  403. package/dist/orgs/members.service.d.ts +19 -12
  404. package/dist/orgs/members.service.js +161 -117
  405. package/dist/orgs/offboarding.d.ts +54 -57
  406. package/dist/orgs/offboarding.js +161 -71
  407. package/dist/orgs/org-lock.d.ts +28 -19
  408. package/dist/orgs/org-lock.js +81 -35
  409. package/dist/orgs/org.guard.d.ts +1 -1
  410. package/dist/orgs/org.guard.js +2 -2
  411. package/dist/orgs/orgs.controller.d.ts +13 -13
  412. package/dist/orgs/orgs.controller.js +29 -17
  413. package/dist/orgs/orgs.module.d.ts +6 -0
  414. package/dist/orgs/orgs.module.js +68 -0
  415. package/dist/orgs/orgs.service.d.ts +30 -19
  416. package/dist/orgs/orgs.service.js +139 -86
  417. package/dist/orgs/settings.controller.d.ts +1 -1
  418. package/dist/orgs/settings.controller.js +8 -6
  419. package/dist/orgs/settings.service.d.ts +16 -10
  420. package/dist/orgs/settings.service.js +77 -48
  421. package/dist/overrides.d.ts +56 -0
  422. package/dist/overrides.js +30 -0
  423. package/dist/roles/gateway-role.d.ts +43 -0
  424. package/dist/roles/gateway-role.js +98 -0
  425. package/dist/roles/gateway.module.d.ts +8 -0
  426. package/dist/roles/gateway.module.js +28 -0
  427. package/dist/roles/worker-role.d.ts +63 -0
  428. package/dist/roles/worker-role.js +144 -0
  429. package/dist/roles/worker.module.d.ts +14 -0
  430. package/dist/roles/worker.module.js +90 -0
  431. package/dist/runtime/abort.js +19 -2
  432. package/dist/runtime/checkpointer.d.ts +8 -3
  433. package/dist/runtime/checkpointer.js +87 -55
  434. package/dist/runtime/context/build.d.ts +6 -6
  435. package/dist/runtime/context/build.js +18 -8
  436. package/dist/runtime/context/claude-tools.d.ts +2 -1
  437. package/dist/runtime/context/claude-tools.js +9 -10
  438. package/dist/runtime/context/legacy-text.d.ts +22 -0
  439. package/dist/runtime/context/legacy-text.js +37 -0
  440. package/dist/runtime/context/skills.d.ts +29 -11
  441. package/dist/runtime/context/skills.js +37 -30
  442. package/dist/runtime/conversation-lock.d.ts +20 -11
  443. package/dist/runtime/conversation-lock.js +62 -72
  444. package/dist/runtime/hook-calls.d.ts +3 -3
  445. package/dist/runtime/hook-calls.js +1 -6
  446. package/dist/runtime/job-ids.d.ts +10 -0
  447. package/dist/runtime/job-ids.js +10 -0
  448. package/dist/runtime/langgraph-loop.js +1 -1
  449. package/dist/runtime/loop.d.ts +8 -1
  450. package/dist/runtime/loop.js +14 -0
  451. package/dist/runtime/maintenance-queue.d.ts +10 -0
  452. package/dist/runtime/maintenance-queue.js +10 -0
  453. package/dist/runtime/maintenance.d.ts +45 -74
  454. package/dist/runtime/maintenance.js +139 -137
  455. package/dist/runtime/model-call.d.ts +7 -4
  456. package/dist/runtime/model-call.js +25 -58
  457. package/dist/runtime/providers.d.ts +17 -6
  458. package/dist/runtime/providers.js +66 -25
  459. package/dist/runtime/quota.d.ts +17 -3
  460. package/dist/runtime/quota.js +27 -2
  461. package/dist/runtime/retired-schedulers.d.ts +7 -0
  462. package/dist/runtime/retired-schedulers.js +31 -0
  463. package/dist/runtime/run-control.d.ts +33 -0
  464. package/dist/runtime/run-control.js +77 -0
  465. package/dist/runtime/run-finish.d.ts +27 -18
  466. package/dist/runtime/run-finish.js +98 -51
  467. package/dist/runtime/run-jobs.d.ts +48 -0
  468. package/dist/runtime/run-jobs.js +95 -0
  469. package/dist/runtime/run-processors.d.ts +60 -0
  470. package/dist/runtime/run-processors.js +185 -0
  471. package/dist/runtime/run-queue.d.ts +32 -57
  472. package/dist/runtime/run-queue.js +291 -295
  473. package/dist/runtime/run-steps.d.ts +39 -0
  474. package/dist/runtime/run-steps.js +96 -0
  475. package/dist/runtime/run-worker.d.ts +122 -76
  476. package/dist/runtime/run-worker.js +343 -229
  477. package/dist/runtime/runtime.module.d.ts +10 -0
  478. package/dist/runtime/runtime.module.js +112 -0
  479. package/dist/runtime/step-log.d.ts +40 -0
  480. package/dist/runtime/step-log.js +94 -0
  481. package/dist/runtime/stream.controller.d.ts +5 -8
  482. package/dist/runtime/stream.controller.js +14 -12
  483. package/dist/runtime/stream.d.ts +24 -6
  484. package/dist/runtime/stream.js +78 -7
  485. package/dist/runtime/subagents/child.d.ts +3 -44
  486. package/dist/runtime/subagents/child.js +0 -79
  487. package/dist/runtime/subagents/definition.d.ts +5 -10
  488. package/dist/runtime/subagents/definition.js +13 -14
  489. package/dist/runtime/subagents/dispatch.d.ts +89 -8
  490. package/dist/runtime/subagents/dispatch.js +137 -142
  491. package/dist/runtime/subagents/limits.d.ts +9 -4
  492. package/dist/runtime/subagents/limits.js +4 -2
  493. package/dist/runtime/subagents/org-agents.d.ts +4 -4
  494. package/dist/runtime/subagents/org-agents.js +3 -2
  495. package/dist/runtime/subagents/progress.d.ts +2 -2
  496. package/dist/runtime/subagents/roster.d.ts +4 -4
  497. package/dist/runtime/subagents/roster.js +2 -2
  498. package/dist/runtime/subagents/skill-fork.d.ts +8 -9
  499. package/dist/runtime/subagents/skill-fork.js +17 -6
  500. package/dist/runtime/subagents/subagents.service.d.ts +40 -0
  501. package/dist/runtime/subagents/subagents.service.js +101 -0
  502. package/dist/runtime/usage-report.d.ts +94 -52
  503. package/dist/runtime/usage-report.js +200 -100
  504. package/dist/runtime/waits.d.ts +127 -59
  505. package/dist/runtime/waits.js +433 -210
  506. package/dist/sandbox/job-ids.d.ts +10 -0
  507. package/dist/sandbox/job-ids.js +10 -0
  508. package/dist/sandbox/jobs.d.ts +41 -0
  509. package/dist/sandbox/jobs.js +113 -0
  510. package/dist/sandbox/leases.d.ts +39 -31
  511. package/dist/sandbox/leases.js +117 -257
  512. package/dist/sandbox/providers.d.ts +19 -0
  513. package/dist/sandbox/providers.js +38 -0
  514. package/dist/sandbox/sandbox.module.d.ts +8 -0
  515. package/dist/sandbox/sandbox.module.js +30 -0
  516. package/dist/sandbox/sandbox.service.d.ts +24 -29
  517. package/dist/sandbox/sandbox.service.js +106 -75
  518. package/dist/skills/catalog.d.ts +37 -24
  519. package/dist/skills/catalog.js +100 -57
  520. package/dist/skills/changes.controller.d.ts +4 -4
  521. package/dist/skills/changes.controller.js +15 -9
  522. package/dist/skills/changes.service.d.ts +30 -20
  523. package/dist/skills/changes.service.js +425 -367
  524. package/dist/skills/invocable.controller.d.ts +1 -1
  525. package/dist/skills/invocable.controller.js +8 -5
  526. package/dist/skills/invocation-keys.d.ts +1 -1
  527. package/dist/skills/invocation-keys.js +1 -1
  528. package/dist/skills/invoke.d.ts +17 -16
  529. package/dist/skills/invoke.js +53 -21
  530. package/dist/skills/skills.controller.d.ts +1 -1
  531. package/dist/skills/skills.controller.js +11 -6
  532. package/dist/skills/skills.module.d.ts +6 -0
  533. package/dist/skills/skills.module.js +30 -0
  534. package/dist/skills/skills.service.d.ts +47 -30
  535. package/dist/skills/skills.service.js +221 -158
  536. package/dist/storage/job-ids.d.ts +6 -0
  537. package/dist/storage/job-ids.js +6 -0
  538. package/dist/storage/purge.d.ts +22 -7
  539. package/dist/storage/purge.js +55 -3
  540. package/dist/storage/storage.module.d.ts +6 -0
  541. package/dist/storage/storage.module.js +23 -0
  542. package/dist/storage/storage.service.d.ts +18 -4
  543. package/dist/storage/storage.service.js +44 -3
  544. package/dist/tools/approvals.controller.d.ts +1 -1
  545. package/dist/tools/approvals.controller.js +12 -8
  546. package/dist/tools/approvals.service.d.ts +33 -25
  547. package/dist/tools/approvals.service.js +343 -259
  548. package/dist/tools/breaker.d.ts +2 -2
  549. package/dist/tools/breaker.js +21 -3
  550. package/dist/tools/builtin-names.d.ts +73 -0
  551. package/dist/tools/builtin-names.js +116 -0
  552. package/dist/tools/builtins/agent.d.ts +7 -7
  553. package/dist/tools/builtins/agent.js +7 -11
  554. package/dist/tools/builtins/ask-user.d.ts +3 -3
  555. package/dist/tools/builtins/ask-user.js +3 -3
  556. package/dist/tools/builtins/builtin-tools.d.ts +21 -0
  557. package/dist/tools/builtins/builtin-tools.js +80 -0
  558. package/dist/tools/builtins/read-tool-output.d.ts +3 -3
  559. package/dist/tools/builtins/read-tool-output.js +3 -3
  560. package/dist/tools/builtins/sandbox/bash.d.ts +5 -5
  561. package/dist/tools/builtins/sandbox/bash.js +33 -30
  562. package/dist/tools/builtins/sandbox/common.d.ts +5 -4
  563. package/dist/tools/builtins/sandbox/common.js +2 -2
  564. package/dist/tools/builtins/sandbox/deliver.d.ts +1 -1
  565. package/dist/tools/builtins/sandbox/deliver.js +13 -13
  566. package/dist/tools/builtins/sandbox/edit.d.ts +1 -1
  567. package/dist/tools/builtins/sandbox/edit.js +42 -31
  568. package/dist/tools/builtins/sandbox/file-state.d.ts +34 -0
  569. package/dist/tools/builtins/sandbox/file-state.js +34 -0
  570. package/dist/tools/builtins/sandbox/glob-match.d.ts +1 -1
  571. package/dist/tools/builtins/sandbox/glob-match.js +1 -1
  572. package/dist/tools/builtins/sandbox/glob.d.ts +1 -1
  573. package/dist/tools/builtins/sandbox/glob.js +6 -6
  574. package/dist/tools/builtins/sandbox/grep.d.ts +7 -4
  575. package/dist/tools/builtins/sandbox/grep.js +149 -32
  576. package/dist/tools/builtins/sandbox/index.d.ts +1 -1
  577. package/dist/tools/builtins/sandbox/index.js +1 -1
  578. package/dist/tools/builtins/sandbox/read.d.ts +2 -2
  579. package/dist/tools/builtins/sandbox/read.js +22 -15
  580. package/dist/tools/builtins/sandbox/write.d.ts +1 -1
  581. package/dist/tools/builtins/sandbox/write.js +38 -34
  582. package/dist/tools/builtins/skill-load.d.ts +6 -6
  583. package/dist/tools/builtins/skill-load.js +33 -17
  584. package/dist/tools/builtins/skill-write.d.ts +4 -4
  585. package/dist/tools/builtins/skill-write.js +10 -10
  586. package/dist/tools/builtins/tool-search.d.ts +13 -9
  587. package/dist/tools/builtins/tool-search.js +25 -14
  588. package/dist/tools/canonical-json.d.ts +6 -0
  589. package/dist/tools/canonical-json.js +16 -0
  590. package/dist/tools/connector-content.controller.d.ts +1 -1
  591. package/dist/tools/connector-content.controller.js +11 -6
  592. package/dist/tools/connector-content.d.ts +12 -15
  593. package/dist/tools/connector-content.js +53 -18
  594. package/dist/tools/connectors.controller.d.ts +1 -1
  595. package/dist/tools/connectors.controller.js +21 -10
  596. package/dist/tools/connectors.service.d.ts +31 -13
  597. package/dist/tools/connectors.service.js +438 -348
  598. package/dist/tools/credentials.d.ts +17 -20
  599. package/dist/tools/credentials.js +55 -34
  600. package/dist/tools/display-names.d.ts +9 -0
  601. package/dist/tools/display-names.js +24 -0
  602. package/dist/tools/drift.d.ts +29 -41
  603. package/dist/tools/drift.js +116 -84
  604. package/dist/tools/elicitation.js +1 -1
  605. package/dist/tools/info.d.ts +32 -13
  606. package/dist/tools/info.js +88 -39
  607. package/dist/tools/job-ids.d.ts +13 -0
  608. package/dist/tools/job-ids.js +15 -0
  609. package/dist/tools/jobs.d.ts +24 -0
  610. package/dist/tools/jobs.js +69 -0
  611. package/dist/tools/legacy-data.d.ts +34 -0
  612. package/dist/tools/legacy-data.js +76 -0
  613. package/dist/tools/legacy-keys.d.ts +51 -0
  614. package/dist/tools/legacy-keys.js +115 -0
  615. package/dist/tools/naming.d.ts +1 -5
  616. package/dist/tools/naming.js +1 -7
  617. package/dist/tools/oauth/flow-paths.d.ts +16 -0
  618. package/dist/tools/oauth/flow-paths.js +38 -0
  619. package/dist/tools/oauth/flow.d.ts +30 -30
  620. package/dist/tools/oauth/flow.js +109 -81
  621. package/dist/tools/oauth/oauth.controller.d.ts +3 -3
  622. package/dist/tools/oauth/oauth.controller.js +12 -9
  623. package/dist/tools/oauth/tokens.d.ts +11 -3
  624. package/dist/tools/oauth/tokens.js +15 -14
  625. package/dist/tools/outputs.d.ts +13 -4
  626. package/dist/tools/outputs.js +48 -4
  627. package/dist/tools/pipeline.d.ts +72 -50
  628. package/dist/tools/pipeline.js +239 -100
  629. package/dist/tools/policy.d.ts +3 -16
  630. package/dist/tools/policy.js +13 -19
  631. package/dist/tools/questions.controller.d.ts +2 -2
  632. package/dist/tools/questions.controller.js +9 -6
  633. package/dist/tools/questions.service.d.ts +26 -25
  634. package/dist/tools/questions.service.js +201 -142
  635. package/dist/tools/registry.d.ts +43 -38
  636. package/dist/tools/registry.js +100 -72
  637. package/dist/tools/resources.d.ts +1 -1
  638. package/dist/tools/resources.js +1 -1
  639. package/dist/tools/specs.d.ts +5 -4
  640. package/dist/tools/specs.js +3 -1
  641. package/dist/tools/tools.module.d.ts +10 -0
  642. package/dist/tools/tools.module.js +91 -0
  643. package/dist/ui/call-extension.d.ts +16 -0
  644. package/dist/ui/call-extension.js +38 -0
  645. package/dist/ui/embed-token.d.ts +9 -5
  646. package/dist/ui/embed-token.js +34 -6
  647. package/dist/ui/ui-stream.d.ts +22 -17
  648. package/dist/ui/ui-stream.js +72 -12
  649. package/dist/ui/ui.module.d.ts +7 -0
  650. package/dist/ui/ui.module.js +28 -0
  651. package/dist/ui/views.controller.d.ts +14 -12
  652. package/dist/ui/views.controller.js +32 -25
  653. package/dist/ui/views.d.ts +9 -57
  654. package/dist/ui/views.js +43 -45
  655. package/package.json +10 -3
  656. package/src/migrations/0063_tool_keys_claude_code.sql +220 -0
  657. package/dist/http/health.controller.d.ts +0 -26
  658. package/dist/http/health.controller.js +0 -79
  659. package/dist/http/tokens.d.ts +0 -131
  660. package/dist/http/tokens.js +0 -131
  661. package/dist/http/zod.pipe.d.ts +0 -8
  662. package/dist/http/zod.pipe.js +0 -14
  663. package/dist/identity/rate-limit.d.ts +0 -55
  664. package/dist/identity/rate-limit.js +0 -121
  665. package/dist/sandbox/lifecycle.d.ts +0 -21
  666. package/dist/sandbox/lifecycle.js +0 -68
  667. package/dist/tools/builtins/sandbox/names.d.ts +0 -7
  668. package/dist/tools/builtins/sandbox/names.js +0 -20
  669. /package/dist/http/{gateway.module.d.ts → gateway-routes.d.ts} +0 -0
  670. /package/dist/http/{gateway.module.js → gateway-routes.js} +0 -0
@@ -1,18 +1,23 @@
1
- import { PLUGIN_DEPLOYMENT_CONFIG_TOPIC } from "./deployment-config.js";
1
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
2
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
3
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
4
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
5
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
6
+ };
7
+ var __param = (this && this.__param) || function (paramIndex, decorator) {
8
+ return function (target, key) { decorator(target, key, paramIndex); }
9
+ };
10
+ import { Inject, Injectable } from "@nestjs/common";
11
+ import { KernelConfigService } from "../infra/config/kernel-config.service.js";
12
+ import { LockService } from "../infra/lock/lock.service.js";
13
+ import { LockedInterval } from "../infra/schedule/locked-interval.js";
14
+ import { KERNEL_BUS, KERNEL_LOGGER } from "../infra/tokens.js";
15
+ import { ExtensionHost } from "./host.js";
16
+ import { ExtensionInstalls } from "./installs.js";
17
+ import { PLUGIN_DEPLOYMENT_CONFIG_TOPIC, PLUGINS_CHANGED_TOPIC, PLUGINS_RECONCILE_JOB, PLUGINS_RECONCILE_TOPIC, STALE_RECONCILE_PERIODS, } from "./lifecycle-topics.js";
2
18
  import { PLUGINS_MIGRATED_TOPIC } from "./migrate-lock.js";
3
- /**
4
- * 插件期望状态 / 快照变了(kernel bus 主题,频道 `cap:kernel:plugins.changed`,payload `{ plugin }`)。
5
- * 后台、CLI 写完 PG 后发布;各副本据此 reconcile,并作废路由闸门的名字缓存。
6
- */
7
- export const PLUGINS_CHANGED_TOPIC = "plugins.changed";
8
- /** 周期兜底(kernel bus 主题 `plugins.reconcile`,payload `{}`):维护任务 `plugins-reconcile` 发布。 */
9
- export const PLUGINS_RECONCILE_TOPIC = "plugins.reconcile";
10
- export { PLUGINS_MIGRATED_TOPIC };
11
- /** 维护任务:每 `extensionHost.reconcileIntervalSeconds` 秒发布一次 `plugins.reconcile`(任务名与 scheduler id 不含 `:`)。 */
12
- export const PLUGINS_RECONCILE_JOB = "plugins-reconcile";
13
- export const PLUGINS_RECONCILE_SCHEDULER_ID = "plugins-reconcile-every";
14
- /** 副本行心跳超过这么多个 reconcile 周期的副本不计入(C16;读状态的一方据此筛选)。 */
15
- export const STALE_RECONCILE_PERIODS = 3;
19
+ import { ReplicaStatusStore } from "./sources.js";
20
+ export { PLUGINS_CHANGED_TOPIC, PLUGINS_MIGRATED_TOPIC, PLUGINS_RECONCILE_JOB, PLUGINS_RECONCILE_TOPIC, STALE_RECONCILE_PERIODS, };
16
21
  /** 心跳超过这么多个周期的行直接删除(副本早已退出;读的一方本来就不计入)。 */
17
22
  const PRUNE_RECONCILE_PERIODS = 10;
18
23
  /**
@@ -23,34 +28,49 @@ const PRUNE_RECONCILE_PERIODS = 10;
23
28
  * 每次 reconcile 开始与结束时都刷新本副本状态行的心跳,并清理已卸载插件的行与早已退出的副本的行。
24
29
  * 进程内只有排队用的 Promise(不是跨副本状态)。
25
30
  */
26
- export class ExtensionLifecycle {
27
- d;
31
+ let ExtensionLifecycle = class ExtensionLifecycle {
32
+ host;
33
+ bus;
34
+ status;
35
+ installs;
36
+ config;
37
+ log;
28
38
  running;
29
39
  queued;
30
40
  unsubs = [];
41
+ /** {@link start} was called (the kernel's start sequence; never in the CLI, which loads nothing). */
42
+ started = false;
31
43
  stopped = false;
32
- constructor(d) {
33
- this.d = d;
44
+ constructor(host, bus, status,
45
+ /** Every install record's name (any desired state): prunes status rows this replica no longer knows. */
46
+ installs, config, log) {
47
+ this.host = host;
48
+ this.bus = bus;
49
+ this.status = status;
50
+ this.installs = installs;
51
+ this.config = config;
52
+ this.log = log;
34
53
  }
35
54
  /** 订阅三个主题(订阅失败只记 error:周期任务的消息同样收不到时,下次启动再来)。 */
36
55
  async start() {
56
+ this.started = true;
37
57
  const on = async (topic, handler) => {
38
58
  try {
39
- this.unsubs.push(await this.d.bus.subscribe(topic, handler));
59
+ this.unsubs.push(await this.bus.subscribe(topic, handler));
40
60
  }
41
61
  catch (err) {
42
- this.d.log.error("cannot subscribe to plugin lifecycle topic", { topic, err });
62
+ this.log.error("cannot subscribe to plugin lifecycle topic", { topic, err });
43
63
  }
44
64
  };
45
65
  await on(PLUGINS_CHANGED_TOPIC, (p) => {
46
66
  // 安装 / 卸载改变了「部署已知」的插件名:路由闸门不等 TTL
47
- this.d.host.invalidateKnownNames();
67
+ this.host.invalidateKnownNames();
48
68
  this.trigger(`changed:${pluginOf(p)}`);
49
69
  });
50
70
  await on(PLUGINS_RECONCILE_TOPIC, () => this.trigger("periodic"));
51
71
  await on(PLUGINS_MIGRATED_TOPIC, (p) => this.trigger(`migrated:${pluginOf(p)}`));
52
72
  await on(PLUGIN_DEPLOYMENT_CONFIG_TOPIC, (p) => {
53
- this.applyConfig(pluginOf(p)).catch((err) => this.d.log.error("applying a plugin deployment config change failed", {
73
+ this.applyConfig(pluginOf(p)).catch((err) => this.log.error("applying a plugin deployment config change failed", {
54
74
  plugin: pluginOf(p),
55
75
  err,
56
76
  }));
@@ -63,7 +83,7 @@ export class ExtensionLifecycle {
63
83
  async applyConfig(plugin) {
64
84
  if (this.stopped)
65
85
  return;
66
- const r = await this.d.host.applyDeploymentConfig(plugin);
86
+ const r = await this.host.applyDeploymentConfig(plugin);
67
87
  if (r === "not_loaded")
68
88
  await this.reconcile(`config:${plugin}`);
69
89
  }
@@ -79,7 +99,9 @@ export class ExtensionLifecycle {
79
99
  * 宿主那一步失败只记 error(下一个周期再来);之后照常刷新心跳。
80
100
  */
81
101
  reconcile(reason) {
82
- if (this.stopped)
102
+ // Before start (the bootstrap step, the CLI) there is nothing loaded to converge: the host
103
+ // loads the desired state as it is when it starts
104
+ if (this.stopped || !this.started)
83
105
  return Promise.resolve();
84
106
  if (this.queued)
85
107
  return this.queued;
@@ -98,38 +120,38 @@ export class ExtensionLifecycle {
98
120
  }
99
121
  /** 用同一个包重新 setup(配置的非 hot 改动、依赖方联动;与 reconcile 一样在宿主的串行队列里)。 */
100
122
  async reload(name) {
101
- await this.d.host.reload(name);
123
+ await this.host.reload(name);
102
124
  }
103
125
  trigger(reason) {
104
- this.reconcile(reason).catch((err) => this.d.log.error("plugin reconcile failed", { reason, err }));
126
+ this.reconcile(reason).catch((err) => this.log.error("plugin reconcile failed", { reason, err }));
105
127
  }
106
128
  async run(reason) {
107
129
  // 开始时也刷新心跳:converge 可能很久(排空在途调用、迁移),不能因此被读状态的一方当成退出的副本
108
- await this.d.status.heartbeat().catch((err) => {
109
- this.d.log.warn("cannot refresh plugin replica status heartbeats", { err });
130
+ await this.status.heartbeat().catch((err) => {
131
+ this.log.warn("cannot refresh plugin replica status heartbeats", { err });
110
132
  });
111
133
  try {
112
- await this.d.host.converge();
134
+ await this.host.converge();
113
135
  }
114
136
  catch (err) {
115
137
  if (this.stopped)
116
138
  return;
117
- this.d.log.error("plugin reconcile failed; retrying on the next cycle", { reason, err });
139
+ this.log.error("plugin reconcile failed; retrying on the next cycle", { reason, err });
118
140
  }
119
141
  if (this.stopped)
120
142
  return;
121
143
  if (reason === "periodic") {
122
144
  // 丢了 plugin-deployment-config 消息时:周期兜底重读生效插件的部署配置(没变时什么都不做)
123
- for (const name of this.d.host.configurablePlugins()) {
145
+ for (const name of this.host.configurablePlugins()) {
124
146
  if (this.stopped)
125
147
  return;
126
148
  try {
127
- await this.d.host.applyDeploymentConfig(name);
149
+ await this.host.applyDeploymentConfig(name);
128
150
  }
129
151
  catch (err) {
130
152
  if (this.stopped)
131
153
  return;
132
- this.d.log.error("applying a plugin deployment config change failed", {
154
+ this.log.error("applying a plugin deployment config change failed", {
133
155
  plugin: name,
134
156
  err,
135
157
  });
@@ -137,16 +159,58 @@ export class ExtensionLifecycle {
137
159
  }
138
160
  }
139
161
  try {
140
- await this.d.status.heartbeat();
141
- const keep = [...this.d.host.declared().keys(), ...(await this.d.installedNames())];
142
- const period = this.d.reconcileIntervalSeconds();
143
- await this.d.status.prune(keep, PRUNE_RECONCILE_PERIODS * period);
162
+ await this.status.heartbeat();
163
+ const keep = [...this.host.declared().keys(), ...(await this.installs.installedNames())];
164
+ const period = this.config.get().extensionHost.reconcileIntervalSeconds;
165
+ await this.status.prune(keep, PRUNE_RECONCILE_PERIODS * period);
144
166
  }
145
167
  catch (err) {
146
- this.d.log.warn("cannot refresh plugin replica status heartbeats", { err });
168
+ this.log.warn("cannot refresh plugin replica status heartbeats", { err });
147
169
  }
148
170
  }
149
- }
171
+ };
172
+ ExtensionLifecycle = __decorate([
173
+ Injectable(),
174
+ __param(0, Inject(ExtensionHost)),
175
+ __param(1, Inject(KERNEL_BUS)),
176
+ __param(2, Inject(ReplicaStatusStore)),
177
+ __param(3, Inject(ExtensionInstalls)),
178
+ __param(4, Inject(KernelConfigService)),
179
+ __param(5, Inject(KERNEL_LOGGER))
180
+ ], ExtensionLifecycle);
181
+ export { ExtensionLifecycle };
150
182
  const pluginOf = (p) => typeof p === "object" && p !== null && typeof p.plugin === "string"
151
183
  ? p.plugin
152
184
  : "?";
185
+ /**
186
+ * The periodic reconcile fallback (job `plugins-reconcile`, once per
187
+ * `extensionHost.reconcileIntervalSeconds` across replicas): publishes `kernel.plugins.reconcile`,
188
+ * so every replica converges even when it lost a message. A worker-role job (`WorkerModule`); every
189
+ * replica's {@link ExtensionLifecycle} subscribes to the topic.
190
+ */
191
+ let PluginsReconcileJob = class PluginsReconcileJob {
192
+ bus;
193
+ config;
194
+ lockService;
195
+ log;
196
+ constructor(bus, config, lockService, log) {
197
+ this.bus = bus;
198
+ this.config = config;
199
+ this.lockService = lockService;
200
+ this.log = log;
201
+ }
202
+ async run() {
203
+ await this.bus.publish(PLUGINS_RECONCILE_TOPIC, {});
204
+ }
205
+ };
206
+ __decorate([
207
+ LockedInterval(PLUGINS_RECONCILE_JOB, (c) => c.extensionHost.reconcileIntervalSeconds * 1000)
208
+ ], PluginsReconcileJob.prototype, "run", null);
209
+ PluginsReconcileJob = __decorate([
210
+ Injectable(),
211
+ __param(0, Inject(KERNEL_BUS)),
212
+ __param(1, Inject(KernelConfigService)),
213
+ __param(2, Inject(LockService)),
214
+ __param(3, Inject(KERNEL_LOGGER))
215
+ ], PluginsReconcileJob);
216
+ export { PluginsReconcileJob };
@@ -0,0 +1,33 @@
1
+ import { TransactionHost } from "../infra/database/transaction-host.js";
2
+ import { XactLock } from "../infra/database/xact-lock.js";
3
+ /**
4
+ * Serializes the install record writes of one extension name (install, enable, disable, uninstall),
5
+ * including a first install that has no row to lock yet. Joins the caller's transaction
6
+ * (`mandatory`), which holds the lock until it ends.
7
+ */
8
+ export declare class PluginInstallLock {
9
+ private readonly xactLock;
10
+ readonly txHost: TransactionHost;
11
+ constructor(xactLock: XactLock, txHost: TransactionHost);
12
+ lock(name: string): Promise<void>;
13
+ }
14
+ /**
15
+ * Serializes the permission snapshot writes of one extension (web approval, the bootstrap step's
16
+ * approval of a stored package). Joins the caller's transaction (`mandatory`).
17
+ */
18
+ export declare class PluginApproveLock {
19
+ private readonly xactLock;
20
+ readonly txHost: TransactionHost;
21
+ constructor(xactLock: XactLock, txHost: TransactionHost);
22
+ lock(name: string): Promise<void>;
23
+ }
24
+ /**
25
+ * Serializes the deployment config writes of one extension. Joins the caller's transaction
26
+ * (`mandatory`).
27
+ */
28
+ export declare class PluginDeploymentConfigLock {
29
+ private readonly xactLock;
30
+ readonly txHost: TransactionHost;
31
+ constructor(xactLock: XactLock, txHost: TransactionHost);
32
+ lock(name: string): Promise<void>;
33
+ }
@@ -0,0 +1,86 @@
1
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
2
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
3
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
4
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
5
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
6
+ };
7
+ var __param = (this && this.__param) || function (paramIndex, decorator) {
8
+ return function (target, key) { decorator(target, key, paramIndex); }
9
+ };
10
+ import { Inject, Injectable } from "@nestjs/common";
11
+ import { TransactionHost } from "../infra/database/transaction-host.js";
12
+ import { Transactional } from "../infra/database/transactional.decorator.js";
13
+ import { XactLock } from "../infra/database/xact-lock.js";
14
+ /**
15
+ * Serializes the install record writes of one extension name (install, enable, disable, uninstall),
16
+ * including a first install that has no row to lock yet. Joins the caller's transaction
17
+ * (`mandatory`), which holds the lock until it ends.
18
+ */
19
+ let PluginInstallLock = class PluginInstallLock {
20
+ xactLock;
21
+ txHost;
22
+ constructor(xactLock, txHost) {
23
+ this.xactLock = xactLock;
24
+ this.txHost = txHost;
25
+ }
26
+ async lock(name) {
27
+ await this.xactLock.lock(`capybara.plugin-install:${name}`);
28
+ }
29
+ };
30
+ __decorate([
31
+ Transactional({ propagation: "mandatory" })
32
+ ], PluginInstallLock.prototype, "lock", null);
33
+ PluginInstallLock = __decorate([
34
+ Injectable(),
35
+ __param(0, Inject(XactLock)),
36
+ __param(1, Inject(TransactionHost))
37
+ ], PluginInstallLock);
38
+ export { PluginInstallLock };
39
+ /**
40
+ * Serializes the permission snapshot writes of one extension (web approval, the bootstrap step's
41
+ * approval of a stored package). Joins the caller's transaction (`mandatory`).
42
+ */
43
+ let PluginApproveLock = class PluginApproveLock {
44
+ xactLock;
45
+ txHost;
46
+ constructor(xactLock, txHost) {
47
+ this.xactLock = xactLock;
48
+ this.txHost = txHost;
49
+ }
50
+ async lock(name) {
51
+ await this.xactLock.lock(`capybara.plugin-approve:${name}`);
52
+ }
53
+ };
54
+ __decorate([
55
+ Transactional({ propagation: "mandatory" })
56
+ ], PluginApproveLock.prototype, "lock", null);
57
+ PluginApproveLock = __decorate([
58
+ Injectable(),
59
+ __param(0, Inject(XactLock)),
60
+ __param(1, Inject(TransactionHost))
61
+ ], PluginApproveLock);
62
+ export { PluginApproveLock };
63
+ /**
64
+ * Serializes the deployment config writes of one extension. Joins the caller's transaction
65
+ * (`mandatory`).
66
+ */
67
+ let PluginDeploymentConfigLock = class PluginDeploymentConfigLock {
68
+ xactLock;
69
+ txHost;
70
+ constructor(xactLock, txHost) {
71
+ this.xactLock = xactLock;
72
+ this.txHost = txHost;
73
+ }
74
+ async lock(name) {
75
+ await this.xactLock.lock(`capybara.plugin-deployment-config:${name}`);
76
+ }
77
+ };
78
+ __decorate([
79
+ Transactional({ propagation: "mandatory" })
80
+ ], PluginDeploymentConfigLock.prototype, "lock", null);
81
+ PluginDeploymentConfigLock = __decorate([
82
+ Injectable(),
83
+ __param(0, Inject(XactLock)),
84
+ __param(1, Inject(TransactionHost))
85
+ ], PluginDeploymentConfigLock);
86
+ export { PluginDeploymentConfigLock };
@@ -1,12 +1,11 @@
1
- import { type Transaction } from "kysely";
2
- import type { KernelDatabase, KernelDb } from "../db/kernel-schema.js";
1
+ import type { KernelSchemaDb } from "../db/kernel-schema.js";
3
2
  /** 插件迁移完成(kernel bus 主题,频道 `cap:kernel:plugins.migrated`,payload `{ plugin, sha256 }`)。 */
4
3
  export declare const PLUGINS_MIGRATED_TOPIC = "plugins.migrated";
5
4
  /** 插件迁移咨询锁的键前缀(`hashtext(<前缀><插件名>)`)。 */
6
5
  export declare const MIGRATE_LOCK_PREFIX = "capybara.plugin-migrate:";
7
6
  /** {@link ensureMigrated} 的依赖。 */
8
7
  export interface MigrateLockDeps {
9
- db: KernelDb;
8
+ db: KernelSchemaDb;
10
9
  /** 迁移用独立连接(不走连接池)。 */
11
10
  dbUrl: string;
12
11
  connectTimeoutMs?: number | undefined;
@@ -45,7 +44,7 @@ export declare function ensureMigrated(d: MigrateLockDeps, name: string, sha256:
45
44
  * 按插件 schema 的 `_migrations` 表比对文件名与 checksum(与迁移器相同的 sha256);改过内容的也算未执行。
46
45
  * 插件从没迁移过时返回全部文件。
47
46
  */
48
- export declare function unrunMigrations(db: KernelDb | Transaction<KernelDatabase>, name: string, files: {
47
+ export declare function unrunMigrations(db: KernelSchemaDb, name: string, files: {
49
48
  file: string;
50
49
  sql: string;
51
50
  }[]): Promise<string[]>;
@@ -1,7 +1,7 @@
1
1
  import { z } from "zod";
2
2
  import { type Principal } from "../identity/principal.js";
3
3
  import { type OrgContext } from "../orgs/org.guard.js";
4
- import type { OrgExtensionConfigs, OrgExtensionView } from "./org-config.js";
4
+ import { OrgExtensionConfigs, type OrgExtensionView } from "./org-config.js";
5
5
  declare const PutBody: z.ZodObject<{
6
6
  enabled: z.ZodOptional<z.ZodBoolean>;
7
7
  config: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
@@ -7,12 +7,13 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
7
7
  var __param = (this && this.__param) || function (paramIndex, decorator) {
8
8
  return function (target, key) { decorator(target, key, paramIndex); }
9
9
  };
10
- import { Body, Controller, Get, Inject, Param, Put } from "@nestjs/common";
10
+ import { Controller, Get, Inject, Param, Put } from "@nestjs/common";
11
11
  import { z } from "zod";
12
- import { ORG_EXTENSION_CONFIGS } from "../http/tokens.js";
13
- import { ZodPipe } from "../http/zod.pipe.js";
14
12
  import { CurrentPrincipal, patTokenId, requireUser, } from "../identity/principal.js";
13
+ import { createZodDto } from "../infra/validation/create-zod-dto.js";
14
+ import { ZBody } from "../infra/validation/zod-params.js";
15
15
  import { CurrentOrg, OrgAction } from "../orgs/org.guard.js";
16
+ import { OrgExtensionConfigs } from "./org-config.js";
16
17
  const PutBody = z
17
18
  .object({
18
19
  enabled: z.boolean().optional(),
@@ -20,6 +21,8 @@ const PutBody = z
20
21
  force: z.boolean().optional(),
21
22
  })
22
23
  .strict();
24
+ class OrgExtensionPutBody extends createZodDto(PutBody, "OrgExtensionPutBody") {
25
+ }
23
26
  /**
24
27
  * Org-level extension enablement and config (`/api/v1/orgs/:orgId/extensions`); responses echo only
25
28
  * non-secret config and whether each secret is set.
@@ -50,10 +53,10 @@ __decorate([
50
53
  __param(0, CurrentPrincipal()),
51
54
  __param(1, CurrentOrg()),
52
55
  __param(2, Param("extension")),
53
- __param(3, Body(new ZodPipe(PutBody)))
56
+ __param(3, ZBody(OrgExtensionPutBody))
54
57
  ], OrgExtensionConfigsController.prototype, "put", null);
55
58
  OrgExtensionConfigsController = __decorate([
56
59
  Controller("api/v1/orgs/:orgId/extensions"),
57
- __param(0, Inject(ORG_EXTENSION_CONFIGS))
60
+ __param(0, Inject(OrgExtensionConfigs))
58
61
  ], OrgExtensionConfigsController);
59
62
  export { OrgExtensionConfigsController };
@@ -1,11 +1,15 @@
1
- import type { Transaction } from "kysely";
2
- import type { z } from "zod";
3
1
  import { type Keyring } from "../ctx/secrets.js";
4
- import type { KernelDatabase, KernelDb } from "../db/kernel-schema.js";
2
+ import { KernelDb } from "../infra/database/kernel-db.js";
3
+ import { TransactionHost } from "../infra/database/transaction-host.js";
4
+ import { KernelEvents } from "../infra/events/kernel-events.js";
5
+ import type { KernelLogger } from "../log.js";
6
+ import { OrgLock } from "../orgs/org-lock.js";
7
+ import { type ConfigIssue, toIssues } from "./config-issues.js";
5
8
  import { type JsonSchema } from "./config-json-schema.js";
6
- import type { ExtensionHost } from "./host.js";
9
+ import { ExtensionHost } from "./host.js";
10
+ import { ExtensionInstalls } from "./installs.js";
7
11
  import { type PermissionGroup } from "./permission-view.js";
8
- type Trx = Transaction<KernelDatabase>;
12
+ export { type ConfigIssue, toIssues };
9
13
  /** 组织视角下一个已加载插件的状态;`config` 永远不含密钥字段,密钥只回显「是否已设置」。 */
10
14
  export interface OrgExtensionView {
11
15
  plugin: string;
@@ -56,24 +60,16 @@ export interface OrgExtensionPutOptions {
56
60
  */
57
61
  approvedBy?: string;
58
62
  /**
59
- * 应用安装用:在组织行锁内读到该插件已启用时什么都不写(不改配置、不审计),并把 `skipped` 置为 true——
60
- * 「之前就启用」与「本次启用」在锁内判定,不会与并发的启用竞争。
63
+ * For a plugin install: when the extension is already enabled under the org row lock, nothing is
64
+ * written (no config change, no audit) and `skipped` is set to true. "Enabled before" and
65
+ * "enabled now" are decided under the lock, so a concurrent enable cannot race it. A caller that
66
+ * records the extension in the same transaction (the catalog install, `put` joins its
67
+ * transaction) reads `skipped` after `put` returns: no concurrent uninstall fits in between.
61
68
  */
62
69
  ifDisabled?: {
63
70
  skipped: boolean;
64
71
  };
65
- /**
66
- * 在同一个事务(组织行锁内)里最后执行,`skipped` 同 {@link ifDisabled}:应用安装在这里记组件,启用与记录之间
67
- * 插不进并发的卸载。
68
- */
69
- inTransaction?: (t: Trx, skipped: boolean) => Promise<void>;
70
- }
71
- /** 校验失败的单条原因:只含路径与按 issue 类型生成的说明,不回显字段值。 */
72
- export interface ConfigIssue {
73
- path: string;
74
- message: string;
75
72
  }
76
- export declare function toIssues(error: z.ZodError): ConfigIssue[];
77
73
  /**
78
74
  * Org-level extension config: enablement and the `config.org` config stored per org.
79
75
  * The non-secret part is stored in `capybara.extension_org_configs.config`; each secret field is
@@ -82,38 +78,42 @@ export declare function toIssues(error: z.ZodError): ConfigIssue[];
82
78
  * No in-process state: every call reads PG, safe with multiple replicas.
83
79
  */
84
80
  export declare class OrgExtensionConfigs {
85
- private readonly db;
81
+ private readonly kdb;
82
+ readonly txHost: TransactionHost;
86
83
  private readonly keyring;
87
84
  private readonly host;
88
- private readonly hooks;
89
- constructor(db: KernelDb, keyring: Keyring, host: ExtensionHost, hooks?: {
90
- /**
91
- * 经手(写入或解密读出)的密钥值,含嵌套字段;只在事务提交后调用(回滚的写入不上报)。
92
- * 内核传 `log.addOrgSecrets` 使其在日志中打码。
93
- */
94
- onSecrets?: (values: string[]) => void;
95
- /**
96
- * 写入提交之后调用(`enabled` 为写入后的启用状态)。内核传:停用时给该组织该插件的渠道连接广播
97
- * `channel.changed`,持有长连接的副本立即断开。
98
- */
99
- afterPut?: (orgId: string, plugin: string, enabled: boolean) => Promise<void>;
100
- /** 部署上的安装记录(任何期望状态):没加载的列为不可用(T14)。 */
101
- installed?: () => Promise<{
102
- name: string;
103
- version: string;
104
- }[]>;
105
- /** 仅供测试:在读完配置行之后、读密钥之前插入确定性的交错点。 */
106
- afterConfigRowRead?: () => Promise<void>;
107
- });
108
- /** 把一份组织配置里的密钥值交给 onSecrets(无回调或无密钥时无操作);调用方须在事务提交后调用。 */
85
+ /** The org row lock (orgs/org-lock.ts): joins the transaction. */
86
+ private readonly orgLock;
87
+ /** Install records (any desired state): the ones not loaded are listed unavailable (T14). */
88
+ private readonly installs;
89
+ /** `extension.org-disabled` after a disable commits (channel connections drop at once). */
90
+ private readonly events;
91
+ /** Secret values handled (written or decrypted) are masked in the logs after the commit. */
92
+ private readonly log;
93
+ /** Test seam only: a deterministic interleaving point after the config rows are read, before the secrets. */
94
+ afterConfigRowRead: (() => Promise<void>) | undefined;
95
+ constructor(kdb: KernelDb, txHost: TransactionHost, keyring: Keyring, host: ExtensionHost,
96
+ /** The org row lock (orgs/org-lock.ts): joins the transaction. */
97
+ orgLock: OrgLock,
98
+ /** Install records (any desired state): the ones not loaded are listed unavailable (T14). */
99
+ installs: ExtensionInstalls,
100
+ /** `extension.org-disabled` after a disable commits (channel connections drop at once). */
101
+ events: KernelEvents,
102
+ /** Secret values handled (written or decrypted) are masked in the logs after the commit. */
103
+ log: KernelLogger);
104
+ /** The kernel-schema handle of the current transaction. */
105
+ private get db();
106
+ /** 把一份组织配置里的密钥值登记到日志打码(无密钥时无操作);调用方须在事务提交后调用。 */
109
107
  private reportSecrets;
110
- /** `REPEATABLE READ` 只读事务:配置行与密钥来自同一个快照,不会读到跨两次提交的混合状态。 */
111
- private snapshot;
108
+ /** After a write committed: a disabled extension's channel connections drop at once. */
109
+ private afterPut;
112
110
  /**
113
111
  * 列出所有已加载插件在该组织下的状态(按加载顺序);无记录时 enabled=false、config=null。
114
112
  * 之后是已安装但此刻没加载的插件(部署上停用等),`available: false`,按名字排序。
115
113
  */
116
114
  list(orgId: string): Promise<OrgExtensionView[]>;
115
+ /** `REPEATABLE READ` read-only: the config rows and the secrets come from one snapshot. */
116
+ private listSnapshot;
117
117
  /**
118
118
  * Writes enablement and / or config. The actor's role is re-read under the org row lock (needs
119
119
  * `org.extensions.manage`).
@@ -126,6 +126,7 @@ export declare class OrgExtensionConfigs {
126
126
  * does not satisfy the schema -> `extension.config_invalid`.
127
127
  */
128
128
  put(orgId: string, plugin: string, input: OrgExtensionInput, actorAccountId: string, actorTokenId?: string, opts?: OrgExtensionPutOptions): Promise<OrgExtensionView>;
129
+ private write;
129
130
  /**
130
131
  * 读取并解密某插件在该组织下的完整配置(供运行时按组织构造插件实例)。
131
132
  * A required bootstrap plugin is enabled without a row (its stored config, or `{}`, is validated).
@@ -137,17 +138,19 @@ export declare class OrgExtensionConfigs {
137
138
  enabled: boolean;
138
139
  config: unknown;
139
140
  } | undefined>;
141
+ /** `REPEATABLE READ` read-only: the config row and the secrets come from one snapshot. */
142
+ private getSnapshot;
140
143
  private decode;
141
144
  /**
142
145
  * 该组织里已启用、且所 requires 的按组织启用的能力只剩这个插件提供的插件(停用它会让它们失去依赖)。
143
- * 在调用方事务里读(应用卸载 / 回滚前判断是否保留)。
146
+ * 在调用方事务里读(应用卸载 / 回滚前判断是否保留;`mandatory`: the caller holds the org row lock).
144
147
  */
145
- enabledDependents(t: Trx, orgId: string, plugin: string): Promise<string[]>;
148
+ enabledDependents(orgId: string, plugin: string): Promise<string[]>;
146
149
  /**
147
150
  * 在调用方事务里停用(应用安装的回滚与卸载用;调用方已锁组织行并复核角色):不检查依赖方,配置保留,
148
151
  * 审计 `org.plugin_config.updated`(带 reason)。提交后调用方须再调 {@link afterDisable}。
149
152
  */
150
- disableIn(t: Trx, orgId: string, plugin: string, actorAccountId: string, reason: string): Promise<boolean>;
153
+ disableIn(orgId: string, plugin: string, actorAccountId: string, reason: string): Promise<boolean>;
151
154
  /** {@link disableIn} 的事务提交之后:通知停用(断开该插件的渠道连接等)。 */
152
155
  afterDisable(orgId: string, plugin: string): Promise<void>;
153
156
  /** 该组织已启用的插件名(只含当前已加载的插件;待批准的不算;必需的引导插件始终算启用)。 */
@@ -166,4 +169,3 @@ export declare class OrgExtensionConfigs {
166
169
  /** 该组织在 `kernel` 命名空间下已设置的插件配置密钥键(不解密)。 */
167
170
  private setSecretKeys;
168
171
  }
169
- export {};