@wardby/cli 0.5.3 → 0.7.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 (763) hide show
  1. package/.env.example +33 -0
  2. package/README.md +25 -14
  3. package/deploy/local/docker-compose.quickstart-coding.yml +13 -0
  4. package/dist/claude-coding-worker/context.d.ts +22 -0
  5. package/dist/claude-coding-worker/context.js +92 -0
  6. package/dist/claude-coding-worker/driver.d.ts +27 -3
  7. package/dist/claude-coding-worker/driver.js +161 -20
  8. package/dist/claude-coding-worker/main.js +34 -6
  9. package/dist/claude-coding-worker/sdk.js +25 -5
  10. package/dist/claude-coding-worker/tool-socket.d.ts +27 -0
  11. package/dist/claude-coding-worker/tool-socket.js +111 -0
  12. package/dist/claude-coding-worker/transcript.d.ts +18 -0
  13. package/dist/claude-coding-worker/transcript.js +77 -0
  14. package/dist/cli-help.d.ts +1 -1
  15. package/dist/cli-help.js +6 -2
  16. package/dist/cli-native-mode.d.ts +9 -0
  17. package/dist/cli-native-mode.js +20 -0
  18. package/dist/cli.d.ts +3 -1
  19. package/dist/cli.js +161 -11
  20. package/dist/coding/claude-context.d.ts +45 -0
  21. package/dist/coding/claude-context.js +434 -0
  22. package/dist/coding/continuation-wording.d.ts +35 -0
  23. package/dist/coding/continuation-wording.js +73 -0
  24. package/dist/coding/linked-issue-note.d.ts +23 -0
  25. package/dist/coding/linked-issue-note.js +47 -0
  26. package/dist/coding/merge-wording.d.ts +28 -0
  27. package/dist/coding/merge-wording.js +78 -0
  28. package/dist/coding/pr-description-note.d.ts +9 -0
  29. package/dist/coding/pr-description-note.js +32 -0
  30. package/dist/coding/profile.d.ts +50 -118
  31. package/dist/coding/profile.js +51 -4
  32. package/dist/coding/protected-path-wording.d.ts +8 -0
  33. package/dist/coding/protected-path-wording.js +1 -1
  34. package/dist/coding/protocol.d.ts +292 -270
  35. package/dist/coding/protocol.js +322 -15
  36. package/dist/coding/redact.d.ts +3 -0
  37. package/dist/coding/redact.js +12 -0
  38. package/dist/coding/registry/allowlist.d.ts +12 -0
  39. package/dist/coding/registry/allowlist.js +14 -1
  40. package/dist/coding/registry/audit-mode.d.ts +153 -0
  41. package/dist/coding/registry/audit-mode.js +304 -0
  42. package/dist/coding/registry/lockfile-shared.d.ts +36 -0
  43. package/dist/coding/registry/lockfile-shared.js +128 -0
  44. package/dist/coding/registry/lockfiles.js +1 -1
  45. package/dist/coding/registry/npm-lockfile-formats.d.ts +11 -0
  46. package/dist/coding/registry/npm-lockfile-formats.js +41 -0
  47. package/dist/coding/registry/npm-lockfile.d.ts +8 -4
  48. package/dist/coding/registry/npm-lockfile.js +4 -6
  49. package/dist/coding/registry/npm.js +78 -8
  50. package/dist/coding/registry/pnpm-lockfile.d.ts +17 -0
  51. package/dist/coding/registry/pnpm-lockfile.js +189 -0
  52. package/dist/coding/registry/pypi-plan.d.ts +50 -0
  53. package/dist/coding/registry/pypi-plan.js +406 -0
  54. package/dist/coding/registry/pypi-requirements.d.ts +58 -0
  55. package/dist/coding/registry/pypi-requirements.js +155 -0
  56. package/dist/coding/registry/pypi.d.ts +3 -27
  57. package/dist/coding/registry/pypi.js +40 -154
  58. package/dist/coding/registry/refusal-hints.d.ts +20 -0
  59. package/dist/coding/registry/refusal-hints.js +61 -0
  60. package/dist/coding/registry/refusal-wording.d.ts +11 -0
  61. package/dist/coding/registry/refusal-wording.js +56 -0
  62. package/dist/coding/registry/report.d.ts +70 -8
  63. package/dist/coding/registry/report.js +112 -5
  64. package/dist/coding/registry/types.d.ts +58 -8
  65. package/dist/coding/registry/yarn-lockfile.d.ts +30 -0
  66. package/dist/coding/registry/yarn-lockfile.js +367 -0
  67. package/dist/coding/services/catalog.d.ts +37 -351
  68. package/dist/coding/transcript/claude-code.d.ts +13 -0
  69. package/dist/coding/transcript/claude-code.js +273 -0
  70. package/dist/coding/transcript/download-protocol.d.ts +30 -0
  71. package/dist/coding/transcript/download-protocol.js +18 -0
  72. package/dist/coding/transcript/format.d.ts +20 -0
  73. package/dist/coding/transcript/format.js +32 -0
  74. package/dist/coding/transcript/recorder.d.ts +51 -0
  75. package/dist/coding/transcript/recorder.js +225 -0
  76. package/dist/coding/transcript/resume/checkout.d.ts +31 -0
  77. package/dist/coding/transcript/resume/checkout.js +203 -0
  78. package/dist/coding/transcript/resume/command.d.ts +17 -0
  79. package/dist/coding/transcript/resume/command.js +176 -0
  80. package/dist/coding/transcript/resume/download.d.ts +20 -0
  81. package/dist/coding/transcript/resume/download.js +153 -0
  82. package/dist/coding/transcript/resume/launch.d.ts +38 -0
  83. package/dist/coding/transcript/resume/launch.js +128 -0
  84. package/dist/coding/transcript/resume/session-file.d.ts +13 -0
  85. package/dist/coding/transcript/resume/session-file.js +79 -0
  86. package/dist/coding/transcript/resume/stand-in.d.ts +11 -0
  87. package/dist/coding/transcript/resume/stand-in.js +49 -0
  88. package/dist/coding-worker/artifact.d.ts +16 -3
  89. package/dist/coding-worker/artifact.js +5 -3
  90. package/dist/coding-worker/debug-trace.d.ts +6 -5
  91. package/dist/coding-worker/debug-trace.js +13 -18
  92. package/dist/coding-worker/dependency-cache.d.mts +229 -0
  93. package/dist/coding-worker/dependency-cache.mjs +2123 -0
  94. package/dist/coding-worker/driver.d.ts +4 -3
  95. package/dist/coding-worker/driver.js +118 -38
  96. package/dist/coding-worker/errors.d.ts +1 -0
  97. package/dist/coding-worker/errors.js +32 -0
  98. package/dist/coding-worker/sdk.d.ts +6 -0
  99. package/dist/coding-worker/sdk.js +1 -0
  100. package/dist/coding-worker/skills.d.ts +23 -0
  101. package/dist/coding-worker/skills.js +117 -0
  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 +13 -0
  105. package/dist/config/dependency-cache.d.ts +23 -0
  106. package/dist/config/dependency-cache.js +32 -0
  107. package/dist/config/github-allowed-accounts.d.ts +15 -0
  108. package/dist/config/github-allowed-accounts.js +36 -0
  109. package/dist/config/low-power.d.ts +12 -0
  110. package/dist/config/low-power.js +18 -0
  111. package/dist/config/mobile.d.ts +12 -0
  112. package/dist/config/mobile.js +18 -0
  113. package/dist/config/providers.d.ts +65 -3
  114. package/dist/config/providers.js +147 -11
  115. package/dist/config/test-simulators.d.ts +82 -0
  116. package/dist/config/test-simulators.js +305 -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-queue.d.ts +2 -1
  130. package/dist/core/coding-queue.js +7 -0
  131. package/dist/core/cron.d.ts +19 -1
  132. package/dist/core/cron.js +17 -0
  133. package/dist/core/datastores.js +1 -1
  134. package/dist/core/db.d.ts +16 -6
  135. package/dist/core/db.js +12 -10
  136. package/dist/core/deferred-coding.d.ts +14 -0
  137. package/dist/core/deferred-coding.js +62 -0
  138. package/dist/core/delegation-child.d.ts +25 -0
  139. package/dist/core/delegation-child.js +37 -0
  140. package/dist/core/dispatch.d.ts +53 -0
  141. package/dist/core/dispatch.js +167 -57
  142. package/dist/core/engine-native.js +10 -6
  143. package/dist/core/error-code.d.ts +38 -0
  144. package/dist/core/error-code.js +168 -0
  145. package/dist/core/grants.d.ts +19 -6
  146. package/dist/core/grants.js +55 -6
  147. package/dist/core/host-events.d.ts +67 -5
  148. package/dist/core/host-events.js +571 -37
  149. package/dist/core/host-status.d.ts +85 -3
  150. package/dist/core/host-status.js +298 -20
  151. package/dist/core/issue-bridge.d.ts +50 -6
  152. package/dist/core/issue-bridge.js +151 -20
  153. package/dist/core/issue-events.d.ts +1 -1
  154. package/dist/core/issue-events.js +16 -11
  155. package/dist/core/issue-status.d.ts +1 -1
  156. package/dist/core/issue-status.js +68 -29
  157. package/dist/core/logger.d.ts +5 -0
  158. package/dist/core/logger.js +14 -1
  159. package/dist/core/lost-run-children.d.ts +6 -0
  160. package/dist/core/lost-run-children.js +32 -0
  161. package/dist/core/mark-ready.d.ts +34 -0
  162. package/dist/core/mark-ready.js +152 -0
  163. package/dist/core/markdown-code.d.ts +8 -0
  164. package/dist/core/markdown-code.js +107 -0
  165. package/dist/core/memory-tools.js +7 -0
  166. package/dist/core/merge-order-check.d.ts +130 -0
  167. package/dist/core/merge-order-check.js +343 -0
  168. package/dist/core/notification-dispatcher.d.ts +70 -0
  169. package/dist/core/notification-dispatcher.js +368 -0
  170. package/dist/core/notification-templates.d.ts +19 -0
  171. package/dist/core/notification-templates.js +139 -0
  172. package/dist/core/notifications.d.ts +10 -0
  173. package/dist/core/notifications.js +38 -0
  174. package/dist/core/pg-auth.d.ts +22 -0
  175. package/dist/core/pg-auth.js +152 -0
  176. package/dist/core/power-composition.d.ts +16 -0
  177. package/dist/core/power-composition.js +37 -0
  178. package/dist/core/power-idle.d.ts +14 -0
  179. package/dist/core/power-idle.js +30 -0
  180. package/dist/core/power.d.ts +71 -0
  181. package/dist/core/power.js +202 -0
  182. package/dist/core/pull-request-state-sync.js +2 -2
  183. package/dist/core/reconciler.d.ts +8 -5
  184. package/dist/core/reconciler.js +37 -6
  185. package/dist/core/related-pull-requests.d.ts +59 -7
  186. package/dist/core/related-pull-requests.js +140 -25
  187. package/dist/core/reply-parts.d.ts +21 -0
  188. package/dist/core/reply-parts.js +73 -0
  189. package/dist/core/repo-access.d.ts +15 -0
  190. package/dist/core/repo-access.js +66 -0
  191. package/dist/core/review-fix.d.ts +38 -1
  192. package/dist/core/review-fix.js +209 -7
  193. package/dist/core/review-host-checks.d.ts +1 -1
  194. package/dist/core/review-host-tools.d.ts +23 -0
  195. package/dist/core/review-host-tools.js +156 -14
  196. package/dist/core/review-reads.d.ts +55 -0
  197. package/dist/core/review-reads.js +233 -0
  198. package/dist/core/run-status.d.ts +12 -0
  199. package/dist/core/run-status.js +12 -0
  200. package/dist/core/runner.d.ts +384 -5
  201. package/dist/core/runner.js +1244 -372
  202. package/dist/core/schedule-start.d.ts +12 -0
  203. package/dist/core/schedule-start.js +14 -0
  204. package/dist/core/secret-broker-config.d.ts +39 -0
  205. package/dist/core/secret-broker-config.js +112 -0
  206. package/dist/core/secret-guard.d.ts +46 -0
  207. package/dist/core/secret-guard.js +104 -0
  208. package/dist/core/secret-guarded-stores.d.ts +12 -0
  209. package/dist/core/secret-guarded-stores.js +41 -0
  210. package/dist/core/secret-spans.d.ts +50 -0
  211. package/dist/core/secret-spans.js +94 -0
  212. package/dist/core/secrets.d.ts +39 -4
  213. package/dist/core/secrets.js +148 -40
  214. package/dist/core/stop-run.d.ts +46 -0
  215. package/dist/core/stop-run.js +61 -0
  216. package/dist/core/workflow-event-recorder.d.ts +14 -0
  217. package/dist/core/workflow-event-recorder.js +120 -0
  218. package/dist/core/workflow-events.d.ts +94 -0
  219. package/dist/core/workflow-events.js +48 -0
  220. package/dist/core/workflow-run-events.d.ts +18 -0
  221. package/dist/core/workflow-run-events.js +75 -0
  222. package/dist/core/zod-json-schema.d.ts +4 -0
  223. package/dist/core/zod-json-schema.js +39 -0
  224. package/dist/core/zod3-window.d.ts +35 -0
  225. package/dist/core/zod3-window.js +124 -0
  226. package/dist/generated/prisma/browser.d.ts +92 -3
  227. package/dist/generated/prisma/client.d.ts +92 -3
  228. package/dist/generated/prisma/commonInputTypes.d.ts +364 -54
  229. package/dist/generated/prisma/enums.d.ts +37 -0
  230. package/dist/generated/prisma/enums.js +31 -0
  231. package/dist/generated/prisma/internal/class.d.ts +132 -0
  232. package/dist/generated/prisma/internal/class.js +4 -4
  233. package/dist/generated/prisma/internal/prismaNamespace.d.ts +1332 -142
  234. package/dist/generated/prisma/internal/prismaNamespace.js +227 -5
  235. package/dist/generated/prisma/internal/prismaNamespaceBrowser.d.ts +234 -0
  236. package/dist/generated/prisma/internal/prismaNamespaceBrowser.js +227 -5
  237. package/dist/generated/prisma/models/Agent.d.ts +464 -7
  238. package/dist/generated/prisma/models/AgentRepository.d.ts +42 -1
  239. package/dist/generated/prisma/models/CodingAgentProfile.d.ts +301 -1
  240. package/dist/generated/prisma/models/CodingProxyRequest.d.ts +207 -3
  241. package/dist/generated/prisma/models/CodingProxySession.d.ts +114 -1
  242. package/dist/generated/prisma/models/CodingRun.d.ts +1841 -1
  243. package/dist/generated/prisma/models/DeferredReview.d.ts +78 -1
  244. package/dist/generated/prisma/models/DependencySnapshot.d.ts +1668 -0
  245. package/dist/generated/prisma/models/DependencySnapshot.js +1 -0
  246. package/dist/generated/prisma/models/IssuePullRequest.d.ts +6 -2
  247. package/dist/generated/prisma/models/LocalReview.d.ts +40 -1
  248. package/dist/generated/prisma/models/NativeGatewayCall.d.ts +1713 -0
  249. package/dist/generated/prisma/models/NativeGatewayCall.js +1 -0
  250. package/dist/generated/prisma/models/NativeGatewaySession.d.ts +1551 -0
  251. package/dist/generated/prisma/models/NativeGatewaySession.js +1 -0
  252. package/dist/generated/prisma/models/NativeWarmWorker.d.ts +1296 -0
  253. package/dist/generated/prisma/models/NativeWarmWorker.js +1 -0
  254. package/dist/generated/prisma/models/NotificationChannel.d.ts +1543 -0
  255. package/dist/generated/prisma/models/NotificationChannel.js +1 -0
  256. package/dist/generated/prisma/models/NotificationDelivery.d.ts +1502 -0
  257. package/dist/generated/prisma/models/NotificationDelivery.js +1 -0
  258. package/dist/generated/prisma/models/NotificationThread.d.ts +1090 -0
  259. package/dist/generated/prisma/models/NotificationThread.js +1 -0
  260. package/dist/generated/prisma/models/RegistryAllowance.d.ts +41 -1
  261. package/dist/generated/prisma/models/RegistryApprovedVersion.d.ts +75 -1
  262. package/dist/generated/prisma/models/RegistryAuditRecord.d.ts +1364 -0
  263. package/dist/generated/prisma/models/RegistryAuditRecord.js +1 -0
  264. package/dist/generated/prisma/models/Run.d.ts +1619 -58
  265. package/dist/generated/prisma/models/RunBudgetEvent.d.ts +1211 -0
  266. package/dist/generated/prisma/models/RunBudgetEvent.js +1 -0
  267. package/dist/generated/prisma/models/RunHostCheck.d.ts +36 -1
  268. package/dist/generated/prisma/models/RunTranscript.d.ts +1339 -0
  269. package/dist/generated/prisma/models/RunTranscript.js +1 -0
  270. package/dist/generated/prisma/models/Secret.d.ts +37 -1
  271. package/dist/generated/prisma/models/SecretBrokerChange.d.ts +1101 -0
  272. package/dist/generated/prisma/models/SecretBrokerChange.js +1 -0
  273. package/dist/generated/prisma/models/WorkflowEvent.d.ts +1422 -0
  274. package/dist/generated/prisma/models/WorkflowEvent.js +1 -0
  275. package/dist/generated/prisma/models.d.ts +12 -0
  276. package/dist/help/build.js +4 -2
  277. package/dist/help/catalog.d.ts +1 -1
  278. package/dist/help/catalog.js +31 -6
  279. package/dist/help-index.json +2584 -146
  280. package/dist/import/create.js +49 -3
  281. package/dist/import/neutral-schema.d.ts +50 -277
  282. package/dist/import/neutral-schema.js +7 -4
  283. package/dist/knowledge/check.d.ts +1 -1
  284. package/dist/knowledge/cli.d.ts +11 -1
  285. package/dist/knowledge/cli.js +37 -4
  286. package/dist/knowledge/concept.d.ts +3 -19
  287. package/dist/knowledge/location.d.ts +31 -0
  288. package/dist/knowledge/location.js +78 -0
  289. package/dist/mcp/auth/access.d.ts +11 -2
  290. package/dist/mcp/auth/access.js +15 -1
  291. package/dist/mcp/auth/ownership.d.ts +7 -7
  292. package/dist/mcp/auth/repo-authorization.js +14 -0
  293. package/dist/mcp/auth/resource-server.d.ts +2 -1
  294. package/dist/mcp/auth/resource-server.js +7 -2
  295. package/dist/mcp/auth/self-hosted/browser.d.ts +1 -1
  296. package/dist/mcp/auth/self-hosted/browser.js +19 -6
  297. package/dist/mcp/auth/self-hosted/credentials.d.ts +3 -3
  298. package/dist/mcp/auth/self-hosted/session.d.ts +2 -2
  299. package/dist/mcp/context.d.ts +6 -0
  300. package/dist/mcp/host-events/github-ingress.d.ts +25 -1
  301. package/dist/mcp/host-events/github-ingress.js +70 -1
  302. package/dist/mcp/index.d.ts +19 -0
  303. package/dist/mcp/index.js +117 -20
  304. package/dist/mcp/server.d.ts +13 -0
  305. package/dist/mcp/server.js +33 -14
  306. package/dist/mcp/tools/agents.d.ts +4 -0
  307. package/dist/mcp/tools/agents.js +277 -24
  308. package/dist/mcp/tools/datastore.js +17 -8
  309. package/dist/mcp/tools/grants.js +9 -3
  310. package/dist/mcp/tools/memory.js +11 -1
  311. package/dist/mcp/tools/notification-channels.d.ts +2 -0
  312. package/dist/mcp/tools/notification-channels.js +293 -0
  313. package/dist/mcp/tools/packages.d.ts +2 -0
  314. package/dist/mcp/tools/packages.js +195 -0
  315. package/dist/mcp/tools/power.d.ts +2 -0
  316. package/dist/mcp/tools/power.js +77 -0
  317. package/dist/mcp/tools/repositories.js +18 -5
  318. package/dist/mcp/tools/run-access.d.ts +16 -0
  319. package/dist/mcp/tools/run-access.js +25 -0
  320. package/dist/mcp/tools/run-transcript-download.d.ts +30 -0
  321. package/dist/mcp/tools/run-transcript-download.js +129 -0
  322. package/dist/mcp/tools/run-transcript.d.ts +19 -0
  323. package/dist/mcp/tools/run-transcript.js +70 -0
  324. package/dist/mcp/tools/runs.d.ts +0 -6
  325. package/dist/mcp/tools/runs.js +41 -14
  326. package/dist/mcp/tools/scheduling.js +3 -1
  327. package/dist/mcp/tools/secret-broker-compat.d.ts +12 -0
  328. package/dist/mcp/tools/secret-broker-compat.js +23 -0
  329. package/dist/mcp/tools/secret-elicitation-form.d.ts +22 -2
  330. package/dist/mcp/tools/secret-elicitation-form.js +205 -10
  331. package/dist/mcp/tools/secret-elicitation-server.d.ts +6 -0
  332. package/dist/mcp/tools/secret-elicitation-server.js +10 -54
  333. package/dist/mcp/tools/secret-elicitation.d.ts +38 -3
  334. package/dist/mcp/tools/secret-elicitation.js +110 -12
  335. package/dist/mcp/tools/secrets.js +186 -9
  336. package/dist/mcp/tools/stop-run.d.ts +2 -0
  337. package/dist/mcp/tools/stop-run.js +82 -0
  338. package/dist/mcp/tools/subagents.js +2 -2
  339. package/dist/mcp/tools/tools.d.ts +2 -2
  340. package/dist/mcp/tools/tools.js +47 -11
  341. package/dist/mcp/transport/stdio-link-host.d.ts +20 -0
  342. package/dist/mcp/transport/stdio-link-host.js +67 -0
  343. package/dist/mcp/transport/streamable-http.d.ts +13 -0
  344. package/dist/mcp/transport/streamable-http.js +41 -1
  345. package/dist/native-worker/composition.d.ts +23 -0
  346. package/dist/native-worker/composition.js +77 -0
  347. package/dist/native-worker/docker-isolation.d.ts +65 -0
  348. package/dist/native-worker/docker-isolation.js +183 -0
  349. package/dist/native-worker/docker-launcher.d.ts +110 -0
  350. package/dist/native-worker/docker-launcher.js +297 -0
  351. package/dist/native-worker/gateway-server.d.ts +77 -0
  352. package/dist/native-worker/gateway-server.js +412 -0
  353. package/dist/native-worker/gateway.d.ts +70 -0
  354. package/dist/native-worker/gateway.js +263 -0
  355. package/dist/native-worker/http-server.d.ts +24 -0
  356. package/dist/native-worker/http-server.js +113 -0
  357. package/dist/native-worker/http-transport.d.ts +17 -0
  358. package/dist/native-worker/http-transport.js +88 -0
  359. package/dist/native-worker/kubernetes-isolation.d.ts +90 -0
  360. package/dist/native-worker/kubernetes-isolation.js +218 -0
  361. package/dist/native-worker/kubernetes-launcher.d.ts +106 -0
  362. package/dist/native-worker/kubernetes-launcher.js +375 -0
  363. package/dist/native-worker/launch.d.ts +62 -0
  364. package/dist/native-worker/launch.js +49 -0
  365. package/dist/native-worker/ledger.d.ts +125 -0
  366. package/dist/native-worker/ledger.js +245 -0
  367. package/dist/native-worker/loopback.d.ts +12 -0
  368. package/dist/native-worker/loopback.js +44 -0
  369. package/dist/native-worker/main.d.ts +8 -0
  370. package/dist/native-worker/main.js +85 -0
  371. package/dist/native-worker/protocol.d.ts +296 -0
  372. package/dist/native-worker/protocol.js +246 -0
  373. package/dist/native-worker/sandbox-executor.d.ts +83 -0
  374. package/dist/native-worker/sandbox-executor.js +284 -0
  375. package/dist/native-worker/stderr-redaction.d.ts +77 -0
  376. package/dist/native-worker/stderr-redaction.js +237 -0
  377. package/dist/native-worker/stdio.d.ts +29 -0
  378. package/dist/native-worker/stdio.js +189 -0
  379. package/dist/native-worker/warm-delivery.d.ts +16 -0
  380. package/dist/native-worker/warm-delivery.js +33 -0
  381. package/dist/native-worker/warm-pool-ledger.d.ts +39 -0
  382. package/dist/native-worker/warm-pool-ledger.js +73 -0
  383. package/dist/native-worker/warm-pool.d.ts +107 -0
  384. package/dist/native-worker/warm-pool.js +283 -0
  385. package/dist/native-worker/worker.d.ts +17 -0
  386. package/dist/native-worker/worker.js +141 -0
  387. package/dist/observability/metrics.js +6 -1
  388. package/dist/providers/auth/authorization-server.d.ts +3 -0
  389. package/dist/providers/auth/index.js +2 -0
  390. package/dist/providers/auth/self-hosted.d.ts +14 -2
  391. package/dist/providers/auth/self-hosted.js +54 -4
  392. package/dist/providers/chat/fake.d.ts +46 -0
  393. package/dist/providers/chat/fake.js +39 -0
  394. package/dist/providers/chat/index.d.ts +4 -0
  395. package/dist/providers/chat/index.js +8 -0
  396. package/dist/providers/chat/slack.d.ts +37 -0
  397. package/dist/providers/chat/slack.js +105 -0
  398. package/dist/providers/chat/types.d.ts +42 -0
  399. package/dist/providers/chat/types.js +19 -0
  400. package/dist/providers/coding-proxy/dependency-cache/eviction.d.ts +29 -0
  401. package/dist/providers/coding-proxy/dependency-cache/eviction.js +87 -0
  402. package/dist/providers/coding-proxy/dependency-cache/key.d.ts +33 -0
  403. package/dist/providers/coding-proxy/dependency-cache/key.js +86 -0
  404. package/dist/providers/coding-proxy/dependency-cache/model-request-seal.d.ts +18 -0
  405. package/dist/providers/coding-proxy/dependency-cache/model-request-seal.js +40 -0
  406. package/dist/providers/coding-proxy/dependency-cache/prisma-store.d.ts +25 -0
  407. package/dist/providers/coding-proxy/dependency-cache/prisma-store.js +131 -0
  408. package/dist/providers/coding-proxy/dependency-cache/service.d.ts +70 -0
  409. package/dist/providers/coding-proxy/dependency-cache/service.js +409 -0
  410. package/dist/providers/coding-proxy/dependency-cache/store.d.ts +85 -0
  411. package/dist/providers/coding-proxy/dependency-cache/store.js +95 -0
  412. package/dist/providers/coding-proxy/hold.d.ts +32 -0
  413. package/dist/providers/coding-proxy/hold.js +86 -0
  414. package/dist/providers/coding-proxy/interrupted.d.ts +70 -0
  415. package/dist/providers/coding-proxy/interrupted.js +104 -0
  416. package/dist/providers/coding-proxy/memory-ledger.d.ts +15 -2
  417. package/dist/providers/coding-proxy/memory-ledger.js +84 -8
  418. package/dist/providers/coding-proxy/metering.d.ts +16 -0
  419. package/dist/providers/coding-proxy/metering.js +27 -4
  420. package/dist/providers/coding-proxy/prisma-ledger.d.ts +15 -2
  421. package/dist/providers/coding-proxy/prisma-ledger.js +179 -67
  422. package/dist/providers/coding-proxy/proxy.d.ts +14 -1
  423. package/dist/providers/coding-proxy/proxy.js +166 -14
  424. package/dist/providers/coding-proxy/registry/audit.d.ts +53 -10
  425. package/dist/providers/coding-proxy/registry/audit.js +94 -17
  426. package/dist/providers/coding-proxy/registry/lockfile-parse-worker.d.ts +36 -0
  427. package/dist/providers/coding-proxy/registry/lockfile-parse-worker.js +67 -0
  428. package/dist/providers/coding-proxy/registry/lockfile-parse.d.ts +16 -0
  429. package/dist/providers/coding-proxy/registry/lockfile-parse.js +110 -0
  430. package/dist/providers/coding-proxy/registry/plan.d.ts +9 -0
  431. package/dist/providers/coding-proxy/registry/plan.js +201 -48
  432. package/dist/providers/coding-proxy/registry/prisma-store.d.ts +11 -5
  433. package/dist/providers/coding-proxy/registry/prisma-store.js +120 -17
  434. package/dist/providers/coding-proxy/registry/service.d.ts +97 -16
  435. package/dist/providers/coding-proxy/registry/service.js +579 -112
  436. package/dist/providers/coding-proxy/registry/store.d.ts +84 -9
  437. package/dist/providers/coding-proxy/registry/store.js +54 -1
  438. package/dist/providers/coding-proxy/runtime.d.ts +4 -0
  439. package/dist/providers/coding-proxy/runtime.js +78 -16
  440. package/dist/providers/coding-proxy/server.d.ts +6 -1
  441. package/dist/providers/coding-proxy/server.js +45 -1
  442. package/dist/providers/coding-proxy/types.d.ts +65 -1
  443. package/dist/providers/datastore/types.d.ts +5 -0
  444. package/dist/providers/engine/types.d.ts +36 -2
  445. package/dist/providers/engine/types.js +39 -0
  446. package/dist/providers/executor/composition.d.ts +31 -1
  447. package/dist/providers/executor/composition.js +81 -8
  448. package/dist/providers/executor/container.d.ts +385 -9
  449. package/dist/providers/executor/container.js +1234 -99
  450. package/dist/providers/executor/dbos-status.d.ts +31 -0
  451. package/dist/providers/executor/dbos-status.js +64 -0
  452. package/dist/providers/executor/dbos.d.ts +91 -0
  453. package/dist/providers/executor/dbos.js +319 -26
  454. package/dist/providers/executor/deferred.d.ts +44 -0
  455. package/dist/providers/executor/deferred.js +100 -0
  456. package/dist/providers/executor/in-process.d.ts +9 -1
  457. package/dist/providers/executor/in-process.js +14 -4
  458. package/dist/providers/executor/linked-issue-reader.d.ts +16 -0
  459. package/dist/providers/executor/linked-issue-reader.js +30 -0
  460. package/dist/providers/executor/routing.d.ts +39 -10
  461. package/dist/providers/executor/routing.js +77 -32
  462. package/dist/providers/executor/types.d.ts +25 -0
  463. package/dist/providers/index.d.ts +2 -1
  464. package/dist/providers/issue-tracker/types.d.ts +17 -0
  465. package/dist/providers/issue-tracker/types.js +39 -1
  466. package/dist/providers/jobs/claude-tool-setup.d.ts +4 -0
  467. package/dist/providers/jobs/claude-tool-setup.js +5 -2
  468. package/dist/providers/jobs/docker-isolation.d.ts +8 -0
  469. package/dist/providers/jobs/docker-isolation.js +17 -0
  470. package/dist/providers/jobs/docker.d.ts +1 -0
  471. package/dist/providers/jobs/docker.js +29 -4
  472. package/dist/providers/jobs/fake-kubernetes-api.d.ts +23 -2
  473. package/dist/providers/jobs/fake-kubernetes-api.js +45 -1
  474. package/dist/providers/jobs/kubernetes-api.d.ts +25 -1
  475. package/dist/providers/jobs/kubernetes-api.js +17 -0
  476. package/dist/providers/jobs/kubernetes-client.d.ts +10 -1
  477. package/dist/providers/jobs/kubernetes-client.js +61 -3
  478. package/dist/providers/jobs/kubernetes-dry-run-fixture.d.ts +6 -1
  479. package/dist/providers/jobs/kubernetes-dry-run-fixture.js +6 -3
  480. package/dist/providers/jobs/kubernetes-isolation.d.ts +5 -1
  481. package/dist/providers/jobs/kubernetes-isolation.js +23 -1
  482. package/dist/providers/jobs/kubernetes-platform.d.ts +4 -1
  483. package/dist/providers/jobs/kubernetes-platform.js +38 -1
  484. package/dist/providers/jobs/kubernetes-preflight.d.ts +2 -1
  485. package/dist/providers/jobs/kubernetes-preflight.js +4 -2
  486. package/dist/providers/jobs/kubernetes.d.ts +42 -2
  487. package/dist/providers/jobs/kubernetes.js +178 -19
  488. package/dist/providers/jobs/metadata-probes.d.ts +11 -0
  489. package/dist/providers/jobs/metadata-probes.js +13 -0
  490. package/dist/providers/jobs/types.d.ts +42 -0
  491. package/dist/providers/jobs/types.js +13 -1
  492. package/dist/providers/llm/anthropic.js +5 -1
  493. package/dist/providers/llm/bedrock.d.ts +0 -12
  494. package/dist/providers/llm/bedrock.js +4 -0
  495. package/dist/providers/llm/claude-messages.d.ts +3 -1
  496. package/dist/providers/llm/claude-messages.js +4 -1
  497. package/dist/providers/llm/claude-provider.d.ts +2 -2
  498. package/dist/providers/llm/claude-provider.js +2 -2
  499. package/dist/providers/llm/openai.d.ts +2 -2
  500. package/dist/providers/llm/openai.js +6 -2
  501. package/dist/providers/llm/routing.d.ts +2 -2
  502. package/dist/providers/llm/routing.js +2 -2
  503. package/dist/providers/llm/types.d.ts +12 -2
  504. package/dist/providers/review-host/github-events.d.ts +9 -1
  505. package/dist/providers/review-host/github-events.js +34 -12
  506. package/dist/providers/review-host/github.d.ts +39 -2
  507. package/dist/providers/review-host/github.js +274 -29
  508. package/dist/providers/review-host/local.d.ts +8 -4
  509. package/dist/providers/review-host/local.js +49 -31
  510. package/dist/providers/review-host/patch-pages.d.ts +41 -0
  511. package/dist/providers/review-host/patch-pages.js +176 -0
  512. package/dist/providers/review-host/review-format.d.ts +19 -1
  513. package/dist/providers/review-host/review-format.js +38 -7
  514. package/dist/providers/review-host/types.d.ts +157 -2
  515. package/dist/providers/review-host/types.js +8 -0
  516. package/dist/providers/storage/gcs.d.ts +63 -0
  517. package/dist/providers/storage/gcs.js +69 -0
  518. package/dist/providers/storage/index.d.ts +15 -0
  519. package/dist/providers/storage/index.js +14 -0
  520. package/dist/providers/storage/local.d.ts +24 -0
  521. package/dist/providers/storage/local.js +92 -0
  522. package/dist/providers/storage/meter.d.ts +14 -0
  523. package/dist/providers/storage/meter.js +34 -0
  524. package/dist/providers/storage/s3.d.ts +41 -0
  525. package/dist/providers/storage/s3.js +107 -0
  526. package/dist/providers/storage/types.d.ts +37 -3
  527. package/dist/providers/storage/types.js +21 -4
  528. package/dist/providers/vcs/git.d.ts +33 -2
  529. package/dist/providers/vcs/git.js +324 -22
  530. package/dist/providers/vcs/github-remote.d.ts +26 -3
  531. package/dist/providers/vcs/github-remote.js +124 -14
  532. package/dist/providers/vcs/github.d.ts +246 -12
  533. package/dist/providers/vcs/github.js +521 -61
  534. package/dist/providers/vcs/index.js +8 -1
  535. package/dist/providers/vcs/pr-description.d.ts +127 -0
  536. package/dist/providers/vcs/pr-description.js +270 -0
  537. package/dist/providers/vcs/remote.d.ts +33 -1
  538. package/dist/providers/vcs/routing.d.ts +4 -2
  539. package/dist/providers/vcs/routing.js +6 -0
  540. package/dist/providers/vcs/types.d.ts +80 -3
  541. package/dist/quickstart/coding-seed.d.ts +21 -3
  542. package/dist/quickstart/coding-seed.js +283 -3
  543. package/dist/quickstart/images.d.ts +2 -0
  544. package/dist/quickstart/images.js +7 -1
  545. package/dist/quickstart/reviewer-prompt.d.ts +1 -1
  546. package/dist/quickstart/reviewer-prompt.js +6 -6
  547. package/dist/quickstart-images.json +1 -1
  548. package/dist/sandbox/brokered-fetch.d.ts +23 -0
  549. package/dist/sandbox/brokered-fetch.js +37 -0
  550. package/dist/sandbox/generated/zod.bundle.js +62 -1
  551. package/dist/sandbox/generated/zod3.bundle.js +5 -0
  552. package/dist/sandbox/host-functions.d.ts +35 -0
  553. package/dist/sandbox/host-functions.js +150 -91
  554. package/dist/sandbox/prelude.js +7 -1
  555. package/dist/sandbox/run-in-sandbox.d.ts +19 -0
  556. package/dist/sandbox/run-in-sandbox.js +28 -10
  557. package/dist/sandbox/safe-fetch.d.ts +2 -0
  558. package/dist/sandbox/safe-fetch.js +3 -1
  559. package/dist/sandbox/secret-broker-sigv4.d.ts +2 -0
  560. package/dist/sandbox/secret-broker-sigv4.js +49 -0
  561. package/dist/sandbox/secret-broker.d.ts +34 -0
  562. package/dist/sandbox/secret-broker.js +161 -0
  563. package/dist/sandbox/tool-capabilities.d.ts +10 -30
  564. package/dist/sandbox/user-tool.d.ts +14 -0
  565. package/dist/sandbox/user-tool.js +32 -0
  566. package/dist/sandbox/zod-params.d.ts +37 -5
  567. package/dist/sandbox/zod-params.js +181 -26
  568. package/dist/serve.js +25 -0
  569. package/dist/viewer/api-schema.d.ts +372 -2454
  570. package/dist/viewer/api-schema.js +29 -0
  571. package/dist/viewer/build-schemas.js +10 -3
  572. package/dist/viewer/event-bus.d.ts +6 -0
  573. package/dist/viewer/event-bus.js +16 -7
  574. package/dist/viewer/graph.d.ts +5 -2
  575. package/dist/viewer/graph.js +7 -2
  576. package/dist/viewer/http.d.ts +0 -1
  577. package/dist/viewer/http.js +2 -2
  578. package/dist/viewer/infra.js +25 -2
  579. package/dist/viewer/limits.d.ts +4 -0
  580. package/dist/viewer/limits.js +4 -0
  581. package/dist/viewer/openapi.d.ts +15 -0
  582. package/dist/viewer/openapi.js +170 -0
  583. package/dist/wardby-bin.js +10 -0
  584. package/docs/README.md +7 -0
  585. package/docs/agent-recipes.md +114 -27
  586. package/docs/architecture-runtime.md +16 -1
  587. package/docs/code-review-agents.md +689 -45
  588. package/docs/coding-agent-setup.md +602 -12
  589. package/docs/coding-packages.md +1037 -92
  590. package/docs/coding-services.md +30 -13
  591. package/docs/coding-worker-byo-images.md +218 -6
  592. package/docs/coding-worker-isolation.md +173 -44
  593. package/docs/getting-started-gke.md +332 -129
  594. package/docs/getting-started-identity-provider.md +31 -11
  595. package/docs/getting-started.md +14 -4
  596. package/docs/jira-agents.md +22 -9
  597. package/docs/knowledge/blob-not-found-semantics.md +41 -0
  598. package/docs/knowledge/bounded-file-descriptor.md +52 -0
  599. package/docs/knowledge/delegation-admission-slots.md +52 -0
  600. package/docs/knowledge/http-dispatcher-bootstrap.md +61 -0
  601. package/docs/knowledge/import-rename-target.md +52 -0
  602. package/docs/knowledge/index.md +57 -0
  603. package/docs/knowledge/log.md +9 -0
  604. package/docs/knowledge/mcp-cancelled-task-precedence.md +41 -0
  605. package/docs/knowledge/mcp-http-prompt-discovery.md +41 -0
  606. package/docs/knowledge/mcp-schema-module-boundary.md +41 -0
  607. package/docs/knowledge/nullable-tool-uniqueness.md +52 -0
  608. package/docs/knowledge/overview-cli.md +74 -0
  609. package/docs/knowledge/overview-coding-proxy.md +72 -0
  610. package/docs/knowledge/overview-coding.md +72 -0
  611. package/docs/knowledge/overview-config.md +60 -0
  612. package/docs/knowledge/overview-core.md +72 -0
  613. package/docs/knowledge/overview-deploy.md +83 -0
  614. package/docs/knowledge/overview-mcp.md +61 -0
  615. package/docs/knowledge/overview-prisma.md +72 -0
  616. package/docs/knowledge/overview-providers.md +89 -0
  617. package/docs/knowledge/overview-sandbox.md +83 -0
  618. package/docs/knowledge/overview-surfaces.md +83 -0
  619. package/docs/knowledge/private-datastore-shared-boundary.md +54 -0
  620. package/docs/knowledge/proxy-settlement-projections.md +41 -0
  621. package/docs/knowledge/run-pricing-first-writer.md +43 -0
  622. package/docs/knowledge/schedule-claim-transaction.md +41 -0
  623. package/docs/knowledge/secret-entry-replica-contract.md +52 -0
  624. package/docs/knowledge/terminal-run-first-writer.md +41 -0
  625. package/docs/knowledge/transactional-agent-authorization.md +52 -0
  626. package/docs/knowledge/viewer-notify-write-isolation.md +30 -0
  627. package/docs/knowledge/warm-input-publication.md +30 -0
  628. package/docs/knowledge/workspace-staging-failure.md +54 -0
  629. package/docs/knowledge.md +54 -14
  630. package/docs/native-sandbox.md +731 -0
  631. package/docs/observability.md +4 -0
  632. package/docs/release-verification.md +9 -0
  633. package/docs/security-deployment.md +146 -14
  634. package/docs/slack-notifications.md +268 -0
  635. package/docs/tool-secrets.md +284 -0
  636. package/docs/viewer-api.md +46 -5
  637. package/docs/viewer-api.openapi.yml +1404 -0
  638. package/help/admin-viewer.md +29 -3
  639. package/help/agent-recipes.md +27 -0
  640. package/help/architecture-agent.md +11 -6
  641. package/help/brokered-secrets.md +79 -0
  642. package/help/build-claude-code-image.md +131 -0
  643. package/help/build-worker-image.md +6 -7
  644. package/help/builder-agent.md +19 -6
  645. package/help/code-review-agents.md +243 -10
  646. package/help/coding-packages.md +156 -6
  647. package/help/cost-attribution.md +9 -5
  648. package/help/creating-agents.md +14 -1
  649. package/help/dependency-cache.md +143 -0
  650. package/help/deploy-gke.md +23 -9
  651. package/help/deployment-targets.md +25 -14
  652. package/help/errors/budget-exhausted.md +187 -0
  653. package/help/errors/budget-group-exhausted.md +5 -1
  654. package/help/errors/coding-provider-not-configured.md +2 -2
  655. package/help/errors/coding-stream-quota-exceeded.md +33 -0
  656. package/help/errors/coding-workspace-disk-exceeds-limit.md +39 -0
  657. package/help/errors/continuation-closed.md +9 -12
  658. package/help/errors/database-auth-invalid.md +28 -0
  659. package/help/errors/delegation-conflict.md +24 -0
  660. package/help/errors/file-list-truncated.md +45 -0
  661. package/help/errors/full-read-required.md +49 -0
  662. package/help/errors/github-account-not-allowed.md +29 -0
  663. package/help/errors/graph-incomplete.md +43 -0
  664. package/help/errors/graph-limit.md +43 -0
  665. package/help/errors/low-power-disabled.md +29 -0
  666. package/help/errors/low-power-scale-forbidden.md +35 -0
  667. package/help/errors/low-power-wake-timeout.md +30 -0
  668. package/help/errors/merge-conflict.md +49 -0
  669. package/help/errors/mobile-disabled.md +31 -0
  670. package/help/errors/native-sandbox-capacity.md +22 -0
  671. package/help/errors/native-sandbox-deadline-exceeded.md +19 -0
  672. package/help/errors/native-sandbox-docker-failed.md +20 -0
  673. package/help/errors/native-sandbox-gateway-error.md +20 -0
  674. package/help/errors/native-sandbox-gateway-unavailable.md +21 -0
  675. package/help/errors/native-sandbox-image-not-pinned.md +19 -0
  676. package/help/errors/native-sandbox-isolation-mismatch.md +20 -0
  677. package/help/errors/native-sandbox-launch-abandoned.md +21 -0
  678. package/help/errors/native-sandbox-network-unenforced.md +22 -0
  679. package/help/errors/native-sandbox-requires-catalog.md +31 -0
  680. package/help/errors/native-sandbox-unavailable.md +19 -0
  681. package/help/errors/native-sandbox-warm-delivery-failed.md +21 -0
  682. package/help/errors/native-sandbox-worker-exited.md +21 -0
  683. package/help/errors/native-sandbox-worker-lost.md +20 -0
  684. package/help/errors/native-sandbox-worker-unready.md +22 -0
  685. package/help/errors/package-not-allowed-pending.md +52 -0
  686. package/help/errors/package-not-allowed.md +51 -0
  687. package/help/errors/package-refusals.md +43 -0
  688. package/help/errors/patch-cursor-malformed.md +31 -0
  689. package/help/errors/run-lost.md +39 -0
  690. package/help/errors/run-transcript-download.md +44 -0
  691. package/help/errors/secret-broker-body-invalid.md +26 -0
  692. package/help/errors/secret-broker-changed.md +20 -0
  693. package/help/errors/secret-broker-config-invalid.md +30 -0
  694. package/help/errors/secret-broker-conflict.md +27 -0
  695. package/help/errors/secret-broker-destination-denied.md +28 -0
  696. package/help/errors/secret-broker-value-invalid.md +28 -0
  697. package/help/errors/secret-brokered.md +24 -0
  698. package/help/errors/secret-in-value.md +69 -0
  699. package/help/errors/secret-not-brokered.md +25 -0
  700. package/help/errors/slack-auth-failed.md +48 -0
  701. package/help/errors/slack-channel-unreachable.md +39 -0
  702. package/help/errors/slack-not-configured.md +33 -0
  703. package/help/errors/target-merge.md +40 -0
  704. package/help/fix-merge-conflicts.md +73 -0
  705. package/help/getting-started.md +4 -5
  706. package/help/github-app-setup.md +132 -0
  707. package/help/github.md +40 -1
  708. package/help/identity-and-access.md +7 -1
  709. package/help/jira.md +23 -6
  710. package/help/knowledge.md +16 -7
  711. package/help/local-repositories.md +3 -4
  712. package/help/low-power-mode.md +131 -0
  713. package/help/merge-order-check.md +122 -0
  714. package/help/mobile-app.md +54 -0
  715. package/help/native-capabilities.md +29 -1
  716. package/help/native-sandbox.md +150 -0
  717. package/help/observability.md +8 -0
  718. package/help/operating-agents.md +5 -0
  719. package/help/package-audit-mode.md +91 -0
  720. package/help/related-pull-requests.md +80 -16
  721. package/help/repo-instructions-and-skills.md +91 -0
  722. package/help/resume-runs-locally.md +131 -0
  723. package/help/review-fix-rounds.md +43 -1
  724. package/help/sharing-agents.md +59 -0
  725. package/help/slack-notifications.md +76 -0
  726. package/help/status-comments.md +31 -0
  727. package/help/stop-run.md +58 -0
  728. package/help/troubleshooting/budgets.md +28 -0
  729. package/help/troubleshooting/coding-workers.md +99 -7
  730. package/package.json +27 -13
  731. package/prisma/migrations/20261009000003_native_execution_mode/migration.sql +12 -0
  732. package/prisma/migrations/20261009000004_native_gateway_ledger/migration.sql +65 -0
  733. package/prisma/migrations/20261009000005_native_gateway_call_child_agent/migration.sql +5 -0
  734. package/prisma/migrations/20261009000006_run_deferred_start_stop/migration.sql +14 -0
  735. package/prisma/migrations/20261009000007_native_gateway_network_ready/migration.sql +5 -0
  736. package/prisma/migrations/20261010000001_workflow_notifications/migration.sql +99 -0
  737. package/prisma/migrations/20261011000001_native_gateway_session_status_index/migration.sql +2 -0
  738. package/prisma/migrations/20261012000001_native_warm_worker/migration.sql +32 -0
  739. package/prisma/migrations/20261013000001_coding_run_merge_order/migration.sql +2 -0
  740. package/prisma/migrations/20261013000001_secret_broker/migration.sql +17 -0
  741. package/prisma/migrations/20261013000002_deferred_review_request/migration.sql +4 -0
  742. package/prisma/migrations/20261014000000_repo_skills/migration.sql +15 -0
  743. package/prisma/migrations/20261015000001_coding_run_merge_order_index/migration.sql +2 -0
  744. package/prisma/migrations/20261015000002_no_change_rereview/migration.sql +2 -0
  745. package/prisma/migrations/20261016000000_registry_approved_accepted_advisories/migration.sql +3 -0
  746. package/prisma/migrations/20261016000001_mark_ready_when_passing/migration.sql +3 -0
  747. package/prisma/migrations/20261017000000_debug_trace_max_mb/migration.sql +4 -0
  748. package/prisma/migrations/20261018000000_dependency_cache/migration.sql +53 -0
  749. package/prisma/migrations/20261019000000_claude_max_output_tokens/migration.sql +5 -0
  750. package/prisma/migrations/20261021000000_pr_description_hash/migration.sql +4 -0
  751. package/prisma/migrations/20261022000000_dependency_snapshot_validation_metadata/migration.sql +4 -0
  752. package/prisma/migrations/20261023000000_package_audit_mode/migration.sql +27 -0
  753. package/prisma/migrations/20261024000000_budget_events/migration.sql +26 -0
  754. package/prisma/migrations/20261025000000_cache_aware_holds/migration.sql +9 -0
  755. package/prisma/migrations/20261026000000_budget_overrun/migration.sql +4 -0
  756. package/prisma/migrations/20261027000000_coding_run_request/migration.sql +1 -0
  757. package/prisma/migrations/20261028000000_native_gateway_review_reads/migration.sql +6 -0
  758. package/prisma/migrations/20261029000000_lead_survives_deploy/migration.sql +6 -0
  759. package/prisma/migrations/20261030000000_local_review_covered_sha/migration.sql +2 -0
  760. package/prisma/migrations/20261031000000_coding_run_budget_limit/migration.sql +9 -0
  761. package/prisma/migrations/20261101000000_run_transcripts/migration.sql +22 -0
  762. package/prisma/schema.prisma +631 -146
  763. package/dist/sandbox/generated/zod-to-json-schema.bundle.js +0 -5
@@ -2,14 +2,32 @@ import { z } from "zod";
2
2
  export declare const CODING_PROTOCOL_VERSION: 1;
3
3
  /** The code host every coding run's repository and pull request live on (see pullRequestUrlSchema); the one place to change when another is added. */
4
4
  export declare const CODING_CODE_PROVIDER = "github";
5
+ /** result.json and the agent output file: room for a full summary and test list, JSON-escaped. */
5
6
  export declare const MAX_CODING_ARTIFACT_BYTES: number;
7
+ /** The worker input artifact (input.json): larger than results because it can carry Claude Code repo context. */
8
+ export declare const MAX_CODING_INPUT_BYTES: number;
9
+ /** Bounds on CodingTaskInput.claudeContext, enforced by the builder (src/coding/claude-context.ts) and this schema. */
10
+ export declare const CLAUDE_CONTEXT_LIMITS: {
11
+ readonly maxFiles: 200;
12
+ readonly maxFileBytes: number;
13
+ readonly maxTotalBytes: number;
14
+ };
6
15
  export declare const MAX_CODING_TASK_BYTES: number;
7
16
  /** Room reserved at the end of a composed task for lines the executor appends (e.g. the base commit). */
8
17
  export declare const CODING_TASK_TRAILER_RESERVE_BYTES = 256;
18
+ /**
19
+ * A coding run's summary (the agent's final message, posted as the PR body):
20
+ * longer text is cut at a line boundary with SUMMARY_TRUNCATED_MARKER rather
21
+ * than failing the run.
22
+ */
9
23
  export declare const MAX_CODING_SUMMARY_BYTES: number;
24
+ export declare const SUMMARY_TRUNCATED_MARKER = "\n\n[summary truncated]";
10
25
  export declare const MAX_CODING_TESTS = 64;
11
26
  export declare const MAX_CODING_TEST_COMMAND_BYTES: number;
12
27
  export declare const MAX_TAG_BYTES = 32;
28
+ /** The workspace volume bounds every launcher enforces (docker-isolation.ts, kubernetes-isolation.ts). */
29
+ export declare const MIN_CODING_DISK_MB = 64;
30
+ export declare const MAX_CODING_DISK_MB = 32768;
13
31
  /**
14
32
  * Coding-run services (docs/coding-services.md): the catalog name and version
15
33
  * grammar, shared by the repository's .wardby/services.yaml, the catalog, and
@@ -32,9 +50,15 @@ export declare const MAX_CODING_OUTPUT_ISSUES = 8;
32
50
  export declare const SAFE_CODING_OUTPUT_ISSUE: RegExp;
33
51
  export declare const INVALID_SINGLE_LINE_CONTROL: RegExp;
34
52
  export declare function byteLength(value: string): number;
53
+ /**
54
+ * `text` unchanged when `measure(text) <= max`; otherwise its longest prefix
55
+ * that fits with `marker` appended, cut back to the last line break when one
56
+ * is in the second half, and never inside a surrogate pair.
57
+ */
58
+ export declare function truncateText(text: string, max: number, measure?: (value: string) => number, marker?: string): string;
35
59
  export declare function isReservedServiceEnvName(name: string): boolean;
36
60
  /** The variables one service hands the agent's shells: upper-case names wardby does not reserve. */
37
- export declare const CodingServiceTestEnvSchema: z.ZodEffects<z.ZodRecord<z.ZodString, z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, string, string>>, Record<string, string>, Record<string, string>>;
61
+ export declare const CodingServiceTestEnvSchema: z.ZodRecord<z.ZodString, z.ZodString>;
38
62
  export declare function normalizeGitHubRepository(value: string): string;
39
63
  export declare function normalizeGitRef(value: string): string;
40
64
  /** Repository identity prefix for a git folder on the wardby host: `local:/abs/path`. */
@@ -48,8 +72,8 @@ export declare const MAX_LOCAL_REPOSITORY_BYTES = 4096;
48
72
  * (no trailing slash).
49
73
  */
50
74
  export declare function normalizeLocalRepository(value: string): string;
51
- export declare const CodingBaseRefSchema: z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, string, string>;
52
- export declare const CodingTaskOverrideSchema: z.ZodEffects<z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, string, string>, string, string>;
75
+ export declare const CodingBaseRefSchema: z.ZodPipe<z.ZodString, z.ZodTransform<string, string>>;
76
+ export declare const CodingTaskOverrideSchema: z.ZodString;
53
77
  /**
54
78
  * A section rendered to fit whatever room the task leaves (the knowledge note:
55
79
  * src/knowledge/note.ts). Declared structurally so this module, which coding
@@ -80,171 +104,108 @@ export declare function composeCodingTask(instructions: string | null | undefine
80
104
  * re-validates whatever survives.
81
105
  */
82
106
  export declare function normalizeCodingTag(value: unknown): string | null | undefined;
107
+ /**
108
+ * The tag schemas' type. Zod 4 types a transform's output key as required, but
109
+ * an absent tag still parses to an absent key (as under Zod 3), so the type
110
+ * keeps the key optional. Types only: the emitted protocol.js is unchanged.
111
+ */
112
+ type OptionalTagSchema = z.ZodOptional<z.ZodType<string | undefined, string | null | undefined>>;
83
113
  /** Upper bound on CodingAgentProfile.maxTurns (Claude Code runs). */
84
114
  export declare const MAX_CODING_TURNS = 1000;
85
115
  /** The Claude Code worker's turn limit when the agent sets none; the run's budget and timeout are the real limits. */
86
116
  export declare const DEFAULT_CLAUDE_MAX_TURNS = 200;
117
+ /**
118
+ * The most output tokens per model reply on a Claude Code run when the agent sets
119
+ * none (CodingAgentProfile.maxOutputTokens); thinking counts toward it. The coding
120
+ * proxy reserves maxOutputTokens x the model's output price per request against
121
+ * the run budget, so higher values need a larger budget.
122
+ */
123
+ export declare const DEFAULT_CLAUDE_MAX_OUTPUT_TOKENS = 32000;
124
+ /** Bounds on CodingAgentProfile.maxOutputTokens (Claude Code runs). */
125
+ export declare const MIN_CLAUDE_MAX_OUTPUT_TOKENS = 1024;
126
+ export declare const MAX_CLAUDE_MAX_OUTPUT_TOKENS = 128000;
87
127
  /** Longest line a debug-traced worker writes to its log (src/coding-worker/debug-trace.ts). */
88
128
  export declare const MAX_DEBUG_TRACE_LINE_BYTES: number;
89
- export declare const CodingTaskInputSchema: z.ZodEffects<z.ZodObject<{
129
+ /** A traced run's total trace output when the agent sets no cap (CodingAgentProfile.debugTraceMaxMb), in MiB. */
130
+ export declare const DEFAULT_DEBUG_TRACE_MAX_MB = 2;
131
+ /** Upper bound on CodingAgentProfile.debugTraceMaxMb. */
132
+ export declare const MAX_DEBUG_TRACE_MAX_MB = 64;
133
+ /**
134
+ * A repo-relative POSIX path with no empty, ".", or ".." segment, no backslash, no control
135
+ * character, and nothing under .git.
136
+ */
137
+ export declare function isSafeContextPath(path: string): boolean;
138
+ /**
139
+ * Whether a Claude Code context file may be shipped to (and written by) the worker: a safe path
140
+ * that is CLAUDE.md, .claude/CLAUDE.md, AGENTS.md, a .claude/skills/<name>/SKILL.md, or any other
141
+ * Markdown file outside every .claude directory that is not a CLAUDE.local.md. This keeps
142
+ * repository settings, hooks, MCP configuration, agents, commands, and personal memory out of
143
+ * Claude Code's native loading. Not part of the input schema: a refused file is dropped, and never
144
+ * fails the run.
145
+ */
146
+ export declare function isAllowedContextPath(path: string): boolean;
147
+ export declare const ClaudeContextFileSchema: z.ZodObject<{
148
+ path: z.ZodString;
149
+ content: z.ZodString;
150
+ }, z.core.$strict>;
151
+ export type ClaudeContextFile = z.infer<typeof ClaudeContextFileSchema>;
152
+ export declare const CodingTaskInputSchema: z.ZodObject<{
90
153
  schemaVersion: z.ZodLiteral<1>;
91
- runId: z.ZodEffects<z.ZodEffects<z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, string, string>, string, string>, string, string>;
92
- repository: z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, string, string>;
93
- baseRef: z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, string, string>;
94
- headRef: z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, string, string>;
95
- task: z.ZodEffects<z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, string, string>, string, string>;
96
- model: z.ZodEffects<z.ZodEffects<z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, string, string>, string, string>, string, string>;
154
+ runId: z.ZodString;
155
+ repository: z.ZodPipe<z.ZodString, z.ZodTransform<string, string>>;
156
+ baseRef: z.ZodPipe<z.ZodString, z.ZodTransform<string, string>>;
157
+ headRef: z.ZodPipe<z.ZodString, z.ZodTransform<string, string>>;
158
+ task: z.ZodString;
159
+ model: z.ZodString;
97
160
  budgetUsd: z.ZodNumber;
98
161
  deadlineAt: z.ZodString;
99
- /**
100
- * Revision-in-place: set when this run pushes a new commit onto the
101
- * branch/PR the named run
102
- * (the thread's ROOT CodingRun, always -- never a chain) originally
103
- * opened, instead of opening a fresh branch of its own. Resolved and
104
- * verified server-side (dispatch.ts) against the database; this schema
105
- * only enforces that headRef is internally consistent with it.
106
- */
107
162
  continuationOf: z.ZodOptional<z.ZodObject<{
108
- runId: z.ZodEffects<z.ZodEffects<z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, string, string>, string, string>, string, string>;
109
- }, "strict", z.ZodTypeAny, {
110
- runId: string;
111
- }, {
112
- runId: string;
113
- }>>;
114
- /**
115
- * Admin-requested debug trace (CodingAgentProfile.debugTraceUntil): the
116
- * worker writes its full stream trace to its own log. Absent means off;
117
- * the control plane writes the key only when true, so an input for an
118
- * untraced run is unchanged for workers that predate it.
119
- */
163
+ runId: z.ZodString;
164
+ }, z.core.$strict>>;
120
165
  debugTrace: z.ZodOptional<z.ZodBoolean>;
121
- /**
122
- * Claude Code turn limit (CodingAgentProfile.maxTurns, fixed on the run at
123
- * dispatch). Absent means the worker default; written only when the agent
124
- * sets one, so other runs' input is unchanged for workers that predate it.
125
- */
166
+ dependencyCache: z.ZodOptional<z.ZodLiteral<true>>;
167
+ sessionResume: z.ZodOptional<z.ZodLiteral<true>>;
168
+ diskMb: z.ZodOptional<z.ZodNumber>;
169
+ debugTraceMaxMb: z.ZodOptional<z.ZodNumber>;
126
170
  maxTurns: z.ZodOptional<z.ZodNumber>;
127
- /**
128
- * Coding-run services started next to this run (docs/coding-services.md):
129
- * each one's catalog name and version, and the variables the agent's shells
130
- * receive. Absent means none; the control plane writes the key only when a
131
- * run has services, so every other input is unchanged for workers that
132
- * predate it.
133
- */
171
+ maxOutputTokens: z.ZodOptional<z.ZodNumber>;
134
172
  services: z.ZodOptional<z.ZodArray<z.ZodObject<{
135
173
  name: z.ZodString;
136
174
  version: z.ZodString;
137
- testEnv: z.ZodEffects<z.ZodRecord<z.ZodString, z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, string, string>>, Record<string, string>, Record<string, string>>;
138
- }, "strict", z.ZodTypeAny, {
139
- name: string;
140
- version: string;
141
- testEnv: Record<string, string>;
142
- }, {
143
- name: string;
144
- version: string;
145
- testEnv: Record<string, string>;
146
- }>, "many">>;
147
- }, "strict", z.ZodTypeAny, {
148
- repository: string;
149
- schemaVersion: 1;
150
- runId: string;
151
- baseRef: string;
152
- headRef: string;
153
- task: string;
154
- model: string;
155
- budgetUsd: number;
156
- deadlineAt: string;
157
- continuationOf?: {
158
- runId: string;
159
- } | undefined;
160
- debugTrace?: boolean | undefined;
161
- maxTurns?: number | undefined;
162
- services?: {
163
- name: string;
164
- version: string;
165
- testEnv: Record<string, string>;
166
- }[] | undefined;
167
- }, {
168
- repository: string;
169
- schemaVersion: 1;
170
- runId: string;
171
- baseRef: string;
172
- headRef: string;
173
- task: string;
174
- model: string;
175
- budgetUsd: number;
176
- deadlineAt: string;
177
- continuationOf?: {
178
- runId: string;
179
- } | undefined;
180
- debugTrace?: boolean | undefined;
181
- maxTurns?: number | undefined;
182
- services?: {
183
- name: string;
184
- version: string;
185
- testEnv: Record<string, string>;
186
- }[] | undefined;
187
- }>, {
188
- repository: string;
189
- schemaVersion: 1;
190
- runId: string;
191
- baseRef: string;
192
- headRef: string;
193
- task: string;
194
- model: string;
195
- budgetUsd: number;
196
- deadlineAt: string;
197
- continuationOf?: {
198
- runId: string;
199
- } | undefined;
200
- debugTrace?: boolean | undefined;
201
- maxTurns?: number | undefined;
202
- services?: {
203
- name: string;
204
- version: string;
205
- testEnv: Record<string, string>;
206
- }[] | undefined;
207
- }, {
208
- repository: string;
209
- schemaVersion: 1;
210
- runId: string;
211
- baseRef: string;
212
- headRef: string;
213
- task: string;
214
- model: string;
215
- budgetUsd: number;
216
- deadlineAt: string;
217
- continuationOf?: {
218
- runId: string;
219
- } | undefined;
220
- debugTrace?: boolean | undefined;
221
- maxTurns?: number | undefined;
222
- services?: {
223
- name: string;
224
- version: string;
225
- testEnv: Record<string, string>;
226
- }[] | undefined;
227
- }>;
228
- export declare const CodingAgentOutputSchema: z.ZodEffects<z.ZodObject<{
175
+ testEnv: z.ZodRecord<z.ZodString, z.ZodString>;
176
+ }, z.core.$strict>>>;
177
+ repoSkills: z.ZodOptional<z.ZodBoolean>;
178
+ claudeBareMode: z.ZodOptional<z.ZodBoolean>;
179
+ claudeContext: z.ZodOptional<z.ZodObject<{
180
+ files: z.ZodArray<z.ZodObject<{
181
+ path: z.ZodString;
182
+ content: z.ZodString;
183
+ }, z.core.$strict>>;
184
+ }, z.core.$strict>>;
185
+ }, z.core.$strict>;
186
+ /** What the model returns. Strict: it can never carry a worker-written field such as dependencyCache. */
187
+ export declare const CodingAgentOutputSchema: z.ZodPipe<z.ZodObject<{
229
188
  schemaVersion: z.ZodLiteral<1>;
230
- runId: z.ZodEffects<z.ZodEffects<z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, string, string>, string, string>, string, string>;
231
- outcome: z.ZodEnum<["changes_ready", "no_changes", "budget_exhausted"]>;
232
- summary: z.ZodEffects<z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, string, string>, string, string>;
189
+ runId: z.ZodString;
190
+ outcome: z.ZodEnum<{
191
+ changes_ready: "changes_ready";
192
+ no_changes: "no_changes";
193
+ budget_exhausted: "budget_exhausted";
194
+ }>;
195
+ summary: z.ZodPreprocess<z.ZodString, unknown>;
233
196
  tests: z.ZodArray<z.ZodObject<{
234
- command: z.ZodEffects<z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, string, string>, string, string>;
235
- outcome: z.ZodEnum<["passed", "failed", "skipped"]>;
236
- }, "strict", z.ZodTypeAny, {
237
- command: string;
238
- outcome: "passed" | "failed" | "skipped";
239
- }, {
240
- command: string;
241
- outcome: "passed" | "failed" | "skipped";
242
- }>, "many">;
243
- tag: z.ZodEffects<z.ZodEffects<z.ZodOptional<z.ZodNullable<z.ZodString>>, string | undefined, string | null | undefined>, string | undefined, unknown>;
244
- }, "strict", z.ZodTypeAny, {
245
- outcome: "changes_ready" | "no_changes" | "budget_exhausted";
197
+ command: z.ZodString;
198
+ outcome: z.ZodEnum<{
199
+ passed: "passed";
200
+ failed: "failed";
201
+ skipped: "skipped";
202
+ }>;
203
+ }, z.core.$strict>>;
204
+ tag: OptionalTagSchema;
205
+ }, z.core.$strict>, z.ZodTransform<{
246
206
  schemaVersion: 1;
247
207
  runId: string;
208
+ outcome: "changes_ready" | "no_changes" | "budget_exhausted";
248
209
  summary: string;
249
210
  tests: {
250
211
  command: string;
@@ -252,160 +213,217 @@ export declare const CodingAgentOutputSchema: z.ZodEffects<z.ZodObject<{
252
213
  }[];
253
214
  tag?: string | undefined;
254
215
  }, {
255
- outcome: "changes_ready" | "no_changes" | "budget_exhausted";
256
216
  schemaVersion: 1;
257
217
  runId: string;
218
+ outcome: "changes_ready" | "no_changes" | "budget_exhausted";
258
219
  summary: string;
259
220
  tests: {
260
221
  command: string;
261
222
  outcome: "passed" | "failed" | "skipped";
262
223
  }[];
263
- tag?: unknown;
264
- }>, {
265
224
  tag?: string | undefined;
225
+ }>>;
226
+ /**
227
+ * The run's dependency cache (src/coding-worker/dependency-cache.mjs), as the worker reports it in
228
+ * result.json and the control plane stores it (CodingRun.dependencyCacheResult, get_run). Worker-
229
+ * written, never model-written: the model's output schema above refuses the key. Only stable codes,
230
+ * repository folder names and bounded numbers; never npm output.
231
+ */
232
+ export declare const MAX_DEPENDENCY_CACHE_PROJECTS = 4;
233
+ export declare const DEPENDENCY_CACHE_OUTCOMES: readonly ["hit", "nearest", "cold", "skipped", "refused"];
234
+ export declare const DEPENDENCY_CACHE_REBUILD_OUTCOMES: readonly ["ok", "failed", "timeout", "skipped", "unsealed"];
235
+ /** "." or up to three folder segments: the proxy's project-path rule (dependency-cache/key.ts). */
236
+ export declare const DEPENDENCY_CACHE_PATH: RegExp;
237
+ declare const dependencyCacheProjectSchema: z.ZodObject<{
238
+ path: z.ZodString;
239
+ result: z.ZodEnum<{
240
+ skipped: "skipped";
241
+ hit: "hit";
242
+ nearest: "nearest";
243
+ cold: "cold";
244
+ refused: "refused";
245
+ }>;
246
+ key: z.ZodOptional<z.ZodString>;
247
+ sizeBytes: z.ZodOptional<z.ZodNumber>;
248
+ restoreMs: z.ZodOptional<z.ZodNumber>;
249
+ installMs: z.ZodOptional<z.ZodNumber>;
250
+ reason: z.ZodOptional<z.ZodString>;
251
+ rebuild: z.ZodOptional<z.ZodEnum<{
252
+ failed: "failed";
253
+ skipped: "skipped";
254
+ ok: "ok";
255
+ timeout: "timeout";
256
+ unsealed: "unsealed";
257
+ }>>;
258
+ }, z.core.$strict>;
259
+ export declare const DependencyCacheReportSchema: z.ZodObject<{
260
+ projects: z.ZodArray<z.ZodObject<{
261
+ path: z.ZodString;
262
+ result: z.ZodEnum<{
263
+ skipped: "skipped";
264
+ hit: "hit";
265
+ nearest: "nearest";
266
+ cold: "cold";
267
+ refused: "refused";
268
+ }>;
269
+ key: z.ZodOptional<z.ZodString>;
270
+ sizeBytes: z.ZodOptional<z.ZodNumber>;
271
+ restoreMs: z.ZodOptional<z.ZodNumber>;
272
+ installMs: z.ZodOptional<z.ZodNumber>;
273
+ reason: z.ZodOptional<z.ZodString>;
274
+ rebuild: z.ZodOptional<z.ZodEnum<{
275
+ failed: "failed";
276
+ skipped: "skipped";
277
+ ok: "ok";
278
+ timeout: "timeout";
279
+ unsealed: "unsealed";
280
+ }>>;
281
+ }, z.core.$strict>>;
282
+ omitted: z.ZodOptional<z.ZodNumber>;
283
+ reason: z.ZodOptional<z.ZodString>;
284
+ }, z.core.$strict>;
285
+ export type DependencyCacheProject = z.infer<typeof dependencyCacheProjectSchema>;
286
+ export type DependencyCacheReport = z.infer<typeof DependencyCacheReportSchema>;
287
+ /**
288
+ * Bounds whatever the module (or a tool runner over its socket) returned into a report: projects
289
+ * that don't fit the schema are dropped and counted in `omitted`; past the cap, installed and
290
+ * refused projects are kept ahead of skipped ones, in their original order. A value that isn't a
291
+ * report at all becomes `{ projects: [], reason: "report_invalid" }`. Never throws.
292
+ */
293
+ export declare function sanitizeDependencyCacheReport(value: unknown): DependencyCacheReport;
294
+ /** Folders the dependency cache installed (hit, nearest or cold), "." for the repository root. */
295
+ export declare function installedDependencyFolders(report: DependencyCacheReport | undefined): string[];
296
+ /** Folders whose node_modules came from a cached snapshot (hit or nearest): the PR body's line. */
297
+ export declare function restoredDependencyFolders(report: DependencyCacheReport | undefined): string[];
298
+ /** The one line both workers add to the agent's prompt when dependencies were installed; else undefined. */
299
+ export declare function dependencyCacheTaskNote(report: DependencyCacheReport | undefined): string | undefined;
300
+ /**
301
+ * What a worker writes to result.json and the control plane reads back: the model's output plus
302
+ * worker-written fields. `dependencyCache` is written only on a run whose input asked for it, so an
303
+ * older control plane never sees the key; a malformed one is bounded (sanitizeDependencyCacheReport)
304
+ * rather than failing the run.
305
+ */
306
+ export declare const CodingWorkerOutputSchema: z.ZodPipe<z.ZodObject<{
307
+ dependencyCache: z.ZodPipe<z.ZodOptional<z.ZodUnknown>, z.ZodTransform<{
308
+ projects: {
309
+ path: string;
310
+ result: "skipped" | "hit" | "nearest" | "cold" | "refused";
311
+ key?: string | undefined;
312
+ sizeBytes?: number | undefined;
313
+ restoreMs?: number | undefined;
314
+ installMs?: number | undefined;
315
+ reason?: string | undefined;
316
+ rebuild?: "failed" | "skipped" | "ok" | "timeout" | "unsealed" | undefined;
317
+ }[];
318
+ omitted?: number | undefined;
319
+ reason?: string | undefined;
320
+ } | undefined, unknown>>;
321
+ schemaVersion: z.ZodLiteral<1>;
322
+ runId: z.ZodString;
323
+ outcome: z.ZodEnum<{
324
+ changes_ready: "changes_ready";
325
+ no_changes: "no_changes";
326
+ budget_exhausted: "budget_exhausted";
327
+ }>;
328
+ summary: z.ZodPreprocess<z.ZodString, unknown>;
329
+ tests: z.ZodArray<z.ZodObject<{
330
+ command: z.ZodString;
331
+ outcome: z.ZodEnum<{
332
+ passed: "passed";
333
+ failed: "failed";
334
+ skipped: "skipped";
335
+ }>;
336
+ }, z.core.$strict>>;
337
+ tag: OptionalTagSchema;
338
+ }, z.core.$strict>, z.ZodTransform<{
339
+ dependencyCache?: {
340
+ projects: {
341
+ path: string;
342
+ result: "skipped" | "hit" | "nearest" | "cold" | "refused";
343
+ key?: string | undefined;
344
+ sizeBytes?: number | undefined;
345
+ restoreMs?: number | undefined;
346
+ installMs?: number | undefined;
347
+ reason?: string | undefined;
348
+ rebuild?: "failed" | "skipped" | "ok" | "timeout" | "unsealed" | undefined;
349
+ }[];
350
+ omitted?: number | undefined;
351
+ reason?: string | undefined;
352
+ } | undefined;
353
+ schemaVersion: 1;
354
+ runId: string;
355
+ outcome: "changes_ready" | "no_changes" | "budget_exhausted";
266
356
  summary: string;
267
357
  tests: {
268
358
  command: string;
269
359
  outcome: "passed" | "failed" | "skipped";
270
360
  }[];
271
- outcome: "changes_ready" | "no_changes" | "budget_exhausted";
272
- schemaVersion: 1;
273
- runId: string;
361
+ tag?: string | undefined;
274
362
  }, {
275
- outcome: "changes_ready" | "no_changes" | "budget_exhausted";
363
+ dependencyCache: {
364
+ projects: {
365
+ path: string;
366
+ result: "skipped" | "hit" | "nearest" | "cold" | "refused";
367
+ key?: string | undefined;
368
+ sizeBytes?: number | undefined;
369
+ restoreMs?: number | undefined;
370
+ installMs?: number | undefined;
371
+ reason?: string | undefined;
372
+ rebuild?: "failed" | "skipped" | "ok" | "timeout" | "unsealed" | undefined;
373
+ }[];
374
+ omitted?: number | undefined;
375
+ reason?: string | undefined;
376
+ } | undefined;
276
377
  schemaVersion: 1;
277
378
  runId: string;
379
+ outcome: "changes_ready" | "no_changes" | "budget_exhausted";
278
380
  summary: string;
279
381
  tests: {
280
382
  command: string;
281
383
  outcome: "passed" | "failed" | "skipped";
282
384
  }[];
283
- tag?: unknown;
284
- }>;
285
- export declare const CodingRunResultSchema: z.ZodEffects<z.ZodEffects<z.ZodObject<{
385
+ tag?: string | undefined;
386
+ }>>;
387
+ export declare const CodingRunResultSchema: z.ZodPipe<z.ZodObject<{
286
388
  schemaVersion: z.ZodLiteral<1>;
287
- outcome: z.ZodEnum<["pull_request_opened", "pull_request_updated", "branch_pushed", "no_changes", "budget_exhausted"]>;
288
- repository: z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, string, string>;
289
- baseRef: z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, string, string>;
290
- headRef: z.ZodOptional<z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, string, string>>;
291
- commitSha: z.ZodOptional<z.ZodEffects<z.ZodString, string, string>>;
292
- pullRequestUrl: z.ZodOptional<z.ZodEffects<z.ZodString, string, string>>;
389
+ outcome: z.ZodEnum<{
390
+ no_changes: "no_changes";
391
+ budget_exhausted: "budget_exhausted";
392
+ pull_request_opened: "pull_request_opened";
393
+ pull_request_updated: "pull_request_updated";
394
+ branch_pushed: "branch_pushed";
395
+ }>;
396
+ repository: z.ZodPipe<z.ZodString, z.ZodTransform<string, string>>;
397
+ baseRef: z.ZodPipe<z.ZodString, z.ZodTransform<string, string>>;
398
+ headRef: z.ZodOptional<z.ZodPipe<z.ZodString, z.ZodTransform<string, string>>>;
399
+ commitSha: z.ZodOptional<z.ZodPipe<z.ZodString, z.ZodTransform<string, string>>>;
400
+ pullRequestUrl: z.ZodOptional<z.ZodString>;
293
401
  pullRequestNumber: z.ZodOptional<z.ZodNumber>;
294
- summary: z.ZodEffects<z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, string, string>, string, string>;
402
+ summary: z.ZodPreprocess<z.ZodString, unknown>;
295
403
  tests: z.ZodArray<z.ZodObject<{
296
- command: z.ZodEffects<z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, string, string>, string, string>;
297
- outcome: z.ZodEnum<["passed", "failed", "skipped"]>;
298
- }, "strict", z.ZodTypeAny, {
299
- command: string;
300
- outcome: "passed" | "failed" | "skipped";
301
- }, {
302
- command: string;
303
- outcome: "passed" | "failed" | "skipped";
304
- }>, "many">;
404
+ command: z.ZodString;
405
+ outcome: z.ZodEnum<{
406
+ passed: "passed";
407
+ failed: "failed";
408
+ skipped: "skipped";
409
+ }>;
410
+ }, z.core.$strict>>;
305
411
  usage: z.ZodObject<{
306
412
  tokensIn: z.ZodNumber;
307
413
  tokensOut: z.ZodNumber;
308
414
  costUsd: z.ZodNumber;
309
- }, "strict", z.ZodTypeAny, {
310
- tokensIn: number;
311
- tokensOut: number;
312
- costUsd: number;
313
- }, {
314
- tokensIn: number;
315
- tokensOut: number;
316
- costUsd: number;
317
- }>;
318
- tag: z.ZodEffects<z.ZodOptional<z.ZodNullable<z.ZodString>>, string | undefined, string | null | undefined>;
319
- }, "strict", z.ZodTypeAny, {
320
- repository: string;
321
- outcome: "no_changes" | "budget_exhausted" | "pull_request_opened" | "pull_request_updated" | "branch_pushed";
322
- schemaVersion: 1;
323
- baseRef: string;
324
- summary: string;
325
- tests: {
326
- command: string;
327
- outcome: "passed" | "failed" | "skipped";
328
- }[];
329
- usage: {
330
- tokensIn: number;
331
- tokensOut: number;
332
- costUsd: number;
333
- };
334
- headRef?: string | undefined;
415
+ }, z.core.$strict>;
416
+ tag: OptionalTagSchema;
417
+ }, z.core.$strict>, z.ZodTransform<{
335
418
  tag?: string | undefined;
336
- commitSha?: string | undefined;
337
- pullRequestUrl?: string | undefined;
338
- pullRequestNumber?: number | undefined;
339
- }, {
340
- repository: string;
341
- outcome: "no_changes" | "budget_exhausted" | "pull_request_opened" | "pull_request_updated" | "branch_pushed";
342
- schemaVersion: 1;
343
- baseRef: string;
344
419
  summary: string;
345
420
  tests: {
346
421
  command: string;
347
422
  outcome: "passed" | "failed" | "skipped";
348
423
  }[];
349
- usage: {
350
- tokensIn: number;
351
- tokensOut: number;
352
- costUsd: number;
353
- };
354
- headRef?: string | undefined;
355
- tag?: string | null | undefined;
356
- commitSha?: string | undefined;
357
- pullRequestUrl?: string | undefined;
358
- pullRequestNumber?: number | undefined;
359
- }>, {
360
- repository: string;
361
- outcome: "no_changes" | "budget_exhausted" | "pull_request_opened" | "pull_request_updated" | "branch_pushed";
362
424
  schemaVersion: 1;
363
- baseRef: string;
364
- summary: string;
365
- tests: {
366
- command: string;
367
- outcome: "passed" | "failed" | "skipped";
368
- }[];
369
- usage: {
370
- tokensIn: number;
371
- tokensOut: number;
372
- costUsd: number;
373
- };
374
- headRef?: string | undefined;
375
- tag?: string | undefined;
376
- commitSha?: string | undefined;
377
- pullRequestUrl?: string | undefined;
378
- pullRequestNumber?: number | undefined;
379
- }, {
380
- repository: string;
381
425
  outcome: "no_changes" | "budget_exhausted" | "pull_request_opened" | "pull_request_updated" | "branch_pushed";
382
- schemaVersion: 1;
383
- baseRef: string;
384
- summary: string;
385
- tests: {
386
- command: string;
387
- outcome: "passed" | "failed" | "skipped";
388
- }[];
389
- usage: {
390
- tokensIn: number;
391
- tokensOut: number;
392
- costUsd: number;
393
- };
394
- headRef?: string | undefined;
395
- tag?: string | null | undefined;
396
- commitSha?: string | undefined;
397
- pullRequestUrl?: string | undefined;
398
- pullRequestNumber?: number | undefined;
399
- }>, {
400
- tag?: string | undefined;
401
- summary: string;
402
- tests: {
403
- command: string;
404
- outcome: "passed" | "failed" | "skipped";
405
- }[];
406
426
  repository: string;
407
- outcome: "no_changes" | "budget_exhausted" | "pull_request_opened" | "pull_request_updated" | "branch_pushed";
408
- schemaVersion: 1;
409
427
  baseRef: string;
410
428
  usage: {
411
429
  tokensIn: number;
@@ -417,9 +435,9 @@ export declare const CodingRunResultSchema: z.ZodEffects<z.ZodEffects<z.ZodObjec
417
435
  pullRequestUrl?: string | undefined;
418
436
  pullRequestNumber?: number | undefined;
419
437
  }, {
420
- repository: string;
421
- outcome: "no_changes" | "budget_exhausted" | "pull_request_opened" | "pull_request_updated" | "branch_pushed";
422
438
  schemaVersion: 1;
439
+ outcome: "no_changes" | "budget_exhausted" | "pull_request_opened" | "pull_request_updated" | "branch_pushed";
440
+ repository: string;
423
441
  baseRef: string;
424
442
  summary: string;
425
443
  tests: {
@@ -432,13 +450,14 @@ export declare const CodingRunResultSchema: z.ZodEffects<z.ZodEffects<z.ZodObjec
432
450
  costUsd: number;
433
451
  };
434
452
  headRef?: string | undefined;
435
- tag?: string | null | undefined;
436
453
  commitSha?: string | undefined;
437
454
  pullRequestUrl?: string | undefined;
438
455
  pullRequestNumber?: number | undefined;
439
- }>;
456
+ tag?: string | undefined;
457
+ }>>;
440
458
  export type CodingTaskInput = z.infer<typeof CodingTaskInputSchema>;
441
459
  export type CodingAgentOutput = z.infer<typeof CodingAgentOutputSchema>;
460
+ export type CodingWorkerOutput = z.infer<typeof CodingWorkerOutputSchema>;
442
461
  export type CodingRunResult = z.infer<typeof CodingRunResultSchema>;
443
462
  /** Parses stored worker output into the only coding result shape callers may receive. */
444
463
  export declare function publicCodingRunResult(value: unknown): CodingRunResult | undefined;
@@ -479,4 +498,7 @@ export declare function redactTokenShapedValues(value: string): string;
479
498
  export declare function redactAndTruncate(value: string, limit: number): string;
480
499
  export declare function parseCodingTaskInputJson(text: string): CodingTaskInput;
481
500
  export declare function parseCodingAgentOutputJson(text: string): CodingAgentOutput;
501
+ /** The control plane's read of a worker's result.json (see CodingWorkerOutputSchema). */
502
+ export declare function parseCodingWorkerOutputJson(text: string): CodingWorkerOutput;
482
503
  export declare function parseCodingRunResultJson(text: string): CodingRunResult;
504
+ export {};