@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
|
@@ -9,6 +9,9 @@ var __param = (this && this.__param) || function (paramIndex, decorator) {
|
|
|
9
9
|
};
|
|
10
10
|
import { getQueueToken, OnWorkerEvent, WorkerHost } from "@nestjs/bullmq";
|
|
11
11
|
import { Inject, Injectable, Module } from "@nestjs/common";
|
|
12
|
+
import { BG_WAKE_JOB } from "../background/wake-rules.js";
|
|
13
|
+
import { OWNED_PLUGIN_CLEANUP_JOB } from "../catalog/job-ids.js";
|
|
14
|
+
import { OwnedPluginCleanup, OwnedPluginCleanupModule } from "../catalog/owned-plugin-cleanup.js";
|
|
12
15
|
import { configuredProcessor } from "../infra/queue/configured-processor.js";
|
|
13
16
|
import { QueueModule } from "../infra/queue/queue.module.js";
|
|
14
17
|
import { removeRetiredSchedulers } from "../infra/queue/retired-schedulers.js";
|
|
@@ -18,7 +21,7 @@ import { ScheduledRuns } from "../infra/schedule/scheduled-runs.js";
|
|
|
18
21
|
import { KERNEL_LOGGER } from "../infra/tokens.js";
|
|
19
22
|
import { DIRECTORY_SYNC_JOB, DirectorySync } from "../orgs/directory-sync.js";
|
|
20
23
|
import { OrgsModule } from "../orgs/orgs.module.js";
|
|
21
|
-
import { runSandboxDestroyFor, SANDBOX_DESTROY_FOR_JOB } from "../sandbox/jobs.js";
|
|
24
|
+
import { runSandboxDestroyFor, runSandboxResetFiles, SANDBOX_DESTROY_FOR_JOB, SANDBOX_RESET_FILES_JOB, } from "../sandbox/jobs.js";
|
|
22
25
|
import { SandboxModule } from "../sandbox/sandbox.module.js";
|
|
23
26
|
import { SandboxService } from "../sandbox/sandbox.service.js";
|
|
24
27
|
import { ToolDrift } from "../tools/drift.js";
|
|
@@ -26,6 +29,7 @@ import { DRIFT_CONNECTOR_JOB } from "../tools/job-ids.js";
|
|
|
26
29
|
import { ToolsModule } from "../tools/tools.module.js";
|
|
27
30
|
import { MAINTENANCE_QUEUE_NAME } from "./maintenance-queue.js";
|
|
28
31
|
import { RETIRED_SCHEDULER_IDS } from "./retired-schedulers.js";
|
|
32
|
+
import { RunQueue } from "./run-queue.js";
|
|
29
33
|
import { RuntimeModule } from "./runtime.module.js";
|
|
30
34
|
import { WAIT_TIMEOUT_JOB, Waits } from "./waits.js";
|
|
31
35
|
export { MAINTENANCE_QUEUE_NAME } from "./maintenance-queue.js";
|
|
@@ -33,9 +37,10 @@ export { MAINTENANCE_QUEUE_NAME } from "./maintenance-queue.js";
|
|
|
33
37
|
export const MAINTENANCE_CONCURRENCY = 5;
|
|
34
38
|
/**
|
|
35
39
|
* The one consumer of `cap-kernel-maintenance` (decision R11 of the Nest kernel spec): dispatches
|
|
36
|
-
* each one-off job by name to its domain (`wait-timeout` → {@link Waits}, `sandbox-destroy-for`
|
|
37
|
-
* {@link SandboxService}, `drift-connector` → {@link ToolDrift}, `directory-sync` →
|
|
38
|
-
* {@link DirectorySync}
|
|
40
|
+
* each one-off job by name to its domain (`wait-timeout` → {@link Waits}, `sandbox-destroy-for` and
|
|
41
|
+
* `sandbox-reset-files` → {@link SandboxService}, `drift-connector` → {@link ToolDrift}, `directory-sync` →
|
|
42
|
+
* {@link DirectorySync}, `bg-wake` → {@link RunQueue.ensureRun}, `owned-plugin-cleanup` →
|
|
43
|
+
* {@link OwnedPluginCleanup}). The name of a periodic job (a `@LockedCron` / `@LockedInterval` job,
|
|
39
44
|
* such as `sandbox-suspend-idle`) runs that job's body once ({@link ScheduledRuns.runNow}), as the
|
|
40
45
|
* maintenance handlers did when those jobs were schedulers on this queue: an operator's or a
|
|
41
46
|
* test's one-off run, not a second schedule (decision R23 of the Nest kernel spec). Any other
|
|
@@ -46,15 +51,19 @@ let MaintenanceProcessor = class MaintenanceProcessor extends WorkerHost {
|
|
|
46
51
|
sandbox;
|
|
47
52
|
drift;
|
|
48
53
|
directory;
|
|
54
|
+
runs;
|
|
55
|
+
ownedCleanup;
|
|
49
56
|
scheduled;
|
|
50
57
|
log;
|
|
51
58
|
queue;
|
|
52
|
-
constructor(waits, sandbox, drift, directory, scheduled, log, queue) {
|
|
59
|
+
constructor(waits, sandbox, drift, directory, runs, ownedCleanup, scheduled, log, queue) {
|
|
53
60
|
super();
|
|
54
61
|
this.waits = waits;
|
|
55
62
|
this.sandbox = sandbox;
|
|
56
63
|
this.drift = drift;
|
|
57
64
|
this.directory = directory;
|
|
65
|
+
this.runs = runs;
|
|
66
|
+
this.ownedCleanup = ownedCleanup;
|
|
58
67
|
this.scheduled = scheduled;
|
|
59
68
|
this.log = log;
|
|
60
69
|
this.queue = queue;
|
|
@@ -82,6 +91,9 @@ let MaintenanceProcessor = class MaintenanceProcessor extends WorkerHost {
|
|
|
82
91
|
case SANDBOX_DESTROY_FOR_JOB:
|
|
83
92
|
await runSandboxDestroyFor(this.sandbox, this.log, job);
|
|
84
93
|
return;
|
|
94
|
+
case SANDBOX_RESET_FILES_JOB:
|
|
95
|
+
await runSandboxResetFiles(this.sandbox, job);
|
|
96
|
+
return;
|
|
85
97
|
case DRIFT_CONNECTOR_JOB: {
|
|
86
98
|
const { orgId, connectorId, trigger } = job.data;
|
|
87
99
|
await this.drift.check(orgId, connectorId, trigger);
|
|
@@ -90,6 +102,17 @@ let MaintenanceProcessor = class MaintenanceProcessor extends WorkerHost {
|
|
|
90
102
|
case DIRECTORY_SYNC_JOB:
|
|
91
103
|
await this.directory.runSyncJob(job.data);
|
|
92
104
|
return;
|
|
105
|
+
// the end of a conversation's wake window (background Bash spec §3)
|
|
106
|
+
case BG_WAKE_JOB: {
|
|
107
|
+
// fired before the window ended (clock skew): it reschedules under its next retry id
|
|
108
|
+
const { conversationId, retry } = job.data;
|
|
109
|
+
await this.runs.ensureRun(conversationId, { wakeRetry: (retry ?? 0) + 1 });
|
|
110
|
+
return;
|
|
111
|
+
}
|
|
112
|
+
// a removed org-owned plugin's extension (plugin scope phase 3, P3-20)
|
|
113
|
+
case OWNED_PLUGIN_CLEANUP_JOB:
|
|
114
|
+
await this.ownedCleanup.run(job.data.itemId);
|
|
115
|
+
return;
|
|
93
116
|
default:
|
|
94
117
|
if (await this.scheduled.runNow(job.name))
|
|
95
118
|
return;
|
|
@@ -115,9 +138,11 @@ MaintenanceProcessor = __decorate([
|
|
|
115
138
|
__param(1, Inject(SandboxService)),
|
|
116
139
|
__param(2, Inject(ToolDrift)),
|
|
117
140
|
__param(3, Inject(DirectorySync)),
|
|
118
|
-
__param(4, Inject(
|
|
119
|
-
__param(5, Inject(
|
|
120
|
-
__param(6, Inject(
|
|
141
|
+
__param(4, Inject(RunQueue)),
|
|
142
|
+
__param(5, Inject(OwnedPluginCleanup)),
|
|
143
|
+
__param(6, Inject(ScheduledRuns)),
|
|
144
|
+
__param(7, Inject(KERNEL_LOGGER)),
|
|
145
|
+
__param(8, Inject(getQueueToken(MAINTENANCE_QUEUE_NAME)))
|
|
121
146
|
], MaintenanceProcessor);
|
|
122
147
|
export { MaintenanceProcessor };
|
|
123
148
|
/**
|
|
@@ -137,6 +162,8 @@ MaintenanceModule = __decorate([
|
|
|
137
162
|
SandboxModule,
|
|
138
163
|
ToolsModule,
|
|
139
164
|
OrgsModule,
|
|
165
|
+
// the removed org plugins' cleanup and its daily sweep (worker-only through this module)
|
|
166
|
+
OwnedPluginCleanupModule,
|
|
140
167
|
QueueModule.registerQueue(MAINTENANCE_QUEUE_NAME),
|
|
141
168
|
],
|
|
142
169
|
providers: [
|
|
@@ -1,6 +1,7 @@
|
|
|
1
|
-
import { type ContentBlock, type Logger, type
|
|
1
|
+
import { type ContentBlock, type Logger, type ModelRequest, type ModelStreamEvent, type ModelUsage, type StopReason } from "@capybara-hq/plugin-sdk";
|
|
2
2
|
import type { AgentDefinition } from "../agents/definition.js";
|
|
3
|
-
import type { EventLog } from "../conversations/event-log.js";
|
|
3
|
+
import type { AppendEvent, EventLog } from "../conversations/event-log.js";
|
|
4
|
+
import { type ConversationEvent } from "../conversations/events.js";
|
|
4
5
|
import type { KernelSchemaDb } from "../db/kernel-schema.js";
|
|
5
6
|
import type { KernelConfigService } from "../infra/config/kernel-config.service.js";
|
|
6
7
|
import type { ToolRegistry, UnavailableTool } from "../tools/registry.js";
|
|
@@ -8,22 +9,38 @@ import { type BuildModelRequestInput, type MediaBytes, type MediaInfo, type Mode
|
|
|
8
9
|
import { type ConversationKindForHooks, type HookRunner } from "./hook-calls.js";
|
|
9
10
|
import type { SubagentParent } from "./loop.js";
|
|
10
11
|
import { MediaCache } from "./media-cache.js";
|
|
11
|
-
import { type ProviderRegistry } from "./providers.js";
|
|
12
|
+
import { type BoundProvider, type ProviderRegistry } from "./providers.js";
|
|
12
13
|
import type { StepLog } from "./step-log.js";
|
|
13
14
|
import type { UsageReporter } from "./usage-report.js";
|
|
14
15
|
/** 单轮收尾的尾部提醒(模型可见,英文;spec 6 轮次额度收尾)。 */
|
|
15
16
|
export declare const WRAP_UP_REMINDER = "Step limit reached. Do not call tools. Summarize what you found and what remains for the user.";
|
|
16
|
-
/**
|
|
17
|
-
|
|
17
|
+
/**
|
|
18
|
+
* The tail reminder of a sub-agent's final call once its tree used its token budget (model-visible,
|
|
19
|
+
* English; sub-agents spec §8.3): the child hands back what it found instead of ending with nothing.
|
|
20
|
+
*/
|
|
21
|
+
export declare const BUDGET_WRAP_UP_REMINDER: string;
|
|
22
|
+
/** Why a run makes its final, tool-less call: its step limit, or its tree's token budget. */
|
|
23
|
+
export type WrapUpReason = "max_steps" | "budget";
|
|
24
|
+
export { TOOLS_UNSUPPORTED_REMINDER } from "./context/reminders.js";
|
|
18
25
|
/** 不可用工具提醒的前缀(模型可见,英文)。 */
|
|
19
26
|
export declare const TOOLS_UNAVAILABLE_PREFIX = "The following tools are unavailable in this run: ";
|
|
20
27
|
/** 本 run 中此前有工具不可用、现在全部恢复时的提醒(模型可见,英文)。 */
|
|
21
28
|
export declare const TOOLS_AVAILABLE_AGAIN = "All previously unavailable tools are available again.";
|
|
22
29
|
/** 不可用工具提醒:`The following tools are unavailable in this run: <ref> (<reason>), ...`。 */
|
|
23
30
|
export declare function toolsUnavailableReminder(unavailable: readonly UnavailableTool[]): string;
|
|
24
|
-
/**
|
|
31
|
+
/**
|
|
32
|
+
* `run_failed` message of a model request denied by a policy hook (user-facing, never model-visible);
|
|
33
|
+
* also the message of the `model.hook_denied` error a denied `ctx.models.embed` call rejects with.
|
|
34
|
+
*/
|
|
35
|
+
export declare const modelDeniedText: (plugin: string, reason: string) => string;
|
|
36
|
+
/**
|
|
37
|
+
* 流式增量的出口(推给前端等订阅方);`step_reset` 表示丢弃本步已推出的增量、重新开始。
|
|
38
|
+
* `stream_end` (the step's model stream completed) and `step_end` (the step's `assistant_message`
|
|
39
|
+
* is logged) carry no delta: the run worker's sink writes and then clears the step's live draft on
|
|
40
|
+
* them (spec 2026-11-07 §3.2) and publishes neither.
|
|
41
|
+
*/
|
|
25
42
|
export type StreamSink = (delta: {
|
|
26
|
-
kind: "text" | "thinking" | "step_reset";
|
|
43
|
+
kind: "text" | "thinking" | "step_reset" | "stream_end" | "step_end";
|
|
27
44
|
runId: string;
|
|
28
45
|
step: number;
|
|
29
46
|
text?: string;
|
|
@@ -94,9 +111,12 @@ export interface ModelStepInput {
|
|
|
94
111
|
conversationKind?: ConversationKindForHooks;
|
|
95
112
|
/** A sub-agent's run: where it was dispatched from (hook payloads carry it as `parent`). */
|
|
96
113
|
parent?: SubagentParent;
|
|
114
|
+
/** A sub-agent's run without a live parent (a child case's eval replay, `LoopContext`). */
|
|
115
|
+
subagent?: boolean;
|
|
97
116
|
/**
|
|
98
|
-
* A sub-agent's run (phase C): the parent run whose `subagent_tokens_used` counts
|
|
99
|
-
* event this step writes (step, wrap-up and compaction calls; spec §8.3
|
|
117
|
+
* A sub-agent's run (phase C): the parent run whose budget run's `subagent_tokens_used` counts
|
|
118
|
+
* every usage event this step writes (step, wrap-up and compaction calls; spec §8.3, agent map
|
|
119
|
+
* spec §6).
|
|
100
120
|
*/
|
|
101
121
|
parentRunId?: string;
|
|
102
122
|
/**
|
|
@@ -149,8 +169,31 @@ export declare function runModelStep(deps: ModelStepDeps, input: ModelStepInput)
|
|
|
149
169
|
* 单轮收尾:到达步数上限时调用一次。写入收尾 `reminder`(位于请求末尾);照常带工具(历史里有工具调用时
|
|
150
170
|
* 部分供应商要求请求声明工具,也保持缓存前缀稳定),但 `toolChoice: "none"`——模型只能回复文本。
|
|
151
171
|
* 其余与 `runModelStep` 相同(幂等、降级、中止)。
|
|
172
|
+
*
|
|
173
|
+
* `reason: "budget"`: a sub-agent whose tree used its token budget makes this one call to hand back
|
|
174
|
+
* what it found (sub-agents spec §8.3); it is not stopped by the budget again (one call over).
|
|
175
|
+
*/
|
|
176
|
+
export declare function runFinalWrapUp(deps: ModelStepDeps, input: ModelStepInput, reason?: WrapUpReason): Promise<ModelStepResult>;
|
|
177
|
+
/**
|
|
178
|
+
* Appends a model call's events (its reply or compaction outcome with its `usage`; also the usage
|
|
179
|
+
* of a `WebFetch` extraction call, `tools/builtins/web/extract.ts`). For a
|
|
180
|
+
* sub-agent's run (`input.parentRunId`) in one transaction that also adds the tokens of the usage
|
|
181
|
+
* events it newly wrote to the budget run's `subagent_tokens_used` (sub-agents spec §8.3): a usage
|
|
182
|
+
* event already in the log (an idempotent hit after a crash) adds nothing, so each call counts
|
|
183
|
+
* exactly once.
|
|
152
184
|
*/
|
|
153
|
-
export declare function
|
|
185
|
+
export declare function appendCounted(deps: {
|
|
186
|
+
eventLog: Pick<EventLog, "append" | "notify">;
|
|
187
|
+
stepLog: Pick<StepLog, "appendCounted">;
|
|
188
|
+
}, input: {
|
|
189
|
+
conversationId: string;
|
|
190
|
+
parentRunId?: string | undefined;
|
|
191
|
+
/** The run's budget window (agent map spec §6), when known; else the parent run's. */
|
|
192
|
+
budgetRunId?: string | undefined;
|
|
193
|
+
parent?: {
|
|
194
|
+
budgetRunId?: string | undefined;
|
|
195
|
+
} | undefined;
|
|
196
|
+
}, events: AppendEvent[]): Promise<ConversationEvent[]>;
|
|
154
197
|
/** {@link assembleModelRequest} 的输入。 */
|
|
155
198
|
export interface AssembleModelRequestInput extends Omit<BuildModelRequestInput, "tools"> {
|
|
156
199
|
/** 本步解析出的工具;模型不支持工具(`capabilities.tools` 为 false)时不带。 */
|
|
@@ -174,6 +217,6 @@ export declare function assembleModelRequest(input: AssembleModelRequestInput):
|
|
|
174
217
|
* 外部 `signal` 触发 → `StepAborted`。每次 `next()` 都与停止信号竞速,供应商不响应 signal 也不会卡住。
|
|
175
218
|
* 运行时与评测单步回放(`evals/step-replay.ts`)、评委共用。
|
|
176
219
|
*/
|
|
177
|
-
export declare function consumeModelStream(provider:
|
|
220
|
+
export declare function consumeModelStream(provider: BoundProvider, request: ModelRequest, idleMs: number, signal: AbortSignal, onDelta: (ev: Exclude<ModelStreamEvent, {
|
|
178
221
|
type: "message_complete";
|
|
179
222
|
}>) => void): Promise<StreamOutcome>;
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { createHash } from "node:crypto";
|
|
1
2
|
import { isModelError, isRetryableKind, ModelError, sanitizeParams, } from "@capybara-hq/plugin-sdk";
|
|
2
3
|
import { MEDIA_EXCLUDED_MAX_IDS } from "../conversations/events.js";
|
|
3
4
|
import { ApiError } from "../errors.js";
|
|
@@ -6,16 +7,23 @@ import { hasInvocation, skillLoadOffered } from "../skills/catalog.js";
|
|
|
6
7
|
import { buildModelRequest, latestSummary, mediaRefs, planMedia, } from "./context/build.js";
|
|
7
8
|
import { acceptSummary, buildCompactionRequest, compactionBackoff, compactionPlan, shouldCompact, } from "./context/compaction.js";
|
|
8
9
|
import { guardToolPairs } from "./context/pairing.js";
|
|
9
|
-
import { turnLimitReminder } from "./context/reminders.js";
|
|
10
|
+
import { TOOLS_UNSUPPORTED_REMINDER, turnLimitReminder } from "./context/reminders.js";
|
|
10
11
|
import { calibrate, estimateTokens } from "./context/tokens.js";
|
|
12
|
+
import { toolSetChange } from "./context/tool-changes.js";
|
|
11
13
|
import { fireObserve, hookDeniedAudit, hookDeniedEvent, hookRequestOf, hookScope, recordHookDenial, } from "./hook-calls.js";
|
|
12
14
|
import { MediaCache } from "./media-cache.js";
|
|
13
15
|
import { ProviderListError } from "./providers.js";
|
|
14
|
-
import { subagentBudgetUsedUp } from "./subagents/limits.js";
|
|
16
|
+
import { budgetRunOf, subagentBudgetUsedUp } from "./subagents/limits.js";
|
|
15
17
|
/** 单轮收尾的尾部提醒(模型可见,英文;spec 6 轮次额度收尾)。 */
|
|
16
18
|
export const WRAP_UP_REMINDER = "Step limit reached. Do not call tools. Summarize what you found and what remains for the user.";
|
|
17
|
-
/**
|
|
18
|
-
|
|
19
|
+
/**
|
|
20
|
+
* The tail reminder of a sub-agent's final call once its tree used its token budget (model-visible,
|
|
21
|
+
* English; sub-agents spec §8.3): the child hands back what it found instead of ending with nothing.
|
|
22
|
+
*/
|
|
23
|
+
export const BUDGET_WRAP_UP_REMINDER = "The sub-agents' token budget is used up, so this is your last reply. Do not call tools. " +
|
|
24
|
+
"Report what you found so far, with the sources and details that matter, and what remains " +
|
|
25
|
+
"unfinished.";
|
|
26
|
+
export { TOOLS_UNSUPPORTED_REMINDER } from "./context/reminders.js";
|
|
19
27
|
/** 不可用工具提醒的前缀(模型可见,英文)。 */
|
|
20
28
|
export const TOOLS_UNAVAILABLE_PREFIX = "The following tools are unavailable in this run: ";
|
|
21
29
|
/** 本 run 中此前有工具不可用、现在全部恢复时的提醒(模型可见,英文)。 */
|
|
@@ -24,8 +32,11 @@ export const TOOLS_AVAILABLE_AGAIN = "All previously unavailable tools are avail
|
|
|
24
32
|
export function toolsUnavailableReminder(unavailable) {
|
|
25
33
|
return `${TOOLS_UNAVAILABLE_PREFIX}${unavailable.map((u) => `${u.ref} (${u.reason})`).join(", ")}`;
|
|
26
34
|
}
|
|
27
|
-
/**
|
|
28
|
-
|
|
35
|
+
/**
|
|
36
|
+
* `run_failed` message of a model request denied by a policy hook (user-facing, never model-visible);
|
|
37
|
+
* also the message of the `model.hook_denied` error a denied `ctx.models.embed` call rejects with.
|
|
38
|
+
*/
|
|
39
|
+
export const modelDeniedText = (plugin, reason) => `Model request blocked by the "${plugin}" policy hook: ${reason}`;
|
|
29
40
|
/** 可重试错误在同一模型上重试前的默认等待(供应商未给 retryAfterMs 时)。 */
|
|
30
41
|
const DEFAULT_RETRY_DELAY_MS = 1000;
|
|
31
42
|
/**
|
|
@@ -70,6 +81,10 @@ const idem = {
|
|
|
70
81
|
reminder: (runId, step) => `reminder:${runId}:${step}`,
|
|
71
82
|
toolsUnavailable: (runId, step) => `tools_unavailable:${runId}:${step}`,
|
|
72
83
|
toolsUnsupported: (runId, step) => `tools_unsupported:${runId}:${step}`,
|
|
84
|
+
toolsChanged: (runId, step, keys) => `tools_changed:${runId}:${step}:${createHash("sha256")
|
|
85
|
+
.update(JSON.stringify([...keys].sort()))
|
|
86
|
+
.digest("hex")
|
|
87
|
+
.slice(0, 16)}`,
|
|
73
88
|
modelCall: modelCallIdemKey,
|
|
74
89
|
hookDenied: (runId, step, attempt) => `hook_denied:${runId}:${step}:${attempt}`,
|
|
75
90
|
/** Usage of a compaction call: `n` is the compaction attempt (consecutive failures + 1). */
|
|
@@ -88,18 +103,24 @@ class StepAborted extends Error {
|
|
|
88
103
|
* 模型看到的一切先写进日志(`model_call` / `reminder` / `compaction_summary`),请求可由日志还原。
|
|
89
104
|
*/
|
|
90
105
|
export function runModelStep(deps, input) {
|
|
91
|
-
return runStep(deps, input,
|
|
106
|
+
return runStep(deps, input, null);
|
|
92
107
|
}
|
|
93
108
|
/**
|
|
94
109
|
* 单轮收尾:到达步数上限时调用一次。写入收尾 `reminder`(位于请求末尾);照常带工具(历史里有工具调用时
|
|
95
110
|
* 部分供应商要求请求声明工具,也保持缓存前缀稳定),但 `toolChoice: "none"`——模型只能回复文本。
|
|
96
111
|
* 其余与 `runModelStep` 相同(幂等、降级、中止)。
|
|
112
|
+
*
|
|
113
|
+
* `reason: "budget"`: a sub-agent whose tree used its token budget makes this one call to hand back
|
|
114
|
+
* what it found (sub-agents spec §8.3); it is not stopped by the budget again (one call over).
|
|
97
115
|
*/
|
|
98
|
-
export function runFinalWrapUp(deps, input) {
|
|
99
|
-
return runStep(deps, input,
|
|
116
|
+
export function runFinalWrapUp(deps, input, reason = "max_steps") {
|
|
117
|
+
return runStep(deps, input, reason);
|
|
100
118
|
}
|
|
101
|
-
async function runStep(deps, input,
|
|
102
|
-
|
|
119
|
+
async function runStep(deps, input,
|
|
120
|
+
/** The final call's reason, or null for an ordinary step. */
|
|
121
|
+
wrapUpReason) {
|
|
122
|
+
const wrapUp = wrapUpReason !== null;
|
|
123
|
+
const { conversationId, runId, step, signal, sink } = input;
|
|
103
124
|
const existing = await findExisting(deps.eventLog, conversationId, runId, step);
|
|
104
125
|
if (existing) {
|
|
105
126
|
// resumed after a crash between writing usage and enqueueing it: enqueue again (job id dedupes)
|
|
@@ -108,6 +129,8 @@ async function runStep(deps, input, wrapUp) {
|
|
|
108
129
|
if (u)
|
|
109
130
|
void deps.usageReport.enqueue(conversationId, u.seq);
|
|
110
131
|
}
|
|
132
|
+
// a crash between the assistant_message and clearing its draft leaves one behind
|
|
133
|
+
sink({ kind: "step_end", runId, step });
|
|
111
134
|
return existing;
|
|
112
135
|
}
|
|
113
136
|
const runtime = deps.config.get().runtime;
|
|
@@ -117,6 +140,11 @@ async function runStep(deps, input, wrapUp) {
|
|
|
117
140
|
if (signal.aborted)
|
|
118
141
|
throw new StepAborted();
|
|
119
142
|
let events = await readAll(deps.eventLog, conversationId);
|
|
143
|
+
// an earlier execution of this run already sent this step (it streamed, then crashed or was
|
|
144
|
+
// handed over): this one starts at offset 0, so viewers drop that attempt's draft first
|
|
145
|
+
if (events.some((e) => e.type === "model_call" && e.runId === runId && e.payload.step === step)) {
|
|
146
|
+
sink({ kind: "step_reset", runId, step });
|
|
147
|
+
}
|
|
120
148
|
// sticky (M-4): a model.request denial already logged for this step (any attempt, e.g. a crash
|
|
121
149
|
// after recording it) is final: fail the same way, before compaction or any model call. Read from
|
|
122
150
|
// the events just loaded, so it costs no query (M-2).
|
|
@@ -128,10 +156,15 @@ async function runStep(deps, input, wrapUp) {
|
|
|
128
156
|
}
|
|
129
157
|
// 每步实时解析(连接器 / 插件状态可能在步骤之间变化),解析结果记在 model_call;收尾调用同样带工具
|
|
130
158
|
// a skills catalog snapshot (Ruling M17; an empty one too) or a person's skill invocation in the
|
|
131
|
-
// log →
|
|
159
|
+
// log → Skill is offered (see skillLoadOffered)
|
|
132
160
|
const resolved = await deps.tools.forAgent(input.orgId, {
|
|
133
|
-
|
|
161
|
+
disabledTools: input.agent.disabledTools,
|
|
162
|
+
subagentTools: input.agent.subagentTools,
|
|
134
163
|
subagents: input.agent.subagents,
|
|
164
|
+
child: input.parent !== undefined || input.parentRunId !== undefined || input.subagent === true,
|
|
165
|
+
forkChild: input.parent?.forSkill === true,
|
|
166
|
+
sandboxConversationId: input.parent?.rootConversationId ?? input.conversationId,
|
|
167
|
+
replay: input.conversationKind === "eval",
|
|
135
168
|
skillLoad: skillLoadOffered(events.findLast((e) => e.type === "skills_catalog"), hasInvocation(events)),
|
|
136
169
|
});
|
|
137
170
|
const tools = {
|
|
@@ -147,10 +180,12 @@ async function runStep(deps, input, wrapUp) {
|
|
|
147
180
|
const beforeCompaction = events.length;
|
|
148
181
|
events = await maybeCompact(deps, input, events, runtime, tools);
|
|
149
182
|
// a sub-agent checks its budget again after a compaction call, so the step's own request is
|
|
150
|
-
// not a second call over the cap (review M5; the loop checks before each step)
|
|
151
|
-
|
|
183
|
+
// not a second call over the cap (review M5; the loop checks before each step); the budget
|
|
184
|
+
// wrap-up is the one call allowed over it
|
|
185
|
+
if (wrapUpReason !== "budget" &&
|
|
186
|
+
input.parentRunId !== undefined &&
|
|
152
187
|
events.length !== beforeCompaction &&
|
|
153
|
-
(await subagentBudgetUsedUp(deps.db, deps.config, input.orgId, input.parentRunId))) {
|
|
188
|
+
(await subagentBudgetUsedUp(deps.db, deps.config, input.orgId, input.parent?.budgetRunId ?? (await budgetRunOf(deps.db, input.parentRunId))))) {
|
|
154
189
|
return {
|
|
155
190
|
content: [],
|
|
156
191
|
stopReason: "end_turn",
|
|
@@ -160,6 +195,19 @@ async function runStep(deps, input, wrapUp) {
|
|
|
160
195
|
budget: true,
|
|
161
196
|
};
|
|
162
197
|
}
|
|
198
|
+
// the tool set changed since the previous request (an extension switched on, a sub-agent
|
|
199
|
+
// roster added): tell the model before this request (tool naming spec §9.1). Keyed by the new
|
|
200
|
+
// set, so a retried step finds it in the log (previousToolSet applies it) and writes nothing
|
|
201
|
+
const toolKeys = resolved.tools.map((t) => t.key);
|
|
202
|
+
const change = toolSetChange(events, toolKeys);
|
|
203
|
+
if (change !== null) {
|
|
204
|
+
events = await appendLocal(deps.eventLog, conversationId, events, {
|
|
205
|
+
type: "tools_changed",
|
|
206
|
+
runId,
|
|
207
|
+
idemKey: idem.toolsChanged(runId, step, toolKeys),
|
|
208
|
+
payload: { step, ...change },
|
|
209
|
+
});
|
|
210
|
+
}
|
|
163
211
|
const last = lastToolsReminder(events, runId);
|
|
164
212
|
// 有不可用工具 → 列出;此前列过、现在全部恢复 → 说明已恢复,避免过时的「不可用」成为最后一句
|
|
165
213
|
// (收尾调用不得调用工具,可用性变化不写)。
|
|
@@ -181,7 +229,7 @@ async function runStep(deps, input, wrapUp) {
|
|
|
181
229
|
});
|
|
182
230
|
}
|
|
183
231
|
}
|
|
184
|
-
const { outcome, ref } = await ladder(deps, input, events, runtime, tools,
|
|
232
|
+
const { outcome, ref } = await ladder(deps, input, events, runtime, tools, wrapUpReason, streamed);
|
|
185
233
|
// assistant_message 与 usage 同一次 append = 同一事务。
|
|
186
234
|
const appended = await appendCounted(deps, input, [
|
|
187
235
|
{
|
|
@@ -201,6 +249,7 @@ async function runStep(deps, input, wrapUp) {
|
|
|
201
249
|
const usageEvent = appended.find((e) => e.type === "usage");
|
|
202
250
|
if (deps.usageReport && usageEvent)
|
|
203
251
|
void deps.usageReport.enqueue(conversationId, usageEvent.seq);
|
|
252
|
+
sink({ kind: "step_end", runId, step });
|
|
204
253
|
return {
|
|
205
254
|
content: outcome.content,
|
|
206
255
|
stopReason: outcome.stopReason,
|
|
@@ -222,21 +271,24 @@ async function runStep(deps, input, wrapUp) {
|
|
|
222
271
|
payload: { step, content, stopReason: "aborted" },
|
|
223
272
|
},
|
|
224
273
|
]);
|
|
274
|
+
sink({ kind: "step_end", runId, step });
|
|
225
275
|
return { content, stopReason: "aborted", reused: false, aborted: true, usage: null };
|
|
226
276
|
}
|
|
227
277
|
}
|
|
228
278
|
/**
|
|
229
|
-
* Appends a model call's events (its reply or compaction outcome with its `usage
|
|
279
|
+
* Appends a model call's events (its reply or compaction outcome with its `usage`; also the usage
|
|
280
|
+
* of a `WebFetch` extraction call, `tools/builtins/web/extract.ts`). For a
|
|
230
281
|
* sub-agent's run (`input.parentRunId`) in one transaction that also adds the tokens of the usage
|
|
231
|
-
* events it newly wrote to the
|
|
282
|
+
* events it newly wrote to the budget run's `subagent_tokens_used` (sub-agents spec §8.3): a usage
|
|
232
283
|
* event already in the log (an idempotent hit after a crash) adds nothing, so each call counts
|
|
233
284
|
* exactly once.
|
|
234
285
|
*/
|
|
235
|
-
async function appendCounted(deps, input, events) {
|
|
286
|
+
export async function appendCounted(deps, input, events) {
|
|
236
287
|
const { conversationId, parentRunId } = input;
|
|
237
288
|
if (parentRunId === undefined)
|
|
238
289
|
return deps.eventLog.append(conversationId, events);
|
|
239
|
-
const
|
|
290
|
+
const budgetRunId = input.budgetRunId ?? input.parent?.budgetRunId;
|
|
291
|
+
const out = await deps.stepLog.appendCounted(conversationId, { parentRunId, ...(budgetRunId !== undefined && { budgetRunId }) }, events);
|
|
240
292
|
if (out.toSeq !== null)
|
|
241
293
|
await deps.eventLog.notify(conversationId, out.toSeq);
|
|
242
294
|
return out.written;
|
|
@@ -485,7 +537,7 @@ async function maybeCompact(deps, input, events, runtime, tools) {
|
|
|
485
537
|
let provider;
|
|
486
538
|
let info;
|
|
487
539
|
try {
|
|
488
|
-
({ provider, info } = await deps.registry.resolve(input.agent.model));
|
|
540
|
+
({ provider, info } = await deps.registry.resolve(input.orgId, input.agent.model));
|
|
489
541
|
}
|
|
490
542
|
catch (err) {
|
|
491
543
|
deps.log.warn("compaction skipped: model unavailable", { model: input.agent.model, err });
|
|
@@ -655,13 +707,19 @@ function mergeLocal(events, written) {
|
|
|
655
707
|
* 每次尝试解析出模型后、写 `model_call` 之前写本步的尾部提醒(均按本步幂等,只写一次):所用模型不支持工具而本步有工具
|
|
656
708
|
* → {@link TOOLS_UNSUPPORTED_REMINDER};然后是轮次提醒或收尾提醒(收尾提醒因此位于请求末尾)。
|
|
657
709
|
* 每次实际尝试写自己的 `model_call`(attempt 从 1 连续递增,跳过的不计);重试前经 sink 发 `step_reset`。
|
|
658
|
-
* 不可重试的失败或梯子用尽 → `RunError
|
|
710
|
+
* 不可重试的失败或梯子用尽 → `RunError`; except that the agent's own model failing to resolve as
|
|
711
|
+
* `agent.model_unavailable` (gone from the list, disabled since the agent was saved, its provider
|
|
712
|
+
* not configured in the org: spec B §5.3) goes straight to `agent.fallback` when there is one,
|
|
713
|
+
* without the same-model retry.
|
|
659
714
|
*/
|
|
660
|
-
async function ladder(deps, input, events, runtime, tools,
|
|
715
|
+
async function ladder(deps, input, events, runtime, tools, wrapUpReason, streamed) {
|
|
661
716
|
const { conversationId, runId, step, signal, sink, agent } = input;
|
|
662
|
-
const
|
|
663
|
-
|
|
664
|
-
|
|
717
|
+
const wrapUp = wrapUpReason !== null;
|
|
718
|
+
const turnReminder = wrapUpReason === "budget"
|
|
719
|
+
? BUDGET_WRAP_UP_REMINDER
|
|
720
|
+
: wrapUp
|
|
721
|
+
? WRAP_UP_REMINDER
|
|
722
|
+
: turnLimitReminder(step, input.maxSteps ?? runtime.maxSteps);
|
|
665
723
|
let evs = events;
|
|
666
724
|
const rungs = [
|
|
667
725
|
{ ref: agent.model, fallback: false },
|
|
@@ -670,12 +728,16 @@ async function ladder(deps, input, events, runtime, tools, wrapUp, streamed) {
|
|
|
670
728
|
if (agent.fallback)
|
|
671
729
|
rungs.push({ ref: agent.fallback, fallback: true });
|
|
672
730
|
let last;
|
|
731
|
+
/** The agent's model did not resolve (`agent.model_unavailable`): only the fallback is left. */
|
|
732
|
+
let mainUnavailable = false;
|
|
673
733
|
let attempt = 0;
|
|
674
734
|
// hooks fire only for chat runs that have a registry (eval replays omit it, P-18)
|
|
675
735
|
const scope = hookScope(deps.hooks, input);
|
|
676
736
|
/** 本次尝试发出的请求里带了字节的附件(供应商拒收时写 media_excluded)。 */
|
|
677
737
|
let sentMedia = [];
|
|
678
738
|
for (const rung of rungs) {
|
|
739
|
+
if (mainUnavailable && !rung.fallback)
|
|
740
|
+
continue;
|
|
679
741
|
if (last && !rung.fallback && (last.retryAfterMs ?? 0) > MAX_RETRY_AFTER_MS) {
|
|
680
742
|
deps.log.warn("model retry skipped: suggested wait exceeds cap", {
|
|
681
743
|
conversationId,
|
|
@@ -695,8 +757,11 @@ async function ladder(deps, input, events, runtime, tools, wrapUp, streamed) {
|
|
|
695
757
|
sentMedia = [];
|
|
696
758
|
/** When the request went out (model.response fires only for sent requests). */
|
|
697
759
|
let sentAt;
|
|
760
|
+
/** Whether this attempt resolved its model (a failure before it is a resolve failure). */
|
|
761
|
+
let resolved = false;
|
|
698
762
|
try {
|
|
699
|
-
const { provider, info } = await deps.registry.resolve(rung.ref);
|
|
763
|
+
const { provider, info } = await deps.registry.resolve(input.orgId, rung.ref);
|
|
764
|
+
resolved = true;
|
|
700
765
|
if (tools.list.length > 0 && !info.capabilities.tools) {
|
|
701
766
|
evs = await appendLocal(deps.eventLog, conversationId, evs, {
|
|
702
767
|
type: "reminder",
|
|
@@ -784,6 +849,8 @@ async function ladder(deps, input, events, runtime, tools, wrapUp, streamed) {
|
|
|
784
849
|
sink({ kind: "thinking", runId, step, text: ev.text });
|
|
785
850
|
}
|
|
786
851
|
});
|
|
852
|
+
// the draft's last write, before the assistant_message is logged
|
|
853
|
+
sink({ kind: "stream_end", runId, step });
|
|
787
854
|
if (scope && deps.hooks) {
|
|
788
855
|
fireObserve(deps.hooks, "model.response", {
|
|
789
856
|
...scope,
|
|
@@ -835,6 +902,16 @@ async function ladder(deps, input, events, runtime, tools, wrapUp, streamed) {
|
|
|
835
902
|
retryable: f.retryable,
|
|
836
903
|
error: f.message,
|
|
837
904
|
});
|
|
905
|
+
if (!resolved &&
|
|
906
|
+
!rung.fallback &&
|
|
907
|
+
agent.fallback &&
|
|
908
|
+
err instanceof ApiError &&
|
|
909
|
+
!(err instanceof ProviderListError) &&
|
|
910
|
+
err.code === "agent.model_unavailable") {
|
|
911
|
+
mainUnavailable = true;
|
|
912
|
+
last = f;
|
|
913
|
+
continue;
|
|
914
|
+
}
|
|
838
915
|
if (!f.retryable) {
|
|
839
916
|
if (REJECTS_MEDIA.has(f.code) && sentMedia.length > 0) {
|
|
840
917
|
// 记录失败不能掩盖原来的失败码:只记 warn,本次运行照常以原错误失败
|