@jinn-network/client 0.1.6 → 0.1.7

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 (288) hide show
  1. package/CHANGELOG.md +33 -0
  2. package/deployments/deployment-jinn-mvi-l1-sepolia-fast.json +23 -4
  3. package/deployments/deployment-jinn-mvi-l1-sepolia.json +23 -4
  4. package/deployments/deployment-jinn-mvi-l2-baseSepolia.json +5 -4
  5. package/dist/adapters/mech/adapter.d.ts +38 -1
  6. package/dist/adapters/mech/adapter.js +241 -54
  7. package/dist/adapters/mech/adapter.js.map +1 -1
  8. package/dist/adapters/mech/contracts.d.ts +17 -4
  9. package/dist/adapters/mech/contracts.js +8 -2
  10. package/dist/adapters/mech/contracts.js.map +1 -1
  11. package/dist/adapters/mech/safe-revert.d.ts +20 -0
  12. package/dist/adapters/mech/safe-revert.js +12 -4
  13. package/dist/adapters/mech/safe-revert.js.map +1 -1
  14. package/dist/adapters/mech/safe.d.ts +5 -1
  15. package/dist/adapters/mech/safe.js +27 -8
  16. package/dist/adapters/mech/safe.js.map +1 -1
  17. package/dist/adapters/mech/verdict-code.d.ts +1 -0
  18. package/dist/adapters/mech/verdict-code.js +18 -0
  19. package/dist/adapters/mech/verdict-code.js.map +1 -1
  20. package/dist/api/admin-endpoint.d.ts +15 -3
  21. package/dist/api/admin-endpoint.js +24 -2
  22. package/dist/api/admin-endpoint.js.map +1 -1
  23. package/dist/api/bootstrap-endpoint.js +49 -0
  24. package/dist/api/bootstrap-endpoint.js.map +1 -1
  25. package/dist/api/codex-doctor-endpoint.d.ts +73 -0
  26. package/dist/api/codex-doctor-endpoint.js +177 -0
  27. package/dist/api/codex-doctor-endpoint.js.map +1 -0
  28. package/dist/api/discovery-endpoint.d.ts +1 -0
  29. package/dist/api/discovery-endpoint.js +26 -0
  30. package/dist/api/discovery-endpoint.js.map +1 -1
  31. package/dist/api/fleet-build.d.ts +1 -0
  32. package/dist/api/fleet-build.js +2 -1
  33. package/dist/api/fleet-build.js.map +1 -1
  34. package/dist/api/gather-status.d.ts +11 -0
  35. package/dist/api/gather-status.js +400 -4
  36. package/dist/api/gather-status.js.map +1 -1
  37. package/dist/api/hermes-doctor-endpoint.d.ts +117 -0
  38. package/dist/api/hermes-doctor-endpoint.js +229 -23
  39. package/dist/api/hermes-doctor-endpoint.js.map +1 -1
  40. package/dist/api/launcher-status.d.ts +21 -16
  41. package/dist/api/launcher-status.js +2 -1
  42. package/dist/api/launcher-status.js.map +1 -1
  43. package/dist/api/portfolio-v0-build.d.ts +10 -0
  44. package/dist/api/portfolio-v0-build.js +24 -5
  45. package/dist/api/portfolio-v0-build.js.map +1 -1
  46. package/dist/api/prediction-v1-build.d.ts +10 -0
  47. package/dist/api/prediction-v1-build.js +7 -1
  48. package/dist/api/prediction-v1-build.js.map +1 -1
  49. package/dist/api/server.d.ts +31 -1
  50. package/dist/api/server.js +68 -1
  51. package/dist/api/server.js.map +1 -1
  52. package/dist/api/setup-endpoints.d.ts +16 -0
  53. package/dist/api/setup-endpoints.js +78 -4
  54. package/dist/api/setup-endpoints.js.map +1 -1
  55. package/dist/api/setup-retry-endpoint.d.ts +19 -0
  56. package/dist/api/setup-retry-endpoint.js +32 -0
  57. package/dist/api/setup-retry-endpoint.js.map +1 -0
  58. package/dist/api/solvernets-endpoints.d.ts +8 -0
  59. package/dist/api/solvernets-endpoints.js +71 -43
  60. package/dist/api/solvernets-endpoints.js.map +1 -1
  61. package/dist/api/status-build.d.ts +72 -0
  62. package/dist/api/status-build.js +73 -18
  63. package/dist/api/status-build.js.map +1 -1
  64. package/dist/api/task-run-routing.d.ts +7 -0
  65. package/dist/api/task-run-routing.js +12 -0
  66. package/dist/api/task-run-routing.js.map +1 -0
  67. package/dist/api/task-runs-build.d.ts +21 -0
  68. package/dist/api/task-runs-build.js +14 -1
  69. package/dist/api/task-runs-build.js.map +1 -1
  70. package/dist/build-info.json +4 -4
  71. package/dist/build-meta.json +1 -1
  72. package/dist/chain-read-errors.d.ts +10 -0
  73. package/dist/chain-read-errors.js +15 -0
  74. package/dist/chain-read-errors.js.map +1 -1
  75. package/dist/cli/commands/auth.js +1 -1
  76. package/dist/cli/commands/auth.js.map +1 -1
  77. package/dist/cli/commands/create.js +3 -2
  78. package/dist/cli/commands/create.js.map +1 -1
  79. package/dist/cli/commands/doctor.d.ts +2 -0
  80. package/dist/cli/commands/doctor.js +2 -0
  81. package/dist/cli/commands/doctor.js.map +1 -1
  82. package/dist/cli/commands/rewards.js +11 -7
  83. package/dist/cli/commands/rewards.js.map +1 -1
  84. package/dist/cli/commands/solver-nets.js +24 -9
  85. package/dist/cli/commands/solver-nets.js.map +1 -1
  86. package/dist/cli/commands/status.js +1 -1
  87. package/dist/cli/commands/status.js.map +1 -1
  88. package/dist/cli/commands/tasks.js +86 -9
  89. package/dist/cli/commands/tasks.js.map +1 -1
  90. package/dist/cli/commands/update.d.ts +10 -0
  91. package/dist/cli/commands/update.js +36 -0
  92. package/dist/cli/commands/update.js.map +1 -1
  93. package/dist/cli/introspection-context.js +5 -0
  94. package/dist/cli/introspection-context.js.map +1 -1
  95. package/dist/cli/task-native-readiness.d.ts +3 -1
  96. package/dist/cli/task-native-readiness.js +28 -6
  97. package/dist/cli/task-native-readiness.js.map +1 -1
  98. package/dist/config.d.ts +106 -5
  99. package/dist/config.js +97 -18
  100. package/dist/config.js.map +1 -1
  101. package/dist/daemon/checkpoint-loop.d.ts +48 -0
  102. package/dist/daemon/checkpoint-loop.js +76 -0
  103. package/dist/daemon/checkpoint-loop.js.map +1 -0
  104. package/dist/daemon/creator.d.ts +1 -1
  105. package/dist/daemon/creator.js +7 -3
  106. package/dist/daemon/creator.js.map +1 -1
  107. package/dist/daemon/daemon.d.ts +19 -0
  108. package/dist/daemon/daemon.js +68 -1
  109. package/dist/daemon/daemon.js.map +1 -1
  110. package/dist/daemon/eviction-loop.d.ts +40 -0
  111. package/dist/daemon/eviction-loop.js +67 -0
  112. package/dist/daemon/eviction-loop.js.map +1 -0
  113. package/dist/daemon/jinn-claim-loop-wiring.d.ts +33 -0
  114. package/dist/daemon/jinn-claim-loop-wiring.js +40 -0
  115. package/dist/daemon/jinn-claim-loop-wiring.js.map +1 -0
  116. package/dist/daemon/jinn-claim-loop.d.ts +24 -17
  117. package/dist/daemon/jinn-claim-loop.js +77 -23
  118. package/dist/daemon/jinn-claim-loop.js.map +1 -1
  119. package/dist/daemon/skip-log-dedup.d.ts +69 -0
  120. package/dist/daemon/skip-log-dedup.js +106 -0
  121. package/dist/daemon/skip-log-dedup.js.map +1 -0
  122. package/dist/dashboard/assets/index-BUlE8F3Y.js +330 -0
  123. package/dist/dashboard/assets/index-blqc7eqq.css +32 -0
  124. package/dist/dashboard/index.html +2 -2
  125. package/dist/discovery/factory.d.ts +17 -5
  126. package/dist/discovery/factory.js +46 -18
  127. package/dist/discovery/factory.js.map +1 -1
  128. package/dist/discovery/http.js +142 -3
  129. package/dist/discovery/http.js.map +1 -1
  130. package/dist/discovery/onchain.d.ts +5 -0
  131. package/dist/discovery/onchain.js +407 -15
  132. package/dist/discovery/onchain.js.map +1 -1
  133. package/dist/discovery/types.d.ts +45 -1
  134. package/dist/discovery/types.js +8 -10
  135. package/dist/discovery/types.js.map +1 -1
  136. package/dist/discovery/with-fallback.d.ts +7 -0
  137. package/dist/discovery/with-fallback.js +10 -0
  138. package/dist/discovery/with-fallback.js.map +1 -1
  139. package/dist/earning/bootstrap.d.ts +92 -1
  140. package/dist/earning/bootstrap.js +203 -63
  141. package/dist/earning/bootstrap.js.map +1 -1
  142. package/dist/earning/contracts.d.ts +14 -0
  143. package/dist/earning/contracts.js +17 -5
  144. package/dist/earning/contracts.js.map +1 -1
  145. package/dist/earning/funding-plan.js +27 -18
  146. package/dist/earning/funding-plan.js.map +1 -1
  147. package/dist/earning/jinn-rewards.d.ts +46 -0
  148. package/dist/earning/jinn-rewards.js +32 -0
  149. package/dist/earning/jinn-rewards.js.map +1 -1
  150. package/dist/earning/safe-adapter.d.ts +2 -0
  151. package/dist/earning/safe-adapter.js +26 -12
  152. package/dist/earning/safe-adapter.js.map +1 -1
  153. package/dist/earning/store.d.ts +8 -0
  154. package/dist/earning/store.js.map +1 -1
  155. package/dist/earning/testnet-setup-migration.d.ts +12 -0
  156. package/dist/earning/testnet-setup-migration.js +27 -1
  157. package/dist/earning/testnet-setup-migration.js.map +1 -1
  158. package/dist/earning/types.d.ts +15 -0
  159. package/dist/erc8004/reputation.d.ts +8 -0
  160. package/dist/erc8004/reputation.js +22 -3
  161. package/dist/erc8004/reputation.js.map +1 -1
  162. package/dist/harnesses/cost-estimates.d.ts +145 -0
  163. package/dist/harnesses/cost-estimates.js +297 -0
  164. package/dist/harnesses/cost-estimates.js.map +1 -0
  165. package/dist/harnesses/engine/engine.d.ts +72 -0
  166. package/dist/harnesses/engine/engine.js +105 -8
  167. package/dist/harnesses/engine/engine.js.map +1 -1
  168. package/dist/harnesses/engine/persistence.d.ts +51 -1
  169. package/dist/harnesses/engine/persistence.js +118 -5
  170. package/dist/harnesses/engine/persistence.js.map +1 -1
  171. package/dist/harnesses/engine/work-dir-reaper.d.ts +65 -0
  172. package/dist/harnesses/engine/work-dir-reaper.js +100 -0
  173. package/dist/harnesses/engine/work-dir-reaper.js.map +1 -0
  174. package/dist/harnesses/impls/hermes-agent/adapter.js +40 -0
  175. package/dist/harnesses/impls/hermes-agent/adapter.js.map +1 -1
  176. package/dist/harnesses/impls/hermes-agent/bootstrap.d.ts +20 -0
  177. package/dist/harnesses/impls/hermes-agent/bootstrap.js +40 -6
  178. package/dist/harnesses/impls/hermes-agent/bootstrap.js.map +1 -1
  179. package/dist/harnesses/impls/hermes-agent/harness.d.ts +59 -1
  180. package/dist/harnesses/impls/hermes-agent/harness.js +104 -0
  181. package/dist/harnesses/impls/hermes-agent/harness.js.map +1 -1
  182. package/dist/harnesses/impls/index.d.ts +7 -0
  183. package/dist/harnesses/impls/index.js +16 -1
  184. package/dist/harnesses/impls/index.js.map +1 -1
  185. package/dist/harnesses/impls/learner/harness.d.ts +38 -4
  186. package/dist/harnesses/impls/learner/harness.js +96 -2
  187. package/dist/harnesses/impls/learner/harness.js.map +1 -1
  188. package/dist/harnesses/impls/learner/plugin-path.d.ts +0 -13
  189. package/dist/harnesses/impls/learner/plugin-path.js +35 -15
  190. package/dist/harnesses/impls/learner/plugin-path.js.map +1 -1
  191. package/dist/harnesses/impls/learner/types.d.ts +11 -0
  192. package/dist/harnesses/impls/stub.d.ts +58 -0
  193. package/dist/harnesses/impls/stub.js +89 -0
  194. package/dist/harnesses/impls/stub.js.map +1 -0
  195. package/dist/harnesses/impls/swe-rebench-v2-evaluator/eval-runner.d.ts +69 -50
  196. package/dist/harnesses/impls/swe-rebench-v2-evaluator/eval-runner.js +178 -93
  197. package/dist/harnesses/impls/swe-rebench-v2-evaluator/eval-runner.js.map +1 -1
  198. package/dist/harnesses/impls/swe-rebench-v2-evaluator/harness.d.ts +12 -1
  199. package/dist/harnesses/impls/swe-rebench-v2-evaluator/harness.js +121 -7
  200. package/dist/harnesses/impls/swe-rebench-v2-evaluator/harness.js.map +1 -1
  201. package/dist/harnesses/impls/swe-rebench-v2-evaluator/hf-fetcher.d.ts +15 -0
  202. package/dist/harnesses/impls/swe-rebench-v2-evaluator/hf-fetcher.js +54 -4
  203. package/dist/harnesses/impls/swe-rebench-v2-evaluator/hf-fetcher.js.map +1 -1
  204. package/dist/harnesses/impls/swe-rebench-v2-evaluator/index.d.ts +6 -0
  205. package/dist/harnesses/impls/swe-rebench-v2-evaluator/index.js +1 -1
  206. package/dist/harnesses/impls/swe-rebench-v2-evaluator/index.js.map +1 -1
  207. package/dist/harnesses/readiness-registry.js +9 -1
  208. package/dist/harnesses/readiness-registry.js.map +1 -1
  209. package/dist/main.js +371 -82
  210. package/dist/main.js.map +1 -1
  211. package/dist/observability/emit-event.d.ts +1 -1
  212. package/dist/observability/emit-event.js.map +1 -1
  213. package/dist/operator-errors.d.ts +7 -0
  214. package/dist/operator-errors.js +13 -1
  215. package/dist/operator-errors.js.map +1 -1
  216. package/dist/plugins/learner/.claude-plugin/plugin.json +9 -0
  217. package/dist/plugins/learner/.codex-plugin/plugin.json +39 -0
  218. package/dist/plugins/learner/AGENTS.md +40 -0
  219. package/dist/plugins/learner/CLAUDE.md +33 -0
  220. package/dist/plugins/learner/README.md +59 -0
  221. package/dist/plugins/learner/hooks/hooks.json +16 -0
  222. package/dist/plugins/learner/hooks/session-start +38 -0
  223. package/dist/plugins/learner/skills/learn/SKILL.md +412 -0
  224. package/dist/plugins/learner/skills/learn/analyst-prompt.md +68 -0
  225. package/dist/plugins/learner/skills/learn/consolidator-prompt.md +94 -0
  226. package/dist/plugins/learner/skills/learn/explorer-prompt.md +53 -0
  227. package/dist/plugins/learner/skills/learn/planner-prompt.md +87 -0
  228. package/dist/plugins/learner/skills/learn/promoter-prompt.md +113 -0
  229. package/dist/plugins/learner/skills/learn/step-worker-prompt.md +47 -0
  230. package/dist/plugins/learner/skills/learn/strategist-prompt.md +85 -0
  231. package/dist/restart-daemon.d.ts +90 -0
  232. package/dist/restart-daemon.js +95 -0
  233. package/dist/restart-daemon.js.map +1 -0
  234. package/dist/setup/halt-mode.d.ts +14 -0
  235. package/dist/setup/halt-mode.js +17 -0
  236. package/dist/setup/halt-mode.js.map +1 -0
  237. package/dist/solver-nets/prediction-operator-ux.js +43 -3
  238. package/dist/solver-nets/prediction-operator-ux.js.map +1 -1
  239. package/dist/solver-nets/registry.d.ts +1 -0
  240. package/dist/solver-nets/registry.js +1 -1
  241. package/dist/solver-nets/registry.js.map +1 -1
  242. package/dist/solver-types/_swe-rebench-v2-pool-cache.d.ts +58 -0
  243. package/dist/solver-types/_swe-rebench-v2-pool-cache.js +87 -0
  244. package/dist/solver-types/_swe-rebench-v2-pool-cache.js.map +1 -0
  245. package/dist/solver-types/_swe-rebench-v2-substrate.d.ts +1 -0
  246. package/dist/solver-types/_swe-rebench-v2-substrate.js +10 -0
  247. package/dist/solver-types/_swe-rebench-v2-substrate.js.map +1 -1
  248. package/dist/solver-types/_swe-rebench-v2-validated-pool.d.ts +65 -0
  249. package/dist/solver-types/_swe-rebench-v2-validated-pool.js +243 -26
  250. package/dist/solver-types/_swe-rebench-v2-validated-pool.js.map +1 -1
  251. package/dist/solver-types/swe-rebench-v2-auto.d.ts +22 -7
  252. package/dist/solver-types/swe-rebench-v2-auto.js +45 -20
  253. package/dist/solver-types/swe-rebench-v2-auto.js.map +1 -1
  254. package/dist/solver-types/swe-rebench-v2.d.ts +13 -2
  255. package/dist/solver-types/swe-rebench-v2.js +233 -94
  256. package/dist/solver-types/swe-rebench-v2.js.map +1 -1
  257. package/dist/solvernets/daemon-init.d.ts +10 -2
  258. package/dist/solvernets/daemon-init.js +22 -2
  259. package/dist/solvernets/daemon-init.js.map +1 -1
  260. package/dist/solvernets/launched-record-dispatcher.js +35 -7
  261. package/dist/solvernets/launched-record-dispatcher.js.map +1 -1
  262. package/dist/solvernets/store.d.ts +5 -0
  263. package/dist/solvernets/store.js +1 -0
  264. package/dist/solvernets/store.js.map +1 -1
  265. package/dist/store/store.d.ts +15 -0
  266. package/dist/store/store.js +118 -3
  267. package/dist/store/store.js.map +1 -1
  268. package/dist/tasks/sources.d.ts +18 -1
  269. package/dist/tasks/sources.js +33 -5
  270. package/dist/tasks/sources.js.map +1 -1
  271. package/dist/tx-retry.d.ts +151 -19
  272. package/dist/tx-retry.js +286 -32
  273. package/dist/tx-retry.js.map +1 -1
  274. package/dist/types/payloads/prediction-apy-v0.d.ts +5 -5
  275. package/dist/types/payloads/prediction-v0.d.ts +5 -5
  276. package/dist/types/task-document.d.ts +392 -0
  277. package/dist/types/task-document.js +10 -0
  278. package/dist/types/task-document.js.map +1 -1
  279. package/dist/types/task.d.ts +28 -0
  280. package/dist/util/extract-tx-hash.d.ts +14 -0
  281. package/dist/util/extract-tx-hash.js +19 -0
  282. package/dist/util/extract-tx-hash.js.map +1 -0
  283. package/dist/vendor/@jinn-network/sdk/dist/contracts.js +1 -1
  284. package/dist/vendor/@jinn-network/sdk/dist/solvernets/manifest-schema.d.ts +3 -0
  285. package/dist/vendor/@jinn-network/sdk/dist/solvernets/manifest-schema.js +1 -0
  286. package/package.json +29 -12
  287. package/dist/dashboard/assets/index-DOlzFN8a.css +0 -32
  288. package/dist/dashboard/assets/index-NkZ7CTAT.js +0 -140
@@ -11,6 +11,7 @@ import { createHash, randomUUID } from 'node:crypto';
11
11
  import { keccak256, toBytes } from 'viem';
12
12
  import { TaskRunPersistence } from './persistence.js';
13
13
  import { TaskRunState, MissingEvidenceHashError } from './state.js';
14
+ import { reapWorkDirs, DEFAULT_ORPHAN_MAX_AGE_MS, } from './work-dir-reaper.js';
14
15
  import { provisionWorkingDir, provisionImplStateDir, walkArtifacts, uploadArtifacts, } from './packaging.js';
15
16
  import { DONATION_ARTIFACT_ENCODING } from './artifact-scrub.js';
16
17
  import { assembleAndSignEnvelope, } from './envelope-assembly.js';
@@ -109,6 +110,8 @@ export class TaskEngine {
109
110
  stopPromise = new Promise((resolve) => {
110
111
  this.stopResolve = resolve;
111
112
  });
113
+ /** Working-dir reaper tuning (issue #320). */
114
+ workDirReaperOpts;
112
115
  constructor(opts) {
113
116
  this.persistence = new TaskRunPersistence(opts.store.db);
114
117
  this.store = opts.store;
@@ -124,6 +127,10 @@ export class TaskEngine {
124
127
  this.reputationFeedback = opts.reputationFeedback;
125
128
  this.operatorConfig = opts.operatorConfig;
126
129
  this.harnessMode = opts.harnessMode ?? 'train';
130
+ this.workDirReaperOpts = {
131
+ orphanMaxAgeMs: opts.workDirReaper?.orphanMaxAgeMs ?? DEFAULT_ORPHAN_MAX_AGE_MS,
132
+ disabled: opts.workDirReaper?.disabled ?? false,
133
+ };
127
134
  }
128
135
  // ── Public API ──────────────────────────────────────────────────────────────
129
136
  /**
@@ -137,8 +144,29 @@ export class TaskEngine {
137
144
  console.log(`[harness-engine] observed task ${input.requestId} solverType=${input.solverType ?? 'null'}`);
138
145
  }
139
146
  }
147
+ /**
148
+ * Pre-claim acceptance check used by the daemon's engine-watcher loop.
149
+ *
150
+ * Performance contract (issue #398): this runs once per task announcement,
151
+ * on the engine-watcher hot path, for every observed task. It MUST NOT
152
+ * perform per-task blocking I/O. In particular it does not probe
153
+ * `impl.isReady()` — for the Hermes harness that runs two blocking
154
+ * `spawnSync` child processes, so a backlog would pay per-task blocking
155
+ * spawns and starve the daemon event loop.
156
+ *
157
+ * Harness readiness for the claim gate is instead served O(1) from the
158
+ * daemon's cached `HarnessReadinessRegistry` snapshot: the engine-watcher
159
+ * loop calls `gateClaimByReadiness(...)` immediately after `canAcceptTask`
160
+ * returns. A ~tickIntervalMs-stale snapshot is acceptable — harness
161
+ * readiness changes on a minutes scale (auth/config) and the daemon
162
+ * already trusts that cached registry for its post-`canAcceptTask` gate.
163
+ *
164
+ * `claim()` (the DISCOVERED → CLAIMED transition) still probes
165
+ * `impl.isReady()` directly — it runs once per claimed task, not per
166
+ * announcement, and is the authoritative pre-execution gate.
167
+ */
140
168
  async canAcceptTask(input) {
141
- const reason = await this.runnableFailureReason(input.solverType, input.taskRole ?? 'restoration', input.task);
169
+ const reason = await this.runnableFailureReason(input.solverType, input.taskRole ?? 'restoration', input.task, undefined, { skipReadinessProbe: true });
142
170
  return reason ? { ok: false, reason } : { ok: true };
143
171
  }
144
172
  /**
@@ -186,6 +214,10 @@ export class TaskEngine {
186
214
  void processPromise.then((report) => this.logProcessReport('tick', report));
187
215
  }
188
216
  }
217
+ // Reap the working directories of tasks that have reached a terminal
218
+ // state. Cheap (one readdir + a few rmSync) and idempotent, so it runs
219
+ // every tick — there is no separate reaper loop to keep alive or crash.
220
+ this.reapWorkDirsNow();
189
221
  if (!wait)
190
222
  return;
191
223
  const reports = await Promise.all(scheduled);
@@ -193,6 +225,41 @@ export class TaskEngine {
193
225
  this.logProcessReport('tick', report);
194
226
  }
195
227
  }
228
+ /**
229
+ * Reap on-disk per-task working directories (issue #320).
230
+ *
231
+ * Removes the scratch directory of every task in a terminal state
232
+ * (COMPLETE / FAILED) and any crash-orphaned directory older than the
233
+ * configured max age. In-flight tasks are never touched. Safe to call at
234
+ * any time; never throws (filesystem errors are collected into the report).
235
+ *
236
+ * Called automatically every `tick()`; also exposed for the one-shot
237
+ * cleanup script and for tests.
238
+ */
239
+ reapWorkDirsNow() {
240
+ const empty = { removed: [], protected: [], scanned: 0, errors: [] };
241
+ if (this.workDirReaperOpts.disabled)
242
+ return empty;
243
+ // Read the in-flight / terminal partition as a single atomic snapshot.
244
+ // Two separate queries would leave a TOCTOU window: a task transitioning
245
+ // DELIVERING → COMPLETE between the reads could be classified terminal and
246
+ // have its working directory deleted while deliver() still needs it.
247
+ const { terminal: terminalRequestIds, inFlight: inFlightRequestIds } = this.persistence.getReaperPartition();
248
+ const report = reapWorkDirs({
249
+ workingDirRoot: this.paths.workingDirRoot,
250
+ terminalRequestIds,
251
+ inFlightRequestIds,
252
+ orphanMaxAgeMs: this.workDirReaperOpts.orphanMaxAgeMs,
253
+ });
254
+ if (report.removed.length > 0) {
255
+ console.log(`[harness-engine] work-dir reaper removed ${report.removed.length} ` +
256
+ `terminal/orphaned task dir(s) under ${this.paths.workingDirRoot}`);
257
+ }
258
+ for (const e of report.errors) {
259
+ console.warn(`[harness-engine] work-dir reaper failed to remove ${e.requestId}: ${e.error}`);
260
+ }
261
+ return report;
262
+ }
196
263
  /**
197
264
  * Drive `tick()` on a fixed interval until `stop()` is called.
198
265
  * Errors thrown by tick() itself are logged and do not stop the loop.
@@ -350,6 +417,7 @@ export class TaskEngine {
350
417
  }
351
418
  if (current.state === TaskRunState.DISCOVERED) {
352
419
  this.persistence.transition(task.requestId, TaskRunState.CLAIMED);
420
+ console.log(`[harness-engine] ${task.requestId} DISCOVERED → CLAIMED`);
353
421
  }
354
422
  else {
355
423
  console.log(`[harness-engine] ${task.requestId}: claim completed but state is already ${current.state}; skipping CLAIMED transition`);
@@ -515,7 +583,18 @@ export class TaskEngine {
515
583
  // legacy solverType-keyed gate downstream still runs.
516
584
  return null;
517
585
  }
518
- async runnableFailureReason(solverType, role, task, currentRequestId) {
586
+ /**
587
+ * Shared eligibility evaluation behind both `canAcceptTask` and `claim`.
588
+ *
589
+ * `opts.skipReadinessProbe` (issue #398): when true, the per-task
590
+ * `impl.isReady()` probe is skipped. The engine-watcher's `canAcceptTask`
591
+ * sets this — it relies on the daemon's cached `HarnessReadinessRegistry`
592
+ * (via `gateClaimByReadiness`) for the readiness gate instead of a
593
+ * blocking per-announcement probe. `claim()` leaves it false so the
594
+ * DISCOVERED → CLAIMED transition still runs the authoritative readiness
595
+ * probe (once per claimed task, not per announcement).
596
+ */
597
+ async runnableFailureReason(solverType, role, task, currentRequestId, opts = {}) {
519
598
  // Per-launch operator-eligibility filter (Task 28 of
520
599
  // `spec/2026-05-05-solvernet-creation-and-launch.md` §14). When the
521
600
  // operator has explicitly joined a set of SolverNets — keyed by the
@@ -536,10 +615,21 @@ export class TaskEngine {
536
615
  // `solverType` parameter for legacy pre-migration paths and PersistedTaskRun
537
616
  // rows that pre-date `contractId`. See `routingKeyForTask`.
538
617
  const routingKey = this.routingKeyForTask(task, solverType);
618
+ // Scope the single-flight gate to one SolverNet. Two distinct SolverNets
619
+ // that share the same `contract.id.version` routing key (e.g. mainline
620
+ // SWE-rebench-v2 and an isolated SWE-rebench-v2 at a separate manifest
621
+ // CID) used to collide on one shared slot — fixed by adding
622
+ // `manifestCid` to the gate. `null` means "tasks without a manifest CID"
623
+ // (legacy / health-check), which form their own bucket; `undefined` (no
624
+ // task at all) preserves the legacy routing-key-only behaviour.
625
+ const manifestCidForGate = task
626
+ ? (task.solverNetManifestCid ?? null)
627
+ : undefined;
539
628
  if (routingKey && this.persistence.hasInFlightFor({
540
629
  solverType: routingKey,
541
630
  taskRole: role,
542
631
  excludeRequestId: currentRequestId,
632
+ manifestCid: manifestCidForGate,
543
633
  })) {
544
634
  return `another ${routingKey}/${role} task is already in flight`;
545
635
  }
@@ -580,7 +670,12 @@ export class TaskEngine {
580
670
  }
581
671
  }
582
672
  }
583
- if (impl.isReady) {
673
+ // The per-task `impl.isReady()` probe is the only blocking I/O on this
674
+ // path (the Hermes harness spawns child processes synchronously). The
675
+ // engine-watcher's `canAcceptTask` skips it — readiness is gated O(1) by
676
+ // the daemon's cached `HarnessReadinessRegistry` right after this call.
677
+ // `claim()` keeps it as the authoritative pre-execution check.
678
+ if (!opts.skipReadinessProbe && impl.isReady) {
584
679
  const status = await impl.isReady({ solverType: routingKey, role });
585
680
  if (!status.ready) {
586
681
  return `impl '${impl.name}' not ready: ${status.reason ?? 'unknown'}${status.nextStep?.cli ? ` — run \`${status.nextStep.cli}\`` : ''}`;
@@ -1483,13 +1578,15 @@ export class TaskEngine {
1483
1578
  * throws, the task is marked FAILED with the error message.
1484
1579
  */
1485
1580
  async _runTransition(task, fn) {
1486
- const oldState = task.state;
1581
+ // Each transition method (claim, takePreSnapshot, runImpl, pack, deliver)
1582
+ // logs its own domain-specific line on success (e.g. with manifestCid,
1583
+ // deliveryTx, impl name). We deliberately don't emit a generic
1584
+ // `oldState → newState` line here: doing so produced duplicate
1585
+ // transition lines in the operator log (jinn-mono-kzan). On failure,
1586
+ // the catch below marks the task FAILED and rethrows so the caller can
1587
+ // surface the error.
1487
1588
  try {
1488
1589
  await fn();
1489
- const updated = this.persistence.getByRequestId(task.requestId);
1490
- if (updated && updated.state !== oldState) {
1491
- console.log(`[harness-engine] ${task.requestId} ${oldState} → ${updated.state}`);
1492
- }
1493
1590
  }
1494
1591
  catch (err) {
1495
1592
  const reason = err instanceof Error ? err.message : String(err);
@@ -1 +1 @@
1
- {"version":3,"file":"engine.js","sourceRoot":"","sources":["../../../src/harnesses/engine/engine.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"engine.js","sourceRoot":"","sources":["../../../src/harnesses/engine/engine.ts"],"names":[],"mappings":"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"}
@@ -24,7 +24,7 @@ export declare class ConcurrentTransitionError extends Error {
24
24
  readonly attemptedNewState: string;
25
25
  constructor(requestId: string, expectedState: TaskRunState, attemptedNewState: string);
26
26
  }
27
- export declare const TASK_RUNS_SCHEMA = "\nCREATE TABLE IF NOT EXISTS task_runs (\n request_id TEXT PRIMARY KEY,\n task_id TEXT,\n attempt_index INTEGER,\n task_cid TEXT NOT NULL,\n onchain_creation_tx TEXT NOT NULL,\n onchain_creation_block INTEGER NOT NULL,\n solver_type TEXT,\n task_role TEXT, -- 'restoration' | 'evaluation' | NULL (legacy)\n impl_name TEXT,\n\n state TEXT NOT NULL,\n state_updated_at INTEGER NOT NULL,\n\n working_dir TEXT,\n impl_state_dir TEXT,\n\n window_start_ts INTEGER NOT NULL,\n window_end_ts INTEGER NOT NULL,\n\n pre_snapshot_captured_at INTEGER,\n pre_snapshot_payload TEXT,\n post_snapshot_captured_at INTEGER,\n post_snapshot_payload TEXT,\n fills_payload TEXT,\n gating_claim TEXT,\n informational_claim TEXT,\n\n artifact_cids TEXT,\n manifest_cid TEXT,\n delivery_tx_hash TEXT,\n\n -- Additive columns (schema migration 2026-04-17):\n -- manifest_generated_at: persisted once at first PACKAGING entry; reused on\n -- retry to keep manifest CID deterministic (idempotent PACKAGING).\n -- evidence_hash: keccak256 of the signed manifest canonical JSON; dedicated\n -- column replaces the former _evidenceHash stash in informational_claim.\n manifest_generated_at INTEGER,\n evidence_hash TEXT,\n\n -- Additive column (schema migration 2026-04-17, full Task threading):\n -- task_payload: full Task JSON, captured at observe() time.\n -- NULL for pre-migration rows (legacy fallback in engine consumers).\n task_payload TEXT,\n\n -- Additive column (added by WT-C for PACKAGING recovery fidelity):\n -- solution_outputs_json: serialised Solution persisted before the\n -- RUNNING \u2192 PACKAGING transition. Enables pack() to recover solution outputs\n -- after a crash without re-executing the impl. NULL once pack() succeeds.\n solution_outputs_json TEXT,\n runtime_plugins_json TEXT,\n\n -- Additive columns for ERC-8004 payload v2 (jinn-mono-9fe5):\n -- executor_mode: 'train' | 'frozen', captured by pack() from the freeze-fence\n -- and reused by deliver() to emit a payload v2 setMetadata.\n -- executor_code_digest: sha256:<hex> form, same source.\n -- NULL for pre-migration rows; deliver() falls back to the v1 encoder.\n executor_mode TEXT,\n executor_code_digest TEXT,\n\n failure_reason TEXT,\n failure_at INTEGER\n);\n\nCREATE INDEX IF NOT EXISTS idx_task_runs_state\n ON task_runs(state);\n\nCREATE INDEX IF NOT EXISTS idx_task_runs_window_start_ts\n ON task_runs(window_start_ts);\n";
27
+ export declare const TASK_RUNS_SCHEMA = "\nCREATE TABLE IF NOT EXISTS task_runs (\n request_id TEXT PRIMARY KEY,\n task_id TEXT,\n attempt_index INTEGER,\n task_cid TEXT NOT NULL,\n onchain_creation_tx TEXT NOT NULL,\n onchain_creation_block INTEGER NOT NULL,\n solver_type TEXT,\n task_role TEXT, -- 'restoration' | 'evaluation' | NULL (legacy)\n impl_name TEXT,\n\n state TEXT NOT NULL,\n state_updated_at INTEGER NOT NULL,\n\n working_dir TEXT,\n impl_state_dir TEXT,\n\n window_start_ts INTEGER NOT NULL,\n window_end_ts INTEGER NOT NULL,\n run_started_at INTEGER,\n\n pre_snapshot_captured_at INTEGER,\n pre_snapshot_payload TEXT,\n post_snapshot_captured_at INTEGER,\n post_snapshot_payload TEXT,\n fills_payload TEXT,\n gating_claim TEXT,\n informational_claim TEXT,\n\n artifact_cids TEXT,\n manifest_cid TEXT,\n delivery_tx_hash TEXT,\n\n -- Additive columns (schema migration 2026-04-17):\n -- manifest_generated_at: persisted once at first PACKAGING entry; reused on\n -- retry to keep manifest CID deterministic (idempotent PACKAGING).\n -- evidence_hash: keccak256 of the signed manifest canonical JSON; dedicated\n -- column replaces the former _evidenceHash stash in informational_claim.\n manifest_generated_at INTEGER,\n evidence_hash TEXT,\n\n -- Additive column (schema migration 2026-05-23, in-flight gate fix):\n -- solver_net_manifest_cid: the SolverNet manifest CID this task was\n -- posted under (Task.solverNetManifestCid). Distinct from the artifact\n -- manifest_cid above, which is the PACKAGING output CID. Used by\n -- hasInFlightFor so distinct SolverNets that share the same routing key\n -- (e.g. two SWE-rebench-v2 launches at different manifestCids) each hold\n -- their own in-flight slot.\n solver_net_manifest_cid TEXT,\n\n -- Additive column (schema migration 2026-04-17, full Task threading):\n -- task_payload: full Task JSON, captured at observe() time.\n -- NULL for pre-migration rows (legacy fallback in engine consumers).\n task_payload TEXT,\n\n -- Additive column (added by WT-C for PACKAGING recovery fidelity):\n -- solution_outputs_json: serialised Solution persisted before the\n -- RUNNING \u2192 PACKAGING transition. Enables pack() to recover solution outputs\n -- after a crash without re-executing the impl. NULL once pack() succeeds.\n solution_outputs_json TEXT,\n runtime_plugins_json TEXT,\n\n -- Additive columns for ERC-8004 payload v2 (jinn-mono-9fe5):\n -- executor_mode: 'train' | 'frozen', captured by pack() from the freeze-fence\n -- and reused by deliver() to emit a payload v2 setMetadata.\n -- executor_code_digest: sha256:<hex> form, same source.\n -- NULL for pre-migration rows; deliver() falls back to the v1 encoder.\n executor_mode TEXT,\n executor_code_digest TEXT,\n\n failure_reason TEXT,\n failure_at INTEGER\n);\n\nCREATE INDEX IF NOT EXISTS idx_task_runs_state\n ON task_runs(state);\n\nCREATE INDEX IF NOT EXISTS idx_task_runs_window_start_ts\n ON task_runs(window_start_ts);\n";
28
28
  /** Input when first observing an task from an on-chain event. */
29
29
  export interface PersistedTaskRunInput {
30
30
  requestId: string;
@@ -38,6 +38,8 @@ export interface PersistedTaskRunInput {
38
38
  taskRole?: 'restoration' | 'evaluation';
39
39
  windowStartTs: number;
40
40
  windowEndTs: number;
41
+ /** Unix ms timestamp captured when this operator successfully claimed the run. */
42
+ runStartedAt?: number;
41
43
  /**
42
44
  * Full Task payload, captured at observe() time.
43
45
  * Required: production callers always thread it (daemon.ts); making this
@@ -56,6 +58,8 @@ export interface PersistedTaskRun {
56
58
  onchainCreationTx: string;
57
59
  onchainCreationBlock: number;
58
60
  solverType: string | null;
61
+ /** SolverNet manifest CID this task was posted under; null for legacy rows. */
62
+ solverNetManifestCid: string | null;
59
63
  taskRole: 'restoration' | 'evaluation' | null;
60
64
  implName: string | null;
61
65
  state: TaskRunState;
@@ -64,6 +68,8 @@ export interface PersistedTaskRun {
64
68
  implStateDir: string | null;
65
69
  windowStartTs: number;
66
70
  windowEndTs: number;
71
+ /** Unix ms timestamp captured when this operator successfully claimed the run. */
72
+ runStartedAt: number | null;
67
73
  preSnapshotCapturedAt: number | null;
68
74
  preSnapshotPayload: unknown | null;
69
75
  postSnapshotCapturedAt: number | null;
@@ -174,10 +180,54 @@ export declare class TaskRunPersistence {
174
180
  getByState(state: TaskRunState): PersistedTaskRun[];
175
181
  /** Fetch all in-flight tasks (not in any terminal state). */
176
182
  getInFlight(): PersistedTaskRun[];
183
+ /**
184
+ * Fetch all terminal tasks (COMPLETE or FAILED).
185
+ * Used by the working-dir reaper (issue #320) to decide which on-disk
186
+ * scratch directories are safe to delete.
187
+ */
188
+ getTerminal(): PersistedTaskRun[];
189
+ /**
190
+ * Atomic snapshot for the working-dir reaper (issue #320): every task run's
191
+ * request ID partitioned into terminal (COMPLETE / FAILED) vs in-flight.
192
+ *
193
+ * The reaper must NOT read in-flight and terminal sets as two separate
194
+ * queries — a task transitioning DELIVERING → COMPLETE between the two reads
195
+ * could be seen by neither (or, worse, classified terminal) and have its
196
+ * working directory deleted while `deliver()` still references files in it.
197
+ * A single `SELECT` is a single statement, so the snapshot is internally
198
+ * consistent: every row is observed at exactly one state.
199
+ */
200
+ getReaperPartition(): {
201
+ terminal: Set<string>;
202
+ inFlight: Set<string>;
203
+ };
204
+ /**
205
+ * Single-flight gate: is there a non-terminal task_run for the given
206
+ * routing key + role, in the same SolverNet?
207
+ *
208
+ * `manifestCid` scopes the gate to one SolverNet:
209
+ * - When a string is supplied, only rows whose `solver_net_manifest_cid`
210
+ * equals it count. Two distinct SolverNets that happen to share the
211
+ * same `contract.id.version` routing key (e.g. mainline SWE-rebench-v2
212
+ * and an isolated SWE-rebench-v2 launched at a separate manifestCid)
213
+ * each hold their own in-flight slot.
214
+ * - When `null` is supplied, only rows with NULL `solver_net_manifest_cid`
215
+ * count (legacy / health-check tasks form their own bucket).
216
+ * - When omitted (`undefined`), the manifest filter is dropped — the
217
+ * historical routing-key-only behaviour. Production callers always
218
+ * pass an explicit value; this path exists for legacy tests.
219
+ *
220
+ * The bug this fix closes: an operator joined to multiple SolverNets that
221
+ * share the same routing key had ONE in-flight slot across all of them, so
222
+ * a task in SolverNet B was silently rejected with
223
+ * `another <routingKey>/<role> task is already in flight` whenever the
224
+ * operator was busy on SolverNet A.
225
+ */
177
226
  hasInFlightFor(args: {
178
227
  solverType: string;
179
228
  taskRole: 'restoration' | 'evaluation';
180
229
  excludeRequestId?: string;
230
+ manifestCid?: string | null;
181
231
  }): boolean;
182
232
  /**
183
233
  * Persist `deliveryTxHash` without triggering a state transition (state