@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.
- package/bootstrap.json +94 -5
- package/dist/admin/admin-agents.controller.d.ts +28 -0
- package/dist/admin/admin-agents.controller.js +79 -0
- package/dist/admin/admin-connectors.controller.d.ts +29 -0
- package/dist/admin/admin-connectors.controller.js +79 -0
- package/dist/admin/admin-items.schemas.d.ts +42 -0
- package/dist/admin/admin-items.schemas.js +48 -0
- package/dist/admin/admin.controller.d.ts +52 -80
- package/dist/admin/admin.controller.js +112 -81
- package/dist/admin/admin.module.d.ts +4 -1
- package/dist/admin/admin.module.js +50 -4
- package/dist/admin/admin.schemas.d.ts +69 -0
- package/dist/admin/admin.schemas.js +53 -0
- package/dist/admin/audit.controller.d.ts +14 -0
- package/dist/admin/audit.controller.js +42 -0
- package/dist/admin/audit.schemas.d.ts +8 -0
- package/dist/admin/audit.schemas.js +17 -0
- package/dist/admin/extensions.controller.d.ts +34 -3
- package/dist/admin/extensions.controller.js +66 -8
- package/dist/admin/extensions.schemas.d.ts +7 -0
- package/dist/admin/extensions.schemas.js +10 -0
- package/dist/admin/health.service.d.ts +104 -0
- package/dist/admin/health.service.js +246 -0
- package/dist/admin/limit-defaults.d.ts +20 -0
- package/dist/admin/limit-defaults.js +10 -0
- package/dist/admin/overview.controller.d.ts +31 -0
- package/dist/admin/overview.controller.js +78 -0
- package/dist/admin/overview.schemas.d.ts +8 -0
- package/dist/admin/overview.schemas.js +13 -0
- package/dist/admin/overview.service.d.ts +112 -0
- package/dist/admin/overview.service.js +223 -0
- package/dist/admin/platform-audit.service.d.ts +41 -0
- package/dist/admin/platform-audit.service.js +70 -0
- package/dist/admin/setup-lock.d.ts +1 -1
- package/dist/admin/setup-lock.js +1 -1
- package/dist/admin/setup.controller.d.ts +1 -1
- package/dist/admin/setup.controller.js +1 -1
- package/dist/admin/setup.service.d.ts +4 -4
- package/dist/admin/setup.service.js +8 -8
- package/dist/admin/usage.service.d.ts +149 -0
- package/dist/admin/usage.service.js +321 -0
- package/dist/agents/admin-agents.d.ts +92 -0
- package/dist/agents/admin-agents.js +170 -0
- package/dist/agents/agent-lookup.d.ts +24 -0
- package/dist/agents/agent-lookup.js +46 -2
- package/dist/agents/agent-profile.service.d.ts +31 -0
- package/dist/agents/agent-profile.service.js +122 -0
- package/dist/agents/agents.controller.d.ts +53 -168
- package/dist/agents/agents.controller.js +163 -34
- package/dist/agents/agents.module.d.ts +6 -2
- package/dist/agents/agents.module.js +41 -7
- package/dist/agents/agents.schemas.d.ts +392 -0
- package/dist/agents/agents.schemas.js +126 -0
- package/dist/agents/agents.service.d.ts +121 -36
- package/dist/agents/agents.service.js +411 -121
- package/dist/agents/definition.d.ts +142 -21
- package/dist/agents/definition.js +389 -43
- package/dist/agents/from-template.d.ts +106 -0
- package/dist/agents/from-template.js +680 -0
- package/dist/agents/from-template.service.d.ts +72 -0
- package/dist/agents/from-template.service.js +178 -0
- package/dist/agents/instruction-files.d.ts +60 -0
- package/dist/agents/instruction-files.js +111 -0
- package/dist/agents/models.controller.d.ts +44 -6
- package/dist/agents/models.controller.js +84 -8
- package/dist/agents/org-templates.d.ts +186 -0
- package/dist/agents/org-templates.js +876 -0
- package/dist/agents/pending-connector-requests.d.ts +79 -0
- package/dist/agents/pending-connector-requests.js +215 -0
- package/dist/agents/pending-connectors.controller.d.ts +39 -0
- package/dist/agents/pending-connectors.controller.js +91 -0
- package/dist/agents/pending-connectors.service.d.ts +62 -0
- package/dist/agents/pending-connectors.service.js +282 -0
- package/dist/agents/profile.d.ts +114 -0
- package/dist/agents/profile.js +55 -0
- package/dist/agents/readiness.controller.d.ts +26 -0
- package/dist/agents/readiness.controller.js +56 -0
- package/dist/agents/templates.controller.d.ts +77 -5
- package/dist/agents/templates.controller.js +153 -7
- package/dist/agents/templates.d.ts +127 -23
- package/dist/agents/templates.js +482 -44
- package/dist/agents/templates.schemas.d.ts +20 -0
- package/dist/agents/templates.schemas.js +45 -0
- package/dist/background/background.controller.d.ts +38 -0
- package/dist/background/background.controller.js +88 -0
- package/dist/background/background.module.d.ts +10 -0
- package/dist/background/background.module.js +39 -0
- package/dist/background/background.schemas.d.ts +10 -0
- package/dist/background/background.schemas.js +16 -0
- package/dist/background/finish.d.ts +44 -0
- package/dist/background/finish.js +95 -0
- package/dist/background/launch-lock.d.ts +15 -0
- package/dist/background/launch-lock.js +40 -0
- package/dist/background/launch.d.ts +42 -0
- package/dist/background/launch.js +77 -0
- package/dist/background/poll.job.d.ts +56 -0
- package/dist/background/poll.job.js +195 -0
- package/dist/background/render.d.ts +23 -0
- package/dist/background/render.js +48 -0
- package/dist/background/session.d.ts +48 -0
- package/dist/background/session.js +80 -0
- package/dist/background/status.d.ts +35 -0
- package/dist/background/status.js +57 -0
- package/dist/background/stop.d.ts +68 -0
- package/dist/background/stop.js +244 -0
- package/dist/background/store.d.ts +167 -0
- package/dist/background/store.js +361 -0
- package/dist/background/store.module.d.ts +6 -0
- package/dist/background/store.module.js +22 -0
- package/dist/background/tasks.service.d.ts +109 -0
- package/dist/background/tasks.service.js +271 -0
- package/dist/background/wake-rules.d.ts +66 -0
- package/dist/background/wake-rules.js +113 -0
- package/dist/background/wake.d.ts +30 -0
- package/dist/background/wake.js +63 -0
- package/dist/catalog/admin-catalog.controller.d.ts +136 -52
- package/dist/catalog/admin-catalog.controller.js +275 -65
- package/dist/catalog/admin-catalog.schemas.d.ts +82 -0
- package/dist/catalog/admin-catalog.schemas.js +99 -0
- package/dist/catalog/appearance.schemas.d.ts +10 -0
- package/dist/catalog/appearance.schemas.js +20 -0
- package/dist/catalog/appearance.service.d.ts +105 -0
- package/dist/catalog/appearance.service.js +306 -0
- package/dist/catalog/catalog-content.d.ts +122 -35
- package/dist/catalog/catalog-content.js +122 -14
- package/dist/catalog/catalog-files.d.ts +42 -0
- package/dist/catalog/catalog-files.js +89 -0
- package/dist/catalog/catalog-import.module.d.ts +7 -0
- package/dist/catalog/catalog-import.module.js +63 -0
- package/dist/catalog/catalog-items.d.ts +122 -7
- package/dist/catalog/catalog-items.js +301 -13
- package/dist/catalog/catalog-scope.service.d.ts +293 -0
- package/dist/catalog/catalog-scope.service.js +1236 -0
- package/dist/catalog/catalog.module.d.ts +7 -9
- package/dist/catalog/catalog.module.js +47 -31
- package/dist/catalog/catalog.service.d.ts +122 -31
- package/dist/catalog/catalog.service.js +177 -105
- package/dist/catalog/claude/agents.js +15 -10
- package/dist/catalog/claude/translate.js +3 -0
- package/dist/catalog/cli.d.ts +11 -1
- package/dist/catalog/cli.js +29 -1
- package/dist/catalog/component-promotion.d.ts +96 -0
- package/dist/catalog/component-promotion.js +395 -0
- package/dist/catalog/component-scope.controller.d.ts +102 -0
- package/dist/catalog/component-scope.controller.js +257 -0
- package/dist/catalog/component-scope.schemas.d.ts +118 -0
- package/dist/catalog/component-scope.schemas.js +97 -0
- package/dist/catalog/component-scope.service.d.ts +394 -0
- package/dist/catalog/component-scope.service.js +1133 -0
- package/dist/catalog/component-state.d.ts +207 -0
- package/dist/catalog/component-state.js +484 -0
- package/dist/catalog/git-source.d.ts +9 -1
- package/dist/catalog/git-source.js +29 -2
- package/dist/catalog/job-ids.d.ts +30 -0
- package/dist/catalog/job-ids.js +25 -0
- package/dist/catalog/marketplace-fetch.d.ts +1 -1
- package/dist/catalog/marketplace-icons.d.ts +64 -0
- package/dist/catalog/marketplace-icons.js +131 -0
- package/dist/catalog/marketplaces.controller.d.ts +50 -41
- package/dist/catalog/marketplaces.controller.js +130 -46
- package/dist/catalog/marketplaces.schemas.d.ts +48 -0
- package/dist/catalog/marketplaces.schemas.js +53 -0
- package/dist/catalog/marketplaces.service.d.ts +110 -17
- package/dist/catalog/marketplaces.service.js +337 -29
- package/dist/catalog/org-catalog.controller.d.ts +114 -62
- package/dist/catalog/org-catalog.controller.js +191 -98
- package/dist/catalog/org-catalog.schemas.d.ts +104 -0
- package/dist/catalog/org-catalog.schemas.js +107 -0
- package/dist/catalog/org-catalog.service.d.ts +72 -33
- package/dist/catalog/org-catalog.service.js +367 -158
- package/dist/catalog/org-extension-switch.d.ts +41 -0
- package/dist/catalog/org-extension-switch.js +115 -0
- package/dist/catalog/org-extension.controller.d.ts +133 -0
- package/dist/catalog/org-extension.controller.js +313 -0
- package/dist/catalog/org-extension.schemas.d.ts +15 -0
- package/dist/catalog/org-extension.schemas.js +22 -0
- package/dist/catalog/org-plugin-uploads.controller.d.ts +77 -0
- package/dist/catalog/org-plugin-uploads.controller.js +200 -0
- package/dist/catalog/org-plugin-uploads.d.ts +71 -0
- package/dist/catalog/org-plugin-uploads.js +122 -0
- package/dist/catalog/org-plugin-uploads.schemas.d.ts +20 -0
- package/dist/catalog/org-plugin-uploads.schemas.js +32 -0
- package/dist/catalog/owned-items.d.ts +188 -0
- package/dist/catalog/owned-items.js +808 -0
- package/dist/catalog/owned-plugin-cleanup.d.ts +56 -0
- package/dist/catalog/owned-plugin-cleanup.js +194 -0
- package/dist/catalog/ownership.d.ts +172 -0
- package/dist/catalog/ownership.js +326 -0
- package/dist/catalog/platform-components.d.ts +243 -0
- package/dist/catalog/platform-components.js +872 -0
- package/dist/catalog/platform-migration.d.ts +115 -0
- package/dist/catalog/platform-migration.js +583 -0
- package/dist/catalog/plugin-import.d.ts +254 -47
- package/dist/catalog/plugin-import.js +810 -112
- package/dist/catalog/plugin-install.d.ts +205 -42
- package/dist/catalog/plugin-install.js +828 -126
- package/dist/catalog/plugin-package.d.ts +43 -4
- package/dist/catalog/plugin-package.js +194 -7
- package/dist/catalog/plugin-upgrade.d.ts +308 -225
- package/dist/catalog/plugin-upgrade.js +1325 -1131
- package/dist/catalog/request-rules.d.ts +65 -0
- package/dist/catalog/request-rules.js +217 -0
- package/dist/catalog/requests.service.d.ts +194 -118
- package/dist/catalog/requests.service.js +530 -343
- package/dist/catalog/reserved-names.d.ts +8 -0
- package/dist/catalog/reserved-names.js +42 -0
- package/dist/catalog/scope-orgs.d.ts +21 -0
- package/dist/catalog/scope-orgs.js +67 -0
- package/dist/catalog/scope-state.d.ts +35 -0
- package/dist/catalog/scope-state.js +87 -0
- package/dist/catalog/scope-sync-workers.d.ts +7 -0
- package/dist/catalog/scope-sync-workers.js +29 -0
- package/dist/catalog/scope-sync.d.ts +176 -0
- package/dist/catalog/scope-sync.js +576 -0
- package/dist/catalog/scope.d.ts +42 -0
- package/dist/catalog/scope.js +42 -0
- package/dist/catalog/unshare.d.ts +22 -0
- package/dist/catalog/unshare.js +119 -0
- package/dist/channels/actions.js +10 -3
- package/dist/channels/cards.d.ts +36 -10
- package/dist/channels/cards.js +100 -25
- package/dist/channels/channels.module.js +13 -2
- package/dist/channels/channels.schemas.d.ts +41 -0
- package/dist/channels/channels.schemas.js +40 -0
- package/dist/channels/connections.controller.d.ts +46 -37
- package/dist/channels/connections.controller.js +76 -34
- package/dist/channels/connections.service.d.ts +102 -10
- package/dist/channels/connections.service.js +271 -24
- package/dist/channels/inbound.d.ts +11 -1
- package/dist/channels/inbound.js +87 -7
- package/dist/channels/outbound.d.ts +14 -1
- package/dist/channels/outbound.js +64 -15
- package/dist/channels/phrases.d.ts +33 -2
- package/dist/channels/phrases.js +29 -1
- package/dist/channels/supervisor.d.ts +2 -0
- package/dist/channels/supervisor.js +4 -0
- package/dist/channels/threads.d.ts +5 -0
- package/dist/channels/threads.js +8 -0
- package/dist/channels/webhook.d.ts +21 -1
- package/dist/channels/webhook.js +39 -4
- package/dist/client/client-access.service.d.ts +102 -0
- package/dist/client/client-access.service.js +303 -0
- package/dist/client/client-builds.service.d.ts +109 -0
- package/dist/client/client-builds.service.js +229 -0
- package/dist/client/client-delivery.controller.d.ts +25 -0
- package/dist/client/client-delivery.controller.js +66 -0
- package/dist/client/client-files.d.ts +48 -0
- package/dist/client/client-files.js +136 -0
- package/dist/client/client-reports.cron.d.ts +13 -0
- package/dist/client/client-reports.cron.js +42 -0
- package/dist/client/client-reports.service.d.ts +30 -0
- package/dist/client/client-reports.service.js +102 -0
- package/dist/client/client-sign-in.service.d.ts +21 -0
- package/dist/client/client-sign-in.service.js +49 -0
- package/dist/client/client.controller.d.ts +49 -0
- package/dist/client/client.controller.js +129 -0
- package/dist/client/client.module.d.ts +8 -0
- package/dist/client/client.module.js +28 -0
- package/dist/client/client.schemas.d.ts +61 -0
- package/dist/client/client.schemas.js +27 -0
- package/dist/config/docs.js +5 -1
- package/dist/config/schema.d.ts +35 -2
- package/dist/config/schema.js +216 -21
- package/dist/conversations/access.d.ts +6 -4
- package/dist/conversations/access.js +29 -5
- package/dist/conversations/agent-tree.d.ts +46 -0
- package/dist/conversations/agent-tree.js +92 -0
- package/dist/conversations/artifacts.d.ts +1 -1
- package/dist/conversations/artifacts.js +1 -1
- package/dist/conversations/attachments.service.d.ts +30 -0
- package/dist/conversations/attachments.service.js +130 -5
- package/dist/conversations/conversations.controller.d.ts +79 -44
- package/dist/conversations/conversations.controller.js +133 -82
- package/dist/conversations/conversations.module.d.ts +1 -1
- package/dist/conversations/conversations.module.js +10 -7
- package/dist/conversations/conversations.schemas.d.ts +52 -0
- package/dist/conversations/conversations.schemas.js +79 -0
- package/dist/conversations/conversations.service.d.ts +161 -13
- package/dist/conversations/conversations.service.js +329 -57
- package/dist/conversations/device-status.d.ts +24 -0
- package/dist/conversations/device-status.js +71 -0
- package/dist/conversations/event-log.d.ts +45 -9
- package/dist/conversations/event-log.js +113 -6
- package/dist/conversations/events.d.ts +255 -9
- package/dist/conversations/events.js +250 -34
- package/dist/conversations/message-context.d.ts +79 -0
- package/dist/conversations/message-context.js +145 -0
- package/dist/conversations/queue.d.ts +5 -2
- package/dist/conversations/queue.js +24 -4
- package/dist/conversations/queue.service.d.ts +2 -2
- package/dist/conversations/queue.service.js +21 -3
- package/dist/conversations/titles.d.ts +12 -3
- package/dist/conversations/titles.js +40 -16
- package/dist/conversations/tree.d.ts +17 -0
- package/dist/conversations/tree.js +42 -0
- package/dist/ctx/create-ctx.d.ts +48 -5
- package/dist/ctx/create-ctx.js +174 -34
- package/dist/db/kernel-schema.d.ts +668 -27
- package/dist/db/pool.d.ts +5 -0
- package/dist/db/pool.js +3 -0
- package/dist/devices/access.d.ts +66 -0
- package/dist/devices/access.js +113 -0
- package/dist/devices/conversation-devices.d.ts +75 -0
- package/dist/devices/conversation-devices.js +230 -0
- package/dist/devices/devices.controller.d.ts +36 -0
- package/dist/devices/devices.controller.js +124 -0
- package/dist/devices/devices.module.d.ts +8 -0
- package/dist/devices/devices.module.js +34 -0
- package/dist/devices/devices.schemas.d.ts +3 -0
- package/dist/devices/devices.schemas.js +14 -0
- package/dist/devices/devices.service.d.ts +251 -0
- package/dist/devices/devices.service.js +791 -0
- package/dist/devices/dto.d.ts +25 -0
- package/dist/devices/dto.js +12 -0
- package/dist/devices/label.d.ts +11 -0
- package/dist/devices/label.js +25 -0
- package/dist/devices/legacy-cleanup.job.d.ts +34 -0
- package/dist/devices/legacy-cleanup.job.js +141 -0
- package/dist/errors.d.ts +215 -3
- package/dist/errors.js +215 -3
- package/dist/evals/evals.module.js +11 -2
- package/dist/evals/evals.schemas.d.ts +110 -0
- package/dist/evals/evals.schemas.js +107 -0
- package/dist/evals/reconstruct.d.ts +18 -9
- package/dist/evals/reconstruct.js +36 -10
- package/dist/evals/recorded-tools.d.ts +37 -1
- package/dist/evals/recorded-tools.js +120 -10
- package/dist/evals/run-replay.d.ts +20 -3
- package/dist/evals/run-replay.js +78 -14
- package/dist/evals/runs.controller.d.ts +2 -57
- package/dist/evals/runs.controller.js +1 -42
- package/dist/evals/runs.service.d.ts +8 -7
- package/dist/evals/runs.service.js +45 -30
- package/dist/evals/sets.controller.d.ts +2 -28
- package/dist/evals/sets.controller.js +1 -31
- package/dist/evals/sets.service.d.ts +7 -7
- package/dist/evals/sets.service.js +23 -17
- package/dist/evals/snapshot.d.ts +3 -2
- package/dist/evals/snapshot.js +17 -4
- package/dist/evals/step-replay.d.ts +4 -6
- package/dist/evals/step-replay.js +16 -9
- package/dist/evals/trajectory.d.ts +5 -3
- package/dist/evals/trajectory.js +4 -1
- package/dist/evals/trajectory.service.d.ts +8 -3
- package/dist/evals/trajectory.service.js +26 -14
- package/dist/evals/worker.d.ts +5 -5
- package/dist/evals/worker.js +9 -3
- package/dist/extensions/admin-ops.d.ts +81 -14
- package/dist/extensions/admin-ops.js +181 -47
- package/dist/extensions/admin-view.d.ts +57 -10
- package/dist/extensions/admin-view.js +249 -27
- package/dist/extensions/approvals.d.ts +12 -2
- package/dist/extensions/blobs.d.ts +14 -1
- package/dist/extensions/blobs.js +49 -5
- package/dist/extensions/bootstrap.d.ts +85 -10
- package/dist/extensions/bootstrap.js +215 -36
- package/dist/extensions/cli.d.ts +12 -0
- package/dist/extensions/cli.js +11 -2
- package/dist/extensions/config-hash.d.ts +10 -0
- package/dist/extensions/config-hash.js +38 -0
- package/dist/extensions/config-issues.d.ts +13 -1
- package/dist/extensions/config-issues.js +22 -5
- package/dist/extensions/config-json-schema.d.ts +43 -7
- package/dist/extensions/config-json-schema.js +124 -58
- package/dist/extensions/deployment-config-store.d.ts +6 -0
- package/dist/extensions/deployment-config.d.ts +94 -9
- package/dist/extensions/deployment-config.js +255 -34
- package/dist/extensions/display-name.d.ts +22 -0
- package/dist/extensions/display-name.js +77 -0
- package/dist/extensions/effective-config.d.ts +133 -0
- package/dist/extensions/effective-config.js +379 -0
- package/dist/extensions/extensions.module.js +31 -12
- package/dist/extensions/guide-places.d.ts +68 -0
- package/dist/extensions/guide-places.js +152 -0
- package/dist/extensions/hooks.d.ts +37 -4
- package/dist/extensions/hooks.js +82 -16
- package/dist/extensions/host.d.ts +105 -12
- package/dist/extensions/host.js +372 -87
- package/dist/extensions/installs.d.ts +30 -9
- package/dist/extensions/installs.js +57 -16
- package/dist/extensions/instance.d.ts +17 -2
- package/dist/extensions/instance.js +21 -0
- package/dist/extensions/ledger.d.ts +1 -1
- package/dist/extensions/locks.d.ts +12 -0
- package/dist/extensions/locks.js +26 -0
- package/dist/extensions/org-config.d.ts +97 -7
- package/dist/extensions/org-config.js +215 -45
- package/dist/extensions/org-levels.d.ts +37 -0
- package/dist/extensions/org-levels.js +71 -0
- package/dist/extensions/org-overrides.d.ts +151 -0
- package/dist/extensions/org-overrides.js +524 -0
- package/dist/extensions/package.d.ts +18 -4
- package/dist/extensions/package.js +56 -3
- package/dist/extensions/permission-set.d.ts +35 -5
- package/dist/extensions/permission-set.js +36 -5
- package/dist/extensions/permission-view.d.ts +106 -13
- package/dist/extensions/permission-view.js +33 -15
- package/dist/extensions/plugin-guides.d.ts +282 -0
- package/dist/extensions/plugin-guides.js +554 -0
- package/dist/extensions/plugin-icons.d.ts +54 -0
- package/dist/extensions/plugin-icons.js +125 -0
- package/dist/extensions/plugin-items.d.ts +21 -0
- package/dist/extensions/plugin-items.js +42 -0
- package/dist/extensions/point-defaults.controller.d.ts +28 -0
- package/dist/extensions/point-defaults.controller.js +69 -0
- package/dist/extensions/point-defaults.d.ts +73 -0
- package/dist/extensions/point-defaults.js +236 -0
- package/dist/extensions/point-defaults.schemas.d.ts +9 -0
- package/dist/extensions/point-defaults.schemas.js +14 -0
- package/dist/extensions/registry.d.ts +1 -1
- package/dist/extensions/registry.js +2 -0
- package/dist/extensions/resolve.d.ts +51 -1
- package/dist/extensions/resolve.js +85 -3
- package/dist/extensions/single-provider.d.ts +92 -0
- package/dist/extensions/single-provider.js +180 -0
- package/dist/extensions/sources.d.ts +13 -2
- package/dist/extensions/sources.js +2 -0
- package/dist/extensions/state.module.d.ts +9 -0
- package/dist/extensions/state.module.js +46 -0
- package/dist/extensions/unavailable.d.ts +50 -0
- package/dist/extensions/unavailable.js +115 -0
- package/dist/files/previewers.controller.js +2 -3
- package/dist/files/previewers.d.ts +10 -3
- package/dist/files/previewers.js +40 -11
- package/dist/files/previewers.schemas.d.ts +10 -0
- package/dist/files/previewers.schemas.js +9 -0
- package/dist/http/api.module.js +76 -4
- package/dist/http/app.d.ts +11 -2
- package/dist/http/app.js +31 -5
- package/dist/http/gateway-routes.d.ts +7 -3
- package/dist/http/gateway-routes.js +6 -3
- package/dist/http/nest-logger.d.ts +6 -5
- package/dist/http/nest-logger.js +24 -10
- package/dist/http/plugin-dispatch.d.ts +4 -1
- package/dist/http/plugin-dispatch.js +14 -2
- package/dist/identity/accounts.d.ts +77 -31
- package/dist/identity/accounts.js +133 -52
- package/dist/identity/audit.d.ts +2 -1
- package/dist/identity/auth.controller.js +9 -5
- package/dist/identity/auth.guard.d.ts +13 -5
- package/dist/identity/auth.guard.js +35 -9
- package/dist/identity/cookies.d.ts +26 -5
- package/dist/identity/cookies.js +58 -6
- package/dist/identity/identity.module.d.ts +1 -1
- package/dist/identity/identity.module.js +7 -4
- package/dist/identity/initial-passwords.controller.d.ts +22 -0
- package/dist/identity/initial-passwords.controller.js +49 -0
- package/dist/identity/initial-passwords.d.ts +61 -0
- package/dist/identity/initial-passwords.job.d.ts +16 -0
- package/dist/identity/initial-passwords.job.js +46 -0
- package/dist/identity/initial-passwords.js +159 -0
- package/dist/identity/me.controller.d.ts +17 -1
- package/dist/identity/me.controller.js +45 -4
- package/dist/identity/me.schemas.d.ts +24 -0
- package/dist/identity/me.schemas.js +25 -0
- package/dist/identity/principal.d.ts +11 -3
- package/dist/identity/principal.js +11 -3
- package/dist/identity/sessions.d.ts +12 -0
- package/dist/identity/sessions.js +45 -0
- package/dist/identity/settings.d.ts +99 -12
- package/dist/identity/settings.js +234 -25
- package/dist/identity/{enterprise-admin.d.ts → super-admin.d.ts} +5 -5
- package/dist/identity/{enterprise-admin.js → super-admin.js} +24 -24
- package/dist/identity/write-actor.d.ts +11 -0
- package/dist/identity/write-actor.js +7 -0
- package/dist/inbox/inbox.module.d.ts +4 -1
- package/dist/inbox/inbox.module.js +7 -3
- package/dist/inbox/inbox.schemas.d.ts +8 -0
- package/dist/inbox/inbox.schemas.js +11 -0
- package/dist/inbox/inbox.service.d.ts +64 -4
- package/dist/inbox/inbox.service.js +74 -4
- package/dist/inbox/org-notices.d.ts +63 -0
- package/dist/inbox/org-notices.js +91 -0
- package/dist/inbox/platform-inbox.controller.d.ts +23 -0
- package/dist/inbox/platform-inbox.controller.js +58 -0
- package/dist/inbox/platform-inbox.service.d.ts +157 -0
- package/dist/inbox/platform-inbox.service.js +281 -0
- package/dist/inbox/platform-notices.d.ts +19 -0
- package/dist/inbox/platform-notices.js +9 -0
- package/dist/index.d.ts +6 -2
- package/dist/index.js +7 -1
- package/dist/infra/cli/kernel-cli.module.js +9 -1
- package/dist/infra/config/kernel-config.service.js +32 -1
- package/dist/infra/database/database.module.js +1 -0
- package/dist/infra/database/xact-lock.d.ts +1 -1
- package/dist/infra/database/xact-lock.js +1 -1
- package/dist/infra/events/kernel-events.d.ts +31 -3
- package/dist/infra/lifecycle/process-guards.js +4 -0
- package/dist/infra/lock/lock.service.d.ts +8 -0
- package/dist/infra/lock/lock.service.js +27 -0
- package/dist/infra/logging/logging.module.d.ts +4 -2
- package/dist/infra/logging/logging.module.js +24 -6
- package/dist/infra/presence/presence.module.d.ts +6 -0
- package/dist/infra/presence/presence.module.js +22 -0
- package/dist/infra/presence/replica-presence.d.ts +87 -0
- package/dist/infra/presence/replica-presence.js +189 -0
- package/dist/infra/queue/add-job-once.d.ts +14 -0
- package/dist/infra/queue/add-job-once.js +16 -0
- package/dist/infra/queue/redis-connection.d.ts +6 -0
- package/dist/infra/queue/redis-connection.js +7 -0
- package/dist/infra/redis/redis.module.js +6 -2
- package/dist/infra/throttler/named-throttlers.d.ts +12 -0
- package/dist/infra/throttler/named-throttlers.js +67 -0
- package/dist/infra/throttler/throttler.guard.js +1 -1
- package/dist/infra/tokens.d.ts +6 -1
- package/dist/infra/tokens.js +6 -1
- package/dist/kernel.module.js +15 -0
- package/dist/lifecycle/kernel-lifecycle.d.ts +9 -3
- package/dist/lifecycle/kernel-lifecycle.js +51 -11
- package/dist/local-devices/device-auth.controller.d.ts +42 -0
- package/dist/local-devices/device-auth.controller.js +116 -0
- package/dist/local-devices/device-auth.d.ts +119 -0
- package/dist/local-devices/device-auth.js +401 -0
- package/dist/local-devices/device-auth.module.d.ts +7 -0
- package/dist/local-devices/device-auth.module.js +25 -0
- package/dist/local-devices/device-routes.d.ts +36 -0
- package/dist/local-devices/device-routes.js +90 -0
- package/dist/local-devices/dto.d.ts +66 -0
- package/dist/local-devices/dto.js +44 -0
- package/dist/local-devices/keys.d.ts +25 -0
- package/dist/local-devices/keys.js +25 -0
- package/dist/local-devices/local-device-gateway.d.ts +134 -0
- package/dist/local-devices/local-device-gateway.js +542 -0
- package/dist/local-devices/local-device-provider.d.ts +89 -0
- package/dist/local-devices/local-device-provider.js +151 -0
- package/dist/local-devices/local-devices.module.d.ts +16 -0
- package/dist/local-devices/local-devices.module.js +44 -0
- package/dist/local-devices/machines.d.ts +118 -0
- package/dist/local-devices/machines.js +366 -0
- package/dist/local-devices/relay.d.ts +100 -0
- package/dist/local-devices/relay.js +373 -0
- package/dist/local-devices/targets.d.ts +28 -0
- package/dist/local-devices/targets.js +73 -0
- package/dist/log.d.ts +13 -1
- package/dist/log.js +93 -17
- package/dist/models/embeddings.d.ts +82 -0
- package/dist/models/embeddings.js +326 -0
- package/dist/models/enablement.controller.d.ts +40 -0
- package/dist/models/enablement.controller.js +74 -0
- package/dist/models/enablement.d.ts +101 -0
- package/dist/models/enablement.js +264 -0
- package/dist/models/models.module.d.ts +5 -1
- package/dist/models/models.module.js +16 -4
- package/dist/models/org-models.schemas.d.ts +8 -0
- package/dist/models/org-models.schemas.js +22 -0
- package/dist/models/prices.d.ts +8 -6
- package/dist/models/prices.js +11 -9
- package/dist/models/purposes.controller.d.ts +6 -4
- package/dist/models/purposes.controller.js +13 -7
- package/dist/models/purposes.d.ts +72 -14
- package/dist/models/purposes.js +115 -34
- package/dist/orgs/directory-sync.d.ts +14 -5
- package/dist/orgs/directory-sync.js +41 -17
- package/dist/orgs/offboarding.d.ts +12 -8
- package/dist/orgs/offboarding.js +54 -33
- package/dist/orgs/org-lock.d.ts +5 -0
- package/dist/orgs/org-lock.js +13 -0
- package/dist/orgs/org.guard.d.ts +10 -0
- package/dist/orgs/org.guard.js +43 -32
- package/dist/orgs/orgs.controller.d.ts +2 -5
- package/dist/orgs/orgs.controller.js +3 -6
- package/dist/orgs/orgs.module.js +3 -0
- package/dist/orgs/orgs.schemas.d.ts +8 -0
- package/dist/orgs/orgs.schemas.js +16 -0
- package/dist/orgs/orgs.service.d.ts +23 -8
- package/dist/orgs/orgs.service.js +38 -16
- package/dist/orgs/roles.d.ts +1 -1
- package/dist/orgs/roles.js +5 -1
- package/dist/orgs/settings.controller.d.ts +1 -1
- package/dist/orgs/settings.service.d.ts +66 -6
- package/dist/orgs/settings.service.js +89 -10
- package/dist/overrides.d.ts +16 -1
- package/dist/overrides.js +10 -0
- package/dist/platform/actor.d.ts +48 -0
- package/dist/platform/actor.js +100 -0
- package/dist/platform/agent-docs.d.ts +18 -0
- package/dist/platform/agent-docs.js +59 -0
- package/dist/platform/availability.d.ts +14 -0
- package/dist/platform/availability.js +43 -0
- package/dist/platform/errors.d.ts +28 -0
- package/dist/platform/errors.js +65 -0
- package/dist/platform/exclusions.d.ts +11 -0
- package/dist/platform/exclusions.js +774 -0
- package/dist/platform/method.d.ts +6 -0
- package/dist/platform/method.js +15 -0
- package/dist/platform/operation.d.ts +169 -0
- package/dist/platform/operation.js +102 -0
- package/dist/platform/ops/accounts.ops.d.ts +32 -0
- package/dist/platform/ops/accounts.ops.js +291 -0
- package/dist/platform/ops/admin-items.ops.d.ts +37 -0
- package/dist/platform/ops/admin-items.ops.js +278 -0
- package/dist/platform/ops/admin.ops.d.ts +38 -0
- package/dist/platform/ops/admin.ops.js +497 -0
- package/dist/platform/ops/agent-skills.ops.d.ts +50 -0
- package/dist/platform/ops/agent-skills.ops.js +509 -0
- package/dist/platform/ops/agent-templates.ops.d.ts +17 -0
- package/dist/platform/ops/agent-templates.ops.js +272 -0
- package/dist/platform/ops/agents.ops.d.ts +37 -0
- package/dist/platform/ops/agents.ops.js +730 -0
- package/dist/platform/ops/approvals.ops.d.ts +30 -0
- package/dist/platform/ops/approvals.ops.js +116 -0
- package/dist/platform/ops/background.ops.d.ts +14 -0
- package/dist/platform/ops/background.ops.js +134 -0
- package/dist/platform/ops/catalog-admin.ops.d.ts +92 -0
- package/dist/platform/ops/catalog-admin.ops.js +682 -0
- package/dist/platform/ops/channels.ops.d.ts +16 -0
- package/dist/platform/ops/channels.ops.js +195 -0
- package/dist/platform/ops/components.ops.d.ts +46 -0
- package/dist/platform/ops/components.ops.js +854 -0
- package/dist/platform/ops/connectors.ops.d.ts +17 -0
- package/dist/platform/ops/connectors.ops.js +190 -0
- package/dist/platform/ops/conversations.ops.d.ts +30 -0
- package/dist/platform/ops/conversations.ops.js +470 -0
- package/dist/platform/ops/devices.ops.d.ts +26 -0
- package/dist/platform/ops/devices.ops.js +311 -0
- package/dist/platform/ops/errors.d.ts +16 -0
- package/dist/platform/ops/errors.js +30 -0
- package/dist/platform/ops/evals.ops.d.ts +28 -0
- package/dist/platform/ops/evals.ops.js +783 -0
- package/dist/platform/ops/extensions-admin.ops.d.ts +25 -0
- package/dist/platform/ops/extensions-admin.ops.js +372 -0
- package/dist/platform/ops/extensions.ops.d.ts +25 -0
- package/dist/platform/ops/extensions.ops.js +347 -0
- package/dist/platform/ops/inbox.ops.d.ts +25 -0
- package/dist/platform/ops/inbox.ops.js +381 -0
- package/dist/platform/ops/marketplaces.ops.d.ts +22 -0
- package/dist/platform/ops/marketplaces.ops.js +466 -0
- package/dist/platform/ops/models.ops.d.ts +25 -0
- package/dist/platform/ops/models.ops.js +232 -0
- package/dist/platform/ops/org-plugins.ops.d.ts +35 -0
- package/dist/platform/ops/org-plugins.ops.js +388 -0
- package/dist/platform/ops/org-settings.ops.d.ts +18 -0
- package/dist/platform/ops/org-settings.ops.js +127 -0
- package/dist/platform/ops/orgs.ops.d.ts +28 -0
- package/dist/platform/ops/orgs.ops.js +298 -0
- package/dist/platform/ops/other-orgs.d.ts +20 -0
- package/dist/platform/ops/other-orgs.js +72 -0
- package/dist/platform/ops/paging.d.ts +14 -0
- package/dist/platform/ops/paging.js +20 -0
- package/dist/platform/ops/platform.ops.d.ts +30 -0
- package/dist/platform/ops/platform.ops.js +231 -0
- package/dist/platform/ops/plugins.ops.d.ts +35 -0
- package/dist/platform/ops/plugins.ops.js +476 -0
- package/dist/platform/ops/previewers.ops.d.ts +14 -0
- package/dist/platform/ops/previewers.ops.js +109 -0
- package/dist/platform/ops/requests.ops.d.ts +14 -0
- package/dist/platform/ops/requests.ops.js +191 -0
- package/dist/platform/ops/role.d.ts +4 -0
- package/dist/platform/ops/role.js +10 -0
- package/dist/platform/ops/setup.ops.d.ts +24 -0
- package/dist/platform/ops/setup.ops.js +212 -0
- package/dist/platform/ops/skills.ops.d.ts +17 -0
- package/dist/platform/ops/skills.ops.js +160 -0
- package/dist/platform/ops/summary.d.ts +10 -0
- package/dist/platform/ops/summary.js +18 -0
- package/dist/platform/ops/themes.ops.d.ts +14 -0
- package/dist/platform/ops/themes.ops.js +47 -0
- package/dist/platform/ops/ui.ops.d.ts +8 -0
- package/dist/platform/ops/ui.ops.js +41 -0
- package/dist/platform/ops/unavailable.d.ts +23 -0
- package/dist/platform/ops/unavailable.js +118 -0
- package/dist/platform/parity.d.ts +33 -0
- package/dist/platform/parity.js +272 -0
- package/dist/platform/platform-ops.module.d.ts +43 -0
- package/dist/platform/platform-ops.module.js +142 -0
- package/dist/platform/platform.module.d.ts +8 -0
- package/dist/platform/platform.module.js +25 -0
- package/dist/platform/registry.d.ts +30 -0
- package/dist/platform/registry.js +111 -0
- package/dist/platform/route-schemas.d.ts +18 -0
- package/dist/platform/route-schemas.js +85 -0
- package/dist/roles/gateway-role.d.ts +18 -3
- package/dist/roles/gateway-role.js +33 -5
- package/dist/roles/gateway.module.d.ts +2 -1
- package/dist/roles/gateway.module.js +6 -3
- package/dist/roles/worker-role.d.ts +6 -4
- package/dist/roles/worker-role.js +14 -7
- package/dist/roles/worker.module.d.ts +1 -1
- package/dist/roles/worker.module.js +21 -1
- package/dist/runtime/context/build.d.ts +21 -13
- package/dist/runtime/context/build.js +106 -29
- package/dist/runtime/context/claude-tools.d.ts +4 -1
- package/dist/runtime/context/claude-tools.js +13 -12
- package/dist/runtime/context/compaction.js +24 -1
- package/dist/runtime/context/device-paths.d.ts +40 -0
- package/dist/runtime/context/device-paths.js +48 -0
- package/dist/runtime/context/legacy-text.d.ts +22 -0
- package/dist/runtime/context/legacy-text.js +37 -0
- package/dist/runtime/context/reminders.d.ts +2 -0
- package/dist/runtime/context/reminders.js +2 -0
- package/dist/runtime/context/run-context.d.ts +65 -0
- package/dist/runtime/context/run-context.js +215 -0
- package/dist/runtime/context/skills.d.ts +29 -11
- package/dist/runtime/context/skills.js +46 -32
- package/dist/runtime/context/tool-changes.d.ts +27 -0
- package/dist/runtime/context/tool-changes.js +60 -0
- package/dist/runtime/hook-calls.d.ts +8 -1
- package/dist/runtime/hook-calls.js +40 -7
- package/dist/runtime/langgraph-loop.d.ts +3 -1
- package/dist/runtime/langgraph-loop.js +36 -17
- package/dist/runtime/loop.d.ts +35 -6
- package/dist/runtime/maintenance.d.ts +9 -4
- package/dist/runtime/maintenance.js +35 -8
- package/dist/runtime/model-call.d.ts +54 -11
- package/dist/runtime/model-call.js +105 -28
- package/dist/runtime/providers.d.ts +149 -29
- package/dist/runtime/providers.js +332 -63
- package/dist/runtime/run-context.service.d.ts +65 -0
- package/dist/runtime/run-context.service.js +236 -0
- package/dist/runtime/run-control.d.ts +11 -1
- package/dist/runtime/run-control.js +12 -0
- package/dist/runtime/run-drafts.d.ts +85 -0
- package/dist/runtime/run-drafts.js +230 -0
- package/dist/runtime/run-finish.d.ts +1 -1
- package/dist/runtime/run-jobs.d.ts +3 -5
- package/dist/runtime/run-jobs.js +7 -9
- package/dist/runtime/run-queue.d.ts +62 -5
- package/dist/runtime/run-queue.js +313 -40
- package/dist/runtime/run-worker.d.ts +19 -8
- package/dist/runtime/run-worker.js +105 -44
- package/dist/runtime/runtime.module.js +13 -3
- package/dist/runtime/step-log.d.ts +15 -4
- package/dist/runtime/step-log.js +24 -7
- package/dist/runtime/stream.controller.d.ts +23 -1
- package/dist/runtime/stream.controller.js +60 -3
- package/dist/runtime/stream.d.ts +4 -1
- package/dist/runtime/stream.js +27 -3
- package/dist/runtime/subagents/child.d.ts +55 -7
- package/dist/runtime/subagents/child.js +105 -7
- package/dist/runtime/subagents/definition.d.ts +31 -26
- package/dist/runtime/subagents/definition.js +89 -142
- package/dist/runtime/subagents/deliveries.d.ts +71 -0
- package/dist/runtime/subagents/deliveries.js +228 -0
- package/dist/runtime/subagents/dispatch.d.ts +116 -27
- package/dist/runtime/subagents/dispatch.js +213 -142
- package/dist/runtime/subagents/limits.d.ts +24 -5
- package/dist/runtime/subagents/limits.js +40 -6
- package/dist/runtime/subagents/messages.d.ts +95 -0
- package/dist/runtime/subagents/messages.js +328 -0
- package/dist/runtime/subagents/org-agents.js +2 -1
- package/dist/runtime/subagents/preamble.d.ts +4 -4
- package/dist/runtime/subagents/preamble.js +9 -7
- package/dist/runtime/subagents/progress.d.ts +8 -6
- package/dist/runtime/subagents/progress.js +11 -6
- package/dist/runtime/subagents/render.d.ts +30 -0
- package/dist/runtime/subagents/render.js +53 -0
- package/dist/runtime/subagents/roster.d.ts +25 -8
- package/dist/runtime/subagents/roster.js +48 -12
- package/dist/runtime/subagents/skill-fork.d.ts +4 -3
- package/dist/runtime/subagents/skill-fork.js +9 -5
- package/dist/runtime/subagents/status.d.ts +14 -0
- package/dist/runtime/subagents/status.js +23 -0
- package/dist/runtime/subagents/subagents.service.d.ts +9 -6
- package/dist/runtime/subagents/subagents.service.js +13 -8
- package/dist/runtime/usage-report-jobs.d.ts +88 -0
- package/dist/runtime/usage-report-jobs.js +158 -0
- package/dist/runtime/usage-report.d.ts +35 -39
- package/dist/runtime/usage-report.js +171 -97
- package/dist/runtime/waits.d.ts +148 -39
- package/dist/runtime/waits.js +426 -112
- package/dist/sandbox/jobs.d.ts +40 -13
- package/dist/sandbox/jobs.js +57 -20
- package/dist/sandbox/leases.d.ts +37 -54
- package/dist/sandbox/leases.js +71 -115
- package/dist/sandbox/providers.d.ts +34 -7
- package/dist/sandbox/providers.js +54 -9
- package/dist/sandbox/sandbox-file-reader.d.ts +35 -0
- package/dist/sandbox/sandbox-file-reader.js +98 -0
- package/dist/sandbox/sandbox.module.d.ts +3 -2
- package/dist/sandbox/sandbox.module.js +10 -4
- package/dist/sandbox/sandbox.service.d.ts +345 -132
- package/dist/sandbox/sandbox.service.js +883 -399
- package/dist/sandbox/unreachable.d.ts +30 -0
- package/dist/sandbox/unreachable.js +108 -0
- package/dist/setup/kernel-checks.d.ts +91 -0
- package/dist/setup/kernel-checks.js +295 -0
- package/dist/setup/oauth-token-probe.d.ts +47 -0
- package/dist/setup/oauth-token-probe.js +108 -0
- package/dist/setup/redact-check.d.ts +18 -0
- package/dist/setup/redact-check.js +46 -0
- package/dist/setup/setup-check-registry.d.ts +86 -0
- package/dist/setup/setup-check-registry.js +75 -0
- package/dist/setup/setup-checks.controller.d.ts +28 -0
- package/dist/setup/setup-checks.controller.js +78 -0
- package/dist/setup/setup-checks.schemas.d.ts +38 -0
- package/dist/setup/setup-checks.schemas.js +43 -0
- package/dist/setup/setup-checks.service.d.ts +144 -0
- package/dist/setup/setup-checks.service.js +683 -0
- package/dist/setup/setup-guides.controller.d.ts +18 -0
- package/dist/setup/setup-guides.controller.js +48 -0
- package/dist/setup/setup-guides.schemas.d.ts +10 -0
- package/dist/setup/setup-guides.schemas.js +6 -0
- package/dist/setup/setup-guides.service.d.ts +126 -0
- package/dist/setup/setup-guides.service.js +315 -0
- package/dist/setup/setup.module.d.ts +8 -0
- package/dist/setup/setup.module.js +31 -0
- package/dist/skills/agent-skills.controller.d.ts +48 -0
- package/dist/skills/agent-skills.controller.js +131 -0
- package/dist/skills/agent-skills.service.d.ts +262 -0
- package/dist/skills/agent-skills.service.js +996 -0
- package/dist/skills/catalog.d.ts +14 -11
- package/dist/skills/catalog.js +32 -50
- package/dist/skills/changes.controller.d.ts +12 -22
- package/dist/skills/changes.controller.js +27 -56
- package/dist/skills/changes.service.d.ts +69 -115
- package/dist/skills/changes.service.js +249 -598
- package/dist/skills/conversation-catalog.d.ts +53 -0
- package/dist/skills/conversation-catalog.js +149 -0
- package/dist/skills/invocable.controller.d.ts +1 -1
- package/dist/skills/invocable.controller.js +2 -2
- package/dist/skills/invocation-keys.d.ts +1 -1
- package/dist/skills/invocation-keys.js +1 -1
- package/dist/skills/invoke.d.ts +3 -3
- package/dist/skills/invoke.js +21 -8
- package/dist/skills/package.d.ts +15 -1
- package/dist/skills/package.js +14 -1
- package/dist/skills/skills.controller.d.ts +32 -6
- package/dist/skills/skills.controller.js +64 -11
- package/dist/skills/skills.module.js +25 -3
- package/dist/skills/skills.schemas.d.ts +44 -0
- package/dist/skills/skills.schemas.js +68 -0
- package/dist/skills/skills.service.d.ts +123 -26
- package/dist/skills/skills.service.js +493 -76
- package/dist/skills/usable.d.ts +82 -0
- package/dist/skills/usable.js +388 -0
- package/dist/themes/render-css.d.ts +13 -0
- package/dist/themes/render-css.js +135 -0
- package/dist/themes/theme-delivery.service.d.ts +36 -0
- package/dist/themes/theme-delivery.service.js +116 -0
- package/dist/themes/theme-state.d.ts +116 -0
- package/dist/themes/theme-state.js +221 -0
- package/dist/themes/theme-usage.d.ts +61 -0
- package/dist/themes/theme-usage.js +98 -0
- package/dist/themes/themes-public.controller.d.ts +33 -0
- package/dist/themes/themes-public.controller.js +98 -0
- package/dist/themes/themes.controller.d.ts +13 -0
- package/dist/themes/themes.controller.js +38 -0
- package/dist/themes/themes.module.d.ts +3 -0
- package/dist/themes/themes.module.js +21 -0
- package/dist/themes/themes.schemas.d.ts +3 -0
- package/dist/themes/themes.schemas.js +2 -0
- package/dist/themes/themes.service.d.ts +50 -0
- package/dist/themes/themes.service.js +99 -0
- package/dist/time-zone.d.ts +5 -0
- package/dist/time-zone.js +19 -0
- package/dist/tools/admin-connectors.d.ts +69 -0
- package/dist/tools/admin-connectors.js +135 -0
- package/dist/tools/approvals.controller.js +2 -3
- package/dist/tools/approvals.schemas.d.ts +21 -0
- package/dist/tools/approvals.schemas.js +15 -0
- package/dist/tools/approvals.service.d.ts +26 -2
- package/dist/tools/approvals.service.js +44 -5
- package/dist/tools/builtin-names.d.ts +104 -0
- package/dist/tools/builtin-names.js +164 -0
- package/dist/tools/builtins/agent.d.ts +27 -25
- package/dist/tools/builtins/agent.js +66 -63
- package/dist/tools/builtins/ask-user.d.ts +1 -1
- package/dist/tools/builtins/ask-user.js +5 -4
- package/dist/tools/builtins/builtin-tools.d.ts +23 -4
- package/dist/tools/builtins/builtin-tools.js +78 -12
- package/dist/tools/builtins/current-time.d.ts +26 -0
- package/dist/tools/builtins/current-time.js +99 -0
- package/dist/tools/builtins/handback.d.ts +28 -0
- package/dist/tools/builtins/handback.js +53 -0
- package/dist/tools/builtins/platform.d.ts +51 -0
- package/dist/tools/builtins/platform.js +451 -0
- package/dist/tools/builtins/read-tool-output.d.ts +1 -1
- package/dist/tools/builtins/read-tool-output.js +2 -2
- package/dist/tools/builtins/sandbox/bash.d.ts +5 -5
- package/dist/tools/builtins/sandbox/bash.js +291 -39
- package/dist/tools/builtins/sandbox/common.d.ts +135 -36
- package/dist/tools/builtins/sandbox/common.js +222 -62
- package/dist/tools/builtins/sandbox/deliver.d.ts +1 -1
- package/dist/tools/builtins/sandbox/deliver.js +19 -16
- package/dist/tools/builtins/sandbox/edit.d.ts +1 -1
- package/dist/tools/builtins/sandbox/edit.js +64 -50
- package/dist/tools/builtins/sandbox/file-state.d.ts +34 -0
- package/dist/tools/builtins/sandbox/file-state.js +34 -0
- package/dist/tools/builtins/sandbox/glob-match.d.ts +1 -1
- package/dist/tools/builtins/sandbox/glob-match.js +1 -1
- package/dist/tools/builtins/sandbox/glob.d.ts +1 -1
- package/dist/tools/builtins/sandbox/glob.js +17 -12
- package/dist/tools/builtins/sandbox/grep.d.ts +7 -4
- package/dist/tools/builtins/sandbox/grep.js +153 -34
- package/dist/tools/builtins/sandbox/index.d.ts +9 -5
- package/dist/tools/builtins/sandbox/index.js +13 -5
- package/dist/tools/builtins/sandbox/read.d.ts +2 -2
- package/dist/tools/builtins/sandbox/read.js +29 -19
- package/dist/tools/builtins/sandbox/task-output.d.ts +79 -0
- package/dist/tools/builtins/sandbox/task-output.js +334 -0
- package/dist/tools/builtins/sandbox/task-stop.d.ts +10 -0
- package/dist/tools/builtins/sandbox/task-stop.js +113 -0
- package/dist/tools/builtins/sandbox/write.d.ts +1 -1
- package/dist/tools/builtins/sandbox/write.js +51 -44
- package/dist/tools/builtins/send-message.d.ts +56 -0
- package/dist/tools/builtins/send-message.js +100 -0
- package/dist/tools/builtins/skill-load.d.ts +29 -18
- package/dist/tools/builtins/skill-load.js +125 -73
- package/dist/tools/builtins/tool-search.d.ts +13 -9
- package/dist/tools/builtins/tool-search.js +25 -14
- package/dist/tools/builtins/web/errors.d.ts +8 -0
- package/dist/tools/builtins/web/errors.js +53 -0
- package/dist/tools/builtins/web/extract.d.ts +62 -0
- package/dist/tools/builtins/web/extract.js +271 -0
- package/dist/tools/builtins/web/fetch.d.ts +55 -0
- package/dist/tools/builtins/web/fetch.js +175 -0
- package/dist/tools/builtins/web/index.d.ts +13 -0
- package/dist/tools/builtins/web/index.js +12 -0
- package/dist/tools/builtins/web/page-cache.d.ts +25 -0
- package/dist/tools/builtins/web/page-cache.js +77 -0
- package/dist/tools/builtins/web/search.d.ts +25 -0
- package/dist/tools/builtins/web/search.js +210 -0
- package/dist/tools/builtins/web/url.d.ts +17 -0
- package/dist/tools/builtins/web/url.js +43 -0
- package/dist/tools/connector-account-policies.d.ts +51 -0
- package/dist/tools/connector-account-policies.js +165 -0
- package/dist/tools/connectors.controller.d.ts +74 -9
- package/dist/tools/connectors.controller.js +133 -16
- package/dist/tools/connectors.schemas.d.ts +27 -0
- package/dist/tools/connectors.schemas.js +34 -0
- package/dist/tools/connectors.service.d.ts +101 -8
- package/dist/tools/connectors.service.js +266 -28
- package/dist/tools/credentials.d.ts +23 -0
- package/dist/tools/credentials.js +90 -1
- package/dist/tools/display-names.d.ts +9 -0
- package/dist/tools/display-names.js +24 -0
- package/dist/tools/drift.js +5 -5
- package/dist/tools/elicitation.js +1 -1
- package/dist/tools/extension-tools.controller.d.ts +14 -0
- package/dist/tools/extension-tools.controller.js +37 -0
- package/dist/tools/info.d.ts +61 -4
- package/dist/tools/info.js +119 -33
- package/dist/tools/legacy-data.d.ts +34 -0
- package/dist/tools/legacy-data.js +76 -0
- package/dist/tools/legacy-keys.d.ts +51 -0
- package/dist/tools/legacy-keys.js +114 -0
- package/dist/tools/naming.d.ts +1 -5
- package/dist/tools/naming.js +1 -7
- package/dist/tools/oauth/flow-paths.d.ts +1 -1
- package/dist/tools/oauth/flow-paths.js +1 -1
- package/dist/tools/oauth/flow.js +1 -1
- package/dist/tools/oauth/tokens.d.ts +54 -7
- package/dist/tools/oauth/tokens.js +87 -17
- package/dist/tools/org-tool-switches.d.ts +89 -0
- package/dist/tools/org-tool-switches.js +201 -0
- package/dist/tools/outputs.js +1 -1
- package/dist/tools/pipeline.d.ts +67 -47
- package/dist/tools/pipeline.js +319 -380
- package/dist/tools/policy.d.ts +30 -23
- package/dist/tools/policy.js +142 -64
- package/dist/tools/questions.controller.d.ts +1 -1
- package/dist/tools/questions.controller.js +1 -1
- package/dist/tools/questions.service.d.ts +23 -2
- package/dist/tools/questions.service.js +104 -2
- package/dist/tools/registry.d.ts +189 -68
- package/dist/tools/registry.js +318 -236
- package/dist/tools/resources.d.ts +1 -1
- package/dist/tools/resources.js +1 -1
- package/dist/tools/tools.module.js +31 -3
- package/dist/tools/validate.js +1 -1
- package/dist/ui/admin-ui.controller.d.ts +56 -0
- package/dist/ui/admin-ui.controller.js +192 -0
- package/dist/ui/arrangement.d.ts +65 -0
- package/dist/ui/arrangement.js +171 -0
- package/dist/ui/embed-token.d.ts +2 -2
- package/dist/ui/embed-token.js +30 -5
- package/dist/ui/registry.d.ts +42 -17
- package/dist/ui/registry.js +46 -14
- package/dist/ui/slots.controller.d.ts +11 -0
- package/dist/ui/slots.controller.js +25 -0
- package/dist/ui/ui-stream.d.ts +20 -3
- package/dist/ui/ui-stream.js +25 -7
- package/dist/ui/ui.schemas.d.ts +70 -0
- package/dist/ui/ui.schemas.js +65 -0
- package/dist/ui/views.controller.d.ts +35 -49
- package/dist/ui/views.controller.js +48 -70
- package/dist/ui/views.d.ts +112 -18
- package/dist/ui/views.js +254 -47
- package/package.json +6 -3
- package/src/migrations/0063_tool_keys_claude_code.sql +220 -0
- package/src/migrations/0064_account_last_org.sql +7 -0
- package/src/migrations/0065_conversation_archive.sql +8 -0
- package/src/migrations/0066_extension_display_name.sql +4 -0
- package/src/migrations/0067_agent_profiles.sql +20 -0
- package/src/migrations/0068_agent_avatar_uploads.sql +7 -0
- package/src/migrations/0069_attachments_agent_idx.sql +3 -0
- package/src/migrations/0070_background_tasks.sql +37 -0
- package/src/migrations/0071_background_tasks_reserve.sql +6 -0
- package/src/migrations/0072_background_tasks_stopping.sql +5 -0
- package/src/migrations/0073_org_extension_point_defaults.sql +11 -0
- package/src/migrations/0074_subagent_tree.sql +50 -0
- package/src/migrations/0075_plugin_scope.sql +61 -0
- package/src/migrations/0076_skills_created_by_nullable.sql +6 -0
- package/src/migrations/0077_scope_requests.sql +52 -0
- package/src/migrations/0078_scope_grant_switches.sql +18 -0
- package/src/migrations/0079_scope_live_install_switches.sql +19 -0
- package/src/migrations/0080_rename_enterprise_admin.sql +18 -0
- package/src/migrations/0081_platform_components.sql +129 -0
- package/src/migrations/0082_platform_migration.sql +33 -0
- package/src/migrations/0083_plugin_scope_sync_failures.sql +15 -0
- package/src/migrations/0084_org_owned_items.sql +85 -0
- package/src/migrations/0085_agent_templates_phase4.sql +45 -0
- package/src/migrations/0086_org_layering.sql +30 -0
- package/src/migrations/0087_approval_summary.sql +6 -0
- package/src/migrations/0088_environments.sql +80 -0
- package/src/migrations/0089_model_kinds_usage.sql +38 -0
- package/src/migrations/0090_initial_passwords.sql +27 -0
- package/src/migrations/0091_account_time_zone.sql +4 -0
- package/src/migrations/0092_tools_default_on.sql +27 -0
- package/src/migrations/0093_connected_environments.sql +37 -0
- package/src/migrations/0094_environment_paths_idx.sql +7 -0
- package/src/migrations/0095_environment_files_resets.sql +5 -0
- package/src/migrations/0096_environment_demoted_default.sql +18 -0
- package/src/migrations/0097_extension_installs_enabled_at.sql +16 -0
- package/src/migrations/0098_single_provider_running_first.sql +41 -0
- package/src/migrations/0099_channel_connection_guide_ack.sql +6 -0
- package/src/migrations/0100_catalog_files.sql +13 -0
- package/src/migrations/0101_marketplace_icons.sql +32 -0
- package/src/migrations/0102_themes.sql +64 -0
- package/src/migrations/0103_ui_theme_setting.sql +7 -0
- package/src/migrations/0104_connector_tool_account_policies.sql +16 -0
- package/src/migrations/0105_devices_rename.sql +136 -0
- package/src/migrations/0106_setup_guides_v2.sql +10 -0
- package/src/migrations/0107_extension_client_builds.sql +50 -0
- package/src/migrations/0108_question_skipped.sql +6 -0
- package/src/migrations/0109_audit_platform_idx.sql +5 -0
- package/src/migrations/0110_usage_time_idx.sql +8 -0
- package/src/migrations/0111_agent_skill_sharing.sql +22 -0
- package/src/migrations/0112_skill_share_requests.sql +4 -0
- package/dist/catalog/upgrade-targets.d.ts +0 -56
- package/dist/catalog/upgrade-targets.js +0 -90
- package/dist/conversations/sandbox-status.d.ts +0 -24
- package/dist/conversations/sandbox-status.js +0 -52
- package/dist/extensions/org-config.controller.d.ts +0 -24
- package/dist/extensions/org-config.controller.js +0 -62
- package/dist/tools/builtins/sandbox/names.d.ts +0 -7
- package/dist/tools/builtins/sandbox/names.js +0 -20
- package/dist/tools/builtins/skill-write.d.ts +0 -59
- package/dist/tools/builtins/skill-write.js +0 -244
|
@@ -1,10 +1,11 @@
|
|
|
1
1
|
import { type PluginExtensionSection } from "@capybara-hq/plugin-sdk";
|
|
2
2
|
import type { core } from "zod";
|
|
3
3
|
import type { Keyring } from "../ctx/secrets.js";
|
|
4
|
-
import {
|
|
4
|
+
import { SuperAdminLock } from "../identity/super-admin.js";
|
|
5
5
|
import { KernelConfigService } from "../infra/config/kernel-config.service.js";
|
|
6
6
|
import { KernelDb } from "../infra/database/kernel-db.js";
|
|
7
7
|
import { TransactionHost } from "../infra/database/transaction-host.js";
|
|
8
|
+
import { OrgLock } from "../orgs/org-lock.js";
|
|
8
9
|
import { type ProvenanceResult } from "../packages/provenance.js";
|
|
9
10
|
import { ExtensionApprovals } from "./approvals.js";
|
|
10
11
|
import { ExtensionBlobs } from "./blobs.js";
|
|
@@ -83,7 +84,7 @@ export interface IngestSource {
|
|
|
83
84
|
export declare class ExtensionInstalls {
|
|
84
85
|
private readonly db;
|
|
85
86
|
readonly txHost: TransactionHost;
|
|
86
|
-
/** The
|
|
87
|
+
/** The super admin lock (identity/super-admin.ts): joins the transaction. */
|
|
87
88
|
private readonly adminLock;
|
|
88
89
|
private readonly blobs;
|
|
89
90
|
private readonly approvals;
|
|
@@ -91,17 +92,26 @@ export declare class ExtensionInstalls {
|
|
|
91
92
|
private readonly registry;
|
|
92
93
|
private readonly config;
|
|
93
94
|
private readonly keyring;
|
|
95
|
+
/** The owner org's lock: an org upload re-checks its org admin instead (ruling P3-10). */
|
|
96
|
+
private readonly orgLock;
|
|
94
97
|
constructor(db: KernelDb, txHost: TransactionHost,
|
|
95
|
-
/** The
|
|
96
|
-
adminLock:
|
|
98
|
+
/** The super admin lock (identity/super-admin.ts): joins the transaction. */
|
|
99
|
+
adminLock: SuperAdminLock, blobs: ExtensionBlobs, approvals: ExtensionApprovals,
|
|
97
100
|
/** The config-declared extension names (an install cannot take them, C15). */
|
|
98
|
-
registry: ExtensionRegistry, config: KernelConfigService, keyring: Keyring
|
|
101
|
+
registry: ExtensionRegistry, config: KernelConfigService, keyring: Keyring,
|
|
102
|
+
/** The owner org's lock: an org upload re-checks its org admin instead (ruling P3-10). */
|
|
103
|
+
orgLock: OrgLock);
|
|
99
104
|
/**
|
|
100
105
|
* An extension's effective deployment config, not validated yet (C10): the startup config
|
|
101
106
|
* (`fileValue`, file / Nacos merged with env) completed by the fields stored in PG; merged by
|
|
102
107
|
* the fields of `schema` when it is given.
|
|
103
108
|
*/
|
|
104
109
|
effectiveDeploymentConfig(plugin: string, fileValue: unknown, schema?: core.$ZodType): Promise<unknown>;
|
|
110
|
+
/**
|
|
111
|
+
* Whether PG holds a deployment config row for the extension (a super admin saved one and has
|
|
112
|
+
* not cleared it since; `DELETE /api/v1/admin/extensions/:name/config` removes it).
|
|
113
|
+
*/
|
|
114
|
+
hasStoredDeploymentConfig(plugin: string): Promise<boolean>;
|
|
105
115
|
/** Every install record's extension name (any desired state). */
|
|
106
116
|
installedNames(): Promise<string[]>;
|
|
107
117
|
/**
|
|
@@ -112,19 +122,26 @@ export declare class ExtensionInstalls {
|
|
|
112
122
|
* - extension name equal to a config-declared one -> `extension.config_declared`;
|
|
113
123
|
* - an install record of the same name comes from another npm package -> `extension.name_conflict`
|
|
114
124
|
* (a new version of the same package is an upgrade, handled elsewhere).
|
|
115
|
-
* `actor` null means the CLI (no
|
|
125
|
+
* `actor` null means the CLI (no super admin re-check, audit without an actor). `owner`: an org
|
|
126
|
+
* upload (spec §14, P3-10): the actor is re-checked as an org admin of that org (`catalog.upload`)
|
|
127
|
+
* instead of a super admin; the package is only stored, as always (nothing runs, no install).
|
|
116
128
|
*/
|
|
117
129
|
ingest(actor: string | null, bytes: Uint8Array, src: IngestSource, opts?: {
|
|
118
130
|
actorTokenId?: string;
|
|
119
131
|
store?: "object" | "pg";
|
|
120
132
|
expectPackageName?: string;
|
|
133
|
+
owner?: {
|
|
134
|
+
orgId: string;
|
|
135
|
+
};
|
|
121
136
|
}): Promise<PackageReview>;
|
|
122
137
|
/**
|
|
123
|
-
* The
|
|
138
|
+
* The super admin re-check under its lock, in a transaction of its own (`requires_new`, as
|
|
124
139
|
* before the conversion): the package write that follows never runs inside a caller's
|
|
125
140
|
* transaction holding the lock.
|
|
126
141
|
*/
|
|
127
142
|
private authorize;
|
|
143
|
+
/** The super admin, or for an org upload the owner org's admin, re-checked under its lock. */
|
|
144
|
+
private authorizeIn;
|
|
128
145
|
/**
|
|
129
146
|
* The `extension.package_uploaded` audit, re-checking the actor under the lock, committed on its
|
|
130
147
|
* own (`requires_new`): the stored package it records is not rolled back by a caller either.
|
|
@@ -138,7 +155,7 @@ export declare class ExtensionInstalls {
|
|
|
138
155
|
/**
|
|
139
156
|
* Fetches one package from the configured npm registry (verified by `dist.integrity`, see
|
|
140
157
|
* packages/npm.ts), downloading only, not storing: download failure -> `packages.npm_failed` (502);
|
|
141
|
-
* over `packages.maxBytes` -> `extension.package_too_large`.
|
|
158
|
+
* over `packages.maxBytes` -> `extension.package_too_large`. Platform catalog npm imports use it
|
|
142
159
|
* too.
|
|
143
160
|
*/
|
|
144
161
|
fetchNpm(input: {
|
|
@@ -194,6 +211,10 @@ export declare class ExtensionInstalls {
|
|
|
194
211
|
}): Promise<PackageReview>;
|
|
195
212
|
/** 全部安装记录(按名字)。 */
|
|
196
213
|
list(): Promise<ExtensionInstallRow[]>;
|
|
197
|
-
/**
|
|
214
|
+
/**
|
|
215
|
+
* Install records desired enabled, with their reviewed extension sections, the earliest enabled
|
|
216
|
+
* first (`enabled_at`, then the install time, then the name): of two enabled providers of a
|
|
217
|
+
* single-provider extension point the first one in this order is the one every replica loads.
|
|
218
|
+
*/
|
|
198
219
|
desired(): Promise<DesiredExtension[]>;
|
|
199
220
|
}
|
|
@@ -9,15 +9,17 @@ var __param = (this && this.__param) || function (paramIndex, decorator) {
|
|
|
9
9
|
};
|
|
10
10
|
import { SDK_VERSION } from "@capybara-hq/plugin-sdk";
|
|
11
11
|
import { Inject, Injectable } from "@nestjs/common";
|
|
12
|
+
import { sql } from "kysely";
|
|
12
13
|
import { configFields } from "../config/fields.js";
|
|
13
14
|
import { ApiError } from "../errors.js";
|
|
14
15
|
import { audit } from "../identity/audit.js";
|
|
15
|
-
import {
|
|
16
|
+
import { SuperAdminLock } from "../identity/super-admin.js";
|
|
16
17
|
import { KernelConfigService } from "../infra/config/kernel-config.service.js";
|
|
17
18
|
import { KernelDb } from "../infra/database/kernel-db.js";
|
|
18
19
|
import { TransactionHost } from "../infra/database/transaction-host.js";
|
|
19
20
|
import { Transactional } from "../infra/database/transactional.decorator.js";
|
|
20
21
|
import { KEYRING } from "../infra/tokens.js";
|
|
22
|
+
import { OrgLock } from "../orgs/org-lock.js";
|
|
21
23
|
import { fetchNpmPackage, IntegrityMismatchError, NpmFetchError, PackageTooLargeError, } from "../packages/npm.js";
|
|
22
24
|
import { fetchProvenance, PROVENANCE_TIMEOUT_MS, } from "../packages/provenance.js";
|
|
23
25
|
import { ExtensionApprovals } from "./approvals.js";
|
|
@@ -45,11 +47,14 @@ let ExtensionInstalls = class ExtensionInstalls {
|
|
|
45
47
|
registry;
|
|
46
48
|
config;
|
|
47
49
|
keyring;
|
|
50
|
+
orgLock;
|
|
48
51
|
constructor(db, txHost,
|
|
49
|
-
/** The
|
|
52
|
+
/** The super admin lock (identity/super-admin.ts): joins the transaction. */
|
|
50
53
|
adminLock, blobs, approvals,
|
|
51
54
|
/** The config-declared extension names (an install cannot take them, C15). */
|
|
52
|
-
registry, config, keyring
|
|
55
|
+
registry, config, keyring,
|
|
56
|
+
/** The owner org's lock: an org upload re-checks its org admin instead (ruling P3-10). */
|
|
57
|
+
orgLock) {
|
|
53
58
|
this.db = db;
|
|
54
59
|
this.txHost = txHost;
|
|
55
60
|
this.adminLock = adminLock;
|
|
@@ -58,6 +63,7 @@ let ExtensionInstalls = class ExtensionInstalls {
|
|
|
58
63
|
this.registry = registry;
|
|
59
64
|
this.config = config;
|
|
60
65
|
this.keyring = keyring;
|
|
66
|
+
this.orgLock = orgLock;
|
|
61
67
|
}
|
|
62
68
|
/**
|
|
63
69
|
* An extension's effective deployment config, not validated yet (C10): the startup config
|
|
@@ -71,6 +77,18 @@ let ExtensionInstalls = class ExtensionInstalls {
|
|
|
71
77
|
const fields = schema ? configFields(schema).map((f) => f.path) : undefined;
|
|
72
78
|
return mergeDeploymentConfig(stored, fileValue, fields);
|
|
73
79
|
}
|
|
80
|
+
/**
|
|
81
|
+
* Whether PG holds a deployment config row for the extension (a super admin saved one and has
|
|
82
|
+
* not cleared it since; `DELETE /api/v1/admin/extensions/:name/config` removes it).
|
|
83
|
+
*/
|
|
84
|
+
async hasStoredDeploymentConfig(plugin) {
|
|
85
|
+
const row = await this.db
|
|
86
|
+
.selectFrom("extension_deployment_configs")
|
|
87
|
+
.select("plugin")
|
|
88
|
+
.where("plugin", "=", plugin)
|
|
89
|
+
.executeTakeFirst();
|
|
90
|
+
return row !== undefined;
|
|
91
|
+
}
|
|
74
92
|
/** Every install record's extension name (any desired state). */
|
|
75
93
|
async installedNames() {
|
|
76
94
|
const rows = await this.db.selectFrom("extension_installs").select("name").execute();
|
|
@@ -84,9 +102,14 @@ let ExtensionInstalls = class ExtensionInstalls {
|
|
|
84
102
|
* - extension name equal to a config-declared one -> `extension.config_declared`;
|
|
85
103
|
* - an install record of the same name comes from another npm package -> `extension.name_conflict`
|
|
86
104
|
* (a new version of the same package is an upgrade, handled elsewhere).
|
|
87
|
-
* `actor` null means the CLI (no
|
|
105
|
+
* `actor` null means the CLI (no super admin re-check, audit without an actor). `owner`: an org
|
|
106
|
+
* upload (spec §14, P3-10): the actor is re-checked as an org admin of that org (`catalog.upload`)
|
|
107
|
+
* instead of a super admin; the package is only stored, as always (nothing runs, no install).
|
|
88
108
|
*/
|
|
89
109
|
async ingest(actor, bytes, src, opts = {}) {
|
|
110
|
+
if (opts.owner !== undefined && actor === null) {
|
|
111
|
+
throw new Error("an org upload has an actor");
|
|
112
|
+
}
|
|
90
113
|
const maxBytes = this.config.get().packages.maxBytes;
|
|
91
114
|
if (bytes.byteLength > maxBytes) {
|
|
92
115
|
throw new ApiError("extension.package_too_large", `The extension package is larger than ${maxBytes} bytes`);
|
|
@@ -121,9 +144,9 @@ let ExtensionInstalls = class ExtensionInstalls {
|
|
|
121
144
|
if (installed && installed.package_name !== packageName) {
|
|
122
145
|
throw new ApiError("extension.name_conflict", `Extension ${m.name} is already installed from package ${installed.package_name}; package ${packageName} uses the same extension name`);
|
|
123
146
|
}
|
|
124
|
-
//
|
|
147
|
+
// 写包之前在锁内复核发起人仍是超级管理员(守卫读到的身份可能已过期);审计在写完后同样复核
|
|
125
148
|
if (actor !== null)
|
|
126
|
-
await this.authorize(actor);
|
|
149
|
+
await this.authorize(actor, opts.owner);
|
|
127
150
|
await this.blobs.put(pkg, bytes, {
|
|
128
151
|
source: src.source,
|
|
129
152
|
ref: src.ref,
|
|
@@ -135,7 +158,8 @@ let ExtensionInstalls = class ExtensionInstalls {
|
|
|
135
158
|
version: m.version,
|
|
136
159
|
sha256: pkg.sha256,
|
|
137
160
|
source: src.source,
|
|
138
|
-
|
|
161
|
+
...(opts.owner !== undefined && { orgId: opts.owner.orgId }),
|
|
162
|
+
}, opts.owner);
|
|
139
163
|
const set = permissionSetOfPackage(pkg);
|
|
140
164
|
const snapshot = (await this.approvals.all()).get(m.name);
|
|
141
165
|
const { added, removed } = diffPermissions(snapshot?.permissions, set);
|
|
@@ -153,20 +177,27 @@ let ExtensionInstalls = class ExtensionInstalls {
|
|
|
153
177
|
};
|
|
154
178
|
}
|
|
155
179
|
/**
|
|
156
|
-
* The
|
|
180
|
+
* The super admin re-check under its lock, in a transaction of its own (`requires_new`, as
|
|
157
181
|
* before the conversion): the package write that follows never runs inside a caller's
|
|
158
182
|
* transaction holding the lock.
|
|
159
183
|
*/
|
|
160
|
-
async authorize(actor) {
|
|
161
|
-
await this.
|
|
184
|
+
async authorize(actor, owner) {
|
|
185
|
+
await this.authorizeIn(actor, owner);
|
|
186
|
+
}
|
|
187
|
+
/** The super admin, or for an org upload the owner org's admin, re-checked under its lock. */
|
|
188
|
+
async authorizeIn(actor, owner) {
|
|
189
|
+
if (owner !== undefined)
|
|
190
|
+
await this.orgLock.lockAndAuthorize(owner.orgId, actor, "catalog.upload");
|
|
191
|
+
else
|
|
192
|
+
await this.adminLock.lockAndAuthorize(actor);
|
|
162
193
|
}
|
|
163
194
|
/**
|
|
164
195
|
* The `extension.package_uploaded` audit, re-checking the actor under the lock, committed on its
|
|
165
196
|
* own (`requires_new`): the stored package it records is not rolled back by a caller either.
|
|
166
197
|
*/
|
|
167
|
-
async auditUpload(actor, actorTokenId, detail) {
|
|
198
|
+
async auditUpload(actor, actorTokenId, detail, owner) {
|
|
168
199
|
if (actor !== null)
|
|
169
|
-
await this.
|
|
200
|
+
await this.authorizeIn(actor, owner);
|
|
170
201
|
await audit(this.db.db, {
|
|
171
202
|
...(actor !== null && { actorAccountId: actor }),
|
|
172
203
|
...(actorTokenId !== undefined && { actorTokenId }),
|
|
@@ -182,7 +213,7 @@ let ExtensionInstalls = class ExtensionInstalls {
|
|
|
182
213
|
/**
|
|
183
214
|
* Fetches one package from the configured npm registry (verified by `dist.integrity`, see
|
|
184
215
|
* packages/npm.ts), downloading only, not storing: download failure -> `packages.npm_failed` (502);
|
|
185
|
-
* over `packages.maxBytes` -> `extension.package_too_large`.
|
|
216
|
+
* over `packages.maxBytes` -> `extension.package_too_large`. Platform catalog npm imports use it
|
|
186
217
|
* too.
|
|
187
218
|
*/
|
|
188
219
|
async fetchNpm(input, signal) {
|
|
@@ -301,7 +332,11 @@ let ExtensionInstalls = class ExtensionInstalls {
|
|
|
301
332
|
updatedAt: r.updated_at.toISOString(),
|
|
302
333
|
}));
|
|
303
334
|
}
|
|
304
|
-
/**
|
|
335
|
+
/**
|
|
336
|
+
* Install records desired enabled, with their reviewed extension sections, the earliest enabled
|
|
337
|
+
* first (`enabled_at`, then the install time, then the name): of two enabled providers of a
|
|
338
|
+
* single-provider extension point the first one in this order is the one every replica loads.
|
|
339
|
+
*/
|
|
305
340
|
async desired() {
|
|
306
341
|
const rows = await this.db
|
|
307
342
|
.selectFrom("extension_installs")
|
|
@@ -316,6 +351,8 @@ let ExtensionInstalls = class ExtensionInstalls {
|
|
|
316
351
|
"extension_packages.blob_store",
|
|
317
352
|
])
|
|
318
353
|
.where("extension_installs.desired_state", "=", "enabled")
|
|
354
|
+
.orderBy(sql `extension_installs.enabled_at ASC NULLS LAST`)
|
|
355
|
+
.orderBy("extension_installs.installed_at")
|
|
319
356
|
.orderBy("extension_installs.name")
|
|
320
357
|
.execute();
|
|
321
358
|
return rows.map((r) => ({
|
|
@@ -332,6 +369,9 @@ let ExtensionInstalls = class ExtensionInstalls {
|
|
|
332
369
|
__decorate([
|
|
333
370
|
Transactional({ propagation: "requires_new" })
|
|
334
371
|
], ExtensionInstalls.prototype, "authorize", null);
|
|
372
|
+
__decorate([
|
|
373
|
+
Transactional({ propagation: "mandatory" })
|
|
374
|
+
], ExtensionInstalls.prototype, "authorizeIn", null);
|
|
335
375
|
__decorate([
|
|
336
376
|
Transactional({ propagation: "requires_new" })
|
|
337
377
|
], ExtensionInstalls.prototype, "auditUpload", null);
|
|
@@ -339,11 +379,12 @@ ExtensionInstalls = __decorate([
|
|
|
339
379
|
Injectable(),
|
|
340
380
|
__param(0, Inject(KernelDb)),
|
|
341
381
|
__param(1, Inject(TransactionHost)),
|
|
342
|
-
__param(2, Inject(
|
|
382
|
+
__param(2, Inject(SuperAdminLock)),
|
|
343
383
|
__param(3, Inject(ExtensionBlobs)),
|
|
344
384
|
__param(4, Inject(ExtensionApprovals)),
|
|
345
385
|
__param(5, Inject(ExtensionRegistry)),
|
|
346
386
|
__param(6, Inject(KernelConfigService)),
|
|
347
|
-
__param(7, Inject(KEYRING))
|
|
387
|
+
__param(7, Inject(KEYRING)),
|
|
388
|
+
__param(8, Inject(OrgLock))
|
|
348
389
|
], ExtensionInstalls);
|
|
349
390
|
export { ExtensionInstalls };
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { type ExtensionManifest, type ExtensionPointRef, type StaticExtensionManifest } from "@capybara-hq/plugin-sdk";
|
|
2
|
-
import { type ExtensionPointAccess, type KernelDeps, type KernelExtensionContext, LiveConfig, type RegisteredTool, type Route } from "../ctx/create-ctx.js";
|
|
1
|
+
import { type DroppedUiContribution, type ExtensionManifest, type ExtensionPointRef, type ResolvedUiContribution, type StaticExtensionManifest } from "@capybara-hq/plugin-sdk";
|
|
2
|
+
import { type ExtensionPointAccess, type KernelDeps, type KernelExtensionContext, LiveConfig, type RegisteredSetupCheck, type RegisteredTool, type Route } from "../ctx/create-ctx.js";
|
|
3
3
|
import type { UiActionHandler, UiRender } from "../ui/registry.js";
|
|
4
4
|
import type { RegisteredHook } from "./hooks.js";
|
|
5
5
|
import { InflightTracker } from "./inflight.js";
|
|
@@ -44,6 +44,17 @@ export declare class ExtensionInstance {
|
|
|
44
44
|
readonly generation: number;
|
|
45
45
|
readonly manifest: ExtensionManifest;
|
|
46
46
|
readonly permissions: PermissionSet;
|
|
47
|
+
/** The manifest's UI contributions whose slot the catalog knows (UI slots spec §3.2), in manifest order. */
|
|
48
|
+
readonly ui: ResolvedUiContribution[];
|
|
49
|
+
/** The manifest's UI contributions left out at load (unknown slot or slot version). */
|
|
50
|
+
readonly uiDropped: DroppedUiContribution[];
|
|
51
|
+
/** `after` values that are not anchors of their slot (the contribution keeps the default position). */
|
|
52
|
+
readonly uiUnknownAnchors: {
|
|
53
|
+
id: string;
|
|
54
|
+
after: string;
|
|
55
|
+
}[];
|
|
56
|
+
/** Ids of contributions that still name the deprecated `place`. */
|
|
57
|
+
readonly uiDeprecatedPlace: string[];
|
|
47
58
|
private hash;
|
|
48
59
|
private readonly live;
|
|
49
60
|
readonly entryUrl: string;
|
|
@@ -68,6 +79,10 @@ export declare class ExtensionInstance {
|
|
|
68
79
|
get hooks(): readonly RegisteredHook[];
|
|
69
80
|
get uiViews(): ReadonlyMap<string, UiRender>;
|
|
70
81
|
get uiActions(): ReadonlyMap<string, UiActionHandler>;
|
|
82
|
+
/** Setup checks registered through `ctx.setup.check` (empty after revocation). */
|
|
83
|
+
get setupChecks(): ReadonlyMap<string, RegisteredSetupCheck>;
|
|
84
|
+
/** The instance's `ctx.signal`: aborted when it is revoked or disposed. */
|
|
85
|
+
get signal(): AbortSignal;
|
|
71
86
|
/** 账上仍在的登记(撤销后为空)。 */
|
|
72
87
|
registrations(): Registration[];
|
|
73
88
|
get disposed(): boolean;
|
|
@@ -60,6 +60,14 @@ export class ExtensionInstance {
|
|
|
60
60
|
generation;
|
|
61
61
|
manifest;
|
|
62
62
|
permissions;
|
|
63
|
+
/** The manifest's UI contributions whose slot the catalog knows (UI slots spec §3.2), in manifest order. */
|
|
64
|
+
ui;
|
|
65
|
+
/** The manifest's UI contributions left out at load (unknown slot or slot version). */
|
|
66
|
+
uiDropped;
|
|
67
|
+
/** `after` values that are not anchors of their slot (the contribution keeps the default position). */
|
|
68
|
+
uiUnknownAnchors;
|
|
69
|
+
/** Ids of contributions that still name the deprecated `place`. */
|
|
70
|
+
uiDeprecatedPlace;
|
|
63
71
|
hash;
|
|
64
72
|
live;
|
|
65
73
|
entryUrl;
|
|
@@ -77,6 +85,11 @@ export class ExtensionInstance {
|
|
|
77
85
|
this.source = init.source;
|
|
78
86
|
this.generation = init.generation;
|
|
79
87
|
this.permissions = init.permissions;
|
|
88
|
+
const ui = init.ctx.uiResolution;
|
|
89
|
+
this.ui = ui.resolved;
|
|
90
|
+
this.uiDropped = ui.dropped;
|
|
91
|
+
this.uiUnknownAnchors = ui.unknownAnchors;
|
|
92
|
+
this.uiDeprecatedPlace = ui.deprecatedPlace;
|
|
80
93
|
this.hash = init.configHash;
|
|
81
94
|
this.live = init.config;
|
|
82
95
|
this.entryUrl = init.entryUrl;
|
|
@@ -117,6 +130,14 @@ export class ExtensionInstance {
|
|
|
117
130
|
get uiActions() {
|
|
118
131
|
return this.ctx.uiActions;
|
|
119
132
|
}
|
|
133
|
+
/** Setup checks registered through `ctx.setup.check` (empty after revocation). */
|
|
134
|
+
get setupChecks() {
|
|
135
|
+
return this.ctx.setupChecks;
|
|
136
|
+
}
|
|
137
|
+
/** The instance's `ctx.signal`: aborted when it is revoked or disposed. */
|
|
138
|
+
get signal() {
|
|
139
|
+
return this.ctx.signal;
|
|
140
|
+
}
|
|
120
141
|
/** 账上仍在的登记(撤销后为空)。 */
|
|
121
142
|
registrations() {
|
|
122
143
|
return this.ctx.ledger.list();
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/** 插件经 ctx 做的一项登记的种类(C17)。 */
|
|
2
|
-
export type RegistrationKind = "tool" | "route" | "queue" | "bus" | "lease" | "ui.view" | "ui.action" | "provide" | "hook";
|
|
2
|
+
export type RegistrationKind = "tool" | "route" | "queue" | "bus" | "lease" | "ui.view" | "ui.action" | "provide" | "hook" | "setup.check";
|
|
3
3
|
/** 账上的一项:撤销时调用 `dispose()`。 */
|
|
4
4
|
export interface Registration {
|
|
5
5
|
kind: RegistrationKind;
|
|
@@ -31,3 +31,15 @@ export declare class PluginDeploymentConfigLock {
|
|
|
31
31
|
constructor(xactLock: XactLock, txHost: TransactionHost);
|
|
32
32
|
lock(name: string): Promise<void>;
|
|
33
33
|
}
|
|
34
|
+
/**
|
|
35
|
+
* Serializes the enables of the providers of one single-provider extension point (`sandbox@2`, …):
|
|
36
|
+
* two concurrent enables of different providers cannot both see the point free. Joins the
|
|
37
|
+
* caller's transaction (`mandatory`); taken after the install lock of the extension's name, the
|
|
38
|
+
* points in sorted order.
|
|
39
|
+
*/
|
|
40
|
+
export declare class SingleProviderLock {
|
|
41
|
+
private readonly xactLock;
|
|
42
|
+
readonly txHost: TransactionHost;
|
|
43
|
+
constructor(xactLock: XactLock, txHost: TransactionHost);
|
|
44
|
+
lock(extensionPoint: string): Promise<void>;
|
|
45
|
+
}
|
package/dist/extensions/locks.js
CHANGED
|
@@ -84,3 +84,29 @@ PluginDeploymentConfigLock = __decorate([
|
|
|
84
84
|
__param(1, Inject(TransactionHost))
|
|
85
85
|
], PluginDeploymentConfigLock);
|
|
86
86
|
export { PluginDeploymentConfigLock };
|
|
87
|
+
/**
|
|
88
|
+
* Serializes the enables of the providers of one single-provider extension point (`sandbox@2`, …):
|
|
89
|
+
* two concurrent enables of different providers cannot both see the point free. Joins the
|
|
90
|
+
* caller's transaction (`mandatory`); taken after the install lock of the extension's name, the
|
|
91
|
+
* points in sorted order.
|
|
92
|
+
*/
|
|
93
|
+
let SingleProviderLock = class SingleProviderLock {
|
|
94
|
+
xactLock;
|
|
95
|
+
txHost;
|
|
96
|
+
constructor(xactLock, txHost) {
|
|
97
|
+
this.xactLock = xactLock;
|
|
98
|
+
this.txHost = txHost;
|
|
99
|
+
}
|
|
100
|
+
async lock(extensionPoint) {
|
|
101
|
+
await this.xactLock.lock(`capybara.single-provider:${extensionPoint}`);
|
|
102
|
+
}
|
|
103
|
+
};
|
|
104
|
+
__decorate([
|
|
105
|
+
Transactional({ propagation: "mandatory" })
|
|
106
|
+
], SingleProviderLock.prototype, "lock", null);
|
|
107
|
+
SingleProviderLock = __decorate([
|
|
108
|
+
Injectable(),
|
|
109
|
+
__param(0, Inject(XactLock)),
|
|
110
|
+
__param(1, Inject(TransactionHost))
|
|
111
|
+
], SingleProviderLock);
|
|
112
|
+
export { SingleProviderLock };
|
|
@@ -1,4 +1,6 @@
|
|
|
1
|
+
import { type PluginScope } from "../catalog/scope.js";
|
|
1
2
|
import { type Keyring } from "../ctx/secrets.js";
|
|
3
|
+
import type { KernelSchemaDb } from "../db/kernel-schema.js";
|
|
2
4
|
import { KernelDb } from "../infra/database/kernel-db.js";
|
|
3
5
|
import { TransactionHost } from "../infra/database/transaction-host.js";
|
|
4
6
|
import { KernelEvents } from "../infra/events/kernel-events.js";
|
|
@@ -6,9 +8,11 @@ import type { KernelLogger } from "../log.js";
|
|
|
6
8
|
import { OrgLock } from "../orgs/org-lock.js";
|
|
7
9
|
import { type ConfigIssue, toIssues } from "./config-issues.js";
|
|
8
10
|
import { type JsonSchema } from "./config-json-schema.js";
|
|
11
|
+
import { EffectiveConfigs } from "./effective-config.js";
|
|
9
12
|
import { ExtensionHost } from "./host.js";
|
|
10
13
|
import { ExtensionInstalls } from "./installs.js";
|
|
11
|
-
import { type PermissionGroup } from "./permission-view.js";
|
|
14
|
+
import { type DeploymentExtensionStatus, type PermissionGroup } from "./permission-view.js";
|
|
15
|
+
import { ExtensionAvailability, type ExtensionUnavailableReason } from "./unavailable.js";
|
|
12
16
|
export { type ConfigIssue, toIssues };
|
|
13
17
|
/** 组织视角下一个已加载插件的状态;`config` 永远不含密钥字段,密钥只回显「是否已设置」。 */
|
|
14
18
|
export interface OrgExtensionView {
|
|
@@ -32,12 +36,41 @@ export interface OrgExtensionView {
|
|
|
32
36
|
* 组织的启用开关保留不变(不能修改),其余字段为空。
|
|
33
37
|
*/
|
|
34
38
|
available: boolean;
|
|
39
|
+
/**
|
|
40
|
+
* The extension's status on the deployment, as the admin console derives it
|
|
41
|
+
* (`deriveExtensionStatus`): `enabled` when it is loaded here; otherwise why not.
|
|
42
|
+
*/
|
|
43
|
+
status: DeploymentExtensionStatus;
|
|
44
|
+
/**
|
|
45
|
+
* Only when unavailable: why it cannot be used (spec §14.5 item 4), e.g.
|
|
46
|
+
* `needs_deployment_config`. State only, never a config value or field name.
|
|
47
|
+
*/
|
|
48
|
+
reason?: ExtensionUnavailableReason;
|
|
35
49
|
/**
|
|
36
50
|
* A required bootstrap plugin: enabled in every org (`enabled` is always true) and cannot be
|
|
37
51
|
* disabled here (`extension.required`); its org config, when it has one, can still be set.
|
|
38
52
|
*/
|
|
39
53
|
required: boolean;
|
|
54
|
+
/** The catalog plugin the extension ships in and its scope (builtin counts as `all`); null without one. */
|
|
55
|
+
catalogItem: {
|
|
56
|
+
itemId: string;
|
|
57
|
+
scope: PluginScope;
|
|
58
|
+
} | null;
|
|
59
|
+
/** The org admin can switch it (the plugin's switch): never for an `all` / builtin plugin. */
|
|
60
|
+
switchable: boolean;
|
|
61
|
+
/**
|
|
62
|
+
* The two-level deployment config (spec A §5.3, §5.4): `following` the platform, a `copy` of the
|
|
63
|
+
* overridable fields, or `none` (the extension has no overridable field, or is unavailable).
|
|
64
|
+
*/
|
|
65
|
+
overrideState: "following" | "copy" | "none";
|
|
66
|
+
/**
|
|
67
|
+
* The org must configure the extension before it works here (spec A §6): its effective config
|
|
68
|
+
* is not valid, or a required org-only field is missing. Always false when unavailable.
|
|
69
|
+
*/
|
|
70
|
+
needsConfig: boolean;
|
|
40
71
|
}
|
|
72
|
+
/** The extension points an extension provides, from its permission list's `provides` group. */
|
|
73
|
+
export declare function providesOf(view: Pick<OrgExtensionView, "permissions">): string[];
|
|
41
74
|
/** `put` 的输入:`config` 中的密钥字段缺省 = 保留原值、`null` = 清除、其他值 = 新值。 */
|
|
42
75
|
export interface OrgExtensionInput {
|
|
43
76
|
enabled?: boolean | undefined;
|
|
@@ -48,7 +81,7 @@ export interface OrgExtensionInput {
|
|
|
48
81
|
/** `put` 的内部选项(不来自 HTTP)。 */
|
|
49
82
|
export interface OrgExtensionPutOptions {
|
|
50
83
|
/**
|
|
51
|
-
* Enable through this
|
|
84
|
+
* Enable through this platform catalog item (the extension's own item, or an app item: plugins
|
|
52
85
|
* in an app follow the app item's policy, C22). When omitted, judged by every source item in
|
|
53
86
|
* `extension_catalog_sources` (the strictest wins); an extension not installed through the catalog
|
|
54
87
|
* is not bound by catalog policy.
|
|
@@ -69,6 +102,13 @@ export interface OrgExtensionPutOptions {
|
|
|
69
102
|
ifDisabled?: {
|
|
70
103
|
skipped: boolean;
|
|
71
104
|
};
|
|
105
|
+
/**
|
|
106
|
+
* Check the role and the config (the given `config`, or with `enabled: true` the stored one,
|
|
107
|
+
* merged with the stored secrets, against the schema) and write nothing: lets a caller that must
|
|
108
|
+
* do another write first fail without a side effect. The rules for newly enabling (catalog policy,
|
|
109
|
+
* dependencies) are left to that write: the plugin install that enables it checks them.
|
|
110
|
+
*/
|
|
111
|
+
validateOnly?: boolean;
|
|
72
112
|
}
|
|
73
113
|
/**
|
|
74
114
|
* Org-level extension config: enablement and the `config.org` config stored per org.
|
|
@@ -90,6 +130,10 @@ export declare class OrgExtensionConfigs {
|
|
|
90
130
|
private readonly events;
|
|
91
131
|
/** Secret values handled (written or decrypted) are masked in the logs after the commit. */
|
|
92
132
|
private readonly log;
|
|
133
|
+
/** The effective deployment config of each org (spec A §6): read for `needsConfig`. */
|
|
134
|
+
private readonly effective;
|
|
135
|
+
/** Why an installed extension is not loaded (`status` / `reason` of the unavailable ones). */
|
|
136
|
+
private readonly availability;
|
|
93
137
|
/** Test seam only: a deterministic interleaving point after the config rows are read, before the secrets. */
|
|
94
138
|
afterConfigRowRead: (() => Promise<void>) | undefined;
|
|
95
139
|
constructor(kdb: KernelDb, txHost: TransactionHost, keyring: Keyring, host: ExtensionHost,
|
|
@@ -100,7 +144,11 @@ export declare class OrgExtensionConfigs {
|
|
|
100
144
|
/** `extension.org-disabled` after a disable commits (channel connections drop at once). */
|
|
101
145
|
events: KernelEvents,
|
|
102
146
|
/** Secret values handled (written or decrypted) are masked in the logs after the commit. */
|
|
103
|
-
log: KernelLogger
|
|
147
|
+
log: KernelLogger,
|
|
148
|
+
/** The effective deployment config of each org (spec A §6): read for `needsConfig`. */
|
|
149
|
+
effective: EffectiveConfigs,
|
|
150
|
+
/** Why an installed extension is not loaded (`status` / `reason` of the unavailable ones). */
|
|
151
|
+
availability: ExtensionAvailability);
|
|
104
152
|
/** The kernel-schema handle of the current transaction. */
|
|
105
153
|
private get db();
|
|
106
154
|
/** 把一份组织配置里的密钥值登记到日志打码(无密钥时无操作);调用方须在事务提交后调用。 */
|
|
@@ -108,12 +156,34 @@ export declare class OrgExtensionConfigs {
|
|
|
108
156
|
/** After a write committed: a disabled extension's channel connections drop at once. */
|
|
109
157
|
private afterPut;
|
|
110
158
|
/**
|
|
111
|
-
*
|
|
112
|
-
*
|
|
159
|
+
* The state of every loaded extension the org sees, in load order (no row: `enabled` false,
|
|
160
|
+
* `config` null), then the installed extensions not loaded right now (disabled on the deployment
|
|
161
|
+
* and the like) as `available: false`, sorted by name.
|
|
113
162
|
*/
|
|
114
163
|
list(orgId: string): Promise<OrgExtensionView[]>;
|
|
164
|
+
/**
|
|
165
|
+
* Fills `overrideState` and the platform half of `needsConfig` (spec A §6) for the views of
|
|
166
|
+
* extensions with overridable fields (the others always run with the platform's config, which
|
|
167
|
+
* loaded valid). Reads the org's copy rows once and the effective config of each such extension.
|
|
168
|
+
*/
|
|
169
|
+
private withLayers;
|
|
115
170
|
/** `REPEATABLE READ` read-only: the config rows and the secrets come from one snapshot. */
|
|
116
171
|
private listSnapshot;
|
|
172
|
+
/**
|
|
173
|
+
* How an `enabled` write of this extension is handled: `direct` through {@link put} (a required
|
|
174
|
+
* bootstrap plugin keeps `extension.required`; an extension without a live item is config-declared;
|
|
175
|
+
* several live items keep the direct write, the strictest source rules applying), `locked` (a live
|
|
176
|
+
* item is builtin and the write switches off: `plugin.scope_locked`), or `item` (the single plugin
|
|
177
|
+
* whose org switch it is).
|
|
178
|
+
*/
|
|
179
|
+
switchPlan(plugin: string, enabled: boolean): Promise<{
|
|
180
|
+
kind: "direct";
|
|
181
|
+
} | {
|
|
182
|
+
kind: "locked";
|
|
183
|
+
} | {
|
|
184
|
+
kind: "item";
|
|
185
|
+
itemId: string;
|
|
186
|
+
}>;
|
|
117
187
|
/**
|
|
118
188
|
* Writes enablement and / or config. The actor's role is re-read under the org row lock (needs
|
|
119
189
|
* `org.extensions.manage`).
|
|
@@ -125,8 +195,16 @@ export declare class OrgExtensionConfigs {
|
|
|
125
195
|
* - The merged full config (or, without `config`, the existing config when the result is enabled)
|
|
126
196
|
* does not satisfy the schema -> `extension.config_invalid`.
|
|
127
197
|
*/
|
|
128
|
-
put(orgId: string, plugin: string, input: OrgExtensionInput,
|
|
198
|
+
put(orgId: string, plugin: string, input: OrgExtensionInput,
|
|
199
|
+
/** null: the kernel itself (the plugin scope sync installing a plugin), no role check. */
|
|
200
|
+
actorAccountId: string | null, actorTokenId?: string, opts?: OrgExtensionPutOptions): Promise<OrgExtensionView>;
|
|
129
201
|
private write;
|
|
202
|
+
/**
|
|
203
|
+
* The rules of a write that switches: newly enabling an extension from the platform catalog
|
|
204
|
+
* re-checks the item policy and grants (C22; one already enabled is unaffected), enabling needs
|
|
205
|
+
* the dependencies enabled, disabling (without `force`) no enabled dependents.
|
|
206
|
+
*/
|
|
207
|
+
private assertSwitchRules;
|
|
130
208
|
/**
|
|
131
209
|
* 读取并解密某插件在该组织下的完整配置(供运行时按组织构造插件实例)。
|
|
132
210
|
* A required bootstrap plugin is enabled without a row (its stored config, or `{}`, is validated).
|
|
@@ -150,7 +228,7 @@ export declare class OrgExtensionConfigs {
|
|
|
150
228
|
* 在调用方事务里停用(应用安装的回滚与卸载用;调用方已锁组织行并复核角色):不检查依赖方,配置保留,
|
|
151
229
|
* 审计 `org.plugin_config.updated`(带 reason)。提交后调用方须再调 {@link afterDisable}。
|
|
152
230
|
*/
|
|
153
|
-
disableIn(orgId: string, plugin: string, actorAccountId: string, reason: string): Promise<boolean>;
|
|
231
|
+
disableIn(orgId: string, plugin: string, actorAccountId: string | null, reason: string): Promise<boolean>;
|
|
154
232
|
/** {@link disableIn} 的事务提交之后:通知停用(断开该插件的渠道连接等)。 */
|
|
155
233
|
afterDisable(orgId: string, plugin: string): Promise<void>;
|
|
156
234
|
/** 该组织已启用的插件名(只含当前已加载的插件;待批准的不算;必需的引导插件始终算启用)。 */
|
|
@@ -166,6 +244,18 @@ export declare class OrgExtensionConfigs {
|
|
|
166
244
|
private manifest;
|
|
167
245
|
private permissionsOf;
|
|
168
246
|
private view;
|
|
247
|
+
/**
|
|
248
|
+
* The org schema's form JSON Schema, a copy (`x-ui` stripped when its hints are invalid; the host
|
|
249
|
+
* warns at load). Never throws: a hint conversion that throws serves the plain schema, or null
|
|
250
|
+
* (one warning per schema on this replica), so one hand-made package cannot fail the org's list.
|
|
251
|
+
*/
|
|
252
|
+
private formSchema;
|
|
169
253
|
/** 该组织在 `kernel` 命名空间下已设置的插件配置密钥键(不解密)。 */
|
|
170
254
|
private setSecretKeys;
|
|
171
255
|
}
|
|
256
|
+
/**
|
|
257
|
+
* Whether the org sees `plugin` in its extension list (a required bootstrap plugin always; else
|
|
258
|
+
* under its catalog items' scope, as {@link OrgExtensionConfigs.list} filters). `db` may be a
|
|
259
|
+
* transaction.
|
|
260
|
+
*/
|
|
261
|
+
export declare function extensionVisibleTo(db: KernelSchemaDb, orgId: string, plugin: string): Promise<boolean>;
|