@interf/compiler 0.22.0 → 0.33.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 (575) hide show
  1. package/README.md +268 -0
  2. package/dist/bin-mcp.d.ts +2 -0
  3. package/dist/bin-mcp.js +63 -0
  4. package/dist/bin-runtime.d.ts +2 -0
  5. package/dist/bin-runtime.js +111 -0
  6. package/dist/cli/commands/agents.js +4 -4
  7. package/dist/cli/commands/auth.d.ts +20 -0
  8. package/dist/cli/commands/auth.js +161 -0
  9. package/dist/cli/commands/benchmark.d.ts +10 -0
  10. package/dist/cli/commands/benchmark.js +88 -0
  11. package/dist/cli/commands/build-plan.js +95 -103
  12. package/dist/cli/commands/build.d.ts +1 -1
  13. package/dist/cli/commands/build.js +16 -15
  14. package/dist/cli/commands/doctor.js +3 -3
  15. package/dist/cli/commands/graphs.d.ts +2 -0
  16. package/dist/cli/commands/graphs.js +199 -0
  17. package/dist/cli/commands/login.js +4 -6
  18. package/dist/cli/commands/logout.js +1 -1
  19. package/dist/cli/commands/mcp.d.ts +3 -2
  20. package/dist/cli/commands/mcp.js +721 -204
  21. package/dist/cli/commands/project.d.ts +2 -0
  22. package/dist/cli/commands/project.js +202 -0
  23. package/dist/cli/commands/reset.d.ts +1 -1
  24. package/dist/cli/commands/reset.js +10 -10
  25. package/dist/cli/commands/runs.js +52 -26
  26. package/dist/cli/commands/runtime.d.ts +24 -0
  27. package/dist/cli/commands/runtime.js +373 -0
  28. package/dist/cli/commands/status.d.ts +1 -0
  29. package/dist/cli/commands/status.js +33 -22
  30. package/dist/cli/commands/traces.d.ts +2 -0
  31. package/dist/cli/commands/traces.js +125 -0
  32. package/dist/cli/commands/wizard.js +155 -150
  33. package/dist/cli/index.d.ts +7 -4
  34. package/dist/cli/index.js +13 -7
  35. package/dist/index.d.ts +2 -2
  36. package/dist/index.js +2 -2
  37. package/dist/packages/build-plans/authoring/brief.d.ts +517 -0
  38. package/dist/packages/build-plans/authoring/brief.js +89 -0
  39. package/dist/packages/build-plans/authoring/build-plan-authoring.d.ts +10 -10
  40. package/dist/packages/build-plans/authoring/build-plan-authoring.js +66 -26
  41. package/dist/packages/build-plans/authoring/build-plan-edit-session.d.ts +1 -1
  42. package/dist/packages/build-plans/authoring/build-plan-edit-session.js +8 -2
  43. package/dist/packages/build-plans/authoring/build-plan-improvement.d.ts +9 -6
  44. package/dist/packages/build-plans/authoring/build-plan-improvement.js +39 -42
  45. package/dist/packages/build-plans/authoring/lib/build-plan-edit-utils.js +7 -7
  46. package/dist/packages/build-plans/build-plan-resolution.d.ts +1 -1
  47. package/dist/packages/build-plans/build-plan-resolution.js +3 -3
  48. package/dist/packages/build-plans/index.d.ts +1 -1
  49. package/dist/packages/build-plans/index.js +1 -1
  50. package/dist/packages/build-plans/package/build-plan-definitions.d.ts +14 -12
  51. package/dist/packages/build-plans/package/build-plan-definitions.js +40 -39
  52. package/dist/packages/build-plans/package/build-plan-helpers.d.ts +3 -2
  53. package/dist/packages/build-plans/package/build-plan-helpers.js +27 -13
  54. package/dist/packages/build-plans/package/build-plan-review-paths.d.ts +5 -5
  55. package/dist/packages/build-plans/package/build-plan-review-paths.js +15 -15
  56. package/dist/packages/build-plans/package/build-plan-stage-runner.d.ts +4 -4
  57. package/dist/packages/build-plans/package/build-plan-stage-runner.js +22 -11
  58. package/dist/packages/build-plans/package/builtin-build-plan.d.ts +5 -6
  59. package/dist/packages/build-plans/package/builtin-build-plan.js +7 -8
  60. package/dist/packages/build-plans/package/context-interface.d.ts +11 -9
  61. package/dist/packages/build-plans/package/context-interface.js +14 -33
  62. package/dist/packages/build-plans/package/interf-build-plan-package.d.ts +6 -17
  63. package/dist/packages/build-plans/package/interf-build-plan-package.js +56 -52
  64. package/dist/packages/build-plans/package/local-build-plans.d.ts +12 -10
  65. package/dist/packages/build-plans/package/local-build-plans.js +56 -31
  66. package/dist/packages/build-plans/package/user-build-plans.js +1 -1
  67. package/dist/packages/contracts/index.d.ts +4 -2
  68. package/dist/packages/contracts/index.js +2 -1
  69. package/dist/packages/contracts/lib/project-paths.d.ts +137 -0
  70. package/dist/packages/contracts/lib/project-paths.js +211 -0
  71. package/dist/packages/contracts/lib/project-schema.d.ts +160 -0
  72. package/dist/packages/contracts/lib/project-schema.js +113 -0
  73. package/dist/packages/contracts/lib/schema.d.ts +739 -80
  74. package/dist/packages/contracts/lib/schema.js +410 -75
  75. package/dist/packages/contracts/utils/parse.js +67 -0
  76. package/dist/packages/projects/index.d.ts +6 -0
  77. package/dist/packages/{project → projects}/index.js +0 -3
  78. package/dist/packages/{project → projects}/interf-detect.d.ts +12 -12
  79. package/dist/packages/{project → projects}/interf-detect.js +56 -50
  80. package/dist/packages/projects/interf.d.ts +2 -0
  81. package/dist/packages/projects/interf.js +1 -0
  82. package/dist/packages/projects/lib/schema.d.ts +79 -0
  83. package/dist/packages/projects/lib/schema.js +89 -0
  84. package/dist/packages/projects/source-config.d.ts +58 -0
  85. package/dist/packages/projects/source-config.js +352 -0
  86. package/dist/packages/projects/source-folders.d.ts +11 -0
  87. package/dist/packages/{project → projects}/source-folders.js +26 -26
  88. package/dist/packages/{engine → runtime}/action-planner.d.ts +1 -1
  89. package/dist/packages/{engine → runtime}/action-planner.js +20 -22
  90. package/dist/packages/runtime/action-values.d.ts +1 -0
  91. package/dist/packages/runtime/action-values.js +1 -0
  92. package/dist/packages/runtime/actions/errors.d.ts +2 -0
  93. package/dist/packages/runtime/actions/errors.js +12 -0
  94. package/dist/packages/runtime/actions/fields.d.ts +82 -0
  95. package/dist/packages/runtime/actions/form-builders.d.ts +14 -0
  96. package/dist/packages/runtime/actions/form-builders.js +619 -0
  97. package/dist/packages/runtime/actions/form-validators.d.ts +8 -0
  98. package/dist/packages/runtime/actions/form-validators.js +128 -0
  99. package/dist/packages/runtime/actions/helpers.d.ts +11 -0
  100. package/dist/packages/runtime/actions/helpers.js +80 -0
  101. package/dist/packages/runtime/actions/index.d.ts +8 -0
  102. package/dist/packages/runtime/actions/index.js +11 -0
  103. package/dist/packages/runtime/actions/registry.d.ts +64 -0
  104. package/dist/packages/runtime/actions/registry.js +62 -0
  105. package/dist/packages/runtime/actions/requests.d.ts +45 -0
  106. package/dist/packages/runtime/actions/requests.js +158 -0
  107. package/dist/packages/runtime/actions/schemas.d.ts +154 -0
  108. package/dist/packages/runtime/actions/schemas.js +36 -0
  109. package/dist/packages/runtime/agent-handoff.d.ts +11 -0
  110. package/dist/packages/runtime/agent-handoff.js +101 -0
  111. package/dist/packages/{engine → runtime}/agents/index.d.ts +1 -2
  112. package/dist/packages/{engine → runtime}/agents/index.js +1 -2
  113. package/dist/packages/runtime/agents/lib/args.d.ts +14 -0
  114. package/dist/packages/runtime/agents/lib/args.js +24 -0
  115. package/dist/packages/{engine → runtime}/agents/lib/constants.d.ts +4 -1
  116. package/dist/packages/runtime/agents/lib/constants.js +13 -0
  117. package/dist/packages/runtime/agents/lib/context-graph-bootstrap.d.ts +3 -0
  118. package/dist/packages/{engine/agents/lib/verifiable-context-bootstrap.js → runtime/agents/lib/context-graph-bootstrap.js} +5 -6
  119. package/dist/packages/{engine → runtime}/agents/lib/detection.d.ts +5 -0
  120. package/dist/packages/{engine → runtime}/agents/lib/detection.js +16 -7
  121. package/dist/packages/{engine → runtime}/agents/lib/execution-profile.js +8 -14
  122. package/dist/packages/{engine → runtime}/agents/lib/execution.js +14 -4
  123. package/dist/packages/{engine → runtime}/agents/lib/preflight.js +15 -13
  124. package/dist/packages/{engine → runtime}/agents/lib/render.js +4 -4
  125. package/dist/packages/runtime/agents/lib/shell-fs.d.ts +18 -0
  126. package/dist/packages/runtime/agents/lib/shell-fs.js +190 -0
  127. package/dist/packages/runtime/agents/lib/shell-paths.d.ts +16 -0
  128. package/dist/packages/runtime/agents/lib/shell-paths.js +63 -0
  129. package/dist/packages/runtime/agents/lib/shell-projection.d.ts +25 -0
  130. package/dist/packages/runtime/agents/lib/shell-projection.js +314 -0
  131. package/dist/packages/runtime/agents/lib/shell-templates.d.ts +30 -0
  132. package/dist/packages/runtime/agents/lib/shell-templates.js +452 -0
  133. package/dist/packages/runtime/agents/lib/shell-workspace.d.ts +17 -0
  134. package/dist/packages/runtime/agents/lib/shell-workspace.js +70 -0
  135. package/dist/packages/runtime/agents/lib/shells.d.ts +63 -0
  136. package/dist/packages/runtime/agents/lib/shells.js +383 -0
  137. package/dist/packages/{engine → runtime}/agents/lib/user-config.d.ts +8 -2
  138. package/dist/packages/{engine → runtime}/agents/lib/user-config.js +8 -2
  139. package/dist/packages/runtime/agents/providers/claude-code.d.ts +13 -0
  140. package/dist/packages/runtime/agents/providers/claude-code.js +45 -0
  141. package/dist/packages/runtime/agents/providers/codex.d.ts +17 -0
  142. package/dist/packages/runtime/agents/providers/codex.js +64 -0
  143. package/dist/packages/runtime/agents/providers/cursor.d.ts +9 -0
  144. package/dist/packages/runtime/agents/providers/cursor.js +24 -0
  145. package/dist/packages/runtime/agents/providers/index.d.ts +9 -0
  146. package/dist/packages/runtime/agents/providers/index.js +31 -0
  147. package/dist/packages/runtime/agents/providers/types.d.ts +50 -0
  148. package/dist/packages/{engine → runtime}/agents/registry.d.ts +13 -2
  149. package/dist/packages/{engine → runtime}/agents/registry.js +48 -10
  150. package/dist/packages/{engine → runtime}/agents/role-executors.d.ts +1 -1
  151. package/dist/packages/{engine → runtime}/agents/role-executors.js +7 -6
  152. package/dist/packages/{engine → runtime}/agents/role-router.js +7 -5
  153. package/dist/packages/runtime/auth/account-context.d.ts +52 -0
  154. package/dist/packages/runtime/auth/account-context.js +68 -0
  155. package/dist/packages/runtime/auth/auth-flow.d.ts +73 -0
  156. package/dist/packages/runtime/auth/auth-flow.js +189 -0
  157. package/dist/packages/runtime/auth/jwt-validator.d.ts +58 -0
  158. package/dist/packages/runtime/auth/jwt-validator.js +86 -0
  159. package/dist/packages/runtime/auth/keychain.d.ts +35 -0
  160. package/dist/packages/runtime/auth/keychain.js +85 -0
  161. package/dist/packages/runtime/auth/session-store.d.ts +38 -0
  162. package/dist/packages/runtime/auth/session-store.js +88 -0
  163. package/dist/packages/runtime/auth/workos-client.d.ts +58 -0
  164. package/dist/packages/runtime/auth/workos-client.js +87 -0
  165. package/dist/packages/runtime/benchmark-question-draft.d.ts +20 -0
  166. package/dist/packages/runtime/benchmark-question-draft.js +124 -0
  167. package/dist/packages/runtime/build/artifact-counts.d.ts +1 -0
  168. package/dist/packages/{engine → runtime}/build/artifact-counts.js +5 -9
  169. package/dist/packages/{engine → runtime}/build/artifact-status.d.ts +5 -5
  170. package/dist/packages/{engine → runtime}/build/artifact-status.js +25 -23
  171. package/dist/packages/runtime/build/atomic-fs.d.ts +3 -0
  172. package/dist/packages/runtime/build/atomic-fs.js +95 -0
  173. package/dist/packages/runtime/build/billing-events.d.ts +78 -0
  174. package/dist/packages/{engine → runtime}/build/billing-events.js +17 -19
  175. package/dist/packages/runtime/build/build-evidence.d.ts +15 -0
  176. package/dist/packages/runtime/build/build-evidence.js +173 -0
  177. package/dist/packages/{engine → runtime}/build/build-pipeline.d.ts +12 -8
  178. package/dist/packages/runtime/build/build-pipeline.js +304 -0
  179. package/dist/packages/{engine → runtime}/build/build-plan-primitives.d.ts +1 -1
  180. package/dist/packages/{engine → runtime}/build/build-plan-primitives.js +0 -1
  181. package/dist/packages/runtime/build/build-plan-runs.d.ts +14 -0
  182. package/dist/packages/runtime/build/build-plan-runs.js +31 -0
  183. package/dist/packages/runtime/build/build-stage-plan.d.ts +16 -0
  184. package/dist/packages/{engine → runtime}/build/build-stage-plan.js +28 -29
  185. package/dist/packages/{engine → runtime}/build/build-stage-runner.d.ts +2 -1
  186. package/dist/packages/runtime/build/build-stage-runner.js +165 -0
  187. package/dist/packages/{engine → runtime}/build/build-target.d.ts +4 -4
  188. package/dist/packages/runtime/build/build-target.js +16 -0
  189. package/dist/packages/{engine → runtime}/build/check-evaluator.d.ts +14 -16
  190. package/dist/packages/runtime/build/check-evaluator.js +575 -0
  191. package/dist/packages/runtime/build/context-graph-paths.d.ts +51 -0
  192. package/dist/packages/runtime/build/context-graph-paths.js +133 -0
  193. package/dist/packages/runtime/build/context-graph-schema.d.ts +19 -0
  194. package/dist/packages/runtime/build/context-graph-schema.js +39 -0
  195. package/dist/packages/{engine → runtime}/build/discovery.d.ts +2 -2
  196. package/dist/packages/{engine → runtime}/build/discovery.js +4 -4
  197. package/dist/packages/{engine → runtime}/build/index.d.ts +5 -3
  198. package/dist/packages/{engine → runtime}/build/index.js +5 -3
  199. package/dist/packages/{engine → runtime}/build/lib/schema.d.ts +221 -88
  200. package/dist/packages/{engine → runtime}/build/lib/schema.js +61 -41
  201. package/dist/packages/runtime/build/reset.d.ts +2 -0
  202. package/dist/packages/runtime/build/reset.js +62 -0
  203. package/dist/packages/{engine → runtime}/build/runtime-contracts.js +5 -5
  204. package/dist/packages/runtime/build/runtime-inventory.d.ts +7 -0
  205. package/dist/packages/{engine → runtime}/build/runtime-inventory.js +3 -3
  206. package/dist/packages/{engine → runtime}/build/runtime-paths.js +6 -6
  207. package/dist/packages/{engine → runtime}/build/runtime-prompt.js +7 -6
  208. package/dist/packages/{engine → runtime}/build/runtime-reconcile.d.ts +1 -1
  209. package/dist/packages/{engine → runtime}/build/runtime-reconcile.js +25 -21
  210. package/dist/packages/runtime/build/runtime-runs.d.ts +10 -0
  211. package/dist/packages/runtime/build/runtime-runs.js +265 -0
  212. package/dist/packages/{engine → runtime}/build/runtime-types.d.ts +6 -6
  213. package/dist/packages/runtime/build/runtime-types.js +1 -0
  214. package/dist/packages/runtime/build/runtime.d.ts +6 -0
  215. package/dist/packages/runtime/build/runtime.js +5 -0
  216. package/dist/packages/runtime/build/source-files.d.ts +58 -0
  217. package/dist/packages/runtime/build/source-files.js +184 -0
  218. package/dist/packages/runtime/build/source-inventory.d.ts +27 -0
  219. package/dist/packages/runtime/build/source-inventory.js +273 -0
  220. package/dist/packages/runtime/build/source-manifest.d.ts +52 -0
  221. package/dist/packages/runtime/build/source-manifest.js +192 -0
  222. package/dist/packages/runtime/build/stage-evidence.d.ts +22 -0
  223. package/dist/packages/runtime/build/stage-evidence.js +317 -0
  224. package/dist/packages/runtime/build/stage-reuse.d.ts +11 -0
  225. package/dist/packages/runtime/build/stage-reuse.js +142 -0
  226. package/dist/packages/runtime/build/state-artifacts.d.ts +9 -0
  227. package/dist/packages/runtime/build/state-artifacts.js +14 -0
  228. package/dist/packages/runtime/build/state-health.d.ts +4 -0
  229. package/dist/packages/{engine → runtime}/build/state-health.js +21 -26
  230. package/dist/packages/runtime/build/state-io.d.ts +12 -0
  231. package/dist/packages/runtime/build/state-io.js +119 -0
  232. package/dist/packages/{engine → runtime}/build/state-paths.d.ts +3 -1
  233. package/dist/packages/runtime/build/state-paths.js +22 -0
  234. package/dist/packages/runtime/build/state-view.d.ts +5 -0
  235. package/dist/packages/{engine → runtime}/build/state-view.js +60 -33
  236. package/dist/packages/runtime/build/state.d.ts +7 -0
  237. package/dist/packages/runtime/build/state.js +12 -0
  238. package/dist/packages/runtime/build/traces.d.ts +30 -0
  239. package/dist/packages/runtime/build/traces.js +133 -0
  240. package/dist/packages/{engine/build/validate-verifiable-context.d.ts → runtime/build/validate-context-graph.d.ts} +6 -6
  241. package/dist/packages/{engine/build/validate-verifiable-context.js → runtime/build/validate-context-graph.js} +48 -35
  242. package/dist/packages/{engine → runtime}/build/validate.d.ts +5 -5
  243. package/dist/packages/{engine → runtime}/build/validate.js +26 -26
  244. package/dist/packages/{engine → runtime}/client.d.ts +15 -15
  245. package/dist/packages/{engine → runtime}/client.js +41 -24
  246. package/dist/packages/{engine → runtime}/connection-config.d.ts +3 -2
  247. package/dist/packages/{engine → runtime}/connection-config.js +9 -8
  248. package/dist/packages/runtime/context-checks.d.ts +10 -0
  249. package/dist/packages/runtime/context-checks.js +114 -0
  250. package/dist/packages/runtime/context-graph-scaffold.d.ts +9 -0
  251. package/dist/packages/runtime/context-graph-scaffold.js +134 -0
  252. package/dist/packages/runtime/entitlement-guard.d.ts +43 -0
  253. package/dist/packages/runtime/entitlement-guard.js +70 -0
  254. package/dist/packages/{engine → runtime}/execution/index.d.ts +2 -2
  255. package/dist/packages/{engine → runtime}/execution/index.js +1 -1
  256. package/dist/packages/{engine → runtime}/execution/lib/schema.d.ts +270 -192
  257. package/dist/packages/{engine → runtime}/execution/lib/schema.js +35 -32
  258. package/dist/packages/runtime/index.d.ts +29 -0
  259. package/dist/packages/runtime/index.js +21 -0
  260. package/dist/packages/runtime/instance-paths.d.ts +30 -0
  261. package/dist/packages/runtime/instance-paths.js +29 -0
  262. package/dist/packages/{engine → runtime}/native-run-handlers.d.ts +4 -4
  263. package/dist/packages/{engine → runtime}/native-run-handlers.js +184 -152
  264. package/dist/packages/runtime/plan-artifact-contract.d.ts +17 -0
  265. package/dist/packages/runtime/plan-artifact-contract.js +42 -0
  266. package/dist/packages/runtime/project-entries.d.ts +11 -0
  267. package/dist/packages/runtime/project-entries.js +49 -0
  268. package/dist/packages/runtime/project-source-state.d.ts +26 -0
  269. package/dist/packages/runtime/project-source-state.js +53 -0
  270. package/dist/packages/runtime/project-store.d.ts +85 -0
  271. package/dist/packages/runtime/project-store.js +168 -0
  272. package/dist/packages/runtime/requested-artifacts.d.ts +7 -0
  273. package/dist/packages/{engine → runtime}/requested-artifacts.js +23 -1
  274. package/dist/packages/{engine → runtime}/run-observability.d.ts +2 -1
  275. package/dist/packages/{engine → runtime}/run-observability.js +166 -84
  276. package/dist/packages/runtime/runtime-action-proposals.d.ts +7 -0
  277. package/dist/packages/runtime/runtime-action-proposals.js +542 -0
  278. package/dist/packages/runtime/runtime-build-plans.d.ts +5 -0
  279. package/dist/packages/runtime/runtime-build-plans.js +131 -0
  280. package/dist/packages/runtime/runtime-build-runs.d.ts +47 -0
  281. package/dist/packages/runtime/runtime-build-runs.js +562 -0
  282. package/dist/packages/runtime/runtime-caches.d.ts +91 -0
  283. package/dist/packages/{engine → runtime}/runtime-caches.js +77 -49
  284. package/dist/packages/{engine → runtime}/runtime-event-applier.d.ts +3 -1
  285. package/dist/packages/{engine → runtime}/runtime-event-applier.js +53 -17
  286. package/dist/packages/runtime/runtime-executor.d.ts +22 -0
  287. package/dist/packages/runtime/runtime-executor.js +131 -0
  288. package/dist/packages/runtime/runtime-jobs.d.ts +13 -0
  289. package/dist/packages/runtime/runtime-jobs.js +463 -0
  290. package/dist/packages/runtime/runtime-observability.d.ts +11 -0
  291. package/dist/packages/runtime/runtime-observability.js +39 -0
  292. package/dist/packages/{engine → runtime}/runtime-persistence.d.ts +9 -18
  293. package/dist/packages/{engine → runtime}/runtime-persistence.js +25 -25
  294. package/dist/packages/runtime/runtime-project-mutations.d.ts +7 -0
  295. package/dist/packages/runtime/runtime-project-mutations.js +64 -0
  296. package/dist/packages/runtime/runtime-project-reads.d.ts +15 -0
  297. package/dist/packages/runtime/runtime-project-reads.js +381 -0
  298. package/dist/packages/runtime/runtime-proposal-helpers.d.ts +22 -0
  299. package/dist/packages/runtime/runtime-proposal-helpers.js +223 -0
  300. package/dist/packages/{engine → runtime}/runtime-resource-builders.d.ts +21 -16
  301. package/dist/packages/{engine → runtime}/runtime-resource-builders.js +48 -38
  302. package/dist/packages/runtime/runtime-verify-runs.d.ts +84 -0
  303. package/dist/packages/runtime/runtime-verify-runs.js +295 -0
  304. package/dist/packages/runtime/runtime.d.ts +1165 -0
  305. package/dist/packages/runtime/runtime.js +417 -0
  306. package/dist/packages/runtime/schemas/actions.d.ts +1182 -0
  307. package/dist/packages/runtime/schemas/actions.js +117 -0
  308. package/dist/packages/runtime/schemas/agents.d.ts +76 -0
  309. package/dist/packages/runtime/schemas/agents.js +41 -0
  310. package/dist/packages/runtime/schemas/build-plans.d.ts +959 -0
  311. package/dist/packages/runtime/schemas/build-plans.js +107 -0
  312. package/dist/packages/runtime/schemas/files.d.ts +567 -0
  313. package/dist/packages/runtime/schemas/files.js +51 -0
  314. package/dist/packages/runtime/schemas/index.d.ts +8 -0
  315. package/dist/packages/runtime/schemas/index.js +12 -0
  316. package/dist/packages/runtime/schemas/instance.d.ts +141 -0
  317. package/dist/packages/runtime/schemas/instance.js +143 -0
  318. package/dist/packages/runtime/schemas/jobs.d.ts +339 -0
  319. package/dist/packages/runtime/schemas/jobs.js +103 -0
  320. package/dist/packages/runtime/schemas/projects.d.ts +339 -0
  321. package/dist/packages/runtime/schemas/projects.js +136 -0
  322. package/dist/packages/runtime/schemas/runs.d.ts +2676 -0
  323. package/dist/packages/runtime/schemas/runs.js +98 -0
  324. package/dist/packages/runtime/service/index.d.ts +3 -0
  325. package/dist/packages/runtime/service/index.js +3 -0
  326. package/dist/packages/runtime/service/openapi.d.ts +7 -0
  327. package/dist/packages/runtime/service/openapi.js +117 -0
  328. package/dist/packages/runtime/service/operations.d.ts +1490 -0
  329. package/dist/packages/runtime/service/operations.js +245 -0
  330. package/dist/packages/runtime/service/routes.d.ts +106 -0
  331. package/dist/packages/runtime/service/routes.js +120 -0
  332. package/dist/packages/runtime/service/server-api-files.d.ts +10 -0
  333. package/dist/packages/runtime/service/server-api-files.js +85 -0
  334. package/dist/packages/runtime/service/server-app-boot.d.ts +4 -0
  335. package/dist/packages/runtime/service/server-app-boot.js +46 -0
  336. package/dist/packages/runtime/service/server-guards.d.ts +63 -0
  337. package/dist/packages/runtime/service/server-guards.js +181 -0
  338. package/dist/packages/runtime/service/server-helpers.d.ts +27 -0
  339. package/dist/packages/runtime/service/server-helpers.js +89 -0
  340. package/dist/packages/runtime/service/server-instance-helpers.d.ts +30 -0
  341. package/dist/packages/runtime/service/server-instance-helpers.js +114 -0
  342. package/dist/packages/runtime/service/server-routes-action-proposals.d.ts +3 -0
  343. package/dist/packages/runtime/service/server-routes-action-proposals.js +43 -0
  344. package/dist/packages/runtime/service/server-routes-agents.d.ts +4 -0
  345. package/dist/packages/runtime/service/server-routes-agents.js +198 -0
  346. package/dist/packages/runtime/service/server-routes-auth.d.ts +33 -0
  347. package/dist/packages/runtime/service/server-routes-auth.js +138 -0
  348. package/dist/packages/runtime/service/server-routes-build-plans.d.ts +3 -0
  349. package/dist/packages/runtime/service/server-routes-build-plans.js +83 -0
  350. package/dist/packages/runtime/service/server-routes-discovery.d.ts +4 -0
  351. package/dist/packages/runtime/service/server-routes-discovery.js +196 -0
  352. package/dist/packages/runtime/service/server-routes-events.d.ts +5 -0
  353. package/dist/packages/runtime/service/server-routes-events.js +99 -0
  354. package/dist/packages/runtime/service/server-routes-project-context.d.ts +9 -0
  355. package/dist/packages/runtime/service/server-routes-project-context.js +192 -0
  356. package/dist/packages/runtime/service/server-routes-project-jobs.d.ts +9 -0
  357. package/dist/packages/runtime/service/server-routes-project-jobs.js +130 -0
  358. package/dist/packages/runtime/service/server-routes-project-runs.d.ts +14 -0
  359. package/dist/packages/runtime/service/server-routes-project-runs.js +85 -0
  360. package/dist/packages/runtime/service/server-routes-projects.d.ts +4 -0
  361. package/dist/packages/runtime/service/server-routes-projects.js +92 -0
  362. package/dist/packages/runtime/service/server-routes-runs.d.ts +3 -0
  363. package/dist/packages/runtime/service/server-routes-runs.js +112 -0
  364. package/dist/packages/runtime/service/server.d.ts +37 -0
  365. package/dist/packages/runtime/service/server.js +300 -0
  366. package/dist/packages/{engine → runtime/service}/service-registry.d.ts +5 -5
  367. package/dist/packages/{engine → runtime/service}/service-registry.js +7 -7
  368. package/dist/packages/runtime/verify/benchmark-run.d.ts +81 -0
  369. package/dist/packages/runtime/verify/benchmark-run.js +303 -0
  370. package/dist/packages/{engine → runtime}/verify/index.d.ts +2 -2
  371. package/dist/packages/{engine → runtime}/verify/index.js +1 -1
  372. package/dist/packages/{engine → runtime}/verify/lib/schema.d.ts +83 -16
  373. package/dist/packages/{engine → runtime}/verify/lib/schema.js +26 -18
  374. package/dist/packages/{engine → runtime}/verify/verify-execution.js +11 -11
  375. package/dist/packages/{engine → runtime}/verify/verify-paths.d.ts +4 -4
  376. package/dist/packages/runtime/verify/verify-paths.js +61 -0
  377. package/dist/packages/{engine → runtime}/verify/verify-sandbox.d.ts +1 -1
  378. package/dist/packages/runtime/verify/verify-sandbox.js +88 -0
  379. package/dist/packages/{engine → runtime}/verify/verify-specs.d.ts +2 -0
  380. package/dist/packages/{engine → runtime}/verify/verify-specs.js +5 -3
  381. package/dist/packages/runtime/verify/verify-targets.d.ts +5 -0
  382. package/dist/packages/{engine → runtime}/verify/verify-targets.js +12 -12
  383. package/dist/packages/runtime/verify/verify-types.js +1 -0
  384. package/dist/packages/{engine → runtime}/verify/verify.d.ts +1 -1
  385. package/dist/packages/{engine → runtime}/verify/verify.js +1 -1
  386. package/dist/packages/runtime/wire-schemas.d.ts +18 -0
  387. package/dist/packages/runtime/wire-schemas.js +27 -0
  388. package/package.json +40 -30
  389. package/public-repo/CONTRIBUTING.md +7 -16
  390. package/public-repo/README.md +175 -234
  391. package/public-repo/SECURITY.md +3 -4
  392. package/public-repo/build-plans/interf-default/README.md +19 -14
  393. package/public-repo/build-plans/interf-default/build/stages/shape/SKILL.md +18 -11
  394. package/public-repo/build-plans/interf-default/build/stages/structure/SKILL.md +12 -5
  395. package/public-repo/build-plans/interf-default/build/stages/summarize/SKILL.md +16 -4
  396. package/public-repo/build-plans/interf-default/build-plan.json +34 -28
  397. package/public-repo/build-plans/interf-default/build-plan.schema.json +54 -32
  398. package/public-repo/build-plans/interf-default/improve/SKILL.md +3 -3
  399. package/public-repo/build-plans/interf-default/use/query/SKILL.md +17 -11
  400. package/public-repo/openapi/local-service.openapi.json +6803 -0
  401. package/public-repo/skills/interf/SKILL.md +460 -179
  402. package/dist/cli/commands/prep.d.ts +0 -2
  403. package/dist/cli/commands/prep.js +0 -240
  404. package/dist/cli/commands/test.d.ts +0 -10
  405. package/dist/cli/commands/test.js +0 -85
  406. package/dist/cli/commands/web.d.ts +0 -2
  407. package/dist/cli/commands/web.js +0 -286
  408. package/dist/interf-ui/404.html +0 -1
  409. package/dist/interf-ui/__next.__PAGE__.txt +0 -10
  410. package/dist/interf-ui/__next._full.txt +0 -20
  411. package/dist/interf-ui/__next._head.txt +0 -5
  412. package/dist/interf-ui/__next._index.txt +0 -5
  413. package/dist/interf-ui/__next._tree.txt +0 -5
  414. package/dist/interf-ui/_next/static/_qJKnA0dammQ306MG_zMq/_buildManifest.js +0 -11
  415. package/dist/interf-ui/_next/static/_qJKnA0dammQ306MG_zMq/_clientMiddlewareManifest.js +0 -1
  416. package/dist/interf-ui/_next/static/_qJKnA0dammQ306MG_zMq/_ssgManifest.js +0 -1
  417. package/dist/interf-ui/_next/static/chunks/0.tjb6f4golw..css +0 -3
  418. package/dist/interf-ui/_next/static/chunks/03~yq9q893hmn.js +0 -1
  419. package/dist/interf-ui/_next/static/chunks/085-n_jv2ng_q.css +0 -1
  420. package/dist/interf-ui/_next/static/chunks/0dn41fa_zvgsl.js +0 -1
  421. package/dist/interf-ui/_next/static/chunks/0g-ea0zj5d-0k.js +0 -1
  422. package/dist/interf-ui/_next/static/chunks/0gwqglc4iz583.js +0 -1
  423. package/dist/interf-ui/_next/static/chunks/0haldgm65ve6l.js +0 -1
  424. package/dist/interf-ui/_next/static/chunks/0nv3am99vjzn4.js +0 -1
  425. package/dist/interf-ui/_next/static/chunks/0s77gt_o4jwtx.js +0 -1
  426. package/dist/interf-ui/_next/static/chunks/0y5z3t-z1c8ks.js.map +0 -5
  427. package/dist/interf-ui/_next/static/chunks/0~a36ujuzpaz..js +0 -116
  428. package/dist/interf-ui/_next/static/chunks/10jeodxe4nkgj.js +0 -31
  429. package/dist/interf-ui/_next/static/chunks/119h2rouych2t.js +0 -1
  430. package/dist/interf-ui/_next/static/chunks/13c8b~m8knjsf.js +0 -1
  431. package/dist/interf-ui/_next/static/chunks/14dznb2qpt-ho.js +0 -91
  432. package/dist/interf-ui/_next/static/chunks/15z_en80lrq-3.js +0 -5
  433. package/dist/interf-ui/_next/static/chunks/turbopack-0p.pvcjrtq-jh.js +0 -1
  434. package/dist/interf-ui/_next/static/chunks/turbopack-0usj_75.8frlw.js +0 -1
  435. package/dist/interf-ui/_next/static/chunks/turbopack-worker-0sjn--fhq~1cg.js +0 -1
  436. package/dist/interf-ui/_next/static/media/GeistMono_Variable.p.17jn9btb_52pq.woff2 +0 -0
  437. package/dist/interf-ui/_next/static/media/Geist_Variable-s.p.0-te~ja_gpvcf.woff2 +0 -0
  438. package/dist/interf-ui/_next/static/media/worker.102zas1s52_pf.js +0 -109
  439. package/dist/interf-ui/_not-found/__next._full.txt +0 -15
  440. package/dist/interf-ui/_not-found/__next._head.txt +0 -5
  441. package/dist/interf-ui/_not-found/__next._index.txt +0 -5
  442. package/dist/interf-ui/_not-found/__next._not-found.__PAGE__.txt +0 -5
  443. package/dist/interf-ui/_not-found/__next._not-found.txt +0 -5
  444. package/dist/interf-ui/_not-found/__next._tree.txt +0 -2
  445. package/dist/interf-ui/_not-found.html +0 -1
  446. package/dist/interf-ui/_not-found.txt +0 -15
  447. package/dist/interf-ui/index.html +0 -1
  448. package/dist/interf-ui/index.txt +0 -20
  449. package/dist/packages/contracts/lib/preparation-paths.d.ts +0 -117
  450. package/dist/packages/contracts/lib/preparation-paths.js +0 -177
  451. package/dist/packages/engine/action-definitions.d.ts +0 -407
  452. package/dist/packages/engine/action-definitions.js +0 -1158
  453. package/dist/packages/engine/action-values.d.ts +0 -1
  454. package/dist/packages/engine/action-values.js +0 -1
  455. package/dist/packages/engine/agents/lib/args.d.ts +0 -4
  456. package/dist/packages/engine/agents/lib/args.js +0 -52
  457. package/dist/packages/engine/agents/lib/chart-guidance.d.ts +0 -1
  458. package/dist/packages/engine/agents/lib/chart-guidance.js +0 -8
  459. package/dist/packages/engine/agents/lib/constants.js +0 -28
  460. package/dist/packages/engine/agents/lib/schema.d.ts +0 -8
  461. package/dist/packages/engine/agents/lib/schema.js +0 -7
  462. package/dist/packages/engine/agents/lib/shells.d.ts +0 -74
  463. package/dist/packages/engine/agents/lib/shells.js +0 -1052
  464. package/dist/packages/engine/agents/lib/verifiable-context-bootstrap.d.ts +0 -3
  465. package/dist/packages/engine/build/artifact-counts.d.ts +0 -1
  466. package/dist/packages/engine/build/billing-events.d.ts +0 -89
  467. package/dist/packages/engine/build/build-pipeline.js +0 -175
  468. package/dist/packages/engine/build/build-plan-runs.d.ts +0 -14
  469. package/dist/packages/engine/build/build-plan-runs.js +0 -31
  470. package/dist/packages/engine/build/build-stage-plan.d.ts +0 -16
  471. package/dist/packages/engine/build/build-stage-runner.js +0 -94
  472. package/dist/packages/engine/build/build-target.js +0 -16
  473. package/dist/packages/engine/build/check-evaluator.js +0 -298
  474. package/dist/packages/engine/build/reset.d.ts +0 -2
  475. package/dist/packages/engine/build/reset.js +0 -74
  476. package/dist/packages/engine/build/runtime-inventory.d.ts +0 -7
  477. package/dist/packages/engine/build/runtime-runs.d.ts +0 -10
  478. package/dist/packages/engine/build/runtime-runs.js +0 -224
  479. package/dist/packages/engine/build/runtime.d.ts +0 -5
  480. package/dist/packages/engine/build/runtime.js +0 -4
  481. package/dist/packages/engine/build/source-files.d.ts +0 -46
  482. package/dist/packages/engine/build/source-files.js +0 -149
  483. package/dist/packages/engine/build/state-artifacts.d.ts +0 -9
  484. package/dist/packages/engine/build/state-artifacts.js +0 -14
  485. package/dist/packages/engine/build/state-health.d.ts +0 -4
  486. package/dist/packages/engine/build/state-io.d.ts +0 -11
  487. package/dist/packages/engine/build/state-io.js +0 -82
  488. package/dist/packages/engine/build/state-paths.js +0 -16
  489. package/dist/packages/engine/build/state-view.d.ts +0 -5
  490. package/dist/packages/engine/build/state.d.ts +0 -7
  491. package/dist/packages/engine/build/state.js +0 -12
  492. package/dist/packages/engine/build/validate-helpers.d.ts +0 -12
  493. package/dist/packages/engine/build/validate-helpers.js +0 -41
  494. package/dist/packages/engine/build/verifiable-context-paths.d.ts +0 -47
  495. package/dist/packages/engine/build/verifiable-context-paths.js +0 -121
  496. package/dist/packages/engine/build/verifiable-context-schema.d.ts +0 -21
  497. package/dist/packages/engine/build/verifiable-context-schema.js +0 -126
  498. package/dist/packages/engine/cloud-seams.d.ts +0 -115
  499. package/dist/packages/engine/cloud-seams.js +0 -84
  500. package/dist/packages/engine/index.d.ts +0 -22
  501. package/dist/packages/engine/index.js +0 -15
  502. package/dist/packages/engine/instance-paths.d.ts +0 -106
  503. package/dist/packages/engine/instance-paths.js +0 -171
  504. package/dist/packages/engine/lib/schema.d.ts +0 -6304
  505. package/dist/packages/engine/lib/schema.js +0 -730
  506. package/dist/packages/engine/preparation-store.d.ts +0 -105
  507. package/dist/packages/engine/preparation-store.js +0 -213
  508. package/dist/packages/engine/readiness-check-draft.d.ts +0 -20
  509. package/dist/packages/engine/readiness-check-draft.js +0 -111
  510. package/dist/packages/engine/requested-artifacts.d.ts +0 -5
  511. package/dist/packages/engine/routes.d.ts +0 -85
  512. package/dist/packages/engine/routes.js +0 -99
  513. package/dist/packages/engine/runtime-caches.d.ts +0 -76
  514. package/dist/packages/engine/runtime-proposal-helpers.d.ts +0 -35
  515. package/dist/packages/engine/runtime-proposal-helpers.js +0 -247
  516. package/dist/packages/engine/runtime.d.ts +0 -371
  517. package/dist/packages/engine/runtime.js +0 -2463
  518. package/dist/packages/engine/server.d.ts +0 -58
  519. package/dist/packages/engine/server.js +0 -1399
  520. package/dist/packages/engine/verify/readiness-check-run.d.ts +0 -82
  521. package/dist/packages/engine/verify/readiness-check-run.js +0 -265
  522. package/dist/packages/engine/verify/verify-paths.js +0 -61
  523. package/dist/packages/engine/verify/verify-sandbox.js +0 -88
  524. package/dist/packages/engine/verify/verify-targets.d.ts +0 -5
  525. package/dist/packages/engine/wire-schemas.d.ts +0 -547
  526. package/dist/packages/engine/wire-schemas.js +0 -59
  527. package/dist/packages/project/index.d.ts +0 -9
  528. package/dist/packages/project/interf-bootstrap.d.ts +0 -1
  529. package/dist/packages/project/interf-bootstrap.js +0 -1
  530. package/dist/packages/project/interf-scaffold.d.ts +0 -3
  531. package/dist/packages/project/interf-scaffold.js +0 -136
  532. package/dist/packages/project/interf.d.ts +0 -4
  533. package/dist/packages/project/interf.js +0 -3
  534. package/dist/packages/project/lib/schema.d.ts +0 -328
  535. package/dist/packages/project/lib/schema.js +0 -136
  536. package/dist/packages/project/preparation-entries.d.ts +0 -11
  537. package/dist/packages/project/preparation-entries.js +0 -49
  538. package/dist/packages/project/source-config.d.ts +0 -46
  539. package/dist/packages/project/source-config.js +0 -394
  540. package/dist/packages/project/source-folders.d.ts +0 -11
  541. package/public-repo/plugins/README.md +0 -9
  542. package/public-repo/plugins/interf/.claude-plugin/plugin.json +0 -21
  543. package/public-repo/plugins/interf/.mcp.json +0 -12
  544. package/public-repo/plugins/interf/README.md +0 -32
  545. package/public-repo/plugins/interf/skills/interf/SKILL.md +0 -376
  546. /package/dist/packages/{engine/agents/lib/types.js → runtime/actions/fields.js} +0 -0
  547. /package/dist/packages/{engine → runtime}/agents/lib/agents.d.ts +0 -0
  548. /package/dist/packages/{engine → runtime}/agents/lib/agents.js +0 -0
  549. /package/dist/packages/{engine → runtime}/agents/lib/execution-profile.d.ts +0 -0
  550. /package/dist/packages/{engine → runtime}/agents/lib/execution.d.ts +0 -0
  551. /package/dist/packages/{engine → runtime}/agents/lib/executors.d.ts +0 -0
  552. /package/dist/packages/{engine → runtime}/agents/lib/executors.js +0 -0
  553. /package/dist/packages/{engine → runtime}/agents/lib/logs.d.ts +0 -0
  554. /package/dist/packages/{engine → runtime}/agents/lib/logs.js +0 -0
  555. /package/dist/packages/{engine → runtime}/agents/lib/preflight.d.ts +0 -0
  556. /package/dist/packages/{engine → runtime}/agents/lib/render.d.ts +0 -0
  557. /package/dist/packages/{engine → runtime}/agents/lib/status.d.ts +0 -0
  558. /package/dist/packages/{engine → runtime}/agents/lib/status.js +0 -0
  559. /package/dist/packages/{engine → runtime}/agents/lib/types.d.ts +0 -0
  560. /package/dist/packages/{engine/build/runtime-types.js → runtime/agents/lib/types.js} +0 -0
  561. /package/dist/packages/{engine/verify/verify-types.js → runtime/agents/providers/types.js} +0 -0
  562. /package/dist/packages/{engine → runtime}/agents/role-router.d.ts +0 -0
  563. /package/dist/packages/{engine → runtime}/build/build-execution.d.ts +0 -0
  564. /package/dist/packages/{engine → runtime}/build/build-execution.js +0 -0
  565. /package/dist/packages/{engine → runtime}/build/runtime-contracts.d.ts +0 -0
  566. /package/dist/packages/{engine → runtime}/build/runtime-paths.d.ts +0 -0
  567. /package/dist/packages/{engine → runtime}/build/runtime-prompt.d.ts +0 -0
  568. /package/dist/packages/{engine → runtime}/execution/adapters.d.ts +0 -0
  569. /package/dist/packages/{engine → runtime}/execution/adapters.js +0 -0
  570. /package/dist/packages/{engine → runtime}/execution/events.d.ts +0 -0
  571. /package/dist/packages/{engine → runtime}/execution/events.js +0 -0
  572. /package/dist/packages/{engine → runtime}/verify/verify-execution.d.ts +0 -0
  573. /package/dist/packages/{engine → runtime}/verify/verify-profile-presets.d.ts +0 -0
  574. /package/dist/packages/{engine → runtime}/verify/verify-profile-presets.js +0 -0
  575. /package/dist/packages/{engine → runtime}/verify/verify-types.d.ts +0 -0
@@ -1,730 +0,0 @@
1
- import { z } from "zod";
2
- import { ArtifactRefSchema, BuildRunStatusSchema, InterfRunEventSchema, ProofRecordSchema, RunObservabilitySchema, StageRunSchema, } from "../execution/lib/schema.js";
3
- import { RequestedArtifactSchema, SourcePreparationConfigSchema, SourceProfileSchema, SourceReadinessCheckSchema, } from "../../project/lib/schema.js";
4
- import { ArtifactSchema, ArtifactIdSchema, ArtifactPathShapeSchema, ArtifactStatusSchema, CheckSchema, LocatorSchema, PreparationNameSchema, ReadinessSchema, SourceBuildMaxAttemptsSchema, SourceBuildMaxLoopsSchema, BuildPlanIdSchema, TestTargetTypeSchema, } from "../../contracts/lib/schema.js";
5
- import { ReadinessCheckRunSchema, } from "../verify/lib/schema.js";
6
- const JsonObjectSchema = z.record(z.string(), z.unknown());
7
- // ───────────────────────────────────────────────────────────────────────────
8
- // 0.13 — preparation-first additions
9
- // ───────────────────────────────────────────────────────────────────────────
10
- /**
11
- * Source binding shape on the API. `local-folder` is the only kind the
12
- * local binary accepts in 0.17; `remote-folder` rides in the type
13
- * plumbing for the future cloud variant (B4.4 cloud-variant seam) and
14
- * is rejected at the validator branch in server.ts. See `TODO(cloud)`
15
- * marker there.
16
- */
17
- export const SourceBindingSchema = z.object({
18
- kind: z.enum(["local-folder", "remote-folder"]),
19
- locator: z.string().min(1),
20
- }).strict();
21
- /**
22
- * Discriminated locator for an artifact returned by the API. Aliases the
23
- * canonical `LocatorSchema` from contracts so all three kinds —
24
- * `local-path`, `remote-url`, `api-served` — flow through the same
25
- * resource-access pattern.
26
- */
27
- export const ArtifactLocatorSchema = LocatorSchema;
28
- /** Per-instance metadata from `GET /v1/instance` (replaces /v1/status). */
29
- export const InstanceResourceSchema = z.object({
30
- kind: z.literal("interf-instance"),
31
- version: z.literal(1),
32
- url: z.string().min(1),
33
- host: z.string().min(1),
34
- port: z.number().int().min(1).max(65535),
35
- started_at: z.string().min(1),
36
- package_version: z.string().min(1).optional(),
37
- preparation_count: z.number().int().min(0),
38
- active_run_count: z.number().int().min(0),
39
- idle_for_seconds: z.number().int().min(0),
40
- auth_required: z.boolean(),
41
- /**
42
- * 0.16 — locator-pattern connection mode. `local` means the engine
43
- * is bound to a loopback host the user's UI can target with OS-shell
44
- * actions; `remote` means OS-open is unavailable and resources must
45
- * be fetched via api-served / signed URLs.
46
- */
47
- connection_kind: z.enum(["local", "remote"]).optional(),
48
- }).strict();
49
- /** Body of `POST /v1/preparations` — the 0.13 preparation create request. */
50
- export const PreparationCreateRequestSchema = z.object({
51
- id: PreparationNameSchema,
52
- source: SourceBindingSchema,
53
- /**
54
- * Selected Build Plan id. Optional — a Preparation
55
- * can be created with requested Artifacts first, then have a Build Plan
56
- * selected or drafted later before the first build.
57
- */
58
- build_plan_id: BuildPlanIdSchema.nullable().optional(),
59
- about: z.string().min(1).optional(),
60
- requested_artifacts: z.array(RequestedArtifactSchema).default([]),
61
- source_profile: SourceProfileSchema.optional(),
62
- checks: z.array(SourceReadinessCheckSchema).default([]),
63
- max_attempts: SourceBuildMaxAttemptsSchema.optional(),
64
- max_loops: SourceBuildMaxLoopsSchema.optional(),
65
- }).strict();
66
- /** Body of `PATCH /v1/preparations/<id>` — update mutable preparation fields. */
67
- export const PreparationUpdateRequestSchema = z.object({
68
- build_plan_id: BuildPlanIdSchema.nullable().optional(),
69
- about: z.string().nullable().optional(),
70
- /**
71
- * Replace the full readiness-check list. Use the empty array to clear
72
- * every check. Each item is a `SourceReadinessCheck`
73
- * (`{ question, answer?, strictness?, expect? }`).
74
- */
75
- checks: z.array(SourceReadinessCheckSchema).optional(),
76
- requested_artifacts: z.array(RequestedArtifactSchema).optional(),
77
- source_profile: SourceProfileSchema.nullable().optional(),
78
- }).strict();
79
- /** Body of `POST /v1/build-plans` — save a Build Plan definition by path. */
80
- export const BuildPlanSaveRequestSchema = z.object({
81
- source_path: z.string().min(1),
82
- id: BuildPlanIdSchema.optional(),
83
- overwrite: z.boolean().default(false),
84
- }).strict();
85
- export const BuildPlanSaveResultSchema = z.object({
86
- build_plan_id: BuildPlanIdSchema,
87
- installed: z.boolean(),
88
- path: z.string().min(1),
89
- }).strict();
90
- export const PreparationDeleteResponseSchema = z.object({
91
- deleted: z.boolean(),
92
- id: PreparationNameSchema,
93
- }).strict();
94
- export const PreparationWireShapeSchema = z.object({
95
- id: PreparationNameSchema,
96
- source: SourceBindingSchema,
97
- build_plan_id: BuildPlanIdSchema.nullable(),
98
- about: z.string().min(1).nullable(),
99
- config_path: z.string().min(1),
100
- verifiable_context: ArtifactLocatorSchema,
101
- checks: z.array(SourceReadinessCheckSchema).default([]),
102
- requested_artifacts: z.array(RequestedArtifactSchema).default([]),
103
- source_profile: SourceProfileSchema.nullable().optional(),
104
- }).strict();
105
- /**
106
- * The local service must only ever bind to a loopback interface. Any other
107
- * host (LAN IP, 0.0.0.0, public address) lets a remote browser tab POST at
108
- * the service, which is the CSRF model we are explicitly rejecting. Keep
109
- * the allowlist literal — refactoring to a `.refine()` over `z.string()`
110
- * would lose the static type narrowing.
111
- */
112
- export const LOCAL_SERVICE_LOOPBACK_HOSTS = ["127.0.0.1", "localhost", "::1"];
113
- export const LocalServiceHostSchema = z
114
- .string()
115
- .min(1)
116
- .refine((value) => LOCAL_SERVICE_LOOPBACK_HOSTS.includes(value), {
117
- message: `Local service host must be one of: ${LOCAL_SERVICE_LOOPBACK_HOSTS.join(", ")}.`,
118
- });
119
- export const LocalServicePortSchema = z.number().int().min(1).max(65535);
120
- /**
121
- * Per-instance bearer token. Generated at startup with crypto.randomBytes(32)
122
- * and rendered as a 64-char hex string. Any deviation should fail validation
123
- * loud and early.
124
- */
125
- export const LocalServiceAuthTokenSchema = z
126
- .string()
127
- .regex(/^[0-9a-f]{64}$/i, "Auth token must be a 64-character hex string.");
128
- export const LocalServiceConfigSchema = z.object({
129
- host: LocalServiceHostSchema.default("127.0.0.1"),
130
- port: LocalServicePortSchema.default(4873),
131
- }).strict();
132
- export const ServiceRegistryEntrySchema = z.preprocess((value) => {
133
- if (!value || typeof value !== "object" || Array.isArray(value))
134
- return value;
135
- const { old_state_roots: _oldStateRoots, ...entry } = value;
136
- return entry;
137
- }, z.object({
138
- pid: z.number().int().positive(),
139
- host: LocalServiceHostSchema,
140
- port: LocalServicePortSchema,
141
- url: z.string().min(1),
142
- started_at: z.string().min(1),
143
- /**
144
- * Bearer token mutating clients must send. Optional in the schema so
145
- * older registry files (pre-0.12.1) keep parsing; the runtime treats a
146
- * missing token as "open" only when the entry already exists on disk —
147
- * fresh entries always have one.
148
- */
149
- auth_token: LocalServiceAuthTokenSchema.optional(),
150
- }).strict());
151
- export const ServiceRegistrySchema = z.object({
152
- services: z.array(ServiceRegistryEntrySchema).default([]),
153
- }).strict();
154
- export const LocalServiceHealthSchema = z.object({
155
- kind: z.literal("interf-local-service-health"),
156
- version: z.literal(1),
157
- status: z.literal("ok"),
158
- host: LocalServiceHostSchema,
159
- port: LocalServicePortSchema,
160
- service_url: z.string().min(1),
161
- control_path: z.string().min(1).optional(),
162
- source_folder_path: z.string().min(1).nullable().optional(),
163
- started_at: z.string().min(1).optional(),
164
- package_version: z.string().min(1).optional(),
165
- instance_started_at: z.string().min(1).optional(),
166
- active_runs: z.number().int().min(0).default(0),
167
- idle_for_seconds: z.number().int().min(0).default(0),
168
- }).strict();
169
- export const LocalServiceErrorSchema = z.object({
170
- error: z.object({
171
- message: z.string().min(1),
172
- code: z.string().min(1).optional(),
173
- }).strict(),
174
- }).strict();
175
- export const VerifiableContextMappingSchema = z.object({
176
- preparation: PreparationNameSchema,
177
- path: z.string().min(1).nullable(),
178
- exists: z.boolean(),
179
- build_plan_id: BuildPlanIdSchema.nullable(),
180
- latest_build_run_id: z.string().min(1).nullable(),
181
- latest_test_run_id: z.string().min(1).nullable(),
182
- }).strict();
183
- export const PreparationRunLinkageSchema = z.object({
184
- latest_build_run_id: z.string().min(1).nullable(),
185
- latest_test_run_id: z.string().min(1).nullable(),
186
- }).strict();
187
- export const PreparationResourceSchema = z.object({
188
- id: PreparationNameSchema,
189
- name: PreparationNameSchema,
190
- preparation: SourcePreparationConfigSchema,
191
- source_path: z.string().min(1),
192
- build_plan_id: BuildPlanIdSchema.nullable(),
193
- checks: z.array(SourceReadinessCheckSchema).default([]),
194
- requested_artifacts: z.array(RequestedArtifactSchema).default([]),
195
- source_profile: SourceProfileSchema.nullable().optional(),
196
- verifiable_context: VerifiableContextMappingSchema,
197
- verifiable_context_path: z.string().min(1).nullable(),
198
- readiness: ReadinessSchema,
199
- runs: PreparationRunLinkageSchema,
200
- latest_build_run_id: z.string().min(1).nullable().optional(),
201
- latest_test_run_id: z.string().min(1).nullable().optional(),
202
- // Per-Artifact status from the latest Build run, mirrored
203
- // here so the UI/CLI can render artifact rows without a separate
204
- // GET /v1/preparations/<id>/runs fetch. Empty when no Build run has
205
- // produced artifacts yet.
206
- artifacts: z.array(ArtifactStatusSchema).default([]),
207
- }).strict();
208
- export const BuildPlanResourceSchema = z.object({
209
- id: BuildPlanIdSchema,
210
- build_plan_id: BuildPlanIdSchema,
211
- path: z.string().min(1),
212
- label: z.string().min(1).optional(),
213
- hint: z.string().min(1).optional(),
214
- purpose: z.object({
215
- label: z.string().min(1),
216
- task_hint: z.string().min(1),
217
- }).strict().optional(),
218
- inputs: z.array(z.object({
219
- id: ArtifactIdSchema,
220
- label: z.string().min(1),
221
- description: z.string().min(1),
222
- required: z.boolean().default(false),
223
- examples: z.array(z.string().min(1)).optional(),
224
- }).strict()).default([]),
225
- source_kind: z.enum(["builtin", "local"]).default("local"),
226
- built_in: z.boolean().default(false),
227
- active_for_preparations: z.array(PreparationNameSchema).default([]),
228
- artifacts: z.array(ArtifactSchema).default([]),
229
- stages: z.array(z.object({
230
- id: z.string().min(1),
231
- label: z.string().min(1),
232
- description: z.string().min(1).optional(),
233
- contract_type: z.string().min(1),
234
- skill_dir: z.string().min(1),
235
- /**
236
- * Role hint Build Plans declare per stage. Defaults to
237
- * `general` at the runtime layer; the wire shape mirrors that
238
- * default so clients always see a string.
239
- */
240
- role: z.string().min(1).default("general"),
241
- reads: z.array(z.string().min(1)).default([]),
242
- writes: z.array(z.string().min(1)).default([]),
243
- }).strict()).default([]),
244
- }).strict();
245
- export const BuildRunCreateRequestSchema = z.object({
246
- preparation: PreparationNameSchema,
247
- build_plan: BuildPlanIdSchema.optional(),
248
- max_attempts: SourceBuildMaxAttemptsSchema.optional(),
249
- max_loops: SourceBuildMaxLoopsSchema.optional(),
250
- preserve_stage_shells: z.enum(["on-failure", "always"]).optional(),
251
- }).strict();
252
- export const BuildRunSummarySchema = z.object({
253
- run_id: z.string().min(1),
254
- status: BuildRunStatusSchema,
255
- preparation: PreparationNameSchema,
256
- build_plan: BuildPlanIdSchema,
257
- verifiable_context_path: z.string().min(1),
258
- started_at: z.string().nullable().optional(),
259
- finished_at: z.string().nullable().optional(),
260
- latest_event: InterfRunEventSchema.nullable().optional(),
261
- latest_proof: ProofRecordSchema.nullable().optional(),
262
- }).strict();
263
- export const BuildRunSchema = z.object({
264
- kind: z.literal("interf-build-run"),
265
- version: z.literal(1),
266
- run_id: z.string().min(1),
267
- status: BuildRunStatusSchema,
268
- preparation: PreparationNameSchema,
269
- build_plan: BuildPlanIdSchema,
270
- backend: z.string().min(1),
271
- source_path: z.string().min(1),
272
- verifiable_context_path: z.string().min(1),
273
- created_at: z.string().min(1),
274
- started_at: z.string().nullable().optional(),
275
- finished_at: z.string().nullable().optional(),
276
- stages: z.array(StageRunSchema).default([]),
277
- events: z.array(InterfRunEventSchema).default([]),
278
- latest_proof: ProofRecordSchema.nullable().optional(),
279
- readiness: ReadinessSchema.nullable().optional(),
280
- artifacts: z.array(ArtifactStatusSchema).default([]),
281
- }).strict();
282
- export const BuildRunResourceSchema = z.object({
283
- run: BuildRunSchema,
284
- }).strict();
285
- export const LocalJobTypeSchema = z.enum([
286
- "readiness-check-draft",
287
- "build-plan-draft",
288
- "build-plan-improvement",
289
- ]);
290
- export const RunStatusSchema = z.enum([
291
- "queued",
292
- "running",
293
- "succeeded",
294
- "failed",
295
- "cancelled",
296
- ]);
297
- export const LocalJobStatusSchema = RunStatusSchema;
298
- export const LocalRunHandlerResultSchema = z.object({
299
- ok: z.boolean(),
300
- error: z.string().min(1).optional(),
301
- readiness_run: ReadinessCheckRunSchema.nullable().optional(),
302
- }).strict();
303
- export const LocalJobAgentSchema = z.object({
304
- name: z.string().min(1),
305
- display_name: z.string().min(1),
306
- command: z.string().min(1).nullable().optional(),
307
- }).strict();
308
- export const LocalExecutorOptionSchema = LocalJobAgentSchema.extend({
309
- current: z.boolean(),
310
- }).strict();
311
- export const LocalJobStepSchema = z.object({
312
- id: z.string().min(1),
313
- label: z.string().min(1),
314
- status: LocalJobStatusSchema,
315
- started_at: z.string().nullable().optional(),
316
- finished_at: z.string().nullable().optional(),
317
- summary: z.string().min(1).nullable().optional(),
318
- input: JsonObjectSchema.nullable().optional(),
319
- output: JsonObjectSchema.nullable().optional(),
320
- }).strict();
321
- export const LocalJobEventTypeSchema = z.enum([
322
- "job.started",
323
- "step.started",
324
- "log.appended",
325
- "artifact.written",
326
- "step.completed",
327
- "step.failed",
328
- "job.completed",
329
- "job.failed",
330
- ]);
331
- export const LocalJobEventSchema = z.object({
332
- event_id: z.string().min(1),
333
- run_id: z.string().min(1),
334
- timestamp: z.string().min(1),
335
- type: LocalJobEventTypeSchema,
336
- step_id: z.string().min(1).optional(),
337
- message: z.string().min(1).optional(),
338
- artifact: ArtifactRefSchema.optional(),
339
- input: JsonObjectSchema.nullable().optional(),
340
- output: JsonObjectSchema.nullable().optional(),
341
- }).strict();
342
- export const LocalJobRunCreateRequestSchema = z.object({
343
- job_type: LocalJobTypeSchema,
344
- title: z.string().min(1),
345
- preparation: PreparationNameSchema.nullable().optional(),
346
- build_plan: BuildPlanIdSchema.nullable().optional(),
347
- source_path: z.string().min(1).nullable().optional(),
348
- output_path: z.string().min(1).nullable().optional(),
349
- agent: LocalJobAgentSchema.nullable().optional(),
350
- steps: z.array(z.object({
351
- id: z.string().min(1),
352
- label: z.string().min(1),
353
- input: JsonObjectSchema.nullable().optional(),
354
- }).strict()).default([]),
355
- }).strict();
356
- export const PreparationSetupCreateRequestSchema = z.object({
357
- preparation: SourcePreparationConfigSchema,
358
- build_after_setup: z.boolean().default(false),
359
- setup_mode: z.enum(["create", "select-build-plan"]).default("create"),
360
- }).strict();
361
- export const PreparationSetupResultSchema = z.object({
362
- kind: z.literal("interf-preparation-setup-result"),
363
- version: z.literal(1),
364
- operation: z.enum(["create", "select-build-plan"]),
365
- preparation: PreparationNameSchema,
366
- build_plan: BuildPlanIdSchema.nullable(),
367
- source_folder_path: z.string().min(1),
368
- config_path: z.string().min(1),
369
- verifiable_context_path: z.string().min(1),
370
- changed: z.boolean(),
371
- message: z.string().min(1),
372
- submitted_run_id: z.string().min(1).nullable().optional(),
373
- submitted_run_type: z.literal("build-run").nullable().optional(),
374
- }).strict();
375
- export const BuildPlanChangeCreateRequestSchema = z.discriminatedUnion("operation", [
376
- z.object({
377
- action_type: z.literal("build-plan-change").optional(),
378
- operation: z.literal("duplicate"),
379
- build_plan: BuildPlanIdSchema,
380
- new_build_plan_id: BuildPlanIdSchema,
381
- label: z.string().min(1).optional(),
382
- hint: z.string().min(1).optional(),
383
- }).strict(),
384
- z.object({
385
- action_type: z.literal("build-plan-change").optional(),
386
- operation: z.literal("remove"),
387
- build_plan: BuildPlanIdSchema,
388
- confirmation: BuildPlanIdSchema,
389
- }).strict(),
390
- ]);
391
- export const BuildPlanChangeResultSchema = z.object({
392
- kind: z.literal("interf-build-plan-change-result"),
393
- version: z.literal(1),
394
- operation: z.enum(["duplicate", "remove"]),
395
- build_plan: BuildPlanIdSchema,
396
- new_build_plan_id: BuildPlanIdSchema.nullable().optional(),
397
- updated_preparations: z.array(PreparationNameSchema).default([]),
398
- build_plan_path: z.string().min(1),
399
- changed: z.boolean(),
400
- message: z.string().min(1),
401
- }).strict();
402
- export const PreparationChangeCreateRequestSchema = z.discriminatedUnion("operation", [
403
- z.object({
404
- action_type: z.literal("preparation-change").optional(),
405
- operation: z.literal("remove"),
406
- preparation: PreparationNameSchema,
407
- confirmation: PreparationNameSchema,
408
- }).strict(),
409
- ]);
410
- export const PreparationChangeResultSchema = z.object({
411
- kind: z.literal("interf-preparation-change-result"),
412
- version: z.literal(1),
413
- operation: z.literal("remove"),
414
- preparation: PreparationNameSchema,
415
- config_path: z.string().min(1),
416
- verifiable_context_path: z.string().min(1),
417
- verifiable_context_retained: z.boolean(),
418
- changed: z.boolean(),
419
- message: z.string().min(1),
420
- }).strict();
421
- export const ResetRequestSchema = z.object({
422
- preparation: PreparationNameSchema,
423
- scope: z.enum(["build", "all"]),
424
- }).strict();
425
- export const ResetResultSchema = z.object({
426
- kind: z.literal("interf-reset-result"),
427
- version: z.literal(1),
428
- preparation: PreparationNameSchema,
429
- scope: z.enum(["build", "all"]),
430
- verifiable_context_path: z.string().min(1),
431
- changed: z.boolean(),
432
- message: z.string().min(1),
433
- }).strict();
434
- export const ReadinessCheckDraftCreateRequestSchema = z.object({
435
- preparation: PreparationNameSchema,
436
- source_folder_path: z.string().min(1),
437
- about: z.string().min(1).optional(),
438
- target_count: z.number().int().min(1).max(8).default(4),
439
- }).strict();
440
- export const ReadinessCheckDraftResultSchema = z.object({
441
- checks: z.array(SourceReadinessCheckSchema).default([]),
442
- }).strict();
443
- export const BuildPlanAuthoringArtifactRequirementSchema = z.object({
444
- id: ArtifactIdSchema,
445
- description: z.string().min(1).optional(),
446
- shape: ArtifactPathShapeSchema,
447
- checks: z.array(CheckSchema).default([]),
448
- stage_hint: z.string().min(1).optional(),
449
- }).strict();
450
- export const BuildPlanAuthoringCreateRequestSchema = z.object({
451
- preparation: PreparationNameSchema.nullable().optional(),
452
- source_folder_path: z.string().min(1),
453
- base_build_plan_id: BuildPlanIdSchema.optional(),
454
- reference_build_plan_id: BuildPlanIdSchema.optional(),
455
- build_plan_id: BuildPlanIdSchema,
456
- label: z.string().min(1),
457
- hint: z.string().min(1),
458
- task_prompt: z.string().min(1),
459
- checks: z.array(SourceReadinessCheckSchema).default([]),
460
- requested_artifacts: z.array(RequestedArtifactSchema).default([]),
461
- source_profile: SourceProfileSchema.nullable().optional(),
462
- artifact_requirements: z.array(BuildPlanAuthoringArtifactRequirementSchema).default([]),
463
- }).strict();
464
- export const BuildPlanAuthoringResultSchema = z.object({
465
- status: z.enum(["updated", "no-change", "invalid", "executor-failed"]),
466
- changed: z.boolean(),
467
- summary: z.string().min(1),
468
- build_plan_path: z.string().min(1),
469
- shell_path: z.string().min(1),
470
- validation: z.unknown().nullable().optional(),
471
- }).strict();
472
- export const LocalJobEventAppendRequestSchema = z.object({
473
- type: LocalJobEventTypeSchema,
474
- step_id: z.string().min(1).optional(),
475
- message: z.string().min(1).optional(),
476
- artifact: ArtifactRefSchema.optional(),
477
- input: JsonObjectSchema.nullable().optional(),
478
- output: JsonObjectSchema.nullable().optional(),
479
- }).strict();
480
- export const LocalJobRunResourceSchema = z.object({
481
- kind: z.literal("interf-local-job-run"),
482
- version: z.literal(1),
483
- run_id: z.string().min(1),
484
- job_type: LocalJobTypeSchema,
485
- status: LocalJobStatusSchema,
486
- title: z.string().min(1),
487
- preparation: PreparationNameSchema.nullable().optional(),
488
- build_plan: BuildPlanIdSchema.nullable().optional(),
489
- source_path: z.string().min(1).nullable().optional(),
490
- output_path: z.string().min(1).nullable().optional(),
491
- agent: LocalJobAgentSchema.nullable().optional(),
492
- created_at: z.string().min(1),
493
- started_at: z.string().nullable().optional(),
494
- finished_at: z.string().nullable().optional(),
495
- steps: z.array(LocalJobStepSchema).default([]),
496
- events: z.array(LocalJobEventSchema).default([]),
497
- result: z.record(z.string(), z.unknown()).nullable().optional(),
498
- error: z.string().min(1).nullable().optional(),
499
- }).strict();
500
- export const VerifyRunStatusSchema = RunStatusSchema;
501
- /**
502
- * Verify runs choose their judge target.
503
- */
504
- export const VerifyRunCreateRequestSchema = z.object({
505
- preparation: PreparationNameSchema,
506
- target: TestTargetTypeSchema.default("verifiable-context"),
507
- }).strict();
508
- export const VerifyRunResourceSchema = z.object({
509
- run_id: z.string().min(1),
510
- status: VerifyRunStatusSchema,
511
- preparation: PreparationNameSchema,
512
- source_path: z.string().min(1),
513
- verifiable_context_path: z.string().min(1).nullable(),
514
- started_at: z.string().nullable().optional(),
515
- finished_at: z.string().nullable().optional(),
516
- readiness_run: ReadinessCheckRunSchema.nullable(),
517
- readiness: ReadinessSchema.nullable().optional(),
518
- events: z.array(InterfRunEventSchema).default([]),
519
- error: z.string().min(1).nullable().optional(),
520
- }).strict();
521
- export const RunObservabilityResourceSchema = RunObservabilitySchema;
522
- export const LocalExecutorStatusSchema = z.object({
523
- kind: z.literal("interf-local-executor-status"),
524
- version: z.literal(1),
525
- status: z.enum(["connected", "unavailable"]),
526
- checked_at: z.string().min(1),
527
- executor: LocalJobAgentSchema.nullable(),
528
- available_executors: z.array(LocalExecutorOptionSchema).default([]),
529
- message: z.string().min(1),
530
- }).strict();
531
- export const LocalExecutorSelectRequestSchema = z.object({
532
- agent: z.string().min(1),
533
- }).strict();
534
- export const ActionProposalTypeSchema = z.enum([
535
- "clarification",
536
- "readiness-check-draft",
537
- "build-plan-draft",
538
- "build-plan-improvement",
539
- "build",
540
- "test",
541
- ]);
542
- export const ActionProposalPlanActionTypeSchema = z.enum([
543
- "clarification",
544
- "preparation-setup",
545
- "preparation-change",
546
- "readiness-check-draft",
547
- "build-plan-draft",
548
- "build-plan-change",
549
- "build-plan-improvement",
550
- "build",
551
- "test",
552
- ]);
553
- export const ActionProposalStatusSchema = z.enum([
554
- "needs_clarification",
555
- "awaiting_approval",
556
- "approved",
557
- "denied",
558
- "submitted",
559
- "failed",
560
- ]);
561
- export const ActionClientOriginSchema = z.enum([
562
- "ui-chat",
563
- "cli",
564
- "agent-cli",
565
- "mcp",
566
- "service",
567
- "unknown",
568
- ]);
569
- export const ActionProposalCreateRequestSchema = z.object({
570
- message: z.string().min(1),
571
- preparation: PreparationNameSchema.optional(),
572
- client_origin: ActionClientOriginSchema.default("unknown"),
573
- values: JsonObjectSchema.optional(),
574
- }).strict();
575
- export const ActionProposalPlanSchema = z.object({
576
- action_type: ActionProposalPlanActionTypeSchema,
577
- preparation: PreparationNameSchema.optional(),
578
- build_plan: BuildPlanIdSchema.optional(),
579
- values: JsonObjectSchema.optional(),
580
- title: z.string().min(1).optional(),
581
- summary: z.string().min(1).optional(),
582
- assistant_message: z.string().min(1).optional(),
583
- command_preview: z.string().min(1).optional(),
584
- }).strict();
585
- export const ActionProposalApprovalRequestSchema = z.object({
586
- approved: z.boolean(),
587
- note: z.string().min(1).optional(),
588
- }).strict();
589
- export const ActionProposalApprovalSchema = z.object({
590
- approved: z.boolean(),
591
- decided_at: z.string().min(1),
592
- note: z.string().min(1).optional(),
593
- }).strict();
594
- const ActionProposalResourceBaseSchema = z.object({
595
- kind: z.literal("interf-action-proposal"),
596
- version: z.literal(1),
597
- proposal_id: z.string().min(1),
598
- status: ActionProposalStatusSchema,
599
- title: z.string().min(1),
600
- summary: z.string().min(1),
601
- assistant_message: z.string().min(1).optional(),
602
- command_preview: z.string().min(1).optional(),
603
- message: z.string().min(1),
604
- preparation: PreparationNameSchema.nullable().optional(),
605
- build_plan: BuildPlanIdSchema.nullable().optional(),
606
- client_origin: ActionClientOriginSchema.default("unknown"),
607
- created_at: z.string().min(1),
608
- updated_at: z.string().min(1),
609
- proposed_by_executor: LocalJobAgentSchema.nullable().optional(),
610
- approval: ActionProposalApprovalSchema.nullable().optional(),
611
- submitted_run_id: z.string().min(1).nullable().optional(),
612
- submitted_run_type: z.enum(["build-run", "verify-run", "job-run"]).nullable().optional(),
613
- error: z.string().min(1).nullable().optional(),
614
- }).strict();
615
- export const ActionProposalResourceSchema = z.discriminatedUnion("action_type", [
616
- ActionProposalResourceBaseSchema.extend({
617
- action_type: z.literal("clarification"),
618
- request: JsonObjectSchema,
619
- }).strict(),
620
- ActionProposalResourceBaseSchema.extend({
621
- action_type: z.literal("build"),
622
- request: BuildRunCreateRequestSchema,
623
- }).strict(),
624
- ActionProposalResourceBaseSchema.extend({
625
- action_type: z.literal("test"),
626
- request: VerifyRunCreateRequestSchema,
627
- }).strict(),
628
- ActionProposalResourceBaseSchema.extend({
629
- action_type: z.literal("readiness-check-draft"),
630
- request: ReadinessCheckDraftCreateRequestSchema,
631
- }).strict(),
632
- ActionProposalResourceBaseSchema.extend({
633
- action_type: z.literal("build-plan-draft"),
634
- request: BuildPlanAuthoringCreateRequestSchema,
635
- }).strict(),
636
- ActionProposalResourceBaseSchema.extend({
637
- action_type: z.literal("build-plan-improvement"),
638
- request: BuildPlanAuthoringCreateRequestSchema,
639
- }).strict(),
640
- ]);
641
- export const VerifiableContextResourceSchema = z.object({
642
- preparation: PreparationNameSchema,
643
- path: z.string().min(1),
644
- exists: z.boolean(),
645
- readiness: ReadinessSchema,
646
- build_plan: BuildPlanIdSchema.nullable().optional(),
647
- latest_build_run_id: z.string().min(1).nullable().optional(),
648
- latest_test_run_id: z.string().min(1).nullable().optional(),
649
- artifacts: z.array(ArtifactRefSchema).default([]),
650
- }).strict();
651
- export const ReadinessResourceSchema = ReadinessSchema;
652
- export const SourceFileResourceSchema = z.object({
653
- preparation: PreparationNameSchema,
654
- path: z.string().min(1),
655
- absolute_path: z.string().min(1),
656
- size_bytes: z.number().int().min(0),
657
- modified_at: z.string().min(1).nullable(),
658
- source_folder_path: z.string().min(1),
659
- }).strict();
660
- export const LocalServiceDiscoverySchema = z.object({
661
- kind: z.literal("interf-local-service-discovery"),
662
- version: z.literal(1),
663
- resources: z.object({
664
- instance: z.string().min(1),
665
- preparations: z.string().min(1),
666
- build_plans: z.string().min(1),
667
- build_runs: z.string().min(1),
668
- runs: z.string().min(1),
669
- action_proposals: z.string().min(1),
670
- executor: z.string().min(1),
671
- open_path: z.string().min(1),
672
- /**
673
- * 0.15 — connected agents primitive. Optional during the 0.14 →
674
- * 0.15 rollout so older clients don't fail discovery validation.
675
- */
676
- agents: z.string().min(1).optional(),
677
- /**
678
- * Optional resource paths for scoped helper resources.
679
- */
680
- readiness: z.string().min(1).optional(),
681
- verifiable_contexts: z.string().min(1).optional(),
682
- source_files: z.string().min(1).optional(),
683
- preparation_setups: z.string().min(1).optional(),
684
- preparation_changes: z.string().min(1).optional(),
685
- build_plan_changes: z.string().min(1).optional(),
686
- readiness_check_drafts: z.string().min(1).optional(),
687
- build_plan_draft_runs: z.string().min(1).optional(),
688
- build_plan_improvement_runs: z.string().min(1).optional(),
689
- verify_runs: z.string().min(1).optional(),
690
- reset: z.string().min(1).optional(),
691
- status: z.string().min(1).optional(),
692
- }).strict(),
693
- }).strict();
694
- export const OpenPathRequestSchema = z.object({
695
- path: z.string().min(1),
696
- }).strict();
697
- export const OpenPathResponseSchema = z.object({
698
- opened: z.boolean(),
699
- path: z.string().min(1),
700
- }).strict();
701
- export const PreparationListResponseSchema = z.object({
702
- preparations: z.array(PreparationWireShapeSchema),
703
- }).strict();
704
- export const BuildPlanListResponseSchema = z.object({
705
- build_plans: z.array(BuildPlanResourceSchema),
706
- }).strict();
707
- export const BuildRunListResponseSchema = z.object({
708
- build_runs: z.array(BuildRunResourceSchema),
709
- }).strict();
710
- export const LocalJobRunListResponseSchema = z.object({
711
- jobs: z.array(LocalJobRunResourceSchema),
712
- }).strict();
713
- export const VerifyRunListResponseSchema = z.object({
714
- verify_runs: z.array(VerifyRunResourceSchema),
715
- }).strict();
716
- export const RunObservabilityListResponseSchema = z.object({
717
- runs: z.array(RunObservabilityResourceSchema),
718
- }).strict();
719
- export const ActionProposalListResponseSchema = z.object({
720
- action_proposals: z.array(ActionProposalResourceSchema),
721
- }).strict();
722
- export const VerifiableContextListResponseSchema = z.object({
723
- verifiable_contexts: z.array(VerifiableContextResourceSchema),
724
- }).strict();
725
- export const ReadinessListResponseSchema = z.object({
726
- readiness: z.array(ReadinessResourceSchema),
727
- }).strict();
728
- export const SourceFileListResponseSchema = z.object({
729
- source_files: z.array(SourceFileResourceSchema),
730
- }).strict();