@wardby/cli 0.6.0 → 0.8.0
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/.env.example +5 -5
- package/README.md +6 -1
- package/deploy/local/docker-compose.quickstart-coding.yml +19 -0
- package/dist/claude-coding-worker/driver.d.ts +33 -3
- package/dist/claude-coding-worker/driver.js +151 -21
- package/dist/claude-coding-worker/main.js +38 -6
- package/dist/claude-coding-worker/sdk.js +29 -2
- package/dist/claude-coding-worker/tool-socket.d.ts +27 -0
- package/dist/claude-coding-worker/tool-socket.js +111 -0
- package/dist/claude-coding-worker/transcript.d.ts +18 -0
- package/dist/claude-coding-worker/transcript.js +77 -0
- package/dist/claude-plugin/command.d.ts +61 -0
- package/dist/claude-plugin/command.js +376 -0
- package/dist/cli-help.d.ts +1 -1
- package/dist/cli-help.js +3 -1
- package/dist/cli.js +71 -13
- package/dist/coding/code-host.d.ts +16 -0
- package/dist/coding/code-host.js +60 -0
- package/dist/coding/continuation-wording.d.ts +35 -0
- package/dist/coding/continuation-wording.js +73 -0
- package/dist/coding/linked-issue-note.d.ts +23 -0
- package/dist/coding/linked-issue-note.js +47 -0
- package/dist/coding/mcp-token.d.ts +12 -0
- package/dist/coding/mcp-token.js +26 -0
- package/dist/coding/merge-wording.d.ts +28 -0
- package/dist/coding/merge-wording.js +78 -0
- package/dist/coding/pr-description-note.d.ts +9 -0
- package/dist/coding/pr-description-note.js +32 -0
- package/dist/coding/profile.d.ts +46 -126
- package/dist/coding/profile.js +45 -4
- package/dist/coding/protected-path-wording.d.ts +8 -0
- package/dist/coding/protected-path-wording.js +1 -1
- package/dist/coding/protocol.d.ts +264 -346
- package/dist/coding/protocol.js +237 -12
- package/dist/coding/redact.d.ts +3 -0
- package/dist/coding/redact.js +17 -0
- package/dist/coding/registry/allowlist.d.ts +12 -0
- package/dist/coding/registry/allowlist.js +14 -1
- package/dist/coding/registry/audit-mode.d.ts +153 -0
- package/dist/coding/registry/audit-mode.js +304 -0
- package/dist/coding/registry/lockfile-shared.d.ts +36 -0
- package/dist/coding/registry/lockfile-shared.js +128 -0
- package/dist/coding/registry/lockfiles.js +1 -1
- package/dist/coding/registry/npm-lockfile-formats.d.ts +11 -0
- package/dist/coding/registry/npm-lockfile-formats.js +41 -0
- package/dist/coding/registry/npm-lockfile.d.ts +8 -4
- package/dist/coding/registry/npm-lockfile.js +4 -6
- package/dist/coding/registry/npm.js +78 -8
- package/dist/coding/registry/pnpm-lockfile.d.ts +17 -0
- package/dist/coding/registry/pnpm-lockfile.js +189 -0
- package/dist/coding/registry/pypi-plan.d.ts +50 -0
- package/dist/coding/registry/pypi-plan.js +406 -0
- package/dist/coding/registry/pypi-requirements.d.ts +58 -0
- package/dist/coding/registry/pypi-requirements.js +155 -0
- package/dist/coding/registry/pypi.d.ts +3 -27
- package/dist/coding/registry/pypi.js +40 -154
- package/dist/coding/registry/refusal-hints.d.ts +20 -0
- package/dist/coding/registry/refusal-hints.js +61 -0
- package/dist/coding/registry/refusal-wording.d.ts +11 -0
- package/dist/coding/registry/refusal-wording.js +56 -0
- package/dist/coding/registry/report.d.ts +70 -8
- package/dist/coding/registry/report.js +112 -5
- package/dist/coding/registry/types.d.ts +58 -8
- package/dist/coding/registry/yarn-lockfile.d.ts +30 -0
- package/dist/coding/registry/yarn-lockfile.js +367 -0
- package/dist/coding/services/catalog.d.ts +37 -351
- package/dist/coding/transcript/claude-code.d.ts +13 -0
- package/dist/coding/transcript/claude-code.js +273 -0
- package/dist/coding/transcript/download-protocol.d.ts +30 -0
- package/dist/coding/transcript/download-protocol.js +18 -0
- package/dist/coding/transcript/format.d.ts +20 -0
- package/dist/coding/transcript/format.js +32 -0
- package/dist/coding/transcript/recorder.d.ts +52 -0
- package/dist/coding/transcript/recorder.js +225 -0
- package/dist/coding/transcript/resume/checkout.d.ts +31 -0
- package/dist/coding/transcript/resume/checkout.js +203 -0
- package/dist/coding/transcript/resume/command.d.ts +17 -0
- package/dist/coding/transcript/resume/command.js +176 -0
- package/dist/coding/transcript/resume/download.d.ts +20 -0
- package/dist/coding/transcript/resume/download.js +153 -0
- package/dist/coding/transcript/resume/launch.d.ts +38 -0
- package/dist/coding/transcript/resume/launch.js +128 -0
- package/dist/coding/transcript/resume/session-file.d.ts +13 -0
- package/dist/coding/transcript/resume/session-file.js +79 -0
- package/dist/coding/transcript/resume/stand-in.d.ts +11 -0
- package/dist/coding/transcript/resume/stand-in.js +49 -0
- package/dist/coding-worker/artifact.d.ts +8 -3
- package/dist/coding-worker/artifact.js +3 -1
- package/dist/coding-worker/debug-trace.d.ts +9 -6
- package/dist/coding-worker/debug-trace.js +16 -19
- package/dist/coding-worker/dependency-cache.d.mts +229 -0
- package/dist/coding-worker/dependency-cache.mjs +2123 -0
- package/dist/coding-worker/driver.d.ts +4 -3
- package/dist/coding-worker/driver.js +124 -39
- package/dist/coding-worker/errors.d.ts +1 -0
- package/dist/coding-worker/errors.js +32 -0
- package/dist/coding-worker/main.js +5 -1
- package/dist/coding-worker/mcp-config.d.ts +27 -0
- package/dist/coding-worker/mcp-config.js +32 -0
- package/dist/coding-worker/sdk.d.ts +36 -0
- package/dist/coding-worker/sdk.js +28 -1
- package/dist/coding-worker/task-note.d.ts +11 -0
- package/dist/coding-worker/task-note.js +13 -0
- package/dist/coding-worker/types.d.ts +15 -0
- package/dist/config/dependency-cache.d.ts +23 -0
- package/dist/config/dependency-cache.js +32 -0
- package/dist/config/mcp-call-limit.d.ts +8 -0
- package/dist/config/mcp-call-limit.js +18 -0
- package/dist/config/mcp-servers.d.ts +8 -0
- package/dist/config/mcp-servers.js +12 -0
- package/dist/config/providers.d.ts +12 -3
- package/dist/config/providers.js +55 -5
- package/dist/config/test-simulators.d.ts +92 -0
- package/dist/config/test-simulators.js +333 -0
- package/dist/config/tool-timeout.d.ts +1 -0
- package/dist/config/tool-timeout.js +18 -0
- package/dist/core/async-context.d.ts +2 -0
- package/dist/core/async-context.js +12 -0
- package/dist/core/budget-events.d.ts +108 -0
- package/dist/core/budget-events.js +346 -0
- package/dist/core/budget-groups.d.ts +50 -1
- package/dist/core/budget-groups.js +236 -27
- package/dist/core/budget-stopped-head.d.ts +46 -0
- package/dist/core/budget-stopped-head.js +81 -0
- package/dist/core/budget-topup.d.ts +51 -0
- package/dist/core/budget-topup.js +156 -0
- package/dist/core/budget-wording.d.ts +16 -2
- package/dist/core/budget-wording.js +40 -2
- package/dist/core/coding-mcp.d.ts +36 -0
- package/dist/core/coding-mcp.js +253 -0
- package/dist/core/coding-queue.d.ts +2 -1
- package/dist/core/coding-queue.js +7 -0
- package/dist/core/coding-repository.d.ts +46 -0
- package/dist/core/coding-repository.js +92 -0
- package/dist/core/cron.d.ts +19 -1
- package/dist/core/cron.js +17 -0
- package/dist/core/datastores.js +1 -1
- package/dist/core/deferred-coding.d.ts +14 -0
- package/dist/core/deferred-coding.js +62 -0
- package/dist/core/delegation-child.d.ts +25 -0
- package/dist/core/delegation-child.js +37 -0
- package/dist/core/delegation-slots.d.ts +27 -0
- package/dist/core/delegation-slots.js +44 -0
- package/dist/core/dispatch.d.ts +48 -2
- package/dist/core/dispatch.js +166 -66
- package/dist/core/engine-native.js +1 -1
- package/dist/core/error-code.d.ts +38 -0
- package/dist/core/error-code.js +169 -0
- package/dist/core/grants.d.ts +46 -8
- package/dist/core/grants.js +99 -8
- package/dist/core/host-events.d.ts +18 -2
- package/dist/core/host-events.js +291 -27
- package/dist/core/host-status.d.ts +85 -3
- package/dist/core/host-status.js +300 -22
- package/dist/core/issue-bridge.d.ts +50 -6
- package/dist/core/issue-bridge.js +124 -33
- package/dist/core/issue-events.d.ts +1 -1
- package/dist/core/issue-events.js +4 -10
- package/dist/core/issue-status.d.ts +1 -1
- package/dist/core/issue-status.js +58 -29
- package/dist/core/logger.d.ts +5 -0
- package/dist/core/logger.js +14 -1
- package/dist/core/lost-run-children.d.ts +6 -0
- package/dist/core/lost-run-children.js +32 -0
- package/dist/core/mark-ready.d.ts +34 -0
- package/dist/core/mark-ready.js +152 -0
- package/dist/core/markdown-code.d.ts +8 -0
- package/dist/core/markdown-code.js +107 -0
- package/dist/core/mcp-client/client.d.ts +47 -0
- package/dist/core/mcp-client/client.js +141 -0
- package/dist/core/mcp-client/jsonrpc.d.ts +15 -0
- package/dist/core/mcp-client/jsonrpc.js +54 -0
- package/dist/core/mcp-client/results.d.ts +13 -0
- package/dist/core/mcp-client/results.js +42 -0
- package/dist/core/mcp-servers.d.ts +90 -0
- package/dist/core/mcp-servers.js +230 -0
- package/dist/core/mcp-tools.d.ts +108 -0
- package/dist/core/mcp-tools.js +287 -0
- package/dist/core/memory-tools.js +7 -0
- package/dist/core/merge-order-check.d.ts +2 -1
- package/dist/core/merge-order-check.js +44 -18
- package/dist/core/notification-dispatcher.js +2 -1
- package/dist/core/notification-templates.d.ts +1 -7
- package/dist/core/notification-templates.js +36 -2
- package/dist/core/pull-request-state-sync.js +2 -2
- package/dist/core/reconciler.d.ts +4 -3
- package/dist/core/reconciler.js +8 -1
- package/dist/core/related-pull-requests.d.ts +11 -3
- package/dist/core/related-pull-requests.js +49 -20
- package/dist/core/reply-parts.d.ts +21 -0
- package/dist/core/reply-parts.js +73 -0
- package/dist/core/review-fix.d.ts +1 -1
- package/dist/core/review-fix.js +4 -3
- package/dist/core/review-host-checks.d.ts +1 -1
- package/dist/core/review-host-tools.d.ts +3 -0
- package/dist/core/review-host-tools.js +102 -14
- package/dist/core/review-reads.d.ts +55 -0
- package/dist/core/review-reads.js +233 -0
- package/dist/core/run-status.d.ts +12 -0
- package/dist/core/run-status.js +12 -0
- package/dist/core/runner.d.ts +145 -49
- package/dist/core/runner.js +719 -216
- package/dist/core/schedule-start.d.ts +12 -0
- package/dist/core/schedule-start.js +14 -0
- package/dist/core/secret-broker-config.d.ts +12 -74
- package/dist/core/secret-broker-config.js +1 -1
- package/dist/core/secret-guard.d.ts +49 -0
- package/dist/core/secret-guard.js +119 -0
- package/dist/core/secret-guarded-stores.d.ts +12 -0
- package/dist/core/secret-guarded-stores.js +41 -0
- package/dist/core/secret-spans.d.ts +50 -0
- package/dist/core/secret-spans.js +94 -0
- package/dist/core/secrets.d.ts +11 -1
- package/dist/core/secrets.js +27 -1
- package/dist/core/serializable-retry.d.ts +18 -0
- package/dist/core/serializable-retry.js +43 -0
- package/dist/core/stop-run.d.ts +46 -0
- package/dist/core/stop-run.js +61 -0
- package/dist/core/tool-admin.d.ts +5 -1
- package/dist/core/tool-admin.js +7 -2
- package/dist/core/tool-names.d.ts +13 -0
- package/dist/core/tool-names.js +20 -0
- package/dist/core/webhooks.d.ts +4 -0
- package/dist/core/webhooks.js +68 -49
- package/dist/core/workflow-events.d.ts +14 -2
- package/dist/core/workflow-events.js +4 -0
- package/dist/core/workflow-run-events.d.ts +5 -3
- package/dist/core/workflow-run-events.js +45 -9
- package/dist/core/zod-json-schema.d.ts +4 -0
- package/dist/core/zod-json-schema.js +39 -0
- package/dist/core/zod3-window.d.ts +35 -0
- package/dist/core/zod3-window.js +124 -0
- package/dist/generated/prisma/browser.d.ts +65 -3
- package/dist/generated/prisma/client.d.ts +65 -3
- package/dist/generated/prisma/commonInputTypes.d.ts +266 -106
- package/dist/generated/prisma/enums.d.ts +10 -0
- package/dist/generated/prisma/enums.js +8 -0
- package/dist/generated/prisma/internal/class.d.ts +110 -0
- package/dist/generated/prisma/internal/class.js +4 -4
- package/dist/generated/prisma/internal/prismaNamespace.d.ts +957 -9
- package/dist/generated/prisma/internal/prismaNamespace.js +166 -2
- package/dist/generated/prisma/internal/prismaNamespaceBrowser.d.ts +174 -0
- package/dist/generated/prisma/internal/prismaNamespaceBrowser.js +166 -2
- package/dist/generated/prisma/models/Agent.d.ts +377 -8
- package/dist/generated/prisma/models/AgentMcpServer.d.ts +1412 -0
- package/dist/generated/prisma/models/AgentMcpServer.js +1 -0
- package/dist/generated/prisma/models/AgentRepository.d.ts +81 -1
- package/dist/generated/prisma/models/AuthUser.d.ts +1 -1
- package/dist/generated/prisma/models/CodingAgentProfile.d.ts +228 -7
- package/dist/generated/prisma/models/CodingProxyRequest.d.ts +207 -3
- package/dist/generated/prisma/models/CodingProxySession.d.ts +232 -2
- package/dist/generated/prisma/models/CodingRun.d.ts +1712 -1
- package/dist/generated/prisma/models/DependencySnapshot.d.ts +1668 -0
- package/dist/generated/prisma/models/DependencySnapshot.js +1 -0
- package/dist/generated/prisma/models/HostProvider.d.ts +2176 -0
- package/dist/generated/prisma/models/HostProvider.js +1 -0
- package/dist/generated/prisma/models/HostProviderCredential.d.ts +1285 -0
- package/dist/generated/prisma/models/HostProviderCredential.js +1 -0
- package/dist/generated/prisma/models/HostProviderOperation.d.ts +1470 -0
- package/dist/generated/prisma/models/HostProviderOperation.js +1 -0
- package/dist/generated/prisma/models/HostProviderTrustedAccount.d.ts +1145 -0
- package/dist/generated/prisma/models/HostProviderTrustedAccount.js +1 -0
- package/dist/generated/prisma/models/IssuePullRequest.d.ts +6 -2
- package/dist/generated/prisma/models/LocalReview.d.ts +40 -1
- package/dist/generated/prisma/models/McpServer.d.ts +1500 -0
- package/dist/generated/prisma/models/McpServer.js +1 -0
- package/dist/generated/prisma/models/NativeGatewayCall.d.ts +77 -1
- package/dist/generated/prisma/models/NativeGatewaySession.d.ts +35 -1
- package/dist/generated/prisma/models/Principal.d.ts +167 -0
- package/dist/generated/prisma/models/RegistryAllowance.d.ts +41 -1
- package/dist/generated/prisma/models/RegistryApprovedVersion.d.ts +75 -1
- package/dist/generated/prisma/models/RegistryAuditRecord.d.ts +1364 -0
- package/dist/generated/prisma/models/RegistryAuditRecord.js +1 -0
- package/dist/generated/prisma/models/ResourceGrant.d.ts +1 -1
- package/dist/generated/prisma/models/Run.d.ts +738 -2
- package/dist/generated/prisma/models/RunBudgetEvent.d.ts +1211 -0
- package/dist/generated/prisma/models/RunBudgetEvent.js +1 -0
- package/dist/generated/prisma/models/RunTranscript.d.ts +1339 -0
- package/dist/generated/prisma/models/RunTranscript.js +1 -0
- package/dist/generated/prisma/models/Secret.d.ts +387 -0
- package/dist/generated/prisma/models/Tool.d.ts +223 -1
- package/dist/generated/prisma/models.d.ts +10 -0
- package/dist/help/search.js +12 -3
- package/dist/help-index.json +2033 -110
- package/dist/import/create.js +48 -4
- package/dist/import/neutral-schema.d.ts +51 -281
- package/dist/import/neutral-schema.js +7 -4
- package/dist/knowledge/check.d.ts +1 -1
- package/dist/knowledge/cli.d.ts +11 -1
- package/dist/knowledge/cli.js +37 -4
- package/dist/knowledge/concept.d.ts +3 -19
- package/dist/knowledge/location.d.ts +31 -0
- package/dist/knowledge/location.js +78 -0
- package/dist/mcp/auth/access.d.ts +10 -2
- package/dist/mcp/auth/access.js +15 -1
- package/dist/mcp/auth/grants-cli.d.ts +6 -4
- package/dist/mcp/auth/grants-cli.js +42 -3
- package/dist/mcp/auth/ownership.d.ts +7 -7
- package/dist/mcp/auth/resource-server.d.ts +3 -1
- package/dist/mcp/auth/resource-server.js +17 -2
- package/dist/mcp/auth/self-hosted/credentials.d.ts +3 -3
- package/dist/mcp/auth/self-hosted/session.d.ts +2 -2
- package/dist/mcp/context.d.ts +3 -0
- package/dist/mcp/host-events/github-ingress.d.ts +2 -0
- package/dist/mcp/host-events/github-ingress.js +2 -1
- package/dist/mcp/index.d.ts +6 -0
- package/dist/mcp/index.js +69 -10
- package/dist/mcp/server.d.ts +13 -0
- package/dist/mcp/server.js +33 -14
- package/dist/mcp/tools/agents.d.ts +4 -0
- package/dist/mcp/tools/agents.js +295 -28
- package/dist/mcp/tools/datastore.js +17 -8
- package/dist/mcp/tools/grants.js +73 -29
- package/dist/mcp/tools/host-providers.d.ts +2 -0
- package/dist/mcp/tools/host-providers.js +215 -0
- package/dist/mcp/tools/mcp-servers.d.ts +26 -0
- package/dist/mcp/tools/mcp-servers.js +481 -0
- package/dist/mcp/tools/memory.js +11 -1
- package/dist/mcp/tools/notification-channels.js +2 -2
- package/dist/mcp/tools/packages.d.ts +2 -0
- package/dist/mcp/tools/packages.js +195 -0
- package/dist/mcp/tools/repositories.js +65 -12
- package/dist/mcp/tools/run-access.d.ts +16 -0
- package/dist/mcp/tools/run-access.js +25 -0
- package/dist/mcp/tools/run-transcript-download.d.ts +30 -0
- package/dist/mcp/tools/run-transcript-download.js +129 -0
- package/dist/mcp/tools/run-transcript.d.ts +19 -0
- package/dist/mcp/tools/run-transcript.js +70 -0
- package/dist/mcp/tools/runs.js +209 -27
- package/dist/mcp/tools/scheduling.js +3 -1
- package/dist/mcp/tools/secret-elicitation-form.js +5 -0
- package/dist/mcp/tools/secret-elicitation-server.d.ts +6 -0
- package/dist/mcp/tools/secret-elicitation-server.js +10 -61
- package/dist/mcp/tools/secret-elicitation.d.ts +2 -0
- package/dist/mcp/tools/secret-elicitation.js +25 -2
- package/dist/mcp/tools/secrets.js +40 -6
- package/dist/mcp/tools/stop-run.d.ts +2 -0
- package/dist/mcp/tools/stop-run.js +82 -0
- package/dist/mcp/tools/subagents.js +2 -2
- package/dist/mcp/tools/tools.d.ts +7 -5
- package/dist/mcp/tools/tools.js +64 -16
- package/dist/mcp/tools/trigger.js +28 -6
- package/dist/mcp/transport/http-limits.d.ts +2 -0
- package/dist/mcp/transport/http-limits.js +6 -2
- package/dist/mcp/transport/stdio-link-host.d.ts +20 -0
- package/dist/mcp/transport/stdio-link-host.js +67 -0
- package/dist/mcp/transport/streamable-http.d.ts +13 -0
- package/dist/mcp/transport/streamable-http.js +41 -1
- package/dist/mcp/webhooks/ingress.js +10 -0
- package/dist/native-worker/docker-launcher.d.ts +38 -2
- package/dist/native-worker/docker-launcher.js +65 -5
- package/dist/native-worker/gateway-server.d.ts +55 -3
- package/dist/native-worker/gateway-server.js +152 -34
- package/dist/native-worker/gateway.d.ts +29 -1
- package/dist/native-worker/gateway.js +74 -4
- package/dist/native-worker/http-server.d.ts +7 -1
- package/dist/native-worker/http-server.js +62 -7
- package/dist/native-worker/http-transport.js +1 -1
- package/dist/native-worker/kubernetes-launcher.d.ts +7 -3
- package/dist/native-worker/kubernetes-launcher.js +43 -3
- package/dist/native-worker/launch.d.ts +18 -1
- package/dist/native-worker/launch.js +6 -1
- package/dist/native-worker/ledger.d.ts +24 -4
- package/dist/native-worker/ledger.js +62 -8
- package/dist/native-worker/loopback.js +3 -8
- package/dist/native-worker/main.d.ts +2 -1
- package/dist/native-worker/main.js +14 -3
- package/dist/native-worker/protocol.d.ts +130 -577
- package/dist/native-worker/protocol.js +51 -2
- package/dist/native-worker/sandbox-executor.d.ts +17 -2
- package/dist/native-worker/sandbox-executor.js +78 -4
- package/dist/native-worker/stderr-redaction.d.ts +77 -0
- package/dist/native-worker/stderr-redaction.js +237 -0
- package/dist/native-worker/stdio.d.ts +1 -1
- package/dist/native-worker/stdio.js +6 -5
- package/dist/native-worker/warm-pool.d.ts +2 -2
- package/dist/native-worker/warm-pool.js +4 -4
- package/dist/native-worker/worker.js +28 -2
- package/dist/observability/metrics.js +6 -1
- package/dist/providers/auth/self-hosted.d.ts +1 -1
- package/dist/providers/coding-proxy/capability-hash.d.ts +2 -0
- package/dist/providers/coding-proxy/capability-hash.js +5 -0
- package/dist/providers/coding-proxy/dependency-cache/eviction.d.ts +29 -0
- package/dist/providers/coding-proxy/dependency-cache/eviction.js +87 -0
- package/dist/providers/coding-proxy/dependency-cache/key.d.ts +33 -0
- package/dist/providers/coding-proxy/dependency-cache/key.js +86 -0
- package/dist/providers/coding-proxy/dependency-cache/model-request-seal.d.ts +18 -0
- package/dist/providers/coding-proxy/dependency-cache/model-request-seal.js +40 -0
- package/dist/providers/coding-proxy/dependency-cache/prisma-store.d.ts +25 -0
- package/dist/providers/coding-proxy/dependency-cache/prisma-store.js +131 -0
- package/dist/providers/coding-proxy/dependency-cache/service.d.ts +70 -0
- package/dist/providers/coding-proxy/dependency-cache/service.js +409 -0
- package/dist/providers/coding-proxy/dependency-cache/store.d.ts +85 -0
- package/dist/providers/coding-proxy/dependency-cache/store.js +95 -0
- package/dist/providers/coding-proxy/hold.d.ts +32 -0
- package/dist/providers/coding-proxy/hold.js +86 -0
- package/dist/providers/coding-proxy/interrupted.d.ts +70 -0
- package/dist/providers/coding-proxy/interrupted.js +104 -0
- package/dist/providers/coding-proxy/mcp-route.d.ts +34 -0
- package/dist/providers/coding-proxy/mcp-route.js +166 -0
- package/dist/providers/coding-proxy/memory-ledger.d.ts +17 -2
- package/dist/providers/coding-proxy/memory-ledger.js +99 -8
- package/dist/providers/coding-proxy/metering.d.ts +16 -0
- package/dist/providers/coding-proxy/metering.js +27 -4
- package/dist/providers/coding-proxy/prisma-ledger.d.ts +16 -2
- package/dist/providers/coding-proxy/prisma-ledger.js +209 -69
- package/dist/providers/coding-proxy/proxy.d.ts +21 -2
- package/dist/providers/coding-proxy/proxy.js +300 -48
- package/dist/providers/coding-proxy/registry/audit.d.ts +53 -10
- package/dist/providers/coding-proxy/registry/audit.js +94 -17
- package/dist/providers/coding-proxy/registry/lockfile-parse-worker.d.ts +36 -0
- package/dist/providers/coding-proxy/registry/lockfile-parse-worker.js +67 -0
- package/dist/providers/coding-proxy/registry/lockfile-parse.d.ts +16 -0
- package/dist/providers/coding-proxy/registry/lockfile-parse.js +110 -0
- package/dist/providers/coding-proxy/registry/plan.d.ts +9 -0
- package/dist/providers/coding-proxy/registry/plan.js +201 -48
- package/dist/providers/coding-proxy/registry/prisma-store.d.ts +11 -5
- package/dist/providers/coding-proxy/registry/prisma-store.js +120 -17
- package/dist/providers/coding-proxy/registry/service.d.ts +97 -16
- package/dist/providers/coding-proxy/registry/service.js +579 -112
- package/dist/providers/coding-proxy/registry/store.d.ts +84 -9
- package/dist/providers/coding-proxy/registry/store.js +54 -1
- package/dist/providers/coding-proxy/runtime.d.ts +10 -0
- package/dist/providers/coding-proxy/runtime.js +109 -16
- package/dist/providers/coding-proxy/server.d.ts +9 -1
- package/dist/providers/coding-proxy/server.js +55 -1
- package/dist/providers/coding-proxy/types.d.ts +78 -1
- package/dist/providers/datastore/types.d.ts +5 -0
- package/dist/providers/engine/types.d.ts +17 -2
- package/dist/providers/engine/types.js +17 -0
- package/dist/providers/executor/composition.d.ts +10 -3
- package/dist/providers/executor/composition.js +52 -7
- package/dist/providers/executor/container.d.ts +394 -9
- package/dist/providers/executor/container.js +1210 -96
- package/dist/providers/executor/dbos-status.d.ts +31 -0
- package/dist/providers/executor/dbos-status.js +64 -0
- package/dist/providers/executor/dbos.d.ts +50 -1
- package/dist/providers/executor/dbos.js +207 -20
- package/dist/providers/executor/deferred.d.ts +12 -24
- package/dist/providers/executor/deferred.js +10 -29
- package/dist/providers/executor/in-process.d.ts +9 -1
- package/dist/providers/executor/in-process.js +14 -4
- package/dist/providers/executor/linked-issue-reader.d.ts +16 -0
- package/dist/providers/executor/linked-issue-reader.js +30 -0
- package/dist/providers/executor/routing.d.ts +2 -0
- package/dist/providers/executor/routing.js +4 -0
- package/dist/providers/executor/types.d.ts +13 -0
- package/dist/providers/host-tools/invoke.d.ts +37 -0
- package/dist/providers/host-tools/invoke.js +117 -0
- package/dist/providers/host-tools/operations.d.ts +65 -0
- package/dist/providers/host-tools/operations.js +149 -0
- package/dist/providers/host-tools/registry.d.ts +79 -0
- package/dist/providers/host-tools/registry.js +362 -0
- package/dist/providers/host-tools/request-guard.d.ts +17 -0
- package/dist/providers/host-tools/request-guard.js +99 -0
- package/dist/providers/host-tools/self-test.d.ts +64 -0
- package/dist/providers/host-tools/self-test.js +142 -0
- package/dist/providers/index.d.ts +2 -1
- package/dist/providers/issue-tracker/types.d.ts +17 -0
- package/dist/providers/issue-tracker/types.js +39 -1
- package/dist/providers/jobs/claude-tool-setup.d.ts +4 -0
- package/dist/providers/jobs/claude-tool-setup.js +5 -2
- package/dist/providers/jobs/docker-isolation.d.ts +10 -2
- package/dist/providers/jobs/docker-isolation.js +47 -8
- package/dist/providers/jobs/docker.d.ts +9 -0
- package/dist/providers/jobs/docker.js +60 -11
- package/dist/providers/jobs/fake-kubernetes-api.d.ts +2 -0
- package/dist/providers/jobs/fake-kubernetes-api.js +3 -0
- package/dist/providers/jobs/kubernetes-api.d.ts +8 -0
- package/dist/providers/jobs/kubernetes-api.js +10 -0
- package/dist/providers/jobs/kubernetes-client.js +10 -1
- package/dist/providers/jobs/kubernetes-isolation.d.ts +5 -1
- package/dist/providers/jobs/kubernetes-isolation.js +32 -3
- package/dist/providers/jobs/kubernetes.d.ts +11 -1
- package/dist/providers/jobs/kubernetes.js +111 -17
- package/dist/providers/jobs/types.d.ts +39 -0
- package/dist/providers/jobs/types.js +13 -1
- package/dist/providers/llm/anthropic.js +5 -1
- package/dist/providers/llm/bedrock.d.ts +0 -12
- package/dist/providers/llm/bedrock.js +4 -0
- package/dist/providers/llm/claude-messages.d.ts +3 -1
- package/dist/providers/llm/claude-messages.js +4 -1
- package/dist/providers/llm/claude-provider.d.ts +2 -2
- package/dist/providers/llm/claude-provider.js +2 -2
- package/dist/providers/llm/openai.d.ts +2 -2
- package/dist/providers/llm/openai.js +6 -2
- package/dist/providers/llm/routing.d.ts +2 -2
- package/dist/providers/llm/routing.js +2 -2
- package/dist/providers/llm/types.d.ts +12 -2
- package/dist/providers/review-host/github-events.d.ts +9 -1
- package/dist/providers/review-host/github-events.js +34 -12
- package/dist/providers/review-host/github.d.ts +29 -2
- package/dist/providers/review-host/github.js +224 -29
- package/dist/providers/review-host/local.d.ts +8 -4
- package/dist/providers/review-host/local.js +49 -31
- package/dist/providers/review-host/patch-pages.d.ts +41 -0
- package/dist/providers/review-host/patch-pages.js +176 -0
- package/dist/providers/review-host/review-format.d.ts +19 -1
- package/dist/providers/review-host/review-format.js +38 -7
- package/dist/providers/review-host/types.d.ts +140 -6
- package/dist/providers/review-host/types.js +9 -1
- package/dist/providers/storage/gcs.d.ts +63 -0
- package/dist/providers/storage/gcs.js +69 -0
- package/dist/providers/storage/index.d.ts +15 -0
- package/dist/providers/storage/index.js +14 -0
- package/dist/providers/storage/local.d.ts +24 -0
- package/dist/providers/storage/local.js +92 -0
- package/dist/providers/storage/meter.d.ts +14 -0
- package/dist/providers/storage/meter.js +34 -0
- package/dist/providers/storage/s3.d.ts +41 -0
- package/dist/providers/storage/s3.js +107 -0
- package/dist/providers/storage/types.d.ts +37 -3
- package/dist/providers/storage/types.js +21 -4
- package/dist/providers/vcs/git.d.ts +39 -4
- package/dist/providers/vcs/git.js +339 -26
- package/dist/providers/vcs/github-remote.d.ts +26 -3
- package/dist/providers/vcs/github-remote.js +124 -14
- package/dist/providers/vcs/github.d.ts +183 -44
- package/dist/providers/vcs/github.js +455 -56
- package/dist/providers/vcs/index.d.ts +1 -1
- package/dist/providers/vcs/index.js +9 -2
- package/dist/providers/vcs/pr-description.d.ts +127 -0
- package/dist/providers/vcs/pr-description.js +270 -0
- package/dist/providers/vcs/remote.d.ts +37 -1
- package/dist/providers/vcs/remote.js +7 -1
- package/dist/providers/vcs/routing.d.ts +16 -8
- package/dist/providers/vcs/routing.js +27 -6
- package/dist/providers/vcs/types.d.ts +150 -5
- package/dist/quickstart/coding-seed.d.ts +14 -3
- package/dist/quickstart/coding-seed.js +213 -4
- package/dist/quickstart/index.d.ts +5 -0
- package/dist/quickstart/index.js +21 -0
- package/dist/quickstart/reviewer-prompt.d.ts +1 -1
- package/dist/quickstart/reviewer-prompt.js +6 -6
- package/dist/quickstart-images.json +1 -1
- package/dist/sandbox/eval-core.d.ts +12 -2
- package/dist/sandbox/eval-core.js +20 -4
- package/dist/sandbox/generated/zod.bundle.js +62 -1
- package/dist/sandbox/generated/zod3.bundle.js +5 -0
- package/dist/sandbox/host-functions.d.ts +5 -0
- package/dist/sandbox/host-functions.js +13 -13
- package/dist/sandbox/limits.d.ts +4 -1
- package/dist/sandbox/limits.js +4 -1
- package/dist/sandbox/run-in-sandbox.d.ts +6 -0
- package/dist/sandbox/run-in-sandbox.js +14 -2
- package/dist/sandbox/safe-fetch.d.ts +2 -0
- package/dist/sandbox/safe-fetch.js +1 -1
- package/dist/sandbox/secret-broker.d.ts +1 -0
- package/dist/sandbox/secret-broker.js +4 -5
- package/dist/sandbox/tool-capabilities.d.ts +10 -30
- package/dist/sandbox/tool-timeout.d.ts +32 -0
- package/dist/sandbox/tool-timeout.js +52 -0
- package/dist/sandbox/user-tool.d.ts +8 -1
- package/dist/sandbox/user-tool.js +9 -3
- package/dist/sandbox/zod-params.d.ts +37 -5
- package/dist/sandbox/zod-params.js +181 -26
- package/dist/serve.js +8 -1
- package/dist/viewer/api-schema.d.ts +349 -2627
- package/dist/viewer/api-schema.js +7 -0
- package/dist/viewer/build-schemas.js +6 -2
- package/dist/viewer/graph.js +2 -1
- package/dist/viewer/openapi.js +2 -4
- package/dist/wardby-bin.js +15 -0
- package/docs/README.md +11 -1
- package/docs/agent-recipes.md +95 -24
- package/docs/architecture-runtime.md +1 -1
- package/docs/claude-code-plugin.md +164 -0
- package/docs/code-review-agents.md +557 -41
- package/docs/coding-agent-setup.md +566 -8
- package/docs/coding-packages.md +1033 -90
- package/docs/coding-services.md +27 -12
- package/docs/coding-worker-byo-images.md +24 -2
- package/docs/coding-worker-isolation.md +183 -37
- package/docs/debugging-agent-runs.md +242 -0
- package/docs/getting-started-gke.md +129 -141
- package/docs/getting-started-identity-provider.md +53 -38
- package/docs/getting-started.md +17 -0
- package/docs/host-providers.md +294 -0
- package/docs/jira-agents.md +17 -8
- package/docs/knowledge/blob-not-found-semantics.md +41 -0
- package/docs/knowledge/bounded-file-descriptor.md +52 -0
- package/docs/knowledge/delegation-admission-slots.md +52 -0
- package/docs/knowledge/http-dispatcher-bootstrap.md +61 -0
- package/docs/knowledge/import-rename-target.md +52 -0
- package/docs/knowledge/index.md +57 -0
- package/docs/knowledge/log.md +9 -0
- package/docs/knowledge/mcp-cancelled-task-precedence.md +41 -0
- package/docs/knowledge/mcp-http-prompt-discovery.md +41 -0
- package/docs/knowledge/mcp-schema-module-boundary.md +41 -0
- package/docs/knowledge/nullable-tool-uniqueness.md +52 -0
- package/docs/knowledge/overview-cli.md +74 -0
- package/docs/knowledge/overview-coding-proxy.md +72 -0
- package/docs/knowledge/overview-coding.md +72 -0
- package/docs/knowledge/overview-config.md +60 -0
- package/docs/knowledge/overview-core.md +72 -0
- package/docs/knowledge/overview-deploy.md +83 -0
- package/docs/knowledge/overview-mcp.md +61 -0
- package/docs/knowledge/overview-prisma.md +72 -0
- package/docs/knowledge/overview-providers.md +89 -0
- package/docs/knowledge/overview-sandbox.md +83 -0
- package/docs/knowledge/overview-surfaces.md +83 -0
- package/docs/knowledge/private-datastore-shared-boundary.md +54 -0
- package/docs/knowledge/proxy-settlement-projections.md +41 -0
- package/docs/knowledge/run-pricing-first-writer.md +43 -0
- package/docs/knowledge/schedule-claim-transaction.md +41 -0
- package/docs/knowledge/secret-entry-replica-contract.md +52 -0
- package/docs/knowledge/terminal-run-first-writer.md +41 -0
- package/docs/knowledge/transactional-agent-authorization.md +52 -0
- package/docs/knowledge/viewer-notify-write-isolation.md +30 -0
- package/docs/knowledge/warm-input-publication.md +30 -0
- package/docs/knowledge/workspace-staging-failure.md +54 -0
- package/docs/knowledge.md +54 -14
- package/docs/mcp-servers.md +254 -0
- package/docs/native-sandbox.md +143 -31
- package/docs/observability.md +4 -0
- package/docs/security-deployment.md +139 -29
- package/docs/slack-notifications.md +35 -19
- package/docs/tool-secrets.md +45 -10
- package/docs/viewer-api.md +6 -0
- package/docs/viewer-api.openapi.yml +1 -1
- package/help/admin-viewer.md +28 -2
- package/help/agent-recipes.md +33 -2
- package/help/architecture-agent.md +11 -6
- package/help/brokered-secrets.md +3 -0
- package/help/build-claude-code-image.md +1 -1
- package/help/build-worker-image.md +3 -1
- package/help/builder-agent.md +19 -6
- package/help/claude-code-run-pane.md +40 -0
- package/help/code-review-agents.md +177 -6
- package/help/coding-packages.md +156 -6
- package/help/cost-attribution.md +9 -5
- package/help/creating-agents.md +14 -1
- package/help/dependency-cache.md +143 -0
- package/help/deploy-gke.md +15 -8
- package/help/errors/budget-exhausted.md +187 -0
- package/help/errors/budget-group-exhausted.md +5 -1
- package/help/errors/coding-mcp-pins-unavailable.md +35 -0
- package/help/errors/coding-stream-quota-exceeded.md +33 -0
- package/help/errors/coding-workspace-disk-exceeds-limit.md +39 -0
- package/help/errors/continuation-closed.md +9 -12
- package/help/errors/database-auth-invalid.md +1 -1
- package/help/errors/delegation-conflict.md +24 -0
- package/help/errors/file-list-truncated.md +45 -0
- package/help/errors/full-read-required.md +49 -0
- package/help/errors/github-account-not-allowed.md +4 -0
- package/help/errors/graph-incomplete.md +43 -0
- package/help/errors/graph-limit.md +43 -0
- package/help/errors/host-provider-error.md +40 -0
- package/help/errors/host-tool-failed.md +36 -0
- package/help/errors/mcp-call-limit.md +22 -0
- package/help/errors/mcp-call-timeout.md +22 -0
- package/help/errors/mcp-server-auth-failed.md +22 -0
- package/help/errors/mcp-server-credentials-unavailable.md +45 -0
- package/help/errors/mcp-server-error.md +28 -0
- package/help/errors/mcp-server-unreachable.md +22 -0
- package/help/errors/mcp-servers-off.md +21 -0
- package/help/errors/mcp-tool-not-allowed.md +26 -0
- package/help/errors/mcp-tool-removed.md +22 -0
- package/help/errors/mcp-unavailable.md +25 -0
- package/help/errors/merge-conflict.md +49 -0
- package/help/errors/native-sandbox-capacity.md +1 -1
- package/help/errors/native-sandbox-deadline-exceeded.md +1 -1
- package/help/errors/native-sandbox-docker-failed.md +1 -1
- package/help/errors/native-sandbox-gateway-error.md +20 -0
- package/help/errors/native-sandbox-gateway-unavailable.md +1 -1
- package/help/errors/native-sandbox-image-not-pinned.md +1 -1
- package/help/errors/native-sandbox-isolation-mismatch.md +1 -1
- package/help/errors/native-sandbox-launch-abandoned.md +21 -0
- package/help/errors/native-sandbox-network-unenforced.md +1 -1
- package/help/errors/native-sandbox-requires-catalog.md +1 -1
- package/help/errors/native-sandbox-unavailable.md +1 -1
- package/help/errors/native-sandbox-warm-delivery-failed.md +1 -1
- package/help/errors/native-sandbox-worker-exited.md +4 -3
- package/help/errors/native-sandbox-worker-lost.md +1 -1
- package/help/errors/native-sandbox-worker-unready.md +1 -1
- package/help/errors/package-not-allowed-pending.md +52 -0
- package/help/errors/package-not-allowed.md +51 -0
- package/help/errors/package-refusals.md +43 -0
- package/help/errors/patch-cursor-malformed.md +31 -0
- package/help/errors/repository-not-listed.md +36 -0
- package/help/errors/repository-required.md +36 -0
- package/help/errors/run-lost.md +39 -0
- package/help/errors/run-transcript-download.md +44 -0
- package/help/errors/secret-in-value.md +69 -0
- package/help/errors/target-merge.md +40 -0
- package/help/errors/tool-timeout.md +38 -0
- package/help/fix-merge-conflicts.md +73 -0
- package/help/github-app-setup.md +132 -0
- package/help/github.md +22 -0
- package/help/host-providers.md +40 -0
- package/help/identity-and-access.md +6 -1
- package/help/jira.md +23 -6
- package/help/knowledge.md +16 -7
- package/help/local-repositories.md +1 -1
- package/help/low-power-mode.md +7 -1
- package/help/mcp-servers.md +73 -0
- package/help/mcp.md +7 -2
- package/help/merge-order-check.md +5 -0
- package/help/native-capabilities.md +55 -1
- package/help/native-sandbox.md +16 -2
- package/help/operating-agents.md +21 -0
- package/help/package-audit-mode.md +91 -0
- package/help/related-pull-requests.md +17 -10
- package/help/repo-instructions-and-skills.md +3 -1
- package/help/resume-runs-locally.md +134 -0
- package/help/review-fix-rounds.md +33 -1
- package/help/sharing-agents.md +59 -0
- package/help/slack-notifications.md +19 -5
- package/help/status-comments.md +31 -0
- package/help/stop-run.md +58 -0
- package/help/troubleshooting/budgets.md +28 -0
- package/help/troubleshooting/coding-workers.md +86 -7
- package/help/troubleshooting/debugging-agent-runs.md +29 -0
- package/package.json +18 -10
- package/prisma/migrations/20261016000000_registry_approved_accepted_advisories/migration.sql +3 -0
- package/prisma/migrations/20261016000001_mark_ready_when_passing/migration.sql +3 -0
- package/prisma/migrations/20261017000000_debug_trace_max_mb/migration.sql +4 -0
- package/prisma/migrations/20261018000000_dependency_cache/migration.sql +53 -0
- package/prisma/migrations/20261019000000_claude_max_output_tokens/migration.sql +5 -0
- package/prisma/migrations/20261021000000_pr_description_hash/migration.sql +4 -0
- package/prisma/migrations/20261022000000_dependency_snapshot_validation_metadata/migration.sql +4 -0
- package/prisma/migrations/20261023000000_package_audit_mode/migration.sql +27 -0
- package/prisma/migrations/20261024000000_budget_events/migration.sql +26 -0
- package/prisma/migrations/20261025000000_cache_aware_holds/migration.sql +9 -0
- package/prisma/migrations/20261026000000_budget_overrun/migration.sql +4 -0
- package/prisma/migrations/20261027000000_coding_run_request/migration.sql +1 -0
- package/prisma/migrations/20261028000000_native_gateway_review_reads/migration.sql +6 -0
- package/prisma/migrations/20261029000000_lead_survives_deploy/migration.sql +6 -0
- package/prisma/migrations/20261030000000_local_review_covered_sha/migration.sql +2 -0
- package/prisma/migrations/20261031000000_coding_run_budget_limit/migration.sql +9 -0
- package/prisma/migrations/20261101000000_run_transcripts/migration.sql +22 -0
- package/prisma/migrations/20261102000000_host_providers/migration.sql +56 -0
- package/prisma/migrations/20261104000000_coding_agent_repository_list/migration.sql +5 -0
- package/prisma/migrations/20261106000000_tool_timeout/migration.sql +4 -0
- package/prisma/migrations/20261107000000_mcp_servers/migration.sql +33 -0
- package/prisma/migrations/20261108000000_coding_mcp/migration.sql +5 -0
- package/prisma/migrations/20261109000000_task_run_index/migration.sql +3 -0
- package/prisma/schema.prisma +468 -109
- package/scripts/git-askpass.sh +1 -1
- package/dist/sandbox/generated/zod-to-json-schema.bundle.js +0 -5
package/dist/core/runner.d.ts
CHANGED
|
@@ -17,7 +17,7 @@
|
|
|
17
17
|
* reasons about cost, not one here plus one in the engine.
|
|
18
18
|
*/
|
|
19
19
|
import { z } from "zod";
|
|
20
|
-
import
|
|
20
|
+
import { Prisma, type PrismaClient, type Run, type RunTrigger } from "#prisma";
|
|
21
21
|
import type { ProviderRegistry } from "../providers/index.js";
|
|
22
22
|
import type { EngineProgress, EngineResult, LoadedTool } from "../providers/engine/types.js";
|
|
23
23
|
import { RunOwnershipLostError, type StepRunner } from "../providers/engine/types.js";
|
|
@@ -26,64 +26,69 @@ import type { safeFetch } from "../sandbox/safe-fetch.js";
|
|
|
26
26
|
import { type RunDrivability, type WorkerLauncher } from "../native-worker/gateway.js";
|
|
27
27
|
import { type WorkerInput } from "../native-worker/protocol.js";
|
|
28
28
|
import type { PrismaGatewayLedger } from "../native-worker/ledger.js";
|
|
29
|
+
import { type SecretsAccessor } from "./secrets.js";
|
|
29
30
|
import type { Executor } from "../providers/executor/types.js";
|
|
30
31
|
import type { ReviewHostRegistry } from "../providers/review-host/types.js";
|
|
31
32
|
import type { IssueTrackerRegistry } from "../providers/issue-tracker/types.js";
|
|
32
33
|
import { type RepositoryLink } from "./review-host-tools.js";
|
|
33
34
|
import { type IssueProjectLink } from "./issue-tracker-tools.js";
|
|
35
|
+
import { ReviewReadLedger } from "./review-reads.js";
|
|
34
36
|
import { type RepoAccessGate } from "./repo-access.js";
|
|
37
|
+
import { type BudgetEventView } from "./budget-events.js";
|
|
38
|
+
export declare const runnerLog: import("pino").Logger<never, boolean>;
|
|
39
|
+
/**
|
|
40
|
+
* Sub-agent dispatch uses one synthetic tool per declared child, named by the
|
|
41
|
+
* boundName it's attached
|
|
42
|
+
* under. The parent's tool call blocks until the child run reaches a
|
|
43
|
+
* terminal state, and its result comes back as this tool call's result.
|
|
44
|
+
* A run delegates at most maxDelegationsPerRun times (default one: a
|
|
45
|
+
* classifier deciding plan-vs-implement commits to exactly one child) and to
|
|
46
|
+
* each child at most once. With Agent.parallelDelegations, the delegate_to_*
|
|
47
|
+
* calls of one turn run at the same time (NativeEngine.runToolCalls); their
|
|
48
|
+
* admission (the checks below plus the child row) is still one at a time,
|
|
49
|
+
* through the run's delegation gate, and a child refused for budget while a
|
|
50
|
+
* sibling runs waits for that sibling to finish (delegation-siblings.ts).
|
|
51
|
+
*
|
|
52
|
+
* Two execution paths depending on the child's `kind`:
|
|
53
|
+
* - `native`: calls `executeRun` directly, bypassing any `Executor` — the
|
|
54
|
+
* created Run row is never marked `executionManaged`, so the reconciler
|
|
55
|
+
* leaves it alone even if it runs long, the same way an attended
|
|
56
|
+
* `wardby run` foreground execution does. Fast, in-process, no durability
|
|
57
|
+
* machinery needed for a native turn loop.
|
|
58
|
+
* - `coding`: a coding-kind child needs a real Docker container (Codex),
|
|
59
|
+
* which `executeRun` explicitly refuses to drive itself. Goes through
|
|
60
|
+
* `dispatchRun` (the same persistence path webhooks/trigger_agent use)
|
|
61
|
+
* with `awaitExecution: true`, so the already-existing `RoutingExecutor`
|
|
62
|
+
* sends it to the container backend and this call blocks until it's
|
|
63
|
+
* terminal — reusing proven infrastructure rather than re-implementing
|
|
64
|
+
* container dispatch. Marked `executionManaged: true` here (unlike the
|
|
65
|
+
* native path) since a long-running container crash mid-dispatch is
|
|
66
|
+
* exactly the case the reconciler exists for. Under the coding
|
|
67
|
+
* concurrency cap `Executor.start` can resolve with the child merely
|
|
68
|
+
* queued (still pending), so the call then polls the child row until it
|
|
69
|
+
* is terminal — see `waitForCodingChild`.
|
|
70
|
+
*
|
|
71
|
+
* The `delegate_to_` prefix lives in core/tool-names.ts, which reserves it
|
|
72
|
+
* so no user tool can be created under a name this dispatch would shadow.
|
|
73
|
+
*/
|
|
74
|
+
export declare function delegateToolDef(boundName: string, parallel: boolean, repositories?: readonly string[]): LoadedTool;
|
|
35
75
|
declare const DelegateArgs: z.ZodObject<{
|
|
36
76
|
task: z.ZodString;
|
|
37
77
|
datastoreRef: z.ZodOptional<z.ZodObject<{
|
|
38
78
|
name: z.ZodString;
|
|
39
79
|
key: z.ZodString;
|
|
40
|
-
},
|
|
41
|
-
|
|
42
|
-
key: string;
|
|
43
|
-
}, {
|
|
44
|
-
name: string;
|
|
45
|
-
key: string;
|
|
46
|
-
}>>;
|
|
47
|
-
grantParentMemoryKeys: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
|
|
80
|
+
}, z.core.$strict>>;
|
|
81
|
+
grantParentMemoryKeys: z.ZodOptional<z.ZodArray<z.ZodString>>;
|
|
48
82
|
continuePriorRun: z.ZodOptional<z.ZodString>;
|
|
49
83
|
mergeOrder: z.ZodOptional<z.ZodNumber>;
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
mergeOrder?: number | undefined;
|
|
53
|
-
datastoreRef?: {
|
|
54
|
-
name: string;
|
|
55
|
-
key: string;
|
|
56
|
-
} | undefined;
|
|
57
|
-
grantParentMemoryKeys?: string[] | undefined;
|
|
58
|
-
continuePriorRun?: string | undefined;
|
|
59
|
-
}, {
|
|
60
|
-
task: string;
|
|
61
|
-
mergeOrder?: number | undefined;
|
|
62
|
-
datastoreRef?: {
|
|
63
|
-
name: string;
|
|
64
|
-
key: string;
|
|
65
|
-
} | undefined;
|
|
66
|
-
grantParentMemoryKeys?: string[] | undefined;
|
|
67
|
-
continuePriorRun?: string | undefined;
|
|
68
|
-
}>;
|
|
84
|
+
repository: z.ZodOptional<z.ZodString>;
|
|
85
|
+
}, z.core.$strict>;
|
|
69
86
|
/** A delegate_to_* call's arguments, or the tool result refusing them. */
|
|
70
87
|
export declare function parseDelegateArgs(argsJson: string): {
|
|
71
88
|
args: z.infer<typeof DelegateArgs>;
|
|
72
89
|
} | {
|
|
73
90
|
refusal: string;
|
|
74
91
|
};
|
|
75
|
-
/**
|
|
76
|
-
* At most `limit` dispatches per run (default one: a classifier deciding plan-vs-implement
|
|
77
|
-
* commits to exactly one child), and never the same child twice, so a retry can't leave two
|
|
78
|
-
* children racing on the same task. A delegation waiting for budget holds its place.
|
|
79
|
-
*/
|
|
80
|
-
export declare function delegationLimitRefusal(input: {
|
|
81
|
-
priorChildAgentIds: readonly string[];
|
|
82
|
-
waitingChildAgentIds: readonly string[];
|
|
83
|
-
childAgentId: string;
|
|
84
|
-
boundName: string;
|
|
85
|
-
limit: number;
|
|
86
|
-
}): string | null;
|
|
87
92
|
declare const DELEGATION_CHILD_SELECT: {
|
|
88
93
|
readonly id: true;
|
|
89
94
|
readonly kind: true;
|
|
@@ -95,6 +100,8 @@ declare const DELEGATION_CHILD_SELECT: {
|
|
|
95
100
|
readonly select: {
|
|
96
101
|
readonly allowWebhookTaskOverride: true;
|
|
97
102
|
readonly timeoutSec: true;
|
|
103
|
+
readonly repository: true;
|
|
104
|
+
readonly baseRef: true;
|
|
98
105
|
};
|
|
99
106
|
};
|
|
100
107
|
};
|
|
@@ -125,7 +132,7 @@ export declare function nativeChildResult(run: Pick<Run, "status" | "finalText"
|
|
|
125
132
|
* also satisfies `dispatch.ts`'s `DispatchDb`, needed for dispatching a
|
|
126
133
|
* coding-kind sub-agent from inside a running native turn loop.
|
|
127
134
|
*/
|
|
128
|
-
export type RunnerDb = Pick<PrismaClient, "agent" | "run" | "agentTool" | "agentSecret" | "agentDatastore" | "budgetGroup" | "agentSubAgent" | "resourceGrant" | "codingRun" | "task" | "webhook" | "$transaction" | "$queryRaw" | "agentRepository" | "runModelUsage" | "runHostCheck" | "runHostStatus" | "hostIdentity" | "agentIssueProject" | "issuePullRequest" | "runIssueStatus" | "issueFingerprint" | "workItem" | "deferredReview" | "runAttribution">;
|
|
135
|
+
export type RunnerDb = Pick<PrismaClient, "agent" | "run" | "agentTool" | "agentSecret" | "agentMcpServer" | "secret" | "agentDatastore" | "budgetGroup" | "agentSubAgent" | "resourceGrant" | "codingRun" | "registryFetch" | "registryAuditRecord" | "task" | "webhook" | "$transaction" | "$queryRaw" | "agentRepository" | "runModelUsage" | "runHostCheck" | "runBudgetEvent" | "runHostStatus" | "hostIdentity" | "agentIssueProject" | "issuePullRequest" | "runIssueStatus" | "issueFingerprint" | "workItem" | "deferredReview" | "runAttribution">;
|
|
129
136
|
/** The providers a native run needs; `executor`, `reviewHosts` and `issueTrackers` are optional capabilities. */
|
|
130
137
|
export type NativeRunProviders = Pick<ProviderRegistry, "llm" | "engine" | "datastore" | "secrets" | "memory"> & {
|
|
131
138
|
executor?: ProviderRegistry["executor"];
|
|
@@ -152,6 +159,38 @@ export declare class RunCancelledError extends Error {
|
|
|
152
159
|
}
|
|
153
160
|
/** Re-exported beside RunCancelledError: thrown by a step runner when another attempt owns the run. */
|
|
154
161
|
export { RunOwnershipLostError };
|
|
162
|
+
/** Options for a durable executor's use of stopAwareStep (DbosExecutor); inline runs pass none. */
|
|
163
|
+
export interface StopAwareStepOptions {
|
|
164
|
+
/**
|
|
165
|
+
* A failed read lets the step run, so the check adds no new way for a run to fail. The cost: in an
|
|
166
|
+
* attempt that is already superseded, a step whose read fails still runs (at most that one step,
|
|
167
|
+
* since the next read that succeeds fences it).
|
|
168
|
+
*/
|
|
169
|
+
failOpen?: boolean;
|
|
170
|
+
/**
|
|
171
|
+
* Fences an attempt whose workflow the run has moved off. When the run's `executionWorkflowId`
|
|
172
|
+
* was forked from the workflow driving this attempt (a takeover recorded its fork), this attempt
|
|
173
|
+
* no longer owns the run and stops with a RunOwnershipLostError: no terminal write, no settle side
|
|
174
|
+
* effects. Only a fork *of this workflow* fences it: a null id, or an older id (a fork of a fork
|
|
175
|
+
* whose own id is not recorded yet, or failed to record), fences nothing, so a takeover's fork is
|
|
176
|
+
* never fenced out of the run it drives.
|
|
177
|
+
*/
|
|
178
|
+
ownership?: {
|
|
179
|
+
/** The workflow driving this attempt, read when the step is called. */
|
|
180
|
+
workflowId: () => string | undefined;
|
|
181
|
+
/** Whether `recorded` was forked, directly or through further forks, from `own`. */
|
|
182
|
+
forkedFrom: (recorded: string, own: string) => boolean;
|
|
183
|
+
};
|
|
184
|
+
}
|
|
185
|
+
/**
|
|
186
|
+
* A step runner made to notice a stop. Before each step this reads the run's own row: once anything
|
|
187
|
+
* else has made it terminal (stop_run, an MCP task's cancel, a parent run's stop, the reconciler),
|
|
188
|
+
* the run stops at this boundary with a RunCancelledError. The terminal row is never rewritten
|
|
189
|
+
* (finishRunClaimed matches zero rows), so the stop keeps its reason. Inline runs need it because
|
|
190
|
+
* nothing else interrupts their steps. DbosExecutor wraps its own step runner in it too: DBOS stops
|
|
191
|
+
* only a workflow it was told to cancel, and stop() can name only the workflow the run records.
|
|
192
|
+
*/
|
|
193
|
+
export declare function stopAwareStep(db: Pick<RunnerDb, "run">, runId: string, inner?: StepRunner, options?: StopAwareStepOptions): StepRunner;
|
|
155
194
|
/**
|
|
156
195
|
* Why a sandbox-mode native run is not executed here. The runner only ever
|
|
157
196
|
* executes native runs in the control plane; a run whose snapshot says
|
|
@@ -192,10 +231,12 @@ export interface WaitForCodingChildOptions {
|
|
|
192
231
|
now?: () => number;
|
|
193
232
|
sleep?: (ms: number) => Promise<void>;
|
|
194
233
|
}
|
|
234
|
+
/** The leading snake_case code of an error message (`code: sentence`); messages can carry internals. */
|
|
195
235
|
/**
|
|
196
236
|
* What a coding sub-agent's run tells the parent run's model. A run refused
|
|
197
237
|
* over its services carries the host sentence (never the raw Run.error), so
|
|
198
|
-
* the parent can pass it on — for a mention, that is the requester.
|
|
238
|
+
* the parent can pass it on — for a mention, that is the requester. A failed
|
|
239
|
+
* run carries only its error code, so the parent can say why without seeing internals.
|
|
199
240
|
*/
|
|
200
241
|
export declare function codingChildResult(run: {
|
|
201
242
|
status: string;
|
|
@@ -204,7 +245,12 @@ export declare function codingChildResult(run: {
|
|
|
204
245
|
tokensIn: number;
|
|
205
246
|
tokensOut: number;
|
|
206
247
|
error: string | null;
|
|
207
|
-
}, codingResult?: unknown
|
|
248
|
+
}, codingResult?: unknown,
|
|
249
|
+
/** The child's recorded budget refusal (loadBudgetEvent), if any. */
|
|
250
|
+
budgetEvent?: {
|
|
251
|
+
event: BudgetEventView;
|
|
252
|
+
agentName: string;
|
|
253
|
+
} | null): string;
|
|
208
254
|
/**
|
|
209
255
|
* Polls a dispatched coding child until it reaches a terminal status. Needed
|
|
210
256
|
* because a queued child (every concurrency slot taken) makes Executor.start
|
|
@@ -243,8 +289,6 @@ export interface LoadNativeRunOptions {
|
|
|
243
289
|
* order diverges from the record.
|
|
244
290
|
*/
|
|
245
291
|
export declare function loadNativeRun(options: LoadNativeRunOptions): Promise<{
|
|
246
|
-
repositoryLinks: RepositoryLink[];
|
|
247
|
-
issueProjectLinks: IssueProjectLink[];
|
|
248
292
|
agent: {
|
|
249
293
|
untrustedContext?: string | undefined;
|
|
250
294
|
effort?: "low" | "medium" | "high" | "xhigh" | "max" | undefined;
|
|
@@ -256,6 +300,7 @@ export declare function loadNativeRun(options: LoadNativeRunOptions): Promise<{
|
|
|
256
300
|
tools: LoadedTool[];
|
|
257
301
|
toolsByName: {
|
|
258
302
|
[k: string]: {
|
|
303
|
+
timeoutMs?: number | undefined;
|
|
259
304
|
code: string;
|
|
260
305
|
paramsZod: string;
|
|
261
306
|
allowedSecrets: string[];
|
|
@@ -264,6 +309,9 @@ export declare function loadNativeRun(options: LoadNativeRunOptions): Promise<{
|
|
|
264
309
|
allowedSharedDatastorePrefixes: Record<string, string[]>;
|
|
265
310
|
};
|
|
266
311
|
};
|
|
312
|
+
mcpTools?: import("./mcp-tools.js").McpToolPin[] | undefined;
|
|
313
|
+
repositoryLinks: RepositoryLink[];
|
|
314
|
+
issueProjectLinks: IssueProjectLink[];
|
|
267
315
|
parallelDelegations?: boolean | undefined;
|
|
268
316
|
maxDelegationsPerRun?: number | undefined;
|
|
269
317
|
agentId: string;
|
|
@@ -290,11 +338,26 @@ export interface NativeRunToolsOptions {
|
|
|
290
338
|
reviewHosts: ReviewHostRegistry | undefined;
|
|
291
339
|
repoAccess: RepoAccessGate | undefined;
|
|
292
340
|
issueTrackers: IssueTrackerRegistry | undefined;
|
|
341
|
+
/** What earlier requests of this run read (a sandbox run's gateway restores it per request); fresh otherwise. */
|
|
342
|
+
reviewReads?: ReviewReadLedger;
|
|
343
|
+
/** A sandboxed run's session deadline (the gateway's); an MCP tool call never runs past it. */
|
|
344
|
+
deadlineAt?: Date;
|
|
293
345
|
}
|
|
294
346
|
/** An attached user tool as the load step pinned it: its code, schema, and consented capabilities. */
|
|
295
347
|
export type LoadedUserTool = LoadedNativeRun["toolsByName"][string];
|
|
296
|
-
/**
|
|
297
|
-
|
|
348
|
+
/**
|
|
349
|
+
* A built-in tool's handler for one call; built-ins run on the trusted side, never in a sandbox.
|
|
350
|
+
* `callId` is the model's id for the tool call, when the caller has one: a delegation keys its
|
|
351
|
+
* child on it (Run.parentCallId), so a re-executed call re-attaches instead of dispatching twice.
|
|
352
|
+
*/
|
|
353
|
+
export type BuiltinToolHandler = (argsJson: string, callId?: string) => Promise<string>;
|
|
354
|
+
/**
|
|
355
|
+
* Every value of the secrets `names` (readable or brokered; a SigV4 secret's key and token alone
|
|
356
|
+
* too, the same set the in-process host redacts), as a redaction list. Rejects when ANY read
|
|
357
|
+
* fails: a list missing one secret would let that secret through, so a caller treats a rejection
|
|
358
|
+
* as "no list" and fails closed. A secret with no value contributes nothing.
|
|
359
|
+
*/
|
|
360
|
+
export declare function readRedactionValues(accessor: SecretsAccessor, names: readonly string[]): Promise<string[]>;
|
|
298
361
|
/**
|
|
299
362
|
* One attempt's tool surface for a native run. `builtinHandler(name)` is the
|
|
300
363
|
* single source of truth for which names are trusted built-ins (memory,
|
|
@@ -304,6 +367,7 @@ export type BuiltinToolHandler = (argsJson: string) => Promise<string>;
|
|
|
304
367
|
*/
|
|
305
368
|
export declare function createNativeRunTools(options: NativeRunToolsOptions): {
|
|
306
369
|
toolsByName: Map<string, {
|
|
370
|
+
timeoutMs?: number | undefined;
|
|
307
371
|
code: string;
|
|
308
372
|
paramsZod: string;
|
|
309
373
|
allowedSecrets: string[];
|
|
@@ -315,7 +379,14 @@ export declare function createNativeRunTools(options: NativeRunToolsOptions): {
|
|
|
315
379
|
privilegedHostFor: (name: string, signal: AbortSignal, redactSecretValues?: readonly string[]) => PrivilegedHost | undefined;
|
|
316
380
|
readableSecretValues: (name: string) => Promise<string[]>;
|
|
317
381
|
runUserTool: (name: string, argsJson: string) => Promise<string>;
|
|
318
|
-
runSandboxTool: (name: string, argsJson: string) => Promise<string>;
|
|
382
|
+
runSandboxTool: (name: string, argsJson: string, callId?: string) => Promise<string>;
|
|
383
|
+
toolTimeoutMs: (name: string) => number | undefined;
|
|
384
|
+
watchStop: () => {
|
|
385
|
+
signal: AbortSignal;
|
|
386
|
+
done: () => void;
|
|
387
|
+
};
|
|
388
|
+
/** Every secret value of the agent's attached MCP servers (never handed to a worker; redaction only). */
|
|
389
|
+
mcpSecretValues: () => Promise<string[]>;
|
|
319
390
|
};
|
|
320
391
|
/**
|
|
321
392
|
* Live progress for observers (MCP get_run, the viewer). Absolute totals, so a DBOS replay
|
|
@@ -323,6 +394,8 @@ export declare function createNativeRunTools(options: NativeRunToolsOptions): {
|
|
|
323
394
|
* tree's shared budget (computeRunTreeSpend) then counts a running parent's spend so far, as it
|
|
324
395
|
* already does for coding runs, whose proxy ledger writes their totals live. Best-effort: a
|
|
325
396
|
* failed write only delays what observers see, and finishRun writes the final totals anyway.
|
|
397
|
+
* A cancelled run takes them too: a stop lands mid-step, and that step's spend is real, while the
|
|
398
|
+
* cancelled run's terminal write (failNativeRun) records no totals of its own.
|
|
326
399
|
*/
|
|
327
400
|
export declare function recordNativeRunProgress(db: RunnerDb, runId: string, progress: EngineProgress): Promise<void>;
|
|
328
401
|
/** What finishing a native run needs: the run, and the integrations its trigger may have opened. */
|
|
@@ -338,6 +411,19 @@ export interface NativeRunFinishContext {
|
|
|
338
411
|
export declare function finishNativeRun(ctx: NativeRunFinishContext, model: string, result: EngineResult): Promise<Run>;
|
|
339
412
|
/** The backstop terminal write for a run that threw. A cancellation is not a failure: it carries the operator's own reason. */
|
|
340
413
|
export declare function failNativeRun(ctx: NativeRunFinishContext, err: unknown): Promise<Run>;
|
|
414
|
+
/** The terminal write for a run that cannot continue (it ends `lost` with `reason`), then the same settle path. */
|
|
415
|
+
export declare function loseNativeRun(ctx: NativeRunFinishContext, reason: string): Promise<Run>;
|
|
416
|
+
/** How often a user tool call in progress checks whether its run was stopped. */
|
|
417
|
+
export declare const TOOL_STOP_POLL_MS = 2000;
|
|
418
|
+
/**
|
|
419
|
+
* Aborts `signal` once the run is no longer drivable (stop_run, a cancelled task, a parent's
|
|
420
|
+
* stop). Polls every `intervalMs`, starting one interval in, so a quick call reads nothing; a
|
|
421
|
+
* failed read changes nothing and the next tick reads again. `done()` stops the polling.
|
|
422
|
+
*/
|
|
423
|
+
export declare function watchRunStop(db: RunnerDb, runId: string, intervalMs?: number): {
|
|
424
|
+
signal: AbortSignal;
|
|
425
|
+
done: () => void;
|
|
426
|
+
};
|
|
341
427
|
/** Where a run stands for the native gateway: still drivable, cancelled (its task), or otherwise ended. */
|
|
342
428
|
export declare function runDrivability(db: RunnerDb, runId: string): Promise<RunDrivability>;
|
|
343
429
|
/**
|
|
@@ -347,7 +433,7 @@ export declare function runDrivability(db: RunnerDb, runId: string): Promise<Run
|
|
|
347
433
|
*/
|
|
348
434
|
export declare function sandboxWorkerInput(runId: string, loaded: LoadedNativeRun, tools: Pick<ReturnType<typeof createNativeRunTools>, "builtinHandler" | "toolsByName">): WorkerInput;
|
|
349
435
|
/** What the durable delegation needs from the gateway ledger (src/native-worker/ledger.ts). */
|
|
350
|
-
export type DelegationLedger = Pick<PrismaGatewayLedger, "claim" | "recordResult" | "setDelegation" | "delegation" | "
|
|
436
|
+
export type DelegationLedger = Pick<PrismaGatewayLedger, "claim" | "recordResult" | "setDelegation" | "delegation" | "waitingDelegations">;
|
|
351
437
|
export interface DurableDelegationContext {
|
|
352
438
|
runId: string;
|
|
353
439
|
existingRun: Run;
|
|
@@ -357,6 +443,8 @@ export interface DurableDelegationContext {
|
|
|
357
443
|
issueTrackers: IssueTrackerRegistry | undefined;
|
|
358
444
|
ledger: DelegationLedger;
|
|
359
445
|
sessionId: string;
|
|
446
|
+
/** Every secret value the run can read, to redact its logs by exact value (unset or failing: nothing is logged of an error but its name and code). */
|
|
447
|
+
secretValues?: () => Promise<string[]>;
|
|
360
448
|
/** How long one call waits on the child before answering `pending` (the worker calls again). */
|
|
361
449
|
pollWindowMs?: number;
|
|
362
450
|
pollIntervalMs?: number;
|
|
@@ -406,6 +494,8 @@ export type SandboxSessionOutcome = {
|
|
|
406
494
|
input: WorkerInput;
|
|
407
495
|
capability: string;
|
|
408
496
|
sessionId: string;
|
|
497
|
+
/** Every secret value the run's user tools may read, read on demand (never stored); rejects when any read fails. */
|
|
498
|
+
secretValues: () => Promise<string[]>;
|
|
409
499
|
}
|
|
410
500
|
/** The run ended before a worker was needed (already terminal, or failed at load). */
|
|
411
501
|
| {
|
|
@@ -431,6 +521,12 @@ export declare function createSandboxSession(options: {
|
|
|
431
521
|
*/
|
|
432
522
|
networkReady?: boolean;
|
|
433
523
|
}): Promise<SandboxSessionOutcome>;
|
|
524
|
+
/**
|
|
525
|
+
* Every secret value the sandbox run's user tools `names` may read (readable or brokered): what its
|
|
526
|
+
* worker can be handed, so what the gateway checks its cause codes against and a launcher masks
|
|
527
|
+
* from the worker's output tail. Rejects when any read fails (readRedactionValues).
|
|
528
|
+
*/
|
|
529
|
+
export declare function userToolSecretValues(tools: Pick<ReturnType<typeof createNativeRunTools>, "readableSecretValues">, names: readonly string[]): Promise<string[]>;
|
|
434
530
|
/** Run.executionBackend for a sandbox-mode run whose worker is (or was) launched. */
|
|
435
531
|
export declare const NATIVE_SANDBOX_BACKEND = "native-sandbox";
|
|
436
532
|
/** The stored form of a sandbox capability: never the token itself. */
|