@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
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
---
|
|
2
|
+
id: errors/file-list-truncated
|
|
3
|
+
title: APPROVE refused on a cut file list (file_list_truncated)
|
|
4
|
+
summary: The pull request has more changed files than repo_pr_read lists, so repo_publish_review refuses the agent's APPROVE; it can still request changes or comment.
|
|
5
|
+
audience: operator
|
|
6
|
+
tags: [error, code-review, repo_publish_review, repo_pr_read, file_list_truncated, fileListComplete, large-pull-request]
|
|
7
|
+
appliesTo: ">=0.7.0"
|
|
8
|
+
---
|
|
9
|
+
|
|
10
|
+
# APPROVE refused on a cut file list
|
|
11
|
+
|
|
12
|
+
`repo_publish_review` returns the tool error `file_list_truncated` when a
|
|
13
|
+
review agent publishes `APPROVE` on a pull request head after a
|
|
14
|
+
`repo_pr_read` of that head in the run reported `fileListComplete: false`,
|
|
15
|
+
and no complete read of the whole pull request (without `sinceSha`) has
|
|
16
|
+
followed. The host lists at most
|
|
17
|
+
1,000 changed files of a pull request (a GitHub compare, used when the agent
|
|
18
|
+
passes `sinceSha`, lists at most 300). Files past that cut never reach the
|
|
19
|
+
agent, so an approval would cover code nobody reviewed.
|
|
20
|
+
|
|
21
|
+
Nothing is published and nothing else changes. `CHANGES_REQUESTED` and
|
|
22
|
+
`COMMENT` are still allowed on the same head.
|
|
23
|
+
|
|
24
|
+
## What the agent should do
|
|
25
|
+
|
|
26
|
+
- If it passed `sinceSha`, call `repo_pr_read` again without it. When the
|
|
27
|
+
whole pull request fits in the list, `fileListComplete` becomes `true` and
|
|
28
|
+
`APPROVE` is allowed again (once every listed source, test or config file
|
|
29
|
+
is read; see `unread_files`). A complete `sinceSha` read does not lift the
|
|
30
|
+
refusal.
|
|
31
|
+
- Otherwise publish `CHANGES_REQUESTED` on what it read, and say the pull
|
|
32
|
+
request is too large to review in full. That review does not cover the
|
|
33
|
+
head, so a later run cannot approve it through a `sinceSha` delta either
|
|
34
|
+
(see `full_read_required`). `COMMENT` completes the check as
|
|
35
|
+
neutral, which branch protection treats as passing.
|
|
36
|
+
|
|
37
|
+
## What the owner does
|
|
38
|
+
|
|
39
|
+
Split the change into smaller pull requests, each under the limit, or have
|
|
40
|
+
a person review it. The limit is the same for GitHub and local repositories.
|
|
41
|
+
|
|
42
|
+
## Related
|
|
43
|
+
|
|
44
|
+
- [Run GitHub code-review agents](../code-review-agents.md)
|
|
45
|
+
- [Large pull requests](../../docs/code-review-agents.md#large-pull-requests)
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
---
|
|
2
|
+
id: errors/full-read-required
|
|
3
|
+
title: APPROVE refused after a partial compare (full_read_required)
|
|
4
|
+
summary: The review agent compared the pull request from a commit wardby did not vouch for, so it never saw the full change; it must read the whole pull request before approving.
|
|
5
|
+
audience: operator
|
|
6
|
+
tags: [error, code-review, repo_publish_review, repo_pr_read, full_read_required, sinceSha, lastCoveredSha]
|
|
7
|
+
appliesTo: ">=0.7.0"
|
|
8
|
+
---
|
|
9
|
+
|
|
10
|
+
# APPROVE refused after a partial compare
|
|
11
|
+
|
|
12
|
+
`repo_publish_review` returns the tool error `full_read_required` when a
|
|
13
|
+
review agent publishes `APPROVE` on a pull request head and, in that run:
|
|
14
|
+
|
|
15
|
+
- no `repo_pr_read` of the head was made without `sinceSha`, and
|
|
16
|
+
- a `repo_pr_read` of the head passed a `sinceSha` other than the
|
|
17
|
+
`lastCoveredSha` that same read returned.
|
|
18
|
+
|
|
19
|
+
A read with `sinceSha` lists only the files changed since that commit. Any
|
|
20
|
+
earlier commit of the branch is accepted as `sinceSha`, so a compare from a
|
|
21
|
+
commit wardby did not record as covered hides every change made before it.
|
|
22
|
+
`lastCoveredSha` is the latest head this agent reviewed after reading every
|
|
23
|
+
file. Any other commit, such as one named in the pull request's text, or a
|
|
24
|
+
`lastReviewedSha` whose review did not read everything, is not a safe base. An approval would
|
|
25
|
+
then cover code nobody reviewed.
|
|
26
|
+
|
|
27
|
+
Nothing is published and nothing else changes. `CHANGES_REQUESTED` and
|
|
28
|
+
`COMMENT` are still allowed on the same head.
|
|
29
|
+
|
|
30
|
+
## What the agent should do
|
|
31
|
+
|
|
32
|
+
Call `repo_pr_read` without `sinceSha`, read the source, test and config
|
|
33
|
+
files it lists, and publish again. Or, for a re-review, pass the
|
|
34
|
+
`lastCoveredSha` the read returns as `sinceSha`. If neither is possible,
|
|
35
|
+
publish `CHANGES_REQUESTED` on what it read.
|
|
36
|
+
|
|
37
|
+
## What the owner does
|
|
38
|
+
|
|
39
|
+
Nothing, normally: the refusal tells the agent what to do. If it recurs, check
|
|
40
|
+
the reviewer's system prompt: it should pass only the `lastCoveredSha` that
|
|
41
|
+
`repo_pr_read` returned as `sinceSha`, never `lastReviewedSha` or a commit
|
|
42
|
+
named in the pull request's text. Reviewer prompts written before 0.7.0 pass
|
|
43
|
+
`lastReviewedSha`; update the re-review step from the shipped reviewer prompt.
|
|
44
|
+
|
|
45
|
+
## Related
|
|
46
|
+
|
|
47
|
+
- [Run GitHub code-review agents](../code-review-agents.md)
|
|
48
|
+
- [APPROVE refused on a cut file list: `file_list_truncated`](file-list-truncated.md)
|
|
49
|
+
- [Large pull requests](../../docs/code-review-agents.md#large-pull-requests)
|
|
@@ -19,6 +19,10 @@ existing link to it are refused.
|
|
|
19
19
|
|
|
20
20
|
- **The repository should be served:** an operator adds its owner's login to
|
|
21
21
|
`WARDBY_GITHUB_ALLOWED_ACCOUNTS` and restarts the server, then links it again.
|
|
22
|
+
- **Only sandboxed runs are refused** (the same link works for a
|
|
23
|
+
`control-plane` agent): the native sandbox gateway runs a sandboxed agent's
|
|
24
|
+
repository tools and needs the same `WARDBY_GITHUB_ALLOWED_ACCOUNTS` as the
|
|
25
|
+
control plane. Set it on both, then restart the gateway.
|
|
22
26
|
- **It should not:** use a repository owned by a served account, or another
|
|
23
27
|
wardby server with its own GitHub App.
|
|
24
28
|
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
---
|
|
2
|
+
id: errors/graph-incomplete
|
|
3
|
+
title: Package still being checked (wardby_graph_incomplete)
|
|
4
|
+
summary: The registry's walk reached the package but timed out before checking its versions, usually a slow upstream; retry shortly.
|
|
5
|
+
audience: operator
|
|
6
|
+
tags: [error, coding-agents, packages, allowlist, wardby_graph_incomplete]
|
|
7
|
+
appliesTo: ">=0.7.0"
|
|
8
|
+
---
|
|
9
|
+
|
|
10
|
+
# Package still being checked
|
|
11
|
+
|
|
12
|
+
`wardby_graph_incomplete` (HTTP 503) means the requested package is still
|
|
13
|
+
being checked against the allowed packages' dependency graph. It arises only when the
|
|
14
|
+
registry walks the graph: for a tarball download the run hasn't resolved (a
|
|
15
|
+
lockfile install), or for a metadata request after a lockfile plan of the run
|
|
16
|
+
failed or refused an entry. The walk reached
|
|
17
|
+
the name (an expanded version declares it) but timed out
|
|
18
|
+
(`REGISTRY_GRAPH_TIMEOUT_MS`) before the name's own versions were checked. That
|
|
19
|
+
is usually a slow or failing upstream for that package, or another request's
|
|
20
|
+
walk running out of time. The error message shows the walk's progress. It never
|
|
21
|
+
means the package is outside the graph. When a completed walk has failed
|
|
22
|
+
nodes, the answer is `wardby_upstream_error` or `wardby_audit_unavailable`
|
|
23
|
+
instead.
|
|
24
|
+
|
|
25
|
+
## What the agent should do
|
|
26
|
+
|
|
27
|
+
This is the one allowlist-related code worth retrying: try again shortly (npm
|
|
28
|
+
retries a 5xx on its own). If it keeps happening, report the package so its
|
|
29
|
+
owner can allowlist it directly.
|
|
30
|
+
|
|
31
|
+
## What the owner does
|
|
32
|
+
|
|
33
|
+
If retries do not clear it, add the package to
|
|
34
|
+
`codingProfile.packageAllowlist` with `update_agent` (needs
|
|
35
|
+
`packages:approve` or `agents:admin`).
|
|
36
|
+
|
|
37
|
+
## Related
|
|
38
|
+
|
|
39
|
+
- [Package not reached: `wardby_package_not_allowed_pending`](package-not-allowed-pending.md)
|
|
40
|
+
- [Not allowed: `wardby_package_not_allowed`](package-not-allowed.md)
|
|
41
|
+
- [Graph limit: `wardby_graph_limit`](graph-limit.md)
|
|
42
|
+
- [Package audit mode](../package-audit-mode.md): find out which packages a task needs without refusals, for a limited time.
|
|
43
|
+
- [Coding packages](../coding-packages.md)
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
---
|
|
2
|
+
id: errors/graph-limit
|
|
3
|
+
title: Dependency graph over the limit (wardby_graph_limit)
|
|
4
|
+
summary: The run's dependency graph walk hit REGISTRY_MAX_GRAPH_PACKAGES before reaching the package; the owner can allowlist it directly, or the operator can raise the limit.
|
|
5
|
+
audience: operator
|
|
6
|
+
tags: [error, coding-agents, packages, allowlist, wardby_graph_limit, REGISTRY_MAX_GRAPH_PACKAGES]
|
|
7
|
+
appliesTo: ">=0.7.0"
|
|
8
|
+
---
|
|
9
|
+
|
|
10
|
+
# Dependency graph over the limit
|
|
11
|
+
|
|
12
|
+
`wardby_graph_limit` (HTTP 403) means this run's dependency graph walk reached
|
|
13
|
+
its limit of `REGISTRY_MAX_GRAPH_PACKAGES` package names (default 3000, counted
|
|
14
|
+
per run and ecosystem) before it reached the requested package, so the package
|
|
15
|
+
may not be in the graph at all. The bound is permanent for the run, so
|
|
16
|
+
retrying does not help. It arises only when the
|
|
17
|
+
registry walks the graph: for a tarball download the run hasn't resolved (a
|
|
18
|
+
lockfile install), or for a metadata request after a lockfile plan of the run
|
|
19
|
+
failed or refused an entry.
|
|
20
|
+
|
|
21
|
+
Large frameworks (for example Expo) can exceed the limit, because the walk
|
|
22
|
+
follows every in-range kept version plus optional and peer dependencies, so its
|
|
23
|
+
graph is usually several times larger than a single install.
|
|
24
|
+
|
|
25
|
+
## What the agent should do
|
|
26
|
+
|
|
27
|
+
Stop retrying. Report the package so its owner can act.
|
|
28
|
+
|
|
29
|
+
## What the owner does
|
|
30
|
+
|
|
31
|
+
1. Open the agent with `get_agent`, then add the package (or the top-level package that needs it) to `codingProfile.packageAllowlist` with `update_agent`. This needs `packages:approve` or `agents:admin`.
|
|
32
|
+
2. Run the request again. Allowing a package name allows all of its kept versions, subject to the release-age and vulnerability checks.
|
|
33
|
+
|
|
34
|
+
The operator, not the owner, can instead raise `REGISTRY_MAX_GRAPH_PACKAGES` on the
|
|
35
|
+
coding proxy. A higher limit uses more proxy memory and walk time.
|
|
36
|
+
|
|
37
|
+
## Related
|
|
38
|
+
|
|
39
|
+
- [Package not reached: `wardby_package_not_allowed_pending`](package-not-allowed-pending.md)
|
|
40
|
+
- [Not allowed: `wardby_package_not_allowed`](package-not-allowed.md)
|
|
41
|
+
- [Still being checked: `wardby_graph_incomplete`](graph-incomplete.md)
|
|
42
|
+
- [Package audit mode](../package-audit-mode.md): find out which packages a task needs without refusals, for a limited time.
|
|
43
|
+
- [Coding packages](../../docs/coding-packages.md#operator-limits)
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
---
|
|
2
|
+
id: errors/host-provider-error
|
|
3
|
+
title: Host provider refused (host_provider_*)
|
|
4
|
+
summary: Registering a host provider, approving its tools or rotating its secrets was refused with a host_provider_ code. Each code has one cause and one fix.
|
|
5
|
+
audience: operator
|
|
6
|
+
tags: [host_provider_not_found, host_provider_in_use, host_provider_webhook_secret_short, host provider, error]
|
|
7
|
+
appliesTo: >=0.8.0
|
|
8
|
+
---
|
|
9
|
+
|
|
10
|
+
# Host provider refused
|
|
11
|
+
|
|
12
|
+
Nothing was changed. The message holds a code and secret or tool names, never a value.
|
|
13
|
+
|
|
14
|
+
## Registering or approving
|
|
15
|
+
|
|
16
|
+
- `host_provider_not_found`: no provider has that name. Check it, or register it.
|
|
17
|
+
- `host_provider_missing_operation`: a required operation has no tool. Bind it in `tools`.
|
|
18
|
+
- `host_provider_operation_not_bound`: that isn't a known operation, or this provider doesn't bind it. Check the name.
|
|
19
|
+
- `host_provider_tool_not_found`: you own no tool with that name. Create it, or fix the name.
|
|
20
|
+
- `host_provider_tool_deleted`: the tool behind this operation was deleted, so there's nothing to approve. Bind a new one by registering again.
|
|
21
|
+
- `host_provider_secret_not_found`: you own no secret with that name. Create it, or fix the name.
|
|
22
|
+
- `host_provider_secret_not_brokered`: a credential isn't brokered. Broker it with `set_secret_broker`.
|
|
23
|
+
- `host_provider_secret_hosts`: its broker config misses a host. Allow every API host, and the git host for a repository credential.
|
|
24
|
+
- `host_provider_secret_placement`: it isn't placed in a header or query parameter. Change its placement.
|
|
25
|
+
- `host_provider_permission_secret_shared`: the permission secret is also a credential, or is used by another provider. Give it its own secret.
|
|
26
|
+
- `host_provider_webhook_secret_shared`: the webhook secret is also a credential or permission secret, or is attached to an agent. Give it its own secret, and detach it.
|
|
27
|
+
- `host_provider_webhook_secret_short`: the webhook secret is under 16 characters. Store a longer one.
|
|
28
|
+
- `host_provider_username_is_secret`: `gitUsername` equals a credential's value. Use the host's token username.
|
|
29
|
+
|
|
30
|
+
## Using a provider's secrets
|
|
31
|
+
|
|
32
|
+
- `host_provider_webhook_secret_attached`: `attach_secret` or `wardby import` tried to attach a webhook secret to an agent. Don't: no tool may read it.
|
|
33
|
+
- `host_provider_secret_link_stale`: the browser link was requested before a provider used this secret. Request a new one with `hosts:admin`.
|
|
34
|
+
- `host_provider_webhook_secret_short` also refuses a rotation to a value under 16 characters. Enter a longer one; the same link still works.
|
|
35
|
+
|
|
36
|
+
## Deleting
|
|
37
|
+
|
|
38
|
+
- `host_provider_in_use`: an agent links to one of its repositories. Remove those links first.
|
|
39
|
+
|
|
40
|
+
See [Host providers](../host-providers.md).
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
---
|
|
2
|
+
id: errors/host-tool-failed
|
|
3
|
+
title: A host provider tool failed (host_tool_*, host_*)
|
|
4
|
+
summary: test_host_provider reports a fixed code for each failed operation; a tool's own message is dropped on purpose, so test the tool with dry_run_tool.
|
|
5
|
+
audience: operator
|
|
6
|
+
tags: [host_tool_failed, host_tool_timeout, host_tool_request_denied, host_tool_no_credential, host_forbidden]
|
|
7
|
+
appliesTo: >=0.8.0
|
|
8
|
+
---
|
|
9
|
+
|
|
10
|
+
# A host provider tool failed
|
|
11
|
+
|
|
12
|
+
## What happened
|
|
13
|
+
|
|
14
|
+
A tool's own text never reaches a report, a model or a comment, in case it holds something
|
|
15
|
+
private. So `test_host_provider` gives a fixed code for each operation.
|
|
16
|
+
|
|
17
|
+
## What to do
|
|
18
|
+
|
|
19
|
+
- `host_unauthorized` or `host_forbidden`: the host refused the credential. Check the token and
|
|
20
|
+
its scopes. On the permission lookup, a repository token is often not enough.
|
|
21
|
+
- `host_not_found`, `host_conflict`, `host_rate_limited` or `host_unavailable`: the host answered
|
|
22
|
+
with that state. Check the repository, pull request or ref you named, or try again later.
|
|
23
|
+
- `host_tool_no_credential`: no `credentials` entry covers this repository, the secret can't be
|
|
24
|
+
decrypted, or the secret is no longer brokered or no longer allows every API host.
|
|
25
|
+
- `host_tool_request_denied`: the tool left its API hosts or repository path, used the wrong
|
|
26
|
+
method, set a header other than `accept`, `content-type`, `if-match` or `if-none-match`, sent a
|
|
27
|
+
`_method` or `x-http-method*` query key, sent a path a server could read as something else (dot-only segments, encoded separators), or made
|
|
28
|
+
more than three requests. No request follows a redirect: fetch the `Location` yourself.
|
|
29
|
+
- `host_tool_invalid_result` or `host_tool_invalid_params`: the tool doesn't match its
|
|
30
|
+
operation's shape.
|
|
31
|
+
- `host_tool_failed`: the tool threw an error. `dry_run_tool` shows errors that don't involve the request, for example with a stubbed response. It has no `host` credential, so a tool using `secrets: ["host"]` fails there for another reason.
|
|
32
|
+
- `host_tool_timeout`: it ran out of time or instructions.
|
|
33
|
+
|
|
34
|
+
To fix a tool, call `update_tool`, then `approve_host_provider_tools`.
|
|
35
|
+
|
|
36
|
+
See [Host providers](../host-providers.md).
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
---
|
|
2
|
+
id: errors/mcp-call-limit
|
|
3
|
+
title: A coding run used up its remote tool calls (mcp_call_limit)
|
|
4
|
+
summary: A Claude Code or Codex run made more remote MCP tool calls than WARDBY_MCP_MAX_CALLS_PER_RUN allows, so further calls are refused.
|
|
5
|
+
audience: operator
|
|
6
|
+
tags: [mcp, mcp_call_limit, WARDBY_MCP_MAX_CALLS_PER_RUN, coding agent, claude code, codex, call limit]
|
|
7
|
+
appliesTo: ">=0.8.0"
|
|
8
|
+
---
|
|
9
|
+
|
|
10
|
+
# A coding run used up its remote tool calls
|
|
11
|
+
|
|
12
|
+
## What happened
|
|
13
|
+
|
|
14
|
+
A call to a remote MCP tool returned `mcp_call_limit`. Each coding run (Claude Code or Codex) may make a fixed number of remote MCP tool calls, `100` by default. Every call counts, including calls that failed or timed out. Once the run reaches the limit, further calls are refused; the agent sees the refusal as the tool's result and the run goes on.
|
|
15
|
+
|
|
16
|
+
## What to do
|
|
17
|
+
|
|
18
|
+
1. Check whether the agent is looping on a tool, for example retrying a call that keeps failing. Fix the cause, or tighten the agent's instructions.
|
|
19
|
+
2. If the run really needs more calls, ask the operator to raise `WARDBY_MCP_MAX_CALLS_PER_RUN` on the native gateway, which counts the calls, and on the server so both agree (a positive whole number; any other value stops start-up). Restart them to apply it.
|
|
20
|
+
3. Native agents are not limited by this setting.
|
|
21
|
+
|
|
22
|
+
See [Remote MCP servers](../mcp-servers.md) and [Remote MCP servers for coding agents](../../docs/mcp-servers.md#coding-agents).
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
---
|
|
2
|
+
id: errors/mcp-call-timeout
|
|
3
|
+
title: A remote tool call ran out of time (mcp_call_timeout)
|
|
4
|
+
summary: A remote tool call hit its callTimeoutMs or the run's deadline, or was stopped.
|
|
5
|
+
audience: operator
|
|
6
|
+
tags: [mcp, mcp_call_timeout, callTimeoutMs, timeout, stop_run, WARDBY_TOOL_MAX_TIMEOUT_MS]
|
|
7
|
+
appliesTo: ">=0.8.0"
|
|
8
|
+
---
|
|
9
|
+
|
|
10
|
+
# A remote tool call ran out of time
|
|
11
|
+
|
|
12
|
+
## What happened
|
|
13
|
+
|
|
14
|
+
A call returned `mcp_call_timeout`: the server did not answer within the call's limit, the run's own time limit was reached, or `stop_run` stopped the call. Only this call failed.
|
|
15
|
+
|
|
16
|
+
## What to do
|
|
17
|
+
|
|
18
|
+
1. If the server is slow, raise `callTimeoutMs` with `attach_mcp_server` (default `30000`).
|
|
19
|
+
2. The limit can't exceed `WARDBY_TOOL_MAX_TIMEOUT_MS`; ask the operator to raise that if needed.
|
|
20
|
+
3. A call is also cut to the run's deadline; give the agent a longer run time if needed.
|
|
21
|
+
|
|
22
|
+
See [Remote MCP servers](../mcp-servers.md).
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
---
|
|
2
|
+
id: errors/mcp-server-auth-failed
|
|
3
|
+
title: A remote tool server refused the credentials (mcp_server_auth_failed)
|
|
4
|
+
summary: The MCP server answered 401 or 403; fix the brokered secret or its placement.
|
|
5
|
+
audience: operator
|
|
6
|
+
tags: [mcp, mcp_server_auth_failed, 401, 403, brokered, set_secret_broker]
|
|
7
|
+
appliesTo: ">=0.8.0"
|
|
8
|
+
---
|
|
9
|
+
|
|
10
|
+
# A remote tool server refused the credentials
|
|
11
|
+
|
|
12
|
+
## What happened
|
|
13
|
+
|
|
14
|
+
A call, or a register or refresh, failed with `mcp_server_auth_failed`: the server answered HTTP 401 or 403 to the credentials Wardby sent.
|
|
15
|
+
|
|
16
|
+
## What to do
|
|
17
|
+
|
|
18
|
+
1. Check that the token behind the server's `secretNames` is current and has access to the tool.
|
|
19
|
+
2. Check the secret's placement with `set_secret_broker`, for example header `Authorization` with format `Bearer {value}`.
|
|
20
|
+
3. Update the secret, then `refresh_mcp_server` to confirm. Secret values are never shown in the error.
|
|
21
|
+
|
|
22
|
+
See [Remote MCP servers](../mcp-servers.md).
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
---
|
|
2
|
+
id: errors/mcp-server-credentials-unavailable
|
|
3
|
+
title: A remote tool server's credentials can't be decrypted (mcp_server_credentials_unavailable)
|
|
4
|
+
summary: A brokered secret of an MCP server exists but this Wardby server can't decrypt it; check SECRET_APP_KEY.
|
|
5
|
+
audience: operator
|
|
6
|
+
tags: [mcp, mcp_server_credentials_unavailable, credentials, decrypt, SECRET_APP_KEY, register_mcp_server]
|
|
7
|
+
appliesTo: ">=0.8.0"
|
|
8
|
+
---
|
|
9
|
+
|
|
10
|
+
# A remote tool server's credentials can't be decrypted
|
|
11
|
+
|
|
12
|
+
## What happened
|
|
13
|
+
|
|
14
|
+
An agent's MCP tool call returned `mcp_server_credentials_unavailable`, or `register_mcp_server`,
|
|
15
|
+
`update_mcp_server` or `refresh_mcp_server` failed with it (as an HTTP 500 error). The server's
|
|
16
|
+
brokered secret exists, but the Wardby process that made the call could not decrypt its stored value.
|
|
17
|
+
Wardby did not contact the MCP server. The same cause has knock-on effects elsewhere in the run:
|
|
18
|
+
posting and `delegate_to_*` tools return `secret_check_unavailable`, the run's final text and error
|
|
19
|
+
are withheld, and `get_run` withholds the request (see [Secrets and tools](../../docs/tool-secrets.md)).
|
|
20
|
+
|
|
21
|
+
The usual causes:
|
|
22
|
+
|
|
23
|
+
- The Wardby processes don't share one `SECRET_APP_KEY`. The control plane, the scheduler and the
|
|
24
|
+
native gateway each decrypt secrets, so a process started with another key can't read a secret
|
|
25
|
+
the others saved.
|
|
26
|
+
- `SECRET_APP_KEY` was changed after the secret was saved.
|
|
27
|
+
- The stored value is damaged.
|
|
28
|
+
|
|
29
|
+
An agent that uses another owner's server through a grant sees the same code with a generic
|
|
30
|
+
message: "The MCP server's credentials can't be used; ask its owner to check it."
|
|
31
|
+
|
|
32
|
+
## What to do
|
|
33
|
+
|
|
34
|
+
1. Check that every Wardby process (control plane, scheduler, native gateway) gets the same
|
|
35
|
+
`SECRET_APP_KEY`. Fix the one that differs and restart it.
|
|
36
|
+
2. If the key really changed, set the secret again with its new value (`create_secret` with the same
|
|
37
|
+
name), then run `refresh_mcp_server`.
|
|
38
|
+
3. Operator logs carry one `warn` line per failure with `reason: "mcp_secret_decrypt_failed"`, the
|
|
39
|
+
server and the secret name (never the value or the cipher's error).
|
|
40
|
+
|
|
41
|
+
A secret that is missing, not brokered, or not brokered to the server's host is an input problem
|
|
42
|
+
instead and returns [`mcp_server_error`](mcp-server-error.md) or a 400 error from the register,
|
|
43
|
+
update and refresh tools.
|
|
44
|
+
|
|
45
|
+
See [Remote MCP servers](../mcp-servers.md) and [Secrets and tools](../../docs/tool-secrets.md).
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
---
|
|
2
|
+
id: errors/mcp-server-error
|
|
3
|
+
title: A remote tool server returned an error (mcp_server_error)
|
|
4
|
+
summary: The MCP server answered with an HTTP error or a bad reply, asked for something Wardby doesn't support, or the tool reported an error.
|
|
5
|
+
audience: operator
|
|
6
|
+
tags: [mcp, mcp_server_error, isError, tools/call, credentials]
|
|
7
|
+
appliesTo: ">=0.8.0"
|
|
8
|
+
---
|
|
9
|
+
|
|
10
|
+
# A remote tool server returned an error
|
|
11
|
+
|
|
12
|
+
## What happened
|
|
13
|
+
|
|
14
|
+
A call returned `mcp_server_error`. One of these happened:
|
|
15
|
+
|
|
16
|
+
- the server answered with an HTTP status other than 2xx (not 401 or 403), or sent a reply Wardby could not read;
|
|
17
|
+
- the server's reply carried only a request of its own (sampling, elicitation or roots) and no answer: Wardby supports none of them, so the call fails;
|
|
18
|
+
- the tool ran and reported an error; the server's message is passed on with secret values removed;
|
|
19
|
+
- the server's secrets could not be loaded (missing, not brokered, or not brokered to the server's host). The server's owner sees which secret; an agent using a server shared with its owner sees only "The MCP server's credentials can't be used; ask its owner to check it."
|
|
20
|
+
|
|
21
|
+
## What to do
|
|
22
|
+
|
|
23
|
+
1. Read the message: a tool-reported error usually says what was wrong with the arguments.
|
|
24
|
+
2. If the HTTP status is a 5xx, retry later or ask the server's operator.
|
|
25
|
+
3. If the tool's input changed, `refresh_mcp_server` and review `get_mcp_server`.
|
|
26
|
+
4. For a credentials message on a shared server, ask the server's owner to check its secrets with `get_mcp_server` and `list_secrets`.
|
|
27
|
+
|
|
28
|
+
See [Remote MCP servers](../mcp-servers.md).
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
---
|
|
2
|
+
id: errors/mcp-server-unreachable
|
|
3
|
+
title: A remote tool server could not be reached (mcp_server_unreachable)
|
|
4
|
+
summary: Wardby could not connect to a remote MCP server; check the URL, the server and its network path.
|
|
5
|
+
audience: operator
|
|
6
|
+
tags: [mcp, mcp_server_unreachable, unreachable, register_mcp_server, update_mcp_server]
|
|
7
|
+
appliesTo: ">=0.8.0"
|
|
8
|
+
---
|
|
9
|
+
|
|
10
|
+
# A remote tool server could not be reached
|
|
11
|
+
|
|
12
|
+
## What happened
|
|
13
|
+
|
|
14
|
+
An agent's MCP tool call returned `mcp_server_unreachable`, or `register_mcp_server` / `refresh_mcp_server` failed with it. Wardby could not open a connection to the server's URL (DNS, TLS, refused or reset connection). Only this call failed.
|
|
15
|
+
|
|
16
|
+
## What to do
|
|
17
|
+
|
|
18
|
+
1. Check the URL with `get_mcp_server` (the owner sees it) and that the server is up.
|
|
19
|
+
2. Check that Wardby's network can reach the host over HTTPS on the default port.
|
|
20
|
+
3. Fix the URL with `update_mcp_server`, then `refresh_mcp_server`.
|
|
21
|
+
|
|
22
|
+
See [Remote MCP servers](../mcp-servers.md).
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
---
|
|
2
|
+
id: errors/mcp-servers-off
|
|
3
|
+
title: Remote tool servers are turned off (mcp_servers_off)
|
|
4
|
+
summary: WARDBY_MCP_SERVERS=off: MCP server tools are refused and attached servers are left out of runs.
|
|
5
|
+
audience: operator
|
|
6
|
+
tags: [mcp, mcp_servers_off, WARDBY_MCP_SERVERS, off, admins]
|
|
7
|
+
appliesTo: ">=0.8.0"
|
|
8
|
+
---
|
|
9
|
+
|
|
10
|
+
# Remote tool servers are turned off
|
|
11
|
+
|
|
12
|
+
## What happened
|
|
13
|
+
|
|
14
|
+
The Wardby MCP-server tools answered `mcp_servers_off` (403), or a run's MCP call did. The server has `WARDBY_MCP_SERVERS=off`. Attached servers' tools are left out of new runs. `detach_mcp_server` and `delete_mcp_server` still work, so you can clean up while the feature is off.
|
|
15
|
+
|
|
16
|
+
## What to do
|
|
17
|
+
|
|
18
|
+
1. Ask the operator to set `WARDBY_MCP_SERVERS` to `owners` or `admins` and restart.
|
|
19
|
+
2. With `admins`, registering, updating and refreshing need `hosts:admin`.
|
|
20
|
+
|
|
21
|
+
See [Remote MCP servers](../mcp-servers.md).
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
---
|
|
2
|
+
id: errors/mcp-tool-not-allowed
|
|
3
|
+
title: A remote tool is no longer allowed (mcp_tool_not_allowed)
|
|
4
|
+
summary: The agent's MCP server was detached, the tool left its allowlist, or the agent's owner lost use access to a shared server.
|
|
5
|
+
audience: operator
|
|
6
|
+
tags: [mcp, mcp_tool_not_allowed, attach_mcp_server, detach_mcp_server, allowedTools, revoke_access]
|
|
7
|
+
appliesTo: ">=0.8.0"
|
|
8
|
+
---
|
|
9
|
+
|
|
10
|
+
# A remote tool is no longer allowed
|
|
11
|
+
|
|
12
|
+
## What happened
|
|
13
|
+
|
|
14
|
+
A call returned `mcp_tool_not_allowed`. Wardby checks the agent's attachment on every call, and since the run began one of these happened:
|
|
15
|
+
|
|
16
|
+
- the server was detached, or the tool left `allowedTools`;
|
|
17
|
+
- the server's owner deleted the server;
|
|
18
|
+
- the server is shared with the agent's owner, and its owner revoked that grant or lowered it to `read`. The agent's owner must own the server or hold `use` on it; when that ends, Wardby detaches the server from the agent too.
|
|
19
|
+
|
|
20
|
+
## What to do
|
|
21
|
+
|
|
22
|
+
1. Check `get_agent` for `mcpServers`.
|
|
23
|
+
2. Re-attach with `attach_mcp_server` and include the tool in `allowedTools`. For a shared server, ask its owner for `use` again first.
|
|
24
|
+
3. A run that started before the change still lists the tool, but every call re-checks the attachment, so the call is refused with this error.
|
|
25
|
+
|
|
26
|
+
See [Remote MCP servers](../mcp-servers.md).
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
---
|
|
2
|
+
id: errors/mcp-tool-removed
|
|
3
|
+
title: A remote tool is no longer on the server (mcp_tool_removed)
|
|
4
|
+
summary: The server's saved tool list no longer has the tool; check missingTools in get_agent.
|
|
5
|
+
audience: operator
|
|
6
|
+
tags: [mcp, mcp_tool_removed, missingTools, refresh_mcp_server]
|
|
7
|
+
appliesTo: ">=0.8.0"
|
|
8
|
+
---
|
|
9
|
+
|
|
10
|
+
# A remote tool is no longer on the server
|
|
11
|
+
|
|
12
|
+
## What happened
|
|
13
|
+
|
|
14
|
+
A call returned `mcp_tool_removed`. After a `refresh_mcp_server`, the server's saved list no longer includes a tool the agent allows, so calls to it are refused. `get_agent` lists it under `missingTools`.
|
|
15
|
+
|
|
16
|
+
## What to do
|
|
17
|
+
|
|
18
|
+
1. Check `get_mcp_server` for the tool's current name; servers sometimes rename tools.
|
|
19
|
+
2. Re-attach with `attach_mcp_server` using the new name.
|
|
20
|
+
3. If the tool is back on the server, `refresh_mcp_server` makes it callable again.
|
|
21
|
+
|
|
22
|
+
See [Remote MCP servers](../mcp-servers.md).
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
---
|
|
2
|
+
id: errors/mcp-unavailable
|
|
3
|
+
title: Remote MCP tools are unavailable to a coding run (mcp_unavailable)
|
|
4
|
+
summary: The coding proxy's MCP route has no native gateway to forward to, or could not reach it, so coding agents get no remote MCP tools.
|
|
5
|
+
audience: operator
|
|
6
|
+
tags: [mcp, mcp_unavailable, WARDBY_MCP_GATEWAY_URL, coding proxy, native gateway, coding agent]
|
|
7
|
+
appliesTo: ">=0.8.0"
|
|
8
|
+
---
|
|
9
|
+
|
|
10
|
+
# Remote MCP tools are unavailable to a coding run
|
|
11
|
+
|
|
12
|
+
## What happened
|
|
13
|
+
|
|
14
|
+
The coding proxy's `/mcp` route answered `503` or `502` with `mcp_unavailable`. A coding worker reaches its MCP tools only through that route, which forwards to the native gateway. It fails in one of two ways:
|
|
15
|
+
|
|
16
|
+
- `WARDBY_MCP_GATEWAY_URL` is not set on the proxy (`503`). The coding agent then runs without MCP tools; the run does not fail.
|
|
17
|
+
- The gateway could not be reached, timed out or answered too much (`502`). Only that request fails.
|
|
18
|
+
|
|
19
|
+
## What to do
|
|
20
|
+
|
|
21
|
+
1. Set `WARDBY_MCP_GATEWAY_URL` on the coding proxy to the native gateway's base URL, for example `http://<gateway host>:<port>`. The kind and GKE manifests set it to the in-cluster gateway.
|
|
22
|
+
2. Check that the native gateway is running and that the proxy's network policy allows it to reach the gateway's HTTP port.
|
|
23
|
+
3. Restart the proxy after changing the variable. An invalid value stops start-up.
|
|
24
|
+
|
|
25
|
+
See [Remote MCP servers for coding agents](../../docs/mcp-servers.md#coding-agents).
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
---
|
|
2
|
+
id: errors/merge-conflict
|
|
3
|
+
title: Conflict markers remain
|
|
4
|
+
summary: A follow-up run left conflict markers in a file the target-branch merge conflicted, so nothing was pushed.
|
|
5
|
+
audience: operator
|
|
6
|
+
tags: [error, coding-agents, vcs, merge-conflict, pull-requests]
|
|
7
|
+
appliesTo: ">=0.7.0"
|
|
8
|
+
---
|
|
9
|
+
|
|
10
|
+
# Conflict markers remain
|
|
11
|
+
|
|
12
|
+
A follow-up run on a wardby pull request merges the pull request's target
|
|
13
|
+
branch into the branch before the agent starts (see
|
|
14
|
+
[Fix merge conflicts on a wardby pull request](../fix-merge-conflicts.md)).
|
|
15
|
+
When that merge conflicts, the agent is given the conflicted files to
|
|
16
|
+
resolve. A run that finished while one of those files still held a
|
|
17
|
+
`<<<<<<<` … `>>>>>>>` marker pair stops with failure category
|
|
18
|
+
`merge_conflict` (error `vcs_conflict_markers_remain`), and nothing is
|
|
19
|
+
pushed: the pull request is unchanged.
|
|
20
|
+
|
|
21
|
+
Only the files the merge conflicted are checked, so marker-like lines in
|
|
22
|
+
other files (test fixtures, documentation about merging) never trigger this.
|
|
23
|
+
|
|
24
|
+
## What the requester sees
|
|
25
|
+
|
|
26
|
+
The run's status comment on the pull request names the file, for example:
|
|
27
|
+
|
|
28
|
+
> `src/app.ts` still has conflict markers after merging this pull request's
|
|
29
|
+
> target branch, so none of its changes were pushed. Ask again to resolve the
|
|
30
|
+
> conflicts.
|
|
31
|
+
|
|
32
|
+
A lead agent that delegated the follow-up sees the sub-run's error code
|
|
33
|
+
`coding_failure_merge_conflict`.
|
|
34
|
+
|
|
35
|
+
## What to do
|
|
36
|
+
|
|
37
|
+
- Ask again on the pull request (for example "please fix the merge
|
|
38
|
+
conflicts"). The next follow-up merges the target again and gives the agent
|
|
39
|
+
the same list.
|
|
40
|
+
- If the conflicts are too large for the agent's budget or turn limit, raise
|
|
41
|
+
them for that agent, or resolve the conflicts by hand and push.
|
|
42
|
+
- An agent that keeps stopping early may need instructions that put
|
|
43
|
+
resolving the listed conflicts first.
|
|
44
|
+
- A conflict in a path this agent may not edit cannot be resolved by the
|
|
45
|
+
agent (resolving it is an edit, which is refused): resolve that file by hand
|
|
46
|
+
and push.
|
|
47
|
+
|
|
48
|
+
Related: [Run changed a protected path](protected-path.md),
|
|
49
|
+
[Target branch could not be merged](target-merge.md).
|
|
@@ -4,7 +4,7 @@ title: Native sandbox is at capacity
|
|
|
4
4
|
summary: A sandbox run could not start because the concurrent sandbox run limit or the namespace ResourceQuota has no room; the run failed at start and was not queued.
|
|
5
5
|
audience: operator
|
|
6
6
|
tags: [error, native-agents, sandbox, kubernetes, capacity, quota, native_sandbox_capacity]
|
|
7
|
-
appliesTo: ">=0.
|
|
7
|
+
appliesTo: ">=0.6.0"
|
|
8
8
|
---
|
|
9
9
|
|
|
10
10
|
# Native sandbox is at capacity
|
|
@@ -4,7 +4,7 @@ title: Native run deadline exceeded
|
|
|
4
4
|
summary: A sandbox run passed its 60-minute maximum lifetime and its worker was stopped.
|
|
5
5
|
audience: operator
|
|
6
6
|
tags: [error, native-agents, sandbox, native_sandbox_deadline_exceeded]
|
|
7
|
-
appliesTo: ">=0.
|
|
7
|
+
appliesTo: ">=0.6.0"
|
|
8
8
|
---
|
|
9
9
|
|
|
10
10
|
# Native run deadline exceeded
|
|
@@ -4,7 +4,7 @@ title: Native worker Docker command failed
|
|
|
4
4
|
summary: A Docker command Wardby ran to start or clean up a sandbox worker failed.
|
|
5
5
|
audience: operator
|
|
6
6
|
tags: [error, native-agents, sandbox, native_sandbox_docker_failed]
|
|
7
|
-
appliesTo: ">=0.
|
|
7
|
+
appliesTo: ">=0.6.0"
|
|
8
8
|
---
|
|
9
9
|
|
|
10
10
|
# Native worker Docker command failed
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
---
|
|
2
|
+
id: errors/native-sandbox-gateway-error
|
|
3
|
+
title: Native worker's gateway call failed
|
|
4
|
+
summary: The sandbox worker's call to the gateway failed with an error the run could not continue from.
|
|
5
|
+
audience: operator
|
|
6
|
+
tags: [error, native-agents, sandbox, native_sandbox_gateway_error]
|
|
7
|
+
appliesTo: ">=0.6.0"
|
|
8
|
+
---
|
|
9
|
+
|
|
10
|
+
# Native worker's gateway call failed
|
|
11
|
+
|
|
12
|
+
`native_sandbox_gateway_error: <code>: <message>` means the sandbox worker called the gateway (a model turn, a tool, or a delegation) and got an error the run could not continue from. The worker reports the run failed with this error instead of exiting, so it is not `native_sandbox_worker_exited`.
|
|
13
|
+
|
|
14
|
+
1. Read the code and message in the run's error (`get_run`).
|
|
15
|
+
2. For the gateway's `internal` code the message is never recorded. When the gateway's error named one of wardby's own declared codes, that code follows (any other leading word, and any code that matches a secret value the run can read, never leaves the gateway), for example `native_sandbox_gateway_error: internal: coding_execution_not_configured` (the gateway that served the call cannot start coding runs); otherwise the error is `native_sandbox_gateway_error: internal`. Read the gateway's logs (`native gateway request failed`) for the details: the line carries the error's message and stack with the run's secret values replaced by `[REDACTED]`; when the gateway could not read the run's secret values, or the failure was not an error object, it carries only the error's name (`errName`) and declared code (`causeCode`).
|
|
16
|
+
3. Fix the cause the message names, or check that the gateway can reach the database and the LLM provider.
|
|
17
|
+
4. Trigger the run again.
|
|
18
|
+
|
|
19
|
+
See [Run native agents in a sandbox](../native-sandbox.md) and the
|
|
20
|
+
[native sandbox guide](../../docs/native-sandbox.md).
|