self-bench 0.3.6 → 0.3.8

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 (1126) hide show
  1. package/.dockerignore +11 -1
  2. package/Dockerfile +9 -9
  3. package/Dockerfile.sandbox +5 -4
  4. package/README.md +27 -12
  5. package/bun.lock +462 -95
  6. package/compose.yaml +64 -20
  7. package/dist/agent-feed.d.ts +8 -0
  8. package/dist/agent-feed.d.ts.map +1 -0
  9. package/dist/agent-feed.js +56 -0
  10. package/dist/agent-feed.js.map +1 -0
  11. package/dist/api/http.d.ts +18 -0
  12. package/dist/api/http.d.ts.map +1 -0
  13. package/dist/api/http.js +111 -0
  14. package/dist/api/http.js.map +1 -0
  15. package/dist/api/run-request.d.ts +37 -0
  16. package/dist/api/run-request.d.ts.map +1 -0
  17. package/dist/api/run-request.js +59 -0
  18. package/dist/api/run-request.js.map +1 -0
  19. package/dist/api/status.d.ts +4 -0
  20. package/dist/api/status.d.ts.map +1 -0
  21. package/dist/api/status.js +36 -0
  22. package/dist/api/status.js.map +1 -0
  23. package/dist/api/viewer-routes.d.ts +9 -0
  24. package/dist/api/viewer-routes.d.ts.map +1 -0
  25. package/dist/api/viewer-routes.js +98 -0
  26. package/dist/api/viewer-routes.js.map +1 -0
  27. package/dist/api-main.js +5 -1
  28. package/dist/api-main.js.map +1 -1
  29. package/dist/api.d.ts +7 -25
  30. package/dist/api.d.ts.map +1 -1
  31. package/dist/api.js +80 -148
  32. package/dist/api.js.map +1 -1
  33. package/dist/archive.d.ts +14 -0
  34. package/dist/archive.d.ts.map +1 -0
  35. package/dist/archive.js +114 -0
  36. package/dist/archive.js.map +1 -0
  37. package/dist/artifacts/common.d.ts +15 -0
  38. package/dist/artifacts/common.d.ts.map +1 -0
  39. package/dist/artifacts/common.js +58 -0
  40. package/dist/artifacts/common.js.map +1 -0
  41. package/dist/artifacts/gcs.d.ts +18 -0
  42. package/dist/artifacts/gcs.d.ts.map +1 -0
  43. package/dist/artifacts/gcs.js +178 -0
  44. package/dist/artifacts/gcs.js.map +1 -0
  45. package/dist/artifacts/local.d.ts +17 -0
  46. package/dist/artifacts/local.d.ts.map +1 -0
  47. package/dist/artifacts/local.js +205 -0
  48. package/dist/artifacts/local.js.map +1 -0
  49. package/dist/artifacts/types.d.ts +18 -0
  50. package/dist/artifacts/types.d.ts.map +1 -0
  51. package/dist/artifacts/types.js +2 -0
  52. package/dist/artifacts/types.js.map +1 -0
  53. package/dist/artifacts.d.ts +5 -28
  54. package/dist/artifacts.d.ts.map +1 -1
  55. package/dist/artifacts.js +5 -302
  56. package/dist/artifacts.js.map +1 -1
  57. package/dist/audit.d.ts.map +1 -1
  58. package/dist/audit.js +8 -2
  59. package/dist/audit.js.map +1 -1
  60. package/dist/auth/api-key-routes.d.ts +17 -0
  61. package/dist/auth/api-key-routes.d.ts.map +1 -0
  62. package/dist/auth/api-key-routes.js +57 -0
  63. package/dist/auth/api-key-routes.js.map +1 -0
  64. package/dist/auth/api-keys.d.ts +47 -0
  65. package/dist/auth/api-keys.d.ts.map +1 -0
  66. package/dist/auth/api-keys.js +102 -0
  67. package/dist/auth/api-keys.js.map +1 -0
  68. package/dist/auth/config.d.ts +17 -0
  69. package/dist/auth/config.d.ts.map +1 -0
  70. package/dist/auth/config.js +38 -0
  71. package/dist/auth/config.js.map +1 -0
  72. package/dist/auth/cookies.d.ts +12 -0
  73. package/dist/auth/cookies.d.ts.map +1 -0
  74. package/dist/auth/cookies.js +45 -0
  75. package/dist/auth/cookies.js.map +1 -0
  76. package/dist/auth/crypto.d.ts +19 -0
  77. package/dist/auth/crypto.d.ts.map +1 -0
  78. package/dist/auth/crypto.js +48 -0
  79. package/dist/auth/crypto.js.map +1 -0
  80. package/dist/auth/github.d.ts +37 -0
  81. package/dist/auth/github.d.ts.map +1 -0
  82. package/dist/auth/github.js +127 -0
  83. package/dist/auth/github.js.map +1 -0
  84. package/dist/auth/routes.d.ts +41 -0
  85. package/dist/auth/routes.d.ts.map +1 -0
  86. package/dist/auth/routes.js +153 -0
  87. package/dist/auth/routes.js.map +1 -0
  88. package/dist/auth/session-expired.d.ts +4 -0
  89. package/dist/auth/session-expired.d.ts.map +1 -0
  90. package/dist/auth/session-expired.js +17 -0
  91. package/dist/auth/session-expired.js.map +1 -0
  92. package/dist/auth/session.d.ts +23 -0
  93. package/dist/auth/session.d.ts.map +1 -0
  94. package/dist/auth/session.js +56 -0
  95. package/dist/auth/session.js.map +1 -0
  96. package/dist/auth/users.d.ts +49 -0
  97. package/dist/auth/users.d.ts.map +1 -0
  98. package/dist/auth/users.js +125 -0
  99. package/dist/auth/users.js.map +1 -0
  100. package/dist/build-metadata.js +1 -1
  101. package/dist/cli/api-client.d.ts +8 -0
  102. package/dist/cli/api-client.d.ts.map +1 -0
  103. package/dist/cli/api-client.js +71 -0
  104. package/dist/cli/api-client.js.map +1 -0
  105. package/dist/cli/associate.d.ts +2 -0
  106. package/dist/cli/associate.d.ts.map +1 -0
  107. package/dist/cli/associate.js +51 -0
  108. package/dist/cli/associate.js.map +1 -0
  109. package/dist/cli/help.d.ts +2 -0
  110. package/dist/cli/help.d.ts.map +1 -0
  111. package/dist/cli/help.js +52 -0
  112. package/dist/cli/help.js.map +1 -0
  113. package/dist/cli/main.d.ts +2 -0
  114. package/dist/cli/main.d.ts.map +1 -0
  115. package/dist/cli/main.js +55 -0
  116. package/dist/cli/main.js.map +1 -0
  117. package/dist/cli/replay.d.ts +3 -0
  118. package/dist/cli/replay.d.ts.map +1 -0
  119. package/dist/cli/replay.js +59 -0
  120. package/dist/cli/replay.js.map +1 -0
  121. package/dist/cli/repository.d.ts +6 -0
  122. package/dist/cli/repository.d.ts.map +1 -0
  123. package/dist/cli/repository.js +36 -0
  124. package/dist/cli/repository.js.map +1 -0
  125. package/dist/cli/run.d.ts +2 -0
  126. package/dist/cli/run.d.ts.map +1 -0
  127. package/dist/cli/run.js +93 -0
  128. package/dist/cli/run.js.map +1 -0
  129. package/dist/cli/stack-environment.d.ts +26 -0
  130. package/dist/cli/stack-environment.d.ts.map +1 -0
  131. package/dist/cli/stack-environment.js +86 -0
  132. package/dist/cli/stack-environment.js.map +1 -0
  133. package/dist/cli/stack.d.ts +6 -0
  134. package/dist/cli/stack.d.ts.map +1 -0
  135. package/dist/cli/stack.js +131 -0
  136. package/dist/cli/stack.js.map +1 -0
  137. package/dist/cli/values.d.ts +8 -0
  138. package/dist/cli/values.d.ts.map +1 -0
  139. package/dist/cli/values.js +30 -0
  140. package/dist/cli/values.js.map +1 -0
  141. package/dist/cli/view.d.ts +2 -0
  142. package/dist/cli/view.d.ts.map +1 -0
  143. package/dist/cli/view.js +40 -0
  144. package/dist/cli/view.js.map +1 -0
  145. package/dist/cli.js +2 -429
  146. package/dist/cli.js.map +1 -1
  147. package/dist/config.d.ts +16 -2
  148. package/dist/config.d.ts.map +1 -1
  149. package/dist/config.js +60 -22
  150. package/dist/config.js.map +1 -1
  151. package/dist/contracts/common.d.ts +22 -0
  152. package/dist/contracts/common.d.ts.map +1 -0
  153. package/dist/contracts/common.js +29 -0
  154. package/dist/contracts/common.js.map +1 -0
  155. package/dist/contracts/results.d.ts +66 -0
  156. package/dist/contracts/results.d.ts.map +1 -0
  157. package/dist/contracts/results.js +2 -0
  158. package/dist/contracts/results.js.map +1 -0
  159. package/dist/contracts/run.d.ts +145 -0
  160. package/dist/contracts/run.d.ts.map +1 -0
  161. package/dist/contracts/run.js +74 -0
  162. package/dist/contracts/run.js.map +1 -0
  163. package/dist/contracts/task.d.ts +232 -0
  164. package/dist/contracts/task.d.ts.map +1 -0
  165. package/dist/contracts/task.js +198 -0
  166. package/dist/contracts/task.js.map +1 -0
  167. package/dist/contracts/verify.d.ts +331 -0
  168. package/dist/contracts/verify.d.ts.map +1 -0
  169. package/dist/contracts/verify.js +84 -0
  170. package/dist/contracts/verify.js.map +1 -0
  171. package/dist/contracts.d.ts +5 -243
  172. package/dist/contracts.d.ts.map +1 -1
  173. package/dist/contracts.js +5 -128
  174. package/dist/contracts.js.map +1 -1
  175. package/dist/db/client.d.ts +12 -0
  176. package/dist/db/client.d.ts.map +1 -0
  177. package/dist/db/client.js +16 -0
  178. package/dist/db/client.js.map +1 -0
  179. package/dist/db/schema.d.ts +1256 -0
  180. package/dist/db/schema.d.ts.map +1 -0
  181. package/dist/db/schema.js +128 -0
  182. package/dist/db/schema.js.map +1 -0
  183. package/dist/environment.d.ts +9 -0
  184. package/dist/environment.d.ts.map +1 -0
  185. package/dist/environment.js +101 -0
  186. package/dist/environment.js.map +1 -0
  187. package/dist/evaluation/account.d.ts +30 -0
  188. package/dist/evaluation/account.d.ts.map +1 -0
  189. package/dist/evaluation/account.js +34 -0
  190. package/dist/evaluation/account.js.map +1 -0
  191. package/dist/evaluation/activities.d.ts +9 -0
  192. package/dist/evaluation/activities.d.ts.map +1 -0
  193. package/dist/evaluation/activities.js +40 -0
  194. package/dist/evaluation/activities.js.map +1 -0
  195. package/dist/evaluation/catalog-pricing.d.ts +3 -0
  196. package/dist/evaluation/catalog-pricing.d.ts.map +1 -0
  197. package/dist/evaluation/catalog-pricing.js +37 -0
  198. package/dist/evaluation/catalog-pricing.js.map +1 -0
  199. package/dist/evaluation/catalog.d.ts +17 -0
  200. package/dist/evaluation/catalog.d.ts.map +1 -0
  201. package/dist/evaluation/catalog.js +126 -0
  202. package/dist/evaluation/catalog.js.map +1 -0
  203. package/dist/evaluation/codex-login-process.d.ts +12 -0
  204. package/dist/evaluation/codex-login-process.d.ts.map +1 -0
  205. package/dist/evaluation/codex-login-process.js +121 -0
  206. package/dist/evaluation/codex-login-process.js.map +1 -0
  207. package/dist/evaluation/codex-login-routes.d.ts +5 -0
  208. package/dist/evaluation/codex-login-routes.d.ts.map +1 -0
  209. package/dist/evaluation/codex-login-routes.js +55 -0
  210. package/dist/evaluation/codex-login-routes.js.map +1 -0
  211. package/dist/evaluation/codex-login.d.ts +42 -0
  212. package/dist/evaluation/codex-login.d.ts.map +1 -0
  213. package/dist/evaluation/codex-login.js +143 -0
  214. package/dist/evaluation/codex-login.js.map +1 -0
  215. package/dist/evaluation/comparisons.d.ts +65 -0
  216. package/dist/evaluation/comparisons.d.ts.map +1 -0
  217. package/dist/evaluation/comparisons.js +161 -0
  218. package/dist/evaluation/comparisons.js.map +1 -0
  219. package/dist/evaluation/config.d.ts +43 -0
  220. package/dist/evaluation/config.d.ts.map +1 -0
  221. package/dist/evaluation/config.js +116 -0
  222. package/dist/evaluation/config.js.map +1 -0
  223. package/dist/evaluation/cost.d.ts +3 -0
  224. package/dist/evaluation/cost.d.ts.map +1 -0
  225. package/dist/evaluation/cost.js +95 -0
  226. package/dist/evaluation/cost.js.map +1 -0
  227. package/dist/evaluation/credential-execution.d.ts +10 -0
  228. package/dist/evaluation/credential-execution.d.ts.map +1 -0
  229. package/dist/evaluation/credential-execution.js +65 -0
  230. package/dist/evaluation/credential-execution.js.map +1 -0
  231. package/dist/evaluation/credentials.d.ts +40 -0
  232. package/dist/evaluation/credentials.d.ts.map +1 -0
  233. package/dist/evaluation/credentials.js +146 -0
  234. package/dist/evaluation/credentials.js.map +1 -0
  235. package/dist/evaluation/encrypted-records.d.ts +15 -0
  236. package/dist/evaluation/encrypted-records.d.ts.map +1 -0
  237. package/dist/evaluation/encrypted-records.js +57 -0
  238. package/dist/evaluation/encrypted-records.js.map +1 -0
  239. package/dist/evaluation/gateway-execution.d.ts +18 -0
  240. package/dist/evaluation/gateway-execution.d.ts.map +1 -0
  241. package/dist/evaluation/gateway-execution.js +38 -0
  242. package/dist/evaluation/gateway-execution.js.map +1 -0
  243. package/dist/evaluation/harbor-cost.d.ts +3 -0
  244. package/dist/evaluation/harbor-cost.d.ts.map +1 -0
  245. package/dist/evaluation/harbor-cost.js +39 -0
  246. package/dist/evaluation/harbor-cost.js.map +1 -0
  247. package/dist/evaluation/harbor_e2b.py +20 -0
  248. package/dist/evaluation/harbor_gateway.py +22 -0
  249. package/dist/evaluation/harnesses.d.ts +8 -0
  250. package/dist/evaluation/harnesses.d.ts.map +1 -0
  251. package/dist/evaluation/harnesses.js +10 -0
  252. package/dist/evaluation/harnesses.js.map +1 -0
  253. package/dist/evaluation/model-options.d.ts +9 -0
  254. package/dist/evaluation/model-options.d.ts.map +1 -0
  255. package/dist/evaluation/model-options.js +81 -0
  256. package/dist/evaluation/model-options.js.map +1 -0
  257. package/dist/evaluation/org-credential-routes.d.ts +5 -0
  258. package/dist/evaluation/org-credential-routes.d.ts.map +1 -0
  259. package/dist/evaluation/org-credential-routes.js +56 -0
  260. package/dist/evaluation/org-credential-routes.js.map +1 -0
  261. package/dist/evaluation/org-records.d.ts +4 -0
  262. package/dist/evaluation/org-records.d.ts.map +1 -0
  263. package/dist/evaluation/org-records.js +14 -0
  264. package/dist/evaluation/org-records.js.map +1 -0
  265. package/dist/evaluation/output.d.ts +9 -0
  266. package/dist/evaluation/output.d.ts.map +1 -0
  267. package/dist/evaluation/output.js +171 -0
  268. package/dist/evaluation/output.js.map +1 -0
  269. package/dist/evaluation/platform-routes.d.ts +5 -0
  270. package/dist/evaluation/platform-routes.d.ts.map +1 -0
  271. package/dist/evaluation/platform-routes.js +123 -0
  272. package/dist/evaluation/platform-routes.js.map +1 -0
  273. package/dist/evaluation/profile-routes.d.ts +16 -0
  274. package/dist/evaluation/profile-routes.d.ts.map +1 -0
  275. package/dist/evaluation/profile-routes.js +47 -0
  276. package/dist/evaluation/profile-routes.js.map +1 -0
  277. package/dist/evaluation/profiles.d.ts +48 -0
  278. package/dist/evaluation/profiles.d.ts.map +1 -0
  279. package/dist/evaluation/profiles.js +134 -0
  280. package/dist/evaluation/profiles.js.map +1 -0
  281. package/dist/evaluation/providers.d.ts +11 -0
  282. package/dist/evaluation/providers.d.ts.map +1 -0
  283. package/dist/evaluation/providers.js +30 -0
  284. package/dist/evaluation/providers.js.map +1 -0
  285. package/dist/evaluation/routes.d.ts +23 -0
  286. package/dist/evaluation/routes.d.ts.map +1 -0
  287. package/dist/evaluation/routes.js +212 -0
  288. package/dist/evaluation/routes.js.map +1 -0
  289. package/dist/evaluation/runner.d.ts +16 -0
  290. package/dist/evaluation/runner.d.ts.map +1 -0
  291. package/dist/evaluation/runner.js +241 -0
  292. package/dist/evaluation/runner.js.map +1 -0
  293. package/dist/evaluation/store.d.ts +8 -0
  294. package/dist/evaluation/store.d.ts.map +1 -0
  295. package/dist/evaluation/store.js +60 -0
  296. package/dist/evaluation/store.js.map +1 -0
  297. package/dist/evaluation/types.d.ts +98 -0
  298. package/dist/evaluation/types.d.ts.map +1 -0
  299. package/dist/evaluation/types.js +2 -0
  300. package/dist/evaluation/types.js.map +1 -0
  301. package/dist/evaluation/worker-main.d.ts +2 -0
  302. package/dist/evaluation/worker-main.d.ts.map +1 -0
  303. package/dist/evaluation/worker-main.js +26 -0
  304. package/dist/evaluation/worker-main.js.map +1 -0
  305. package/dist/evaluation/worker-records.d.ts +5 -0
  306. package/dist/evaluation/worker-records.d.ts.map +1 -0
  307. package/dist/evaluation/worker-records.js +11 -0
  308. package/dist/evaluation/worker-records.js.map +1 -0
  309. package/dist/evaluation/workflow.d.ts +3 -0
  310. package/dist/evaluation/workflow.d.ts.map +1 -0
  311. package/dist/evaluation/workflow.js +20 -0
  312. package/dist/evaluation/workflow.js.map +1 -0
  313. package/dist/execution-environment.d.ts +3 -0
  314. package/dist/execution-environment.d.ts.map +1 -0
  315. package/dist/execution-environment.js +9 -0
  316. package/dist/execution-environment.js.map +1 -0
  317. package/dist/extension-authoring.bundle.js +347 -0
  318. package/dist/extension-verifier.bundle.js +73 -0
  319. package/dist/extensions/authoring.d.ts.map +1 -1
  320. package/dist/extensions/authoring.js +70 -59
  321. package/dist/extensions/authoring.js.map +1 -1
  322. package/dist/extensions/shared/deliverable.d.ts +33 -0
  323. package/dist/extensions/shared/deliverable.d.ts.map +1 -0
  324. package/dist/extensions/shared/deliverable.js +123 -0
  325. package/dist/extensions/shared/deliverable.js.map +1 -0
  326. package/dist/extensions/shared/mailbox.d.ts +33 -0
  327. package/dist/extensions/shared/mailbox.d.ts.map +1 -0
  328. package/dist/extensions/shared/mailbox.js +102 -0
  329. package/dist/extensions/shared/mailbox.js.map +1 -0
  330. package/dist/extensions/shared/schemas.d.ts +90 -0
  331. package/dist/extensions/shared/schemas.d.ts.map +1 -0
  332. package/dist/extensions/shared/schemas.js +71 -0
  333. package/dist/extensions/shared/schemas.js.map +1 -0
  334. package/dist/extensions/shared/static-check.d.ts +38 -0
  335. package/dist/extensions/shared/static-check.d.ts.map +1 -0
  336. package/dist/extensions/shared/static-check.js +52 -0
  337. package/dist/extensions/shared/static-check.js.map +1 -0
  338. package/dist/extensions/verifier.d.ts +4 -0
  339. package/dist/extensions/verifier.d.ts.map +1 -0
  340. package/dist/extensions/verifier.js +70 -0
  341. package/dist/extensions/verifier.js.map +1 -0
  342. package/dist/github.d.ts +1 -1
  343. package/dist/github.d.ts.map +1 -1
  344. package/dist/github.js +3 -3
  345. package/dist/github.js.map +1 -1
  346. package/dist/harbor-environment.d.ts +13 -1
  347. package/dist/harbor-environment.d.ts.map +1 -1
  348. package/dist/harbor-environment.js +37 -4
  349. package/dist/harbor-environment.js.map +1 -1
  350. package/dist/harbor-results.d.ts +2 -0
  351. package/dist/harbor-results.d.ts.map +1 -1
  352. package/dist/harbor-results.js +2 -0
  353. package/dist/harbor-results.js.map +1 -1
  354. package/dist/harbor-task/compiler.d.ts +10 -0
  355. package/dist/harbor-task/compiler.d.ts.map +1 -0
  356. package/dist/harbor-task/compiler.js +174 -0
  357. package/dist/harbor-task/compiler.js.map +1 -0
  358. package/dist/harbor-task/constants.d.ts +3 -0
  359. package/dist/harbor-task/constants.d.ts.map +1 -0
  360. package/dist/harbor-task/constants.js +3 -0
  361. package/dist/harbor-task/constants.js.map +1 -0
  362. package/dist/harbor-task/dependencies.d.ts +3 -0
  363. package/dist/harbor-task/dependencies.d.ts.map +1 -0
  364. package/dist/harbor-task/dependencies.js +20 -0
  365. package/dist/harbor-task/dependencies.js.map +1 -0
  366. package/dist/harbor-task/paths.d.ts +6 -0
  367. package/dist/harbor-task/paths.d.ts.map +1 -0
  368. package/dist/harbor-task/paths.js +37 -0
  369. package/dist/harbor-task/paths.js.map +1 -0
  370. package/dist/harbor-task/render.d.ts +11 -0
  371. package/dist/harbor-task/render.d.ts.map +1 -0
  372. package/dist/harbor-task/render.js +194 -0
  373. package/dist/harbor-task/render.js.map +1 -0
  374. package/dist/harbor-task/runtime/command.sh +26 -0
  375. package/dist/harbor-task/runtime/junit.py +69 -0
  376. package/dist/harbor-task/runtime-assets.d.ts +2 -0
  377. package/dist/harbor-task/runtime-assets.d.ts.map +1 -0
  378. package/dist/harbor-task/runtime-assets.js +8 -0
  379. package/dist/harbor-task/runtime-assets.js.map +1 -0
  380. package/dist/harbor-task/test-patch.d.ts +4 -0
  381. package/dist/harbor-task/test-patch.d.ts.map +1 -0
  382. package/dist/harbor-task/test-patch.js +15 -0
  383. package/dist/harbor-task/test-patch.js.map +1 -0
  384. package/dist/harbor-task/verifier.d.ts +4 -0
  385. package/dist/harbor-task/verifier.d.ts.map +1 -0
  386. package/dist/harbor-task/verifier.js +105 -0
  387. package/dist/harbor-task/verifier.js.map +1 -0
  388. package/dist/harbor-task.d.ts +3 -11
  389. package/dist/harbor-task.d.ts.map +1 -1
  390. package/dist/harbor-task.js +2 -463
  391. package/dist/harbor-task.js.map +1 -1
  392. package/dist/log-excerpt.d.ts +15 -0
  393. package/dist/log-excerpt.d.ts.map +1 -0
  394. package/dist/log-excerpt.js +104 -0
  395. package/dist/log-excerpt.js.map +1 -0
  396. package/dist/patch-check.d.ts +26 -0
  397. package/dist/patch-check.d.ts.map +1 -0
  398. package/dist/patch-check.js +137 -0
  399. package/dist/patch-check.js.map +1 -0
  400. package/dist/pi-event-feed.d.ts +16 -0
  401. package/dist/pi-event-feed.d.ts.map +1 -0
  402. package/dist/pi-event-feed.js +86 -0
  403. package/dist/pi-event-feed.js.map +1 -0
  404. package/dist/pi-session.d.ts +32 -0
  405. package/dist/pi-session.d.ts.map +1 -0
  406. package/dist/pi-session.js +175 -0
  407. package/dist/pi-session.js.map +1 -0
  408. package/dist/process.d.ts +5 -0
  409. package/dist/process.d.ts.map +1 -1
  410. package/dist/process.js +31 -9
  411. package/dist/process.js.map +1 -1
  412. package/dist/provenance/github.d.ts +4 -0
  413. package/dist/provenance/github.d.ts.map +1 -0
  414. package/dist/provenance/github.js +65 -0
  415. package/dist/provenance/github.js.map +1 -0
  416. package/dist/provenance/local.d.ts +4 -0
  417. package/dist/provenance/local.d.ts.map +1 -0
  418. package/dist/provenance/local.js +82 -0
  419. package/dist/provenance/local.js.map +1 -0
  420. package/dist/provenance/redact.d.ts +2 -0
  421. package/dist/provenance/redact.d.ts.map +1 -0
  422. package/dist/provenance/redact.js +28 -0
  423. package/dist/provenance/redact.js.map +1 -0
  424. package/dist/provenance/selection.d.ts +4 -0
  425. package/dist/provenance/selection.d.ts.map +1 -0
  426. package/dist/provenance/selection.js +29 -0
  427. package/dist/provenance/selection.js.map +1 -0
  428. package/dist/provenance/session.d.ts +3 -0
  429. package/dist/provenance/session.d.ts.map +1 -0
  430. package/dist/provenance/session.js +214 -0
  431. package/dist/provenance/session.js.map +1 -0
  432. package/dist/provenance/shared.d.ts +7 -0
  433. package/dist/provenance/shared.d.ts.map +1 -0
  434. package/dist/provenance/shared.js +10 -0
  435. package/dist/provenance/shared.js.map +1 -0
  436. package/dist/provenance/types.d.ts +34 -0
  437. package/dist/provenance/types.d.ts.map +1 -0
  438. package/dist/provenance/types.js +22 -0
  439. package/dist/provenance/types.js.map +1 -0
  440. package/dist/provenance-associations/apply.d.ts +3 -0
  441. package/dist/provenance-associations/apply.d.ts.map +1 -0
  442. package/dist/provenance-associations/apply.js +66 -0
  443. package/dist/provenance-associations/apply.js.map +1 -0
  444. package/dist/provenance-associations/shared.d.ts +45 -0
  445. package/dist/provenance-associations/shared.d.ts.map +1 -0
  446. package/dist/provenance-associations/shared.js +42 -0
  447. package/dist/provenance-associations/shared.js.map +1 -0
  448. package/dist/provenance-associations.d.ts +3 -30
  449. package/dist/provenance-associations.d.ts.map +1 -1
  450. package/dist/provenance-associations.js +4 -103
  451. package/dist/provenance-associations.js.map +1 -1
  452. package/dist/provenance.d.ts +7 -41
  453. package/dist/provenance.d.ts.map +1 -1
  454. package/dist/provenance.js +6 -432
  455. package/dist/provenance.js.map +1 -1
  456. package/dist/providers.d.ts +25 -2
  457. package/dist/providers.d.ts.map +1 -1
  458. package/dist/providers.js +23 -2
  459. package/dist/providers.js.map +1 -1
  460. package/dist/repair.d.ts +1 -6
  461. package/dist/repair.d.ts.map +1 -1
  462. package/dist/repair.js +17 -27
  463. package/dist/repair.js.map +1 -1
  464. package/dist/review/assets/index-BHHztQ9x.js +1679 -0
  465. package/dist/review/assets/index-KQ1eFQ0t.css +1 -0
  466. package/dist/review/index.html +11 -8
  467. package/dist/runtime/command.sh +26 -0
  468. package/dist/runtime/junit.py +69 -0
  469. package/dist/sandbox/contracts.d.ts +36 -1
  470. package/dist/sandbox/contracts.d.ts.map +1 -1
  471. package/dist/sandbox/contracts.js +3 -0
  472. package/dist/sandbox/contracts.js.map +1 -1
  473. package/dist/sandbox/index.d.ts +1 -1
  474. package/dist/sandbox/index.d.ts.map +1 -1
  475. package/dist/sandbox/index.js +13 -2
  476. package/dist/sandbox/index.js.map +1 -1
  477. package/dist/sandbox/live.d.ts +18 -0
  478. package/dist/sandbox/live.d.ts.map +1 -0
  479. package/dist/sandbox/live.js +55 -0
  480. package/dist/sandbox/live.js.map +1 -0
  481. package/dist/sandbox/output-retry.d.ts +16 -0
  482. package/dist/sandbox/output-retry.d.ts.map +1 -0
  483. package/dist/sandbox/output-retry.js +36 -0
  484. package/dist/sandbox/output-retry.js.map +1 -0
  485. package/dist/sandbox/programs/author.js +16 -6
  486. package/dist/sandbox/programs/author.js.map +1 -1
  487. package/dist/sandbox/programs/check.d.ts +3 -0
  488. package/dist/sandbox/programs/check.d.ts.map +1 -0
  489. package/dist/sandbox/programs/check.js +76 -0
  490. package/dist/sandbox/programs/check.js.map +1 -0
  491. package/dist/sandbox/programs/prepare-task.d.ts +12 -0
  492. package/dist/sandbox/programs/prepare-task.d.ts.map +1 -0
  493. package/dist/sandbox/programs/{prepare-repair.js → prepare-task.js} +11 -9
  494. package/dist/sandbox/programs/prepare-task.js.map +1 -0
  495. package/dist/sandbox/programs/verifier.d.ts +3 -0
  496. package/dist/sandbox/programs/verifier.d.ts.map +1 -0
  497. package/dist/sandbox/programs/verifier.js +9 -0
  498. package/dist/sandbox/programs/verifier.js.map +1 -0
  499. package/dist/sandbox/providers/docker/executor.d.ts +4 -1
  500. package/dist/sandbox/providers/docker/executor.d.ts.map +1 -1
  501. package/dist/sandbox/providers/docker/executor.js +75 -25
  502. package/dist/sandbox/providers/docker/executor.js.map +1 -1
  503. package/dist/sandbox/providers/e2b/bytes.d.ts +3 -0
  504. package/dist/sandbox/providers/e2b/bytes.d.ts.map +1 -0
  505. package/dist/sandbox/providers/e2b/bytes.js +8 -0
  506. package/dist/sandbox/providers/e2b/bytes.js.map +1 -0
  507. package/dist/sandbox/providers/e2b/cleanup.d.ts +8 -0
  508. package/dist/sandbox/providers/e2b/cleanup.d.ts.map +1 -0
  509. package/dist/sandbox/providers/e2b/cleanup.js +124 -0
  510. package/dist/sandbox/providers/e2b/cleanup.js.map +1 -0
  511. package/dist/sandbox/providers/e2b/command.d.ts +23 -0
  512. package/dist/sandbox/providers/e2b/command.d.ts.map +1 -0
  513. package/dist/sandbox/providers/e2b/command.js +160 -0
  514. package/dist/sandbox/providers/e2b/command.js.map +1 -0
  515. package/dist/sandbox/providers/e2b/config.d.ts +13 -0
  516. package/dist/sandbox/providers/e2b/config.d.ts.map +1 -0
  517. package/dist/sandbox/providers/e2b/config.js +2 -0
  518. package/dist/sandbox/providers/e2b/config.js.map +1 -0
  519. package/dist/sandbox/providers/e2b/executor.d.ts +15 -0
  520. package/dist/sandbox/providers/e2b/executor.d.ts.map +1 -0
  521. package/dist/sandbox/providers/e2b/executor.js +207 -0
  522. package/dist/sandbox/providers/e2b/executor.js.map +1 -0
  523. package/dist/sandbox/providers/e2b/lifecycle.d.ts +8 -0
  524. package/dist/sandbox/providers/e2b/lifecycle.d.ts.map +1 -0
  525. package/dist/sandbox/providers/e2b/lifecycle.js +37 -0
  526. package/dist/sandbox/providers/e2b/lifecycle.js.map +1 -0
  527. package/dist/sandbox/providers/e2b/outcome.d.ts +11 -0
  528. package/dist/sandbox/providers/e2b/outcome.d.ts.map +1 -0
  529. package/dist/sandbox/providers/e2b/outcome.js +72 -0
  530. package/dist/sandbox/providers/e2b/outcome.js.map +1 -0
  531. package/dist/sandbox/providers/e2b/stage-files.d.ts +10 -0
  532. package/dist/sandbox/providers/e2b/stage-files.d.ts.map +1 -0
  533. package/dist/sandbox/providers/e2b/stage-files.js +45 -0
  534. package/dist/sandbox/providers/e2b/stage-files.js.map +1 -0
  535. package/dist/sandbox/providers/e2b/startup.d.ts +10 -0
  536. package/dist/sandbox/providers/e2b/startup.d.ts.map +1 -0
  537. package/dist/sandbox/providers/e2b/startup.js +26 -0
  538. package/dist/sandbox/providers/e2b/startup.js.map +1 -0
  539. package/dist/sandbox/providers/e2b/types.d.ts +9 -0
  540. package/dist/sandbox/providers/e2b/types.d.ts.map +1 -0
  541. package/dist/sandbox/providers/e2b/types.js +2 -0
  542. package/dist/sandbox/providers/e2b/types.js.map +1 -0
  543. package/dist/sandbox/providers/e2b/validation.d.ts +14 -0
  544. package/dist/sandbox/providers/e2b/validation.d.ts.map +1 -0
  545. package/dist/sandbox/providers/e2b/validation.js +60 -0
  546. package/dist/sandbox/providers/e2b/validation.js.map +1 -0
  547. package/dist/{modal-auth.d.ts → sandbox/providers/modal/auth.d.ts} +1 -1
  548. package/dist/sandbox/providers/modal/auth.d.ts.map +1 -0
  549. package/dist/{modal-auth.js → sandbox/providers/modal/auth.js} +1 -1
  550. package/dist/sandbox/providers/modal/auth.js.map +1 -0
  551. package/dist/sandbox/providers/modal/executor.d.ts +4 -1
  552. package/dist/sandbox/providers/modal/executor.d.ts.map +1 -1
  553. package/dist/sandbox/providers/modal/executor.js +33 -9
  554. package/dist/sandbox/providers/modal/executor.js.map +1 -1
  555. package/dist/sandbox/providers/modal/live.d.ts +7 -0
  556. package/dist/sandbox/providers/modal/live.d.ts.map +1 -0
  557. package/dist/sandbox/providers/modal/live.js +50 -0
  558. package/dist/sandbox/providers/modal/live.js.map +1 -0
  559. package/dist/sandbox/providers/vercel/command.d.ts +6 -0
  560. package/dist/sandbox/providers/vercel/command.d.ts.map +1 -1
  561. package/dist/sandbox/providers/vercel/command.js +44 -11
  562. package/dist/sandbox/providers/vercel/command.js.map +1 -1
  563. package/dist/sandbox/providers/vercel/executor.d.ts +6 -7
  564. package/dist/sandbox/providers/vercel/executor.d.ts.map +1 -1
  565. package/dist/sandbox/providers/vercel/executor.js +21 -187
  566. package/dist/sandbox/providers/vercel/executor.js.map +1 -1
  567. package/dist/sandbox/providers/vercel/lifecycle.d.ts +13 -0
  568. package/dist/sandbox/providers/vercel/lifecycle.d.ts.map +1 -0
  569. package/dist/sandbox/providers/vercel/lifecycle.js +140 -0
  570. package/dist/sandbox/providers/vercel/lifecycle.js.map +1 -0
  571. package/dist/sandbox/providers/vercel/validation.d.ts +11 -0
  572. package/dist/sandbox/providers/vercel/validation.d.ts.map +1 -0
  573. package/dist/sandbox/providers/vercel/validation.js +30 -0
  574. package/dist/sandbox/providers/vercel/validation.js.map +1 -0
  575. package/dist/sandbox/remote-files.d.ts +11 -0
  576. package/dist/sandbox/remote-files.d.ts.map +1 -0
  577. package/dist/sandbox/remote-files.js +41 -0
  578. package/dist/sandbox/remote-files.js.map +1 -0
  579. package/dist/sandbox/request-validation.d.ts +5 -0
  580. package/dist/sandbox/request-validation.d.ts.map +1 -0
  581. package/dist/sandbox/request-validation.js +43 -0
  582. package/dist/sandbox/request-validation.js.map +1 -0
  583. package/dist/sandbox/supervisor.d.ts +42 -0
  584. package/dist/sandbox/supervisor.d.ts.map +1 -0
  585. package/dist/sandbox/supervisor.js +126 -0
  586. package/dist/sandbox/supervisor.js.map +1 -0
  587. package/dist/sandbox/timeout.d.ts +6 -1
  588. package/dist/sandbox/timeout.d.ts.map +1 -1
  589. package/dist/sandbox/timeout.js +12 -0
  590. package/dist/sandbox/timeout.js.map +1 -1
  591. package/dist/sandbox-author.bundle.js +47 -14879
  592. package/dist/{sandbox-validation-repair.bundle.js → sandbox-check.bundle.js} +7261 -1893
  593. package/dist/sandbox-verifier.bundle.js +307 -0
  594. package/dist/setup/e2b/build.d.ts +24 -0
  595. package/dist/setup/e2b/build.d.ts.map +1 -0
  596. package/dist/setup/e2b/build.js +46 -0
  597. package/dist/setup/e2b/build.js.map +1 -0
  598. package/dist/setup/e2b/cli.d.ts +2 -0
  599. package/dist/setup/e2b/cli.d.ts.map +1 -0
  600. package/dist/setup/e2b/cli.js +51 -0
  601. package/dist/setup/e2b/cli.js.map +1 -0
  602. package/dist/setup/e2b/index.d.ts +5 -0
  603. package/dist/setup/e2b/index.d.ts.map +1 -0
  604. package/dist/setup/e2b/index.js +4 -0
  605. package/dist/setup/e2b/index.js.map +1 -0
  606. package/dist/setup/e2b/template.d.ts +4 -0
  607. package/dist/setup/e2b/template.d.ts.map +1 -0
  608. package/dist/setup/e2b/template.js +53 -0
  609. package/dist/setup/e2b/template.js.map +1 -0
  610. package/dist/setup/vercel/cli-helpers.d.ts +22 -0
  611. package/dist/setup/vercel/cli-helpers.d.ts.map +1 -0
  612. package/dist/setup/vercel/cli-helpers.js +87 -0
  613. package/dist/setup/vercel/cli-helpers.js.map +1 -0
  614. package/dist/setup/vercel/cli-runner.d.ts +14 -0
  615. package/dist/setup/vercel/cli-runner.d.ts.map +1 -0
  616. package/dist/setup/vercel/cli-runner.js +24 -0
  617. package/dist/setup/vercel/cli-runner.js.map +1 -0
  618. package/dist/setup/vercel/cli-types.d.ts +24 -0
  619. package/dist/setup/vercel/cli-types.d.ts.map +1 -0
  620. package/dist/setup/vercel/cli-types.js +18 -0
  621. package/dist/setup/vercel/cli-types.js.map +1 -0
  622. package/dist/setup/vercel/cli.d.ts +5 -31
  623. package/dist/setup/vercel/cli.d.ts.map +1 -1
  624. package/dist/setup/vercel/cli.js +15 -125
  625. package/dist/setup/vercel/cli.js.map +1 -1
  626. package/dist/setup/vercel/profile-files.d.ts +6 -0
  627. package/dist/setup/vercel/profile-files.d.ts.map +1 -0
  628. package/dist/setup/vercel/profile-files.js +100 -0
  629. package/dist/setup/vercel/profile-files.js.map +1 -0
  630. package/dist/setup/vercel/profile-schema.d.ts +48 -0
  631. package/dist/setup/vercel/profile-schema.d.ts.map +1 -0
  632. package/dist/setup/vercel/profile-schema.js +39 -0
  633. package/dist/setup/vercel/profile-schema.js.map +1 -0
  634. package/dist/setup/vercel/profile.d.ts +3 -19
  635. package/dist/setup/vercel/profile.d.ts.map +1 -1
  636. package/dist/setup/vercel/profile.js +4 -130
  637. package/dist/setup/vercel/profile.js.map +1 -1
  638. package/dist/setup/vercel/selection.d.ts +18 -0
  639. package/dist/setup/vercel/selection.d.ts.map +1 -0
  640. package/dist/setup/vercel/selection.js +113 -0
  641. package/dist/setup/vercel/selection.js.map +1 -0
  642. package/dist/setup/vercel/setup-types.d.ts +34 -0
  643. package/dist/setup/vercel/setup-types.d.ts.map +1 -0
  644. package/dist/setup/vercel/setup-types.js +2 -0
  645. package/dist/setup/vercel/setup-types.js.map +1 -0
  646. package/dist/setup/vercel/setup.d.ts +3 -28
  647. package/dist/setup/vercel/setup.d.ts.map +1 -1
  648. package/dist/setup/vercel/setup.js +3 -111
  649. package/dist/setup/vercel/setup.js.map +1 -1
  650. package/dist/site/batch-activity.d.ts +5 -0
  651. package/dist/site/batch-activity.d.ts.map +1 -0
  652. package/dist/site/batch-activity.js +31 -0
  653. package/dist/site/batch-activity.js.map +1 -0
  654. package/dist/site/batch-progress.d.ts +16 -0
  655. package/dist/site/batch-progress.d.ts.map +1 -0
  656. package/dist/site/batch-progress.js +52 -0
  657. package/dist/site/batch-progress.js.map +1 -0
  658. package/dist/site/batch-routes.d.ts +30 -0
  659. package/dist/site/batch-routes.d.ts.map +1 -0
  660. package/dist/site/batch-routes.js +117 -0
  661. package/dist/site/batch-routes.js.map +1 -0
  662. package/dist/site/batch-start.d.ts +60 -0
  663. package/dist/site/batch-start.d.ts.map +1 -0
  664. package/dist/site/batch-start.js +39 -0
  665. package/dist/site/batch-start.js.map +1 -0
  666. package/dist/site/connected-repos.d.ts +25 -0
  667. package/dist/site/connected-repos.d.ts.map +1 -0
  668. package/dist/site/connected-repos.js +109 -0
  669. package/dist/site/connected-repos.js.map +1 -0
  670. package/dist/site/evaluation-start.d.ts +4 -0
  671. package/dist/site/evaluation-start.d.ts.map +1 -0
  672. package/dist/site/evaluation-start.js +19 -0
  673. package/dist/site/evaluation-start.js.map +1 -0
  674. package/dist/site/generation-config.d.ts +4 -0
  675. package/dist/site/generation-config.d.ts.map +1 -0
  676. package/dist/site/generation-config.js +16 -0
  677. package/dist/site/generation-config.js.map +1 -0
  678. package/dist/site/generation-credentials.d.ts +6 -0
  679. package/dist/site/generation-credentials.d.ts.map +1 -0
  680. package/dist/site/generation-credentials.js +101 -0
  681. package/dist/site/generation-credentials.js.map +1 -0
  682. package/dist/site/generation-run.d.ts +6 -0
  683. package/dist/site/generation-run.d.ts.map +1 -0
  684. package/dist/site/generation-run.js +22 -0
  685. package/dist/site/generation-run.js.map +1 -0
  686. package/dist/site/generation-settings.d.ts +80 -0
  687. package/dist/site/generation-settings.d.ts.map +1 -0
  688. package/dist/site/generation-settings.js +84 -0
  689. package/dist/site/generation-settings.js.map +1 -0
  690. package/dist/site/generation-subscription.d.ts +3 -0
  691. package/dist/site/generation-subscription.d.ts.map +1 -0
  692. package/dist/site/generation-subscription.js +38 -0
  693. package/dist/site/generation-subscription.js.map +1 -0
  694. package/dist/site/github-repos.d.ts +35 -0
  695. package/dist/site/github-repos.d.ts.map +1 -0
  696. package/dist/site/github-repos.js +121 -0
  697. package/dist/site/github-repos.js.map +1 -0
  698. package/dist/site/pr-candidate.d.ts +26 -0
  699. package/dist/site/pr-candidate.d.ts.map +1 -0
  700. package/dist/site/pr-candidate.js +101 -0
  701. package/dist/site/pr-candidate.js.map +1 -0
  702. package/dist/site/pr-list.d.ts +13 -0
  703. package/dist/site/pr-list.d.ts.map +1 -0
  704. package/dist/site/pr-list.js +24 -0
  705. package/dist/site/pr-list.js.map +1 -0
  706. package/dist/site/pr-routes.d.ts +26 -0
  707. package/dist/site/pr-routes.d.ts.map +1 -0
  708. package/dist/site/pr-routes.js +139 -0
  709. package/dist/site/pr-routes.js.map +1 -0
  710. package/dist/site/repo-store.d.ts +40 -0
  711. package/dist/site/repo-store.d.ts.map +1 -0
  712. package/dist/site/repo-store.js +74 -0
  713. package/dist/site/repo-store.js.map +1 -0
  714. package/dist/site/run-store.d.ts +17 -0
  715. package/dist/site/run-store.d.ts.map +1 -0
  716. package/dist/site/run-store.js +42 -0
  717. package/dist/site/run-store.js.map +1 -0
  718. package/dist/site/runtime.d.ts +27 -0
  719. package/dist/site/runtime.d.ts.map +1 -0
  720. package/dist/site/runtime.js +97 -0
  721. package/dist/site/runtime.js.map +1 -0
  722. package/dist/site/task-deletion.d.ts +7 -0
  723. package/dist/site/task-deletion.d.ts.map +1 -0
  724. package/dist/site/task-deletion.js +29 -0
  725. package/dist/site/task-deletion.js.map +1 -0
  726. package/dist/site/task-start-reservation.d.ts +4 -0
  727. package/dist/site/task-start-reservation.d.ts.map +1 -0
  728. package/dist/site/task-start-reservation.js +18 -0
  729. package/dist/site/task-start-reservation.js.map +1 -0
  730. package/dist/site/task-start.d.ts +33 -0
  731. package/dist/site/task-start.d.ts.map +1 -0
  732. package/dist/site/task-start.js +50 -0
  733. package/dist/site/task-start.js.map +1 -0
  734. package/dist/site/task-status.d.ts +36 -0
  735. package/dist/site/task-status.d.ts.map +1 -0
  736. package/dist/site/task-status.js +113 -0
  737. package/dist/site/task-status.js.map +1 -0
  738. package/dist/site/task-store.d.ts +78 -0
  739. package/dist/site/task-store.d.ts.map +1 -0
  740. package/dist/site/task-store.js +186 -0
  741. package/dist/site/task-store.js.map +1 -0
  742. package/dist/site/task-sync.d.ts +30 -0
  743. package/dist/site/task-sync.d.ts.map +1 -0
  744. package/dist/site/task-sync.js +121 -0
  745. package/dist/site/task-sync.js.map +1 -0
  746. package/dist/site/tasks.d.ts +47 -0
  747. package/dist/site/tasks.d.ts.map +1 -0
  748. package/dist/site/tasks.js +164 -0
  749. package/dist/site/tasks.js.map +1 -0
  750. package/dist/site/temporal-status.d.ts +8 -0
  751. package/dist/site/temporal-status.d.ts.map +1 -0
  752. package/dist/site/temporal-status.js +41 -0
  753. package/dist/site/temporal-status.js.map +1 -0
  754. package/dist/site/tenant.d.ts +4 -0
  755. package/dist/site/tenant.d.ts.map +1 -0
  756. package/dist/site/tenant.js +6 -0
  757. package/dist/site/tenant.js.map +1 -0
  758. package/dist/static-check.d.ts +38 -0
  759. package/dist/static-check.d.ts.map +1 -0
  760. package/dist/static-check.js +131 -0
  761. package/dist/static-check.js.map +1 -0
  762. package/dist/submission-hash.d.ts +18 -0
  763. package/dist/submission-hash.d.ts.map +1 -0
  764. package/dist/submission-hash.js +16 -0
  765. package/dist/submission-hash.js.map +1 -0
  766. package/dist/subscription-auth.d.ts +0 -7
  767. package/dist/subscription-auth.d.ts.map +1 -1
  768. package/dist/subscription-auth.js +3 -23
  769. package/dist/subscription-auth.js.map +1 -1
  770. package/dist/temporal/activities/agent-feed.d.ts +5 -0
  771. package/dist/temporal/activities/agent-feed.d.ts.map +1 -0
  772. package/dist/temporal/activities/agent-feed.js +41 -0
  773. package/dist/temporal/activities/agent-feed.js.map +1 -0
  774. package/dist/temporal/activities/agent-scripts.d.ts +16 -0
  775. package/dist/temporal/activities/agent-scripts.d.ts.map +1 -0
  776. package/dist/temporal/activities/agent-scripts.js +162 -0
  777. package/dist/temporal/activities/agent-scripts.js.map +1 -0
  778. package/dist/temporal/activities/authoring-round.d.ts +13 -0
  779. package/dist/temporal/activities/authoring-round.d.ts.map +1 -0
  780. package/dist/temporal/activities/authoring-round.js +160 -0
  781. package/dist/temporal/activities/authoring-round.js.map +1 -0
  782. package/dist/temporal/activities/constants.d.ts +5 -0
  783. package/dist/temporal/activities/constants.d.ts.map +1 -0
  784. package/dist/temporal/activities/constants.js +5 -0
  785. package/dist/temporal/activities/constants.js.map +1 -0
  786. package/dist/temporal/activities/discovery.d.ts +17 -0
  787. package/dist/temporal/activities/discovery.d.ts.map +1 -0
  788. package/dist/temporal/activities/discovery.js +153 -0
  789. package/dist/temporal/activities/discovery.js.map +1 -0
  790. package/dist/temporal/activities/drafts.d.ts +15 -0
  791. package/dist/temporal/activities/drafts.d.ts.map +1 -0
  792. package/dist/temporal/activities/drafts.js +51 -0
  793. package/dist/temporal/activities/drafts.js.map +1 -0
  794. package/dist/temporal/activities/excluded-source-prs.d.ts +9 -0
  795. package/dist/temporal/activities/excluded-source-prs.d.ts.map +1 -0
  796. package/dist/temporal/activities/excluded-source-prs.js +132 -0
  797. package/dist/temporal/activities/excluded-source-prs.js.map +1 -0
  798. package/dist/temporal/activities/export.d.ts +38 -0
  799. package/dist/temporal/activities/export.d.ts.map +1 -0
  800. package/dist/temporal/activities/export.js +79 -0
  801. package/dist/temporal/activities/export.js.map +1 -0
  802. package/dist/temporal/activities/factory.d.ts +5 -0
  803. package/dist/temporal/activities/factory.d.ts.map +1 -0
  804. package/dist/temporal/activities/factory.js +26 -0
  805. package/dist/temporal/activities/factory.js.map +1 -0
  806. package/dist/temporal/activities/gate-logs.d.ts +20 -0
  807. package/dist/temporal/activities/gate-logs.d.ts.map +1 -0
  808. package/dist/temporal/activities/gate-logs.js +62 -0
  809. package/dist/temporal/activities/gate-logs.js.map +1 -0
  810. package/dist/temporal/activities/generation-runtime.d.ts +6 -0
  811. package/dist/temporal/activities/generation-runtime.d.ts.map +1 -0
  812. package/dist/temporal/activities/generation-runtime.js +56 -0
  813. package/dist/temporal/activities/generation-runtime.js.map +1 -0
  814. package/dist/temporal/activities/harbor.d.ts +11 -0
  815. package/dist/temporal/activities/harbor.d.ts.map +1 -0
  816. package/dist/temporal/activities/harbor.js +112 -0
  817. package/dist/temporal/activities/harbor.js.map +1 -0
  818. package/dist/temporal/activities/modal-build-log.d.ts +12 -0
  819. package/dist/temporal/activities/modal-build-log.d.ts.map +1 -0
  820. package/dist/temporal/activities/modal-build-log.js +57 -0
  821. package/dist/temporal/activities/modal-build-log.js.map +1 -0
  822. package/dist/temporal/activities/prompts-authoring.d.ts +6 -0
  823. package/dist/temporal/activities/prompts-authoring.d.ts.map +1 -0
  824. package/dist/temporal/activities/prompts-authoring.js +87 -0
  825. package/dist/temporal/activities/prompts-authoring.js.map +1 -0
  826. package/dist/temporal/activities/prompts-verifier.d.ts +17 -0
  827. package/dist/temporal/activities/prompts-verifier.d.ts.map +1 -0
  828. package/dist/temporal/activities/prompts-verifier.js +66 -0
  829. package/dist/temporal/activities/prompts-verifier.js.map +1 -0
  830. package/dist/temporal/activities/provenance.d.ts +4 -0
  831. package/dist/temporal/activities/provenance.d.ts.map +1 -0
  832. package/dist/temporal/activities/provenance.js +18 -0
  833. package/dist/temporal/activities/provenance.js.map +1 -0
  834. package/dist/temporal/activities/replay.d.ts +20 -0
  835. package/dist/temporal/activities/replay.d.ts.map +1 -0
  836. package/dist/temporal/activities/replay.js +135 -0
  837. package/dist/temporal/activities/replay.js.map +1 -0
  838. package/dist/temporal/activities/round-outcome.d.ts +63 -0
  839. package/dist/temporal/activities/round-outcome.d.ts.map +1 -0
  840. package/dist/temporal/activities/round-outcome.js +127 -0
  841. package/dist/temporal/activities/round-outcome.js.map +1 -0
  842. package/dist/temporal/activities/runtime.d.ts +38 -0
  843. package/dist/temporal/activities/runtime.d.ts.map +1 -0
  844. package/dist/temporal/activities/runtime.js +146 -0
  845. package/dist/temporal/activities/runtime.js.map +1 -0
  846. package/dist/temporal/activities/session-verify.d.ts +45 -0
  847. package/dist/temporal/activities/session-verify.d.ts.map +1 -0
  848. package/dist/temporal/activities/session-verify.js +91 -0
  849. package/dist/temporal/activities/session-verify.js.map +1 -0
  850. package/dist/temporal/activities/submissions.d.ts +9 -0
  851. package/dist/temporal/activities/submissions.d.ts.map +1 -0
  852. package/dist/temporal/activities/submissions.js +28 -0
  853. package/dist/temporal/activities/submissions.js.map +1 -0
  854. package/dist/temporal/activities/task-compiler.d.ts +21 -0
  855. package/dist/temporal/activities/task-compiler.d.ts.map +1 -0
  856. package/dist/temporal/activities/task-compiler.js +63 -0
  857. package/dist/temporal/activities/task-compiler.js.map +1 -0
  858. package/dist/temporal/activities/types.d.ts +57 -0
  859. package/dist/temporal/activities/types.d.ts.map +1 -0
  860. package/dist/temporal/activities/types.js +2 -0
  861. package/dist/temporal/activities/types.js.map +1 -0
  862. package/dist/temporal/activities/verifier-material.d.ts +18 -0
  863. package/dist/temporal/activities/verifier-material.d.ts.map +1 -0
  864. package/dist/temporal/activities/verifier-material.js +49 -0
  865. package/dist/temporal/activities/verifier-material.js.map +1 -0
  866. package/dist/temporal/activities/verifier-outcome.d.ts +19 -0
  867. package/dist/temporal/activities/verifier-outcome.d.ts.map +1 -0
  868. package/dist/temporal/activities/verifier-outcome.js +70 -0
  869. package/dist/temporal/activities/verifier-outcome.js.map +1 -0
  870. package/dist/temporal/activities/verifier-round.d.ts +8 -0
  871. package/dist/temporal/activities/verifier-round.d.ts.map +1 -0
  872. package/dist/temporal/activities/verifier-round.js +110 -0
  873. package/dist/temporal/activities/verifier-round.js.map +1 -0
  874. package/dist/temporal/activities/verify-harbor.d.ts +15 -0
  875. package/dist/temporal/activities/verify-harbor.d.ts.map +1 -0
  876. package/dist/temporal/activities/verify-harbor.js +193 -0
  877. package/dist/temporal/activities/verify-harbor.js.map +1 -0
  878. package/dist/temporal/activities/verify.d.ts +11 -0
  879. package/dist/temporal/activities/verify.d.ts.map +1 -0
  880. package/dist/temporal/activities/verify.js +151 -0
  881. package/dist/temporal/activities/verify.js.map +1 -0
  882. package/dist/temporal/activities.d.ts +3 -51
  883. package/dist/temporal/activities.d.ts.map +1 -1
  884. package/dist/temporal/activities.js +2 -886
  885. package/dist/temporal/activities.js.map +1 -1
  886. package/dist/temporal/connection.d.ts.map +1 -1
  887. package/dist/temporal/connection.js +3 -2
  888. package/dist/temporal/connection.js.map +1 -1
  889. package/dist/temporal/worker-main.js +19 -3
  890. package/dist/temporal/worker-main.js.map +1 -1
  891. package/dist/temporal/workflow/activity-proxies.d.ts +3 -0
  892. package/dist/temporal/workflow/activity-proxies.d.ts.map +1 -0
  893. package/dist/temporal/workflow/activity-proxies.js +45 -0
  894. package/dist/temporal/workflow/activity-proxies.js.map +1 -0
  895. package/dist/temporal/workflow/authoring-stage.d.ts +5 -0
  896. package/dist/temporal/workflow/authoring-stage.d.ts.map +1 -0
  897. package/dist/temporal/workflow/authoring-stage.js +64 -0
  898. package/dist/temporal/workflow/authoring-stage.js.map +1 -0
  899. package/dist/temporal/workflow/candidate-tracker.d.ts +28 -0
  900. package/dist/temporal/workflow/candidate-tracker.d.ts.map +1 -0
  901. package/dist/temporal/workflow/candidate-tracker.js +85 -0
  902. package/dist/temporal/workflow/candidate-tracker.js.map +1 -0
  903. package/dist/temporal/workflow/candidate.d.ts +6 -0
  904. package/dist/temporal/workflow/candidate.d.ts.map +1 -0
  905. package/dist/temporal/workflow/candidate.js +54 -0
  906. package/dist/temporal/workflow/candidate.js.map +1 -0
  907. package/dist/temporal/workflow/discovery.d.ts +19 -0
  908. package/dist/temporal/workflow/discovery.d.ts.map +1 -0
  909. package/dist/temporal/workflow/discovery.js +137 -0
  910. package/dist/temporal/workflow/discovery.js.map +1 -0
  911. package/dist/temporal/workflow/failures.d.ts +5 -0
  912. package/dist/temporal/workflow/failures.d.ts.map +1 -0
  913. package/dist/temporal/workflow/failures.js +28 -0
  914. package/dist/temporal/workflow/failures.js.map +1 -0
  915. package/dist/temporal/workflow/run.d.ts +5 -0
  916. package/dist/temporal/workflow/run.d.ts.map +1 -0
  917. package/dist/temporal/workflow/run.js +154 -0
  918. package/dist/temporal/workflow/run.js.map +1 -0
  919. package/dist/temporal/workflow/stage.d.ts +26 -0
  920. package/dist/temporal/workflow/stage.d.ts.map +1 -0
  921. package/dist/temporal/workflow/stage.js +16 -0
  922. package/dist/temporal/workflow/stage.js.map +1 -0
  923. package/dist/temporal/workflow/verification-stage.d.ts +11 -0
  924. package/dist/temporal/workflow/verification-stage.d.ts.map +1 -0
  925. package/dist/temporal/workflow/verification-stage.js +20 -0
  926. package/dist/temporal/workflow/verification-stage.js.map +1 -0
  927. package/dist/temporal/workflow.d.ts +12 -4
  928. package/dist/temporal/workflow.d.ts.map +1 -1
  929. package/dist/temporal/workflow.js +38 -445
  930. package/dist/temporal/workflow.js.map +1 -1
  931. package/dist/verifier-fix.d.ts +20 -0
  932. package/dist/verifier-fix.d.ts.map +1 -0
  933. package/dist/verifier-fix.js +62 -0
  934. package/dist/verifier-fix.js.map +1 -0
  935. package/dist/verify-report.d.ts +9 -0
  936. package/dist/verify-report.d.ts.map +1 -0
  937. package/dist/verify-report.js +135 -0
  938. package/dist/verify-report.js.map +1 -0
  939. package/dist/viewer/archived-keys.d.ts +9 -0
  940. package/dist/viewer/archived-keys.d.ts.map +1 -0
  941. package/dist/viewer/archived-keys.js +36 -0
  942. package/dist/viewer/archived-keys.js.map +1 -0
  943. package/dist/viewer/archived.d.ts +20 -0
  944. package/dist/viewer/archived.d.ts.map +1 -0
  945. package/dist/viewer/archived.js +238 -0
  946. package/dist/viewer/archived.js.map +1 -0
  947. package/dist/viewer/artifacts.d.ts +8 -0
  948. package/dist/viewer/artifacts.d.ts.map +1 -0
  949. package/dist/viewer/artifacts.js +96 -0
  950. package/dist/viewer/artifacts.js.map +1 -0
  951. package/dist/viewer/bundle.d.ts +9 -0
  952. package/dist/viewer/bundle.d.ts.map +1 -0
  953. package/dist/viewer/bundle.js +79 -0
  954. package/dist/viewer/bundle.js.map +1 -0
  955. package/dist/viewer/candidates.d.ts +9 -0
  956. package/dist/viewer/candidates.d.ts.map +1 -0
  957. package/dist/viewer/candidates.js +137 -0
  958. package/dist/viewer/candidates.js.map +1 -0
  959. package/dist/viewer/local-server.d.ts +11 -0
  960. package/dist/viewer/local-server.d.ts.map +1 -0
  961. package/dist/viewer/local-server.js +64 -0
  962. package/dist/viewer/local-server.js.map +1 -0
  963. package/dist/viewer/task-files.d.ts +10 -0
  964. package/dist/viewer/task-files.d.ts.map +1 -0
  965. package/dist/viewer/task-files.js +120 -0
  966. package/dist/viewer/task-files.js.map +1 -0
  967. package/dist/viewer/types.d.ts +78 -0
  968. package/dist/viewer/types.d.ts.map +1 -0
  969. package/dist/viewer/types.js +36 -0
  970. package/dist/viewer/types.js.map +1 -0
  971. package/docs/api.md +168 -0
  972. package/docs/evaluations.md +42 -15
  973. package/docs/operations.md +254 -26
  974. package/docs/solver-evaluations.md +63 -0
  975. package/docs/task-construction.md +21 -11
  976. package/drizzle/0000_glossy_johnny_blaze.sql +97 -0
  977. package/drizzle/0001_evaluation_records.sql +5 -0
  978. package/drizzle/0002_task_deletion.sql +1 -0
  979. package/drizzle/0003_drop_repo_runs.sql +3 -0
  980. package/drizzle/0004_preserve_batch_runs.sql +8 -0
  981. package/drizzle/0005_api_keys.sql +15 -0
  982. package/drizzle/meta/0000_snapshot.json +776 -0
  983. package/drizzle/meta/0001_snapshot.json +807 -0
  984. package/drizzle/meta/0002_snapshot.json +813 -0
  985. package/drizzle/meta/0003_snapshot.json +726 -0
  986. package/drizzle/meta/0004_snapshot.json +813 -0
  987. package/drizzle/meta/0005_snapshot.json +919 -0
  988. package/drizzle/meta/_journal.json +48 -0
  989. package/package.json +39 -25
  990. package/src/extensions/authoring.ts +83 -72
  991. package/src/extensions/shared/deliverable.ts +153 -0
  992. package/src/extensions/shared/mailbox.ts +128 -0
  993. package/src/extensions/shared/schemas.ts +101 -0
  994. package/src/extensions/shared/static-check.ts +103 -0
  995. package/src/extensions/verifier.ts +88 -0
  996. package/src/skills/selfbench/SKILL.md +71 -13
  997. package/biome.json +0 -24
  998. package/dist/agent-smoke-main.d.ts +0 -3
  999. package/dist/agent-smoke-main.d.ts.map +0 -1
  1000. package/dist/agent-smoke-main.js +0 -55
  1001. package/dist/agent-smoke-main.js.map +0 -1
  1002. package/dist/agent-smoke.d.ts +0 -18
  1003. package/dist/agent-smoke.d.ts.map +0 -1
  1004. package/dist/agent-smoke.js +0 -103
  1005. package/dist/agent-smoke.js.map +0 -1
  1006. package/dist/codex-review.d.ts +0 -41
  1007. package/dist/codex-review.d.ts.map +0 -1
  1008. package/dist/codex-review.js +0 -193
  1009. package/dist/codex-review.js.map +0 -1
  1010. package/dist/eval-main.d.ts +0 -3
  1011. package/dist/eval-main.d.ts.map +0 -1
  1012. package/dist/eval-main.js +0 -81
  1013. package/dist/eval-main.js.map +0 -1
  1014. package/dist/evaluate.d.ts +0 -25
  1015. package/dist/evaluate.d.ts.map +0 -1
  1016. package/dist/evaluate.js +0 -214
  1017. package/dist/evaluate.js.map +0 -1
  1018. package/dist/modal-auth.d.ts.map +0 -1
  1019. package/dist/modal-auth.js.map +0 -1
  1020. package/dist/reaudit-main.d.ts +0 -3
  1021. package/dist/reaudit-main.d.ts.map +0 -1
  1022. package/dist/reaudit-main.js +0 -158
  1023. package/dist/reaudit-main.js.map +0 -1
  1024. package/dist/repair-main.d.ts +0 -3
  1025. package/dist/repair-main.d.ts.map +0 -1
  1026. package/dist/repair-main.js +0 -171
  1027. package/dist/repair-main.js.map +0 -1
  1028. package/dist/review/assets/index-CZ3G759O.js +0 -1568
  1029. package/dist/review/assets/index-DgSLzX8l.css +0 -1
  1030. package/dist/sandbox/programs/prepare-repair.d.ts +0 -7
  1031. package/dist/sandbox/programs/prepare-repair.d.ts.map +0 -1
  1032. package/dist/sandbox/programs/prepare-repair.js.map +0 -1
  1033. package/dist/sandbox/programs/repair.d.ts +0 -3
  1034. package/dist/sandbox/programs/repair.d.ts.map +0 -1
  1035. package/dist/sandbox/programs/repair.js +0 -100
  1036. package/dist/sandbox/programs/repair.js.map +0 -1
  1037. package/dist/sandbox/programs/review.d.ts +0 -2
  1038. package/dist/sandbox/programs/review.d.ts.map +0 -1
  1039. package/dist/sandbox/programs/review.js +0 -18
  1040. package/dist/sandbox/programs/review.js.map +0 -1
  1041. package/dist/sandbox/programs/validation-repair.d.ts +0 -3
  1042. package/dist/sandbox/programs/validation-repair.d.ts.map +0 -1
  1043. package/dist/sandbox/programs/validation-repair.js +0 -115
  1044. package/dist/sandbox/programs/validation-repair.js.map +0 -1
  1045. package/dist/sandbox-repair.bundle.js +0 -323
  1046. package/dist/sandbox-review.bundle.js +0 -14462
  1047. package/dist/validate-main.d.ts +0 -3
  1048. package/dist/validate-main.d.ts.map +0 -1
  1049. package/dist/validate-main.js +0 -143
  1050. package/dist/validate-main.js.map +0 -1
  1051. package/dist/validation-repair.d.ts +0 -10
  1052. package/dist/validation-repair.d.ts.map +0 -1
  1053. package/dist/validation-repair.js +0 -72
  1054. package/dist/validation-repair.js.map +0 -1
  1055. package/review/index.html +0 -14
  1056. package/review/src/App.tsx +0 -338
  1057. package/review/src/export-loader.test.ts +0 -57
  1058. package/review/src/export-loader.ts +0 -151
  1059. package/review/src/main.tsx +0 -15
  1060. package/review/src/styles.css +0 -162
  1061. package/review/src/types.ts +0 -47
  1062. package/review/tsconfig.json +0 -16
  1063. package/review/vite.config.ts +0 -20
  1064. package/scripts/build-sandbox-programs.ts +0 -22
  1065. package/scripts/verify-package.ts +0 -102
  1066. package/scripts/write-build-metadata.ts +0 -27
  1067. package/src/agent-smoke-main.ts +0 -64
  1068. package/src/agent-smoke.ts +0 -138
  1069. package/src/api-main.ts +0 -12
  1070. package/src/api.ts +0 -291
  1071. package/src/artifacts.ts +0 -357
  1072. package/src/audit.ts +0 -106
  1073. package/src/build-metadata.ts +0 -3
  1074. package/src/cli.ts +0 -504
  1075. package/src/codex-review.ts +0 -229
  1076. package/src/config.ts +0 -239
  1077. package/src/contracts.ts +0 -233
  1078. package/src/coupling.ts +0 -259
  1079. package/src/eval-main.ts +0 -93
  1080. package/src/evaluate.ts +0 -300
  1081. package/src/github.ts +0 -26
  1082. package/src/harbor-environment.ts +0 -17
  1083. package/src/harbor-results.ts +0 -144
  1084. package/src/harbor-task.ts +0 -533
  1085. package/src/hash.ts +0 -5
  1086. package/src/modal-auth.ts +0 -11
  1087. package/src/parallel.ts +0 -24
  1088. package/src/process.ts +0 -167
  1089. package/src/project-paths.ts +0 -15
  1090. package/src/provenance-associations.ts +0 -311
  1091. package/src/provenance.ts +0 -561
  1092. package/src/providers.ts +0 -22
  1093. package/src/reaudit-main.ts +0 -198
  1094. package/src/repair-main.ts +0 -209
  1095. package/src/repair.ts +0 -55
  1096. package/src/run-wait.ts +0 -40
  1097. package/src/sandbox/contracts.ts +0 -52
  1098. package/src/sandbox/index.ts +0 -23
  1099. package/src/sandbox/programs/author.ts +0 -19
  1100. package/src/sandbox/programs/prepare-repair.ts +0 -44
  1101. package/src/sandbox/programs/repair.ts +0 -132
  1102. package/src/sandbox/programs/review.ts +0 -19
  1103. package/src/sandbox/programs/validation-repair.ts +0 -153
  1104. package/src/sandbox/providers/docker/executor.ts +0 -115
  1105. package/src/sandbox/providers/modal/executor.ts +0 -217
  1106. package/src/sandbox/providers/vercel/command.ts +0 -127
  1107. package/src/sandbox/providers/vercel/executor.ts +0 -448
  1108. package/src/sandbox/providers/vercel/fetch.ts +0 -45
  1109. package/src/sandbox/timeout.ts +0 -56
  1110. package/src/setup/vercel/cli.ts +0 -403
  1111. package/src/setup/vercel/index.ts +0 -3
  1112. package/src/setup/vercel/probe.ts +0 -232
  1113. package/src/setup/vercel/profile.ts +0 -322
  1114. package/src/setup/vercel/runtime-image.ts +0 -204
  1115. package/src/setup/vercel/setup.ts +0 -419
  1116. package/src/subscription-auth.ts +0 -80
  1117. package/src/temporal/activities.ts +0 -1348
  1118. package/src/temporal/connection.ts +0 -23
  1119. package/src/temporal/worker-main.ts +0 -28
  1120. package/src/temporal/workflow.ts +0 -568
  1121. package/src/terminal-prompts.ts +0 -197
  1122. package/src/terminal-reporter.ts +0 -126
  1123. package/src/validate-main.ts +0 -177
  1124. package/src/validation-repair.ts +0 -94
  1125. package/tsconfig.build.json +0 -13
  1126. package/tsconfig.json +0 -21
@@ -0,0 +1,57 @@
1
+ import type { ArtifactRef, AuthoredTask, AuthoredTaskDraft, AuthoringRoundResult, Candidate, Difficulty, DiscoveryResult, ReplayMaterial, ReplayRunRequest, RunRequest, VerifierRoundResult, VerifyOutcome, VerifyStage } from "../../contracts.js";
2
+ export interface DiscoveryShardInput {
3
+ readonly run: RunRequest;
4
+ readonly wave: number;
5
+ readonly shardIndex: number;
6
+ readonly shardCount: number;
7
+ readonly targetCounts: Readonly<Record<Difficulty, number>>;
8
+ readonly excludedSourcePrs: readonly number[];
9
+ }
10
+ /** One authoring agent turn: a fresh session on round 1, a resumed session afterwards. */
11
+ export interface AuthoringRoundInput {
12
+ readonly run: RunRequest;
13
+ readonly candidate: Candidate;
14
+ readonly round: number;
15
+ /** Previous round's pi session file; required for round > 1. */
16
+ readonly session?: ArtifactRef;
17
+ /** Previous round's stored VerifyReport JSON; required for round > 1. */
18
+ readonly report?: ArtifactRef;
19
+ /** In-session verify calls already spent in earlier rounds of this session. */
20
+ readonly verifyCallsUsed?: number;
21
+ /** Read-only verifier suggestions for the next authoring round. */
22
+ readonly feedback?: string;
23
+ }
24
+ /** Trusted compile + audit + Harbor build/smoke/nop/oracle for one submission. */
25
+ export interface CompileAndVerifyInput {
26
+ readonly run: RunRequest;
27
+ readonly candidate: Candidate;
28
+ readonly task: AuthoredTaskDraft;
29
+ readonly stage: VerifyStage;
30
+ readonly round: number;
31
+ }
32
+ /** One verification agent turn over a green task and its latest report. */
33
+ export interface VerifierRoundInput {
34
+ readonly run: RunRequest;
35
+ readonly candidate: Candidate;
36
+ readonly task: AuthoredTask;
37
+ readonly report: ArtifactRef;
38
+ readonly round: number;
39
+ readonly session?: ArtifactRef;
40
+ readonly verifyCallsUsed?: number;
41
+ }
42
+ export interface ExportInput {
43
+ readonly run: RunRequest;
44
+ readonly tasks: readonly AuthoredTask[];
45
+ }
46
+ export interface SelfBenchActivities {
47
+ collectRunProvenance(run: RunRequest): Promise<ArtifactRef>;
48
+ /** Source PRs processed by the listed earlier runs, for cross-run discovery exclusion. */
49
+ collectExcludedSourcePrs(runIds: readonly string[]): Promise<number[]>;
50
+ discoverCandidateShard(input: DiscoveryShardInput): Promise<DiscoveryResult>;
51
+ rebuildReplayCandidates(input: ReplayRunRequest): Promise<ReplayMaterial>;
52
+ runAuthoringRound(input: AuthoringRoundInput): Promise<AuthoringRoundResult>;
53
+ compileAndVerify(input: CompileAndVerifyInput): Promise<VerifyOutcome>;
54
+ runVerifierRound(input: VerifierRoundInput): Promise<VerifierRoundResult>;
55
+ buildExport(input: ExportInput): Promise<ArtifactRef>;
56
+ }
57
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/temporal/activities/types.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/temporal/activities/types.ts"],"names":[],"mappings":""}
@@ -0,0 +1,18 @@
1
+ import type { ArtifactStore } from "../../artifacts.js";
2
+ import { type AuthoredTask, type TaskDefinition } from "../../contracts.js";
3
+ import { type CouplingEvidence } from "../../coupling.js";
4
+ export interface VerifierMaterial {
5
+ readonly definition: TaskDefinition;
6
+ readonly instruction: string;
7
+ readonly testPatch: string;
8
+ readonly goldPatch: string;
9
+ readonly couplingEvidence: CouplingEvidence;
10
+ readonly heldOutPaths: readonly string[];
11
+ }
12
+ /**
13
+ * Everything the verification agent judges, gathered from the green bundle on the worker: the
14
+ * instruction, both patches, the environment contract, and the deterministic coupling evidence
15
+ * computed against the exact base snapshot.
16
+ */
17
+ export declare function buildVerifierMaterial(store: ArtifactStore, task: AuthoredTask): Promise<VerifierMaterial>;
18
+ //# sourceMappingURL=verifier-material.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"verifier-material.d.ts","sourceRoot":"","sources":["../../../src/temporal/activities/verifier-material.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AACxD,OAAO,EAAE,KAAK,YAAY,EAAE,KAAK,cAAc,EAAwB,MAAM,oBAAoB,CAAC;AAClG,OAAO,EAEL,KAAK,gBAAgB,EAGtB,MAAM,mBAAmB,CAAC;AAK3B,MAAM,WAAW,gBAAgB;IAC/B,QAAQ,CAAC,UAAU,EAAE,cAAc,CAAC;IACpC,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,gBAAgB,EAAE,gBAAgB,CAAC;IAC5C,QAAQ,CAAC,YAAY,EAAE,SAAS,MAAM,EAAE,CAAC;CAC1C;AAED;;;;GAIG;AACH,wBAAsB,qBAAqB,CACzC,KAAK,EAAE,aAAa,EACpB,IAAI,EAAE,YAAY,GACjB,OAAO,CAAC,gBAAgB,CAAC,CAwC3B"}
@@ -0,0 +1,49 @@
1
+ import { mkdir, readFile } from "node:fs/promises";
2
+ import { join } from "node:path";
3
+ import { extractRegularArchive, REPOSITORY_SNAPSHOT_ARCHIVE_OPTIONS } from "../../archive.js";
4
+ import { taskDefinitionSchema } from "../../contracts.js";
5
+ import { buildCouplingEvidence, discoverContractArtifacts, scanBaseContractArtifacts, } from "../../coupling.js";
6
+ import { repositoryRelativePath } from "../../harbor-task/paths.js";
7
+ import { patchPaths } from "../../repair.js";
8
+ import { withTaskBundle } from "./runtime.js";
9
+ /**
10
+ * Everything the verification agent judges, gathered from the green bundle on the worker: the
11
+ * instruction, both patches, the environment contract, and the deterministic coupling evidence
12
+ * computed against the exact base snapshot.
13
+ */
14
+ export async function buildVerifierMaterial(store, task) {
15
+ return await withTaskBundle(store, task, async (taskDirectory, root) => {
16
+ const [definitionBytes, instruction, testPatch, goldPatch] = await Promise.all([
17
+ store.get(task.definition),
18
+ readFile(join(taskDirectory, "instruction.md"), "utf8"),
19
+ readFile(join(taskDirectory, "tests/test.patch"), "utf8"),
20
+ readFile(join(taskDirectory, "solution/gold.patch"), "utf8"),
21
+ ]);
22
+ const definition = taskDefinitionSchema.parse(JSON.parse(Buffer.from(definitionBytes).toString("utf8")));
23
+ const baseDirectory = join(root, "verifier-base");
24
+ await mkdir(baseDirectory);
25
+ await extractRegularArchive(join(taskDirectory, "environment/repo.tar.gz"), baseDirectory, REPOSITORY_SNAPSHOT_ARCHIVE_OPTIONS);
26
+ const candidates = discoverContractArtifacts(testPatch);
27
+ const baseArtifacts = await scanBaseContractArtifacts(baseDirectory, root, candidates);
28
+ const couplingEvidence = buildCouplingEvidence({
29
+ prompt: definition.prompt,
30
+ testPatch,
31
+ goldPatch,
32
+ baseArtifacts,
33
+ });
34
+ return {
35
+ definition,
36
+ instruction,
37
+ testPatch,
38
+ goldPatch,
39
+ couplingEvidence,
40
+ heldOutPaths: [
41
+ ...new Set([
42
+ ...patchPaths(testPatch),
43
+ ...definition.testPaths.map((path) => repositoryRelativePath(definition, path)),
44
+ ]),
45
+ ],
46
+ };
47
+ });
48
+ }
49
+ //# sourceMappingURL=verifier-material.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"verifier-material.js","sourceRoot":"","sources":["../../../src/temporal/activities/verifier-material.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AACnD,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AACjC,OAAO,EAAE,qBAAqB,EAAE,mCAAmC,EAAE,MAAM,kBAAkB,CAAC;AAE9F,OAAO,EAA0C,oBAAoB,EAAE,MAAM,oBAAoB,CAAC;AAClG,OAAO,EACL,qBAAqB,EAErB,yBAAyB,EACzB,yBAAyB,GAC1B,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EAAE,sBAAsB,EAAE,MAAM,4BAA4B,CAAC;AACpE,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAC7C,OAAO,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AAW9C;;;;GAIG;AACH,MAAM,CAAC,KAAK,UAAU,qBAAqB,CACzC,KAAoB,EACpB,IAAkB;IAElB,OAAO,MAAM,cAAc,CAAC,KAAK,EAAE,IAAI,EAAE,KAAK,EAAE,aAAa,EAAE,IAAI,EAAE,EAAE;QACrE,MAAM,CAAC,eAAe,EAAE,WAAW,EAAE,SAAS,EAAE,SAAS,CAAC,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC;YAC7E,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,UAAU,CAAC;YAC1B,QAAQ,CAAC,IAAI,CAAC,aAAa,EAAE,gBAAgB,CAAC,EAAE,MAAM,CAAC;YACvD,QAAQ,CAAC,IAAI,CAAC,aAAa,EAAE,kBAAkB,CAAC,EAAE,MAAM,CAAC;YACzD,QAAQ,CAAC,IAAI,CAAC,aAAa,EAAE,qBAAqB,CAAC,EAAE,MAAM,CAAC;SAC7D,CAAC,CAAC;QACH,MAAM,UAAU,GAAG,oBAAoB,CAAC,KAAK,CAC3C,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAC1D,CAAC;QACF,MAAM,aAAa,GAAG,IAAI,CAAC,IAAI,EAAE,eAAe,CAAC,CAAC;QAClD,MAAM,KAAK,CAAC,aAAa,CAAC,CAAC;QAC3B,MAAM,qBAAqB,CACzB,IAAI,CAAC,aAAa,EAAE,yBAAyB,CAAC,EAC9C,aAAa,EACb,mCAAmC,CACpC,CAAC;QACF,MAAM,UAAU,GAAG,yBAAyB,CAAC,SAAS,CAAC,CAAC;QACxD,MAAM,aAAa,GAAG,MAAM,yBAAyB,CAAC,aAAa,EAAE,IAAI,EAAE,UAAU,CAAC,CAAC;QACvF,MAAM,gBAAgB,GAAG,qBAAqB,CAAC;YAC7C,MAAM,EAAE,UAAU,CAAC,MAAM;YACzB,SAAS;YACT,SAAS;YACT,aAAa;SACd,CAAC,CAAC;QACH,OAAO;YACL,UAAU;YACV,WAAW;YACX,SAAS;YACT,SAAS;YACT,gBAAgB;YAChB,YAAY,EAAE;gBACZ,GAAG,IAAI,GAAG,CAAC;oBACT,GAAG,UAAU,CAAC,SAAS,CAAC;oBACxB,GAAG,UAAU,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,sBAAsB,CAAC,UAAU,EAAE,IAAI,CAAC,CAAC;iBAChF,CAAC;aACH;SACF,CAAC;IACJ,CAAC,CAAC,CAAC;AACL,CAAC"}
@@ -0,0 +1,19 @@
1
+ import type { ArtifactStore } from "../../artifacts.js";
2
+ import type { VerifierRoundResult } from "../../contracts.js";
3
+ import { type SandboxRoundResult } from "./round-outcome.js";
4
+ import type { StoredPiSession } from "./runtime.js";
5
+ import type { VerifierRoundInput } from "./types.js";
6
+ export declare const VERDICT_PATH = "/work/verdict/verdict.json";
7
+ export interface VerifierOutcomeInput {
8
+ readonly store: ArtifactStore;
9
+ readonly input: VerifierRoundInput;
10
+ readonly prefix: string;
11
+ /** `<prefix>/attempt-<n>`: where this attempt's pre-decision artifacts go. */
12
+ readonly attemptPrefix: string;
13
+ readonly result: SandboxRoundResult;
14
+ readonly session: StoredPiSession | undefined;
15
+ readonly logUri: string;
16
+ }
17
+ /** Archives a read-only verdict; never imports task modifications from the reviewer. */
18
+ export declare function resolveVerifierOutcome(input: VerifierOutcomeInput): Promise<VerifierRoundResult>;
19
+ //# sourceMappingURL=verifier-outcome.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"verifier-outcome.d.ts","sourceRoot":"","sources":["../../../src/temporal/activities/verifier-outcome.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AACxD,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAC;AAE9D,OAAO,EAKL,KAAK,kBAAkB,EACxB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AACpD,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAC;AAErD,eAAO,MAAM,YAAY,+BAA+B,CAAC;AAezD,MAAM,WAAW,oBAAoB;IACnC,QAAQ,CAAC,KAAK,EAAE,aAAa,CAAC;IAC9B,QAAQ,CAAC,KAAK,EAAE,kBAAkB,CAAC;IACnC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,8EAA8E;IAC9E,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC;IAC/B,QAAQ,CAAC,MAAM,EAAE,kBAAkB,CAAC;IACpC,QAAQ,CAAC,OAAO,EAAE,eAAe,GAAG,SAAS,CAAC;IAC9C,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;CACzB;AAED,wFAAwF;AACxF,wBAAsB,sBAAsB,CAC1C,KAAK,EAAE,oBAAoB,GAC1B,OAAO,CAAC,mBAAmB,CAAC,CAsD9B"}
@@ -0,0 +1,70 @@
1
+ import { z } from "zod";
2
+ import { PI_SESSION_OUTPUT_PATH } from "../../pi-session.js";
3
+ import { archiveSandboxResult, classifyRound, piExitCodeFrom, SandboxOutputError, } from "./round-outcome.js";
4
+ export const VERDICT_PATH = "/work/verdict/verdict.json";
5
+ const verdictSchema = z.discriminatedUnion("kind", [
6
+ z.object({ kind: z.literal("accepted"), reason: z.string().min(1) }).passthrough(),
7
+ z
8
+ .object({
9
+ kind: z.literal("suggestions"),
10
+ summary: z.string().min(1),
11
+ suggestions: z.string().min(1),
12
+ })
13
+ .passthrough(),
14
+ z.object({ kind: z.literal("rejected"), reason: z.string().min(1) }),
15
+ z.object({ kind: z.literal("none") }),
16
+ ]);
17
+ /** Archives a read-only verdict; never imports task modifications from the reviewer. */
18
+ export async function resolveVerifierOutcome(input) {
19
+ const { store, prefix, attemptPrefix, result, session, logUri } = input;
20
+ const { candidate, round } = input.input;
21
+ const reject = (reason) => ({
22
+ kind: "rejected",
23
+ candidateId: candidate.candidateId,
24
+ reason: `${reason}; log: ${logUri}`,
25
+ });
26
+ const verdictBytes = result.outputs[VERDICT_PATH];
27
+ const missing = await archiveSandboxResult(store, `${attemptPrefix}/sandbox-result.json`, result, [VERDICT_PATH, PI_SESSION_OUTPUT_PATH]);
28
+ const classified = classifyRound({
29
+ round,
30
+ exitCode: result.exitCode,
31
+ piExitCode: piExitCodeFrom(result.stdout),
32
+ missing: missing.filter((path) => path !== PI_SESSION_OUTPUT_PATH),
33
+ sessionCollected: session !== undefined,
34
+ toolCalls: session?.toolCalls ?? [],
35
+ finalMessage: session?.finalMessage,
36
+ providerError: session?.providerError,
37
+ });
38
+ if (classified.kind === "infrastructure") {
39
+ throw new SandboxOutputError(`verifier ${classified.reason}; log: ${logUri}`);
40
+ }
41
+ if (classified.kind === "rejected" || !verdictBytes || !session) {
42
+ return reject(`verifier ${classified.kind === "rejected" ? classified.reason : `round ${round} delivered no verdict`}`);
43
+ }
44
+ const verdict = verdictSchema.safeParse(JSON.parse(Buffer.from(verdictBytes).toString("utf8")));
45
+ if (!verdict.success) {
46
+ return reject(`verifier round ${round} produced an unreadable verdict`);
47
+ }
48
+ await store.put(`${prefix}/verdict.json`, verdictBytes, "application/json");
49
+ if (verdict.data.kind === "none") {
50
+ return reject(`verification agent declined the task${explanation(session)}`);
51
+ }
52
+ if (verdict.data.kind === "rejected")
53
+ return reject(verdict.data.reason);
54
+ if (verdict.data.kind === "accepted") {
55
+ return { kind: "accepted", session: session.ref, reason: verdict.data.reason };
56
+ }
57
+ if (verdict.data.kind === "suggestions") {
58
+ return {
59
+ kind: "suggestions",
60
+ session: session.ref,
61
+ summary: verdict.data.summary,
62
+ suggestions: verdict.data.suggestions,
63
+ };
64
+ }
65
+ return reject("unsupported verifier verdict");
66
+ }
67
+ function explanation(session) {
68
+ return session?.finalMessage ? `: ${session.finalMessage.slice(0, 1_000)}` : "";
69
+ }
70
+ //# sourceMappingURL=verifier-outcome.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"verifier-outcome.js","sourceRoot":"","sources":["../../../src/temporal/activities/verifier-outcome.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,8 @@
1
+ import type { ArtifactStore } from "../../artifacts.js";
2
+ import type { SelfBenchConfig } from "../../config.js";
3
+ import { type VerifierRoundResult } from "../../contracts.js";
4
+ import type { SandboxExecutor } from "../../sandbox/index.js";
5
+ import type { VerifierRoundInput } from "./types.js";
6
+ /** Fresh read-only review of a mechanically green authoring revision. */
7
+ export declare function runVerifierRound(store: ArtifactStore, sandbox: SandboxExecutor, _harborEnvironment: SelfBenchConfig["harborEnvironment"], input: VerifierRoundInput): Promise<VerifierRoundResult>;
8
+ //# sourceMappingURL=verifier-round.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"verifier-round.d.ts","sourceRoot":"","sources":["../../../src/temporal/activities/verifier-round.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AACxD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAEvD,OAAO,EACL,KAAK,mBAAmB,EAGzB,MAAM,oBAAoB,CAAC;AAE5B,OAAO,KAAK,EAAE,eAAe,EAAe,MAAM,wBAAwB,CAAC;AAc3E,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAC;AAIrD,yEAAyE;AACzE,wBAAsB,gBAAgB,CACpC,KAAK,EAAE,aAAa,EACpB,OAAO,EAAE,eAAe,EACxB,kBAAkB,EAAE,eAAe,CAAC,mBAAmB,CAAC,EACxD,KAAK,EAAE,kBAAkB,GACxB,OAAO,CAAC,mBAAmB,CAAC,CA4G9B"}
@@ -0,0 +1,110 @@
1
+ import { Context } from "@temporalio/activity";
2
+ import { verifierRoundResultSchema, verifyReportSchema, } from "../../contracts.js";
3
+ import { PI_SESSION_OUTPUT_PATH, sessionArtifactKey } from "../../pi-session.js";
4
+ import { loadPiModelAuth } from "../../subscription-auth.js";
5
+ import { renderVerifyReport } from "../../verify-report.js";
6
+ import { withAgentFeed } from "./agent-feed.js";
7
+ import { verifierRoundScript } from "./agent-scripts.js";
8
+ import { AGENT_INACTIVITY_TIMEOUT_MS, VERIFIER_TIMEOUT_MS } from "./constants.js";
9
+ import { verifierPrompt } from "./prompts-verifier.js";
10
+ import { reconcileWrapperStatus, WRAPPER_STATUS_PATH } from "./round-outcome.js";
11
+ import { readAsset, runSandboxWithFailureLog, storePiSession, withActivityHeartbeats, } from "./runtime.js";
12
+ import { buildVerifierMaterial } from "./verifier-material.js";
13
+ import { resolveVerifierOutcome, VERDICT_PATH } from "./verifier-outcome.js";
14
+ /** Fresh read-only review of a mechanically green authoring revision. */
15
+ export async function runVerifierRound(store, sandbox, _harborEnvironment, input) {
16
+ const { run, candidate, task, round } = input;
17
+ const prefix = `runs/${run.runId}/verification/${candidate.candidateId}/round-${round}`;
18
+ // Everything one attempt produces before the round is decided lives under attempt-<n>, so a
19
+ // Temporal retry never collides with the immutable artifacts of the attempt it replaces.
20
+ const attempt = Context.current().info.attempt;
21
+ const attemptPrefix = `${prefix}/attempt-${attempt}`;
22
+ const checkpoint = await store.getByKey(`${prefix}/result.json`);
23
+ if (checkpoint) {
24
+ return verifierRoundResultSchema.parse(JSON.parse(Buffer.from(checkpoint).toString("utf8")));
25
+ }
26
+ Context.current().heartbeat(`verifying ${task.taskId} round ${round}`);
27
+ const [reportBytes, extension, program, piAuth] = await Promise.all([
28
+ store.get(input.report),
29
+ readAsset("dist/extension-verifier.bundle.js"),
30
+ readAsset("dist/sandbox-verifier.bundle.js"),
31
+ loadPiModelAuth(),
32
+ ]);
33
+ const report = verifyReportSchema.parse(JSON.parse(Buffer.from(reportBytes).toString("utf8")));
34
+ if (!report.green)
35
+ throw new Error("Read-only verification requires green mechanical checks");
36
+ const material = await buildVerifierMaterial(store, task);
37
+ await store.put(`${attemptPrefix}/coupling-evidence.json`, Buffer.from(JSON.stringify(material.couplingEvidence)), "application/json");
38
+ const prompt = verifierPrompt({
39
+ taskId: task.taskId,
40
+ testSelection: material.definition.testSelection,
41
+ testResults: material.definition.testResults,
42
+ instruction: material.instruction,
43
+ renderedReport: renderVerifyReport(report),
44
+ couplingEvidence: material.couplingEvidence,
45
+ environment: material.definition.environment,
46
+ testPatch: material.testPatch,
47
+ goldPatch: material.goldPatch,
48
+ heldOutPaths: material.heldOutPaths,
49
+ });
50
+ await store.put(`${attemptPrefix}/prompt.md`, Buffer.from(prompt), "text/markdown");
51
+ const logKey = `${attemptPrefix}/sandbox.log`;
52
+ const sandboxResult = await withAgentFeed(store, attemptPrefix, [piAuth.apiKey ?? "", piAuth.authJson ?? ""], (onOutput) => runSandboxWithFailureLog(store, logKey, () => withActivityHeartbeats(`running verifier sandbox for ${task.taskId} round ${round}`, async (options) => sandbox.run({
53
+ runId: run.runId,
54
+ stage: `verify-${candidate.candidateId}-r${round}`,
55
+ timeoutMs: VERIFIER_TIMEOUT_MS,
56
+ inactivityTimeoutMs: AGENT_INACTIVITY_TIMEOUT_MS,
57
+ files: [
58
+ // The bundle (hundreds of MB) is pulled by the sandbox from a signed URL when the
59
+ // store can issue one; otherwise it is loaded inline, never held in a local.
60
+ await bundleFile(store, task.bundle),
61
+ { path: "/work/sandbox-verifier.js", contents: program },
62
+ { path: "/work/verifier.js", contents: extension },
63
+ { path: "/work/prompt.txt", contents: prompt },
64
+ ],
65
+ outputPaths: [VERDICT_PATH, PI_SESSION_OUTPUT_PATH, WRAPPER_STATUS_PATH],
66
+ secrets: {
67
+ ...(piAuth.apiKey ? { OPENAI_API_KEY: piAuth.apiKey } : {}),
68
+ ...(piAuth.authJson ? { SELFBENCH_PI_AUTH_JSON: piAuth.authJson } : {}),
69
+ },
70
+ environment: {
71
+ AUTHOR_MODEL: run.authoring.model,
72
+ AUTHOR_THINKING: run.authoring.reasoningEffort,
73
+ SELFBENCH_TASK_DIRECTORY: "/work/task/harbor-task",
74
+ SELFBENCH_REPO_DIRECTORY: "/work/repo",
75
+ SELFBENCH_VERDICT_OUTPUT: "/work/verdict",
76
+ },
77
+ command: ["bash", "-lc", verifierRoundScript(false)],
78
+ }, { ...options, onOutput }))));
79
+ const result = reconcileWrapperStatus(sandboxResult);
80
+ const log = await store.put(logKey, Buffer.from(`${result.stdout}\n${result.stderr}`), "text/plain");
81
+ const session = await storePiSession(store, sessionArtifactKey(run.runId, "verification", candidate.candidateId, round, attempt), result.outputs[PI_SESSION_OUTPUT_PATH]);
82
+ const outcome = await resolveVerifierOutcome({
83
+ store,
84
+ input,
85
+ prefix,
86
+ attemptPrefix,
87
+ result,
88
+ session,
89
+ logUri: log.uri,
90
+ });
91
+ await store.put(`${prefix}/result.json`, Buffer.from(`${JSON.stringify(outcome, null, 2)}\n`), "application/json");
92
+ return outcome;
93
+ }
94
+ const BUNDLE_URL_TTL_MS = 2 * 60 * 60_000;
95
+ async function bundleFile(store, bundle) {
96
+ try {
97
+ const url = await store.signedReadUrl?.(bundle, BUNDLE_URL_TTL_MS);
98
+ if (url)
99
+ return { path: "/work/task.tar.gz", url, sha256: bundle.sha256 };
100
+ }
101
+ catch (error) {
102
+ // Some ADC credentials can read GCS but cannot sign URLs. Inline fallback keeps verification
103
+ // working; signed URLs remain the fast path for large bundles when a service account is present.
104
+ if (!(error instanceof Error) || !/client_email|sign data|credential/i.test(error.message)) {
105
+ throw error;
106
+ }
107
+ }
108
+ return { path: "/work/task.tar.gz", contents: await store.get(bundle) };
109
+ }
110
+ //# sourceMappingURL=verifier-round.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"verifier-round.js","sourceRoot":"","sources":["../../../src/temporal/activities/verifier-round.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,15 @@
1
+ import type { ArtifactStore } from "../../artifacts.js";
2
+ import type { SelfBenchConfig } from "../../config.js";
3
+ import type { AuthoredTask, VerifyReport } from "../../contracts.js";
4
+ export type HarborGates = Pick<VerifyReport, "build" | "smoke" | "nop" | "oracle">;
5
+ export declare function notRunGates(): HarborGates;
6
+ /**
7
+ * Builds the task images and measures smoke, nop, and oracle on Harbor. The first run replaces the
8
+ * verifier script with one that runs the smoke command and then the real nop split, preserving the
9
+ * nop rewards under `nop_*` keys; the second run is the unchanged oracle. Harbor infrastructure
10
+ * failures are reported as a red build flagged `infrastructure` instead of failing the activity.
11
+ */
12
+ export declare function runHarborGates(store: ArtifactStore, task: AuthoredTask, harborEnvironment: SelfBenchConfig["harborEnvironment"], prefix: string): Promise<HarborGates>;
13
+ /** Verifier script for the smoke+nop run; nop rewards are re-emitted under `nop_*` keys. */
14
+ export declare function smokeAndNopScript(): string;
15
+ //# sourceMappingURL=verify-harbor.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"verify-harbor.d.ts","sourceRoot":"","sources":["../../../src/temporal/activities/verify-harbor.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AACxD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AACvD,OAAO,KAAK,EAAE,YAAY,EAAiB,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAepF,MAAM,MAAM,WAAW,GAAG,IAAI,CAAC,YAAY,EAAE,OAAO,GAAG,OAAO,GAAG,KAAK,GAAG,QAAQ,CAAC,CAAC;AAgBnF,wBAAgB,WAAW,IAAI,WAAW,CAQzC;AAED;;;;;GAKG;AACH,wBAAsB,cAAc,CAClC,KAAK,EAAE,aAAa,EACpB,IAAI,EAAE,YAAY,EAClB,iBAAiB,EAAE,eAAe,CAAC,mBAAmB,CAAC,EACvD,MAAM,EAAE,MAAM,GACb,OAAO,CAAC,WAAW,CAAC,CA2EtB;AAyGD,4FAA4F;AAC5F,wBAAgB,iBAAiB,IAAI,MAAM,CA8B1C"}
@@ -0,0 +1,193 @@
1
+ import { copyFile, writeFile } from "node:fs/promises";
2
+ import { join } from "node:path";
3
+ import { CancelledFailure } from "@temporalio/activity";
4
+ import { nopGatePassed, oracleGatePassed } from "../../verify-report.js";
5
+ import { composeDiagnostics, isUnhealthyServiceFailure, storeGateLog } from "./gate-logs.js";
6
+ import { boundedTail, exception, isHarborInfrastructureApplicationFailure, rewards, runHarborGate, verifierOutput, } from "./harbor.js";
7
+ import { modalBuildLogTail } from "./modal-build-log.js";
8
+ import { withActivityHeartbeats, withTaskBundle } from "./runtime.js";
9
+ const NOP_REWARD_KEYS = [
10
+ "structured_results",
11
+ "patch_applied",
12
+ "fail_to_pass",
13
+ "pass_to_pass",
14
+ "deterministic",
15
+ "setup_completed",
16
+ "fail_to_pass_exit_code",
17
+ "fail_to_pass_repeat_exit_code",
18
+ "pass_to_pass_exit_code",
19
+ ];
20
+ const SMOKE_MARKER = "--- selfbench smoke ---";
21
+ const NOP_MARKER = "--- selfbench nop ---";
22
+ export function notRunGates() {
23
+ const gate = { ran: false, ok: false, logTail: "" };
24
+ return {
25
+ build: { ...gate, infrastructure: false },
26
+ smoke: gate,
27
+ nop: { ...gate, rewards: {} },
28
+ oracle: { ...gate, rewards: {} },
29
+ };
30
+ }
31
+ /**
32
+ * Builds the task images and measures smoke, nop, and oracle on Harbor. The first run replaces the
33
+ * verifier script with one that runs the smoke command and then the real nop split, preserving the
34
+ * nop rewards under `nop_*` keys; the second run is the unchanged oracle. Harbor infrastructure
35
+ * failures are reported as a red build flagged `infrastructure` instead of failing the activity.
36
+ */
37
+ export async function runHarborGates(store, task, harborEnvironment, prefix) {
38
+ return await withTaskBundle(store, task, async (taskDirectory, root) => {
39
+ const gates = notRunGates();
40
+ await writeFile(join(taskDirectory, "tests/test.sh"), smokeAndNopScript(), { mode: 0o755 });
41
+ const first = await harborRun(taskDirectory, root, task.taskId, "nop", harborEnvironment);
42
+ if ("infrastructure" in first) {
43
+ const log = await storeGateLog(store, `${prefix}/build.log`, first.infrastructure);
44
+ return { ...gates, build: { ran: true, ok: false, infrastructure: true, ...log } };
45
+ }
46
+ await storeHarborResult(store, `${prefix}/smoke-nop`, first);
47
+ const trialError = exceptionMessage(first.trial);
48
+ if (trialError !== undefined) {
49
+ const log = await storeGateLog(store, `${prefix}/build.log`, await failureLog(trialError, first, harborEnvironment));
50
+ return { ...gates, build: { ran: true, ok: false, infrastructure: false, ...log } };
51
+ }
52
+ const firstRewards = rewards(first.trial);
53
+ const output = verifierOutput(first) ?? "";
54
+ const smokeOk = numberOf(firstRewards.smoke_exit_code) === 0;
55
+ gates.build = { ran: true, ok: true, infrastructure: false, logTail: "" };
56
+ gates.smoke = {
57
+ ran: true,
58
+ ok: smokeOk,
59
+ ...(await storeGateLog(store, `${prefix}/smoke.log`, section(output, SMOKE_MARKER, NOP_MARKER))),
60
+ };
61
+ if (!smokeOk) {
62
+ return gates;
63
+ }
64
+ const nopRewards = nopRewardsFrom(firstRewards);
65
+ gates.nop = {
66
+ ran: true,
67
+ ok: nopGatePassed(nopRewards),
68
+ rewards: nopRewards,
69
+ ...(await storeGateLog(store, `${prefix}/nop.log`, section(output, NOP_MARKER))),
70
+ };
71
+ if (!gates.nop.ok) {
72
+ return gates;
73
+ }
74
+ await copyFile(join(taskDirectory, "tests/task-test.sh"), join(taskDirectory, "tests/test.sh"));
75
+ const oracle = await harborRun(taskDirectory, root, task.taskId, "oracle", harborEnvironment);
76
+ if ("infrastructure" in oracle) {
77
+ const log = await storeGateLog(store, `${prefix}/oracle-build.log`, `during oracle run: ${oracle.infrastructure}`);
78
+ return { ...gates, build: { ran: true, ok: false, infrastructure: true, ...log } };
79
+ }
80
+ await storeHarborResult(store, `${prefix}/oracle`, oracle);
81
+ const oracleError = exceptionMessage(oracle.trial);
82
+ if (oracleError !== undefined) {
83
+ const log = await storeGateLog(store, `${prefix}/oracle.log`, await failureLog(oracleError, oracle, harborEnvironment));
84
+ gates.oracle = { ran: true, ok: false, rewards: {}, ...log };
85
+ return gates;
86
+ }
87
+ const oracleRewards = numericRewards(rewards(oracle.trial));
88
+ gates.oracle = {
89
+ ran: true,
90
+ ok: oracleGatePassed(oracleRewards),
91
+ rewards: oracleRewards,
92
+ ...(await storeGateLog(store, `${prefix}/oracle.log`, verifierOutput(oracle) ?? "")),
93
+ };
94
+ return gates;
95
+ });
96
+ }
97
+ /** Raw failure log: the trial exception, Harbor's trial.log, and compose diagnostics when relevant. */
98
+ async function failureLog(message, result, harborEnvironment) {
99
+ const parts = [message, result.trialLog ?? "", verifierOutput(result) ?? ""];
100
+ if (isUnhealthyServiceFailure(`${message}\n${result.trialLog ?? ""}`)) {
101
+ parts.push(await composeDiagnostics(result.trial, harborEnvironment));
102
+ }
103
+ return parts.filter((part) => part.trim().length > 0).join("\n\n");
104
+ }
105
+ async function harborRun(taskDirectory, root, taskId, agent, harborEnvironment) {
106
+ try {
107
+ return await withActivityHeartbeats(`running Harbor ${agent} for ${taskId}`, (options) => runHarborGate(taskDirectory, join(root, "jobs"), agent, taskId, harborEnvironment, options.signal, false));
108
+ }
109
+ catch (error) {
110
+ if (error instanceof CancelledFailure || !isHarborInfrastructureApplicationFailure(error)) {
111
+ throw error;
112
+ }
113
+ const message = error instanceof Error ? error.message : String(error);
114
+ const buildLog = await modalBuildLogTail(message);
115
+ return {
116
+ infrastructure: buildLog ? `${boundedTail(message)}\n\n${buildLog}` : boundedTail(message),
117
+ };
118
+ }
119
+ }
120
+ async function storeHarborResult(store, prefix, result) {
121
+ const output = verifierOutput(result);
122
+ await Promise.all([
123
+ store.put(`${prefix}.json`, Buffer.from(`${JSON.stringify({ job: result.job, trial: result.trial }, null, 2)}\n`), "application/json"),
124
+ output ? store.put(`${prefix}-verifier.log`, Buffer.from(output), "text/plain") : undefined,
125
+ ]);
126
+ }
127
+ function exceptionMessage(trial) {
128
+ const info = exception(trial);
129
+ if (info === undefined || info === null) {
130
+ return undefined;
131
+ }
132
+ if (typeof info === "object" && "exception_message" in info) {
133
+ const record = info;
134
+ return `${typeof record.exception_type === "string" ? `${record.exception_type}: ` : ""}${String(record.exception_message ?? "")}`;
135
+ }
136
+ return JSON.stringify(info);
137
+ }
138
+ function nopRewardsFrom(raw) {
139
+ const mapped = {};
140
+ for (const key of NOP_REWARD_KEYS) {
141
+ const value = raw[`nop_${key}`];
142
+ if (typeof value === "number") {
143
+ mapped[key] = value;
144
+ }
145
+ }
146
+ return mapped;
147
+ }
148
+ function numericRewards(raw) {
149
+ return Object.fromEntries(Object.entries(raw).filter((entry) => typeof entry[1] === "number"));
150
+ }
151
+ function numberOf(value) {
152
+ return typeof value === "number" ? value : Number.NaN;
153
+ }
154
+ function section(output, start, end) {
155
+ const from = output.indexOf(start);
156
+ if (from < 0) {
157
+ return output;
158
+ }
159
+ const body = output.slice(from + start.length);
160
+ const to = end ? body.indexOf(end) : -1;
161
+ return (to >= 0 ? body.slice(0, to) : body).trim();
162
+ }
163
+ /** Verifier script for the smoke+nop run; nop rewards are re-emitted under `nop_*` keys. */
164
+ export function smokeAndNopScript() {
165
+ const fields = NOP_REWARD_KEYS.map((key) => `printf ', "nop_${key}": %s' "$(field ${key} ${key.endsWith("_code") ? "-1" : "0"})"`).join("\n");
166
+ return `#!/bin/bash
167
+ set -uo pipefail
168
+ mkdir -p /logs/verifier
169
+ # Image post-processing after our Dockerfile (Modal runs as root with HOME=/home/verifier) can leave
170
+ # root-owned files in the verifier's caches; the runtime user must own its home before it runs.
171
+ chown -R verifier:verifier /home/verifier 2>/dev/null || true
172
+ echo '${SMOKE_MARKER}'
173
+ smoke_status=0
174
+ runuser -u verifier --preserve-environment -- env -u XDG_CACHE_HOME HOME=/home/verifier /opt/selfbench-environment/smoke.sh 2>&1 || smoke_status=$?
175
+ echo "smoke exit code: $smoke_status"
176
+ nop_ran=0
177
+ nop_rewards='{}'
178
+ if [ "$smoke_status" -eq 0 ]; then
179
+ echo '${NOP_MARKER}'
180
+ nop_ran=1
181
+ /tests/task-test.sh 2>&1 || true
182
+ nop_rewards="$(cat /logs/verifier/reward.json 2>/dev/null || printf '{}')"
183
+ fi
184
+ field() { printf '%s' "$nop_rewards" | sed -n 's/.*"'"$1"'": *\\(-\\{0,1\\}[0-9]\\{1,\\}\\).*/\\1/p' | head -n 1 | grep . || printf '%s' "$2"; }
185
+ {
186
+ printf '{"reward": 0, "smoke_exit_code": %s, "nop_ran": %s' "$smoke_status" "$nop_ran"
187
+ ${fields}
188
+ printf '}\\n'
189
+ } > /logs/verifier/reward.json
190
+ exit 0
191
+ `;
192
+ }
193
+ //# sourceMappingURL=verify-harbor.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"verify-harbor.js","sourceRoot":"","sources":["../../../src/temporal/activities/verify-harbor.ts"],"names":[],"mappings":"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"}