@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.
Files changed (740) hide show
  1. package/.env.example +5 -5
  2. package/README.md +6 -1
  3. package/deploy/local/docker-compose.quickstart-coding.yml +19 -0
  4. package/dist/claude-coding-worker/driver.d.ts +33 -3
  5. package/dist/claude-coding-worker/driver.js +151 -21
  6. package/dist/claude-coding-worker/main.js +38 -6
  7. package/dist/claude-coding-worker/sdk.js +29 -2
  8. package/dist/claude-coding-worker/tool-socket.d.ts +27 -0
  9. package/dist/claude-coding-worker/tool-socket.js +111 -0
  10. package/dist/claude-coding-worker/transcript.d.ts +18 -0
  11. package/dist/claude-coding-worker/transcript.js +77 -0
  12. package/dist/claude-plugin/command.d.ts +61 -0
  13. package/dist/claude-plugin/command.js +376 -0
  14. package/dist/cli-help.d.ts +1 -1
  15. package/dist/cli-help.js +3 -1
  16. package/dist/cli.js +71 -13
  17. package/dist/coding/code-host.d.ts +16 -0
  18. package/dist/coding/code-host.js +60 -0
  19. package/dist/coding/continuation-wording.d.ts +35 -0
  20. package/dist/coding/continuation-wording.js +73 -0
  21. package/dist/coding/linked-issue-note.d.ts +23 -0
  22. package/dist/coding/linked-issue-note.js +47 -0
  23. package/dist/coding/mcp-token.d.ts +12 -0
  24. package/dist/coding/mcp-token.js +26 -0
  25. package/dist/coding/merge-wording.d.ts +28 -0
  26. package/dist/coding/merge-wording.js +78 -0
  27. package/dist/coding/pr-description-note.d.ts +9 -0
  28. package/dist/coding/pr-description-note.js +32 -0
  29. package/dist/coding/profile.d.ts +46 -126
  30. package/dist/coding/profile.js +45 -4
  31. package/dist/coding/protected-path-wording.d.ts +8 -0
  32. package/dist/coding/protected-path-wording.js +1 -1
  33. package/dist/coding/protocol.d.ts +264 -346
  34. package/dist/coding/protocol.js +237 -12
  35. package/dist/coding/redact.d.ts +3 -0
  36. package/dist/coding/redact.js +17 -0
  37. package/dist/coding/registry/allowlist.d.ts +12 -0
  38. package/dist/coding/registry/allowlist.js +14 -1
  39. package/dist/coding/registry/audit-mode.d.ts +153 -0
  40. package/dist/coding/registry/audit-mode.js +304 -0
  41. package/dist/coding/registry/lockfile-shared.d.ts +36 -0
  42. package/dist/coding/registry/lockfile-shared.js +128 -0
  43. package/dist/coding/registry/lockfiles.js +1 -1
  44. package/dist/coding/registry/npm-lockfile-formats.d.ts +11 -0
  45. package/dist/coding/registry/npm-lockfile-formats.js +41 -0
  46. package/dist/coding/registry/npm-lockfile.d.ts +8 -4
  47. package/dist/coding/registry/npm-lockfile.js +4 -6
  48. package/dist/coding/registry/npm.js +78 -8
  49. package/dist/coding/registry/pnpm-lockfile.d.ts +17 -0
  50. package/dist/coding/registry/pnpm-lockfile.js +189 -0
  51. package/dist/coding/registry/pypi-plan.d.ts +50 -0
  52. package/dist/coding/registry/pypi-plan.js +406 -0
  53. package/dist/coding/registry/pypi-requirements.d.ts +58 -0
  54. package/dist/coding/registry/pypi-requirements.js +155 -0
  55. package/dist/coding/registry/pypi.d.ts +3 -27
  56. package/dist/coding/registry/pypi.js +40 -154
  57. package/dist/coding/registry/refusal-hints.d.ts +20 -0
  58. package/dist/coding/registry/refusal-hints.js +61 -0
  59. package/dist/coding/registry/refusal-wording.d.ts +11 -0
  60. package/dist/coding/registry/refusal-wording.js +56 -0
  61. package/dist/coding/registry/report.d.ts +70 -8
  62. package/dist/coding/registry/report.js +112 -5
  63. package/dist/coding/registry/types.d.ts +58 -8
  64. package/dist/coding/registry/yarn-lockfile.d.ts +30 -0
  65. package/dist/coding/registry/yarn-lockfile.js +367 -0
  66. package/dist/coding/services/catalog.d.ts +37 -351
  67. package/dist/coding/transcript/claude-code.d.ts +13 -0
  68. package/dist/coding/transcript/claude-code.js +273 -0
  69. package/dist/coding/transcript/download-protocol.d.ts +30 -0
  70. package/dist/coding/transcript/download-protocol.js +18 -0
  71. package/dist/coding/transcript/format.d.ts +20 -0
  72. package/dist/coding/transcript/format.js +32 -0
  73. package/dist/coding/transcript/recorder.d.ts +52 -0
  74. package/dist/coding/transcript/recorder.js +225 -0
  75. package/dist/coding/transcript/resume/checkout.d.ts +31 -0
  76. package/dist/coding/transcript/resume/checkout.js +203 -0
  77. package/dist/coding/transcript/resume/command.d.ts +17 -0
  78. package/dist/coding/transcript/resume/command.js +176 -0
  79. package/dist/coding/transcript/resume/download.d.ts +20 -0
  80. package/dist/coding/transcript/resume/download.js +153 -0
  81. package/dist/coding/transcript/resume/launch.d.ts +38 -0
  82. package/dist/coding/transcript/resume/launch.js +128 -0
  83. package/dist/coding/transcript/resume/session-file.d.ts +13 -0
  84. package/dist/coding/transcript/resume/session-file.js +79 -0
  85. package/dist/coding/transcript/resume/stand-in.d.ts +11 -0
  86. package/dist/coding/transcript/resume/stand-in.js +49 -0
  87. package/dist/coding-worker/artifact.d.ts +8 -3
  88. package/dist/coding-worker/artifact.js +3 -1
  89. package/dist/coding-worker/debug-trace.d.ts +9 -6
  90. package/dist/coding-worker/debug-trace.js +16 -19
  91. package/dist/coding-worker/dependency-cache.d.mts +229 -0
  92. package/dist/coding-worker/dependency-cache.mjs +2123 -0
  93. package/dist/coding-worker/driver.d.ts +4 -3
  94. package/dist/coding-worker/driver.js +124 -39
  95. package/dist/coding-worker/errors.d.ts +1 -0
  96. package/dist/coding-worker/errors.js +32 -0
  97. package/dist/coding-worker/main.js +5 -1
  98. package/dist/coding-worker/mcp-config.d.ts +27 -0
  99. package/dist/coding-worker/mcp-config.js +32 -0
  100. package/dist/coding-worker/sdk.d.ts +36 -0
  101. package/dist/coding-worker/sdk.js +28 -1
  102. package/dist/coding-worker/task-note.d.ts +11 -0
  103. package/dist/coding-worker/task-note.js +13 -0
  104. package/dist/coding-worker/types.d.ts +15 -0
  105. package/dist/config/dependency-cache.d.ts +23 -0
  106. package/dist/config/dependency-cache.js +32 -0
  107. package/dist/config/mcp-call-limit.d.ts +8 -0
  108. package/dist/config/mcp-call-limit.js +18 -0
  109. package/dist/config/mcp-servers.d.ts +8 -0
  110. package/dist/config/mcp-servers.js +12 -0
  111. package/dist/config/providers.d.ts +12 -3
  112. package/dist/config/providers.js +55 -5
  113. package/dist/config/test-simulators.d.ts +92 -0
  114. package/dist/config/test-simulators.js +333 -0
  115. package/dist/config/tool-timeout.d.ts +1 -0
  116. package/dist/config/tool-timeout.js +18 -0
  117. package/dist/core/async-context.d.ts +2 -0
  118. package/dist/core/async-context.js +12 -0
  119. package/dist/core/budget-events.d.ts +108 -0
  120. package/dist/core/budget-events.js +346 -0
  121. package/dist/core/budget-groups.d.ts +50 -1
  122. package/dist/core/budget-groups.js +236 -27
  123. package/dist/core/budget-stopped-head.d.ts +46 -0
  124. package/dist/core/budget-stopped-head.js +81 -0
  125. package/dist/core/budget-topup.d.ts +51 -0
  126. package/dist/core/budget-topup.js +156 -0
  127. package/dist/core/budget-wording.d.ts +16 -2
  128. package/dist/core/budget-wording.js +40 -2
  129. package/dist/core/coding-mcp.d.ts +36 -0
  130. package/dist/core/coding-mcp.js +253 -0
  131. package/dist/core/coding-queue.d.ts +2 -1
  132. package/dist/core/coding-queue.js +7 -0
  133. package/dist/core/coding-repository.d.ts +46 -0
  134. package/dist/core/coding-repository.js +92 -0
  135. package/dist/core/cron.d.ts +19 -1
  136. package/dist/core/cron.js +17 -0
  137. package/dist/core/datastores.js +1 -1
  138. package/dist/core/deferred-coding.d.ts +14 -0
  139. package/dist/core/deferred-coding.js +62 -0
  140. package/dist/core/delegation-child.d.ts +25 -0
  141. package/dist/core/delegation-child.js +37 -0
  142. package/dist/core/delegation-slots.d.ts +27 -0
  143. package/dist/core/delegation-slots.js +44 -0
  144. package/dist/core/dispatch.d.ts +48 -2
  145. package/dist/core/dispatch.js +166 -66
  146. package/dist/core/engine-native.js +1 -1
  147. package/dist/core/error-code.d.ts +38 -0
  148. package/dist/core/error-code.js +169 -0
  149. package/dist/core/grants.d.ts +46 -8
  150. package/dist/core/grants.js +99 -8
  151. package/dist/core/host-events.d.ts +18 -2
  152. package/dist/core/host-events.js +291 -27
  153. package/dist/core/host-status.d.ts +85 -3
  154. package/dist/core/host-status.js +300 -22
  155. package/dist/core/issue-bridge.d.ts +50 -6
  156. package/dist/core/issue-bridge.js +124 -33
  157. package/dist/core/issue-events.d.ts +1 -1
  158. package/dist/core/issue-events.js +4 -10
  159. package/dist/core/issue-status.d.ts +1 -1
  160. package/dist/core/issue-status.js +58 -29
  161. package/dist/core/logger.d.ts +5 -0
  162. package/dist/core/logger.js +14 -1
  163. package/dist/core/lost-run-children.d.ts +6 -0
  164. package/dist/core/lost-run-children.js +32 -0
  165. package/dist/core/mark-ready.d.ts +34 -0
  166. package/dist/core/mark-ready.js +152 -0
  167. package/dist/core/markdown-code.d.ts +8 -0
  168. package/dist/core/markdown-code.js +107 -0
  169. package/dist/core/mcp-client/client.d.ts +47 -0
  170. package/dist/core/mcp-client/client.js +141 -0
  171. package/dist/core/mcp-client/jsonrpc.d.ts +15 -0
  172. package/dist/core/mcp-client/jsonrpc.js +54 -0
  173. package/dist/core/mcp-client/results.d.ts +13 -0
  174. package/dist/core/mcp-client/results.js +42 -0
  175. package/dist/core/mcp-servers.d.ts +90 -0
  176. package/dist/core/mcp-servers.js +230 -0
  177. package/dist/core/mcp-tools.d.ts +108 -0
  178. package/dist/core/mcp-tools.js +287 -0
  179. package/dist/core/memory-tools.js +7 -0
  180. package/dist/core/merge-order-check.d.ts +2 -1
  181. package/dist/core/merge-order-check.js +44 -18
  182. package/dist/core/notification-dispatcher.js +2 -1
  183. package/dist/core/notification-templates.d.ts +1 -7
  184. package/dist/core/notification-templates.js +36 -2
  185. package/dist/core/pull-request-state-sync.js +2 -2
  186. package/dist/core/reconciler.d.ts +4 -3
  187. package/dist/core/reconciler.js +8 -1
  188. package/dist/core/related-pull-requests.d.ts +11 -3
  189. package/dist/core/related-pull-requests.js +49 -20
  190. package/dist/core/reply-parts.d.ts +21 -0
  191. package/dist/core/reply-parts.js +73 -0
  192. package/dist/core/review-fix.d.ts +1 -1
  193. package/dist/core/review-fix.js +4 -3
  194. package/dist/core/review-host-checks.d.ts +1 -1
  195. package/dist/core/review-host-tools.d.ts +3 -0
  196. package/dist/core/review-host-tools.js +102 -14
  197. package/dist/core/review-reads.d.ts +55 -0
  198. package/dist/core/review-reads.js +233 -0
  199. package/dist/core/run-status.d.ts +12 -0
  200. package/dist/core/run-status.js +12 -0
  201. package/dist/core/runner.d.ts +145 -49
  202. package/dist/core/runner.js +719 -216
  203. package/dist/core/schedule-start.d.ts +12 -0
  204. package/dist/core/schedule-start.js +14 -0
  205. package/dist/core/secret-broker-config.d.ts +12 -74
  206. package/dist/core/secret-broker-config.js +1 -1
  207. package/dist/core/secret-guard.d.ts +49 -0
  208. package/dist/core/secret-guard.js +119 -0
  209. package/dist/core/secret-guarded-stores.d.ts +12 -0
  210. package/dist/core/secret-guarded-stores.js +41 -0
  211. package/dist/core/secret-spans.d.ts +50 -0
  212. package/dist/core/secret-spans.js +94 -0
  213. package/dist/core/secrets.d.ts +11 -1
  214. package/dist/core/secrets.js +27 -1
  215. package/dist/core/serializable-retry.d.ts +18 -0
  216. package/dist/core/serializable-retry.js +43 -0
  217. package/dist/core/stop-run.d.ts +46 -0
  218. package/dist/core/stop-run.js +61 -0
  219. package/dist/core/tool-admin.d.ts +5 -1
  220. package/dist/core/tool-admin.js +7 -2
  221. package/dist/core/tool-names.d.ts +13 -0
  222. package/dist/core/tool-names.js +20 -0
  223. package/dist/core/webhooks.d.ts +4 -0
  224. package/dist/core/webhooks.js +68 -49
  225. package/dist/core/workflow-events.d.ts +14 -2
  226. package/dist/core/workflow-events.js +4 -0
  227. package/dist/core/workflow-run-events.d.ts +5 -3
  228. package/dist/core/workflow-run-events.js +45 -9
  229. package/dist/core/zod-json-schema.d.ts +4 -0
  230. package/dist/core/zod-json-schema.js +39 -0
  231. package/dist/core/zod3-window.d.ts +35 -0
  232. package/dist/core/zod3-window.js +124 -0
  233. package/dist/generated/prisma/browser.d.ts +65 -3
  234. package/dist/generated/prisma/client.d.ts +65 -3
  235. package/dist/generated/prisma/commonInputTypes.d.ts +266 -106
  236. package/dist/generated/prisma/enums.d.ts +10 -0
  237. package/dist/generated/prisma/enums.js +8 -0
  238. package/dist/generated/prisma/internal/class.d.ts +110 -0
  239. package/dist/generated/prisma/internal/class.js +4 -4
  240. package/dist/generated/prisma/internal/prismaNamespace.d.ts +957 -9
  241. package/dist/generated/prisma/internal/prismaNamespace.js +166 -2
  242. package/dist/generated/prisma/internal/prismaNamespaceBrowser.d.ts +174 -0
  243. package/dist/generated/prisma/internal/prismaNamespaceBrowser.js +166 -2
  244. package/dist/generated/prisma/models/Agent.d.ts +377 -8
  245. package/dist/generated/prisma/models/AgentMcpServer.d.ts +1412 -0
  246. package/dist/generated/prisma/models/AgentMcpServer.js +1 -0
  247. package/dist/generated/prisma/models/AgentRepository.d.ts +81 -1
  248. package/dist/generated/prisma/models/AuthUser.d.ts +1 -1
  249. package/dist/generated/prisma/models/CodingAgentProfile.d.ts +228 -7
  250. package/dist/generated/prisma/models/CodingProxyRequest.d.ts +207 -3
  251. package/dist/generated/prisma/models/CodingProxySession.d.ts +232 -2
  252. package/dist/generated/prisma/models/CodingRun.d.ts +1712 -1
  253. package/dist/generated/prisma/models/DependencySnapshot.d.ts +1668 -0
  254. package/dist/generated/prisma/models/DependencySnapshot.js +1 -0
  255. package/dist/generated/prisma/models/HostProvider.d.ts +2176 -0
  256. package/dist/generated/prisma/models/HostProvider.js +1 -0
  257. package/dist/generated/prisma/models/HostProviderCredential.d.ts +1285 -0
  258. package/dist/generated/prisma/models/HostProviderCredential.js +1 -0
  259. package/dist/generated/prisma/models/HostProviderOperation.d.ts +1470 -0
  260. package/dist/generated/prisma/models/HostProviderOperation.js +1 -0
  261. package/dist/generated/prisma/models/HostProviderTrustedAccount.d.ts +1145 -0
  262. package/dist/generated/prisma/models/HostProviderTrustedAccount.js +1 -0
  263. package/dist/generated/prisma/models/IssuePullRequest.d.ts +6 -2
  264. package/dist/generated/prisma/models/LocalReview.d.ts +40 -1
  265. package/dist/generated/prisma/models/McpServer.d.ts +1500 -0
  266. package/dist/generated/prisma/models/McpServer.js +1 -0
  267. package/dist/generated/prisma/models/NativeGatewayCall.d.ts +77 -1
  268. package/dist/generated/prisma/models/NativeGatewaySession.d.ts +35 -1
  269. package/dist/generated/prisma/models/Principal.d.ts +167 -0
  270. package/dist/generated/prisma/models/RegistryAllowance.d.ts +41 -1
  271. package/dist/generated/prisma/models/RegistryApprovedVersion.d.ts +75 -1
  272. package/dist/generated/prisma/models/RegistryAuditRecord.d.ts +1364 -0
  273. package/dist/generated/prisma/models/RegistryAuditRecord.js +1 -0
  274. package/dist/generated/prisma/models/ResourceGrant.d.ts +1 -1
  275. package/dist/generated/prisma/models/Run.d.ts +738 -2
  276. package/dist/generated/prisma/models/RunBudgetEvent.d.ts +1211 -0
  277. package/dist/generated/prisma/models/RunBudgetEvent.js +1 -0
  278. package/dist/generated/prisma/models/RunTranscript.d.ts +1339 -0
  279. package/dist/generated/prisma/models/RunTranscript.js +1 -0
  280. package/dist/generated/prisma/models/Secret.d.ts +387 -0
  281. package/dist/generated/prisma/models/Tool.d.ts +223 -1
  282. package/dist/generated/prisma/models.d.ts +10 -0
  283. package/dist/help/search.js +12 -3
  284. package/dist/help-index.json +2033 -110
  285. package/dist/import/create.js +48 -4
  286. package/dist/import/neutral-schema.d.ts +51 -281
  287. package/dist/import/neutral-schema.js +7 -4
  288. package/dist/knowledge/check.d.ts +1 -1
  289. package/dist/knowledge/cli.d.ts +11 -1
  290. package/dist/knowledge/cli.js +37 -4
  291. package/dist/knowledge/concept.d.ts +3 -19
  292. package/dist/knowledge/location.d.ts +31 -0
  293. package/dist/knowledge/location.js +78 -0
  294. package/dist/mcp/auth/access.d.ts +10 -2
  295. package/dist/mcp/auth/access.js +15 -1
  296. package/dist/mcp/auth/grants-cli.d.ts +6 -4
  297. package/dist/mcp/auth/grants-cli.js +42 -3
  298. package/dist/mcp/auth/ownership.d.ts +7 -7
  299. package/dist/mcp/auth/resource-server.d.ts +3 -1
  300. package/dist/mcp/auth/resource-server.js +17 -2
  301. package/dist/mcp/auth/self-hosted/credentials.d.ts +3 -3
  302. package/dist/mcp/auth/self-hosted/session.d.ts +2 -2
  303. package/dist/mcp/context.d.ts +3 -0
  304. package/dist/mcp/host-events/github-ingress.d.ts +2 -0
  305. package/dist/mcp/host-events/github-ingress.js +2 -1
  306. package/dist/mcp/index.d.ts +6 -0
  307. package/dist/mcp/index.js +69 -10
  308. package/dist/mcp/server.d.ts +13 -0
  309. package/dist/mcp/server.js +33 -14
  310. package/dist/mcp/tools/agents.d.ts +4 -0
  311. package/dist/mcp/tools/agents.js +295 -28
  312. package/dist/mcp/tools/datastore.js +17 -8
  313. package/dist/mcp/tools/grants.js +73 -29
  314. package/dist/mcp/tools/host-providers.d.ts +2 -0
  315. package/dist/mcp/tools/host-providers.js +215 -0
  316. package/dist/mcp/tools/mcp-servers.d.ts +26 -0
  317. package/dist/mcp/tools/mcp-servers.js +481 -0
  318. package/dist/mcp/tools/memory.js +11 -1
  319. package/dist/mcp/tools/notification-channels.js +2 -2
  320. package/dist/mcp/tools/packages.d.ts +2 -0
  321. package/dist/mcp/tools/packages.js +195 -0
  322. package/dist/mcp/tools/repositories.js +65 -12
  323. package/dist/mcp/tools/run-access.d.ts +16 -0
  324. package/dist/mcp/tools/run-access.js +25 -0
  325. package/dist/mcp/tools/run-transcript-download.d.ts +30 -0
  326. package/dist/mcp/tools/run-transcript-download.js +129 -0
  327. package/dist/mcp/tools/run-transcript.d.ts +19 -0
  328. package/dist/mcp/tools/run-transcript.js +70 -0
  329. package/dist/mcp/tools/runs.js +209 -27
  330. package/dist/mcp/tools/scheduling.js +3 -1
  331. package/dist/mcp/tools/secret-elicitation-form.js +5 -0
  332. package/dist/mcp/tools/secret-elicitation-server.d.ts +6 -0
  333. package/dist/mcp/tools/secret-elicitation-server.js +10 -61
  334. package/dist/mcp/tools/secret-elicitation.d.ts +2 -0
  335. package/dist/mcp/tools/secret-elicitation.js +25 -2
  336. package/dist/mcp/tools/secrets.js +40 -6
  337. package/dist/mcp/tools/stop-run.d.ts +2 -0
  338. package/dist/mcp/tools/stop-run.js +82 -0
  339. package/dist/mcp/tools/subagents.js +2 -2
  340. package/dist/mcp/tools/tools.d.ts +7 -5
  341. package/dist/mcp/tools/tools.js +64 -16
  342. package/dist/mcp/tools/trigger.js +28 -6
  343. package/dist/mcp/transport/http-limits.d.ts +2 -0
  344. package/dist/mcp/transport/http-limits.js +6 -2
  345. package/dist/mcp/transport/stdio-link-host.d.ts +20 -0
  346. package/dist/mcp/transport/stdio-link-host.js +67 -0
  347. package/dist/mcp/transport/streamable-http.d.ts +13 -0
  348. package/dist/mcp/transport/streamable-http.js +41 -1
  349. package/dist/mcp/webhooks/ingress.js +10 -0
  350. package/dist/native-worker/docker-launcher.d.ts +38 -2
  351. package/dist/native-worker/docker-launcher.js +65 -5
  352. package/dist/native-worker/gateway-server.d.ts +55 -3
  353. package/dist/native-worker/gateway-server.js +152 -34
  354. package/dist/native-worker/gateway.d.ts +29 -1
  355. package/dist/native-worker/gateway.js +74 -4
  356. package/dist/native-worker/http-server.d.ts +7 -1
  357. package/dist/native-worker/http-server.js +62 -7
  358. package/dist/native-worker/http-transport.js +1 -1
  359. package/dist/native-worker/kubernetes-launcher.d.ts +7 -3
  360. package/dist/native-worker/kubernetes-launcher.js +43 -3
  361. package/dist/native-worker/launch.d.ts +18 -1
  362. package/dist/native-worker/launch.js +6 -1
  363. package/dist/native-worker/ledger.d.ts +24 -4
  364. package/dist/native-worker/ledger.js +62 -8
  365. package/dist/native-worker/loopback.js +3 -8
  366. package/dist/native-worker/main.d.ts +2 -1
  367. package/dist/native-worker/main.js +14 -3
  368. package/dist/native-worker/protocol.d.ts +130 -577
  369. package/dist/native-worker/protocol.js +51 -2
  370. package/dist/native-worker/sandbox-executor.d.ts +17 -2
  371. package/dist/native-worker/sandbox-executor.js +78 -4
  372. package/dist/native-worker/stderr-redaction.d.ts +77 -0
  373. package/dist/native-worker/stderr-redaction.js +237 -0
  374. package/dist/native-worker/stdio.d.ts +1 -1
  375. package/dist/native-worker/stdio.js +6 -5
  376. package/dist/native-worker/warm-pool.d.ts +2 -2
  377. package/dist/native-worker/warm-pool.js +4 -4
  378. package/dist/native-worker/worker.js +28 -2
  379. package/dist/observability/metrics.js +6 -1
  380. package/dist/providers/auth/self-hosted.d.ts +1 -1
  381. package/dist/providers/coding-proxy/capability-hash.d.ts +2 -0
  382. package/dist/providers/coding-proxy/capability-hash.js +5 -0
  383. package/dist/providers/coding-proxy/dependency-cache/eviction.d.ts +29 -0
  384. package/dist/providers/coding-proxy/dependency-cache/eviction.js +87 -0
  385. package/dist/providers/coding-proxy/dependency-cache/key.d.ts +33 -0
  386. package/dist/providers/coding-proxy/dependency-cache/key.js +86 -0
  387. package/dist/providers/coding-proxy/dependency-cache/model-request-seal.d.ts +18 -0
  388. package/dist/providers/coding-proxy/dependency-cache/model-request-seal.js +40 -0
  389. package/dist/providers/coding-proxy/dependency-cache/prisma-store.d.ts +25 -0
  390. package/dist/providers/coding-proxy/dependency-cache/prisma-store.js +131 -0
  391. package/dist/providers/coding-proxy/dependency-cache/service.d.ts +70 -0
  392. package/dist/providers/coding-proxy/dependency-cache/service.js +409 -0
  393. package/dist/providers/coding-proxy/dependency-cache/store.d.ts +85 -0
  394. package/dist/providers/coding-proxy/dependency-cache/store.js +95 -0
  395. package/dist/providers/coding-proxy/hold.d.ts +32 -0
  396. package/dist/providers/coding-proxy/hold.js +86 -0
  397. package/dist/providers/coding-proxy/interrupted.d.ts +70 -0
  398. package/dist/providers/coding-proxy/interrupted.js +104 -0
  399. package/dist/providers/coding-proxy/mcp-route.d.ts +34 -0
  400. package/dist/providers/coding-proxy/mcp-route.js +166 -0
  401. package/dist/providers/coding-proxy/memory-ledger.d.ts +17 -2
  402. package/dist/providers/coding-proxy/memory-ledger.js +99 -8
  403. package/dist/providers/coding-proxy/metering.d.ts +16 -0
  404. package/dist/providers/coding-proxy/metering.js +27 -4
  405. package/dist/providers/coding-proxy/prisma-ledger.d.ts +16 -2
  406. package/dist/providers/coding-proxy/prisma-ledger.js +209 -69
  407. package/dist/providers/coding-proxy/proxy.d.ts +21 -2
  408. package/dist/providers/coding-proxy/proxy.js +300 -48
  409. package/dist/providers/coding-proxy/registry/audit.d.ts +53 -10
  410. package/dist/providers/coding-proxy/registry/audit.js +94 -17
  411. package/dist/providers/coding-proxy/registry/lockfile-parse-worker.d.ts +36 -0
  412. package/dist/providers/coding-proxy/registry/lockfile-parse-worker.js +67 -0
  413. package/dist/providers/coding-proxy/registry/lockfile-parse.d.ts +16 -0
  414. package/dist/providers/coding-proxy/registry/lockfile-parse.js +110 -0
  415. package/dist/providers/coding-proxy/registry/plan.d.ts +9 -0
  416. package/dist/providers/coding-proxy/registry/plan.js +201 -48
  417. package/dist/providers/coding-proxy/registry/prisma-store.d.ts +11 -5
  418. package/dist/providers/coding-proxy/registry/prisma-store.js +120 -17
  419. package/dist/providers/coding-proxy/registry/service.d.ts +97 -16
  420. package/dist/providers/coding-proxy/registry/service.js +579 -112
  421. package/dist/providers/coding-proxy/registry/store.d.ts +84 -9
  422. package/dist/providers/coding-proxy/registry/store.js +54 -1
  423. package/dist/providers/coding-proxy/runtime.d.ts +10 -0
  424. package/dist/providers/coding-proxy/runtime.js +109 -16
  425. package/dist/providers/coding-proxy/server.d.ts +9 -1
  426. package/dist/providers/coding-proxy/server.js +55 -1
  427. package/dist/providers/coding-proxy/types.d.ts +78 -1
  428. package/dist/providers/datastore/types.d.ts +5 -0
  429. package/dist/providers/engine/types.d.ts +17 -2
  430. package/dist/providers/engine/types.js +17 -0
  431. package/dist/providers/executor/composition.d.ts +10 -3
  432. package/dist/providers/executor/composition.js +52 -7
  433. package/dist/providers/executor/container.d.ts +394 -9
  434. package/dist/providers/executor/container.js +1210 -96
  435. package/dist/providers/executor/dbos-status.d.ts +31 -0
  436. package/dist/providers/executor/dbos-status.js +64 -0
  437. package/dist/providers/executor/dbos.d.ts +50 -1
  438. package/dist/providers/executor/dbos.js +207 -20
  439. package/dist/providers/executor/deferred.d.ts +12 -24
  440. package/dist/providers/executor/deferred.js +10 -29
  441. package/dist/providers/executor/in-process.d.ts +9 -1
  442. package/dist/providers/executor/in-process.js +14 -4
  443. package/dist/providers/executor/linked-issue-reader.d.ts +16 -0
  444. package/dist/providers/executor/linked-issue-reader.js +30 -0
  445. package/dist/providers/executor/routing.d.ts +2 -0
  446. package/dist/providers/executor/routing.js +4 -0
  447. package/dist/providers/executor/types.d.ts +13 -0
  448. package/dist/providers/host-tools/invoke.d.ts +37 -0
  449. package/dist/providers/host-tools/invoke.js +117 -0
  450. package/dist/providers/host-tools/operations.d.ts +65 -0
  451. package/dist/providers/host-tools/operations.js +149 -0
  452. package/dist/providers/host-tools/registry.d.ts +79 -0
  453. package/dist/providers/host-tools/registry.js +362 -0
  454. package/dist/providers/host-tools/request-guard.d.ts +17 -0
  455. package/dist/providers/host-tools/request-guard.js +99 -0
  456. package/dist/providers/host-tools/self-test.d.ts +64 -0
  457. package/dist/providers/host-tools/self-test.js +142 -0
  458. package/dist/providers/index.d.ts +2 -1
  459. package/dist/providers/issue-tracker/types.d.ts +17 -0
  460. package/dist/providers/issue-tracker/types.js +39 -1
  461. package/dist/providers/jobs/claude-tool-setup.d.ts +4 -0
  462. package/dist/providers/jobs/claude-tool-setup.js +5 -2
  463. package/dist/providers/jobs/docker-isolation.d.ts +10 -2
  464. package/dist/providers/jobs/docker-isolation.js +47 -8
  465. package/dist/providers/jobs/docker.d.ts +9 -0
  466. package/dist/providers/jobs/docker.js +60 -11
  467. package/dist/providers/jobs/fake-kubernetes-api.d.ts +2 -0
  468. package/dist/providers/jobs/fake-kubernetes-api.js +3 -0
  469. package/dist/providers/jobs/kubernetes-api.d.ts +8 -0
  470. package/dist/providers/jobs/kubernetes-api.js +10 -0
  471. package/dist/providers/jobs/kubernetes-client.js +10 -1
  472. package/dist/providers/jobs/kubernetes-isolation.d.ts +5 -1
  473. package/dist/providers/jobs/kubernetes-isolation.js +32 -3
  474. package/dist/providers/jobs/kubernetes.d.ts +11 -1
  475. package/dist/providers/jobs/kubernetes.js +111 -17
  476. package/dist/providers/jobs/types.d.ts +39 -0
  477. package/dist/providers/jobs/types.js +13 -1
  478. package/dist/providers/llm/anthropic.js +5 -1
  479. package/dist/providers/llm/bedrock.d.ts +0 -12
  480. package/dist/providers/llm/bedrock.js +4 -0
  481. package/dist/providers/llm/claude-messages.d.ts +3 -1
  482. package/dist/providers/llm/claude-messages.js +4 -1
  483. package/dist/providers/llm/claude-provider.d.ts +2 -2
  484. package/dist/providers/llm/claude-provider.js +2 -2
  485. package/dist/providers/llm/openai.d.ts +2 -2
  486. package/dist/providers/llm/openai.js +6 -2
  487. package/dist/providers/llm/routing.d.ts +2 -2
  488. package/dist/providers/llm/routing.js +2 -2
  489. package/dist/providers/llm/types.d.ts +12 -2
  490. package/dist/providers/review-host/github-events.d.ts +9 -1
  491. package/dist/providers/review-host/github-events.js +34 -12
  492. package/dist/providers/review-host/github.d.ts +29 -2
  493. package/dist/providers/review-host/github.js +224 -29
  494. package/dist/providers/review-host/local.d.ts +8 -4
  495. package/dist/providers/review-host/local.js +49 -31
  496. package/dist/providers/review-host/patch-pages.d.ts +41 -0
  497. package/dist/providers/review-host/patch-pages.js +176 -0
  498. package/dist/providers/review-host/review-format.d.ts +19 -1
  499. package/dist/providers/review-host/review-format.js +38 -7
  500. package/dist/providers/review-host/types.d.ts +140 -6
  501. package/dist/providers/review-host/types.js +9 -1
  502. package/dist/providers/storage/gcs.d.ts +63 -0
  503. package/dist/providers/storage/gcs.js +69 -0
  504. package/dist/providers/storage/index.d.ts +15 -0
  505. package/dist/providers/storage/index.js +14 -0
  506. package/dist/providers/storage/local.d.ts +24 -0
  507. package/dist/providers/storage/local.js +92 -0
  508. package/dist/providers/storage/meter.d.ts +14 -0
  509. package/dist/providers/storage/meter.js +34 -0
  510. package/dist/providers/storage/s3.d.ts +41 -0
  511. package/dist/providers/storage/s3.js +107 -0
  512. package/dist/providers/storage/types.d.ts +37 -3
  513. package/dist/providers/storage/types.js +21 -4
  514. package/dist/providers/vcs/git.d.ts +39 -4
  515. package/dist/providers/vcs/git.js +339 -26
  516. package/dist/providers/vcs/github-remote.d.ts +26 -3
  517. package/dist/providers/vcs/github-remote.js +124 -14
  518. package/dist/providers/vcs/github.d.ts +183 -44
  519. package/dist/providers/vcs/github.js +455 -56
  520. package/dist/providers/vcs/index.d.ts +1 -1
  521. package/dist/providers/vcs/index.js +9 -2
  522. package/dist/providers/vcs/pr-description.d.ts +127 -0
  523. package/dist/providers/vcs/pr-description.js +270 -0
  524. package/dist/providers/vcs/remote.d.ts +37 -1
  525. package/dist/providers/vcs/remote.js +7 -1
  526. package/dist/providers/vcs/routing.d.ts +16 -8
  527. package/dist/providers/vcs/routing.js +27 -6
  528. package/dist/providers/vcs/types.d.ts +150 -5
  529. package/dist/quickstart/coding-seed.d.ts +14 -3
  530. package/dist/quickstart/coding-seed.js +213 -4
  531. package/dist/quickstart/index.d.ts +5 -0
  532. package/dist/quickstart/index.js +21 -0
  533. package/dist/quickstart/reviewer-prompt.d.ts +1 -1
  534. package/dist/quickstart/reviewer-prompt.js +6 -6
  535. package/dist/quickstart-images.json +1 -1
  536. package/dist/sandbox/eval-core.d.ts +12 -2
  537. package/dist/sandbox/eval-core.js +20 -4
  538. package/dist/sandbox/generated/zod.bundle.js +62 -1
  539. package/dist/sandbox/generated/zod3.bundle.js +5 -0
  540. package/dist/sandbox/host-functions.d.ts +5 -0
  541. package/dist/sandbox/host-functions.js +13 -13
  542. package/dist/sandbox/limits.d.ts +4 -1
  543. package/dist/sandbox/limits.js +4 -1
  544. package/dist/sandbox/run-in-sandbox.d.ts +6 -0
  545. package/dist/sandbox/run-in-sandbox.js +14 -2
  546. package/dist/sandbox/safe-fetch.d.ts +2 -0
  547. package/dist/sandbox/safe-fetch.js +1 -1
  548. package/dist/sandbox/secret-broker.d.ts +1 -0
  549. package/dist/sandbox/secret-broker.js +4 -5
  550. package/dist/sandbox/tool-capabilities.d.ts +10 -30
  551. package/dist/sandbox/tool-timeout.d.ts +32 -0
  552. package/dist/sandbox/tool-timeout.js +52 -0
  553. package/dist/sandbox/user-tool.d.ts +8 -1
  554. package/dist/sandbox/user-tool.js +9 -3
  555. package/dist/sandbox/zod-params.d.ts +37 -5
  556. package/dist/sandbox/zod-params.js +181 -26
  557. package/dist/serve.js +8 -1
  558. package/dist/viewer/api-schema.d.ts +349 -2627
  559. package/dist/viewer/api-schema.js +7 -0
  560. package/dist/viewer/build-schemas.js +6 -2
  561. package/dist/viewer/graph.js +2 -1
  562. package/dist/viewer/openapi.js +2 -4
  563. package/dist/wardby-bin.js +15 -0
  564. package/docs/README.md +11 -1
  565. package/docs/agent-recipes.md +95 -24
  566. package/docs/architecture-runtime.md +1 -1
  567. package/docs/claude-code-plugin.md +164 -0
  568. package/docs/code-review-agents.md +557 -41
  569. package/docs/coding-agent-setup.md +566 -8
  570. package/docs/coding-packages.md +1033 -90
  571. package/docs/coding-services.md +27 -12
  572. package/docs/coding-worker-byo-images.md +24 -2
  573. package/docs/coding-worker-isolation.md +183 -37
  574. package/docs/debugging-agent-runs.md +242 -0
  575. package/docs/getting-started-gke.md +129 -141
  576. package/docs/getting-started-identity-provider.md +53 -38
  577. package/docs/getting-started.md +17 -0
  578. package/docs/host-providers.md +294 -0
  579. package/docs/jira-agents.md +17 -8
  580. package/docs/knowledge/blob-not-found-semantics.md +41 -0
  581. package/docs/knowledge/bounded-file-descriptor.md +52 -0
  582. package/docs/knowledge/delegation-admission-slots.md +52 -0
  583. package/docs/knowledge/http-dispatcher-bootstrap.md +61 -0
  584. package/docs/knowledge/import-rename-target.md +52 -0
  585. package/docs/knowledge/index.md +57 -0
  586. package/docs/knowledge/log.md +9 -0
  587. package/docs/knowledge/mcp-cancelled-task-precedence.md +41 -0
  588. package/docs/knowledge/mcp-http-prompt-discovery.md +41 -0
  589. package/docs/knowledge/mcp-schema-module-boundary.md +41 -0
  590. package/docs/knowledge/nullable-tool-uniqueness.md +52 -0
  591. package/docs/knowledge/overview-cli.md +74 -0
  592. package/docs/knowledge/overview-coding-proxy.md +72 -0
  593. package/docs/knowledge/overview-coding.md +72 -0
  594. package/docs/knowledge/overview-config.md +60 -0
  595. package/docs/knowledge/overview-core.md +72 -0
  596. package/docs/knowledge/overview-deploy.md +83 -0
  597. package/docs/knowledge/overview-mcp.md +61 -0
  598. package/docs/knowledge/overview-prisma.md +72 -0
  599. package/docs/knowledge/overview-providers.md +89 -0
  600. package/docs/knowledge/overview-sandbox.md +83 -0
  601. package/docs/knowledge/overview-surfaces.md +83 -0
  602. package/docs/knowledge/private-datastore-shared-boundary.md +54 -0
  603. package/docs/knowledge/proxy-settlement-projections.md +41 -0
  604. package/docs/knowledge/run-pricing-first-writer.md +43 -0
  605. package/docs/knowledge/schedule-claim-transaction.md +41 -0
  606. package/docs/knowledge/secret-entry-replica-contract.md +52 -0
  607. package/docs/knowledge/terminal-run-first-writer.md +41 -0
  608. package/docs/knowledge/transactional-agent-authorization.md +52 -0
  609. package/docs/knowledge/viewer-notify-write-isolation.md +30 -0
  610. package/docs/knowledge/warm-input-publication.md +30 -0
  611. package/docs/knowledge/workspace-staging-failure.md +54 -0
  612. package/docs/knowledge.md +54 -14
  613. package/docs/mcp-servers.md +254 -0
  614. package/docs/native-sandbox.md +143 -31
  615. package/docs/observability.md +4 -0
  616. package/docs/security-deployment.md +139 -29
  617. package/docs/slack-notifications.md +35 -19
  618. package/docs/tool-secrets.md +45 -10
  619. package/docs/viewer-api.md +6 -0
  620. package/docs/viewer-api.openapi.yml +1 -1
  621. package/help/admin-viewer.md +28 -2
  622. package/help/agent-recipes.md +33 -2
  623. package/help/architecture-agent.md +11 -6
  624. package/help/brokered-secrets.md +3 -0
  625. package/help/build-claude-code-image.md +1 -1
  626. package/help/build-worker-image.md +3 -1
  627. package/help/builder-agent.md +19 -6
  628. package/help/claude-code-run-pane.md +40 -0
  629. package/help/code-review-agents.md +177 -6
  630. package/help/coding-packages.md +156 -6
  631. package/help/cost-attribution.md +9 -5
  632. package/help/creating-agents.md +14 -1
  633. package/help/dependency-cache.md +143 -0
  634. package/help/deploy-gke.md +15 -8
  635. package/help/errors/budget-exhausted.md +187 -0
  636. package/help/errors/budget-group-exhausted.md +5 -1
  637. package/help/errors/coding-mcp-pins-unavailable.md +35 -0
  638. package/help/errors/coding-stream-quota-exceeded.md +33 -0
  639. package/help/errors/coding-workspace-disk-exceeds-limit.md +39 -0
  640. package/help/errors/continuation-closed.md +9 -12
  641. package/help/errors/database-auth-invalid.md +1 -1
  642. package/help/errors/delegation-conflict.md +24 -0
  643. package/help/errors/file-list-truncated.md +45 -0
  644. package/help/errors/full-read-required.md +49 -0
  645. package/help/errors/github-account-not-allowed.md +4 -0
  646. package/help/errors/graph-incomplete.md +43 -0
  647. package/help/errors/graph-limit.md +43 -0
  648. package/help/errors/host-provider-error.md +40 -0
  649. package/help/errors/host-tool-failed.md +36 -0
  650. package/help/errors/mcp-call-limit.md +22 -0
  651. package/help/errors/mcp-call-timeout.md +22 -0
  652. package/help/errors/mcp-server-auth-failed.md +22 -0
  653. package/help/errors/mcp-server-credentials-unavailable.md +45 -0
  654. package/help/errors/mcp-server-error.md +28 -0
  655. package/help/errors/mcp-server-unreachable.md +22 -0
  656. package/help/errors/mcp-servers-off.md +21 -0
  657. package/help/errors/mcp-tool-not-allowed.md +26 -0
  658. package/help/errors/mcp-tool-removed.md +22 -0
  659. package/help/errors/mcp-unavailable.md +25 -0
  660. package/help/errors/merge-conflict.md +49 -0
  661. package/help/errors/native-sandbox-capacity.md +1 -1
  662. package/help/errors/native-sandbox-deadline-exceeded.md +1 -1
  663. package/help/errors/native-sandbox-docker-failed.md +1 -1
  664. package/help/errors/native-sandbox-gateway-error.md +20 -0
  665. package/help/errors/native-sandbox-gateway-unavailable.md +1 -1
  666. package/help/errors/native-sandbox-image-not-pinned.md +1 -1
  667. package/help/errors/native-sandbox-isolation-mismatch.md +1 -1
  668. package/help/errors/native-sandbox-launch-abandoned.md +21 -0
  669. package/help/errors/native-sandbox-network-unenforced.md +1 -1
  670. package/help/errors/native-sandbox-requires-catalog.md +1 -1
  671. package/help/errors/native-sandbox-unavailable.md +1 -1
  672. package/help/errors/native-sandbox-warm-delivery-failed.md +1 -1
  673. package/help/errors/native-sandbox-worker-exited.md +4 -3
  674. package/help/errors/native-sandbox-worker-lost.md +1 -1
  675. package/help/errors/native-sandbox-worker-unready.md +1 -1
  676. package/help/errors/package-not-allowed-pending.md +52 -0
  677. package/help/errors/package-not-allowed.md +51 -0
  678. package/help/errors/package-refusals.md +43 -0
  679. package/help/errors/patch-cursor-malformed.md +31 -0
  680. package/help/errors/repository-not-listed.md +36 -0
  681. package/help/errors/repository-required.md +36 -0
  682. package/help/errors/run-lost.md +39 -0
  683. package/help/errors/run-transcript-download.md +44 -0
  684. package/help/errors/secret-in-value.md +69 -0
  685. package/help/errors/target-merge.md +40 -0
  686. package/help/errors/tool-timeout.md +38 -0
  687. package/help/fix-merge-conflicts.md +73 -0
  688. package/help/github-app-setup.md +132 -0
  689. package/help/github.md +22 -0
  690. package/help/host-providers.md +40 -0
  691. package/help/identity-and-access.md +6 -1
  692. package/help/jira.md +23 -6
  693. package/help/knowledge.md +16 -7
  694. package/help/local-repositories.md +1 -1
  695. package/help/low-power-mode.md +7 -1
  696. package/help/mcp-servers.md +73 -0
  697. package/help/mcp.md +7 -2
  698. package/help/merge-order-check.md +5 -0
  699. package/help/native-capabilities.md +55 -1
  700. package/help/native-sandbox.md +16 -2
  701. package/help/operating-agents.md +21 -0
  702. package/help/package-audit-mode.md +91 -0
  703. package/help/related-pull-requests.md +17 -10
  704. package/help/repo-instructions-and-skills.md +3 -1
  705. package/help/resume-runs-locally.md +134 -0
  706. package/help/review-fix-rounds.md +33 -1
  707. package/help/sharing-agents.md +59 -0
  708. package/help/slack-notifications.md +19 -5
  709. package/help/status-comments.md +31 -0
  710. package/help/stop-run.md +58 -0
  711. package/help/troubleshooting/budgets.md +28 -0
  712. package/help/troubleshooting/coding-workers.md +86 -7
  713. package/help/troubleshooting/debugging-agent-runs.md +29 -0
  714. package/package.json +18 -10
  715. package/prisma/migrations/20261016000000_registry_approved_accepted_advisories/migration.sql +3 -0
  716. package/prisma/migrations/20261016000001_mark_ready_when_passing/migration.sql +3 -0
  717. package/prisma/migrations/20261017000000_debug_trace_max_mb/migration.sql +4 -0
  718. package/prisma/migrations/20261018000000_dependency_cache/migration.sql +53 -0
  719. package/prisma/migrations/20261019000000_claude_max_output_tokens/migration.sql +5 -0
  720. package/prisma/migrations/20261021000000_pr_description_hash/migration.sql +4 -0
  721. package/prisma/migrations/20261022000000_dependency_snapshot_validation_metadata/migration.sql +4 -0
  722. package/prisma/migrations/20261023000000_package_audit_mode/migration.sql +27 -0
  723. package/prisma/migrations/20261024000000_budget_events/migration.sql +26 -0
  724. package/prisma/migrations/20261025000000_cache_aware_holds/migration.sql +9 -0
  725. package/prisma/migrations/20261026000000_budget_overrun/migration.sql +4 -0
  726. package/prisma/migrations/20261027000000_coding_run_request/migration.sql +1 -0
  727. package/prisma/migrations/20261028000000_native_gateway_review_reads/migration.sql +6 -0
  728. package/prisma/migrations/20261029000000_lead_survives_deploy/migration.sql +6 -0
  729. package/prisma/migrations/20261030000000_local_review_covered_sha/migration.sql +2 -0
  730. package/prisma/migrations/20261031000000_coding_run_budget_limit/migration.sql +9 -0
  731. package/prisma/migrations/20261101000000_run_transcripts/migration.sql +22 -0
  732. package/prisma/migrations/20261102000000_host_providers/migration.sql +56 -0
  733. package/prisma/migrations/20261104000000_coding_agent_repository_list/migration.sql +5 -0
  734. package/prisma/migrations/20261106000000_tool_timeout/migration.sql +4 -0
  735. package/prisma/migrations/20261107000000_mcp_servers/migration.sql +33 -0
  736. package/prisma/migrations/20261108000000_coding_mcp/migration.sql +5 -0
  737. package/prisma/migrations/20261109000000_task_run_index/migration.sql +3 -0
  738. package/prisma/schema.prisma +468 -109
  739. package/scripts/git-askpass.sh +1 -1
  740. package/dist/sandbox/generated/zod-to-json-schema.bundle.js +0 -5
@@ -4,7 +4,7 @@ title: Native gateway Service unavailable
4
4
  summary: On Kubernetes, Wardby could not find a usable native gateway Service, so a sandbox run could not start.
5
5
  audience: operator
6
6
  tags: [error, native-agents, sandbox, kubernetes, native_sandbox_gateway_unavailable]
7
- appliesTo: ">=0.5.4"
7
+ appliesTo: ">=0.6.0"
8
8
  ---
9
9
 
10
10
  # Native gateway Service unavailable
@@ -4,7 +4,7 @@ title: Native worker image not pinned
4
4
  summary: NATIVE_SANDBOX_WORKER_IMAGE is a mutable tag, so Wardby refused to launch a sandbox worker.
5
5
  audience: operator
6
6
  tags: [error, native-agents, sandbox, native_sandbox_image_not_pinned]
7
- appliesTo: ">=0.5.4"
7
+ appliesTo: ">=0.6.0"
8
8
  ---
9
9
 
10
10
  # Native worker image not pinned
@@ -4,7 +4,7 @@ title: Native worker pod differs from what Wardby built
4
4
  summary: On Kubernetes, the sandbox pod or its NetworkPolicy as stored by the cluster differs from what Wardby created, so the run failed before starting.
5
5
  audience: operator
6
6
  tags: [error, native-agents, sandbox, kubernetes, native_sandbox_isolation_mismatch]
7
- appliesTo: ">=0.5.4"
7
+ appliesTo: ">=0.6.0"
8
8
  ---
9
9
 
10
10
  # Native worker pod differs from what Wardby built
@@ -0,0 +1,21 @@
1
+ ---
2
+ id: errors/native-sandbox-launch-abandoned
3
+ title: Native worker launch abandoned
4
+ summary: A sandbox run ended while its worker was launching (usually stopped during a low-power gateway wake), so no worker pod was created.
5
+ audience: operator
6
+ tags: [error, native-agents, sandbox, kubernetes, low-power, native_sandbox_launch_abandoned]
7
+ appliesTo: ">=0.7.0"
8
+ ---
9
+
10
+ # Native worker launch abandoned
11
+
12
+ `native_sandbox_launch_abandoned` means a sandbox run ended while its worker was being launched, so Wardby did not create the worker pod. Most often the run was stopped (`stop_run`, or its parent run was cancelled) while the native gateway was waking in low-power mode, which can take a few minutes on a cold node.
13
+
14
+ The run already has its own final status, such as `cancelled`. This code only appears in the control-plane log, as the reason the launch stopped. Nothing is left to clean up.
15
+
16
+ 1. If the run was stopped on purpose, there is nothing to do.
17
+ 2. If you did not stop it, check the run with `get_run`: its status and error say what ended it.
18
+ 3. Trigger the run again if you still want it.
19
+
20
+ See [Low-power mode](../low-power-mode.md) and the
21
+ [native sandbox guide](../../docs/native-sandbox.md).
@@ -4,7 +4,7 @@ title: Native worker network isolation not proven
4
4
  summary: On Kubernetes, Wardby could not prove a sandbox pod's network isolation in time, so it removed the pod and failed the run.
5
5
  audience: operator
6
6
  tags: [error, native-agents, sandbox, kubernetes, native_sandbox_network_unenforced]
7
- appliesTo: ">=0.5.4"
7
+ appliesTo: ">=0.6.0"
8
8
  ---
9
9
 
10
10
  # Native worker network isolation not proven
@@ -4,7 +4,7 @@ title: Sandbox run has no model catalog entry
4
4
  summary: A sandbox-mode run could not start because no model catalog entry was recorded for it.
5
5
  audience: operator
6
6
  tags: [error, native-agents, sandbox, model-catalog, native_sandbox_requires_catalog]
7
- appliesTo: ">=0.5.4"
7
+ appliesTo: ">=0.6.0"
8
8
  ---
9
9
 
10
10
  # Sandbox run has no model catalog entry
@@ -4,7 +4,7 @@ title: Native execution mode unavailable
4
4
  summary: A run failed with native_sandbox_unavailable because its agent is in sandbox mode but the server has no native sandbox configured.
5
5
  audience: operator
6
6
  tags: [error, native-agents, sandbox, native_sandbox_unavailable]
7
- appliesTo: ">=0.5.4"
7
+ appliesTo: ">=0.6.0"
8
8
  ---
9
9
 
10
10
  # Native execution mode unavailable
@@ -4,7 +4,7 @@ title: Native sandbox warm worker could not take the run
4
4
  summary: A run claimed an idle warm-pool worker, delivering its input failed, and the worker could not be confirmed stopped within 30 seconds, so the run failed instead of cold-launching.
5
5
  audience: operator
6
6
  tags: [error, native-agents, sandbox, warm-pool, kubernetes, docker, native_sandbox_warm_delivery_failed]
7
- appliesTo: ">=0.5.4"
7
+ appliesTo: ">=0.6.0"
8
8
  ---
9
9
 
10
10
  # Native sandbox warm worker could not take the run
@@ -4,7 +4,7 @@ title: Native worker exited without a result
4
4
  summary: The sandbox worker container ended without producing a result.
5
5
  audience: operator
6
6
  tags: [error, native-agents, sandbox, native_sandbox_worker_exited]
7
- appliesTo: ">=0.5.4"
7
+ appliesTo: ">=0.6.0"
8
8
  ---
9
9
 
10
10
  # Native worker exited without a result
@@ -13,8 +13,9 @@ appliesTo: ">=0.5.4"
13
13
 
14
14
  1. Read the exit code in the run's error (`get_run`). Code 137 usually means the memory limit was hit.
15
15
  2. If limits are the cause, raise `NATIVE_SANDBOX_MEMORY_MB`, `NATIVE_SANDBOX_PIDS`, or `NATIVE_SANDBOX_CPUS` on the server and restart it.
16
- 3. Otherwise test the agent's tools with `dry_run_tool` and fix the failing code.
17
- 4. Trigger the run again.
16
+ 3. Read the server log line `native worker exited non-zero` (Docker and Kubernetes): its `stderrTail` is the end of the worker's output. The server masks the run's gateway capability and every secret value the agent's tools can read (six characters or longer, as in tool console output) as `[REDACTED]`. If the line has `stderrTailOmitted` instead, there is no tail: `secrets_unavailable` means the server could not read one of those secrets (check the secret store and the tools' attached secrets); `log_read_failed` means it could not read the worker pod's log on Kubernetes (check that the server's Role allows `get` on `pods/log`).
17
+ 4. Otherwise test the agent's tools with `dry_run_tool` and fix the failing code.
18
+ 5. Trigger the run again.
18
19
 
19
20
  See [Run native agents in a sandbox](../native-sandbox.md) and the
20
21
  [native sandbox guide](../../docs/native-sandbox.md).
@@ -4,7 +4,7 @@ title: Native worker lost
4
4
  summary: The sandbox worker container disappeared and was not relaunched.
5
5
  audience: operator
6
6
  tags: [error, native-agents, sandbox, native_sandbox_worker_lost]
7
- appliesTo: ">=0.5.4"
7
+ appliesTo: ">=0.6.0"
8
8
  ---
9
9
 
10
10
  # Native worker lost
@@ -4,7 +4,7 @@ title: Native worker pod did not start
4
4
  summary: On Kubernetes, the sandbox worker pod did not reach the Running state in time, so the run failed before starting.
5
5
  audience: operator
6
6
  tags: [error, native-agents, sandbox, kubernetes, native_sandbox_worker_unready]
7
- appliesTo: ">=0.5.4"
7
+ appliesTo: ">=0.6.0"
8
8
  ---
9
9
 
10
10
  # Native worker pod did not start
@@ -0,0 +1,52 @@
1
+ ---
2
+ id: errors/package-not-allowed-pending
3
+ title: Package not reached (wardby_package_not_allowed_pending)
4
+ summary: The dependency-graph walk stopped before reaching the requested package; the owner should allowlist it directly because retrying rarely helps.
5
+ audience: operator
6
+ tags: [error, coding-agents, packages, allowlist, wardby_package_not_allowed_pending]
7
+ appliesTo: ">=0.7.0"
8
+ ---
9
+
10
+ # Package not reached
11
+
12
+ `wardby_package_not_allowed_pending` (HTTP 403) means the registry's
13
+ dependency-graph walk ended before it reached the requested package. The
14
+ package may still be reachable from an allowlisted one, but the walk was cut
15
+ short (by `REGISTRY_GRAPH_TIMEOUT_MS`), so it was not proven allowed. The error message shows
16
+ how many packages were walked and how many were still queued. 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. Otherwise a metadata request gets
20
+ `wardby_package_not_allowed` at once instead.
21
+
22
+ The answer is final for the agent and is not transient: the walk resumes
23
+ within the run, but each request continues the walk for at most
24
+ `REGISTRY_GRAPH_TIMEOUT_MS`, so a large allowlist can take several requests or
25
+ never finish in time. Retrying rarely helps; allowlisting the package directly
26
+ is the reliable fix.
27
+
28
+ ## What the agent should do
29
+
30
+ Stop retrying. Report the package name so its owner can allowlist it.
31
+
32
+ ## What the owner does
33
+
34
+ 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`.
35
+ 2. Run the request again. Allowing a package name allows all of its kept versions, subject to the release-age and vulnerability checks.
36
+
37
+ Large frameworks (for example Expo) can have a very large graph, because the
38
+ walk follows every in-range version plus optional and peer dependencies.
39
+ Allowlisting the packages the project needs directly avoids the walk for them.
40
+
41
+ ## Operator knobs
42
+
43
+ `REGISTRY_GRAPH_TIMEOUT_MS` is the time one request's walk may take. See
44
+ [Operator limits](../../docs/coding-packages.md#operator-limits).
45
+
46
+ ## Related
47
+
48
+ - [Not allowed: `wardby_package_not_allowed`](package-not-allowed.md)
49
+ - [Graph limit: `wardby_graph_limit`](graph-limit.md)
50
+ - [Still being checked: `wardby_graph_incomplete`](graph-incomplete.md)
51
+ - [Package audit mode](../package-audit-mode.md): find out which packages a task needs without refusals, for a limited time.
52
+ - [Coding packages](../coding-packages.md)
@@ -0,0 +1,51 @@
1
+ ---
2
+ id: errors/package-not-allowed
3
+ title: Package not allowed (wardby_package_not_allowed)
4
+ summary: The coding package registry refused a package because it is not on the agent's allowlist, or is only reachable through a refused package.
5
+ audience: operator
6
+ tags: [error, coding-agents, packages, allowlist, wardby_package_not_allowed]
7
+ appliesTo: ">=0.7.0"
8
+ ---
9
+
10
+ # Package not allowed
11
+
12
+ `wardby_package_not_allowed` (HTTP 403) is a final answer from the package
13
+ registry: the package is not on the agent's `packageAllowlist`, and nothing
14
+ the run has resolved allows it. It is also returned for a package reachable
15
+ only through a package that was itself refused (for example one with a
16
+ high-severity advisory).
17
+
18
+ - When npm resolves a package (a metadata request), the package is refused at
19
+ once unless it is allowlisted, was declared as a dependency by a package
20
+ already resolved in the run, or was approved by the run's lockfile plan. So
21
+ a new top-level package must be allowlisted, even if an allowlisted
22
+ package's dependency graph contains it. (After a lockfile plan of the run
23
+ failed or refused an entry, the metadata request walks the dependency graph
24
+ first, as a download does.)
25
+ - When npm downloads a tarball the run has not resolved (a lockfile install),
26
+ it is refused once the dependency-graph walk finds no allowlisted package
27
+ that reaches it.
28
+
29
+ ## What the agent should do
30
+
31
+ Stop. Do not retry, and do not look for a way around the refusal. Pick an
32
+ already-approved alternative, or report that the package needs approval.
33
+
34
+ ## What the owner does
35
+
36
+ 1. Open the agent with `get_agent`, then add the package to `codingProfile.packageAllowlist` with `update_agent`. This needs `packages:approve` or `agents:admin`. For a package the project adds directly, allowlist the package itself; allowlisting a dependent only helps for a package something already in the project depends on.
37
+ 2. Run the request again. Allowing a package name allows all of its kept versions, subject to the release-age and vulnerability checks.
38
+
39
+ For a PyPI package pulled in by an extra (`psycopg-binary` for
40
+ `psycopg[binary]`), name the extra on the entry instead.
41
+
42
+ If the package is only reachable through a refused one, allowlisting more
43
+ packages will not help; change or drop the refused dependency.
44
+
45
+ ## Related
46
+
47
+ - [Pending answer: `wardby_package_not_allowed_pending`](package-not-allowed-pending.md): the walk stopped before reaching the name.
48
+ - [Graph limit: `wardby_graph_limit`](graph-limit.md)
49
+ - [Still being checked: `wardby_graph_incomplete`](graph-incomplete.md)
50
+ - [Package audit mode](../package-audit-mode.md): find out which packages a task needs without refusals, for a limited time.
51
+ - [Coding packages](../coding-packages.md): the allowlist, the walk and the full error table.
@@ -0,0 +1,43 @@
1
+ ---
2
+ id: errors/package-refusals
3
+ title: Package registry refused an install
4
+ summary: Understand package refusal codes and unblock a coding run's blocked status.
5
+ audience: operator
6
+ tags: [error, packages, allowlist, wardby_graph_incomplete, wardby_graph_limit, wardby_package_not_allowed, wardby_package_not_allowed_pending, wardby_version_filtered, wardby_lockfile_entry_unsupported]
7
+ appliesTo: >=0.2.1
8
+ ---
9
+
10
+ # Package registry refused an install
11
+
12
+ A coding run can finish successfully after restoring its changes because a
13
+ needed package was refused. When no pull request or pushed changes result,
14
+ the parent status says ⛔ **Blocked by the package registry: no changes were
15
+ made.** With a pull request, the link stays and a ⚠️ warning lists refusals.
16
+
17
+ - `wardby_package_not_allowed`, `wardby_package_not_allowed_pending`, and
18
+ `wardby_graph_limit`: add the needed package to the coding agent's
19
+ `codingProfile.packageAllowlist` with `update_agent`.
20
+ - `wardby_graph_incomplete`, `wardby_upstream_error`,
21
+ `wardby_upstream_unavailable`, `wardby_audit_unavailable`, and
22
+ `wardby_download_idle`: the registry could not finish checking the package,
23
+ usually because an upstream was slow or failing. Mention `@wardby` again to
24
+ retry.
25
+ - `wardby_version_filtered`: no version passed the release-age, advisory, or
26
+ malware checks. For release age, wait or adjust
27
+ `codingProfile.packagePolicy.minReleaseAgeDays`. For an advisory, upgrade
28
+ to a safe version or accept the advisory after reviewing exposure using
29
+ `codingProfile.packagePolicy.acceptedAdvisories`. Malware is never waivable:
30
+ use a safe alternative, never bypass the malware check. The code alone
31
+ does not distinguish which check blocked the version.
32
+ - `wardby_lockfile_entry_unsupported`: the lock file installs the package
33
+ from git or a URL, which the registry cannot verify. Depend on a registry
34
+ version instead.
35
+ - Other codes: inspect the registry error and package policy before retrying.
36
+
37
+ Changing allowlists or policy needs `packages:approve` or `agents:admin`.
38
+ `update_agent` replaces the whole package policy, so send all intended fields.
39
+ After fixing the refusal, mention `@wardby` again. An existing run's package
40
+ policy does not change.
41
+
42
+ See [Approve packages for coding agents](../coding-packages.md) and
43
+ [Run status comments](../status-comments.md).
@@ -0,0 +1,31 @@
1
+ ---
2
+ id: errors/patch-cursor-malformed
3
+ title: Patch cursor is malformed
4
+ summary: A repo_pr_read call passed a patchCursor that is not a well-formed cursor for the pull request (edited, truncated, retyped or too long).
5
+ audience: operator
6
+ tags: [error, code-review-agents, repo_pr_read, patchCursor, patch_cursor_malformed, patch_cursor_stale]
7
+ appliesTo: ">=0.7.0"
8
+ ---
9
+
10
+ # Patch cursor is malformed
11
+
12
+ `repo_pr_read` returns `patch_cursor_malformed` to a review agent when the
13
+ `patchCursor` it passed is not a well-formed cursor for this pull request: the
14
+ value was edited, truncated, damaged in transit, retyped by the model, or is
15
+ over-long. No page is returned or recorded as read, and nothing else changes;
16
+ the call can be made again.
17
+
18
+ A cursor is also tied to the pull request's head and compare. When the pull
19
+ request has moved on since the cursor was issued, the call returns
20
+ `patch_cursor_stale` instead.
21
+
22
+ ## What to do
23
+
24
+ - Pass `nextPatchCursor` back exactly as `repo_pr_read` returned it, with the
25
+ same arguments as the call that produced it.
26
+ - After `patch_cursor_stale`, or if no valid cursor is at hand, call
27
+ `repo_pr_read` again without `patchCursor` to start from the first page.
28
+ - If a model keeps rewriting the cursor, tell it in the agent's prompt to copy
29
+ `nextPatchCursor` verbatim.
30
+
31
+ See [Code review agents](../code-review-agents.md) for how patch pages work.
@@ -0,0 +1,36 @@
1
+ ---
2
+ id: errors/repository-not-listed
3
+ title: Repository not on the agent's list (repository_not_listed)
4
+ summary: The repository named for a coding run is not the agent's default or one of its write links; name a listed one, or add it with link_repository.
5
+ audience: operator
6
+ tags: [error, coding-agents, repository_not_listed, invalid_repository, link_repository]
7
+ appliesTo: ">=0.8.0"
8
+ ---
9
+
10
+ # Repository not on the agent's list
11
+
12
+ `repository_not_listed` means the `repository` given to `trigger_agent` or to a
13
+ `delegate_to_<name>` call is neither the coding agent's default
14
+ (`codingProfile.repository`) nor one of its repository links (write access, no
15
+ triggers). No run was started. The message lists the repositories that are
16
+ allowed and never repeats the value that was sent.
17
+
18
+ A webhook that sends `wardbyRepository` gets the same refusal as a 400
19
+ `{ "error": "invalid_repository" }` when
20
+ `codingProfile.allowWebhookTaskOverride` is on. A malformed value (not a string,
21
+ empty, or over 300 characters) is that same 400 with the flag on or off. With
22
+ the flag off, a well-formed value is refused with 403 `{ "error": "disabled" }`
23
+ before it is compared with the list, whoever created the webhook.
24
+
25
+ ## What to do
26
+
27
+ - Name one of the listed repositories, spelled as `your-org/your-repo`.
28
+ - To add a repository, the agent's owner calls `link_repository` with
29
+ `access: "write"`, no triggers and, optionally, a `baseRef`. The owner needs
30
+ write access to it on the host, or an admin approves it.
31
+ - If a native (non-coding) sub-agent is the target, `repository` is refused
32
+ with `repository_requires_coding_agent`: drop the argument.
33
+
34
+ See [Repository required](repository-required.md),
35
+ [Agent recipes](../agent-recipes.md) and the operator guide
36
+ `docs/coding-agent-setup.md`, section "A coding agent's repositories".
@@ -0,0 +1,36 @@
1
+ ---
2
+ id: errors/repository-required
3
+ title: Repository required (repository_required)
4
+ summary: A coding agent with several repositories was asked to work without being told which one; pass repository, or use continuePriorRun.
5
+ audience: operator
6
+ tags: [error, coding-agents, repository_required, repository, link_repository, delegation]
7
+ appliesTo: ">=0.8.0"
8
+ ---
9
+
10
+ # Repository required
11
+
12
+ `repository_required` means a coding agent has more than its default repository
13
+ (it has write links without triggers added with `link_repository`), and the
14
+ request did not say which one to work in. Nothing was started.
15
+
16
+ A `delegate_to_<name>` call to such a sub-agent must name a repository. The
17
+ exception is a follow-up: with `continuePriorRun`, the run works in the
18
+ repository of the run it continues. The message lists the repositories on the
19
+ agent's list.
20
+
21
+ ## What to do
22
+
23
+ - Pass `repository` on the call, using one of the listed repositories, for
24
+ example `your-org/your-repo`.
25
+ - Tell the lead agent in its system prompt which repository each kind of
26
+ change belongs to.
27
+ - If the agent should only work in one repository, remove the extra ones with
28
+ `unlink_repository`.
29
+
30
+ On `trigger_agent` and webhooks, leaving `repository` out uses the default
31
+ repository (`codingProfile.repository`) and is not an error. Webhooks use the
32
+ body field `wardbyRepository`.
33
+
34
+ See [Repository not on the agent's list](repository-not-listed.md),
35
+ [Agent recipes](../agent-recipes.md) and the operator guide
36
+ `docs/coding-agent-setup.md`, section "A coding agent's repositories".
@@ -0,0 +1,39 @@
1
+ ---
2
+ id: errors/run-lost
3
+ title: Run lost
4
+ summary: A run ended as lost, usually because a deploy replaced the version that was executing it.
5
+ audience: operator
6
+ tags: [error, runs, deploy, lost]
7
+ appliesTo: ">=0.7.0"
8
+ ---
9
+
10
+ # Run lost
11
+
12
+ A run with status `lost` stopped without finishing and without a result. Read its `error` with `get_run`. The usual cause is a deploy that changed the application version while the run was still going.
13
+
14
+ ## When a deploy does not lose a run
15
+
16
+ A native run that is waiting in a `delegate_to_*` call on a coding sub-agent, or on a native sub-agent running in `sandbox` mode, is taken over by the new version. It continues when the sub-agent finishes, and the turns it already took are not repeated.
17
+
18
+ ## Reasons
19
+
20
+ - `Durable workflow belongs to application version <old>; this process runs <new>.` The run was mid-turn, waiting on a tool that is not a delegation, or waiting on a control-plane native sub-agent, so the new version could not take it over.
21
+ - `Could not continue across versions: the run's steps changed in the new version.` The run was waiting on a sub-agent, but the new code no longer matches the steps the run had recorded.
22
+ - `Durable workflow could not be re-driven after 3 adoption attempts…` Wardby tried three times to resume the run and gave up.
23
+ - `Orphaned: no heartbeat/progress since before <time>.` Nothing was executing the run and it stopped reporting progress, for example because its process was killed.
24
+
25
+ ## Sub-agents of a lost run
26
+
27
+ When a run is marked lost, sub-agent runs it started that are still going are stopped with the reason `parent run lost`. They are not left running for nobody.
28
+
29
+ A run that continues after a restart of the same version cannot continue a control-plane native sub-agent it was waiting on: that sub-agent ran inside the process that stopped. (After a deploy, a run waiting on such a sub-agent is not taken over at all; it is marked lost, as above.) The sub-agent run is stopped with the reason `parent resumed without it`, and no new one is started. The parent run goes on, and its `delegate_to_*` call returns the error `subagent_interrupted` ("The sub-agent was interrupted by a restart and cannot be resumed; no new sub-agent run was started."), so the model can report it.
30
+
31
+ If two executions of the same `delegate_to_*` step overlap and the call id is already held by a run of a different sub-agent, the call returns `delegation_conflict` instead; see [Delegation conflict](delegation-conflict.md).
32
+
33
+ ## What to do
34
+
35
+ 1. Read the reason with `get_run`.
36
+ 2. Trigger the request again. If an `@`-mention started the run, its status comment says the request was interrupted and should be repeated.
37
+ 3. To lose fewer runs, deploy when few runs are executing. The old version first waits for its runs to finish, up to `SHUTDOWN_DRAIN_SECONDS`; only runs still going after that limit are affected.
38
+
39
+ See [Operating agents](../operating-agents.md) and the [GKE guide](../../docs/getting-started-gke.md).
@@ -0,0 +1,44 @@
1
+ ---
2
+ id: errors/run-transcript-download
3
+ title: Run transcript download refused
4
+ summary: What each refusal from a get_run_transcript download link means (link_invalid, not_found, transcript_expired, transcript_unavailable, transcript_corrupt, local_repository_refused) and what to do.
5
+ audience: operator
6
+ tags: [wardby resume, get_run_transcript, link_invalid, transcript_expired, local_repository_refused, download]
7
+ appliesTo: ">=0.7.0"
8
+ ---
9
+
10
+ # Run transcript download refused
11
+
12
+ `wardby resume` downloads a run's transcript from the link
13
+ `get_run_transcript` returned. When the server refuses, it answers with JSON
14
+ `{ "error": "<code>" }`, and `wardby resume` prints what the code means.
15
+ Nothing is written to your machine.
16
+
17
+ | Code | HTTP | Meaning and what to do |
18
+ | ------------------------ | ---- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
19
+ | `link_invalid` | 403 | The link is malformed, was changed, was made by another server (or by a stdio server, on the HTTP route), or is older than 10 minutes. Call `get_run_transcript` again for a new link. Every HTTP instance must share `SECRET_APP_KEY` (or `REQUEST_STATE_KEY`, if set). |
20
+ | `not_found` | 404 | The person the link was made for can no longer read the run, or the run has no stored transcript. |
21
+ | `transcript_expired` | 410 | The transcript was deleted after `RUN_TRANSCRIPT_RETENTION_DAYS`. |
22
+ | `transcript_unavailable` | 503 | The server has no blob store configured (`BLOB_STORE`), or could not read the object. Check the blob store settings on the server process. |
23
+ | `transcript_corrupt` | 500 | The stored object no longer matches the SHA-256 recorded when it was stored, so the server refused to send it. |
24
+
25
+ `wardby resume` also refuses a download whose bytes do not match the
26
+ server's SHA-256 header, a response larger than it accepts or with an invalid
27
+ length, and run details with control characters, and never writes a partial
28
+ file.
29
+
30
+ ## local_repository_refused
31
+
32
+ Printed by `wardby resume`, not the server. The run's repository is a
33
+ `local:` folder, which names a path on the server's machine, but the link
34
+ comes from another machine. Checking it out would let that server choose any
35
+ repository on yours, so nothing was written. Run the command on the server's
36
+ machine with a link from its stdio MCP server, or pass `--here` to continue
37
+ in the current directory, or `--dir <path>` to check the run out from that
38
+ folder anyway.
39
+
40
+ Over stdio, the link points at a local port the MCP server opens while links
41
+ are in use: if `wardby resume` cannot reach it, keep your MCP client
42
+ connected and request a new link.
43
+
44
+ See [Resume Claude Code runs locally](../resume-runs-locally.md).
@@ -0,0 +1,69 @@
1
+ ---
2
+ id: errors/secret-in-value
3
+ title: A value was not stored because it contains a secret (secret_in_value)
4
+ summary: A datastore or agent memory write was refused because the value contains the value of a secret attached to the agent; store the secret's name and read it when needed.
5
+ audience: operator
6
+ tags: [error, secrets, datastore, memory, secret_in_value, secret_check_unavailable, datastore set, memory set]
7
+ appliesTo: ">=0.7.0"
8
+ ---
9
+
10
+ # A value was not stored because it contains a secret (secret_in_value)
11
+
12
+ `secret_in_value` means a write to a datastore or agent memory contained the
13
+ value of a secret attached to the agent, in the value or in the key. The write
14
+ came from a tool's `datastore.set` (or a shared datastore's `set`), from the
15
+ `memory_set` tool, from the `datastore_set` or `set_agent_memory` MCP tools, or
16
+ from a bundle import. The error names the secret. Nothing was stored.
17
+
18
+ Secret values are never stored in datastores or agent memory, because anything
19
+ stored there can be read back by other tools and later runs that were never
20
+ given the secret, and can be printed.
21
+
22
+ ## What to do
23
+
24
+ Store the secret's **name**, not its value, and read the secret when you need it:
25
+
26
+ - `secrets.get("NAME")` in a tool that is allowed to read the secret, or
27
+ - `fetch(url, { secrets: ["NAME"] })` for a brokered secret.
28
+
29
+ See [Secrets and tools](../../docs/tool-secrets.md#secret-values-are-never-stored).
30
+
31
+ ## `secret_check_unavailable`
32
+
33
+ The agent's secrets could not be read, so the value could not be checked and was
34
+ not stored. Try the write again. If it keeps happening, check the database
35
+ connection and the secret encryption configuration on the server.
36
+
37
+ ## Bundle imports
38
+
39
+ A seeded datastore entry in an imported bundle, per-agent or shared, whose key
40
+ or value contains an attached secret's value is skipped, and the import reports
41
+ a warning that names the secret (the entry's key is withheld from the warning).
42
+ The rest of the bundle is still imported.
43
+
44
+ ## Also masked
45
+
46
+ Secret values are also kept out of other output:
47
+
48
+ - A native run's final text and error have attached secret values replaced with
49
+ `[REDACTED]`.
50
+ - The task text of a `delegate_to_*` call has the delegating agent's attached
51
+ secret values replaced with `[REDACTED]` before the sub-agent's run is created.
52
+ - Comments, reviews, and Jira posts made through built-in tools have attached
53
+ secret values replaced with `[REDACTED]`.
54
+ - If the secrets cannot be read when a run ends, both its stored final text and
55
+ its stored error are
56
+ `[withheld: this text could not be checked for secret values]`.
57
+ - If the secrets cannot be read when a posting tool or a `delegate_to_*` call
58
+ runs, the tool returns `secret_check_unavailable` and posts nothing or creates
59
+ no sub-agent run.
60
+
61
+ ## Limits
62
+
63
+ Matching is by exact value, including its JSON-escaped forms and, for brokered
64
+ secrets, the encoded forms that the broker scrubs. Values shorter than 6
65
+ characters are not matched. A value that is split, re-encoded, or otherwise
66
+ transformed is not detected. Values stored before this check existed are not
67
+ scanned.
68
+
69
+ See also [Brokered secrets](../brokered-secrets.md).
@@ -0,0 +1,40 @@
1
+ ---
2
+ id: errors/target-merge
3
+ title: Target branch could not be merged
4
+ summary: A follow-up run could not fetch or merge its pull request's target branch, so it stopped before the agent started.
5
+ audience: operator
6
+ tags: [error, coding-agents, vcs, merge-conflict, target-branch, pull-requests]
7
+ appliesTo: ">=0.7.0"
8
+ ---
9
+
10
+ # Target branch could not be merged
11
+
12
+ Before a follow-up run on a wardby pull request starts its agent, wardby
13
+ merges the branch the pull request currently targets into the workspace (see
14
+ [Fix merge conflicts on a wardby pull request](../fix-merge-conflicts.md)).
15
+ A run stops with failure category `target_merge` (error
16
+ `vcs_target_merge_failed`) when that could not be done:
17
+
18
+ - the target branch could not be fetched from the repository (it was deleted,
19
+ or the fetch failed);
20
+ - the pull request's branch and its target share no history wardby could
21
+ find: the branches are unrelated, or their common commit is more than about
22
+ 5,000 commits back;
23
+ - the merge itself failed for a reason other than a content conflict (content
24
+ conflicts are handed to the agent, not failed);
25
+ - the git on the machine that runs wardby is older than 2.38, which does not
26
+ support the `merge-tree --write-tree` form the merge uses.
27
+
28
+ Nothing is pushed and no agent work is lost, since the agent had not started.
29
+
30
+ ## What to do
31
+
32
+ - Check the pull request's base branch on GitHub. Retarget it if the branch
33
+ it names no longer exists or is not the one it should merge into.
34
+ - For unrelated histories, merge the branches by hand once; later follow-ups
35
+ then find the merge base.
36
+ - A transient fetch failure succeeds on the next request.
37
+ - Upgrade the machine's git to 2.38 or newer (`git --version` shows it).
38
+
39
+ Related: [Conflict markers remain](merge-conflict.md),
40
+ [Continuation's pull request is no longer open](continuation-closed.md).
@@ -0,0 +1,38 @@
1
+ ---
2
+ id: errors/tool-timeout
3
+ title: A tool call ran out of time (timeout, fetch_cancelled_or_timeout)
4
+ summary: A sandboxed tool call hit its time limit; raise the tool's timeoutMs, up to the server's WARDBY_TOOL_MAX_TIMEOUT_MS.
5
+ audience: developer
6
+ tags: [timeout, timeoutMs, wall-time, fetch_cancelled_or_timeout, sleep_limit, WARDBY_TOOL_MAX_TIMEOUT_MS]
7
+ appliesTo: ">=0.8.0"
8
+ ---
9
+
10
+ # A tool call ran out of time
11
+
12
+ ## What happened
13
+
14
+ A tool's result was `{"error":"timeout","message":"Exceeded the 10000ms wall-time limit. ..."}`.
15
+ The call ran longer than the tool's time limit, so it was stopped. The run goes on: only this call
16
+ failed. The message names the limit. Without `timeoutMs` a tool has 10 seconds.
17
+
18
+ Related results:
19
+
20
+ - `fetch_cancelled_or_timeout` from inside the tool: a `fetch` was aborted because the call ran
21
+ out of time or the run stopped.
22
+ - `sleep_limit`: the tool asked to wait longer than its own limit.
23
+ - `{"error":"cancelled"}`: the run was stopped while the call was running.
24
+
25
+ ## What to do
26
+
27
+ 1. Check how long the API the tool calls really takes.
28
+ 2. Give the tool a longer limit with `update_tool` (`timeoutMs`, in milliseconds), or
29
+ `wardby tool update <tool> --timeout-ms <ms>`.
30
+ 3. Test it with `dry_run_tool` and the same `timeoutMs`.
31
+
32
+ `timeoutMs` can't exceed the server's `WARDBY_TOOL_MAX_TIMEOUT_MS` (default `300000`); a larger
33
+ value is refused with an error naming the ceiling. If you need more, ask the operator to raise it.
34
+ If the operator lowers the ceiling, a tool with a larger `timeoutMs` runs with the ceiling.
35
+
36
+ Runs that started before the change keep the limit they loaded; the next run uses the new one.
37
+
38
+ See [Use native agents, tools, and data](../native-capabilities.md#tool-time-limits).