@capybara-hq/kernel 0.1.0-rc.2 → 0.1.0-rc.20
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 +85 -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 +41 -5
- package/dist/extensions/bootstrap.js +121 -19
- 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 +4 -2
- package/dist/lifecycle/kernel-lifecycle.js +35 -7
- 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
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
-- A deployment that already has two enabled providers of one single-provider extension point
|
|
2
|
+
-- (sandbox, object-store, secret-store, config-source; enabled before the second enable was
|
|
3
|
+
-- refused) loads the one with the earliest `enabled_at` (0097). 0097 backfilled it from the audit
|
|
4
|
+
-- or the install time, which can name a provider other than the one the replicas run now: the
|
|
5
|
+
-- rolling deploy would switch the provider. Prefer what is running: of the enabled providers of a
|
|
6
|
+
-- contested point, the one with a `loaded` replica status row (the most recent heartbeat) gets an
|
|
7
|
+
-- `enabled_at` just before every other provider of that point. A point with no loaded provider
|
|
8
|
+
-- keeps the 0097 values. Idempotent: once the running provider is the earliest, nothing matches.
|
|
9
|
+
WITH provided AS (
|
|
10
|
+
SELECT i.name, split_part(p.ref, '@', 1) AS point, i.enabled_at
|
|
11
|
+
FROM extension_installs i
|
|
12
|
+
JOIN extension_packages k ON k.sha256 = i.sha256
|
|
13
|
+
CROSS JOIN LATERAL jsonb_array_elements_text(
|
|
14
|
+
CASE WHEN jsonb_typeof(k.section -> 'manifest' -> 'provides') = 'array'
|
|
15
|
+
THEN k.section -> 'manifest' -> 'provides' ELSE '[]'::jsonb END) AS p(ref)
|
|
16
|
+
WHERE i.desired_state = 'enabled'
|
|
17
|
+
AND split_part(p.ref, '@', 1) IN ('sandbox', 'object-store', 'secret-store', 'config-source')
|
|
18
|
+
),
|
|
19
|
+
contested AS (
|
|
20
|
+
SELECT point FROM provided GROUP BY point HAVING count(DISTINCT name) > 1
|
|
21
|
+
),
|
|
22
|
+
running AS (
|
|
23
|
+
SELECT DISTINCT ON (pr.point) pr.point, pr.name
|
|
24
|
+
FROM provided pr
|
|
25
|
+
JOIN contested c ON c.point = pr.point
|
|
26
|
+
JOIN extension_replica_status s
|
|
27
|
+
ON s.plugin = pr.name AND s.source = 'install' AND s.state = 'loaded'
|
|
28
|
+
ORDER BY pr.point, s.heartbeat_at DESC, pr.name
|
|
29
|
+
),
|
|
30
|
+
target AS (
|
|
31
|
+
SELECT r.name, min(o.enabled_at) AS others_first
|
|
32
|
+
FROM running r
|
|
33
|
+
JOIN provided o ON o.point = r.point AND o.name <> r.name
|
|
34
|
+
GROUP BY r.name
|
|
35
|
+
)
|
|
36
|
+
UPDATE extension_installs i
|
|
37
|
+
SET enabled_at = t.others_first - interval '1 millisecond'
|
|
38
|
+
FROM target t
|
|
39
|
+
WHERE i.name = t.name
|
|
40
|
+
AND t.others_first IS NOT NULL
|
|
41
|
+
AND (i.enabled_at IS NULL OR i.enabled_at >= t.others_first);
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
-- The setup guide a channel connection was last set up with (plugin setup guides spec
|
|
2
|
+
-- 2026-11-08-plugin-setup-guides-design.md §6): { guideId, version, hash, mode } of the plugin's
|
|
3
|
+
-- channel-connection guide, recorded on create, on an inbound mode switch and when an admin
|
|
4
|
+
-- confirms the platform app was updated. NULL = unknown (rows before this column, or a plugin
|
|
5
|
+
-- without a guide): no drift notice for those.
|
|
6
|
+
ALTER TABLE channel_connections ADD COLUMN IF NOT EXISTS guide_ack jsonb;
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
-- Catalog display files kept in PG (bootstrap catalog files fix, 2026-11-08): a plugin's icon, its
|
|
2
|
+
-- connector templates' icons and its setup guide files, each capped at 64 KiB by the plugin format.
|
|
3
|
+
-- Content-addressed: one row per sha256, shared by every version (and org) whose
|
|
4
|
+
-- catalog_item_versions.files lists it; a reader only asks for the sha256 its version row records
|
|
5
|
+
-- and re-checks it. They are in PG, not object storage, so a bootstrap plugin's icon is stored
|
|
6
|
+
-- before any object-store extension runs (the object store's own icon included). touched_at: set
|
|
7
|
+
-- by every import that stores the file again; the staging cleanup removes rows no version or
|
|
8
|
+
-- staging lists once they are older than the staging TTL.
|
|
9
|
+
CREATE TABLE IF NOT EXISTS catalog_files (
|
|
10
|
+
sha256 text PRIMARY KEY CHECK (sha256 ~ '^[0-9a-f]{64}$'),
|
|
11
|
+
data bytea NOT NULL,
|
|
12
|
+
touched_at timestamptz NOT NULL DEFAULT now()
|
|
13
|
+
);
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
-- Marketplace entry icons (maintainer decision 2026-11-08): the svg / png an entry's `icon` names
|
|
2
|
+
-- (an https URL, or a path in a git marketplace's repository), downloaded on refresh through the
|
|
3
|
+
-- marketplace network rules and kept here so the market list never hits the network per request
|
|
4
|
+
-- and every replica serves the same bytes. One row per (marketplace, icon as the entry writes it);
|
|
5
|
+
-- entries naming the same icon share it. Each is at most 64 KiB (the plugin icon limit). A URL's
|
|
6
|
+
-- content is treated as fixed (fetched once); a repository path is read again at every new commit.
|
|
7
|
+
-- Rows no entry names any more are removed by the refresh; deleting the marketplace removes them.
|
|
8
|
+
CREATE TABLE IF NOT EXISTS marketplace_icons (
|
|
9
|
+
source_id text NOT NULL REFERENCES marketplaces(id) ON DELETE CASCADE,
|
|
10
|
+
ref text NOT NULL,
|
|
11
|
+
sha256 text NOT NULL CHECK (sha256 ~ '^[0-9a-f]{64}$'),
|
|
12
|
+
content_type text NOT NULL CHECK (content_type IN ('image/svg+xml', 'image/png')),
|
|
13
|
+
data bytea NOT NULL,
|
|
14
|
+
fetched_at timestamptz NOT NULL DEFAULT now(),
|
|
15
|
+
PRIMARY KEY (source_id, ref)
|
|
16
|
+
);
|
|
17
|
+
|
|
18
|
+
-- Icon URLs whose last download failed (HTTP error, invalid content, refused by the network rules,
|
|
19
|
+
-- timeout): retried only after a backoff, and after the URLs never tried, so a few broken URLs never
|
|
20
|
+
-- starve the rest of a refresh's download cap. Removed when the URL is stored or no entry names it.
|
|
21
|
+
CREATE TABLE IF NOT EXISTS marketplace_icon_failures (
|
|
22
|
+
source_id text NOT NULL REFERENCES marketplaces(id) ON DELETE CASCADE,
|
|
23
|
+
ref text NOT NULL,
|
|
24
|
+
failed_at timestamptz NOT NULL DEFAULT now(),
|
|
25
|
+
attempts integer NOT NULL DEFAULT 1,
|
|
26
|
+
PRIMARY KEY (source_id, ref)
|
|
27
|
+
);
|
|
28
|
+
|
|
29
|
+
-- The git commit whose repository-path icons were last stored completely (null: none yet, or a
|
|
30
|
+
-- refresh that predates icons). A refresh at last_commit is not_modified only when this equals it;
|
|
31
|
+
-- otherwise the commit is read again, so a failed icon write recovers at the same commit.
|
|
32
|
+
ALTER TABLE marketplaces ADD COLUMN IF NOT EXISTS icons_commit text;
|
|
@@ -0,0 +1,64 @@
|
|
|
1
|
+
-- Themes as a platform component kind (themes spec 2026-11-08-themes-design.md §6, §7): rows and
|
|
2
|
+
-- versions shaped like platform agent templates, with the owner columns of org-owned items; the
|
|
3
|
+
-- `theme` kind in the component scope, switch and install component tables; the person's pick on
|
|
4
|
+
-- the account. Expand-only: the only dropped objects are the three kind checks, re-added wider in
|
|
5
|
+
-- the next statement each.
|
|
6
|
+
|
|
7
|
+
CREATE TABLE IF NOT EXISTS platform_themes (
|
|
8
|
+
id text PRIMARY KEY,
|
|
9
|
+
catalog_item_id uuid REFERENCES catalog_items(id) ON DELETE SET NULL,
|
|
10
|
+
plugin_name text,
|
|
11
|
+
name text NOT NULL,
|
|
12
|
+
description text,
|
|
13
|
+
description_zh text,
|
|
14
|
+
current_version integer NOT NULL CHECK (current_version >= 1),
|
|
15
|
+
scope_mode text NOT NULL DEFAULT 'follow' CHECK (scope_mode IN ('follow', 'own')),
|
|
16
|
+
scope text NOT NULL DEFAULT 'optional' CHECK (scope IN ('all', 'optional', 'named')),
|
|
17
|
+
disabled boolean NOT NULL DEFAULT false,
|
|
18
|
+
shown_to_others boolean NOT NULL DEFAULT true,
|
|
19
|
+
scope_version integer NOT NULL DEFAULT 0,
|
|
20
|
+
-- The owning org (NULL = the platform), the org it was created in (no FK, immutable) and the
|
|
21
|
+
-- share switch, as on the other platform components (0084).
|
|
22
|
+
owner_org_id text REFERENCES orgs(id) ON DELETE SET NULL,
|
|
23
|
+
origin_org_id text,
|
|
24
|
+
shareable boolean NOT NULL DEFAULT false,
|
|
25
|
+
created_at timestamptz NOT NULL DEFAULT now(),
|
|
26
|
+
updated_at timestamptz NOT NULL DEFAULT now(),
|
|
27
|
+
deleted_at timestamptz
|
|
28
|
+
);
|
|
29
|
+
CREATE UNIQUE INDEX IF NOT EXISTS platform_themes_live_name_origin_uq
|
|
30
|
+
ON platform_themes ((coalesce(plugin_name, '')), name, (coalesce(origin_org_id, '')))
|
|
31
|
+
WHERE deleted_at IS NULL;
|
|
32
|
+
|
|
33
|
+
-- One version of a theme: `definition` is the parsed theme file (`ParsedTheme`); fonts and logo
|
|
34
|
+
-- live under `object_prefix` in `deployment/` (NULL for a theme without assets).
|
|
35
|
+
CREATE TABLE IF NOT EXISTS platform_theme_versions (
|
|
36
|
+
theme_id text NOT NULL REFERENCES platform_themes(id) ON DELETE CASCADE,
|
|
37
|
+
version integer NOT NULL CHECK (version >= 1),
|
|
38
|
+
definition jsonb NOT NULL,
|
|
39
|
+
object_prefix text,
|
|
40
|
+
catalog_version text,
|
|
41
|
+
updated_on_own boolean NOT NULL DEFAULT false,
|
|
42
|
+
created_by text,
|
|
43
|
+
created_at timestamptz NOT NULL DEFAULT now(),
|
|
44
|
+
PRIMARY KEY (theme_id, version)
|
|
45
|
+
);
|
|
46
|
+
|
|
47
|
+
-- 0081 declared these checks inline, so they carry the default names.
|
|
48
|
+
-- capybara:allow-destructive the check is added back with 'theme' in the next statement; existing rows satisfy it
|
|
49
|
+
ALTER TABLE component_scope_orgs DROP CONSTRAINT IF EXISTS component_scope_orgs_kind_check;
|
|
50
|
+
ALTER TABLE component_scope_orgs ADD CONSTRAINT component_scope_orgs_kind_check
|
|
51
|
+
CHECK (kind IN ('skill', 'agent_template', 'connector_template', 'theme'));
|
|
52
|
+
-- capybara:allow-destructive the check is added back with 'theme' in the next statement; existing rows satisfy it
|
|
53
|
+
ALTER TABLE component_org_switches DROP CONSTRAINT IF EXISTS component_org_switches_kind_check;
|
|
54
|
+
ALTER TABLE component_org_switches ADD CONSTRAINT component_org_switches_kind_check
|
|
55
|
+
CHECK (kind IN ('skill', 'agent_template', 'connector_template', 'theme'));
|
|
56
|
+
-- NOT VALID as in 0053: existing rows were checked by the narrower constraint already.
|
|
57
|
+
-- capybara:allow-destructive the check is added back with 'theme' in the next statement; existing rows satisfy it
|
|
58
|
+
ALTER TABLE plugin_install_components DROP CONSTRAINT IF EXISTS plugin_install_components_kind_check;
|
|
59
|
+
ALTER TABLE plugin_install_components ADD CONSTRAINT plugin_install_components_kind_check
|
|
60
|
+
CHECK (kind IN ('extension', 'connector', 'skill', 'plugin', 'agent_template', 'theme')) NOT VALID;
|
|
61
|
+
|
|
62
|
+
-- The person's theme (§7): one value across all their orgs; NULL follows the org. No FK: a pick
|
|
63
|
+
-- that is not on in the current org (or no longer exists) is skipped, never an error.
|
|
64
|
+
ALTER TABLE accounts ADD COLUMN IF NOT EXISTS theme text;
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
-- The platform default theme setting `uiTheme` (themes spec §7) always has a row: the guards that
|
|
2
|
+
-- refuse taking the default theme away from an org read it FOR SHARE, and the setting's write
|
|
3
|
+
-- locks it FOR UPDATE before checking the chosen theme, so the two serialize on this row.
|
|
4
|
+
-- `{"id": null}` is the built-in theme (the default when the key is missing).
|
|
5
|
+
INSERT INTO deployment_settings (key, value)
|
|
6
|
+
VALUES ('uiTheme', '{"id": null}'::jsonb)
|
|
7
|
+
ON CONFLICT (key) DO NOTHING;
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
-- A member's own tool policies for their own connection of a personal-credential connector
|
|
2
|
+
-- (maintainer decision 2026-11-09, the connector card's 权限): one row per account, connector and
|
|
3
|
+
-- tool name. They apply to every agent the account uses; an agent's tool policy overrides them, and
|
|
4
|
+
-- a tool the org switched off (or set to deny) stays denied whatever they say.
|
|
5
|
+
CREATE TABLE IF NOT EXISTS capybara.connector_tool_account_policies (
|
|
6
|
+
org_id text NOT NULL REFERENCES capybara.orgs(id) ON DELETE CASCADE,
|
|
7
|
+
connector_id text NOT NULL REFERENCES capybara.connectors(id) ON DELETE CASCADE,
|
|
8
|
+
account_id text NOT NULL REFERENCES capybara.accounts(id) ON DELETE CASCADE,
|
|
9
|
+
tool_name text NOT NULL,
|
|
10
|
+
policy text NOT NULL CHECK (policy IN ('allow', 'ask', 'deny')),
|
|
11
|
+
updated_at timestamptz NOT NULL DEFAULT now(),
|
|
12
|
+
PRIMARY KEY (connector_id, account_id, tool_name)
|
|
13
|
+
);
|
|
14
|
+
|
|
15
|
+
CREATE INDEX IF NOT EXISTS connector_tool_account_policies_account
|
|
16
|
+
ON capybara.connector_tool_account_policies (account_id);
|
|
@@ -0,0 +1,136 @@
|
|
|
1
|
+
-- One name: devices (spec 2026-11-07-environments-design §15.2). Every environment table, column,
|
|
2
|
+
-- index and constraint takes the device name; a connected machine's source 'device' becomes
|
|
3
|
+
-- 'local', the kernel-internal provider '@device' becomes '@local', and the log event
|
|
4
|
+
-- 'environment_paths' becomes 'device_paths' (in the log and in eval case snapshots). The kernel
|
|
5
|
+
-- is renamed in the same release; before 0.1.0, so no compatibility layer and no rolling deploy
|
|
6
|
+
-- across this migration. Every statement is guarded, so a rerun changes nothing.
|
|
7
|
+
|
|
8
|
+
-- capybara:allow-destructive table rename; the kernel is renamed in the same release (not released, no compatibility layer)
|
|
9
|
+
ALTER TABLE IF EXISTS environments RENAME TO devices;
|
|
10
|
+
-- capybara:allow-destructive table rename; the kernel is renamed in the same release (not released, no compatibility layer)
|
|
11
|
+
ALTER TABLE IF EXISTS environment_instances RENAME TO device_instances;
|
|
12
|
+
-- capybara:allow-destructive table rename; the kernel is renamed in the same release (not released, no compatibility layer)
|
|
13
|
+
ALTER TABLE IF EXISTS environment_defaults RENAME TO device_defaults;
|
|
14
|
+
-- capybara:allow-destructive table rename; the kernel is renamed in the same release (not released, no compatibility layer)
|
|
15
|
+
ALTER TABLE IF EXISTS environment_machines RENAME TO device_machines;
|
|
16
|
+
|
|
17
|
+
-- RENAME COLUMN has no IF EXISTS: checked against information_schema first.
|
|
18
|
+
-- capybara:allow-destructive column rename environment_id -> device_id; the kernel is renamed in the same release (not released)
|
|
19
|
+
DO $$
|
|
20
|
+
DECLARE
|
|
21
|
+
t text;
|
|
22
|
+
BEGIN
|
|
23
|
+
FOREACH t IN ARRAY ARRAY['device_instances', 'device_defaults', 'device_machines',
|
|
24
|
+
'conversations', 'background_tasks'] LOOP
|
|
25
|
+
IF EXISTS (
|
|
26
|
+
SELECT 1 FROM information_schema.columns
|
|
27
|
+
WHERE table_schema = 'capybara' AND table_name = t AND column_name = 'environment_id'
|
|
28
|
+
) THEN
|
|
29
|
+
EXECUTE format('ALTER TABLE capybara.%I RENAME COLUMN environment_id TO device_id', t);
|
|
30
|
+
END IF;
|
|
31
|
+
END LOOP;
|
|
32
|
+
END
|
|
33
|
+
$$;
|
|
34
|
+
|
|
35
|
+
-- Indexes, including those behind the primary keys and unique constraints (renaming such an
|
|
36
|
+
-- index renames its constraint too).
|
|
37
|
+
-- capybara:allow-destructive index rename; names follow the table rename (not released)
|
|
38
|
+
ALTER INDEX IF EXISTS environments_pkey RENAME TO devices_pkey;
|
|
39
|
+
-- capybara:allow-destructive index rename; names follow the table rename (not released)
|
|
40
|
+
ALTER INDEX IF EXISTS environments_default_uq RENAME TO devices_default_uq;
|
|
41
|
+
-- capybara:allow-destructive index rename; names follow the table rename (not released)
|
|
42
|
+
ALTER INDEX IF EXISTS environments_name_uq RENAME TO devices_name_uq;
|
|
43
|
+
-- capybara:allow-destructive index rename; names follow the table rename (not released)
|
|
44
|
+
ALTER INDEX IF EXISTS environment_instances_pkey RENAME TO device_instances_pkey;
|
|
45
|
+
-- capybara:allow-destructive index rename; names follow the table rename (not released)
|
|
46
|
+
ALTER INDEX IF EXISTS environment_instances_running_idx RENAME TO device_instances_running_idx;
|
|
47
|
+
-- capybara:allow-destructive index rename; names follow the table rename (not released)
|
|
48
|
+
ALTER INDEX IF EXISTS environment_instances_live_idx RENAME TO device_instances_live_idx;
|
|
49
|
+
-- capybara:allow-destructive index rename; names follow the table rename (not released)
|
|
50
|
+
ALTER INDEX IF EXISTS environment_instances_org_idx RENAME TO device_instances_org_idx;
|
|
51
|
+
-- capybara:allow-destructive index rename; names follow the table rename (not released)
|
|
52
|
+
ALTER INDEX IF EXISTS environment_defaults_pkey RENAME TO device_defaults_pkey;
|
|
53
|
+
-- capybara:allow-destructive index rename; names follow the column rename (not released)
|
|
54
|
+
ALTER INDEX IF EXISTS background_tasks_environment_running_idx RENAME TO background_tasks_device_running_idx;
|
|
55
|
+
-- capybara:allow-destructive index rename; names follow the table rename (not released)
|
|
56
|
+
ALTER INDEX IF EXISTS environment_machines_pkey RENAME TO device_machines_pkey;
|
|
57
|
+
-- capybara:allow-destructive index rename; names follow the table rename (not released)
|
|
58
|
+
ALTER INDEX IF EXISTS environment_machines_credential_hash_key RENAME TO device_machines_credential_hash_key;
|
|
59
|
+
-- capybara:allow-destructive index rename; names follow the table rename (not released)
|
|
60
|
+
ALTER INDEX IF EXISTS environment_machines_active_uq RENAME TO device_machines_active_uq;
|
|
61
|
+
-- capybara:allow-destructive index rename; names follow the table rename (not released)
|
|
62
|
+
ALTER INDEX IF EXISTS environment_machines_org_idx RENAME TO device_machines_org_idx;
|
|
63
|
+
|
|
64
|
+
-- NOT NULL constraints are unnamed on PostgreSQL 17 (the target), so nothing to rename there.
|
|
65
|
+
-- The other CHECK and foreign key constraints: RENAME CONSTRAINT has no IF EXISTS, so each is
|
|
66
|
+
-- checked against pg_constraint first. The source CHECK is not renamed here: it is replaced
|
|
67
|
+
-- below with the new value list.
|
|
68
|
+
-- capybara:allow-destructive constraint rename; names follow the table and column renames (not released)
|
|
69
|
+
DO $$
|
|
70
|
+
DECLARE
|
|
71
|
+
r record;
|
|
72
|
+
BEGIN
|
|
73
|
+
FOR r IN
|
|
74
|
+
SELECT * FROM (VALUES
|
|
75
|
+
('devices', 'environments_org_id_fkey', 'devices_org_id_fkey'),
|
|
76
|
+
('devices', 'environments_owner_account_id_fkey', 'devices_owner_account_id_fkey'),
|
|
77
|
+
('devices', 'environments_owner_kind_check', 'devices_owner_kind_check'),
|
|
78
|
+
('device_instances', 'environment_instances_fs_status_check', 'device_instances_fs_status_check'),
|
|
79
|
+
('device_instances', 'environment_instances_status_check', 'device_instances_status_check'),
|
|
80
|
+
('device_instances', 'environment_instances_environment_id_fkey', 'device_instances_device_id_fkey'),
|
|
81
|
+
('device_defaults', 'environment_defaults_environment_id_fkey', 'device_defaults_device_id_fkey'),
|
|
82
|
+
('conversations', 'conversations_environment_id_fkey', 'conversations_device_id_fkey'),
|
|
83
|
+
('device_machines', 'environment_machines_mode_check', 'device_machines_mode_check'),
|
|
84
|
+
('device_machines', 'environment_machines_org_id_fkey', 'device_machines_org_id_fkey'),
|
|
85
|
+
('device_machines', 'environment_machines_environment_id_fkey', 'device_machines_device_id_fkey')
|
|
86
|
+
) AS v(tbl, old_name, new_name)
|
|
87
|
+
LOOP
|
|
88
|
+
IF EXISTS (
|
|
89
|
+
SELECT 1 FROM pg_constraint c
|
|
90
|
+
JOIN pg_namespace s ON s.oid = c.connamespace
|
|
91
|
+
WHERE s.nspname = 'capybara' AND c.conname = r.old_name
|
|
92
|
+
) THEN
|
|
93
|
+
EXECUTE format('ALTER TABLE capybara.%I RENAME CONSTRAINT %I TO %I',
|
|
94
|
+
r.tbl, r.old_name, r.new_name);
|
|
95
|
+
END IF;
|
|
96
|
+
END LOOP;
|
|
97
|
+
END
|
|
98
|
+
$$;
|
|
99
|
+
|
|
100
|
+
-- A connected machine's source 'device' becomes 'local': the old CHECK goes, the rows change, and
|
|
101
|
+
-- the CHECK comes back under the new name with the new list.
|
|
102
|
+
ALTER TABLE devices DROP CONSTRAINT IF EXISTS environments_source_check;
|
|
103
|
+
ALTER TABLE devices DROP CONSTRAINT IF EXISTS devices_source_check;
|
|
104
|
+
UPDATE devices SET source = 'local' WHERE source = 'device';
|
|
105
|
+
ALTER TABLE devices
|
|
106
|
+
ADD CONSTRAINT devices_source_check CHECK (source IN ('cloud', 'local'));
|
|
107
|
+
|
|
108
|
+
-- The kernel-internal provider '@device' becomes '@local' wherever a provider name is stored.
|
|
109
|
+
UPDATE devices SET provider = '@local' WHERE provider = '@device';
|
|
110
|
+
UPDATE device_instances SET provider = '@local' WHERE provider = '@device';
|
|
111
|
+
UPDATE device_instances SET prev_provider = '@local' WHERE prev_provider = '@device';
|
|
112
|
+
|
|
113
|
+
-- The log event 'environment_paths' becomes 'device_paths' (its idempotency key prefix too); the
|
|
114
|
+
-- rows are updated first, so the old partial index (0094) finds them, then the index follows.
|
|
115
|
+
UPDATE conversation_events
|
|
116
|
+
SET type = 'device_paths',
|
|
117
|
+
idem_key = CASE
|
|
118
|
+
WHEN idem_key LIKE 'environment_paths:%' THEN 'device_paths:' || substr(idem_key, 19)
|
|
119
|
+
ELSE idem_key
|
|
120
|
+
END
|
|
121
|
+
WHERE type = 'environment_paths';
|
|
122
|
+
DROP INDEX IF EXISTS conversation_events_environment_paths_idx;
|
|
123
|
+
CREATE INDEX IF NOT EXISTS conversation_events_device_paths_idx
|
|
124
|
+
ON conversation_events (conversation_id, seq)
|
|
125
|
+
WHERE type = 'device_paths';
|
|
126
|
+
|
|
127
|
+
-- Eval case snapshots carry the events of their run: the same event type change, order kept.
|
|
128
|
+
-- snapshot_bytes is not recomputed: only type names change (a few bytes shorter), harmless.
|
|
129
|
+
UPDATE eval_cases
|
|
130
|
+
SET snapshot = jsonb_set(snapshot, '{events}', (
|
|
131
|
+
SELECT jsonb_agg(
|
|
132
|
+
CASE WHEN e->>'type' = 'environment_paths' THEN jsonb_set(e, '{type}', '"device_paths"')
|
|
133
|
+
ELSE e END
|
|
134
|
+
ORDER BY ord)
|
|
135
|
+
FROM jsonb_array_elements(snapshot->'events') WITH ORDINALITY AS t(e, ord)))
|
|
136
|
+
WHERE snapshot @? '$.events[*] ? (@.type == "environment_paths")';
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
-- Setup guides v2 (spec 2026-11-09-setup-guides-v2-design.md §11, §15).
|
|
2
|
+
-- A connector made from a connector template records the setup guide it was set up with:
|
|
3
|
+
-- { guideId, version, hash, mode } (mode null: the place has no modes), recorded when the
|
|
4
|
+
-- connector is created from the template and when an org admin confirms the third-party app was
|
|
5
|
+
-- updated. NULL = unknown (connectors before this column, custom ones): no drift notice for those.
|
|
6
|
+
ALTER TABLE connectors ADD COLUMN IF NOT EXISTS guide_ack jsonb;
|
|
7
|
+
-- The v1 acks of channel connections hold v1 template hashes that no v2 hash can equal; keeping
|
|
8
|
+
-- them would show every existing connection a false update notice. Cleared ("no ack, no notice"):
|
|
9
|
+
-- those connections start tracking again at their next mode switch or ack.
|
|
10
|
+
UPDATE channel_connections SET guide_ack = NULL WHERE guide_ack IS NOT NULL;
|
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
-- Client extensions (spec 2026-11-09-client-extensions-design.md §9.1, §10.4).
|
|
2
|
+
-- extension_client_builds: the client files of an extension package, keyed by the package sha256
|
|
3
|
+
-- (the build id). The files live in object storage under `deployment/<object_prefix>`; the
|
|
4
|
+
-- integrity values delivered to browsers come from this row, never from the object store.
|
|
5
|
+
CREATE TABLE IF NOT EXISTS extension_client_builds (
|
|
6
|
+
package_sha256 text PRIMARY KEY REFERENCES extension_packages(sha256) ON DELETE CASCADE,
|
|
7
|
+
plugin text NOT NULL,
|
|
8
|
+
entry text,
|
|
9
|
+
styles text[] NOT NULL,
|
|
10
|
+
assets text[] NOT NULL,
|
|
11
|
+
integrity jsonb NOT NULL,
|
|
12
|
+
sizes jsonb NOT NULL,
|
|
13
|
+
api_version int NOT NULL,
|
|
14
|
+
object_prefix text NOT NULL,
|
|
15
|
+
created_at timestamptz NOT NULL DEFAULT now()
|
|
16
|
+
);
|
|
17
|
+
|
|
18
|
+
-- extension_client_reports: crash and load reports of client code, one row per
|
|
19
|
+
-- (plugin, build, org, contribution, kind); org_id is null for admin pages. Upserted, pruned after
|
|
20
|
+
-- 30 days.
|
|
21
|
+
CREATE TABLE IF NOT EXISTS extension_client_reports (
|
|
22
|
+
plugin text NOT NULL,
|
|
23
|
+
build text NOT NULL,
|
|
24
|
+
org_id text NULL,
|
|
25
|
+
contribution text NULL,
|
|
26
|
+
kind text NOT NULL CHECK (kind IN ('load', 'render', 'event', 'api', 'budget')),
|
|
27
|
+
count int NOT NULL DEFAULT 1,
|
|
28
|
+
first_at timestamptz NOT NULL DEFAULT now(),
|
|
29
|
+
last_at timestamptz NOT NULL DEFAULT now(),
|
|
30
|
+
last_message text NOT NULL
|
|
31
|
+
);
|
|
32
|
+
|
|
33
|
+
CREATE UNIQUE INDEX IF NOT EXISTS extension_client_reports_key_uq
|
|
34
|
+
ON extension_client_reports (
|
|
35
|
+
plugin, build, (coalesce(org_id, '')), (coalesce(contribution, '')), kind
|
|
36
|
+
);
|
|
37
|
+
|
|
38
|
+
CREATE INDEX IF NOT EXISTS extension_client_reports_last_at
|
|
39
|
+
ON extension_client_reports (last_at);
|
|
40
|
+
|
|
41
|
+
-- extension_replica_status.serving_sha256: the package a replica actually serves for the plugin
|
|
42
|
+
-- (the row's own sha256 when loaded; the older package still running when the row's version is
|
|
43
|
+
-- pending approval or failed; null when none runs). Client code follows the server code that runs
|
|
44
|
+
-- (spec §9.3): a build is delivered while a live replica serves its package.
|
|
45
|
+
ALTER TABLE extension_replica_status ADD COLUMN IF NOT EXISTS serving_sha256 text NULL;
|
|
46
|
+
|
|
47
|
+
-- catalog_item_versions.appearance_order: the keys of plugin.json's
|
|
48
|
+
-- suggestedAppearance.replacements in the author's order (a jsonb object does not keep key order),
|
|
49
|
+
-- so the suggestion is listed and applied in that order (spec §6.5); null without replacements.
|
|
50
|
+
ALTER TABLE catalog_item_versions ADD COLUMN IF NOT EXISTS appearance_order text[] NULL;
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
-- A message from the run's starter closes a pending question as skipped (reply-while-question spec
|
|
2
|
+
-- §6.2). Widening the inline CHECK of 0010 (PG's default name questions_status_check): drop and add
|
|
3
|
+
-- in the file's one transaction, idempotent.
|
|
4
|
+
ALTER TABLE questions DROP CONSTRAINT IF EXISTS questions_status_check;
|
|
5
|
+
ALTER TABLE questions ADD CONSTRAINT questions_status_check
|
|
6
|
+
CHECK (status IN ('pending', 'answered', 'skipped', 'expired', 'cancelled'));
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
-- Platform-level audit events (org_id null), newest first: the admin overview's recent platform
|
|
2
|
+
-- operations and /admin/audit page by keyset on id (admin overview spec §4.4, §5.4). A plain
|
|
3
|
+
-- CREATE INDEX: the migrator runs each file in a transaction.
|
|
4
|
+
CREATE INDEX IF NOT EXISTS audit_events_platform_idx
|
|
5
|
+
ON audit_events (id DESC) WHERE org_id IS NULL;
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
-- The admin overview's seven-day usage aggregate (admin overview spec §4.3, §5.4) reads runs and
|
|
2
|
+
-- embedding usage of every org by time: runs by created_at (only (conversation_id, created_at)
|
|
3
|
+
-- existed) and model_usage by occurred_at (only (org_id, occurred_at) and a partial index on the
|
|
4
|
+
-- unreported rows existed). Chat usage events already have conversation_events_usage_idx (0040).
|
|
5
|
+
-- A plain CREATE INDEX: the migrator runs each file in a transaction, so not CONCURRENTLY; it
|
|
6
|
+
-- locks writes to the table while it builds (pre-0.1.0: no large deployments).
|
|
7
|
+
CREATE INDEX IF NOT EXISTS runs_created_idx ON runs (created_at);
|
|
8
|
+
CREATE INDEX IF NOT EXISTS model_usage_time_idx ON model_usage (occurred_at);
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
-- Skill authoring via the Platform tool: an agent's owner shares an agent skill with the org. The
|
|
2
|
+
-- shared skill is an org skill (scope 'org') that remembers the agent it came from
|
|
3
|
+
-- (origin_agent_id, cleared when that agent is deleted; the skill stays) and the account that
|
|
4
|
+
-- maintains it (maintainer_account_id).
|
|
5
|
+
ALTER TABLE skills
|
|
6
|
+
ADD COLUMN IF NOT EXISTS origin_agent_id text REFERENCES agents(id) ON DELETE SET NULL;
|
|
7
|
+
ALTER TABLE skills
|
|
8
|
+
ADD COLUMN IF NOT EXISTS maintainer_account_id text REFERENCES accounts(id);
|
|
9
|
+
-- The skills an agent shared, for its skill list and for sharing again.
|
|
10
|
+
CREATE INDEX IF NOT EXISTS skills_origin_agent_idx
|
|
11
|
+
ON skills (origin_agent_id)
|
|
12
|
+
WHERE origin_agent_id IS NOT NULL AND deleted_at IS NULL;
|
|
13
|
+
|
|
14
|
+
-- A request is either a share of an agent skill with the org or a new version of a shared skill.
|
|
15
|
+
ALTER TABLE skill_change_requests
|
|
16
|
+
ADD COLUMN IF NOT EXISTS kind text NOT NULL DEFAULT 'version'
|
|
17
|
+
CHECK (kind IN ('share', 'version'));
|
|
18
|
+
|
|
19
|
+
-- The R4 owner-approved change flow ends. The draft objects of the cancelled rows are left to the
|
|
20
|
+
-- org data cleanup.
|
|
21
|
+
-- capybara:allow-destructive R4 owner-approved changes are removed; pending ones cannot be decided any more
|
|
22
|
+
UPDATE skill_change_requests SET status = 'cancelled', decided_at = now() WHERE status = 'pending';
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
-- A share request of an agent skill comes from the agent page or the Platform operation and has
|
|
2
|
+
-- no trial, so it records no conversation; a version proposal registered on the web has none
|
|
3
|
+
-- either. requested_in_conversation becomes optional.
|
|
4
|
+
ALTER TABLE skill_change_requests ALTER COLUMN requested_in_conversation DROP NOT NULL;
|
|
@@ -1,56 +0,0 @@
|
|
|
1
|
-
import type { KernelSchemaDb } from "../db/kernel-schema.js";
|
|
2
|
-
import type { ExtensionRegistry } from "../extensions/registry.js";
|
|
3
|
-
/**
|
|
4
|
-
* Which versions an org may upgrade an installed plugin to (package ecosystem spec §10, Decision
|
|
5
|
-
* 10, Ruling 8):
|
|
6
|
-
* - a plugin with an extension follows the deployment: the only target is the catalog version
|
|
7
|
-
* whose extension package (sha256) is the one installed on the deployment, the newest import on
|
|
8
|
-
* ties (`1.0.0` and `1.0.0+sha256.x` can share an extension version with different bytes); an
|
|
9
|
-
* extension loaded from the startup config (config, no package) is matched by its
|
|
10
|
-
* version;
|
|
11
|
-
* - a purely declarative plugin may move to any other imported version (an older one is a
|
|
12
|
-
* rollback).
|
|
13
|
-
*/
|
|
14
|
-
/** The extension the deployment runs for a plugin name. */
|
|
15
|
-
export interface DeployedExtension {
|
|
16
|
-
/** The installed package's sha256 (null for a config extension). */
|
|
17
|
-
sha256: string | null;
|
|
18
|
-
version: string;
|
|
19
|
-
}
|
|
20
|
-
/** A catalog version row as the target rules read it. */
|
|
21
|
-
export interface TargetVersion {
|
|
22
|
-
version: string;
|
|
23
|
-
manifest: unknown;
|
|
24
|
-
extension_sha256: string | null;
|
|
25
|
-
imported_at: Date;
|
|
26
|
-
}
|
|
27
|
-
/**
|
|
28
|
-
* The deployment's extension for plugin `name`: its install record (`extension_installs`, the
|
|
29
|
-
* deployment's desired package; disabled on the deployment counts as none), else the extension
|
|
30
|
-
* this replica loaded from the startup config; undefined when the deployment runs none (then no
|
|
31
|
-
* upgrade target and no "upgrade pending").
|
|
32
|
-
*/
|
|
33
|
-
export declare function deployedExtension(db: KernelSchemaDb, host: Pick<ExtensionRegistry, "manifests">, name: string): Promise<DeployedExtension | undefined>;
|
|
34
|
-
/** Whether catalog version `v` carries the deployment's extension `d`. */
|
|
35
|
-
export declare const runsDeployed: (v: TargetVersion, d: DeployedExtension) => boolean;
|
|
36
|
-
/**
|
|
37
|
-
* The catalog version an org install of an extension-bearing plugin may move to: the one carrying
|
|
38
|
-
* the deployment's extension, the newest import on ties; undefined when none does.
|
|
39
|
-
*/
|
|
40
|
-
export declare function deploymentTarget(versions: readonly TargetVersion[], d: DeployedExtension | undefined): TargetVersion | undefined;
|
|
41
|
-
/** What an install view says about upgrades (Decision 10). */
|
|
42
|
-
export interface UpgradeInfo {
|
|
43
|
-
/** The version an upgrade can move to now (the highest allowed target), null when none. */
|
|
44
|
-
upgradeAvailable: string | null;
|
|
45
|
-
/** An extension-bearing plugin whose org version is not the one the deployment runs. */
|
|
46
|
-
deploymentPending: boolean;
|
|
47
|
-
}
|
|
48
|
-
/**
|
|
49
|
-
* The upgrade info of org installs (`itemId`, `name`, `version`), keyed by `itemId@version`; reads
|
|
50
|
-
* the items' catalog versions and the deployment's extensions in a few queries.
|
|
51
|
-
*/
|
|
52
|
-
export declare function upgradeInfo(db: KernelSchemaDb, host: Pick<ExtensionRegistry, "manifests">, installs: readonly {
|
|
53
|
-
itemId: string;
|
|
54
|
-
name: string;
|
|
55
|
-
version: string;
|
|
56
|
-
}[]): Promise<Map<string, UpgradeInfo>>;
|
|
@@ -1,90 +0,0 @@
|
|
|
1
|
-
import { compareVersions } from "./versions.js";
|
|
2
|
-
/**
|
|
3
|
-
* The deployment's extension for plugin `name`: its install record (`extension_installs`, the
|
|
4
|
-
* deployment's desired package; disabled on the deployment counts as none), else the extension
|
|
5
|
-
* this replica loaded from the startup config; undefined when the deployment runs none (then no
|
|
6
|
-
* upgrade target and no "upgrade pending").
|
|
7
|
-
*/
|
|
8
|
-
export async function deployedExtension(db, host, name) {
|
|
9
|
-
const row = await db
|
|
10
|
-
.selectFrom("extension_installs")
|
|
11
|
-
.select(["sha256", "version", "desired_state"])
|
|
12
|
-
.where("name", "=", name)
|
|
13
|
-
.executeTakeFirst();
|
|
14
|
-
if (row) {
|
|
15
|
-
return row.desired_state === "enabled"
|
|
16
|
-
? { sha256: row.sha256, version: row.version }
|
|
17
|
-
: undefined;
|
|
18
|
-
}
|
|
19
|
-
const loaded = host.manifests().find((m) => m.name === name);
|
|
20
|
-
return loaded ? { sha256: null, version: loaded.version } : undefined;
|
|
21
|
-
}
|
|
22
|
-
const extensionVersionOf = (v) => v.manifest.extension?.manifest.version;
|
|
23
|
-
/** Whether catalog version `v` carries the deployment's extension `d`. */
|
|
24
|
-
export const runsDeployed = (v, d) => d.sha256 !== null
|
|
25
|
-
? v.extension_sha256 === d.sha256
|
|
26
|
-
: v.manifest.extension !== undefined && extensionVersionOf(v) === d.version;
|
|
27
|
-
/**
|
|
28
|
-
* The catalog version an org install of an extension-bearing plugin may move to: the one carrying
|
|
29
|
-
* the deployment's extension, the newest import on ties; undefined when none does.
|
|
30
|
-
*/
|
|
31
|
-
export function deploymentTarget(versions, d) {
|
|
32
|
-
if (d === undefined)
|
|
33
|
-
return undefined;
|
|
34
|
-
let best;
|
|
35
|
-
for (const v of versions) {
|
|
36
|
-
if (!runsDeployed(v, d))
|
|
37
|
-
continue;
|
|
38
|
-
if (best === undefined ||
|
|
39
|
-
v.imported_at.getTime() > best.imported_at.getTime() ||
|
|
40
|
-
(v.imported_at.getTime() === best.imported_at.getTime() && compareVersions(v, best) > 0)) {
|
|
41
|
-
best = v;
|
|
42
|
-
}
|
|
43
|
-
}
|
|
44
|
-
return best;
|
|
45
|
-
}
|
|
46
|
-
/**
|
|
47
|
-
* The upgrade info of org installs (`itemId`, `name`, `version`), keyed by `itemId@version`; reads
|
|
48
|
-
* the items' catalog versions and the deployment's extensions in a few queries.
|
|
49
|
-
*/
|
|
50
|
-
export async function upgradeInfo(db, host, installs) {
|
|
51
|
-
const out = new Map();
|
|
52
|
-
if (installs.length === 0)
|
|
53
|
-
return out;
|
|
54
|
-
const rows = await db
|
|
55
|
-
.selectFrom("catalog_item_versions")
|
|
56
|
-
.select(["item_id", "version", "manifest", "extension_sha256", "imported_at"])
|
|
57
|
-
.where("item_id", "in", [...new Set(installs.map((i) => i.itemId))])
|
|
58
|
-
.execute();
|
|
59
|
-
const deployed = new Map();
|
|
60
|
-
for (const i of installs) {
|
|
61
|
-
const versions = rows.filter((r) => r.item_id === i.itemId);
|
|
62
|
-
const current = versions.find((v) => v.version === i.version);
|
|
63
|
-
if (current && current.manifest.extension !== undefined) {
|
|
64
|
-
if (!deployed.has(i.name))
|
|
65
|
-
deployed.set(i.name, await deployedExtension(db, host, i.name));
|
|
66
|
-
const d = deployed.get(i.name);
|
|
67
|
-
const target = deploymentTarget(versions, d);
|
|
68
|
-
out.set(`${i.itemId}@${i.version}`, {
|
|
69
|
-
upgradeAvailable: target && target.version !== i.version ? target.version : null,
|
|
70
|
-
deploymentPending: d !== undefined && !runsDeployed(current, d),
|
|
71
|
-
});
|
|
72
|
-
continue;
|
|
73
|
-
}
|
|
74
|
-
let newest;
|
|
75
|
-
for (const v of versions) {
|
|
76
|
-
if (newest === undefined || compareVersions(v, newest) > 0)
|
|
77
|
-
newest = v;
|
|
78
|
-
}
|
|
79
|
-
const newer = newest !== undefined &&
|
|
80
|
-
newest.version !== i.version &&
|
|
81
|
-
(current === undefined
|
|
82
|
-
? compareVersions(newest.version, i.version) > 0
|
|
83
|
-
: compareVersions(newest, current) > 0);
|
|
84
|
-
out.set(`${i.itemId}@${i.version}`, {
|
|
85
|
-
upgradeAvailable: newer ? newest.version : null,
|
|
86
|
-
deploymentPending: false,
|
|
87
|
-
});
|
|
88
|
-
}
|
|
89
|
-
return out;
|
|
90
|
-
}
|
|
@@ -1,24 +0,0 @@
|
|
|
1
|
-
import { SandboxService } from "../sandbox/sandbox.service.js";
|
|
2
|
-
import { ConversationAccess } from "./access.js";
|
|
3
|
-
import { ConversationsService } from "./conversations.service.js";
|
|
4
|
-
export interface SandboxStatusView {
|
|
5
|
-
status: "running" | "suspended";
|
|
6
|
-
lastUsedAt: string;
|
|
7
|
-
}
|
|
8
|
-
/**
|
|
9
|
-
* 对话沙箱的状态(网页上下文标签,M5 T11):会话不可见 → `conversation.not_found`;
|
|
10
|
-
* 没有可用的沙箱(未创建、已销毁、正在创建)→ `sandbox.not_found`(界面显示「未创建」)。
|
|
11
|
-
*/
|
|
12
|
-
export declare class ConversationSandboxStatus {
|
|
13
|
-
/** 会话可见性(与会话 SSE 流同一判定)。 */
|
|
14
|
-
private readonly access;
|
|
15
|
-
/** The conversation whose sandbox it works in: a sub-agent's parent, else itself. */
|
|
16
|
-
private readonly conversations;
|
|
17
|
-
private readonly sandbox;
|
|
18
|
-
constructor(
|
|
19
|
-
/** 会话可见性(与会话 SSE 流同一判定)。 */
|
|
20
|
-
access: Pick<ConversationAccess, "isAccessible">,
|
|
21
|
-
/** The conversation whose sandbox it works in: a sub-agent's parent, else itself. */
|
|
22
|
-
conversations: Pick<ConversationsService, "sandboxConversationOf">, sandbox: Pick<SandboxService, "status">);
|
|
23
|
-
get(orgId: string, conversationId: string, viewerAccountId: string): Promise<SandboxStatusView>;
|
|
24
|
-
}
|