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,135 @@
1
+ const NOP_EXPECTATIONS = {
2
+ patch_applied: "1",
3
+ setup_completed: "1",
4
+ fail_to_pass: "0",
5
+ pass_to_pass: "1",
6
+ };
7
+ const ORACLE_EXPECTATIONS = {
8
+ patch_applied: "1",
9
+ setup_completed: "1",
10
+ fail_to_pass: "1",
11
+ pass_to_pass: "1",
12
+ deterministic: "1",
13
+ };
14
+ export function nopGatePassed(rewards) {
15
+ return (reward(rewards, "patch_applied") >= 1 &&
16
+ reward(rewards, "setup_completed") >= 1 &&
17
+ reward(rewards, "fail_to_pass") === 0 &&
18
+ (rewards.structured_results !== 1 || rewards.fail_to_pass_exit_code === 10) &&
19
+ reward(rewards, "pass_to_pass") >= 1);
20
+ }
21
+ export function oracleGatePassed(rewards) {
22
+ return Object.keys(ORACLE_EXPECTATIONS).every((key) => reward(rewards, key) >= 1);
23
+ }
24
+ export function isGreen(report) {
25
+ return (report.compile.ok &&
26
+ report.audit.ok &&
27
+ report.build.ok &&
28
+ report.smoke.ok &&
29
+ report.nop.ok &&
30
+ report.oracle.ok);
31
+ }
32
+ /** One-line reason suitable for a rejection message or progress status. */
33
+ export function verifyReportSummary(report) {
34
+ const label = `${report.stage} round ${report.round}`;
35
+ if (report.green) {
36
+ return `${label}: all gates green`;
37
+ }
38
+ const failures = [];
39
+ if (!report.compile.ok) {
40
+ failures.push(`compile: ${report.compile.errors[0] ?? "failed"}`);
41
+ }
42
+ if (!report.audit.ok) {
43
+ failures.push(`audit: ${report.audit.blockers[0] ?? "blocked"}`);
44
+ }
45
+ if (report.build.ran && !report.build.ok) {
46
+ failures.push(report.build.infrastructure ? "image build: infrastructure failure" : "image build failed");
47
+ }
48
+ if (report.smoke.ran && !report.smoke.ok) {
49
+ failures.push("smoke command failed");
50
+ }
51
+ if (report.nop.ran && !report.nop.ok) {
52
+ failures.push(`nop: ${rewardSummary(report.nop.rewards, NOP_EXPECTATIONS)}`);
53
+ }
54
+ if (report.oracle.ran && !report.oracle.ok) {
55
+ failures.push(`oracle: ${rewardSummary(report.oracle.rewards, ORACLE_EXPECTATIONS)}`);
56
+ }
57
+ return `${label}: ${failures.length > 0 ? failures.join("; ") : "gates did not run"}`;
58
+ }
59
+ /** Concise markdown for the agent's next turn. */
60
+ export function renderVerifyReport(report) {
61
+ const sections = [
62
+ `# Verification report: ${report.stage} round ${report.round} for ${report.taskId}`,
63
+ "",
64
+ `Overall: **${report.green ? "GREEN" : "RED"}** — ${verifyReportSummary(report)}`,
65
+ "",
66
+ "## 1. Trusted compiler and environment policy",
67
+ report.compile.ok ? "OK." : bulletList(report.compile.errors, "Compilation failed."),
68
+ "",
69
+ "## 2. Static audit",
70
+ report.audit.ok ? "OK." : bulletList(report.audit.blockers, "Audit blocked the task."),
71
+ "",
72
+ "## 3. Image build",
73
+ gateText(report.build, report.build.infrastructure ? "failed (infrastructure)" : "failed"),
74
+ "",
75
+ "## 4. Smoke command (verifier image, runtime user)",
76
+ gateText(report.smoke, "failed"),
77
+ "",
78
+ `Evidence mode: ${report.nop.rewards.structured_results === 1 ? "JUnit named outcomes (JSON evidence in verifier logs)" : "command-level (individual transitions unproven)"}. Repeatability is two consecutive target runs in the same environment.`,
79
+ "",
80
+ "## 5. nop run (base snapshot + held-out tests, no solution)",
81
+ `Expected ${expectationText(NOP_EXPECTATIONS)}.`,
82
+ rewardGateText(report.nop),
83
+ "",
84
+ "## 6. oracle run (reference patch applied)",
85
+ `Expected ${expectationText(ORACLE_EXPECTATIONS)}.`,
86
+ rewardGateText(report.oracle),
87
+ ];
88
+ return `${sections.join("\n").trimEnd()}\n`;
89
+ }
90
+ function gateText(gate, failure) {
91
+ if (!gate.ran) {
92
+ return "Not run (an earlier gate failed).";
93
+ }
94
+ const status = gate.ok ? "OK." : `Result: ${failure}.`;
95
+ return `${status}${logText(gate)}`;
96
+ }
97
+ function logText(gate) {
98
+ const excerpt = gate.logTail.trim() ? `\n\n\`\`\`text\n${gate.logTail.trim()}\n\`\`\`` : "";
99
+ const full = gate.log ? `\n\nFull log: ${gate.log.uri}` : "";
100
+ return `${excerpt}${full}`;
101
+ }
102
+ function rewardGateText(gate) {
103
+ if (!gate.ran) {
104
+ return "Not run (an earlier gate failed).";
105
+ }
106
+ const rows = Object.entries(gate.rewards)
107
+ .sort(([left], [right]) => left.localeCompare(right))
108
+ .map(([key, value]) => `| ${key} | ${value} |`);
109
+ const table = rows.length > 0
110
+ ? ["| reward | value |", "| --- | --- |", ...rows].join("\n")
111
+ : "No rewards recorded.";
112
+ const status = gate.ok ? "Result: OK." : "Result: FAILED.";
113
+ return `${status}\n\n${table}${logText(gate)}`;
114
+ }
115
+ function bulletList(items, heading) {
116
+ return items.length === 0
117
+ ? heading
118
+ : `${heading}\n${items.map((item) => `- ${item}`).join("\n")}`;
119
+ }
120
+ function expectationText(expectations) {
121
+ return Object.entries(expectations)
122
+ .map(([key, value]) => `${key}=${value}`)
123
+ .join(", ");
124
+ }
125
+ function rewardSummary(rewards, expectations) {
126
+ const mismatches = Object.entries(expectations)
127
+ .filter(([key, expected]) => String(rewards[key] ?? "missing") !== expected)
128
+ .map(([key, expected]) => `${key}=${String(rewards[key] ?? "missing")} (expected ${expected})`);
129
+ return mismatches.length > 0 ? mismatches.join(", ") : "rewards did not meet the gate";
130
+ }
131
+ function reward(rewards, key) {
132
+ const value = rewards[key];
133
+ return typeof value === "number" ? value : Number.NaN;
134
+ }
135
+ //# sourceMappingURL=verify-report.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"verify-report.js","sourceRoot":"","sources":["../src/verify-report.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,9 @@
1
+ import type { ArtifactEntry } from "./types.js";
2
+ /**
3
+ * The candidate's newest definition. Legacy runs wrote one at `authoring/<id>/definition.json`;
4
+ * the agent pipeline rewrites it per round, attempt, and verify pass, so the latest write wins.
5
+ */
6
+ export declare function latestDefinitionKey(entries: readonly ArtifactEntry[], prefix: string, candidateId: string): string | undefined;
7
+ /** The newest compiled bundle under the candidate, verification passes before authoring ones. */
8
+ export declare function latestBundleKey(entries: readonly ArtifactEntry[], prefix: string, candidateId: string): string | undefined;
9
+ //# sourceMappingURL=archived-keys.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"archived-keys.d.ts","sourceRoot":"","sources":["../../src/viewer/archived-keys.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAKhD;;;GAGG;AACH,wBAAgB,mBAAmB,CACjC,OAAO,EAAE,SAAS,aAAa,EAAE,EACjC,MAAM,EAAE,MAAM,EACd,WAAW,EAAE,MAAM,GAClB,MAAM,GAAG,SAAS,CAcpB;AAED,iGAAiG;AACjG,wBAAgB,eAAe,CAC7B,OAAO,EAAE,SAAS,aAAa,EAAE,EACjC,MAAM,EAAE,MAAM,EACd,WAAW,EAAE,MAAM,GAClB,MAAM,GAAG,SAAS,CAUpB"}
@@ -0,0 +1,36 @@
1
+ /** Groups the pipeline keys by candidate ID; every other group is keyed by task ID. */
2
+ const CANDIDATE_KEYED_GROUPS = new Set(["authoring", "verification", "verify"]);
3
+ /**
4
+ * The candidate's newest definition. Legacy runs wrote one at `authoring/<id>/definition.json`;
5
+ * the agent pipeline rewrites it per round, attempt, and verify pass, so the latest write wins.
6
+ */
7
+ export function latestDefinitionKey(entries, prefix, candidateId) {
8
+ const head = `${prefix}authoring/${candidateId}/`;
9
+ let latest;
10
+ for (const entry of entries) {
11
+ if (!entry.key.startsWith(head) || !entry.key.endsWith("/definition.json"))
12
+ continue;
13
+ if (!latest ||
14
+ (entry.updatedAt ?? "") > (latest.updatedAt ?? "") ||
15
+ ((entry.updatedAt ?? "") === (latest.updatedAt ?? "") && entry.key > latest.key)) {
16
+ latest = entry;
17
+ }
18
+ }
19
+ return latest?.key;
20
+ }
21
+ /** The newest compiled bundle under the candidate, verification passes before authoring ones. */
22
+ export function latestBundleKey(entries, prefix, candidateId) {
23
+ let latest;
24
+ for (const entry of entries) {
25
+ const relative = entry.key.slice(prefix.length);
26
+ const [group, owner] = relative.split("/");
27
+ if (!CANDIDATE_KEYED_GROUPS.has(group ?? "") || owner !== candidateId)
28
+ continue;
29
+ if (!entry.key.endsWith("/harbor-task.tar.gz"))
30
+ continue;
31
+ if (!latest || (entry.updatedAt ?? "") > (latest.updatedAt ?? ""))
32
+ latest = entry;
33
+ }
34
+ return latest?.key;
35
+ }
36
+ //# sourceMappingURL=archived-keys.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"archived-keys.js","sourceRoot":"","sources":["../../src/viewer/archived-keys.ts"],"names":[],"mappings":"AAEA,uFAAuF;AACvF,MAAM,sBAAsB,GAAG,IAAI,GAAG,CAAC,CAAC,WAAW,EAAE,cAAc,EAAE,QAAQ,CAAC,CAAC,CAAC;AAEhF;;;GAGG;AACH,MAAM,UAAU,mBAAmB,CACjC,OAAiC,EACjC,MAAc,EACd,WAAmB;IAEnB,MAAM,IAAI,GAAG,GAAG,MAAM,aAAa,WAAW,GAAG,CAAC;IAClD,IAAI,MAAiC,CAAC;IACtC,KAAK,MAAM,KAAK,IAAI,OAAO,EAAE,CAAC;QAC5B,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,QAAQ,CAAC,kBAAkB,CAAC;YAAE,SAAS;QACrF,IACE,CAAC,MAAM;YACP,CAAC,KAAK,CAAC,SAAS,IAAI,EAAE,CAAC,GAAG,CAAC,MAAM,CAAC,SAAS,IAAI,EAAE,CAAC;YAClD,CAAC,CAAC,KAAK,CAAC,SAAS,IAAI,EAAE,CAAC,KAAK,CAAC,MAAM,CAAC,SAAS,IAAI,EAAE,CAAC,IAAI,KAAK,CAAC,GAAG,GAAG,MAAM,CAAC,GAAG,CAAC,EAChF,CAAC;YACD,MAAM,GAAG,KAAK,CAAC;QACjB,CAAC;IACH,CAAC;IACD,OAAO,MAAM,EAAE,GAAG,CAAC;AACrB,CAAC;AAED,iGAAiG;AACjG,MAAM,UAAU,eAAe,CAC7B,OAAiC,EACjC,MAAc,EACd,WAAmB;IAEnB,IAAI,MAAiC,CAAC;IACtC,KAAK,MAAM,KAAK,IAAI,OAAO,EAAE,CAAC;QAC5B,MAAM,QAAQ,GAAG,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;QAChD,MAAM,CAAC,KAAK,EAAE,KAAK,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QAC3C,IAAI,CAAC,sBAAsB,CAAC,GAAG,CAAC,KAAK,IAAI,EAAE,CAAC,IAAI,KAAK,KAAK,WAAW;YAAE,SAAS;QAChF,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,QAAQ,CAAC,qBAAqB,CAAC;YAAE,SAAS;QACzD,IAAI,CAAC,MAAM,IAAI,CAAC,KAAK,CAAC,SAAS,IAAI,EAAE,CAAC,GAAG,CAAC,MAAM,CAAC,SAAS,IAAI,EAAE,CAAC;YAAE,MAAM,GAAG,KAAK,CAAC;IACpF,CAAC;IACD,OAAO,MAAM,EAAE,GAAG,CAAC;AACrB,CAAC"}
@@ -0,0 +1,20 @@
1
+ import type { ArtifactStore } from "../artifacts.js";
2
+ import type { CandidateList } from "./types.js";
3
+ export declare function clearArchivedListingCache(): void;
4
+ export interface ArchivedRun {
5
+ readonly runId: string;
6
+ readonly status: "ARCHIVED";
7
+ readonly startedAt?: string;
8
+ }
9
+ /**
10
+ * Runs that exist in the artifact store, whether or not Temporal still remembers them.
11
+ * The index walks every run in the store, so it is cached like the per-run listings.
12
+ */
13
+ export declare function listArchivedRuns(store: ArtifactStore): Promise<ArchivedRun[]>;
14
+ /**
15
+ * Reconstruct a candidate table from the artifact tree alone. Stage is the furthest
16
+ * pipeline group that wrote anything; status stays "archived" because the workflow's
17
+ * final verdicts live only in Temporal.
18
+ */
19
+ export declare function archivedCandidates(store: ArtifactStore, runId: string): Promise<CandidateList>;
20
+ //# sourceMappingURL=archived.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"archived.d.ts","sourceRoot":"","sources":["../../src/viewer/archived.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAKrD,OAAO,KAAK,EAAiB,aAAa,EAAoC,MAAM,YAAY,CAAC;AAqBjG,wBAAgB,yBAAyB,IAAI,IAAI,CAGhD;AAED,MAAM,WAAW,WAAW;IAC1B,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,MAAM,EAAE,UAAU,CAAC;IAC5B,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;CAC7B;AAED;;;GAGG;AACH,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,aAAa,GAAG,OAAO,CAAC,WAAW,EAAE,CAAC,CAS7E;AAsBD;;;;GAIG;AACH,wBAAsB,kBAAkB,CACtC,KAAK,EAAE,aAAa,EACpB,KAAK,EAAE,MAAM,GACZ,OAAO,CAAC,aAAa,CAAC,CAgDxB"}
@@ -0,0 +1,238 @@
1
+ import { parallelMap } from "../parallel.js";
2
+ import { latestBundleKey, latestDefinitionKey } from "./archived-keys.js";
3
+ import { reasonSummary, summarizeDefinition } from "./candidates.js";
4
+ const DEFINITION_CONCURRENCY = 16;
5
+ const RUN_ID = /^runs\/([a-z0-9][a-z0-9-]{2,62})\//;
6
+ const LISTING_TTL_MS = 60_000;
7
+ const listingCache = new Map();
8
+ let runIndexCache;
9
+ /** Groups the pipeline keys by candidate ID; every other group is keyed by task ID. */
10
+ const CANDIDATE_KEYED_GROUPS = new Set(["authoring", "verification", "verify"]);
11
+ /** Listing a whole run is thousands of objects on GCS, so reuse it briefly across requests. */
12
+ function listRun(store, runId) {
13
+ const cached = listingCache.get(runId);
14
+ if (cached && Date.now() - cached.at < LISTING_TTL_MS)
15
+ return cached.entries;
16
+ const entries = store.list(`runs/${runId}`);
17
+ listingCache.set(runId, { at: Date.now(), entries });
18
+ entries.catch(() => listingCache.delete(runId));
19
+ return entries;
20
+ }
21
+ export function clearArchivedListingCache() {
22
+ listingCache.clear();
23
+ runIndexCache = undefined;
24
+ }
25
+ /**
26
+ * Runs that exist in the artifact store, whether or not Temporal still remembers them.
27
+ * The index walks every run in the store, so it is cached like the per-run listings.
28
+ */
29
+ export function listArchivedRuns(store) {
30
+ if (runIndexCache && Date.now() - runIndexCache.at < LISTING_TTL_MS)
31
+ return runIndexCache.runs;
32
+ const runs = scanArchivedRuns(store);
33
+ const cached = { at: Date.now(), runs };
34
+ runIndexCache = cached;
35
+ runs.catch(() => {
36
+ if (runIndexCache === cached)
37
+ runIndexCache = undefined;
38
+ });
39
+ return runs;
40
+ }
41
+ async function scanArchivedRuns(store) {
42
+ const entries = await store.list("runs").catch(() => []);
43
+ const runs = new Map();
44
+ for (const entry of entries) {
45
+ const runId = RUN_ID.exec(entry.key)?.[1];
46
+ if (!runId)
47
+ continue;
48
+ const seen = runs.get(runId);
49
+ if (!runs.has(runId) || (entry.updatedAt && (!seen || entry.updatedAt < seen))) {
50
+ runs.set(runId, entry.updatedAt);
51
+ }
52
+ }
53
+ return [...runs.entries()]
54
+ .map(([runId, startedAt]) => ({
55
+ runId,
56
+ status: "ARCHIVED",
57
+ ...(startedAt ? { startedAt } : {}),
58
+ }))
59
+ .sort((left, right) => (right.startedAt ?? "").localeCompare(left.startedAt ?? ""));
60
+ }
61
+ /**
62
+ * Reconstruct a candidate table from the artifact tree alone. Stage is the furthest
63
+ * pipeline group that wrote anything; status stays "archived" because the workflow's
64
+ * final verdicts live only in Temporal.
65
+ */
66
+ export async function archivedCandidates(store, runId) {
67
+ const entries = await listRun(store, runId);
68
+ const prefix = `runs/${runId}/`;
69
+ const candidateIds = new Set();
70
+ for (const entry of entries) {
71
+ const [group, second] = entry.key.slice(prefix.length).split("/");
72
+ if (group && second && CANDIDATE_KEYED_GROUPS.has(group))
73
+ candidateIds.add(second);
74
+ }
75
+ const candidates = await parallelMap([...candidateIds], DEFINITION_CONCURRENCY, async (candidateId) => {
76
+ const definitionKey = latestDefinitionKey(entries, prefix, candidateId);
77
+ const bytes = definitionKey
78
+ ? await store.getByKey(definitionKey).catch(() => undefined)
79
+ : undefined;
80
+ const text = bytes ? Buffer.from(bytes).toString("utf8") : undefined;
81
+ const definition = text ? summarizeDefinition(text) : undefined;
82
+ const parsed = text ? parseIdentity(text) : undefined;
83
+ const taskId = parsed?.taskId ?? candidateId;
84
+ const groups = groupsFor(entries, prefix, { taskId, candidateId });
85
+ const decision = (await latestRoundDecision(store, entries, prefix, candidateId)) ??
86
+ (await latestReviewDecision(store, entries, prefix, taskId));
87
+ const stage = decision?.stage ?? furthestStage(groups);
88
+ const bundleKey = latestBundleKey(entries, prefix, candidateId);
89
+ const candidate = {
90
+ taskId,
91
+ candidateId,
92
+ difficulty: parsed?.difficulty ?? "easy",
93
+ status: decision?.stage === "accepted" ? "accepted" : "archived",
94
+ hasVerdict: decision !== undefined,
95
+ stage,
96
+ reasonSummary: decision?.reasonSummary ?? `no verdict on record; last artifact written by ${stage}`,
97
+ ...(decision?.reason ? { reason: decision.reason } : {}),
98
+ ...(definition ? { definition } : {}),
99
+ ...(definitionKey ? { definitionKey } : {}),
100
+ ...(bundleKey ? { bundleKey } : {}),
101
+ };
102
+ return candidate;
103
+ });
104
+ return {
105
+ runId,
106
+ phase: "archived",
107
+ candidates: candidates.sort((left, right) => left.taskId.localeCompare(right.taskId)),
108
+ };
109
+ }
110
+ const ROUND_RESULT = /^(authoring|verification)\/[^/]+\/round-(\d+)\/result\.json$/;
111
+ /**
112
+ * The agent pipeline decides a candidate in its round results: the workflow accepts exactly when
113
+ * a verification round's `result.json` is `accepted`, and a `rejected` round result in either loop
114
+ * ends the candidate. Rounds alternate authoring/review; the highest round wins, then review within that round.
115
+ */
116
+ async function latestRoundDecision(store, entries, prefix, candidateId) {
117
+ const terminal = [];
118
+ for (const entry of entries) {
119
+ const match = ROUND_RESULT.exec(entry.key.slice(prefix.length));
120
+ if (!match?.[1] || !match[2])
121
+ continue;
122
+ if (entry.key.slice(prefix.length).split("/")[1] !== candidateId)
123
+ continue;
124
+ const loop = match[1];
125
+ const value = await readJson(store, entry.key);
126
+ if (value?.kind === "accepted" || value?.kind === "rejected") {
127
+ terminal.push({ key: entry.key, loop, round: Number(match[2]) });
128
+ }
129
+ }
130
+ const verification = terminal
131
+ .filter((item) => item.loop === "verification")
132
+ .sort((left, right) => right.round - left.round)[0];
133
+ const authoring = terminal
134
+ .filter((item) => item.loop === "authoring")
135
+ .sort((left, right) => right.round - left.round)[0];
136
+ // In the read-only reviewer flow, a later authoring rejection after suggestions is terminal.
137
+ // In the legacy flow, verification follows all authoring rounds and therefore wins.
138
+ const latest = authoring && (!verification || authoring.round > verification.round) ? authoring : verification;
139
+ if (!latest)
140
+ return undefined;
141
+ const value = await readJson(store, latest.key);
142
+ if (!value)
143
+ return undefined;
144
+ const reason = typeof value.reason === "string" ? value.reason : undefined;
145
+ const summary = reasonSummary(reason);
146
+ if (latest.loop === "verification" && value.kind === "accepted") {
147
+ return {
148
+ stage: "accepted",
149
+ reasonSummary: summary
150
+ ? `verification agent accepted: ${summary}`
151
+ : "verification agent accepted",
152
+ ...(reason ? { reason } : {}),
153
+ };
154
+ }
155
+ if (value.kind === "rejected") {
156
+ return {
157
+ stage: latest.loop === "verification" ? "review" : "authoring",
158
+ reasonSummary: summary ?? `${latest.loop} round ${latest.round} rejected`,
159
+ ...(reason ? { reason } : {}),
160
+ };
161
+ }
162
+ return undefined;
163
+ }
164
+ /** Legacy runs accepted a task exactly when its last coupling review was clean. */
165
+ async function latestReviewDecision(store, entries, prefix, taskId) {
166
+ const reviews = entries
167
+ .filter((entry) => entry.key.startsWith(`${prefix}reviews/${taskId}/`) && entry.key.endsWith(".json"))
168
+ .sort((left, right) => (left.updatedAt ?? left.key).localeCompare(right.updatedAt ?? right.key));
169
+ const latest = reviews[reviews.length - 1];
170
+ if (!latest)
171
+ return undefined;
172
+ const value = await readJson(store, latest.key);
173
+ const verdict = typeof value?.verdict === "string" ? value.verdict : undefined;
174
+ if (!verdict)
175
+ return undefined;
176
+ return verdict === "clean"
177
+ ? { stage: "accepted", reasonSummary: "final coupling review was clean" }
178
+ : { stage: "review", reasonSummary: `final coupling review: ${verdict}` };
179
+ }
180
+ async function readJson(store, key) {
181
+ const bytes = await store.getByKey(key).catch(() => undefined);
182
+ if (!bytes)
183
+ return undefined;
184
+ try {
185
+ const value = JSON.parse(Buffer.from(bytes).toString("utf8"));
186
+ return typeof value === "object" && value !== null
187
+ ? value
188
+ : undefined;
189
+ }
190
+ catch {
191
+ return undefined;
192
+ }
193
+ }
194
+ /** Every pipeline group that wrote under this candidate, whichever ID the group keys by. */
195
+ function groupsFor(entries, prefix, ids) {
196
+ const groups = new Set();
197
+ for (const entry of entries) {
198
+ const [group, second] = entry.key.slice(prefix.length).split("/");
199
+ if (!group || !second)
200
+ continue;
201
+ const owner = CANDIDATE_KEYED_GROUPS.has(group) ? ids.candidateId : ids.taskId;
202
+ if (second === owner)
203
+ groups.add(group);
204
+ }
205
+ return groups;
206
+ }
207
+ function furthestStage(groups) {
208
+ if (groups.has("repairs") || groups.has("reviews"))
209
+ return "review";
210
+ if (groups.has("validation-repairs") || groups.has("validation"))
211
+ return "validation";
212
+ if (groups.has("environment-preflights"))
213
+ return "preflight";
214
+ if (groups.has("audits"))
215
+ return "audit";
216
+ if (groups.has("environments"))
217
+ return "environment";
218
+ if (groups.has("authoring") || groups.has("verification") || groups.has("verify")) {
219
+ return "authoring";
220
+ }
221
+ return "discovery";
222
+ }
223
+ function parseIdentity(text) {
224
+ try {
225
+ const value = JSON.parse(text);
226
+ const difficulty = value.difficulty;
227
+ return {
228
+ ...(typeof value.taskId === "string" ? { taskId: value.taskId } : {}),
229
+ ...(difficulty === "easy" || difficulty === "medium" || difficulty === "hard"
230
+ ? { difficulty }
231
+ : {}),
232
+ };
233
+ }
234
+ catch {
235
+ return undefined;
236
+ }
237
+ }
238
+ //# sourceMappingURL=archived.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"archived.js","sourceRoot":"","sources":["../../src/viewer/archived.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAC7C,OAAO,EAAE,eAAe,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAC;AAC1E,OAAO,EAAE,aAAa,EAAE,mBAAmB,EAAE,MAAM,iBAAiB,CAAC;AAGrE,MAAM,sBAAsB,GAAG,EAAE,CAAC;AAClC,MAAM,MAAM,GAAG,oCAAoC,CAAC;AACpD,MAAM,cAAc,GAAG,MAAM,CAAC;AAC9B,MAAM,YAAY,GAAG,IAAI,GAAG,EAA6D,CAAC;AAC1F,IAAI,aAAuE,CAAC;AAE5E,uFAAuF;AACvF,MAAM,sBAAsB,GAAG,IAAI,GAAG,CAAC,CAAC,WAAW,EAAE,cAAc,EAAE,QAAQ,CAAC,CAAC,CAAC;AAEhF,+FAA+F;AAC/F,SAAS,OAAO,CAAC,KAAoB,EAAE,KAAa;IAClD,MAAM,MAAM,GAAG,YAAY,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;IACvC,IAAI,MAAM,IAAI,IAAI,CAAC,GAAG,EAAE,GAAG,MAAM,CAAC,EAAE,GAAG,cAAc;QAAE,OAAO,MAAM,CAAC,OAAO,CAAC;IAC7E,MAAM,OAAO,GAAG,KAAK,CAAC,IAAI,CAAC,QAAQ,KAAK,EAAE,CAAC,CAAC;IAC5C,YAAY,CAAC,GAAG,CAAC,KAAK,EAAE,EAAE,EAAE,EAAE,IAAI,CAAC,GAAG,EAAE,EAAE,OAAO,EAAE,CAAC,CAAC;IACrD,OAAO,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,YAAY,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;IAChD,OAAO,OAAO,CAAC;AACjB,CAAC;AAED,MAAM,UAAU,yBAAyB;IACvC,YAAY,CAAC,KAAK,EAAE,CAAC;IACrB,aAAa,GAAG,SAAS,CAAC;AAC5B,CAAC;AAQD;;;GAGG;AACH,MAAM,UAAU,gBAAgB,CAAC,KAAoB;IACnD,IAAI,aAAa,IAAI,IAAI,CAAC,GAAG,EAAE,GAAG,aAAa,CAAC,EAAE,GAAG,cAAc;QAAE,OAAO,aAAa,CAAC,IAAI,CAAC;IAC/F,MAAM,IAAI,GAAG,gBAAgB,CAAC,KAAK,CAAC,CAAC;IACrC,MAAM,MAAM,GAAG,EAAE,EAAE,EAAE,IAAI,CAAC,GAAG,EAAE,EAAE,IAAI,EAAE,CAAC;IACxC,aAAa,GAAG,MAAM,CAAC;IACvB,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE;QACd,IAAI,aAAa,KAAK,MAAM;YAAE,aAAa,GAAG,SAAS,CAAC;IAC1D,CAAC,CAAC,CAAC;IACH,OAAO,IAAI,CAAC;AACd,CAAC;AAED,KAAK,UAAU,gBAAgB,CAAC,KAAoB;IAClD,MAAM,OAAO,GAAG,MAAM,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,EAAqB,CAAC,CAAC;IAC5E,MAAM,IAAI,GAAG,IAAI,GAAG,EAA8B,CAAC;IACnD,KAAK,MAAM,KAAK,IAAI,OAAO,EAAE,CAAC;QAC5B,MAAM,KAAK,GAAG,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;QAC1C,IAAI,CAAC,KAAK;YAAE,SAAS;QACrB,MAAM,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;QAC7B,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,SAAS,IAAI,CAAC,CAAC,IAAI,IAAI,KAAK,CAAC,SAAS,GAAG,IAAI,CAAC,CAAC,EAAE,CAAC;YAC/E,IAAI,CAAC,GAAG,CAAC,KAAK,EAAE,KAAK,CAAC,SAAS,CAAC,CAAC;QACnC,CAAC;IACH,CAAC;IACD,OAAO,CAAC,GAAG,IAAI,CAAC,OAAO,EAAE,CAAC;SACvB,GAAG,CAAC,CAAC,CAAC,KAAK,EAAE,SAAS,CAAC,EAAE,EAAE,CAAC,CAAC;QAC5B,KAAK;QACL,MAAM,EAAE,UAAmB;QAC3B,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;KACpC,CAAC,CAAC;SACF,IAAI,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,SAAS,IAAI,EAAE,CAAC,CAAC,aAAa,CAAC,IAAI,CAAC,SAAS,IAAI,EAAE,CAAC,CAAC,CAAC;AACxF,CAAC;AAED;;;;GAIG;AACH,MAAM,CAAC,KAAK,UAAU,kBAAkB,CACtC,KAAoB,EACpB,KAAa;IAEb,MAAM,OAAO,GAAG,MAAM,OAAO,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;IAC5C,MAAM,MAAM,GAAG,QAAQ,KAAK,GAAG,CAAC;IAChC,MAAM,YAAY,GAAG,IAAI,GAAG,EAAU,CAAC;IACvC,KAAK,MAAM,KAAK,IAAI,OAAO,EAAE,CAAC;QAC5B,MAAM,CAAC,KAAK,EAAE,MAAM,CAAC,GAAG,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QAClE,IAAI,KAAK,IAAI,MAAM,IAAI,sBAAsB,CAAC,GAAG,CAAC,KAAK,CAAC;YAAE,YAAY,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;IACrF,CAAC;IACD,MAAM,UAAU,GAAG,MAAM,WAAW,CAClC,CAAC,GAAG,YAAY,CAAC,EACjB,sBAAsB,EACtB,KAAK,EAAE,WAAW,EAAE,EAAE;QACpB,MAAM,aAAa,GAAG,mBAAmB,CAAC,OAAO,EAAE,MAAM,EAAE,WAAW,CAAC,CAAC;QACxE,MAAM,KAAK,GAAG,aAAa;YACzB,CAAC,CAAC,MAAM,KAAK,CAAC,QAAQ,CAAC,aAAa,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC;YAC5D,CAAC,CAAC,SAAS,CAAC;QACd,MAAM,IAAI,GAAG,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;QACrE,MAAM,UAAU,GAAG,IAAI,CAAC,CAAC,CAAC,mBAAmB,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;QAChE,MAAM,MAAM,GAAG,IAAI,CAAC,CAAC,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;QACtD,MAAM,MAAM,GAAG,MAAM,EAAE,MAAM,IAAI,WAAW,CAAC;QAC7C,MAAM,MAAM,GAAG,SAAS,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE,MAAM,EAAE,WAAW,EAAE,CAAC,CAAC;QACnE,MAAM,QAAQ,GACZ,CAAC,MAAM,mBAAmB,CAAC,KAAK,EAAE,OAAO,EAAE,MAAM,EAAE,WAAW,CAAC,CAAC;YAChE,CAAC,MAAM,oBAAoB,CAAC,KAAK,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC;QAC/D,MAAM,KAAK,GAAG,QAAQ,EAAE,KAAK,IAAI,aAAa,CAAC,MAAM,CAAC,CAAC;QACvD,MAAM,SAAS,GAAG,eAAe,CAAC,OAAO,EAAE,MAAM,EAAE,WAAW,CAAC,CAAC;QAChE,MAAM,SAAS,GAAqB;YAClC,MAAM;YACN,WAAW;YACX,UAAU,EAAE,MAAM,EAAE,UAAU,IAAI,MAAM;YACxC,MAAM,EAAE,QAAQ,EAAE,KAAK,KAAK,UAAU,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,UAAU;YAChE,UAAU,EAAE,QAAQ,KAAK,SAAS;YAClC,KAAK;YACL,aAAa,EACX,QAAQ,EAAE,aAAa,IAAI,kDAAkD,KAAK,EAAE;YACtF,GAAG,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,QAAQ,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACxD,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,UAAU,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACrC,GAAG,CAAC,aAAa,CAAC,CAAC,CAAC,EAAE,aAAa,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YAC3C,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;SACpC,CAAC;QACF,OAAO,SAAS,CAAC;IACnB,CAAC,CACF,CAAC;IACF,OAAO;QACL,KAAK;QACL,KAAK,EAAE,UAAU;QACjB,UAAU,EAAE,UAAU,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;KACtF,CAAC;AACJ,CAAC;AAQD,MAAM,YAAY,GAAG,8DAA8D,CAAC;AAEpF;;;;GAIG;AACH,KAAK,UAAU,mBAAmB,CAChC,KAAoB,EACpB,OAAiC,EACjC,MAAc,EACd,WAAmB;IAEnB,MAAM,QAAQ,GAAyE,EAAE,CAAC;IAC1F,KAAK,MAAM,KAAK,IAAI,OAAO,EAAE,CAAC;QAC5B,MAAM,KAAK,GAAG,YAAY,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC;QAChE,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC;YAAE,SAAS;QACvC,IAAI,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,KAAK,WAAW;YAAE,SAAS;QAC3E,MAAM,IAAI,GAAG,KAAK,CAAC,CAAC,CAAiC,CAAC;QACtD,MAAM,KAAK,GAAG,MAAM,QAAQ,CAAC,KAAK,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC;QAC/C,IAAI,KAAK,EAAE,IAAI,KAAK,UAAU,IAAI,KAAK,EAAE,IAAI,KAAK,UAAU,EAAE,CAAC;YAC7D,QAAQ,CAAC,IAAI,CAAC,EAAE,GAAG,EAAE,KAAK,CAAC,GAAG,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;QACnE,CAAC;IACH,CAAC;IACD,MAAM,YAAY,GAAG,QAAQ;SAC1B,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,KAAK,cAAc,CAAC;SAC9C,IAAI,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;IACtD,MAAM,SAAS,GAAG,QAAQ;SACvB,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,KAAK,WAAW,CAAC;SAC3C,IAAI,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;IACtD,6FAA6F;IAC7F,oFAAoF;IACpF,MAAM,MAAM,GACV,SAAS,IAAI,CAAC,CAAC,YAAY,IAAI,SAAS,CAAC,KAAK,GAAG,YAAY,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,YAAY,CAAC;IAClG,IAAI,CAAC,MAAM;QAAE,OAAO,SAAS,CAAC;IAC9B,MAAM,KAAK,GAAG,MAAM,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC,GAAG,CAAC,CAAC;IAChD,IAAI,CAAC,KAAK;QAAE,OAAO,SAAS,CAAC;IAC7B,MAAM,MAAM,GAAG,OAAO,KAAK,CAAC,MAAM,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC;IAC3E,MAAM,OAAO,GAAG,aAAa,CAAC,MAAM,CAAC,CAAC;IACtC,IAAI,MAAM,CAAC,IAAI,KAAK,cAAc,IAAI,KAAK,CAAC,IAAI,KAAK,UAAU,EAAE,CAAC;QAChE,OAAO;YACL,KAAK,EAAE,UAAU;YACjB,aAAa,EAAE,OAAO;gBACpB,CAAC,CAAC,gCAAgC,OAAO,EAAE;gBAC3C,CAAC,CAAC,6BAA6B;YACjC,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;SAC9B,CAAC;IACJ,CAAC;IACD,IAAI,KAAK,CAAC,IAAI,KAAK,UAAU,EAAE,CAAC;QAC9B,OAAO;YACL,KAAK,EAAE,MAAM,CAAC,IAAI,KAAK,cAAc,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,WAAW;YAC9D,aAAa,EAAE,OAAO,IAAI,GAAG,MAAM,CAAC,IAAI,UAAU,MAAM,CAAC,KAAK,WAAW;YACzE,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;SAC9B,CAAC;IACJ,CAAC;IACD,OAAO,SAAS,CAAC;AACnB,CAAC;AAED,mFAAmF;AACnF,KAAK,UAAU,oBAAoB,CACjC,KAAoB,EACpB,OAAiC,EACjC,MAAc,EACd,MAAc;IAEd,MAAM,OAAO,GAAG,OAAO;SACpB,MAAM,CACL,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,UAAU,CAAC,GAAG,MAAM,WAAW,MAAM,GAAG,CAAC,IAAI,KAAK,CAAC,GAAG,CAAC,QAAQ,CAAC,OAAO,CAAC,CAC9F;SACA,IAAI,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CACpB,CAAC,IAAI,CAAC,SAAS,IAAI,IAAI,CAAC,GAAG,CAAC,CAAC,aAAa,CAAC,KAAK,CAAC,SAAS,IAAI,KAAK,CAAC,GAAG,CAAC,CACzE,CAAC;IACJ,MAAM,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;IAC3C,IAAI,CAAC,MAAM;QAAE,OAAO,SAAS,CAAC;IAC9B,MAAM,KAAK,GAAG,MAAM,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC,GAAG,CAAC,CAAC;IAChD,MAAM,OAAO,GAAG,OAAO,KAAK,EAAE,OAAO,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC;IAC/E,IAAI,CAAC,OAAO;QAAE,OAAO,SAAS,CAAC;IAC/B,OAAO,OAAO,KAAK,OAAO;QACxB,CAAC,CAAC,EAAE,KAAK,EAAE,UAAU,EAAE,aAAa,EAAE,iCAAiC,EAAE;QACzE,CAAC,CAAC,EAAE,KAAK,EAAE,QAAQ,EAAE,aAAa,EAAE,0BAA0B,OAAO,EAAE,EAAE,CAAC;AAC9E,CAAC;AAED,KAAK,UAAU,QAAQ,CACrB,KAAoB,EACpB,GAAW;IAEX,MAAM,KAAK,GAAG,MAAM,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC,CAAC;IAC/D,IAAI,CAAC,KAAK;QAAE,OAAO,SAAS,CAAC;IAC7B,IAAI,CAAC;QACH,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAY,CAAC;QACzE,OAAO,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI;YAChD,CAAC,CAAE,KAAiC;YACpC,CAAC,CAAC,SAAS,CAAC;IAChB,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,SAAS,CAAC;IACnB,CAAC;AACH,CAAC;AAED,4FAA4F;AAC5F,SAAS,SAAS,CAChB,OAAiC,EACjC,MAAc,EACd,GAA4C;IAE5C,MAAM,MAAM,GAAG,IAAI,GAAG,EAAU,CAAC;IACjC,KAAK,MAAM,KAAK,IAAI,OAAO,EAAE,CAAC;QAC5B,MAAM,CAAC,KAAK,EAAE,MAAM,CAAC,GAAG,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QAClE,IAAI,CAAC,KAAK,IAAI,CAAC,MAAM;YAAE,SAAS;QAChC,MAAM,KAAK,GAAG,sBAAsB,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC;QAC/E,IAAI,MAAM,KAAK,KAAK;YAAE,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;IAC1C,CAAC;IACD,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,SAAS,aAAa,CAAC,MAAmB;IACxC,IAAI,MAAM,CAAC,GAAG,CAAC,SAAS,CAAC,IAAI,MAAM,CAAC,GAAG,CAAC,SAAS,CAAC;QAAE,OAAO,QAAQ,CAAC;IACpE,IAAI,MAAM,CAAC,GAAG,CAAC,oBAAoB,CAAC,IAAI,MAAM,CAAC,GAAG,CAAC,YAAY,CAAC;QAAE,OAAO,YAAY,CAAC;IACtF,IAAI,MAAM,CAAC,GAAG,CAAC,wBAAwB,CAAC;QAAE,OAAO,WAAW,CAAC;IAC7D,IAAI,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC;QAAE,OAAO,OAAO,CAAC;IACzC,IAAI,MAAM,CAAC,GAAG,CAAC,cAAc,CAAC;QAAE,OAAO,aAAa,CAAC;IACrD,IAAI,MAAM,CAAC,GAAG,CAAC,WAAW,CAAC,IAAI,MAAM,CAAC,GAAG,CAAC,cAAc,CAAC,IAAI,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC;QAClF,OAAO,WAAW,CAAC;IACrB,CAAC;IACD,OAAO,WAAW,CAAC;AACrB,CAAC;AAED,SAAS,aAAa,CAAC,IAAY;IACjC,IAAI,CAAC;QACH,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAA4B,CAAC;QAC1D,MAAM,UAAU,GAAG,KAAK,CAAC,UAAU,CAAC;QACpC,OAAO;YACL,GAAG,CAAC,OAAO,KAAK,CAAC,MAAM,KAAK,QAAQ,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,KAAK,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACrE,GAAG,CAAC,UAAU,KAAK,MAAM,IAAI,UAAU,KAAK,QAAQ,IAAI,UAAU,KAAK,MAAM;gBAC3E,CAAC,CAAC,EAAE,UAAU,EAAE;gBAChB,CAAC,CAAC,EAAE,CAAC;SACR,CAAC;IACJ,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,SAAS,CAAC;IACnB,CAAC;AACH,CAAC"}
@@ -0,0 +1,8 @@
1
+ import type { ArtifactStore } from "../artifacts.js";
2
+ import type { TaskProgress } from "../contracts.js";
3
+ import { type ArtifactGroup, type CandidateArtifacts } from "./types.js";
4
+ export declare function candidateArtifacts(store: ArtifactStore, runId: string, task: Pick<TaskProgress, "taskId" | "candidateId">): Promise<CandidateArtifacts>;
5
+ export declare function groupPrefix(runId: string, group: ArtifactGroup, task: Pick<TaskProgress, "taskId" | "candidateId">): string;
6
+ export declare function isRunArtifactKey(runId: string, key: string): boolean;
7
+ export declare function artifactContentType(key: string): string;
8
+ //# sourceMappingURL=artifacts.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"artifacts.d.ts","sourceRoot":"","sources":["../../src/viewer/artifacts.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AACrD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AACpD,OAAO,EAGL,KAAK,aAAa,EAGlB,KAAK,kBAAkB,EACxB,MAAM,YAAY,CAAC;AAIpB,wBAAsB,kBAAkB,CACtC,KAAK,EAAE,aAAa,EACpB,KAAK,EAAE,MAAM,EACb,IAAI,EAAE,IAAI,CAAC,YAAY,EAAE,QAAQ,GAAG,aAAa,CAAC,GACjD,OAAO,CAAC,kBAAkB,CAAC,CA4B7B;AAED,wBAAgB,WAAW,CACzB,KAAK,EAAE,MAAM,EACb,KAAK,EAAE,aAAa,EACpB,IAAI,EAAE,IAAI,CAAC,YAAY,EAAE,QAAQ,GAAG,aAAa,CAAC,GACjD,MAAM,CAaR;AA4CD,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,OAAO,CAOpE;AAED,wBAAgB,mBAAmB,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAMvD"}
@@ -0,0 +1,96 @@
1
+ import { ARTIFACT_GROUPS, } from "./types.js";
2
+ const BUNDLE_NAMES = ["harbor-task.tar.gz", "source-task.tar.gz"];
3
+ export async function candidateArtifacts(store, runId, task) {
4
+ const listed = await Promise.all(ARTIFACT_GROUPS.map(async (group) => {
5
+ const prefix = groupPrefix(runId, group, task);
6
+ const listed = await store.list(prefix).catch(() => []);
7
+ const entries = group === "provenance"
8
+ ? listed.filter((entry) => entry.key.endsWith(`/${task.candidateId}.json`))
9
+ : listed;
10
+ return [group, entries];
11
+ }));
12
+ const groups = Object.fromEntries(listed);
13
+ const bundles = [];
14
+ for (const [group, entries] of listed) {
15
+ const stage = bundleStage(group);
16
+ if (!stage)
17
+ continue;
18
+ for (const entry of entries) {
19
+ if (BUNDLE_NAMES.some((name) => entry.key.endsWith(`/${name}`))) {
20
+ bundles.push({ ...entry, stage });
21
+ }
22
+ }
23
+ }
24
+ bundles.sort(compareBundles);
25
+ return { runId, taskId: task.taskId, candidateId: task.candidateId, groups, bundles };
26
+ }
27
+ export function groupPrefix(runId, group, task) {
28
+ switch (group) {
29
+ case "authoring":
30
+ return `runs/${runId}/authoring/${task.candidateId}`;
31
+ case "verification":
32
+ return `runs/${runId}/verification/${task.candidateId}`;
33
+ case "verify":
34
+ return `runs/${runId}/verify/${task.candidateId}`;
35
+ case "provenance":
36
+ return `runs/${runId}/provenance`;
37
+ default:
38
+ return `runs/${runId}/${group}/${task.taskId}`;
39
+ }
40
+ }
41
+ function bundleStage(group) {
42
+ switch (group) {
43
+ case "verification":
44
+ return "verification";
45
+ case "verify":
46
+ return "verify";
47
+ case "authoring":
48
+ return "authoring";
49
+ case "environments":
50
+ return "environment";
51
+ case "validation-repairs":
52
+ return "validation-repair";
53
+ case "repairs":
54
+ return "repair";
55
+ default:
56
+ return undefined;
57
+ }
58
+ }
59
+ const STAGE_ORDER = {
60
+ verification: 0,
61
+ verify: 1,
62
+ repair: 2,
63
+ "validation-repair": 3,
64
+ environment: 4,
65
+ authoring: 5,
66
+ };
67
+ /** Compiled Harbor trees first (they hold the environment, tests, and solution), newest first. */
68
+ function compareBundles(left, right) {
69
+ const compiled = Number(right.key.endsWith("/harbor-task.tar.gz")) -
70
+ Number(left.key.endsWith("/harbor-task.tar.gz"));
71
+ if (compiled !== 0) {
72
+ return compiled;
73
+ }
74
+ if (left.updatedAt && right.updatedAt && left.updatedAt !== right.updatedAt) {
75
+ return left.updatedAt < right.updatedAt ? 1 : -1;
76
+ }
77
+ return STAGE_ORDER[left.stage] - STAGE_ORDER[right.stage] || left.key.localeCompare(right.key);
78
+ }
79
+ export function isRunArtifactKey(runId, key) {
80
+ return (key.startsWith(`runs/${runId}/`) &&
81
+ !key.includes("\\") &&
82
+ !key.includes("\0") &&
83
+ !key.split("/").some((part) => !part || part === "." || part === ".."));
84
+ }
85
+ export function artifactContentType(key) {
86
+ if (key.endsWith(".json"))
87
+ return "application/json; charset=utf-8";
88
+ if (key.endsWith(".jsonl"))
89
+ return "application/x-ndjson; charset=utf-8";
90
+ if (key.endsWith(".tar.gz") || key.endsWith(".tgz"))
91
+ return "application/gzip";
92
+ if (/\.(log|txt|md|patch|sh|toml|yaml|yml)$/.test(key))
93
+ return "text/plain; charset=utf-8";
94
+ return "application/octet-stream";
95
+ }
96
+ //# sourceMappingURL=artifacts.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"artifacts.js","sourceRoot":"","sources":["../../src/viewer/artifacts.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,9 @@
1
+ import type { ArtifactStore } from "../artifacts.js";
2
+ import type { TaskFiles } from "./types.js";
3
+ export declare function bundleCacheRoot(): string;
4
+ export declare function expandBundle(store: ArtifactStore, key: string): Promise<TaskFiles>;
5
+ export declare class BundleNotFoundError extends Error {
6
+ constructor(key: string);
7
+ }
8
+ export declare function clearBundleCache(): Promise<void>;
9
+ //# sourceMappingURL=bundle.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"bundle.d.ts","sourceRoot":"","sources":["../../src/viewer/bundle.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAGrD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AAI5C,wBAAgB,eAAe,IAAI,MAAM,CAExC;AAED,wBAAsB,YAAY,CAAC,KAAK,EAAE,aAAa,EAAE,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,SAAS,CAAC,CAMxF;AAuDD,qBAAa,mBAAoB,SAAQ,KAAK;gBAChC,GAAG,EAAE,MAAM;CAGxB;AAED,wBAAsB,gBAAgB,IAAI,OAAO,CAAC,IAAI,CAAC,CAEtD"}