@jinn-network/client 0.1.6 → 0.1.7-canary.0a586ca9

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 (434) hide show
  1. package/CHANGELOG.md +33 -0
  2. package/README.md +67 -1
  3. package/deployments/deployment-jinn-mvi-l1-sepolia-fast.json +23 -4
  4. package/deployments/deployment-jinn-mvi-l1-sepolia.json +23 -4
  5. package/deployments/deployment-jinn-mvi-l2-baseSepolia.json +5 -4
  6. package/dist/adapters/mech/adapter.d.ts +57 -2
  7. package/dist/adapters/mech/adapter.js +366 -63
  8. package/dist/adapters/mech/adapter.js.map +1 -1
  9. package/dist/adapters/mech/contracts.d.ts +17 -4
  10. package/dist/adapters/mech/contracts.js +19 -4
  11. package/dist/adapters/mech/contracts.js.map +1 -1
  12. package/dist/adapters/mech/safe-revert.d.ts +20 -0
  13. package/dist/adapters/mech/safe-revert.js +12 -4
  14. package/dist/adapters/mech/safe-revert.js.map +1 -1
  15. package/dist/adapters/mech/safe.d.ts +6 -2
  16. package/dist/adapters/mech/safe.js +32 -11
  17. package/dist/adapters/mech/safe.js.map +1 -1
  18. package/dist/adapters/mech/types.d.ts +6 -1
  19. package/dist/adapters/mech/types.js.map +1 -1
  20. package/dist/adapters/mech/verdict-code.d.ts +1 -0
  21. package/dist/adapters/mech/verdict-code.js +18 -0
  22. package/dist/adapters/mech/verdict-code.js.map +1 -1
  23. package/dist/agent/operator-claude.js +8 -0
  24. package/dist/agent/operator-claude.js.map +1 -1
  25. package/dist/api/activity-events-endpoint.d.ts +14 -0
  26. package/dist/api/activity-events-endpoint.js +59 -0
  27. package/dist/api/activity-events-endpoint.js.map +1 -0
  28. package/dist/api/admin-endpoint.d.ts +15 -3
  29. package/dist/api/admin-endpoint.js +24 -2
  30. package/dist/api/admin-endpoint.js.map +1 -1
  31. package/dist/api/bootstrap-endpoint.d.ts +1 -2
  32. package/dist/api/bootstrap-endpoint.js +85 -18
  33. package/dist/api/bootstrap-endpoint.js.map +1 -1
  34. package/dist/api/codex-doctor-endpoint.d.ts +90 -0
  35. package/dist/api/codex-doctor-endpoint.js +296 -0
  36. package/dist/api/codex-doctor-endpoint.js.map +1 -0
  37. package/dist/api/discovery-endpoint.d.ts +1 -0
  38. package/dist/api/discovery-endpoint.js +26 -0
  39. package/dist/api/discovery-endpoint.js.map +1 -1
  40. package/dist/api/fleet-build.d.ts +1 -0
  41. package/dist/api/fleet-build.js +2 -1
  42. package/dist/api/fleet-build.js.map +1 -1
  43. package/dist/api/gather-status.d.ts +37 -0
  44. package/dist/api/gather-status.js +572 -19
  45. package/dist/api/gather-status.js.map +1 -1
  46. package/dist/api/hermes-doctor-endpoint.d.ts +128 -3
  47. package/dist/api/hermes-doctor-endpoint.js +265 -22
  48. package/dist/api/hermes-doctor-endpoint.js.map +1 -1
  49. package/dist/api/launcher-status.d.ts +24 -17
  50. package/dist/api/launcher-status.js +13 -11
  51. package/dist/api/launcher-status.js.map +1 -1
  52. package/dist/api/launcher-tasks.d.ts +1 -1
  53. package/dist/api/launcher-tasks.js +12 -8
  54. package/dist/api/launcher-tasks.js.map +1 -1
  55. package/dist/api/operator-artifacts-endpoint.js +73 -6
  56. package/dist/api/operator-artifacts-endpoint.js.map +1 -1
  57. package/dist/api/portfolio-v0-build.d.ts +10 -0
  58. package/dist/api/portfolio-v0-build.js +24 -5
  59. package/dist/api/portfolio-v0-build.js.map +1 -1
  60. package/dist/api/prediction-v1-build.d.ts +10 -0
  61. package/dist/api/prediction-v1-build.js +7 -1
  62. package/dist/api/prediction-v1-build.js.map +1 -1
  63. package/dist/api/server.d.ts +31 -1
  64. package/dist/api/server.js +95 -2
  65. package/dist/api/server.js.map +1 -1
  66. package/dist/api/setup-endpoints.d.ts +7 -0
  67. package/dist/api/setup-endpoints.js +67 -135
  68. package/dist/api/setup-endpoints.js.map +1 -1
  69. package/dist/api/setup-retry-endpoint.d.ts +19 -0
  70. package/dist/api/setup-retry-endpoint.js +32 -0
  71. package/dist/api/setup-retry-endpoint.js.map +1 -0
  72. package/dist/api/solvernets-endpoints.d.ts +8 -0
  73. package/dist/api/solvernets-endpoints.js +100 -105
  74. package/dist/api/solvernets-endpoints.js.map +1 -1
  75. package/dist/api/status-build.d.ts +167 -2
  76. package/dist/api/status-build.js +118 -27
  77. package/dist/api/status-build.js.map +1 -1
  78. package/dist/api/status-harness-rollup.d.ts +35 -0
  79. package/dist/api/status-harness-rollup.js +45 -0
  80. package/dist/api/status-harness-rollup.js.map +1 -0
  81. package/dist/api/task-run-routing.d.ts +7 -0
  82. package/dist/api/task-run-routing.js +12 -0
  83. package/dist/api/task-run-routing.js.map +1 -0
  84. package/dist/api/task-runs-build.d.ts +21 -0
  85. package/dist/api/task-runs-build.js +14 -1
  86. package/dist/api/task-runs-build.js.map +1 -1
  87. package/dist/build-info.json +4 -4
  88. package/dist/build-meta.json +1 -1
  89. package/dist/captures/live-publisher.js +24 -4
  90. package/dist/captures/live-publisher.js.map +1 -1
  91. package/dist/captures/publish.d.ts +1 -1
  92. package/dist/chain-read-errors.d.ts +22 -0
  93. package/dist/chain-read-errors.js +41 -1
  94. package/dist/chain-read-errors.js.map +1 -1
  95. package/dist/cli/commands/auth.js +1 -1
  96. package/dist/cli/commands/auth.js.map +1 -1
  97. package/dist/cli/commands/codedigest-revert-check.d.ts +33 -0
  98. package/dist/cli/commands/codedigest-revert-check.js +249 -0
  99. package/dist/cli/commands/codedigest-revert-check.js.map +1 -0
  100. package/dist/cli/commands/create.js +3 -2
  101. package/dist/cli/commands/create.js.map +1 -1
  102. package/dist/cli/commands/doctor.d.ts +2 -0
  103. package/dist/cli/commands/doctor.js +2 -0
  104. package/dist/cli/commands/doctor.js.map +1 -1
  105. package/dist/cli/commands/rewards.js +11 -7
  106. package/dist/cli/commands/rewards.js.map +1 -1
  107. package/dist/cli/commands/solver-nets.d.ts +1 -0
  108. package/dist/cli/commands/solver-nets.js +179 -16
  109. package/dist/cli/commands/solver-nets.js.map +1 -1
  110. package/dist/cli/commands/solver-plugins-block.d.ts +33 -0
  111. package/dist/cli/commands/solver-plugins-block.js +118 -0
  112. package/dist/cli/commands/solver-plugins-block.js.map +1 -0
  113. package/dist/cli/commands/solver-plugins-feedback.d.ts +72 -0
  114. package/dist/cli/commands/solver-plugins-feedback.js +262 -0
  115. package/dist/cli/commands/solver-plugins-feedback.js.map +1 -0
  116. package/dist/cli/commands/solver-plugins-read.d.ts +54 -0
  117. package/dist/cli/commands/solver-plugins-read.js +259 -0
  118. package/dist/cli/commands/solver-plugins-read.js.map +1 -0
  119. package/dist/cli/commands/solver-plugins.d.ts +35 -0
  120. package/dist/cli/commands/solver-plugins.js +399 -2
  121. package/dist/cli/commands/solver-plugins.js.map +1 -1
  122. package/dist/cli/commands/status.js +1 -1
  123. package/dist/cli/commands/status.js.map +1 -1
  124. package/dist/cli/commands/tasks.js +101 -11
  125. package/dist/cli/commands/tasks.js.map +1 -1
  126. package/dist/cli/commands/update.d.ts +10 -0
  127. package/dist/cli/commands/update.js +36 -0
  128. package/dist/cli/commands/update.js.map +1 -1
  129. package/dist/cli/index.js +2 -0
  130. package/dist/cli/index.js.map +1 -1
  131. package/dist/cli/introspection-context.js +5 -0
  132. package/dist/cli/introspection-context.js.map +1 -1
  133. package/dist/cli/task-native-readiness.d.ts +10 -1
  134. package/dist/cli/task-native-readiness.js +30 -6
  135. package/dist/cli/task-native-readiness.js.map +1 -1
  136. package/dist/config.d.ts +287 -235
  137. package/dist/config.js +318 -114
  138. package/dist/config.js.map +1 -1
  139. package/dist/daemon/checkpoint-loop.d.ts +48 -0
  140. package/dist/daemon/checkpoint-loop.js +76 -0
  141. package/dist/daemon/checkpoint-loop.js.map +1 -0
  142. package/dist/daemon/creator.d.ts +1 -1
  143. package/dist/daemon/creator.js +20 -3
  144. package/dist/daemon/creator.js.map +1 -1
  145. package/dist/daemon/daemon.d.ts +22 -0
  146. package/dist/daemon/daemon.js +174 -31
  147. package/dist/daemon/daemon.js.map +1 -1
  148. package/dist/daemon/eviction-loop.d.ts +40 -0
  149. package/dist/daemon/eviction-loop.js +67 -0
  150. package/dist/daemon/eviction-loop.js.map +1 -0
  151. package/dist/daemon/gate-logger.d.ts +9 -0
  152. package/dist/daemon/gate-logger.js +2 -0
  153. package/dist/daemon/gate-logger.js.map +1 -0
  154. package/dist/daemon/jinn-claim-loop-wiring.d.ts +33 -0
  155. package/dist/daemon/jinn-claim-loop-wiring.js +40 -0
  156. package/dist/daemon/jinn-claim-loop-wiring.js.map +1 -0
  157. package/dist/daemon/jinn-claim-loop.d.ts +24 -17
  158. package/dist/daemon/jinn-claim-loop.js +77 -23
  159. package/dist/daemon/jinn-claim-loop.js.map +1 -1
  160. package/dist/daemon/readiness-gate.d.ts +1 -4
  161. package/dist/daemon/readiness-gate.js.map +1 -1
  162. package/dist/daemon/skip-log-dedup.d.ts +69 -0
  163. package/dist/daemon/skip-log-dedup.js +106 -0
  164. package/dist/daemon/skip-log-dedup.js.map +1 -0
  165. package/dist/daemon/spend-cap-gate.d.ts +40 -0
  166. package/dist/daemon/spend-cap-gate.js +46 -0
  167. package/dist/daemon/spend-cap-gate.js.map +1 -0
  168. package/dist/dashboard/assets/index-BNs_ewI6.js +345 -0
  169. package/dist/dashboard/assets/index-C4huIsUW.css +32 -0
  170. package/dist/dashboard/index.html +2 -2
  171. package/dist/discovery/factory.d.ts +17 -5
  172. package/dist/discovery/factory.js +46 -18
  173. package/dist/discovery/factory.js.map +1 -1
  174. package/dist/discovery/http.js +469 -3
  175. package/dist/discovery/http.js.map +1 -1
  176. package/dist/discovery/onchain.d.ts +5 -0
  177. package/dist/discovery/onchain.js +448 -18
  178. package/dist/discovery/onchain.js.map +1 -1
  179. package/dist/discovery/types.d.ts +174 -1
  180. package/dist/discovery/types.js +8 -10
  181. package/dist/discovery/types.js.map +1 -1
  182. package/dist/discovery/with-fallback.d.ts +7 -0
  183. package/dist/discovery/with-fallback.js +37 -0
  184. package/dist/discovery/with-fallback.js.map +1 -1
  185. package/dist/earning/bootstrap.d.ts +100 -4
  186. package/dist/earning/bootstrap.js +239 -76
  187. package/dist/earning/bootstrap.js.map +1 -1
  188. package/dist/earning/contracts.d.ts +14 -0
  189. package/dist/earning/contracts.js +17 -5
  190. package/dist/earning/contracts.js.map +1 -1
  191. package/dist/earning/funding-plan.js +27 -18
  192. package/dist/earning/funding-plan.js.map +1 -1
  193. package/dist/earning/jinn-rewards.d.ts +46 -0
  194. package/dist/earning/jinn-rewards.js +32 -0
  195. package/dist/earning/jinn-rewards.js.map +1 -1
  196. package/dist/earning/safe-adapter.d.ts +2 -0
  197. package/dist/earning/safe-adapter.js +37 -11
  198. package/dist/earning/safe-adapter.js.map +1 -1
  199. package/dist/earning/store.d.ts +8 -0
  200. package/dist/earning/store.js.map +1 -1
  201. package/dist/earning/testnet-setup-migration.d.ts +12 -0
  202. package/dist/earning/testnet-setup-migration.js +27 -1
  203. package/dist/earning/testnet-setup-migration.js.map +1 -1
  204. package/dist/earning/types.d.ts +21 -6
  205. package/dist/earning/viem-clients.d.ts +11 -4
  206. package/dist/earning/viem-clients.js +14 -5
  207. package/dist/earning/viem-clients.js.map +1 -1
  208. package/dist/erc8004/identity.d.ts +19 -3
  209. package/dist/erc8004/identity.js +21 -6
  210. package/dist/erc8004/identity.js.map +1 -1
  211. package/dist/erc8004/index.d.ts +1 -1
  212. package/dist/erc8004/index.js.map +1 -1
  213. package/dist/erc8004/reputation.d.ts +8 -0
  214. package/dist/erc8004/reputation.js +22 -3
  215. package/dist/erc8004/reputation.js.map +1 -1
  216. package/dist/events/types.d.ts +2 -2
  217. package/dist/harnesses/cost-estimates.d.ts +124 -0
  218. package/dist/harnesses/cost-estimates.js +265 -0
  219. package/dist/harnesses/cost-estimates.js.map +1 -0
  220. package/dist/harnesses/engine/engine.d.ts +78 -0
  221. package/dist/harnesses/engine/engine.js +153 -11
  222. package/dist/harnesses/engine/engine.js.map +1 -1
  223. package/dist/harnesses/engine/persistence.d.ts +51 -1
  224. package/dist/harnesses/engine/persistence.js +118 -5
  225. package/dist/harnesses/engine/persistence.js.map +1 -1
  226. package/dist/harnesses/engine/work-dir-reaper.d.ts +65 -0
  227. package/dist/harnesses/engine/work-dir-reaper.js +100 -0
  228. package/dist/harnesses/engine/work-dir-reaper.js.map +1 -0
  229. package/dist/harnesses/impls/hermes-agent/adapter.js +40 -0
  230. package/dist/harnesses/impls/hermes-agent/adapter.js.map +1 -1
  231. package/dist/harnesses/impls/hermes-agent/bootstrap.d.ts +20 -0
  232. package/dist/harnesses/impls/hermes-agent/bootstrap.js +44 -8
  233. package/dist/harnesses/impls/hermes-agent/bootstrap.js.map +1 -1
  234. package/dist/harnesses/impls/hermes-agent/config-builder.d.ts +1 -1
  235. package/dist/harnesses/impls/hermes-agent/config-builder.js +4 -2
  236. package/dist/harnesses/impls/hermes-agent/config-builder.js.map +1 -1
  237. package/dist/harnesses/impls/hermes-agent/harness.d.ts +59 -1
  238. package/dist/harnesses/impls/hermes-agent/harness.js +104 -0
  239. package/dist/harnesses/impls/hermes-agent/harness.js.map +1 -1
  240. package/dist/harnesses/impls/hermes-agent/prompt.d.ts +6 -6
  241. package/dist/harnesses/impls/hermes-agent/prompt.js +6 -6
  242. package/dist/harnesses/impls/index.d.ts +7 -0
  243. package/dist/harnesses/impls/index.js +16 -1
  244. package/dist/harnesses/impls/index.js.map +1 -1
  245. package/dist/harnesses/impls/learner/adapters/codex-code.d.ts +9 -0
  246. package/dist/harnesses/impls/learner/adapters/codex-code.js +30 -8
  247. package/dist/harnesses/impls/learner/adapters/codex-code.js.map +1 -1
  248. package/dist/harnesses/impls/learner/harness.d.ts +47 -4
  249. package/dist/harnesses/impls/learner/harness.js +105 -2
  250. package/dist/harnesses/impls/learner/harness.js.map +1 -1
  251. package/dist/harnesses/impls/learner/harvest.d.ts +1 -1
  252. package/dist/harnesses/impls/learner/harvest.js +23 -5
  253. package/dist/harnesses/impls/learner/harvest.js.map +1 -1
  254. package/dist/harnesses/impls/learner/plugin-path.d.ts +0 -13
  255. package/dist/harnesses/impls/learner/plugin-path.js +35 -15
  256. package/dist/harnesses/impls/learner/plugin-path.js.map +1 -1
  257. package/dist/harnesses/impls/learner/restoration-patch.d.ts +2 -2
  258. package/dist/harnesses/impls/learner/restoration-patch.js +25 -6
  259. package/dist/harnesses/impls/learner/restoration-patch.js.map +1 -1
  260. package/dist/harnesses/impls/learner/types.d.ts +11 -0
  261. package/dist/harnesses/impls/stub.d.ts +58 -0
  262. package/dist/harnesses/impls/stub.js +89 -0
  263. package/dist/harnesses/impls/stub.js.map +1 -0
  264. package/dist/harnesses/impls/swe-rebench-v2-evaluator/eval-runner.d.ts +69 -50
  265. package/dist/harnesses/impls/swe-rebench-v2-evaluator/eval-runner.js +199 -94
  266. package/dist/harnesses/impls/swe-rebench-v2-evaluator/eval-runner.js.map +1 -1
  267. package/dist/harnesses/impls/swe-rebench-v2-evaluator/harness.d.ts +12 -1
  268. package/dist/harnesses/impls/swe-rebench-v2-evaluator/harness.js +121 -7
  269. package/dist/harnesses/impls/swe-rebench-v2-evaluator/harness.js.map +1 -1
  270. package/dist/harnesses/impls/swe-rebench-v2-evaluator/hf-fetcher.d.ts +88 -4
  271. package/dist/harnesses/impls/swe-rebench-v2-evaluator/hf-fetcher.js +143 -22
  272. package/dist/harnesses/impls/swe-rebench-v2-evaluator/hf-fetcher.js.map +1 -1
  273. package/dist/harnesses/impls/swe-rebench-v2-evaluator/index.d.ts +6 -0
  274. package/dist/harnesses/impls/swe-rebench-v2-evaluator/index.js +1 -1
  275. package/dist/harnesses/impls/swe-rebench-v2-evaluator/index.js.map +1 -1
  276. package/dist/harnesses/readiness-registry.d.ts +7 -0
  277. package/dist/harnesses/readiness-registry.js +18 -1
  278. package/dist/harnesses/readiness-registry.js.map +1 -1
  279. package/dist/learner/revert-decision.d.ts +59 -0
  280. package/dist/learner/revert-decision.js +53 -0
  281. package/dist/learner/revert-decision.js.map +1 -0
  282. package/dist/learner/revert-stats.d.ts +24 -0
  283. package/dist/learner/revert-stats.js +44 -0
  284. package/dist/learner/revert-stats.js.map +1 -0
  285. package/dist/main.js +470 -142
  286. package/dist/main.js.map +1 -1
  287. package/dist/mcp/get-codedigest-reward.d.ts +13 -0
  288. package/dist/mcp/get-codedigest-reward.js +23 -0
  289. package/dist/mcp/get-codedigest-reward.js.map +1 -0
  290. package/dist/mcp/server.js +23 -0
  291. package/dist/mcp/server.js.map +1 -1
  292. package/dist/observability/emit-event.d.ts +3 -2
  293. package/dist/observability/emit-event.js +22 -1
  294. package/dist/observability/emit-event.js.map +1 -1
  295. package/dist/operator-errors.d.ts +7 -0
  296. package/dist/operator-errors.js +13 -1
  297. package/dist/operator-errors.js.map +1 -1
  298. package/dist/plugins/learner/.claude-plugin/plugin.json +9 -0
  299. package/dist/plugins/learner/.codex-plugin/plugin.json +39 -0
  300. package/dist/plugins/learner/AGENTS.md +40 -0
  301. package/dist/plugins/learner/CLAUDE.md +33 -0
  302. package/dist/plugins/learner/README.md +59 -0
  303. package/dist/plugins/learner/hooks/hooks.json +16 -0
  304. package/dist/plugins/learner/hooks/session-start +38 -0
  305. package/dist/plugins/learner/skills/learn/SKILL.md +412 -0
  306. package/dist/plugins/learner/skills/learn/analyst-prompt.md +68 -0
  307. package/dist/plugins/learner/skills/learn/consolidator-prompt.md +111 -0
  308. package/dist/plugins/learner/skills/learn/explorer-prompt.md +53 -0
  309. package/dist/plugins/learner/skills/learn/planner-prompt.md +87 -0
  310. package/dist/plugins/learner/skills/learn/promoter-prompt.md +184 -0
  311. package/dist/plugins/learner/skills/learn/step-worker-prompt.md +47 -0
  312. package/dist/plugins/learner/skills/learn/strategist-prompt.md +85 -0
  313. package/dist/preflight/pidfile-liveness.d.ts +44 -0
  314. package/dist/preflight/pidfile-liveness.js +103 -0
  315. package/dist/preflight/pidfile-liveness.js.map +1 -0
  316. package/dist/preflight/rpc-network.d.ts +40 -0
  317. package/dist/preflight/rpc-network.js +67 -1
  318. package/dist/preflight/rpc-network.js.map +1 -1
  319. package/dist/restart-daemon.d.ts +90 -0
  320. package/dist/restart-daemon.js +95 -0
  321. package/dist/restart-daemon.js.map +1 -0
  322. package/dist/rpc/transport.d.ts +109 -0
  323. package/dist/rpc/transport.js +220 -0
  324. package/dist/rpc/transport.js.map +1 -0
  325. package/dist/scripts/donation-consumption-acceptance.js +7 -28
  326. package/dist/scripts/donation-consumption-acceptance.js.map +1 -1
  327. package/dist/scripts/swe-rebench-v2-pytest-missing.json +16 -0
  328. package/dist/setup/halt-mode.d.ts +14 -0
  329. package/dist/setup/halt-mode.js +17 -0
  330. package/dist/setup/halt-mode.js.map +1 -0
  331. package/dist/solver-nets/prediction-operator-ux.d.ts +1 -2
  332. package/dist/solver-nets/prediction-operator-ux.js +90 -47
  333. package/dist/solver-nets/prediction-operator-ux.js.map +1 -1
  334. package/dist/solver-nets/registry.d.ts +20 -1
  335. package/dist/solver-nets/registry.js +38 -25
  336. package/dist/solver-nets/registry.js.map +1 -1
  337. package/dist/solver-types/_swe-rebench-v2-pool-cache.d.ts +58 -0
  338. package/dist/solver-types/_swe-rebench-v2-pool-cache.js +87 -0
  339. package/dist/solver-types/_swe-rebench-v2-pool-cache.js.map +1 -0
  340. package/dist/solver-types/_swe-rebench-v2-pool.d.ts +9 -2
  341. package/dist/solver-types/_swe-rebench-v2-pool.js +15 -20
  342. package/dist/solver-types/_swe-rebench-v2-pool.js.map +1 -1
  343. package/dist/solver-types/_swe-rebench-v2-state.d.ts +15 -0
  344. package/dist/solver-types/_swe-rebench-v2-state.js +19 -0
  345. package/dist/solver-types/_swe-rebench-v2-state.js.map +1 -1
  346. package/dist/solver-types/_swe-rebench-v2-substrate.d.ts +1 -0
  347. package/dist/solver-types/_swe-rebench-v2-substrate.js +10 -0
  348. package/dist/solver-types/_swe-rebench-v2-substrate.js.map +1 -1
  349. package/dist/solver-types/_swe-rebench-v2-validated-pool.d.ts +145 -2
  350. package/dist/solver-types/_swe-rebench-v2-validated-pool.js +482 -44
  351. package/dist/solver-types/_swe-rebench-v2-validated-pool.js.map +1 -1
  352. package/dist/solver-types/swe-rebench-v2-auto.d.ts +38 -14
  353. package/dist/solver-types/swe-rebench-v2-auto.js +87 -28
  354. package/dist/solver-types/swe-rebench-v2-auto.js.map +1 -1
  355. package/dist/solver-types/swe-rebench-v2.d.ts +19 -2
  356. package/dist/solver-types/swe-rebench-v2.js +351 -96
  357. package/dist/solver-types/swe-rebench-v2.js.map +1 -1
  358. package/dist/solvernets/daemon-init.d.ts +10 -2
  359. package/dist/solvernets/daemon-init.js +22 -2
  360. package/dist/solvernets/daemon-init.js.map +1 -1
  361. package/dist/solvernets/launched-record-dispatcher.d.ts +4 -0
  362. package/dist/solvernets/launched-record-dispatcher.js +41 -7
  363. package/dist/solvernets/launched-record-dispatcher.js.map +1 -1
  364. package/dist/solvernets/registry-client-erc8004.js +11 -0
  365. package/dist/solvernets/registry-client-erc8004.js.map +1 -1
  366. package/dist/solvernets/store.d.ts +7 -2
  367. package/dist/solvernets/store.js +1 -0
  368. package/dist/solvernets/store.js.map +1 -1
  369. package/dist/spend/cost-surface-status.d.ts +10 -0
  370. package/dist/spend/cost-surface-status.js +22 -0
  371. package/dist/spend/cost-surface-status.js.map +1 -0
  372. package/dist/spend/credential.d.ts +8 -0
  373. package/dist/spend/credential.js +30 -0
  374. package/dist/spend/credential.js.map +1 -0
  375. package/dist/spend/daemon-config.d.ts +13 -0
  376. package/dist/spend/daemon-config.js +24 -0
  377. package/dist/spend/daemon-config.js.map +1 -0
  378. package/dist/spend/pricing.d.ts +16 -0
  379. package/dist/spend/pricing.js +26 -0
  380. package/dist/spend/pricing.js.map +1 -0
  381. package/dist/spend/record.d.ts +13 -0
  382. package/dist/spend/record.js +30 -0
  383. package/dist/spend/record.js.map +1 -0
  384. package/dist/spend/usage.d.ts +27 -0
  385. package/dist/spend/usage.js +113 -0
  386. package/dist/spend/usage.js.map +1 -0
  387. package/dist/store/store.d.ts +61 -0
  388. package/dist/store/store.js +302 -7
  389. package/dist/store/store.js.map +1 -1
  390. package/dist/tasks/sources.d.ts +18 -1
  391. package/dist/tasks/sources.js +33 -5
  392. package/dist/tasks/sources.js.map +1 -1
  393. package/dist/trajectory/transcript-parsers/codex-session.d.ts +12 -6
  394. package/dist/trajectory/transcript-parsers/codex-session.js +114 -13
  395. package/dist/trajectory/transcript-parsers/codex-session.js.map +1 -1
  396. package/dist/trajectory/transcript-parsers/types.d.ts +8 -8
  397. package/dist/trajectory/transcript-session-dirs.d.ts +18 -0
  398. package/dist/trajectory/transcript-session-dirs.js +85 -0
  399. package/dist/trajectory/transcript-session-dirs.js.map +1 -0
  400. package/dist/trajectory/transcript-watcher.d.ts +20 -1
  401. package/dist/trajectory/transcript-watcher.js +98 -32
  402. package/dist/trajectory/transcript-watcher.js.map +1 -1
  403. package/dist/tx-retry.d.ts +166 -19
  404. package/dist/tx-retry.js +310 -32
  405. package/dist/tx-retry.js.map +1 -1
  406. package/dist/types/payloads/portfolio-v0.d.ts +3 -3
  407. package/dist/types/payloads/prediction-apy-v0.d.ts +8 -8
  408. package/dist/types/payloads/prediction-v0.d.ts +17 -17
  409. package/dist/types/task-document.d.ts +392 -0
  410. package/dist/types/task-document.js +10 -0
  411. package/dist/types/task-document.js.map +1 -1
  412. package/dist/types/task.d.ts +28 -0
  413. package/dist/util/extract-tx-hash.d.ts +14 -0
  414. package/dist/util/extract-tx-hash.js +19 -0
  415. package/dist/util/extract-tx-hash.js.map +1 -0
  416. package/dist/vendor/@jinn-network/sdk/dist/contracts.js +1 -1
  417. package/dist/vendor/@jinn-network/sdk/dist/solvernets/manifest-schema.d.ts +3 -0
  418. package/dist/vendor/@jinn-network/sdk/dist/solvernets/manifest-schema.js +1 -0
  419. package/package.json +37 -13
  420. package/plugins/learner/skills/learn/consolidator-prompt.md +18 -1
  421. package/plugins/learner/skills/learn/promoter-prompt.md +72 -1
  422. package/plugins/swe-rebench-v2-diffmin/README.md +10 -9
  423. package/plugins/swe-rebench-v2-diffmin/jinn.plugin.json +1 -1
  424. package/plugins/swe-rebench-v2-diffmin/skills/diffmin/SKILL.md +15 -10
  425. package/plugins/swe-rebench-v2-diffmin/skills/test-map/SKILL.md +10 -12
  426. package/plugins/swe-rebench-v2-runtime/.claude-plugin/plugin.json +1 -1
  427. package/plugins/swe-rebench-v2-runtime/.codex-plugin/plugin.json +3 -3
  428. package/plugins/swe-rebench-v2-runtime/README.md +6 -6
  429. package/plugins/swe-rebench-v2-runtime/jinn.plugin.json +2 -3
  430. package/plugins/swe-rebench-v2-runtime/skills/task/SKILL.md +69 -0
  431. package/dist/dashboard/assets/index-DOlzFN8a.css +0 -32
  432. package/dist/dashboard/assets/index-NkZ7CTAT.js +0 -140
  433. package/plugins/swe-rebench-v2-runtime/skills/orient/SKILL.md +0 -29
  434. package/plugins/swe-rebench-v2-runtime/skills/plan/SKILL.md +0 -53
@@ -26,9 +26,10 @@
26
26
  * re-raises as `SkippableError` (no signed verdict).
27
27
  */
28
28
  import { spawn } from 'node:child_process';
29
- import { mkdtemp, writeFile, readFile, rm } from 'node:fs/promises';
29
+ import { mkdtemp, writeFile, readFile, rm, statfs } from 'node:fs/promises';
30
30
  import { tmpdir } from 'node:os';
31
31
  import { isAbsolute, join } from 'node:path';
32
+ import { defaultCommandRunner, resolveImageDigest as resolveSubstrateImageDigest, } from '../../../solver-types/_swe-rebench-v2-substrate.js';
32
33
  /**
33
34
  * Thrown when the eval could not actually grade the solution. There is no
34
35
  * signal about the solver here, only about the operator's environment — the
@@ -46,62 +47,102 @@ export class EvalCouldNotGradeError extends Error {
46
47
  }
47
48
  }
48
49
  /**
49
- * Default cap on the per-instance Docker image cache when no explicit
50
- * `imageCacheMax` and no `JINN_EVAL_IMAGE_CACHE_MAX` env var are configured.
51
- *
52
- * 20 images × ~3 GB/image 60 GB working set — small enough that even a
53
- * 256 GB disk has headroom, large enough that the steady-state loop on a
54
- * frequently-repeating subset of the pool rarely re-pulls.
50
+ * Thrown by `runEval` when the disk cannot be brought above the eval
51
+ * disk-floor even after a broad prune. A clean abort — the caller stops
52
+ * gracefully; no instance is graded, nothing is marked. Distinct from
53
+ * `EvalCouldNotGradeError`: this is operator-environment, retryable, and must
54
+ * never be turned into a `scorable: false` admission (#476).
55
+ */
56
+ export class InsufficientDiskError extends Error {
57
+ freeBytes;
58
+ floorBytes;
59
+ constructor(freeBytes, floorBytes) {
60
+ const gb = (n) => (n / 1_000_000_000).toFixed(1);
61
+ super(`insufficient disk for swe-rebench eval: ${gb(freeBytes)} GB free, ` +
62
+ `need ≥ ${gb(floorBytes)} GB`);
63
+ this.name = 'InsufficientDiskError';
64
+ this.freeBytes = freeBytes;
65
+ this.floorBytes = floorBytes;
66
+ }
67
+ }
68
+ /**
69
+ * Default free-disk floor required before an eval round: 20 GB. A single
70
+ * SWE-rebench eval image was observed to peak transiently at ~12.6 GB, so the
71
+ * floor clears the worst observed instance with real margin. Override with
72
+ * `JINN_EVAL_DISK_FLOOR_GB` on constrained hosts.
55
73
  */
56
- export const DEFAULT_EVAL_IMAGE_CACHE_MAX = 20;
57
- export function resolveImageCacheMax(opt) {
74
+ export const DEFAULT_EVAL_DISK_FLOOR_BYTES = 20_000_000_000;
75
+ /** Resolve the disk floor: explicit option > `JINN_EVAL_DISK_FLOOR_GB` env > default. */
76
+ export function resolveDiskFloorBytes(opt) {
58
77
  if (typeof opt === 'number' && Number.isFinite(opt) && opt > 0)
59
78
  return Math.floor(opt);
60
- const envRaw = process.env['JINN_EVAL_IMAGE_CACHE_MAX'];
79
+ const envRaw = process.env['JINN_EVAL_DISK_FLOOR_GB'];
61
80
  if (envRaw !== undefined) {
62
- // `Number()` returns 0 for `""` / whitespace and NaN for strings with
63
- // non-numeric content (e.g. `"garbage"`, `"1e3oops"`) — unlike `parseInt`,
64
- // which would silently accept `parseInt("1e3oops") === 1`. Either way we
65
- // reject anything that isn't a positive integer.
66
81
  const parsed = Number(envRaw);
67
- if (Number.isFinite(parsed) && Number.isInteger(parsed) && parsed > 0)
68
- return parsed;
69
- // Surface the typo so operators discover it before the disk fills,
70
- // rather than silently running on the default.
71
- console.warn(`[swe-rebench-v2] JINN_EVAL_IMAGE_CACHE_MAX=${JSON.stringify(envRaw)} is not a positive integer — using default ${DEFAULT_EVAL_IMAGE_CACHE_MAX}`);
82
+ if (Number.isFinite(parsed) && parsed > 0)
83
+ return Math.floor(parsed * 1_000_000_000);
84
+ console.warn(`[swe-rebench-v2] JINN_EVAL_DISK_FLOOR_GB=${JSON.stringify(envRaw)} is not a positive ` +
85
+ `number using default ${DEFAULT_EVAL_DISK_FLOOR_BYTES / 1_000_000_000} GB`);
72
86
  }
73
- return DEFAULT_EVAL_IMAGE_CACHE_MAX;
87
+ return DEFAULT_EVAL_DISK_FLOOR_BYTES;
74
88
  }
75
89
  /**
76
- * Production `cleanupImage`: spawn `docker rmi <image>`. Errors are tolerated
77
- * a missing/failed `docker rmi` is operationally survivable (the image
78
- * stays on disk; cache stays bloated for a while; not a correctness failure)
79
- * but we warn on non-zero exit and on failed-to-spawn so a persistently-flaky
80
- * daemon (or a permission slip) becomes visible before disks fill. Silent
81
- * leaks were the original failure mode `jinn-mono-uy6v.11` exists to fix.
82
- *
83
- * We listen on `'exit'` rather than `'close'` and route stdio to `'ignore'`
84
- * so the resolve path doesn't depend on parent-side stream draining (which
85
- * can fail to fire `'close'` cleanly when piped without backpressure on the
86
- * right tick). The image tag + exit code is sufficient signal; operators can
87
- * grep the docker daemon log for the underlying reason.
90
+ * Default wall-clock limit for one upstream eval.py invocation: 2 hours. Some
91
+ * linux/amd64 SWE-rebench images can wedge indefinitely under Apple Silicon
92
+ * emulation after a native crash, so the subprocess gets a hard guardrail.
93
+ * Override with `JINN_SWE_REBENCH_EVAL_TIMEOUT_MS`; set `0` to disable.
88
94
  */
89
- function defaultCleanupImage(image) {
90
- return new Promise((resolve) => {
91
- const child = spawn('docker', ['rmi', image], { stdio: ['ignore', 'ignore', 'ignore'] });
92
- child.on('exit', (code, signal) => {
93
- if (code !== 0) {
94
- const status = code !== null ? `exited ${code}` : `terminated by signal ${signal ?? 'unknown'}`;
95
- console.warn(`[swe-rebench-v2] docker rmi ${image} ${status}`);
96
- }
97
- resolve();
98
- });
99
- child.on('error', (err) => {
100
- console.warn(`[swe-rebench-v2] docker rmi ${image} failed to spawn: ${err.message}`);
101
- resolve();
102
- });
95
+ export const DEFAULT_EVAL_TIMEOUT_MS = 2 * 60 * 60 * 1000;
96
+ /** Resolve the eval timeout: explicit option > env > default. */
97
+ export function resolveEvalTimeoutMs(opt) {
98
+ if (typeof opt === 'number' && Number.isFinite(opt) && opt >= 0)
99
+ return Math.floor(opt);
100
+ const envRaw = process.env['JINN_SWE_REBENCH_EVAL_TIMEOUT_MS'];
101
+ if (envRaw !== undefined) {
102
+ const parsed = Number(envRaw);
103
+ if (Number.isFinite(parsed) && parsed >= 0)
104
+ return Math.floor(parsed);
105
+ console.warn(`[swe-rebench-v2] JINN_SWE_REBENCH_EVAL_TIMEOUT_MS=${JSON.stringify(envRaw)} is not a ` +
106
+ `non-negative number using default ${DEFAULT_EVAL_TIMEOUT_MS} ms`);
107
+ }
108
+ return DEFAULT_EVAL_TIMEOUT_MS;
109
+ }
110
+ /** Production disk probe: free bytes on the filesystem backing the temp dir. */
111
+ async function defaultFreeDiskBytes() {
112
+ const s = await statfs(tmpdir());
113
+ return s.bavail * s.bsize;
114
+ }
115
+ /**
116
+ * Spawn `docker <args>`, resolving regardless of outcome — a failed cleanup
117
+ * command is logged, never thrown (#476: cleanup must not break the eval loop).
118
+ */
119
+ function runDocker(args) {
120
+ return defaultCommandRunner('docker', args)
121
+ .then((res) => {
122
+ if (res.exitCode !== 0) {
123
+ const detail = (res.stderr || res.stdout).trim();
124
+ console.warn(`[swe-rebench-v2] docker ${args.join(' ')} exited ${res.exitCode}` +
125
+ `${detail ? `: ${detail.slice(-500)}` : ''}`);
126
+ }
127
+ })
128
+ .catch((err) => {
129
+ const reason = err instanceof Error ? err.message : String(err);
130
+ console.warn(`[swe-rebench-v2] docker ${args.join(' ')} failed to spawn: ${reason}`);
103
131
  });
104
132
  }
133
+ /**
134
+ * Production `pruneRound`: remove the round's image, then prune stopped
135
+ * containers and build cache. Each step is best-effort.
136
+ */
137
+ async function defaultPruneRound(image) {
138
+ if (image)
139
+ await runDocker(['rmi', '-f', image]);
140
+ await runDocker(['container', 'prune', '-f']);
141
+ await runDocker(['builder', 'prune', '-f']);
142
+ }
143
+ async function defaultResolveImageDigest(imageName) {
144
+ return resolveSubstrateImageDigest(imageName, defaultCommandRunner);
145
+ }
105
146
  /**
106
147
  * Container-output signatures that mean the eval aborted before producing a
107
148
  * usable result — i.e. the operator's environment is the problem, not the
@@ -120,6 +161,7 @@ const INFRA_SIGNATURES = [
120
161
  { rx: /Failed building editable|Failed to build installable wheels/i, reason: 'install_build_failed' },
121
162
  { rx: /No virtual environment found/i, reason: 'venv_missing' },
122
163
  { rx: /exec format error|the requested image's platform .* does not match/i, reason: 'image_arch_mismatch' },
164
+ { rx: /Fatal Python error:\s*Illegal instruction|Illegal instruction(?:\s+\(core dumped\))?/i, reason: 'image_arch_mismatch' },
123
165
  // 2026-05-14 triage (jinn-mono-fufn) — failure fingerprints from real verdicts:
124
166
  { rx: /A virtual environment already exists at \S+\.venv\b/i, reason: 'venv_collision' },
125
167
  { rx: /No module named pytest\b/i, reason: 'pytest_missing' },
@@ -167,75 +209,93 @@ function buildTestCommands(args) {
167
209
  if (args.log_parser === 'parse_log_pytest') {
168
210
  const nodeIds = [...args.fail_to_pass, ...args.pass_to_pass];
169
211
  if (nodeIds.length > 0) {
212
+ // Why: many SWE-rebench rows ship a base image lacking pytest, which
213
+ // aborts the eval as `ungradeable:pytest_missing` (#493). Prepend a
214
+ // best-effort install unless the dataset's install already does it.
215
+ const guarded = installsPytest(install)
216
+ ? install
217
+ : [PYTEST_INSTALL_GUARD, ...install];
170
218
  const cmd = [
171
219
  'python -m pytest --no-header -rA --tb=no -p no:cacheprovider',
172
220
  ...nodeIds.map(shellQuote),
173
221
  ].join(' ');
174
- return [...install, cmd];
222
+ return [...guarded, cmd];
175
223
  }
176
224
  }
177
225
  return [...install, ...normalizeCommands(args.test_cmd)];
178
226
  }
227
+ // Why: hyphen is excluded from the boundary class so `pytest-cov` alone
228
+ // does not satisfy the check (only an explicit `pytest` install counts).
229
+ function installsPytest(install) {
230
+ return install.some((line) => /(?:^|[^A-Za-z0-9_-])pytest(?:$|[^A-Za-z0-9_-])/.test(line));
231
+ }
232
+ // Why: import-gated so the guard is a provable no-op when pytest is already
233
+ // importable (e.g. baked into the base image or pulled by a `.[test]` extra
234
+ // that `installsPytest` can't see). That protects previously-scorable
235
+ // instances from any perturbation — `import pytest` succeeds, the brace group
236
+ // is skipped, and nothing is installed. The install runs only when pytest is
237
+ // genuinely absent, which is exactly the `ungradeable:pytest_missing` case.
238
+ const PYTEST_INSTALL_GUARD = "python3 -c 'import pytest' 2>/dev/null || { " +
239
+ 'python3 -m ensurepip --upgrade >/dev/null 2>&1 || true; ' +
240
+ 'python3 -m pip install --disable-pip-version-check --quiet pytest; }';
179
241
  export class PythonEvalRunner {
180
242
  opts;
181
- /**
182
- * LRU of image tags whose Docker layers may be cached locally. Stored as a
183
- * `Set<string>` because `Set` preserves insertion order; we delete-then-add
184
- * to refresh recency and `next()` on the keys iterator to find the
185
- * least-recently-used entry.
186
- */
187
- imageLru = new Set();
188
- imageCacheMax;
189
- cleanupImage;
243
+ pruneRound;
244
+ diskFloorBytes;
245
+ freeDiskBytes;
246
+ systemPrune;
247
+ resolveImageDigest;
248
+ evalTimeoutMs;
190
249
  constructor(opts) {
191
250
  this.opts = opts;
192
- this.imageCacheMax = resolveImageCacheMax(opts.imageCacheMax);
193
- this.cleanupImage = opts.cleanupImage ?? defaultCleanupImage;
251
+ this.pruneRound = opts.pruneRound ?? defaultPruneRound;
252
+ this.diskFloorBytes = resolveDiskFloorBytes(opts.diskFloorBytes);
253
+ this.freeDiskBytes = opts.freeDiskBytes ?? defaultFreeDiskBytes;
254
+ this.systemPrune = opts.systemPrune ?? (() => runDocker(['system', 'prune', '-f']));
255
+ this.resolveImageDigest = opts.resolveImageDigest ?? defaultResolveImageDigest;
256
+ this.evalTimeoutMs = resolveEvalTimeoutMs(opts.evalTimeoutMs);
257
+ }
258
+ /**
259
+ * Ensure enough free disk for an eval round. Below the floor → broad prune →
260
+ * re-probe; still below → `InsufficientDiskError` (clean abort). (#476)
261
+ */
262
+ async ensureDiskHeadroom() {
263
+ const free = await this.freeDiskBytes();
264
+ if (free >= this.diskFloorBytes)
265
+ return;
266
+ console.warn(`[swe-rebench-v2] low disk (${(free / 1e9).toFixed(1)} GB) — running docker system prune`);
267
+ await this.systemPrune();
268
+ const afterPrune = await this.freeDiskBytes();
269
+ if (afterPrune < this.diskFloorBytes) {
270
+ throw new InsufficientDiskError(afterPrune, this.diskFloorBytes);
271
+ }
194
272
  }
195
273
  async runEval(args) {
274
+ await this.ensureDiskHeadroom();
196
275
  try {
197
- return await this.runEvalImpl(args);
276
+ const result = await this.runEvalImpl(args);
277
+ let imageDigest = null;
278
+ try {
279
+ imageDigest = await this.resolveImageDigest(args.image);
280
+ }
281
+ catch (err) {
282
+ const reason = err instanceof Error ? err.message : String(err);
283
+ console.warn(`[swe-rebench-v2] resolveImageDigest failed for ${args.image}: ${reason}`);
284
+ }
285
+ return {
286
+ ...result,
287
+ ...(imageDigest ? { imageDigest } : {}),
288
+ };
198
289
  }
199
290
  finally {
200
- // Always record the image and run GC — even when the eval threw. A
201
- // pull-and-crash failure (Docker storage IO error, image_arch_mismatch,
202
- // patch_corrupt, eval_no_report) still left an image on disk; we must
203
- // count it toward the cache cap so the failure path can't leak the LRU.
204
- await this.recordImageUsage(args.image);
205
- }
206
- }
207
- /**
208
- * Move `image` to the most-recently-used slot of the in-process LRU; if the
209
- * set now exceeds {@link imageCacheMax}, evict the oldest entries via
210
- * {@link cleanupImage}. Eviction failures are swallowed so a flaky
211
- * `docker rmi` cannot escape `runEval`.
212
- *
213
- * The cap is enforced after the just-used image is inserted: the
214
- * just-evaluated image is the *most* recent, so repeat-evals of recently
215
- * used instances never re-pull. Only when more than N distinct images have
216
- * been used does the oldest get rmi'd.
217
- */
218
- async recordImageUsage(image) {
219
- if (!image)
220
- return;
221
- // Refresh recency: delete-then-add reinserts at the tail of the set.
222
- this.imageLru.delete(image);
223
- this.imageLru.add(image);
224
- while (this.imageLru.size > this.imageCacheMax) {
225
- const oldest = this.imageLru.values().next().value;
226
- if (!oldest)
227
- break;
228
- this.imageLru.delete(oldest);
291
+ // Prune this round's full Docker footprint — even when the eval threw,
292
+ // a pull-and-crash still left an image on disk (#476).
229
293
  try {
230
- await this.cleanupImage(oldest);
294
+ await this.pruneRound(args.image);
231
295
  }
232
296
  catch (err) {
233
- // Best-effort GC: a failed rmi leaves the image on disk but mustn't
234
- // break the loop. Warn so a flaky `docker` (or a permission slip)
235
- // becomes visible before disks fill — silent leaks were the whole
236
- // problem this bead exists to fix.
237
297
  const reason = err instanceof Error ? err.message : String(err);
238
- console.warn(`[swe-rebench-v2] eval-image cleanup failed for ${oldest}: ${reason}`);
298
+ console.warn(`[swe-rebench-v2] pruneRound failed for ${args.image}: ${reason}`);
239
299
  }
240
300
  }
241
301
  }
@@ -280,6 +340,7 @@ export class PythonEvalRunner {
280
340
  const child = spawn(this.opts.pythonBin ?? 'python3', pyArgs, {
281
341
  cwd: this.opts.upstreamRepoDir,
282
342
  stdio: ['ignore', 'pipe', 'pipe'],
343
+ detached: process.platform !== 'win32',
283
344
  // SWE-rebench eval images are published for linux/amd64. Pin the platform
284
345
  // so the upstream `docker run` is consistent on amd64 hosts and does not
285
346
  // silently crash under arm64 emulation on dev machines.
@@ -289,10 +350,54 @@ export class PythonEvalRunner {
289
350
  child.stderr.on('data', (d) => { stderr += d.toString(); });
290
351
  let stdout = '';
291
352
  child.stdout.on('data', (d) => { stdout += d.toString(); });
353
+ let timedOut = false;
354
+ let closed = false;
355
+ let killTimer;
356
+ const killChild = (signal) => {
357
+ const pid = child.pid;
358
+ if (!pid)
359
+ return;
360
+ try {
361
+ if (process.platform === 'win32') {
362
+ child.kill(signal);
363
+ }
364
+ else {
365
+ process.kill(-pid, signal);
366
+ }
367
+ }
368
+ catch {
369
+ try {
370
+ child.kill(signal);
371
+ }
372
+ catch { }
373
+ }
374
+ };
375
+ const timeoutTimer = this.evalTimeoutMs > 0
376
+ ? setTimeout(() => {
377
+ timedOut = true;
378
+ killChild('SIGTERM');
379
+ killTimer = setTimeout(() => {
380
+ if (!closed)
381
+ killChild('SIGKILL');
382
+ }, 10_000);
383
+ killTimer.unref?.();
384
+ }, this.evalTimeoutMs)
385
+ : undefined;
386
+ timeoutTimer?.unref?.();
292
387
  const exitCode = await new Promise((resolve, reject) => {
293
388
  child.on('close', (code) => resolve(code ?? 1));
294
389
  child.on('error', reject);
390
+ }).finally(() => {
391
+ closed = true;
392
+ if (timeoutTimer)
393
+ clearTimeout(timeoutTimer);
394
+ if (killTimer)
395
+ clearTimeout(killTimer);
295
396
  });
397
+ if (timedOut) {
398
+ await rm(tmp, { recursive: true, force: true });
399
+ throw new EvalCouldNotGradeError('eval_timeout', `python eval timed out after ${this.evalTimeoutMs}ms; ${(stderr || stdout).slice(-800)}`);
400
+ }
296
401
  let report;
297
402
  try {
298
403
  report = JSON.parse(await readFile(reportPath, 'utf8'));
@@ -1 +1 @@
1
- {"version":3,"file":"eval-runner.js","sourceRoot":"","sources":["../../../../src/harnesses/impls/swe-rebench-v2-evaluator/eval-runner.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"eval-runner.js","sourceRoot":"","sources":["../../../../src/harnesses/impls/swe-rebench-v2-evaluator/eval-runner.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AAEH,OAAO,EAAE,KAAK,EAAE,MAAM,oBAAoB,CAAC;AAC3C,OAAO,EAAE,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,EAAE,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAC;AAC5E,OAAO,EAAE,MAAM,EAAE,MAAM,SAAS,CAAC;AACjC,OAAO,EAAE,UAAU,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAE7C,OAAO,EACL,oBAAoB,EACpB,kBAAkB,IAAI,2BAA2B,GAClD,MAAM,oDAAoD,CAAC;AAE5D;;;;GAIG;AACH,MAAM,OAAO,sBAAuB,SAAQ,KAAK;IACtC,MAAM,CAAS;IACxB,qEAAqE;IAC5D,UAAU,CAAS;IAE5B,YAAY,MAAc,EAAE,UAAU,GAAG,EAAE;QACzC,KAAK,CAAC,qDAAqD,MAAM,GAAG,CAAC,CAAC;QACtE,IAAI,CAAC,IAAI,GAAG,wBAAwB,CAAC;QACrC,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;QACrB,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC,KAAK,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC;IAC9C,CAAC;CACF;AAED;;;;;;GAMG;AACH,MAAM,OAAO,qBAAsB,SAAQ,KAAK;IACrC,SAAS,CAAS;IAClB,UAAU,CAAS;IAC5B,YAAY,SAAiB,EAAE,UAAkB;QAC/C,MAAM,EAAE,GAAG,CAAC,CAAS,EAAU,EAAE,CAAC,CAAC,CAAC,GAAG,aAAa,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;QACjE,KAAK,CACH,2CAA2C,EAAE,CAAC,SAAS,CAAC,YAAY;YAClE,UAAU,EAAE,CAAC,UAAU,CAAC,KAAK,CAChC,CAAC;QACF,IAAI,CAAC,IAAI,GAAG,uBAAuB,CAAC;QACpC,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;QAC3B,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC;IAC/B,CAAC;CACF;AAED;;;;;GAKG;AACH,MAAM,CAAC,MAAM,6BAA6B,GAAG,cAAc,CAAC;AAE5D,yFAAyF;AACzF,MAAM,UAAU,qBAAqB,CAAC,GAAuB;IAC3D,IAAI,OAAO,GAAG,KAAK,QAAQ,IAAI,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,GAAG,GAAG,CAAC;QAAE,OAAO,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IACvF,MAAM,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC,yBAAyB,CAAC,CAAC;IACtD,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;QACzB,MAAM,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC;QAC9B,IAAI,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,MAAM,GAAG,CAAC;YAAE,OAAO,IAAI,CAAC,KAAK,CAAC,MAAM,GAAG,aAAa,CAAC,CAAC;QACrF,OAAO,CAAC,IAAI,CACV,4CAA4C,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,qBAAqB;YACrF,0BAA0B,6BAA6B,GAAG,aAAa,KAAK,CAC/E,CAAC;IACJ,CAAC;IACD,OAAO,6BAA6B,CAAC;AACvC,CAAC;AAED;;;;;GAKG;AACH,MAAM,CAAC,MAAM,uBAAuB,GAAG,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC;AAE1D,iEAAiE;AACjE,MAAM,UAAU,oBAAoB,CAAC,GAAuB;IAC1D,IAAI,OAAO,GAAG,KAAK,QAAQ,IAAI,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,GAAG,IAAI,CAAC;QAAE,OAAO,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IACxF,MAAM,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC,kCAAkC,CAAC,CAAC;IAC/D,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;QACzB,MAAM,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC;QAC9B,IAAI,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,MAAM,IAAI,CAAC;YAAE,OAAO,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;QACtE,OAAO,CAAC,IAAI,CACV,qDAAqD,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,YAAY;YACrF,uCAAuC,uBAAuB,KAAK,CACtE,CAAC;IACJ,CAAC;IACD,OAAO,uBAAuB,CAAC;AACjC,CAAC;AAED,gFAAgF;AAChF,KAAK,UAAU,oBAAoB;IACjC,MAAM,CAAC,GAAG,MAAM,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC;IACjC,OAAO,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,KAAK,CAAC;AAC5B,CAAC;AA6CD;;;GAGG;AACH,SAAS,SAAS,CAAC,IAAc;IAC/B,OAAO,oBAAoB,CAAC,QAAQ,EAAE,IAAI,CAAC;SACxC,IAAI,CAAC,CAAC,GAAG,EAAE,EAAE;QACZ,IAAI,GAAG,CAAC,QAAQ,KAAK,CAAC,EAAE,CAAC;YACvB,MAAM,MAAM,GAAG,CAAC,GAAG,CAAC,MAAM,IAAI,GAAG,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,CAAC;YACjD,OAAO,CAAC,IAAI,CACV,2BAA2B,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,WAAW,GAAG,CAAC,QAAQ,EAAE;gBAChE,GAAG,MAAM,CAAC,CAAC,CAAC,KAAK,MAAM,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,CAC/C,CAAC;QACJ,CAAC;IACH,CAAC,CAAC;SACD,KAAK,CAAC,CAAC,GAAY,EAAE,EAAE;QACtB,MAAM,MAAM,GAAG,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;QAChE,OAAO,CAAC,IAAI,CAAC,2BAA2B,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,qBAAqB,MAAM,EAAE,CAAC,CAAC;IACvF,CAAC,CAAC,CAAC;AACP,CAAC;AAED;;;GAGG;AACH,KAAK,UAAU,iBAAiB,CAAC,KAAa;IAC5C,IAAI,KAAK;QAAE,MAAM,SAAS,CAAC,CAAC,KAAK,EAAE,IAAI,EAAE,KAAK,CAAC,CAAC,CAAC;IACjD,MAAM,SAAS,CAAC,CAAC,WAAW,EAAE,OAAO,EAAE,IAAI,CAAC,CAAC,CAAC;IAC9C,MAAM,SAAS,CAAC,CAAC,SAAS,EAAE,OAAO,EAAE,IAAI,CAAC,CAAC,CAAC;AAC9C,CAAC;AAED,KAAK,UAAU,yBAAyB,CAAC,SAAiB;IACxD,OAAO,2BAA2B,CAAC,SAAS,EAAE,oBAAoB,CAAC,CAAC;AACtE,CAAC;AAED;;;;;;GAMG;AACH,MAAM,gBAAgB,GAA0C;IAC9D,EAAE,EAAE,EAAE,sCAAsC,EAAE,MAAM,EAAE,oBAAoB,EAAE;IAC5E,EAAE,EAAE,EAAE,sBAAsB,EAAE,MAAM,EAAE,yBAAyB,EAAE;IACjE,EAAE,EAAE,EAAE,oDAAoD,EAAE,MAAM,EAAE,mBAAmB,EAAE;IACzF,EAAE,EAAE,EAAE,6DAA6D,EAAE,MAAM,EAAE,eAAe,EAAE;IAC9F,EAAE,EAAE,EAAE,4CAA4C,EAAE,MAAM,EAAE,sBAAsB,EAAE;IACpF,EAAE,EAAE,EAAE,2CAA2C,EAAE,MAAM,EAAE,sBAAsB,EAAE;IACnF,EAAE,EAAE,EAAE,sBAAsB,EAAE,MAAM,EAAE,wBAAwB,EAAE;IAChE,EAAE,EAAE,EAAE,8DAA8D,EAAE,MAAM,EAAE,sBAAsB,EAAE;IACtG,EAAE,EAAE,EAAE,+BAA+B,EAAE,MAAM,EAAE,cAAc,EAAE;IAC/D,EAAE,EAAE,EAAE,qEAAqE,EAAE,MAAM,EAAE,qBAAqB,EAAE;IAC5G,EAAE,EAAE,EAAE,uFAAuF,EAAE,MAAM,EAAE,qBAAqB,EAAE;IAC9H,gFAAgF;IAChF,EAAE,EAAE,EAAE,sDAAsD,EAAE,MAAM,EAAE,gBAAgB,EAAE;IACxF,EAAE,EAAE,EAAE,2BAA2B,EAAE,MAAM,EAAE,gBAAgB,EAAE;IAC7D,EAAE,EAAE,EAAE,4BAA4B,EAAE,MAAM,EAAE,uBAAuB,EAAE;IACrE,EAAE,EAAE,EAAE,qCAAqC,EAAE,MAAM,EAAE,uBAAuB,EAAE;CAC/E,CAAC;AAEF,MAAM,UAAU,mBAAmB,CAAC,GAAW;IAC7C,KAAK,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE,IAAI,gBAAgB,EAAE,CAAC;QAC9C,IAAI,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC;YAAE,OAAO,MAAM,CAAC;IAClC,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAED,SAAS,aAAa,CAAC,KAAc;IACnC,OAAO,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,EAAe,EAAE,CAAC,OAAO,CAAC,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;AAC7F,CAAC;AAED;2CAC2C;AAC3C,MAAM,YAAY,GAAG,IAAI,GAAG,IAAI,CAAC;AACjC,SAAS,UAAU,CAAC,GAAW;IAC7B,IAAI,GAAG,CAAC,MAAM,IAAI,YAAY;QAAE,OAAO,GAAG,CAAC;IAC3C,OAAO,MAAM,GAAG,CAAC,MAAM,GAAG,YAAY,wBAAwB,GAAG,CAAC,KAAK,CAAC,CAAC,YAAY,CAAC,EAAE,CAAC;AAC3F,CAAC;AAED,SAAS,UAAU,CAAC,CAAS;IAC3B,OAAO,IAAI,CAAC,CAAC,OAAO,CAAC,IAAI,EAAE,OAAO,CAAC,GAAG,CAAC;AACzC,CAAC;AAED;;;;;;;;;;;;;;GAcG;AACH,SAAS,iBAAiB,CAAC,IAA0C;IACnE,MAAM,OAAO,GAAG,iBAAiB,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IAChD,IAAI,IAAI,CAAC,UAAU,KAAK,kBAAkB,EAAE,CAAC;QAC3C,MAAM,OAAO,GAAG,CAAC,GAAG,IAAI,CAAC,YAAY,EAAE,GAAG,IAAI,CAAC,YAAY,CAAC,CAAC;QAC7D,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACvB,qEAAqE;YACrE,oEAAoE;YACpE,oEAAoE;YACpE,MAAM,OAAO,GAAG,cAAc,CAAC,OAAO,CAAC;gBACrC,CAAC,CAAC,OAAO;gBACT,CAAC,CAAC,CAAC,oBAAoB,EAAE,GAAG,OAAO,CAAC,CAAC;YACvC,MAAM,GAAG,GAAG;gBACV,8DAA8D;gBAC9D,GAAG,OAAO,CAAC,GAAG,CAAC,UAAU,CAAC;aAC3B,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;YACZ,OAAO,CAAC,GAAG,OAAO,EAAE,GAAG,CAAC,CAAC;QAC3B,CAAC;IACH,CAAC;IACD,OAAO,CAAC,GAAG,OAAO,EAAE,GAAG,iBAAiB,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC;AAC3D,CAAC;AAED,wEAAwE;AACxE,yEAAyE;AACzE,SAAS,cAAc,CAAC,OAAiB;IACvC,OAAO,OAAO,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,gDAAgD,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;AAC7F,CAAC;AAED,4EAA4E;AAC5E,4EAA4E;AAC5E,sEAAsE;AACtE,8EAA8E;AAC9E,6EAA6E;AAC7E,4EAA4E;AAC5E,MAAM,oBAAoB,GACxB,8CAA8C;IAC9C,0DAA0D;IAC1D,sEAAsE,CAAC;AAEzE,MAAM,OAAO,gBAAgB;IAQE;IAPZ,UAAU,CAAmC;IAC7C,cAAc,CAAS;IACvB,aAAa,CAAwB;IACrC,WAAW,CAAsB;IACjC,kBAAkB,CAA4C;IAC9D,aAAa,CAAS;IAEvC,YAA6B,IAA6B;QAA7B,SAAI,GAAJ,IAAI,CAAyB;QACxD,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,UAAU,IAAI,iBAAiB,CAAC;QACvD,IAAI,CAAC,cAAc,GAAG,qBAAqB,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;QACjE,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,aAAa,IAAI,oBAAoB,CAAC;QAChE,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,WAAW,IAAI,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC,CAAC,QAAQ,EAAE,OAAO,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC;QACpF,IAAI,CAAC,kBAAkB,GAAG,IAAI,CAAC,kBAAkB,IAAI,yBAAyB,CAAC;QAC/E,IAAI,CAAC,aAAa,GAAG,oBAAoB,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;IAChE,CAAC;IAED;;;OAGG;IACK,KAAK,CAAC,kBAAkB;QAC9B,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,aAAa,EAAE,CAAC;QACxC,IAAI,IAAI,IAAI,IAAI,CAAC,cAAc;YAAE,OAAO;QACxC,OAAO,CAAC,IAAI,CACV,8BAA8B,CAAC,IAAI,GAAG,GAAG,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,oCAAoC,CAC1F,CAAC;QACF,MAAM,IAAI,CAAC,WAAW,EAAE,CAAC;QACzB,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,aAAa,EAAE,CAAC;QAC9C,IAAI,UAAU,GAAG,IAAI,CAAC,cAAc,EAAE,CAAC;YACrC,MAAM,IAAI,qBAAqB,CAAC,UAAU,EAAE,IAAI,CAAC,cAAc,CAAC,CAAC;QACnE,CAAC;IACH,CAAC;IAED,KAAK,CAAC,OAAO,CAAC,IAA0C;QACtD,MAAM,IAAI,CAAC,kBAAkB,EAAE,CAAC;QAChC,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;YAC5C,IAAI,WAAW,GAAkB,IAAI,CAAC;YACtC,IAAI,CAAC;gBACH,WAAW,GAAG,MAAM,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YAC1D,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,MAAM,MAAM,GAAG,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;gBAChE,OAAO,CAAC,IAAI,CAAC,kDAAkD,IAAI,CAAC,KAAK,KAAK,MAAM,EAAE,CAAC,CAAC;YAC1F,CAAC;YACD,OAAO;gBACL,GAAG,MAAM;gBACT,GAAG,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;aACxC,CAAC;QACJ,CAAC;gBAAS,CAAC;YACT,uEAAuE;YACvE,uDAAuD;YACvD,IAAI,CAAC;gBACH,MAAM,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YACpC,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,MAAM,MAAM,GAAG,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;gBAChE,OAAO,CAAC,IAAI,CAAC,0CAA0C,IAAI,CAAC,KAAK,KAAK,MAAM,EAAE,CAAC,CAAC;YAClF,CAAC;QACH,CAAC;IACH,CAAC;IAEO,KAAK,CAAC,WAAW,CAAC,IAA0C;QAClE,MAAM,GAAG,GAAG,MAAM,OAAO,CAAC,IAAI,CAAC,MAAM,EAAE,EAAE,kBAAkB,CAAC,CAAC,CAAC;QAC9D,yEAAyE;QACzE,MAAM,WAAW,GAAG,IAAI,CAAC,WAAW,CAAC;QACrC,MAAM,QAAQ,GAAG,CAAC;gBAChB,WAAW,EAAE,WAAW;gBACxB,gEAAgE;gBAChE,qEAAqE;gBACrE,qEAAqE;gBACrE,+DAA+D;gBAC/D,IAAI,EAAE,cAAc;gBACpB,UAAU,EAAE,IAAI,CAAC,KAAK;gBACtB,YAAY,EAAE,IAAI,CAAC,YAAY;gBAC/B,YAAY,EAAE,IAAI,CAAC,YAAY;gBAC/B,UAAU,EAAE,IAAI,CAAC,UAAU;gBAC3B,cAAc,EAAE;oBACd,QAAQ,EAAE,iBAAiB,CAAC,IAAI,CAAC;oBACjC,UAAU,EAAE,IAAI,CAAC,UAAU;iBAC5B;aACF,CAAC,CAAC;QACH,0DAA0D;QAC1D,sEAAsE;QACtE,mEAAmE;QACnE,qDAAqD;QACrD,MAAM,eAAe,GAAG,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,KAAK,IAAI,CAAC;QACnF,MAAM,WAAW,GAAG,CAAC,EAAE,WAAW,EAAE,WAAW,EAAE,KAAK,EAAE,eAAe,EAAE,CAAC,CAAC;QAC3E,MAAM,YAAY,GAAG,IAAI,CAAC,GAAG,EAAE,WAAW,CAAC,CAAC;QAC5C,MAAM,eAAe,GAAG,IAAI,CAAC,GAAG,EAAE,cAAc,CAAC,CAAC;QAClD,MAAM,UAAU,GAAG,IAAI,CAAC,GAAG,EAAE,aAAa,CAAC,CAAC;QAC5C,MAAM,SAAS,CAAC,YAAY,EAAE,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC,CAAC;QACxD,MAAM,SAAS,CAAC,eAAe,EAAE,IAAI,CAAC,SAAS,CAAC,WAAW,CAAC,CAAC,CAAC;QAE9D,MAAM,MAAM,GAAG;YACb,IAAI,EAAE,cAAc;YACpB,QAAQ,EAAE,YAAY;YACtB,WAAW,EAAE,eAAe;YAC5B,eAAe,EAAE,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,IAAI,CAAC,CAAC;YAClD,eAAe,EAAE,UAAU;SAC5B,CAAC;QACF,MAAM,KAAK,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,IAAI,SAAS,EAAE,MAAM,EAAE;YAC5D,GAAG,EAAE,IAAI,CAAC,IAAI,CAAC,eAAe;YAC9B,KAAK,EAAE,CAAC,QAAQ,EAAE,MAAM,EAAE,MAAM,CAAC;YACjC,QAAQ,EAAE,OAAO,CAAC,QAAQ,KAAK,OAAO;YACtC,0EAA0E;YAC1E,yEAAyE;YACzE,wDAAwD;YACxD,GAAG,EAAE,EAAE,GAAG,OAAO,CAAC,GAAG,EAAE,uBAAuB,EAAE,aAAa,EAAE;SAChE,CAAC,CAAC;QACH,IAAI,MAAM,GAAG,EAAE,CAAC;QAChB,KAAK,CAAC,MAAM,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC,CAAC,EAAE,EAAE,GAAG,MAAM,IAAI,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;QAC5D,IAAI,MAAM,GAAG,EAAE,CAAC;QAChB,KAAK,CAAC,MAAM,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC,CAAC,EAAE,EAAE,GAAG,MAAM,IAAI,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;QAC5D,IAAI,QAAQ,GAAG,KAAK,CAAC;QACrB,IAAI,MAAM,GAAG,KAAK,CAAC;QACnB,IAAI,SAAoD,CAAC;QACzD,MAAM,SAAS,GAAG,CAAC,MAAsB,EAAQ,EAAE;YACjD,MAAM,GAAG,GAAG,KAAK,CAAC,GAAG,CAAC;YACtB,IAAI,CAAC,GAAG;gBAAE,OAAO;YACjB,IAAI,CAAC;gBACH,IAAI,OAAO,CAAC,QAAQ,KAAK,OAAO,EAAE,CAAC;oBACjC,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;gBACrB,CAAC;qBAAM,CAAC;oBACN,OAAO,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC;gBAC7B,CAAC;YACH,CAAC;YAAC,MAAM,CAAC;gBACP,IAAI,CAAC;oBAAC,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;gBAAC,CAAC;gBAAC,MAAM,CAAC,CAAA,CAAC;YACtC,CAAC;QACH,CAAC,CAAC;QACF,MAAM,YAAY,GAAG,IAAI,CAAC,aAAa,GAAG,CAAC;YACzC,CAAC,CAAC,UAAU,CAAC,GAAG,EAAE;gBACd,QAAQ,GAAG,IAAI,CAAC;gBAChB,SAAS,CAAC,SAAS,CAAC,CAAC;gBACrB,SAAS,GAAG,UAAU,CAAC,GAAG,EAAE;oBAC1B,IAAI,CAAC,MAAM;wBAAE,SAAS,CAAC,SAAS,CAAC,CAAC;gBACpC,CAAC,EAAE,MAAM,CAAC,CAAC;gBACX,SAAS,CAAC,KAAK,EAAE,EAAE,CAAC;YACtB,CAAC,EAAE,IAAI,CAAC,aAAa,CAAC;YACxB,CAAC,CAAC,SAAS,CAAC;QACd,YAAY,EAAE,KAAK,EAAE,EAAE,CAAC;QAExB,MAAM,QAAQ,GAAG,MAAM,IAAI,OAAO,CAAS,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;YAC7D,KAAK,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,OAAO,CAAC,IAAI,IAAI,CAAC,CAAC,CAAC,CAAC;YAChD,KAAK,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;QAC5B,CAAC,CAAC,CAAC,OAAO,CAAC,GAAG,EAAE;YACd,MAAM,GAAG,IAAI,CAAC;YACd,IAAI,YAAY;gBAAE,YAAY,CAAC,YAAY,CAAC,CAAC;YAC7C,IAAI,SAAS;gBAAE,YAAY,CAAC,SAAS,CAAC,CAAC;QACzC,CAAC,CAAC,CAAC;QAEH,IAAI,QAAQ,EAAE,CAAC;YACb,MAAM,EAAE,CAAC,GAAG,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;YAChD,MAAM,IAAI,sBAAsB,CAC9B,cAAc,EACd,+BAA+B,IAAI,CAAC,aAAa,OAAO,CAAC,MAAM,IAAI,MAAM,CAAC,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,EAAE,CACzF,CAAC;QACJ,CAAC;QAED,IAAI,MAAkD,CAAC;QACvD,IAAI,CAAC;YACH,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC,CAAkB,CAAC;QAC3E,CAAC;QAAC,MAAM,CAAC;YACP,MAAM,EAAE,CAAC,GAAG,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;YAChD,sEAAsE;YACtE,wBAAwB;YACxB,MAAM,IAAI,sBAAsB,CAC9B,mBAAmB,CAAC,MAAM,GAAG,MAAM,CAAC,IAAI,gBAAgB,EACxD,mBAAmB,QAAQ,KAAK,CAAC,MAAM,IAAI,MAAM,CAAC,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,EAAE,CACjE,CAAC;QACJ,CAAC;QAED,MAAM,KAAK,GAAG,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC;QAC9D,MAAM,IAAI,GAAG,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,aAAa,CAAC,KAAK,WAAW,CAAC,IAAI,KAAK,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;QAEnF,sEAAsE;QACtE,uEAAuE;QACvE,MAAM,WAAW,GAAG,OAAO,IAAI,CAAC,OAAO,CAAC,KAAK,QAAQ,CAAC,CAAC,CAAE,IAAI,CAAC,OAAO,CAAY,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAC9F,IAAI,WAAW,EAAE,CAAC;YAChB,MAAM,EAAE,CAAC,GAAG,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;YAChD,MAAM,IAAI,sBAAsB,CAAC,kBAAkB,EAAE,WAAW,CAAC,CAAC;QACpE,CAAC;QACD,IAAI,OAAO,IAAI,CAAC,WAAW,CAAC,KAAK,QAAQ,EAAE,CAAC;YAC1C,MAAM,EAAE,CAAC,GAAG,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;YAChD,MAAM,IAAI,sBAAsB,CAC9B,uBAAuB,EACvB,iCAAiC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,CACtE,CAAC;QACJ,CAAC;QAED,MAAM,aAAa,GAAG,IAAI,CAAC,WAAW,CAAW,CAAC;QAClD,yDAAyD;QACzD,sEAAsE;QACtE,MAAM,cAAc,GAAG,aAAa,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC,CAAC;QAChE,MAAM,oBAAoB,GAAG,aAAa,CAAC,IAAI,CAAC,0BAA0B,CAAC,CAAC,CAAC;QAE7E,wDAAwD;QACxD,qEAAqE;QACrE,yEAAyE;QACzE,8EAA8E;QAC9E,IAAI,OAAO,GAAG,EAAE,CAAC;QACjB,MAAM,OAAO,GAAG,IAAI,CAAC,UAAU,CAAC,CAAC;QACjC,IAAI,OAAO,OAAO,KAAK,QAAQ,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACtD,MAAM,QAAQ,GAAG,UAAU,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,eAAe,EAAE,OAAO,CAAC,CAAC;YAC1F,IAAI,CAAC;gBACH,OAAO,GAAG,MAAM,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;YAC7C,CAAC;YAAC,MAAM,CAAC;gBACP,OAAO,GAAG,EAAE,CAAC;YACf,CAAC;QACH,CAAC;QACD,0EAA0E;QAC1E,0EAA0E;QAC1E,uEAAuE;QACvE,MAAM,OAAO,GAAG,UAAU,CAAC,MAAM,GAAG,OAAO,CAAC,CAAC;QAE7C,MAAM,EAAE,CAAC,GAAG,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;QAEhD,yEAAyE;QACzE,0EAA0E;QAC1E,4EAA4E;QAC5E,0EAA0E;QAC1E,wEAAwE;QACxE,2EAA2E;QAC3E,+BAA+B;QAC/B,MAAM,YAAY,GAChB,cAAc,CAAC,MAAM,KAAK,CAAC,IAAI,oBAAoB,CAAC,MAAM,IAAI,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC;QACzF,IAAI,aAAa,KAAK,CAAC,IAAI,YAAY,EAAE,CAAC;YACxC,MAAM,WAAW,GAAG,mBAAmB,CAAC,OAAO,IAAI,MAAM,CAAC,CAAC;YAC3D,IAAI,WAAW,EAAE,CAAC;gBAChB,MAAM,IAAI,sBAAsB,CAAC,WAAW,EAAE,CAAC,OAAO,IAAI,MAAM,CAAC,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;YACjF,CAAC;QACH,CAAC;QAED,mEAAmE;QACnE,uEAAuE;QACvE,sEAAsE;QACtE,MAAM,QAAQ,GACZ,cAAc,CAAC,MAAM,KAAK,IAAI,CAAC,YAAY,CAAC,MAAM,IAAI,oBAAoB,CAAC,MAAM,KAAK,CAAC,CAAC;QAE1F,OAAO;YACL,YAAY,EAAE,QAAQ;YACtB,MAAM,EAAE,cAAc;YACtB,MAAM,EAAE,oBAAoB;YAC5B,GAAG,EAAE,OAAO;YACZ,QAAQ,EAAE,aAAa;SACxB,CAAC;IACJ,CAAC;CACF;AAED,SAAS,iBAAiB,CAAC,KAAoC;IAC7D,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;QAC9B,OAAO,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;IACrC,CAAC;IACD,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;QAC1B,OAAO,EAAE,CAAC;IACZ,CAAC;IACD,OAAO,KAAK,CAAC,MAAM,CAAC,CAAC,IAAI,EAAkB,EAAE,CAAC,OAAO,IAAI,KAAK,QAAQ,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;AACpG,CAAC"}
@@ -18,7 +18,7 @@
18
18
  import { type SpawnOptions } from 'node:child_process';
19
19
  import type { EnableResult, Harness, HarnessContext, HarnessEnableContext, HarnessEnableMetadata, ReadyStatus, Solution } from '../../types.js';
20
20
  import type { Task } from '../../../types/task.js';
21
- import { uploadToIpfs } from '../../../adapters/mech/ipfs.js';
21
+ import { fetchFromIpfs, uploadToIpfs } from '../../../adapters/mech/ipfs.js';
22
22
  import { type EvalRunner, type HfFetcher } from './index.js';
23
23
  import { type PythonEvalRunnerOptions } from './eval-runner.js';
24
24
  import { type CommandResult } from '../../../solver-types/_swe-rebench-v2-substrate.js';
@@ -40,6 +40,8 @@ export interface SweRebenchV2EvaluatorHarnessOptions {
40
40
  implStateDir?: string;
41
41
  /** IPFS registry URL used to pin test logs. Defaults to Autonolas gateway. */
42
42
  ipfsRegistryUrl?: string;
43
+ /** IPFS gateway URL used to fetch launcher-published vetted pool artifacts. */
44
+ ipfsGatewayUrl?: string;
43
45
  /**
44
46
  * Test-only injection points. Production runs use Node's child_process
45
47
  * + node:fs + the bundled HFFetcher / PythonEvalRunner.
@@ -63,6 +65,7 @@ export interface SweRebenchV2EvaluatorHarnessOptions {
63
65
  */
64
66
  makeRunner?: (opts: PythonEvalRunnerOptions) => EvalRunner;
65
67
  uploadToIpfs?: typeof uploadToIpfs;
68
+ fetchFromIpfs?: typeof fetchFromIpfs;
66
69
  /**
67
70
  * Override the state directory used for the {@link ValidatedPoolStore}
68
71
  * substrate-recheck. Defaults to `JINN_SWE_REBENCH_V2_STATE_DIR` env
@@ -83,6 +86,7 @@ export declare class SweRebenchV2EvaluatorHarness implements Harness {
83
86
  private readonly stub;
84
87
  private readonly implStateDir;
85
88
  private readonly ipfsRegistryUrl;
89
+ private readonly ipfsGatewayUrl;
86
90
  private readonly deps;
87
91
  /** The engine's claim-eligibility check calls `isReady()` per candidate
88
92
  * task per tick (~17 Hz potential). Cache the live `docker info` result
@@ -98,6 +102,9 @@ export declare class SweRebenchV2EvaluatorHarness implements Harness {
98
102
  * call and the disk-budget bead (jinn-mono-uy6v.11) is a no-op.
99
103
  */
100
104
  private cachedRunner;
105
+ private cachedFetcher;
106
+ private cachedPool;
107
+ private readonly publishedPoolArtifactCache;
101
108
  constructor(opts?: SweRebenchV2EvaluatorHarnessOptions);
102
109
  /**
103
110
  * Resolve the {@link EvalRunner} used for a `run()` invocation. The
@@ -107,6 +114,9 @@ export declare class SweRebenchV2EvaluatorHarness implements Harness {
107
114
  * tests that want a fresh mock per call.
108
115
  */
109
116
  private getRunner;
117
+ private getFetcher;
118
+ private loadPoolForRecheck;
119
+ private loadPublishedPoolArtifact;
110
120
  private isDockerReachable;
111
121
  supports(ctx: {
112
122
  solverType: string;
@@ -131,6 +141,7 @@ export declare class SweRebenchV2EvaluatorHarness implements Harness {
131
141
  * Throws {@link SkippableError} on any mismatch — never fails open.
132
142
  */
133
143
  private recheckSubstrate;
144
+ private loadPublishedPoolRow;
134
145
  run(ctx: HarnessContext): Promise<Solution>;
135
146
  }
136
147
  declare function runCommand(bin: string, args: string[], opts?: SpawnOptions): Promise<CommandResult>;