@jinn-network/client 0.1.2 → 0.1.3-canary.216cf7e6

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 (1461) hide show
  1. package/CHANGELOG.md +20 -0
  2. package/CONTRIBUTING.md +9 -2
  3. package/README.md +67 -47
  4. package/deployments/deployment-jinn-mvi-l1-sepolia-fast.json +36 -0
  5. package/deployments/deployment-jinn-mvi-l1-sepolia.json +36 -0
  6. package/deployments/deployment-jinn-mvi-l2-baseSepolia.json +12 -0
  7. package/deployments/deployment-phase1b-mech-baseSepolia-fast.json +3 -3
  8. package/deployments/deployment-stolas-l2-baseSepolia-fast.json +1 -1
  9. package/deployments/deployment-task-coordinator-router-v3-baseSepolia-fast.json +38 -0
  10. package/dist/adapters/adapter.d.ts +19 -8
  11. package/dist/adapters/local/adapter.d.ts +10 -9
  12. package/dist/adapters/local/adapter.js +52 -79
  13. package/dist/adapters/local/adapter.js.map +1 -1
  14. package/dist/adapters/mech/adapter.d.ts +41 -15
  15. package/dist/adapters/mech/adapter.js +623 -362
  16. package/dist/adapters/mech/adapter.js.map +1 -1
  17. package/dist/adapters/mech/contracts.d.ts +82 -20
  18. package/dist/adapters/mech/contracts.js +374 -100
  19. package/dist/adapters/mech/contracts.js.map +1 -1
  20. package/dist/adapters/mech/ipfs.d.ts +66 -12
  21. package/dist/adapters/mech/ipfs.js +165 -30
  22. package/dist/adapters/mech/ipfs.js.map +1 -1
  23. package/dist/adapters/mech/safe-revert.d.ts +40 -0
  24. package/dist/adapters/mech/safe-revert.js +261 -0
  25. package/dist/adapters/mech/safe-revert.js.map +1 -0
  26. package/dist/adapters/mech/safe.js +48 -22
  27. package/dist/adapters/mech/safe.js.map +1 -1
  28. package/dist/adapters/mech/task-subgraph.d.ts +23 -0
  29. package/dist/adapters/mech/task-subgraph.js +157 -0
  30. package/dist/adapters/mech/task-subgraph.js.map +1 -0
  31. package/dist/adapters/mech/types.d.ts +263 -84
  32. package/dist/adapters/mech/types.js +125 -50
  33. package/dist/adapters/mech/types.js.map +1 -1
  34. package/dist/agent/agent-ws.d.ts +57 -0
  35. package/dist/agent/agent-ws.js +301 -0
  36. package/dist/agent/agent-ws.js.map +1 -0
  37. package/dist/agent/auto-mode-detect.d.ts +6 -0
  38. package/dist/agent/auto-mode-detect.js +44 -0
  39. package/dist/agent/auto-mode-detect.js.map +1 -0
  40. package/dist/agent/operator-claude.d.ts +22 -0
  41. package/dist/agent/operator-claude.js +176 -0
  42. package/dist/agent/operator-claude.js.map +1 -0
  43. package/dist/api/admin-endpoint.d.ts +12 -0
  44. package/dist/api/admin-endpoint.js +71 -0
  45. package/dist/api/admin-endpoint.js.map +1 -0
  46. package/dist/api/agent-binding-endpoint.d.ts +26 -0
  47. package/dist/api/agent-binding-endpoint.js +28 -0
  48. package/dist/api/agent-binding-endpoint.js.map +1 -0
  49. package/dist/api/bootstrap-endpoint.d.ts +25 -0
  50. package/dist/api/bootstrap-endpoint.js +104 -0
  51. package/dist/api/bootstrap-endpoint.js.map +1 -0
  52. package/dist/api/captures.d.ts +22 -0
  53. package/dist/api/captures.js +88 -0
  54. package/dist/api/captures.js.map +1 -0
  55. package/dist/api/events-endpoint.d.ts +9 -0
  56. package/dist/api/events-endpoint.js +46 -0
  57. package/dist/api/events-endpoint.js.map +1 -0
  58. package/dist/api/fleet-build.d.ts +1 -1
  59. package/dist/api/fleet-build.js +17 -8
  60. package/dist/api/fleet-build.js.map +1 -1
  61. package/dist/api/gather-status.d.ts +16 -1
  62. package/dist/api/gather-status.js +194 -3
  63. package/dist/api/gather-status.js.map +1 -1
  64. package/dist/api/handshake.d.ts +17 -0
  65. package/dist/api/handshake.js +28 -0
  66. package/dist/api/handshake.js.map +1 -0
  67. package/dist/api/harness-status-endpoint.d.ts +20 -0
  68. package/dist/api/harness-status-endpoint.js +13 -0
  69. package/dist/api/harness-status-endpoint.js.map +1 -0
  70. package/dist/api/history-build.d.ts +2 -2
  71. package/dist/api/history-build.js +3 -3
  72. package/dist/api/history-build.js.map +1 -1
  73. package/dist/api/launcher-endpoints.d.ts +43 -0
  74. package/dist/api/launcher-endpoints.js +50 -0
  75. package/dist/api/launcher-endpoints.js.map +1 -0
  76. package/dist/api/launcher-status.d.ts +93 -0
  77. package/dist/api/launcher-status.js +84 -0
  78. package/dist/api/launcher-status.js.map +1 -0
  79. package/dist/api/launcher-tasks.d.ts +76 -0
  80. package/dist/api/launcher-tasks.js +127 -0
  81. package/dist/api/launcher-tasks.js.map +1 -0
  82. package/dist/api/leaderboard-api.d.ts +20 -0
  83. package/dist/api/leaderboard-api.js +18 -0
  84. package/dist/api/leaderboard-api.js.map +1 -0
  85. package/dist/api/operator-artifacts-endpoint.d.ts +19 -0
  86. package/dist/api/operator-artifacts-endpoint.js +271 -0
  87. package/dist/api/operator-artifacts-endpoint.js.map +1 -0
  88. package/dist/api/peers.js +21 -6
  89. package/dist/api/peers.js.map +1 -1
  90. package/dist/api/portfolio-v0-build.d.ts +16 -10
  91. package/dist/api/portfolio-v0-build.js +36 -31
  92. package/dist/api/portfolio-v0-build.js.map +1 -1
  93. package/dist/api/portfolio-v0-doctor.js +1 -1
  94. package/dist/api/portfolio-v0-doctor.js.map +1 -1
  95. package/dist/api/prediction-v1-build.d.ts +65 -0
  96. package/dist/api/prediction-v1-build.js +73 -0
  97. package/dist/api/prediction-v1-build.js.map +1 -0
  98. package/dist/api/rewards-build.js +3 -8
  99. package/dist/api/rewards-build.js.map +1 -1
  100. package/dist/api/server.d.ts +106 -1
  101. package/dist/api/server.js +418 -17
  102. package/dist/api/server.js.map +1 -1
  103. package/dist/api/setup-endpoints.d.ts +62 -0
  104. package/dist/api/setup-endpoints.js +752 -0
  105. package/dist/api/setup-endpoints.js.map +1 -0
  106. package/dist/api/solvernets-catalog-build.d.ts +47 -0
  107. package/dist/api/solvernets-catalog-build.js +19 -0
  108. package/dist/api/solvernets-catalog-build.js.map +1 -0
  109. package/dist/api/solvernets-endpoint.d.ts +15 -0
  110. package/dist/api/solvernets-endpoint.js +5 -0
  111. package/dist/api/solvernets-endpoint.js.map +1 -0
  112. package/dist/api/solvernets-endpoints.d.ts +104 -0
  113. package/dist/api/solvernets-endpoints.js +1121 -0
  114. package/dist/api/solvernets-endpoints.js.map +1 -0
  115. package/dist/api/status-build.d.ts +26 -2
  116. package/dist/api/status-build.js +46 -9
  117. package/dist/api/status-build.js.map +1 -1
  118. package/dist/api/status-rollup-build.d.ts +46 -1
  119. package/dist/api/status-rollup-build.js +174 -8
  120. package/dist/api/status-rollup-build.js.map +1 -1
  121. package/dist/api/stop-hook.d.ts +36 -0
  122. package/dist/api/stop-hook.js +77 -0
  123. package/dist/api/stop-hook.js.map +1 -0
  124. package/dist/api/task-runs-build.d.ts +29 -0
  125. package/dist/api/task-runs-build.js +50 -0
  126. package/dist/api/task-runs-build.js.map +1 -0
  127. package/dist/api/ui-token.d.ts +5 -0
  128. package/dist/api/ui-token.js +36 -0
  129. package/dist/api/ui-token.js.map +1 -0
  130. package/dist/bin/jinn-stop-hook.d.ts +9 -0
  131. package/dist/bin/jinn-stop-hook.js +52 -0
  132. package/dist/bin/jinn-stop-hook.js.map +1 -0
  133. package/dist/build-info.d.ts +32 -0
  134. package/dist/build-info.js +69 -0
  135. package/dist/build-info.js.map +1 -0
  136. package/dist/build-info.json +6 -0
  137. package/dist/build-meta.json +1 -1
  138. package/dist/captures/dedup.d.ts +27 -0
  139. package/dist/captures/dedup.js +48 -0
  140. package/dist/captures/dedup.js.map +1 -0
  141. package/dist/captures/index.d.ts +4 -0
  142. package/dist/captures/index.js +5 -0
  143. package/dist/captures/index.js.map +1 -0
  144. package/dist/captures/live-publisher.d.ts +33 -0
  145. package/dist/captures/live-publisher.js +101 -0
  146. package/dist/captures/live-publisher.js.map +1 -0
  147. package/dist/captures/publish.d.ts +83 -0
  148. package/dist/captures/publish.js +212 -0
  149. package/dist/captures/publish.js.map +1 -0
  150. package/dist/captures/rate-limit.d.ts +39 -0
  151. package/dist/captures/rate-limit.js +79 -0
  152. package/dist/captures/rate-limit.js.map +1 -0
  153. package/dist/cli/command.d.ts +9 -0
  154. package/dist/cli/commands/auth.js +6 -3
  155. package/dist/cli/commands/auth.js.map +1 -1
  156. package/dist/cli/commands/balance.d.ts +7 -0
  157. package/dist/cli/commands/balance.js +38 -32
  158. package/dist/cli/commands/balance.js.map +1 -1
  159. package/dist/cli/commands/bootstrap.d.ts +13 -1
  160. package/dist/cli/commands/bootstrap.js +150 -133
  161. package/dist/cli/commands/bootstrap.js.map +1 -1
  162. package/dist/cli/commands/capture.d.ts +33 -0
  163. package/dist/cli/commands/capture.js +345 -0
  164. package/dist/cli/commands/capture.js.map +1 -0
  165. package/dist/cli/commands/checkpoint.d.ts +85 -0
  166. package/dist/cli/commands/checkpoint.js +75 -0
  167. package/dist/cli/commands/checkpoint.js.map +1 -0
  168. package/dist/cli/commands/claim-rewards.js +14 -2
  169. package/dist/cli/commands/claim-rewards.js.map +1 -1
  170. package/dist/cli/commands/conformance.d.ts +12 -0
  171. package/dist/cli/commands/conformance.js +140 -0
  172. package/dist/cli/commands/conformance.js.map +1 -0
  173. package/dist/cli/commands/create.d.ts +22 -0
  174. package/dist/cli/commands/create.js +226 -0
  175. package/dist/cli/commands/create.js.map +1 -0
  176. package/dist/cli/commands/doctor.d.ts +49 -1
  177. package/dist/cli/commands/doctor.js +162 -134
  178. package/dist/cli/commands/doctor.js.map +1 -1
  179. package/dist/cli/commands/fleet-scale.d.ts +19 -1
  180. package/dist/cli/commands/fleet-scale.js +378 -361
  181. package/dist/cli/commands/fleet-scale.js.map +1 -1
  182. package/dist/cli/commands/fleet.d.ts +7 -0
  183. package/dist/cli/commands/fleet.js +39 -33
  184. package/dist/cli/commands/fleet.js.map +1 -1
  185. package/dist/cli/commands/fund-requirements.d.ts +14 -1
  186. package/dist/cli/commands/fund-requirements.js +182 -174
  187. package/dist/cli/commands/fund-requirements.js.map +1 -1
  188. package/dist/cli/commands/harnesses.d.ts +38 -0
  189. package/dist/cli/commands/harnesses.js +376 -0
  190. package/dist/cli/commands/harnesses.js.map +1 -0
  191. package/dist/cli/commands/history.d.ts +10 -1
  192. package/dist/cli/commands/history.js +68 -59
  193. package/dist/cli/commands/history.js.map +1 -1
  194. package/dist/cli/commands/init.js +4 -1
  195. package/dist/cli/commands/init.js.map +1 -1
  196. package/dist/cli/commands/integrations.d.ts +13 -0
  197. package/dist/cli/commands/integrations.js +1010 -0
  198. package/dist/cli/commands/integrations.js.map +1 -0
  199. package/dist/cli/commands/logs.d.ts +6 -1
  200. package/dist/cli/commands/logs.js +77 -70
  201. package/dist/cli/commands/logs.js.map +1 -1
  202. package/dist/cli/commands/migrate-agent-id.d.ts +26 -0
  203. package/dist/cli/commands/migrate-agent-id.js +164 -0
  204. package/dist/cli/commands/migrate-agent-id.js.map +1 -0
  205. package/dist/cli/commands/prediction-scoreboard.d.ts +10 -0
  206. package/dist/cli/commands/prediction-scoreboard.js +136 -0
  207. package/dist/cli/commands/prediction-scoreboard.js.map +1 -0
  208. package/dist/cli/commands/quickstart.d.ts +51 -1
  209. package/dist/cli/commands/quickstart.js +514 -296
  210. package/dist/cli/commands/quickstart.js.map +1 -1
  211. package/dist/cli/commands/rewards.d.ts +7 -0
  212. package/dist/cli/commands/rewards.js +46 -40
  213. package/dist/cli/commands/rewards.js.map +1 -1
  214. package/dist/cli/commands/run.d.ts +14 -1
  215. package/dist/cli/commands/run.js +243 -91
  216. package/dist/cli/commands/run.js.map +1 -1
  217. package/dist/cli/commands/solver-nets.js +231 -0
  218. package/dist/cli/commands/solver-nets.js.map +1 -0
  219. package/dist/cli/commands/solver-plugins.d.ts +9 -0
  220. package/dist/cli/commands/solver-plugins.js +186 -0
  221. package/dist/cli/commands/solver-plugins.js.map +1 -0
  222. package/dist/cli/commands/status.d.ts +13 -0
  223. package/dist/cli/commands/status.js +105 -34
  224. package/dist/cli/commands/status.js.map +1 -1
  225. package/dist/cli/commands/stop.js +87 -14
  226. package/dist/cli/commands/stop.js.map +1 -1
  227. package/dist/cli/commands/tasks.js +405 -0
  228. package/dist/cli/commands/tasks.js.map +1 -0
  229. package/dist/cli/commands/ui.d.ts +3 -0
  230. package/dist/cli/commands/ui.js +45 -0
  231. package/dist/cli/commands/ui.js.map +1 -0
  232. package/dist/cli/commands/update.d.ts +12 -0
  233. package/dist/cli/commands/update.js +321 -91
  234. package/dist/cli/commands/update.js.map +1 -1
  235. package/dist/cli/commands/version.js +3 -2
  236. package/dist/cli/commands/version.js.map +1 -1
  237. package/dist/cli/commands/withdraw.d.ts +21 -1
  238. package/dist/cli/commands/withdraw.js +175 -159
  239. package/dist/cli/commands/withdraw.js.map +1 -1
  240. package/dist/cli/deployment-digest.js +0 -5
  241. package/dist/cli/deployment-digest.js.map +1 -1
  242. package/dist/cli/execution-context.d.ts +1 -1
  243. package/dist/cli/execution-context.js +4 -4
  244. package/dist/cli/execution-context.js.map +1 -1
  245. package/dist/cli/help.js +8 -1
  246. package/dist/cli/help.js.map +1 -1
  247. package/dist/cli/index.d.ts +7 -0
  248. package/dist/cli/index.js +28 -6
  249. package/dist/cli/index.js.map +1 -1
  250. package/dist/cli/introspection-context.js +0 -1
  251. package/dist/cli/introspection-context.js.map +1 -1
  252. package/dist/cli/open-browser.d.ts +1 -0
  253. package/dist/cli/open-browser.js +18 -0
  254. package/dist/cli/open-browser.js.map +1 -0
  255. package/dist/cli/password.d.ts +3 -3
  256. package/dist/cli/password.js +6 -6
  257. package/dist/cli/password.js.map +1 -1
  258. package/dist/cli/task-native-readiness.d.ts +27 -0
  259. package/dist/cli/task-native-readiness.js +170 -0
  260. package/dist/cli/task-native-readiness.js.map +1 -0
  261. package/dist/config.d.ts +1907 -60
  262. package/dist/config.js +608 -33
  263. package/dist/config.js.map +1 -1
  264. package/dist/conformance/checks/artifacts.d.ts +37 -0
  265. package/dist/conformance/checks/artifacts.js +110 -0
  266. package/dist/conformance/checks/artifacts.js.map +1 -0
  267. package/dist/conformance/checks/envelope-schema.d.ts +17 -0
  268. package/dist/conformance/checks/envelope-schema.js +36 -0
  269. package/dist/conformance/checks/envelope-schema.js.map +1 -0
  270. package/dist/conformance/checks/hash-signature.d.ts +26 -0
  271. package/dist/conformance/checks/hash-signature.js +70 -0
  272. package/dist/conformance/checks/hash-signature.js.map +1 -0
  273. package/dist/conformance/checks/payload.d.ts +19 -0
  274. package/dist/conformance/checks/payload.js +52 -0
  275. package/dist/conformance/checks/payload.js.map +1 -0
  276. package/dist/conformance/checks/secret-scrub.d.ts +33 -0
  277. package/dist/conformance/checks/secret-scrub.js +118 -0
  278. package/dist/conformance/checks/secret-scrub.js.map +1 -0
  279. package/dist/conformance/checks/source-runtime.d.ts +43 -0
  280. package/dist/conformance/checks/source-runtime.js +68 -0
  281. package/dist/conformance/checks/source-runtime.js.map +1 -0
  282. package/dist/conformance/checks/source-static.d.ts +61 -0
  283. package/dist/conformance/checks/source-static.js +311 -0
  284. package/dist/conformance/checks/source-static.js.map +1 -0
  285. package/dist/conformance/checks/trajectory-chain.d.ts +18 -0
  286. package/dist/conformance/checks/trajectory-chain.js +51 -0
  287. package/dist/conformance/checks/trajectory-chain.js.map +1 -0
  288. package/dist/conformance/checks/trajectory-profile.d.ts +17 -0
  289. package/dist/conformance/checks/trajectory-profile.js +51 -0
  290. package/dist/conformance/checks/trajectory-profile.js.map +1 -0
  291. package/dist/conformance/checks/trajectory-schema.d.ts +20 -0
  292. package/dist/conformance/checks/trajectory-schema.js +40 -0
  293. package/dist/conformance/checks/trajectory-schema.js.map +1 -0
  294. package/dist/conformance/checks/verdict.d.ts +44 -0
  295. package/dist/conformance/checks/verdict.js +122 -0
  296. package/dist/conformance/checks/verdict.js.map +1 -0
  297. package/dist/conformance/harness.d.ts +32 -0
  298. package/dist/conformance/harness.js +227 -0
  299. package/dist/conformance/harness.js.map +1 -0
  300. package/dist/conformance/types.d.ts +88 -0
  301. package/dist/conformance/types.js +31 -0
  302. package/dist/conformance/types.js.map +1 -0
  303. package/dist/corpus/acquire.d.ts +42 -0
  304. package/dist/corpus/acquire.js +213 -0
  305. package/dist/corpus/acquire.js.map +1 -0
  306. package/dist/corpus/cache.d.ts +14 -0
  307. package/dist/corpus/cache.js +18 -0
  308. package/dist/corpus/cache.js.map +1 -0
  309. package/dist/corpus/envelope-projection.d.ts +12 -0
  310. package/dist/corpus/envelope-projection.js +110 -0
  311. package/dist/corpus/envelope-projection.js.map +1 -0
  312. package/dist/corpus/fetch.d.ts +9 -0
  313. package/dist/corpus/fetch.js +24 -0
  314. package/dist/corpus/fetch.js.map +1 -0
  315. package/dist/corpus/index.d.ts +19 -0
  316. package/dist/corpus/index.js +118 -0
  317. package/dist/corpus/index.js.map +1 -0
  318. package/dist/corpus/onchain-query.d.ts +13 -0
  319. package/dist/corpus/onchain-query.js +165 -0
  320. package/dist/corpus/onchain-query.js.map +1 -0
  321. package/dist/corpus/prediction-brier-scoreboard-report.d.ts +17 -0
  322. package/dist/corpus/prediction-brier-scoreboard-report.js +148 -0
  323. package/dist/corpus/prediction-brier-scoreboard-report.js.map +1 -0
  324. package/dist/corpus/prediction-brier-scoreboard.d.ts +56 -0
  325. package/dist/corpus/prediction-brier-scoreboard.js +269 -0
  326. package/dist/corpus/prediction-brier-scoreboard.js.map +1 -0
  327. package/dist/corpus/prediction-scoreable-verdicts.d.ts +4 -0
  328. package/dist/corpus/prediction-scoreable-verdicts.js +23 -0
  329. package/dist/corpus/prediction-scoreable-verdicts.js.map +1 -0
  330. package/dist/corpus/query.d.ts +17 -0
  331. package/dist/corpus/query.js +113 -0
  332. package/dist/corpus/query.js.map +1 -0
  333. package/dist/corpus/route-resolver.d.ts +16 -0
  334. package/dist/corpus/route-resolver.js +20 -0
  335. package/dist/corpus/route-resolver.js.map +1 -0
  336. package/dist/corpus/types.d.ts +153 -0
  337. package/dist/corpus/types.js +50 -0
  338. package/dist/corpus/types.js.map +1 -0
  339. package/dist/daemon/balance-topup-loop.js +2 -1
  340. package/dist/daemon/balance-topup-loop.js.map +1 -1
  341. package/dist/daemon/creator.d.ts +7 -7
  342. package/dist/daemon/creator.js +11 -14
  343. package/dist/daemon/creator.js.map +1 -1
  344. package/dist/daemon/daemon.d.ts +83 -31
  345. package/dist/daemon/daemon.js +206 -67
  346. package/dist/daemon/daemon.js.map +1 -1
  347. package/dist/daemon/delivery-watcher.js +50 -4
  348. package/dist/daemon/delivery-watcher.js.map +1 -1
  349. package/dist/daemon/freeze-fence.d.ts +42 -0
  350. package/dist/daemon/freeze-fence.js +71 -0
  351. package/dist/daemon/freeze-fence.js.map +1 -0
  352. package/dist/daemon/jinn-claim-loop-canonical.d.ts +207 -0
  353. package/dist/daemon/jinn-claim-loop-canonical.js +296 -0
  354. package/dist/daemon/jinn-claim-loop-canonical.js.map +1 -0
  355. package/dist/daemon/jinn-claim-loop-mock.d.ts +61 -0
  356. package/dist/daemon/jinn-claim-loop-mock.js +122 -0
  357. package/dist/daemon/jinn-claim-loop-mock.js.map +1 -0
  358. package/dist/daemon/jinn-claim-loop.d.ts +123 -0
  359. package/dist/daemon/jinn-claim-loop.js +256 -0
  360. package/dist/daemon/jinn-claim-loop.js.map +1 -0
  361. package/dist/daemon/reward-claim-loop.d.ts +2 -0
  362. package/dist/daemon/reward-claim-loop.js +32 -27
  363. package/dist/daemon/reward-claim-loop.js.map +1 -1
  364. package/dist/dashboard/assets/index-D_NMfDfV.css +32 -0
  365. package/dist/dashboard/assets/index-gfrALgiG.js +76 -0
  366. package/dist/dashboard/index.html +18 -74
  367. package/dist/earning/agent-wallet-binding.d.ts +133 -0
  368. package/dist/earning/agent-wallet-binding.js +202 -0
  369. package/dist/earning/agent-wallet-binding.js.map +1 -0
  370. package/dist/earning/bootstrap.d.ts +88 -1
  371. package/dist/earning/bootstrap.js +409 -56
  372. package/dist/earning/bootstrap.js.map +1 -1
  373. package/dist/earning/contracts.d.ts +328 -6
  374. package/dist/earning/contracts.js +295 -14
  375. package/dist/earning/contracts.js.map +1 -1
  376. package/dist/earning/evidence-simhash.d.ts +1 -1
  377. package/dist/earning/faucet.d.ts +31 -0
  378. package/dist/earning/faucet.js +37 -0
  379. package/dist/earning/faucet.js.map +1 -1
  380. package/dist/earning/funding-plan.d.ts +89 -0
  381. package/dist/earning/funding-plan.js +202 -0
  382. package/dist/earning/funding-plan.js.map +1 -0
  383. package/dist/earning/migrate-agent-id.d.ts +129 -0
  384. package/dist/earning/migrate-agent-id.js +256 -0
  385. package/dist/earning/migrate-agent-id.js.map +1 -0
  386. package/dist/earning/orphan-sweep.d.ts +14 -0
  387. package/dist/earning/orphan-sweep.js +63 -2
  388. package/dist/earning/orphan-sweep.js.map +1 -1
  389. package/dist/earning/reconcile.d.ts +2 -0
  390. package/dist/earning/reconcile.js +30 -0
  391. package/dist/earning/reconcile.js.map +1 -1
  392. package/dist/earning/safe-adapter.js +45 -3
  393. package/dist/earning/safe-adapter.js.map +1 -1
  394. package/dist/earning/stolas-claim.d.ts +86 -6
  395. package/dist/earning/stolas-claim.js +123 -9
  396. package/dist/earning/stolas-claim.js.map +1 -1
  397. package/dist/earning/store.d.ts +47 -0
  398. package/dist/earning/store.js +113 -1
  399. package/dist/earning/store.js.map +1 -1
  400. package/dist/earning/testnet-setup-migration.d.ts +32 -0
  401. package/dist/earning/testnet-setup-migration.js +214 -0
  402. package/dist/earning/testnet-setup-migration.js.map +1 -0
  403. package/dist/earning/types.d.ts +57 -9
  404. package/dist/earning/types.js +51 -2
  405. package/dist/earning/types.js.map +1 -1
  406. package/dist/earning/viem-clients.d.ts +20 -0
  407. package/dist/earning/viem-clients.js +32 -1
  408. package/dist/earning/viem-clients.js.map +1 -1
  409. package/dist/erc8004/abis.d.ts +423 -0
  410. package/dist/erc8004/abis.js +265 -0
  411. package/dist/erc8004/abis.js.map +1 -0
  412. package/dist/erc8004/addresses.d.ts +40 -0
  413. package/dist/erc8004/addresses.js +64 -0
  414. package/dist/erc8004/addresses.js.map +1 -0
  415. package/dist/erc8004/identity.d.ts +273 -0
  416. package/dist/erc8004/identity.js +405 -0
  417. package/dist/erc8004/identity.js.map +1 -0
  418. package/dist/erc8004/index.d.ts +13 -0
  419. package/dist/erc8004/index.js +20 -0
  420. package/dist/erc8004/index.js.map +1 -0
  421. package/dist/erc8004/reputation.d.ts +349 -0
  422. package/dist/erc8004/reputation.js +464 -0
  423. package/dist/erc8004/reputation.js.map +1 -0
  424. package/dist/erc8004/subgraph.d.ts +46 -0
  425. package/dist/erc8004/subgraph.js +37 -0
  426. package/dist/erc8004/subgraph.js.map +1 -0
  427. package/dist/erc8004/validation.d.ts +145 -0
  428. package/dist/erc8004/validation.js +219 -0
  429. package/dist/erc8004/validation.js.map +1 -0
  430. package/dist/errors/persisted-bootstrap-error.d.ts +4 -0
  431. package/dist/errors/persisted-bootstrap-error.js +50 -0
  432. package/dist/errors/persisted-bootstrap-error.js.map +1 -0
  433. package/dist/events/emitter.d.ts +12 -0
  434. package/dist/events/emitter.js +23 -0
  435. package/dist/events/emitter.js.map +1 -0
  436. package/dist/events/ring-buffer.d.ts +25 -0
  437. package/dist/events/ring-buffer.js +46 -0
  438. package/dist/events/ring-buffer.js.map +1 -0
  439. package/dist/events/types.d.ts +42 -0
  440. package/dist/events/types.js +28 -0
  441. package/dist/events/types.js.map +1 -0
  442. package/dist/harnesses/capability/index.d.ts +82 -0
  443. package/dist/harnesses/capability/index.js +12 -0
  444. package/dist/harnesses/capability/index.js.map +1 -0
  445. package/dist/harnesses/capability/scoped-rpc.d.ts +12 -0
  446. package/dist/harnesses/capability/scoped-rpc.js +34 -0
  447. package/dist/harnesses/capability/scoped-rpc.js.map +1 -0
  448. package/dist/harnesses/capability/scoped-secrets.d.ts +8 -0
  449. package/dist/harnesses/capability/scoped-secrets.js +10 -0
  450. package/dist/harnesses/capability/scoped-secrets.js.map +1 -0
  451. package/dist/harnesses/capability/scoped-signer.d.ts +46 -0
  452. package/dist/harnesses/capability/scoped-signer.js +73 -0
  453. package/dist/harnesses/capability/scoped-signer.js.map +1 -0
  454. package/dist/harnesses/engine/artifact-scrub.d.ts +12 -0
  455. package/dist/harnesses/engine/artifact-scrub.js +104 -0
  456. package/dist/harnesses/engine/artifact-scrub.js.map +1 -0
  457. package/dist/harnesses/engine/canonical-json.d.ts +1 -0
  458. package/dist/harnesses/engine/canonical-json.js +66 -0
  459. package/dist/harnesses/engine/canonical-json.js.map +1 -0
  460. package/dist/harnesses/engine/delivery.d.ts +58 -0
  461. package/dist/harnesses/engine/delivery.js +67 -0
  462. package/dist/harnesses/engine/delivery.js.map +1 -0
  463. package/dist/harnesses/engine/engine.d.ts +534 -0
  464. package/dist/harnesses/engine/engine.js +1626 -0
  465. package/dist/harnesses/engine/engine.js.map +1 -0
  466. package/dist/harnesses/engine/envelope-assembly.d.ts +73 -0
  467. package/dist/harnesses/engine/envelope-assembly.js +60 -0
  468. package/dist/harnesses/engine/envelope-assembly.js.map +1 -0
  469. package/dist/harnesses/engine/packaging.d.ts +99 -0
  470. package/dist/harnesses/engine/packaging.js +424 -0
  471. package/dist/harnesses/engine/packaging.js.map +1 -0
  472. package/dist/harnesses/engine/persistence.d.ts +198 -0
  473. package/dist/harnesses/engine/persistence.js +443 -0
  474. package/dist/harnesses/engine/persistence.js.map +1 -0
  475. package/dist/harnesses/engine/recovery.d.ts +22 -0
  476. package/dist/harnesses/engine/recovery.js +24 -0
  477. package/dist/harnesses/engine/recovery.js.map +1 -0
  478. package/dist/harnesses/engine/registry.d.ts +55 -0
  479. package/dist/harnesses/engine/registry.js +66 -0
  480. package/dist/harnesses/engine/registry.js.map +1 -0
  481. package/dist/harnesses/engine/signing.d.ts +30 -0
  482. package/dist/harnesses/engine/signing.js +39 -0
  483. package/dist/harnesses/engine/signing.js.map +1 -0
  484. package/dist/harnesses/engine/state.d.ts +42 -0
  485. package/dist/harnesses/engine/state.js +87 -0
  486. package/dist/harnesses/engine/state.js.map +1 -0
  487. package/dist/harnesses/engine/validate-manifest.d.ts +23 -0
  488. package/dist/harnesses/engine/validate-manifest.js +63 -0
  489. package/dist/harnesses/engine/validate-manifest.js.map +1 -0
  490. package/dist/harnesses/engine/verification-stub.d.ts +18 -0
  491. package/dist/harnesses/engine/verification-stub.js +18 -0
  492. package/dist/harnesses/engine/verification-stub.js.map +1 -0
  493. package/dist/harnesses/external-impls/index.d.ts +3 -0
  494. package/dist/harnesses/external-impls/index.js +2 -0
  495. package/dist/harnesses/external-impls/index.js.map +1 -0
  496. package/dist/harnesses/external-impls/loader.d.ts +50 -0
  497. package/dist/harnesses/external-impls/loader.js +139 -0
  498. package/dist/harnesses/external-impls/loader.js.map +1 -0
  499. package/dist/harnesses/external-impls/package-hash.d.ts +26 -0
  500. package/dist/harnesses/external-impls/package-hash.js +102 -0
  501. package/dist/harnesses/external-impls/package-hash.js.map +1 -0
  502. package/dist/harnesses/external-impls/types.d.ts +42 -0
  503. package/dist/harnesses/external-impls/types.js +10 -0
  504. package/dist/harnesses/external-impls/types.js.map +1 -0
  505. package/dist/harnesses/freeze.d.ts +34 -0
  506. package/dist/harnesses/freeze.js +60 -0
  507. package/dist/harnesses/freeze.js.map +1 -0
  508. package/dist/harnesses/impls/claude-code-learner/adapters/claude-code.d.ts +61 -0
  509. package/dist/harnesses/impls/claude-code-learner/adapters/claude-code.js +243 -0
  510. package/dist/harnesses/impls/claude-code-learner/adapters/claude-code.js.map +1 -0
  511. package/dist/harnesses/impls/claude-code-learner/adapters/codex-code.d.ts +35 -0
  512. package/dist/harnesses/impls/claude-code-learner/adapters/codex-code.js +280 -0
  513. package/dist/harnesses/impls/claude-code-learner/adapters/codex-code.js.map +1 -0
  514. package/dist/harnesses/impls/claude-code-learner/adapters/codex-workspace.d.ts +21 -0
  515. package/dist/harnesses/impls/claude-code-learner/adapters/codex-workspace.js +193 -0
  516. package/dist/harnesses/impls/claude-code-learner/adapters/codex-workspace.js.map +1 -0
  517. package/dist/harnesses/impls/claude-code-learner/harness.d.ts +22 -0
  518. package/dist/harnesses/impls/claude-code-learner/harness.js +62 -0
  519. package/dist/harnesses/impls/claude-code-learner/harness.js.map +1 -0
  520. package/dist/harnesses/impls/claude-code-learner/harvest.d.ts +20 -0
  521. package/dist/harnesses/impls/claude-code-learner/harvest.js +558 -0
  522. package/dist/harnesses/impls/claude-code-learner/harvest.js.map +1 -0
  523. package/dist/harnesses/impls/claude-code-learner/index.d.ts +18 -0
  524. package/dist/harnesses/impls/claude-code-learner/index.js +15 -0
  525. package/dist/harnesses/impls/claude-code-learner/index.js.map +1 -0
  526. package/dist/harnesses/impls/claude-code-learner/plugin-path.d.ts +14 -0
  527. package/dist/harnesses/impls/claude-code-learner/plugin-path.js +30 -0
  528. package/dist/harnesses/impls/claude-code-learner/plugin-path.js.map +1 -0
  529. package/dist/harnesses/impls/claude-code-learner/test-utils/fake-plugin-outputs.d.ts +50 -0
  530. package/dist/harnesses/impls/claude-code-learner/test-utils/fake-plugin-outputs.js +192 -0
  531. package/dist/harnesses/impls/claude-code-learner/test-utils/fake-plugin-outputs.js.map +1 -0
  532. package/dist/harnesses/impls/claude-code-learner/test-utils/noop-adapter.d.ts +22 -0
  533. package/dist/harnesses/impls/claude-code-learner/test-utils/noop-adapter.js +35 -0
  534. package/dist/harnesses/impls/claude-code-learner/test-utils/noop-adapter.js.map +1 -0
  535. package/dist/harnesses/impls/claude-code-learner/types.d.ts +114 -0
  536. package/dist/harnesses/impls/claude-code-learner/types.js.map +1 -0
  537. package/dist/harnesses/impls/claude-mcp-hyperliquid/api-wallet.d.ts +64 -0
  538. package/dist/harnesses/impls/claude-mcp-hyperliquid/api-wallet.js.map +1 -0
  539. package/dist/harnesses/impls/claude-mcp-hyperliquid/index.d.ts +106 -0
  540. package/dist/harnesses/impls/claude-mcp-hyperliquid/index.js +723 -0
  541. package/dist/harnesses/impls/claude-mcp-hyperliquid/index.js.map +1 -0
  542. package/dist/harnesses/impls/claude-mcp-hyperliquid/mcp-tools.js.map +1 -0
  543. package/dist/harnesses/impls/claude-mcp-hyperliquid/safety-rails.js.map +1 -0
  544. package/dist/harnesses/impls/claude-mcp-hyperliquid/session-orchestrator.d.ts +104 -0
  545. package/dist/harnesses/impls/claude-mcp-hyperliquid/session-orchestrator.js +264 -0
  546. package/dist/harnesses/impls/claude-mcp-hyperliquid/session-orchestrator.js.map +1 -0
  547. package/dist/harnesses/impls/claude-mcp-prediction/index.d.ts +44 -0
  548. package/dist/harnesses/impls/claude-mcp-prediction/index.js +250 -0
  549. package/dist/harnesses/impls/claude-mcp-prediction/index.js.map +1 -0
  550. package/dist/harnesses/impls/claude-mcp-prediction/mcp-tools.js +135 -0
  551. package/dist/harnesses/impls/claude-mcp-prediction/mcp-tools.js.map +1 -0
  552. package/dist/harnesses/impls/claude-mcp-prediction/prompt.d.ts +8 -0
  553. package/dist/harnesses/impls/claude-mcp-prediction/prompt.js +54 -0
  554. package/dist/harnesses/impls/claude-mcp-prediction/prompt.js.map +1 -0
  555. package/dist/harnesses/impls/claude-mcp-prediction/session-orchestrator.d.ts +43 -0
  556. package/dist/harnesses/impls/claude-mcp-prediction/session-orchestrator.js +21 -0
  557. package/dist/harnesses/impls/claude-mcp-prediction/session-orchestrator.js.map +1 -0
  558. package/dist/harnesses/impls/claude-mcp-prediction/types.d.ts +84 -0
  559. package/dist/harnesses/impls/claude-mcp-prediction/types.js +6 -0
  560. package/dist/harnesses/impls/claude-mcp-prediction/types.js.map +1 -0
  561. package/dist/harnesses/impls/claude-mcp-prediction-apy/index.d.ts +36 -0
  562. package/dist/harnesses/impls/claude-mcp-prediction-apy/index.js +241 -0
  563. package/dist/harnesses/impls/claude-mcp-prediction-apy/index.js.map +1 -0
  564. package/dist/harnesses/impls/claude-mcp-prediction-apy/mcp-tools.js +136 -0
  565. package/dist/harnesses/impls/claude-mcp-prediction-apy/mcp-tools.js.map +1 -0
  566. package/dist/harnesses/impls/claude-mcp-prediction-apy/prompt.d.ts +7 -0
  567. package/dist/harnesses/impls/claude-mcp-prediction-apy/prompt.js +46 -0
  568. package/dist/harnesses/impls/claude-mcp-prediction-apy/prompt.js.map +1 -0
  569. package/dist/harnesses/impls/claude-mcp-prediction-apy/session-orchestrator.d.ts +37 -0
  570. package/dist/harnesses/impls/claude-mcp-prediction-apy/session-orchestrator.js +19 -0
  571. package/dist/harnesses/impls/claude-mcp-prediction-apy/session-orchestrator.js.map +1 -0
  572. package/dist/harnesses/impls/claude-mcp-prediction-apy/types.d.ts +64 -0
  573. package/dist/harnesses/impls/claude-mcp-prediction-apy/types.js +6 -0
  574. package/dist/harnesses/impls/claude-mcp-prediction-apy/types.js.map +1 -0
  575. package/dist/harnesses/impls/claude-mcp-shared/single-session-orchestrator.d.ts +84 -0
  576. package/dist/harnesses/impls/claude-mcp-shared/single-session-orchestrator.js +206 -0
  577. package/dist/harnesses/impls/claude-mcp-shared/single-session-orchestrator.js.map +1 -0
  578. package/dist/harnesses/impls/evaluation-context.d.ts +23 -0
  579. package/dist/harnesses/impls/evaluation-context.js +25 -0
  580. package/dist/harnesses/impls/evaluation-context.js.map +1 -0
  581. package/dist/harnesses/impls/index.d.ts +84 -0
  582. package/dist/harnesses/impls/index.js +136 -0
  583. package/dist/harnesses/impls/index.js.map +1 -0
  584. package/dist/harnesses/impls/legacy-claude/index.d.ts +66 -0
  585. package/dist/harnesses/impls/legacy-claude/index.js +168 -0
  586. package/dist/harnesses/impls/legacy-claude/index.js.map +1 -0
  587. package/dist/harnesses/impls/portfolio-v0-evaluator/canonical-metrics.d.ts +68 -0
  588. package/dist/harnesses/impls/portfolio-v0-evaluator/canonical-metrics.js +117 -0
  589. package/dist/harnesses/impls/portfolio-v0-evaluator/canonical-metrics.js.map +1 -0
  590. package/dist/harnesses/impls/portfolio-v0-evaluator/checks/availability.js.map +1 -0
  591. package/dist/harnesses/impls/portfolio-v0-evaluator/checks/consistency.d.ts +78 -0
  592. package/dist/harnesses/impls/portfolio-v0-evaluator/checks/consistency.js +274 -0
  593. package/dist/harnesses/impls/portfolio-v0-evaluator/checks/consistency.js.map +1 -0
  594. package/dist/harnesses/impls/portfolio-v0-evaluator/checks/eligibility.d.ts +23 -0
  595. package/dist/harnesses/impls/portfolio-v0-evaluator/checks/eligibility.js +49 -0
  596. package/dist/harnesses/impls/portfolio-v0-evaluator/checks/eligibility.js.map +1 -0
  597. package/dist/harnesses/impls/portfolio-v0-evaluator/checks/integrity.d.ts +25 -0
  598. package/dist/harnesses/impls/portfolio-v0-evaluator/checks/integrity.js +44 -0
  599. package/dist/harnesses/impls/portfolio-v0-evaluator/checks/integrity.js.map +1 -0
  600. package/dist/harnesses/impls/portfolio-v0-evaluator/checks/spec.d.ts +17 -0
  601. package/dist/harnesses/impls/portfolio-v0-evaluator/checks/spec.js +43 -0
  602. package/dist/harnesses/impls/portfolio-v0-evaluator/checks/spec.js.map +1 -0
  603. package/dist/harnesses/impls/portfolio-v0-evaluator/index.d.ts +44 -0
  604. package/dist/harnesses/impls/portfolio-v0-evaluator/index.js +569 -0
  605. package/dist/harnesses/impls/portfolio-v0-evaluator/index.js.map +1 -0
  606. package/dist/harnesses/impls/portfolio-v0-evaluator/score.js.map +1 -0
  607. package/dist/harnesses/impls/portfolio-v0-evaluator/types.d.ts +34 -0
  608. package/dist/harnesses/impls/portfolio-v0-evaluator/types.js.map +1 -0
  609. package/dist/harnesses/impls/prediction-apy-v0-baseline/index.d.ts +42 -0
  610. package/dist/harnesses/impls/prediction-apy-v0-baseline/index.js +114 -0
  611. package/dist/harnesses/impls/prediction-apy-v0-baseline/index.js.map +1 -0
  612. package/dist/harnesses/impls/prediction-apy-v0-baseline/strategy.js.map +1 -0
  613. package/dist/harnesses/impls/prediction-apy-v0-baseline/types.js.map +1 -0
  614. package/dist/harnesses/impls/prediction-apy-v0-evaluator/canonical-metrics.d.ts +6 -0
  615. package/dist/harnesses/impls/prediction-apy-v0-evaluator/canonical-metrics.js +11 -0
  616. package/dist/harnesses/impls/prediction-apy-v0-evaluator/canonical-metrics.js.map +1 -0
  617. package/dist/harnesses/impls/prediction-apy-v0-evaluator/index.d.ts +42 -0
  618. package/dist/harnesses/impls/prediction-apy-v0-evaluator/index.js +346 -0
  619. package/dist/harnesses/impls/prediction-apy-v0-evaluator/index.js.map +1 -0
  620. package/dist/harnesses/impls/prediction-apy-v0-evaluator/parse-submission.d.ts +16 -0
  621. package/dist/harnesses/impls/prediction-apy-v0-evaluator/parse-submission.js +22 -0
  622. package/dist/harnesses/impls/prediction-apy-v0-evaluator/parse-submission.js.map +1 -0
  623. package/dist/harnesses/impls/prediction-apy-v0-evaluator/score.js.map +1 -0
  624. package/dist/harnesses/impls/prediction-apy-v0-evaluator/types.js.map +1 -0
  625. package/dist/harnesses/impls/prediction-v0-baseline/index.d.ts +33 -0
  626. package/dist/harnesses/impls/prediction-v0-baseline/index.js +109 -0
  627. package/dist/harnesses/impls/prediction-v0-baseline/index.js.map +1 -0
  628. package/dist/harnesses/impls/prediction-v0-baseline/strategy.d.ts +8 -0
  629. package/dist/harnesses/impls/prediction-v0-baseline/strategy.js +41 -0
  630. package/dist/harnesses/impls/prediction-v0-baseline/strategy.js.map +1 -0
  631. package/dist/harnesses/impls/prediction-v0-baseline/types.d.ts +7 -0
  632. package/dist/harnesses/impls/prediction-v0-baseline/types.js.map +1 -0
  633. package/dist/harnesses/impls/prediction-v0-evaluator/canonical-metrics.d.ts +20 -0
  634. package/dist/harnesses/impls/prediction-v0-evaluator/canonical-metrics.js.map +1 -0
  635. package/dist/harnesses/impls/prediction-v0-evaluator/checks/availability.d.ts +9 -0
  636. package/dist/harnesses/impls/prediction-v0-evaluator/checks/availability.js.map +1 -0
  637. package/dist/harnesses/impls/prediction-v0-evaluator/checks/eligibility.d.ts +3 -0
  638. package/dist/harnesses/impls/prediction-v0-evaluator/checks/eligibility.js.map +1 -0
  639. package/dist/harnesses/impls/prediction-v0-evaluator/checks/integrity.d.ts +15 -0
  640. package/dist/harnesses/impls/prediction-v0-evaluator/checks/integrity.js +111 -0
  641. package/dist/harnesses/impls/prediction-v0-evaluator/checks/integrity.js.map +1 -0
  642. package/dist/harnesses/impls/prediction-v0-evaluator/checks/spec.d.ts +5 -0
  643. package/dist/harnesses/impls/prediction-v0-evaluator/checks/spec.js.map +1 -0
  644. package/dist/harnesses/impls/prediction-v0-evaluator/index.d.ts +36 -0
  645. package/dist/harnesses/impls/prediction-v0-evaluator/index.js +342 -0
  646. package/dist/harnesses/impls/prediction-v0-evaluator/index.js.map +1 -0
  647. package/dist/harnesses/impls/prediction-v0-evaluator/score.js.map +1 -0
  648. package/dist/harnesses/impls/prediction-v0-evaluator/types.js +2 -0
  649. package/dist/harnesses/impls/prediction-v0-evaluator/types.js.map +1 -0
  650. package/dist/harnesses/impls/prediction-v1-baseline/index.d.ts +31 -0
  651. package/dist/harnesses/impls/prediction-v1-baseline/index.js +79 -0
  652. package/dist/harnesses/impls/prediction-v1-baseline/index.js.map +1 -0
  653. package/dist/harnesses/impls/prediction-v1-evaluator/index.d.ts +32 -0
  654. package/dist/harnesses/impls/prediction-v1-evaluator/index.js +219 -0
  655. package/dist/harnesses/impls/prediction-v1-evaluator/index.js.map +1 -0
  656. package/dist/harnesses/impls/session-derived-evaluator/index.d.ts +4 -0
  657. package/dist/harnesses/impls/session-derived-evaluator/index.js +5 -0
  658. package/dist/harnesses/impls/session-derived-evaluator/index.js.map +1 -0
  659. package/dist/harnesses/impls/session-derived-evaluator/llm-judge.d.ts +16 -0
  660. package/dist/harnesses/impls/session-derived-evaluator/llm-judge.js +16 -0
  661. package/dist/harnesses/impls/session-derived-evaluator/llm-judge.js.map +1 -0
  662. package/dist/harnesses/impls/session-derived-evaluator/signals.d.ts +13 -0
  663. package/dist/harnesses/impls/session-derived-evaluator/signals.js +15 -0
  664. package/dist/harnesses/impls/session-derived-evaluator/signals.js.map +1 -0
  665. package/dist/harnesses/impls/session-derived-evaluator/structural-similarity.d.ts +7 -0
  666. package/dist/harnesses/impls/session-derived-evaluator/structural-similarity.js +28 -0
  667. package/dist/harnesses/impls/session-derived-evaluator/structural-similarity.js.map +1 -0
  668. package/dist/harnesses/impls/session-derived-evaluator/test-suite-rerun.d.ts +15 -0
  669. package/dist/harnesses/impls/session-derived-evaluator/test-suite-rerun.js +17 -0
  670. package/dist/harnesses/impls/session-derived-evaluator/test-suite-rerun.js.map +1 -0
  671. package/dist/harnesses/impls/swe-rebench-v2-evaluator/eval-runner.d.ts +20 -0
  672. package/dist/harnesses/impls/swe-rebench-v2-evaluator/eval-runner.js +107 -0
  673. package/dist/harnesses/impls/swe-rebench-v2-evaluator/eval-runner.js.map +1 -0
  674. package/dist/harnesses/impls/swe-rebench-v2-evaluator/harness.d.ts +74 -0
  675. package/dist/harnesses/impls/swe-rebench-v2-evaluator/harness.js +288 -0
  676. package/dist/harnesses/impls/swe-rebench-v2-evaluator/harness.js.map +1 -0
  677. package/dist/harnesses/impls/swe-rebench-v2-evaluator/hf-fetcher.d.ts +33 -0
  678. package/dist/harnesses/impls/swe-rebench-v2-evaluator/hf-fetcher.js +96 -0
  679. package/dist/harnesses/impls/swe-rebench-v2-evaluator/hf-fetcher.js.map +1 -0
  680. package/dist/harnesses/impls/swe-rebench-v2-evaluator/index.d.ts +61 -0
  681. package/dist/harnesses/impls/swe-rebench-v2-evaluator/index.js +42 -0
  682. package/dist/harnesses/impls/swe-rebench-v2-evaluator/index.js.map +1 -0
  683. package/dist/harnesses/manifest/index.d.ts +3 -0
  684. package/dist/harnesses/manifest/index.js +3 -0
  685. package/dist/harnesses/manifest/index.js.map +1 -0
  686. package/dist/harnesses/manifest/load.d.ts +7 -0
  687. package/dist/harnesses/manifest/load.js +49 -0
  688. package/dist/harnesses/manifest/load.js.map +1 -0
  689. package/dist/harnesses/manifest/types.d.ts +75 -0
  690. package/dist/harnesses/manifest/types.js +8 -0
  691. package/dist/harnesses/manifest/types.js.map +1 -0
  692. package/dist/harnesses/manifest/verify.d.ts +15 -0
  693. package/dist/harnesses/manifest/verify.js +53 -0
  694. package/dist/harnesses/manifest/verify.js.map +1 -0
  695. package/dist/harnesses/mode-state.d.ts +7 -0
  696. package/dist/harnesses/mode-state.js +43 -0
  697. package/dist/harnesses/mode-state.js.map +1 -0
  698. package/dist/harnesses/names.d.ts +6 -0
  699. package/dist/harnesses/names.js +24 -0
  700. package/dist/harnesses/names.js.map +1 -0
  701. package/dist/harnesses/types.d.ts +276 -0
  702. package/dist/harnesses/types.js +28 -0
  703. package/dist/harnesses/types.js.map +1 -0
  704. package/dist/index.d.ts +1 -1
  705. package/dist/main.d.ts +17 -2
  706. package/dist/main.js +1615 -147
  707. package/dist/main.js.map +1 -1
  708. package/dist/mcp/acquire-artifact.d.ts +42 -0
  709. package/dist/mcp/acquire-artifact.js +169 -0
  710. package/dist/mcp/acquire-artifact.js.map +1 -0
  711. package/dist/mcp/operator-server.d.ts +21 -4
  712. package/dist/mcp/operator-server.js +505 -30
  713. package/dist/mcp/operator-server.js.map +1 -1
  714. package/dist/mcp/search-records.d.ts +95 -0
  715. package/dist/mcp/search-records.js +407 -0
  716. package/dist/mcp/search-records.js.map +1 -0
  717. package/dist/mcp/server.d.ts +4 -4
  718. package/dist/mcp/server.js +258 -61
  719. package/dist/mcp/server.js.map +1 -1
  720. package/dist/observability/emit-event.d.ts +2 -2
  721. package/dist/observability/emit-event.js +2 -2
  722. package/dist/observability/emit-event.js.map +1 -1
  723. package/dist/operator-errors.d.ts +14 -0
  724. package/dist/operator-errors.js +39 -10
  725. package/dist/operator-errors.js.map +1 -1
  726. package/dist/plugins/digest.d.ts +1 -0
  727. package/dist/plugins/digest.js +28 -0
  728. package/dist/plugins/digest.js.map +1 -0
  729. package/dist/plugins/index.d.ts +6 -0
  730. package/dist/plugins/index.js +6 -0
  731. package/dist/plugins/index.js.map +1 -0
  732. package/dist/plugins/manifest.d.ts +7 -0
  733. package/dist/plugins/manifest.js +22 -0
  734. package/dist/plugins/manifest.js.map +1 -0
  735. package/dist/plugins/registry.d.ts +9 -0
  736. package/dist/plugins/registry.js +24 -0
  737. package/dist/plugins/registry.js.map +1 -0
  738. package/dist/plugins/resolvers.d.ts +2 -0
  739. package/dist/plugins/resolvers.js +126 -0
  740. package/dist/plugins/resolvers.js.map +1 -0
  741. package/dist/plugins/types.d.ts +35 -0
  742. package/dist/plugins/types.js +2 -0
  743. package/dist/plugins/types.js.map +1 -0
  744. package/dist/plugins/validator.d.ts +3 -0
  745. package/dist/plugins/validator.js +50 -0
  746. package/dist/plugins/validator.js.map +1 -0
  747. package/dist/preflight/claude-auth.d.ts +14 -12
  748. package/dist/preflight/claude-auth.js +23 -37
  749. package/dist/preflight/claude-auth.js.map +1 -1
  750. package/dist/preflight/claude-required.d.ts +8 -0
  751. package/dist/preflight/claude-required.js +17 -0
  752. package/dist/preflight/claude-required.js.map +1 -0
  753. package/dist/runner/claude.d.ts +3 -3
  754. package/dist/runner/claude.js +66 -26
  755. package/dist/runner/claude.js.map +1 -1
  756. package/dist/runner/runner.d.ts +33 -2
  757. package/dist/runner/simple.d.ts +2 -2
  758. package/dist/runner/simple.js +2 -2
  759. package/dist/runner/simple.js.map +1 -1
  760. package/dist/scripts/donation-consumption-acceptance.d.ts +81 -0
  761. package/dist/scripts/donation-consumption-acceptance.js +1385 -0
  762. package/dist/scripts/donation-consumption-acceptance.js.map +1 -0
  763. package/dist/scripts/fix-node-pty.mjs +113 -0
  764. package/dist/setup/claude-code-install.d.ts +19 -0
  765. package/dist/setup/claude-code-install.js +51 -0
  766. package/dist/setup/claude-code-install.js.map +1 -0
  767. package/dist/setup-mode.d.ts +34 -0
  768. package/dist/setup-mode.js +49 -0
  769. package/dist/setup-mode.js.map +1 -0
  770. package/dist/solver-nets/contracts.d.ts +2 -0
  771. package/dist/solver-nets/contracts.js +2 -0
  772. package/dist/solver-nets/contracts.js.map +1 -0
  773. package/dist/solver-nets/prediction-operator-ux.d.ts +112 -0
  774. package/dist/solver-nets/prediction-operator-ux.js +463 -0
  775. package/dist/solver-nets/prediction-operator-ux.js.map +1 -0
  776. package/dist/solver-nets/registry.d.ts +64 -0
  777. package/dist/solver-nets/registry.js +218 -0
  778. package/dist/solver-nets/registry.js.map +1 -0
  779. package/dist/solver-types/_session-derived-distill.d.ts +28 -0
  780. package/dist/solver-types/_session-derived-distill.js +52 -0
  781. package/dist/solver-types/_session-derived-distill.js.map +1 -0
  782. package/dist/solver-types/_session-derived-pool.d.ts +10 -0
  783. package/dist/solver-types/_session-derived-pool.js +27 -0
  784. package/dist/solver-types/_session-derived-pool.js.map +1 -0
  785. package/dist/solver-types/_session-derived-state.d.ts +17 -0
  786. package/dist/solver-types/_session-derived-state.js +25 -0
  787. package/dist/solver-types/_session-derived-state.js.map +1 -0
  788. package/dist/solver-types/_swe-rebench-v2-aggregate.d.ts +31 -0
  789. package/dist/solver-types/_swe-rebench-v2-aggregate.js +49 -0
  790. package/dist/solver-types/_swe-rebench-v2-aggregate.js.map +1 -0
  791. package/dist/solver-types/_swe-rebench-v2-escrow.d.ts +27 -0
  792. package/dist/solver-types/_swe-rebench-v2-escrow.js +26 -0
  793. package/dist/solver-types/_swe-rebench-v2-escrow.js.map +1 -0
  794. package/dist/solver-types/_swe-rebench-v2-pool.d.ts +51 -0
  795. package/dist/solver-types/_swe-rebench-v2-pool.js +72 -0
  796. package/dist/solver-types/_swe-rebench-v2-pool.js.map +1 -0
  797. package/dist/solver-types/_swe-rebench-v2-state.d.ts +24 -0
  798. package/dist/solver-types/_swe-rebench-v2-state.js +54 -0
  799. package/dist/solver-types/_swe-rebench-v2-state.js.map +1 -0
  800. package/dist/solver-types/constants.d.ts +5 -0
  801. package/dist/solver-types/constants.js +6 -0
  802. package/dist/solver-types/constants.js.map +1 -0
  803. package/dist/solver-types/index.d.ts +10 -0
  804. package/dist/solver-types/index.js +32 -0
  805. package/dist/solver-types/index.js.map +1 -0
  806. package/dist/solver-types/learner-loop-test.d.ts +2 -0
  807. package/dist/solver-types/learner-loop-test.js +39 -0
  808. package/dist/solver-types/learner-loop-test.js.map +1 -0
  809. package/dist/solver-types/portfolio-v0.d.ts +2 -0
  810. package/dist/solver-types/portfolio-v0.js +13 -0
  811. package/dist/solver-types/portfolio-v0.js.map +1 -0
  812. package/dist/solver-types/prediction-apy-v0-auto.d.ts +27 -0
  813. package/dist/solver-types/prediction-apy-v0-auto.js +109 -0
  814. package/dist/solver-types/prediction-apy-v0-auto.js.map +1 -0
  815. package/dist/solver-types/prediction-apy-v0-template.d.ts +8 -0
  816. package/dist/solver-types/prediction-apy-v0-template.js +22 -0
  817. package/dist/solver-types/prediction-apy-v0-template.js.map +1 -0
  818. package/dist/solver-types/prediction-apy-v0.d.ts +3 -0
  819. package/dist/solver-types/prediction-apy-v0.js +25 -0
  820. package/dist/solver-types/prediction-apy-v0.js.map +1 -0
  821. package/dist/solver-types/prediction-v0-auto.d.ts +69 -0
  822. package/dist/solver-types/prediction-v0-auto.js +146 -0
  823. package/dist/solver-types/prediction-v0-auto.js.map +1 -0
  824. package/dist/solver-types/prediction-v0-template.d.ts +70 -0
  825. package/dist/solver-types/prediction-v0-template.js +145 -0
  826. package/dist/solver-types/prediction-v0-template.js.map +1 -0
  827. package/dist/solver-types/prediction-v0.d.ts +13 -0
  828. package/dist/solver-types/prediction-v0.js +31 -0
  829. package/dist/solver-types/prediction-v0.js.map +1 -0
  830. package/dist/solver-types/prediction-v1-auto.d.ts +122 -0
  831. package/dist/solver-types/prediction-v1-auto.js +366 -0
  832. package/dist/solver-types/prediction-v1-auto.js.map +1 -0
  833. package/dist/solver-types/prediction-v1.d.ts +11 -0
  834. package/dist/solver-types/prediction-v1.js +27 -0
  835. package/dist/solver-types/prediction-v1.js.map +1 -0
  836. package/dist/solver-types/session-derived.d.ts +2 -0
  837. package/dist/solver-types/session-derived.js +24 -0
  838. package/dist/solver-types/session-derived.js.map +1 -0
  839. package/dist/solver-types/solver-type.d.ts +53 -0
  840. package/dist/solver-types/solver-type.js +6 -0
  841. package/dist/solver-types/solver-type.js.map +1 -0
  842. package/dist/solver-types/swe-rebench-v2-auto.d.ts +38 -0
  843. package/dist/solver-types/swe-rebench-v2-auto.js +56 -0
  844. package/dist/solver-types/swe-rebench-v2-auto.js.map +1 -0
  845. package/dist/solver-types/swe-rebench-v2.d.ts +69 -0
  846. package/dist/solver-types/swe-rebench-v2.js +356 -0
  847. package/dist/solver-types/swe-rebench-v2.js.map +1 -0
  848. package/dist/solvernets/daemon-init.d.ts +291 -0
  849. package/dist/solvernets/daemon-init.js +431 -0
  850. package/dist/solvernets/daemon-init.js.map +1 -0
  851. package/dist/solvernets/launch-state-machine.d.ts +165 -0
  852. package/dist/solvernets/launch-state-machine.js +406 -0
  853. package/dist/solvernets/launch-state-machine.js.map +1 -0
  854. package/dist/solvernets/launched-record-dispatcher.d.ts +55 -0
  855. package/dist/solvernets/launched-record-dispatcher.js +169 -0
  856. package/dist/solvernets/launched-record-dispatcher.js.map +1 -0
  857. package/dist/solvernets/lifecycle-transitions.d.ts +183 -0
  858. package/dist/solvernets/lifecycle-transitions.js +386 -0
  859. package/dist/solvernets/lifecycle-transitions.js.map +1 -0
  860. package/dist/solvernets/manifest.d.ts +120 -0
  861. package/dist/solvernets/manifest.js +166 -0
  862. package/dist/solvernets/manifest.js.map +1 -0
  863. package/dist/solvernets/most-recent-wins.d.ts +77 -0
  864. package/dist/solvernets/most-recent-wins.js +82 -0
  865. package/dist/solvernets/most-recent-wins.js.map +1 -0
  866. package/dist/solvernets/registry-client-erc8004.d.ts +239 -0
  867. package/dist/solvernets/registry-client-erc8004.js +396 -0
  868. package/dist/solvernets/registry-client-erc8004.js.map +1 -0
  869. package/dist/solvernets/registry-client.d.ts +121 -0
  870. package/dist/solvernets/registry-client.js +19 -0
  871. package/dist/solvernets/registry-client.js.map +1 -0
  872. package/dist/solvernets/store.d.ts +298 -0
  873. package/dist/solvernets/store.js +271 -0
  874. package/dist/solvernets/store.js.map +1 -0
  875. package/dist/store/captures.d.ts +85 -0
  876. package/dist/store/captures.js +167 -0
  877. package/dist/store/captures.js.map +1 -0
  878. package/dist/store/store.d.ts +235 -21
  879. package/dist/store/store.js +1000 -46
  880. package/dist/store/store.js.map +1 -1
  881. package/dist/tasks/posting-service.d.ts +25 -0
  882. package/dist/tasks/posting-service.js +149 -0
  883. package/dist/tasks/posting-service.js.map +1 -0
  884. package/dist/tasks/signing.d.ts +4 -0
  885. package/dist/tasks/signing.js +18 -0
  886. package/dist/tasks/signing.js.map +1 -0
  887. package/dist/tasks/sources.d.ts +46 -0
  888. package/dist/tasks/sources.js +45 -0
  889. package/dist/tasks/sources.js.map +1 -0
  890. package/dist/templates/harnesses/alternative-harness/README.md.tmpl +44 -0
  891. package/dist/templates/harnesses/alternative-harness/gitignore.tmpl +3 -0
  892. package/dist/templates/harnesses/alternative-harness/jinn.manifest.json.tmpl +22 -0
  893. package/dist/templates/harnesses/alternative-harness/package.json.tmpl +26 -0
  894. package/dist/templates/harnesses/alternative-harness/src/coordinator.ts.tmpl +50 -0
  895. package/dist/templates/harnesses/alternative-harness/src/harness.ts.tmpl +31 -0
  896. package/dist/templates/harnesses/alternative-harness/src/index.ts.tmpl +44 -0
  897. package/dist/templates/harnesses/alternative-harness/src/mock-harness.ts.tmpl +41 -0
  898. package/dist/templates/harnesses/alternative-harness/src/phases/debrief.ts.tmpl +28 -0
  899. package/dist/templates/harnesses/alternative-harness/src/phases/execute.ts.tmpl +33 -0
  900. package/dist/templates/harnesses/alternative-harness/src/phases/improve.ts.tmpl +31 -0
  901. package/dist/templates/harnesses/alternative-harness/src/phases/memory.ts.tmpl +31 -0
  902. package/dist/templates/harnesses/alternative-harness/src/phases/orient.ts.tmpl +21 -0
  903. package/dist/templates/harnesses/alternative-harness/src/phases/plan.ts.tmpl +25 -0
  904. package/dist/templates/harnesses/alternative-harness/src/phases/strategize.ts.tmpl +29 -0
  905. package/dist/templates/harnesses/alternative-harness/test/coordinator.test.ts.tmpl +53 -0
  906. package/dist/templates/harnesses/alternative-harness/test/unit.test.ts.tmpl +55 -0
  907. package/dist/templates/harnesses/alternative-harness/tsconfig.json.tmpl +16 -0
  908. package/dist/templates/harnesses/evaluator/README.md.tmpl +36 -0
  909. package/dist/templates/harnesses/evaluator/gitignore.tmpl +3 -0
  910. package/dist/templates/harnesses/evaluator/jinn.manifest.json.tmpl +22 -0
  911. package/dist/templates/harnesses/evaluator/package.json.tmpl +26 -0
  912. package/dist/templates/harnesses/evaluator/src/index.ts.tmpl +35 -0
  913. package/dist/templates/harnesses/evaluator/test/unit.test.ts.tmpl +49 -0
  914. package/dist/templates/harnesses/evaluator/tsconfig.json.tmpl +16 -0
  915. package/dist/templates/harnesses/forecaster/README.md.tmpl +25 -0
  916. package/dist/templates/harnesses/forecaster/gitignore.tmpl +5 -0
  917. package/dist/templates/harnesses/forecaster/jinn.manifest.json.tmpl +22 -0
  918. package/dist/templates/harnesses/forecaster/package.json.tmpl +26 -0
  919. package/dist/templates/harnesses/forecaster/src/index.ts.tmpl +33 -0
  920. package/dist/templates/harnesses/forecaster/test/unit.test.ts.tmpl +42 -0
  921. package/dist/templates/harnesses/forecaster/tsconfig.json.tmpl +16 -0
  922. package/dist/trajectory/collector.d.ts +59 -0
  923. package/dist/trajectory/collector.js +164 -0
  924. package/dist/trajectory/collector.js.map +1 -0
  925. package/dist/trajectory/emit.d.ts +29 -0
  926. package/dist/trajectory/emit.js +81 -0
  927. package/dist/trajectory/emit.js.map +1 -0
  928. package/dist/trajectory/harness-bundle-rules/aider.d.ts +13 -0
  929. package/dist/trajectory/harness-bundle-rules/aider.js +26 -0
  930. package/dist/trajectory/harness-bundle-rules/aider.js.map +1 -0
  931. package/dist/trajectory/harness-bundle-rules/claude-code.d.ts +16 -0
  932. package/dist/trajectory/harness-bundle-rules/claude-code.js +71 -0
  933. package/dist/trajectory/harness-bundle-rules/claude-code.js.map +1 -0
  934. package/dist/trajectory/harness-bundle-rules/codex.d.ts +13 -0
  935. package/dist/trajectory/harness-bundle-rules/codex.js +96 -0
  936. package/dist/trajectory/harness-bundle-rules/codex.js.map +1 -0
  937. package/dist/trajectory/harness-bundle-rules/continue.d.ts +10 -0
  938. package/dist/trajectory/harness-bundle-rules/continue.js +43 -0
  939. package/dist/trajectory/harness-bundle-rules/continue.js.map +1 -0
  940. package/dist/trajectory/harness-bundle-rules/cursor.d.ts +20 -0
  941. package/dist/trajectory/harness-bundle-rules/cursor.js +55 -0
  942. package/dist/trajectory/harness-bundle-rules/cursor.js.map +1 -0
  943. package/dist/trajectory/harness-bundle-rules/gemini-cli.d.ts +15 -0
  944. package/dist/trajectory/harness-bundle-rules/gemini-cli.js +112 -0
  945. package/dist/trajectory/harness-bundle-rules/gemini-cli.js.map +1 -0
  946. package/dist/trajectory/harness-bundle-rules/types.d.ts +25 -0
  947. package/dist/trajectory/harness-bundle-rules/types.js +15 -0
  948. package/dist/trajectory/harness-bundle-rules/types.js.map +1 -0
  949. package/dist/trajectory/harness-bundle-schema.d.ts +74 -0
  950. package/dist/trajectory/harness-bundle-schema.js +34 -0
  951. package/dist/trajectory/harness-bundle-schema.js.map +1 -0
  952. package/dist/trajectory/harness-bundle.d.ts +73 -0
  953. package/dist/trajectory/harness-bundle.js +128 -0
  954. package/dist/trajectory/harness-bundle.js.map +1 -0
  955. package/dist/trajectory/hash-chain.d.ts +18 -0
  956. package/dist/trajectory/hash-chain.js +23 -0
  957. package/dist/trajectory/hash-chain.js.map +1 -0
  958. package/dist/trajectory/index.d.ts +28 -0
  959. package/dist/trajectory/index.js +28 -0
  960. package/dist/trajectory/index.js.map +1 -0
  961. package/dist/trajectory/llm-proxy-spans.d.ts +14 -0
  962. package/dist/trajectory/llm-proxy-spans.js +51 -0
  963. package/dist/trajectory/llm-proxy-spans.js.map +1 -0
  964. package/dist/trajectory/llm-proxy.d.ts +32 -0
  965. package/dist/trajectory/llm-proxy.js +97 -0
  966. package/dist/trajectory/llm-proxy.js.map +1 -0
  967. package/dist/trajectory/processors/credential-scrub.d.ts +11 -0
  968. package/dist/trajectory/processors/credential-scrub.js +40 -0
  969. package/dist/trajectory/processors/credential-scrub.js.map +1 -0
  970. package/dist/trajectory/processors/identity-scrub.d.ts +18 -0
  971. package/dist/trajectory/processors/identity-scrub.js +43 -0
  972. package/dist/trajectory/processors/identity-scrub.js.map +1 -0
  973. package/dist/trajectory/processors/manifest-builder.d.ts +18 -0
  974. package/dist/trajectory/processors/manifest-builder.js +26 -0
  975. package/dist/trajectory/processors/manifest-builder.js.map +1 -0
  976. package/dist/trajectory/processors/path-scrub.d.ts +15 -0
  977. package/dist/trajectory/processors/path-scrub.js +52 -0
  978. package/dist/trajectory/processors/path-scrub.js.map +1 -0
  979. package/dist/trajectory/processors/sentinel.d.ts +16 -0
  980. package/dist/trajectory/processors/sentinel.js +17 -0
  981. package/dist/trajectory/processors/sentinel.js.map +1 -0
  982. package/dist/trajectory/processors/sqlite-exporter.d.ts +32 -0
  983. package/dist/trajectory/processors/sqlite-exporter.js +48 -0
  984. package/dist/trajectory/processors/sqlite-exporter.js.map +1 -0
  985. package/dist/trajectory/processors/transcript-content-scrub.d.ts +9 -0
  986. package/dist/trajectory/processors/transcript-content-scrub.js +58 -0
  987. package/dist/trajectory/processors/transcript-content-scrub.js.map +1 -0
  988. package/dist/trajectory/receiver.d.ts +37 -0
  989. package/dist/trajectory/receiver.js +616 -0
  990. package/dist/trajectory/receiver.js.map +1 -0
  991. package/dist/trajectory/schema.d.ts +102 -14
  992. package/dist/trajectory/schema.js +29 -0
  993. package/dist/trajectory/schema.js.map +1 -1
  994. package/dist/trajectory/secret-scrub.d.ts +32 -0
  995. package/dist/trajectory/secret-scrub.js +51 -0
  996. package/dist/trajectory/secret-scrub.js.map +1 -0
  997. package/dist/trajectory/span-profile.d.ts +27 -0
  998. package/dist/trajectory/span-profile.js +51 -0
  999. package/dist/trajectory/span-profile.js.map +1 -0
  1000. package/dist/trajectory/synthetic-span-builder.d.ts +50 -0
  1001. package/dist/trajectory/synthetic-span-builder.js +115 -0
  1002. package/dist/trajectory/synthetic-span-builder.js.map +1 -0
  1003. package/dist/trajectory/transcript-parsers/aider-history.d.ts +42 -0
  1004. package/dist/trajectory/transcript-parsers/aider-history.js +182 -0
  1005. package/dist/trajectory/transcript-parsers/aider-history.js.map +1 -0
  1006. package/dist/trajectory/transcript-parsers/claude-code-jsonl.d.ts +37 -0
  1007. package/dist/trajectory/transcript-parsers/claude-code-jsonl.js +143 -0
  1008. package/dist/trajectory/transcript-parsers/claude-code-jsonl.js.map +1 -0
  1009. package/dist/trajectory/transcript-parsers/codex-session.d.ts +36 -0
  1010. package/dist/trajectory/transcript-parsers/codex-session.js +135 -0
  1011. package/dist/trajectory/transcript-parsers/codex-session.js.map +1 -0
  1012. package/dist/trajectory/transcript-parsers/continue-devdata.d.ts +41 -0
  1013. package/dist/trajectory/transcript-parsers/continue-devdata.js +191 -0
  1014. package/dist/trajectory/transcript-parsers/continue-devdata.js.map +1 -0
  1015. package/dist/trajectory/transcript-parsers/cursor-sqlite.d.ts +38 -0
  1016. package/dist/trajectory/transcript-parsers/cursor-sqlite.js +119 -0
  1017. package/dist/trajectory/transcript-parsers/cursor-sqlite.js.map +1 -0
  1018. package/dist/trajectory/transcript-parsers/gemini-session.d.ts +35 -0
  1019. package/dist/trajectory/transcript-parsers/gemini-session.js +138 -0
  1020. package/dist/trajectory/transcript-parsers/gemini-session.js.map +1 -0
  1021. package/dist/trajectory/transcript-parsers/types.d.ts +101 -0
  1022. package/dist/trajectory/transcript-parsers/types.js +33 -0
  1023. package/dist/trajectory/transcript-parsers/types.js.map +1 -0
  1024. package/dist/trajectory/transcript-watcher.d.ts +62 -0
  1025. package/dist/trajectory/transcript-watcher.js +157 -0
  1026. package/dist/trajectory/transcript-watcher.js.map +1 -0
  1027. package/dist/trajectory/wrappers/http.d.ts +37 -0
  1028. package/dist/trajectory/wrappers/http.js +85 -0
  1029. package/dist/trajectory/wrappers/http.js.map +1 -0
  1030. package/dist/trajectory/wrappers/mcp.d.ts +17 -0
  1031. package/dist/trajectory/wrappers/mcp.js +58 -0
  1032. package/dist/trajectory/wrappers/mcp.js.map +1 -0
  1033. package/dist/trajectory/wrappers/subprocess.d.ts +32 -0
  1034. package/dist/trajectory/wrappers/subprocess.js +70 -0
  1035. package/dist/trajectory/wrappers/subprocess.js.map +1 -0
  1036. package/dist/tx-retry.js +90 -9
  1037. package/dist/tx-retry.js.map +1 -1
  1038. package/dist/types/envelope.d.ts +2742 -0
  1039. package/dist/types/envelope.js +149 -0
  1040. package/dist/types/envelope.js.map +1 -0
  1041. package/dist/types/index.d.ts +4 -4
  1042. package/dist/types/index.js +4 -4
  1043. package/dist/types/index.js.map +1 -1
  1044. package/dist/types/payloads/index.d.ts +12 -0
  1045. package/dist/types/payloads/index.js +62 -0
  1046. package/dist/types/payloads/index.js.map +1 -0
  1047. package/dist/types/payloads/portfolio-v0.d.ts +481 -0
  1048. package/dist/types/payloads/portfolio-v0.js +94 -0
  1049. package/dist/types/payloads/portfolio-v0.js.map +1 -0
  1050. package/dist/types/payloads/prediction-apy-v0.d.ts +231 -0
  1051. package/dist/types/payloads/prediction-apy-v0.js +63 -0
  1052. package/dist/types/payloads/prediction-apy-v0.js.map +1 -0
  1053. package/dist/types/payloads/prediction-v0.d.ts +262 -0
  1054. package/dist/types/payloads/prediction-v0.js +73 -0
  1055. package/dist/types/payloads/prediction-v0.js.map +1 -0
  1056. package/dist/types/payloads/prediction-v1.d.ts +2 -0
  1057. package/dist/types/payloads/prediction-v1.js +2 -0
  1058. package/dist/types/payloads/prediction-v1.js.map +1 -0
  1059. package/dist/types/portfolio.d.ts +31 -698
  1060. package/dist/types/portfolio.js +20 -110
  1061. package/dist/types/portfolio.js.map +1 -1
  1062. package/dist/types/prediction-apy.d.ts +26 -366
  1063. package/dist/types/prediction-apy.js +12 -68
  1064. package/dist/types/prediction-apy.js.map +1 -1
  1065. package/dist/types/prediction-v1.d.ts +2 -0
  1066. package/dist/types/prediction-v1.js +2 -0
  1067. package/dist/types/prediction-v1.js.map +1 -0
  1068. package/dist/types/prediction.d.ts +546 -382
  1069. package/dist/types/prediction.js +16 -87
  1070. package/dist/types/prediction.js.map +1 -1
  1071. package/dist/types/session-provenance.d.ts +71 -0
  1072. package/dist/types/session-provenance.js +19 -0
  1073. package/dist/types/session-provenance.js.map +1 -0
  1074. package/dist/types/task-document.d.ts +1121 -0
  1075. package/dist/types/task-document.js +99 -0
  1076. package/dist/types/task-document.js.map +1 -0
  1077. package/dist/types/task.d.ts +805 -0
  1078. package/dist/types/task.js +88 -0
  1079. package/dist/types/task.js.map +1 -0
  1080. package/dist/types/window.d.ts +12 -0
  1081. package/dist/types/window.js +6 -0
  1082. package/dist/types/window.js.map +1 -0
  1083. package/dist/util/path-safety.d.ts +21 -0
  1084. package/dist/util/path-safety.js +28 -0
  1085. package/dist/util/path-safety.js.map +1 -0
  1086. package/dist/util/redact-rpc-urls.d.ts +5 -0
  1087. package/dist/util/redact-rpc-urls.js +9 -0
  1088. package/dist/util/redact-rpc-urls.js.map +1 -0
  1089. package/dist/vendor/@jinn-network/sdk/README.md +89 -0
  1090. package/dist/vendor/@jinn-network/sdk/dist/capabilities.d.ts +52 -0
  1091. package/dist/vendor/@jinn-network/sdk/dist/capabilities.js +1 -0
  1092. package/dist/vendor/@jinn-network/sdk/dist/checkpoint.d.ts +120 -0
  1093. package/dist/vendor/@jinn-network/sdk/dist/checkpoint.js +39 -0
  1094. package/dist/vendor/@jinn-network/sdk/dist/contracts.d.ts +145 -0
  1095. package/dist/vendor/@jinn-network/sdk/dist/contracts.js +317 -0
  1096. package/dist/vendor/@jinn-network/sdk/dist/harness.d.ts +120 -0
  1097. package/dist/vendor/@jinn-network/sdk/dist/harness.js +31 -0
  1098. package/dist/vendor/@jinn-network/sdk/dist/index.d.ts +4 -0
  1099. package/dist/vendor/@jinn-network/sdk/dist/index.js +7 -0
  1100. package/dist/vendor/@jinn-network/sdk/dist/json-schema.d.ts +32 -0
  1101. package/dist/vendor/@jinn-network/sdk/dist/json-schema.js +131 -0
  1102. package/dist/vendor/@jinn-network/sdk/dist/manifest.d.ts +69 -0
  1103. package/dist/vendor/@jinn-network/sdk/dist/manifest.js +3 -0
  1104. package/dist/vendor/@jinn-network/sdk/dist/payloads/prediction-v1.d.ts +223 -0
  1105. package/dist/vendor/@jinn-network/sdk/dist/payloads/prediction-v1.js +64 -0
  1106. package/dist/vendor/@jinn-network/sdk/dist/payloads/session-derived.d.ts +359 -0
  1107. package/dist/vendor/@jinn-network/sdk/dist/payloads/session-derived.js +60 -0
  1108. package/dist/vendor/@jinn-network/sdk/dist/payloads/swe-rebench-v2.d.ts +110 -0
  1109. package/dist/vendor/@jinn-network/sdk/dist/payloads/swe-rebench-v2.js +58 -0
  1110. package/dist/vendor/@jinn-network/sdk/dist/plugins.d.ts +36 -0
  1111. package/dist/vendor/@jinn-network/sdk/dist/plugins.js +54 -0
  1112. package/dist/vendor/@jinn-network/sdk/dist/prediction-v1.d.ts +870 -0
  1113. package/dist/vendor/@jinn-network/sdk/dist/prediction-v1.js +80 -0
  1114. package/dist/vendor/@jinn-network/sdk/dist/session-derived/distill-prompt-v1.d.ts +2 -0
  1115. package/dist/vendor/@jinn-network/sdk/dist/session-derived/distill-prompt-v1.js +10 -0
  1116. package/dist/vendor/@jinn-network/sdk/dist/solvernets/index.d.ts +6 -0
  1117. package/dist/vendor/@jinn-network/sdk/dist/solvernets/index.js +8 -0
  1118. package/dist/vendor/@jinn-network/sdk/dist/solvernets/manifest-schema.d.ts +559 -0
  1119. package/dist/vendor/@jinn-network/sdk/dist/solvernets/manifest-schema.js +126 -0
  1120. package/dist/vendor/@jinn-network/sdk/dist/solvernets/prediction-v1.d.ts +6 -0
  1121. package/dist/vendor/@jinn-network/sdk/dist/solvernets/prediction-v1.js +3 -0
  1122. package/dist/vendor/@jinn-network/sdk/dist/solvernets/swe-rebench-v2.d.ts +4 -0
  1123. package/dist/vendor/@jinn-network/sdk/dist/solvernets/swe-rebench-v2.js +2 -0
  1124. package/dist/vendor/@jinn-network/sdk/dist/swe-rebench-v2.d.ts +66 -0
  1125. package/dist/vendor/@jinn-network/sdk/dist/swe-rebench-v2.js +44 -0
  1126. package/dist/vendor/@jinn-network/sdk/dist/types.d.ts +116 -0
  1127. package/dist/vendor/@jinn-network/sdk/dist/types.js +21 -0
  1128. package/dist/vendor/@jinn-network/sdk/package.json +43 -0
  1129. package/dist/venues/hyperliquid/account-value.d.ts +1 -1
  1130. package/dist/venues/hyperliquid/account-value.js +1 -1
  1131. package/dist/venues/polymarket/client.d.ts +77 -0
  1132. package/dist/venues/polymarket/client.js +309 -0
  1133. package/dist/venues/polymarket/client.js.map +1 -0
  1134. package/dist/withdraw/run-withdraw-plan.js +0 -2
  1135. package/dist/withdraw/run-withdraw-plan.js.map +1 -1
  1136. package/dist/x402/acquire.d.ts +14 -3
  1137. package/dist/x402/acquire.js +28 -11
  1138. package/dist/x402/acquire.js.map +1 -1
  1139. package/dist/x402/handler.d.ts +15 -3
  1140. package/dist/x402/handler.js +189 -24
  1141. package/dist/x402/handler.js.map +1 -1
  1142. package/package.json +60 -15
  1143. package/plugins/claude-code-learner/.claude-plugin/plugin.json +9 -0
  1144. package/plugins/claude-code-learner/.codex-plugin/plugin.json +39 -0
  1145. package/plugins/claude-code-learner/AGENTS.md +40 -0
  1146. package/plugins/claude-code-learner/CLAUDE.md +33 -0
  1147. package/plugins/claude-code-learner/README.md +59 -0
  1148. package/plugins/claude-code-learner/hooks/hooks.json +16 -0
  1149. package/plugins/claude-code-learner/hooks/session-start +38 -0
  1150. package/plugins/claude-code-learner/skills/learn/SKILL.md +412 -0
  1151. package/plugins/claude-code-learner/skills/learn/analyst-prompt.md +68 -0
  1152. package/plugins/claude-code-learner/skills/learn/consolidator-prompt.md +94 -0
  1153. package/plugins/claude-code-learner/skills/learn/explorer-prompt.md +53 -0
  1154. package/plugins/claude-code-learner/skills/learn/planner-prompt.md +87 -0
  1155. package/plugins/claude-code-learner/skills/learn/promoter-prompt.md +113 -0
  1156. package/plugins/claude-code-learner/skills/learn/step-worker-prompt.md +47 -0
  1157. package/plugins/claude-code-learner/skills/learn/strategist-prompt.md +85 -0
  1158. package/plugins/jinn-prediction-plugin/.claude-plugin/plugin.json +19 -0
  1159. package/plugins/jinn-prediction-plugin/.mcp.json +8 -0
  1160. package/plugins/jinn-prediction-plugin/GEMINI.md +7 -0
  1161. package/plugins/jinn-prediction-plugin/gemini-extension.json +13 -0
  1162. package/plugins/jinn-prediction-plugin/jinn.plugin.json +26 -0
  1163. package/plugins/jinn-prediction-plugin/mcp/polymarket-server.mjs +322 -0
  1164. package/plugins/jinn-prediction-plugin/schemas/prediction-v0-solution.schema.json +12 -0
  1165. package/plugins/jinn-prediction-plugin/schemas/prediction-v0-task.schema.json +25 -0
  1166. package/plugins/jinn-prediction-plugin/schemas/prediction-v0-verdict.schema.json +11 -0
  1167. package/plugins/jinn-prediction-plugin/schemas/prediction-v1-solution.schema.json +34 -0
  1168. package/plugins/jinn-prediction-plugin/schemas/prediction-v1-task.schema.json +118 -0
  1169. package/plugins/jinn-prediction-plugin/schemas/prediction-v1-verdict.schema.json +84 -0
  1170. package/plugins/jinn-prediction-plugin/skills/base-rate-forecasting/SKILL.md +3 -0
  1171. package/plugins/jinn-prediction-plugin/skills/calibration/SKILL.md +3 -0
  1172. package/plugins/jinn-prediction-plugin/skills/common-biases/SKILL.md +3 -0
  1173. package/plugins/jinn-prediction-plugin/skills/polymarket-task-handling/SKILL.md +5 -0
  1174. package/plugins/jinn-prediction-plugin/skills/prediction-corpus-retrieval/SKILL.md +35 -0
  1175. package/plugins/network-tools/.claude-plugin/plugin.json +12 -0
  1176. package/plugins/network-tools/.codex-plugin/plugin.json +39 -0
  1177. package/plugins/network-tools/.mcp.json +11 -0
  1178. package/plugins/network-tools/jinn.plugin.json +29 -0
  1179. package/plugins/network-tools/mcp/jinn-client-server.mjs +110 -0
  1180. package/plugins/swe-rebench-v2-runtime/.claude-plugin/plugin.json +5 -0
  1181. package/plugins/swe-rebench-v2-runtime/.codex-plugin/plugin.json +39 -0
  1182. package/plugins/swe-rebench-v2-runtime/README.md +11 -0
  1183. package/plugins/swe-rebench-v2-runtime/jinn.plugin.json +12 -0
  1184. package/plugins/swe-rebench-v2-runtime/skills/orient/SKILL.md +25 -0
  1185. package/plugins/swe-rebench-v2-runtime/skills/plan/SKILL.md +64 -0
  1186. package/skills/jinn-operator/SKILL.md +120 -101
  1187. package/templates/harnesses/alternative-harness/README.md.tmpl +44 -0
  1188. package/templates/harnesses/alternative-harness/gitignore.tmpl +3 -0
  1189. package/templates/harnesses/alternative-harness/jinn.manifest.json.tmpl +22 -0
  1190. package/templates/harnesses/alternative-harness/package.json.tmpl +26 -0
  1191. package/templates/harnesses/alternative-harness/src/coordinator.ts.tmpl +50 -0
  1192. package/templates/harnesses/alternative-harness/src/harness.ts.tmpl +31 -0
  1193. package/templates/harnesses/alternative-harness/src/index.ts.tmpl +44 -0
  1194. package/templates/harnesses/alternative-harness/src/mock-harness.ts.tmpl +41 -0
  1195. package/templates/harnesses/alternative-harness/src/phases/debrief.ts.tmpl +28 -0
  1196. package/templates/harnesses/alternative-harness/src/phases/execute.ts.tmpl +33 -0
  1197. package/templates/harnesses/alternative-harness/src/phases/improve.ts.tmpl +31 -0
  1198. package/templates/harnesses/alternative-harness/src/phases/memory.ts.tmpl +31 -0
  1199. package/templates/harnesses/alternative-harness/src/phases/orient.ts.tmpl +21 -0
  1200. package/templates/harnesses/alternative-harness/src/phases/plan.ts.tmpl +25 -0
  1201. package/templates/harnesses/alternative-harness/src/phases/strategize.ts.tmpl +29 -0
  1202. package/templates/harnesses/alternative-harness/test/coordinator.test.ts.tmpl +53 -0
  1203. package/templates/harnesses/alternative-harness/test/unit.test.ts.tmpl +55 -0
  1204. package/templates/harnesses/alternative-harness/tsconfig.json.tmpl +16 -0
  1205. package/templates/harnesses/evaluator/README.md.tmpl +36 -0
  1206. package/templates/harnesses/evaluator/gitignore.tmpl +3 -0
  1207. package/templates/harnesses/evaluator/jinn.manifest.json.tmpl +22 -0
  1208. package/templates/harnesses/evaluator/package.json.tmpl +26 -0
  1209. package/templates/harnesses/evaluator/src/index.ts.tmpl +35 -0
  1210. package/templates/harnesses/evaluator/test/unit.test.ts.tmpl +49 -0
  1211. package/templates/harnesses/evaluator/tsconfig.json.tmpl +16 -0
  1212. package/templates/harnesses/forecaster/README.md.tmpl +25 -0
  1213. package/templates/harnesses/forecaster/gitignore.tmpl +5 -0
  1214. package/templates/harnesses/forecaster/jinn.manifest.json.tmpl +22 -0
  1215. package/templates/harnesses/forecaster/package.json.tmpl +26 -0
  1216. package/templates/harnesses/forecaster/src/index.ts.tmpl +33 -0
  1217. package/templates/harnesses/forecaster/test/unit.test.ts.tmpl +42 -0
  1218. package/templates/harnesses/forecaster/tsconfig.json.tmpl +16 -0
  1219. package/dist/adapters/claim-registry/abi.d.ts +0 -127
  1220. package/dist/adapters/claim-registry/abi.js +0 -93
  1221. package/dist/adapters/claim-registry/abi.js.map +0 -1
  1222. package/dist/adapters/claim-registry/client.d.ts +0 -89
  1223. package/dist/adapters/claim-registry/client.js +0 -205
  1224. package/dist/adapters/claim-registry/client.js.map +0 -1
  1225. package/dist/adapters/mech/claim-policy.d.ts +0 -40
  1226. package/dist/adapters/mech/claim-policy.js +0 -104
  1227. package/dist/adapters/mech/claim-policy.js.map +0 -1
  1228. package/dist/bin/jinn-mcp.d.ts +0 -2
  1229. package/dist/bin/jinn-mcp.js +0 -10
  1230. package/dist/bin/jinn-mcp.js.map +0 -1
  1231. package/dist/cli/commands/intents.d.ts +0 -17
  1232. package/dist/cli/commands/intents.js +0 -489
  1233. package/dist/cli/commands/intents.js.map +0 -1
  1234. package/dist/cli/commands/plugin-install.js +0 -803
  1235. package/dist/cli/commands/plugin-install.js.map +0 -1
  1236. package/dist/cli/commands/submit-intent.js +0 -245
  1237. package/dist/cli/commands/submit-intent.js.map +0 -1
  1238. package/dist/cli/intent-registry-access.d.ts +0 -62
  1239. package/dist/cli/intent-registry-access.js +0 -165
  1240. package/dist/cli/intent-registry-access.js.map +0 -1
  1241. package/dist/discovery/registry.d.ts +0 -97
  1242. package/dist/discovery/registry.js +0 -177
  1243. package/dist/discovery/registry.js.map +0 -1
  1244. package/dist/discovery/subgraph.d.ts +0 -37
  1245. package/dist/discovery/subgraph.js +0 -87
  1246. package/dist/discovery/subgraph.js.map +0 -1
  1247. package/dist/intents/kinds/constants.d.ts +0 -5
  1248. package/dist/intents/kinds/constants.js +0 -6
  1249. package/dist/intents/kinds/constants.js.map +0 -1
  1250. package/dist/intents/kinds/index.d.ts +0 -28
  1251. package/dist/intents/kinds/index.js +0 -50
  1252. package/dist/intents/kinds/index.js.map +0 -1
  1253. package/dist/intents/kinds/portfolio-v0.d.ts +0 -2
  1254. package/dist/intents/kinds/portfolio-v0.js +0 -13
  1255. package/dist/intents/kinds/portfolio-v0.js.map +0 -1
  1256. package/dist/intents/kinds/prediction-apy-v0.d.ts +0 -3
  1257. package/dist/intents/kinds/prediction-apy-v0.js +0 -21
  1258. package/dist/intents/kinds/prediction-apy-v0.js.map +0 -1
  1259. package/dist/intents/kinds/prediction-v0.d.ts +0 -3
  1260. package/dist/intents/kinds/prediction-v0.js +0 -32
  1261. package/dist/intents/kinds/prediction-v0.js.map +0 -1
  1262. package/dist/intents/kinds/spec-kind.d.ts +0 -38
  1263. package/dist/intents/kinds/spec-kind.js +0 -6
  1264. package/dist/intents/kinds/spec-kind.js.map +0 -1
  1265. package/dist/intents/posting-service.d.ts +0 -26
  1266. package/dist/intents/posting-service.js +0 -218
  1267. package/dist/intents/posting-service.js.map +0 -1
  1268. package/dist/intents/prediction-apy-v0-auto.d.ts +0 -11
  1269. package/dist/intents/prediction-apy-v0-auto.js +0 -46
  1270. package/dist/intents/prediction-apy-v0-auto.js.map +0 -1
  1271. package/dist/intents/prediction-apy-v0-template.d.ts +0 -8
  1272. package/dist/intents/prediction-apy-v0-template.js +0 -22
  1273. package/dist/intents/prediction-apy-v0-template.js.map +0 -1
  1274. package/dist/intents/prediction-v0-auto.d.ts +0 -53
  1275. package/dist/intents/prediction-v0-auto.js +0 -84
  1276. package/dist/intents/prediction-v0-auto.js.map +0 -1
  1277. package/dist/intents/prediction-v0-template.d.ts +0 -70
  1278. package/dist/intents/prediction-v0-template.js +0 -145
  1279. package/dist/intents/prediction-v0-template.js.map +0 -1
  1280. package/dist/intents/sources.d.ts +0 -39
  1281. package/dist/intents/sources.js +0 -42
  1282. package/dist/intents/sources.js.map +0 -1
  1283. package/dist/restorer/engine/canonical-json.d.ts +0 -18
  1284. package/dist/restorer/engine/canonical-json.js +0 -59
  1285. package/dist/restorer/engine/canonical-json.js.map +0 -1
  1286. package/dist/restorer/engine/claim.d.ts +0 -69
  1287. package/dist/restorer/engine/claim.js +0 -104
  1288. package/dist/restorer/engine/claim.js.map +0 -1
  1289. package/dist/restorer/engine/delivery.d.ts +0 -52
  1290. package/dist/restorer/engine/delivery.js +0 -63
  1291. package/dist/restorer/engine/delivery.js.map +0 -1
  1292. package/dist/restorer/engine/engine.d.ts +0 -213
  1293. package/dist/restorer/engine/engine.js +0 -769
  1294. package/dist/restorer/engine/engine.js.map +0 -1
  1295. package/dist/restorer/engine/manifest-assembly.d.ts +0 -67
  1296. package/dist/restorer/engine/manifest-assembly.js +0 -79
  1297. package/dist/restorer/engine/manifest-assembly.js.map +0 -1
  1298. package/dist/restorer/engine/packaging.d.ts +0 -87
  1299. package/dist/restorer/engine/packaging.js +0 -350
  1300. package/dist/restorer/engine/packaging.js.map +0 -1
  1301. package/dist/restorer/engine/persistence.d.ts +0 -170
  1302. package/dist/restorer/engine/persistence.js +0 -381
  1303. package/dist/restorer/engine/persistence.js.map +0 -1
  1304. package/dist/restorer/engine/recovery.d.ts +0 -22
  1305. package/dist/restorer/engine/recovery.js +0 -24
  1306. package/dist/restorer/engine/recovery.js.map +0 -1
  1307. package/dist/restorer/engine/registry.d.ts +0 -62
  1308. package/dist/restorer/engine/registry.js +0 -73
  1309. package/dist/restorer/engine/registry.js.map +0 -1
  1310. package/dist/restorer/engine/signing.d.ts +0 -30
  1311. package/dist/restorer/engine/signing.js +0 -39
  1312. package/dist/restorer/engine/signing.js.map +0 -1
  1313. package/dist/restorer/engine/state.d.ts +0 -42
  1314. package/dist/restorer/engine/state.js +0 -87
  1315. package/dist/restorer/engine/state.js.map +0 -1
  1316. package/dist/restorer/impls/claude-mcp-hyperliquid/api-wallet.d.ts +0 -64
  1317. package/dist/restorer/impls/claude-mcp-hyperliquid/api-wallet.js.map +0 -1
  1318. package/dist/restorer/impls/claude-mcp-hyperliquid/index.d.ts +0 -104
  1319. package/dist/restorer/impls/claude-mcp-hyperliquid/index.js +0 -721
  1320. package/dist/restorer/impls/claude-mcp-hyperliquid/index.js.map +0 -1
  1321. package/dist/restorer/impls/claude-mcp-hyperliquid/mcp-tools.js.map +0 -1
  1322. package/dist/restorer/impls/claude-mcp-hyperliquid/safety-rails.js.map +0 -1
  1323. package/dist/restorer/impls/claude-mcp-hyperliquid/session-orchestrator.d.ts +0 -97
  1324. package/dist/restorer/impls/claude-mcp-hyperliquid/session-orchestrator.js +0 -226
  1325. package/dist/restorer/impls/claude-mcp-hyperliquid/session-orchestrator.js.map +0 -1
  1326. package/dist/restorer/impls/claude-mcp-prediction/index.d.ts +0 -44
  1327. package/dist/restorer/impls/claude-mcp-prediction/index.js +0 -239
  1328. package/dist/restorer/impls/claude-mcp-prediction/index.js.map +0 -1
  1329. package/dist/restorer/impls/claude-mcp-prediction/mcp-tools.js +0 -135
  1330. package/dist/restorer/impls/claude-mcp-prediction/mcp-tools.js.map +0 -1
  1331. package/dist/restorer/impls/claude-mcp-prediction/prompt.d.ts +0 -8
  1332. package/dist/restorer/impls/claude-mcp-prediction/prompt.js +0 -54
  1333. package/dist/restorer/impls/claude-mcp-prediction/prompt.js.map +0 -1
  1334. package/dist/restorer/impls/claude-mcp-prediction/session-orchestrator.d.ts +0 -36
  1335. package/dist/restorer/impls/claude-mcp-prediction/session-orchestrator.js +0 -137
  1336. package/dist/restorer/impls/claude-mcp-prediction/session-orchestrator.js.map +0 -1
  1337. package/dist/restorer/impls/claude-mcp-prediction/types.d.ts +0 -84
  1338. package/dist/restorer/impls/claude-mcp-prediction/types.js +0 -6
  1339. package/dist/restorer/impls/claude-mcp-prediction/types.js.map +0 -1
  1340. package/dist/restorer/impls/claude-mcp-prediction-apy/index.d.ts +0 -34
  1341. package/dist/restorer/impls/claude-mcp-prediction-apy/index.js +0 -233
  1342. package/dist/restorer/impls/claude-mcp-prediction-apy/index.js.map +0 -1
  1343. package/dist/restorer/impls/claude-mcp-prediction-apy/mcp-tools.js +0 -136
  1344. package/dist/restorer/impls/claude-mcp-prediction-apy/mcp-tools.js.map +0 -1
  1345. package/dist/restorer/impls/claude-mcp-prediction-apy/prompt.d.ts +0 -7
  1346. package/dist/restorer/impls/claude-mcp-prediction-apy/prompt.js +0 -46
  1347. package/dist/restorer/impls/claude-mcp-prediction-apy/prompt.js.map +0 -1
  1348. package/dist/restorer/impls/claude-mcp-prediction-apy/session-orchestrator.d.ts +0 -27
  1349. package/dist/restorer/impls/claude-mcp-prediction-apy/session-orchestrator.js +0 -128
  1350. package/dist/restorer/impls/claude-mcp-prediction-apy/session-orchestrator.js.map +0 -1
  1351. package/dist/restorer/impls/claude-mcp-prediction-apy/types.d.ts +0 -64
  1352. package/dist/restorer/impls/claude-mcp-prediction-apy/types.js +0 -6
  1353. package/dist/restorer/impls/claude-mcp-prediction-apy/types.js.map +0 -1
  1354. package/dist/restorer/impls/evaluation-context.d.ts +0 -16
  1355. package/dist/restorer/impls/evaluation-context.js +0 -18
  1356. package/dist/restorer/impls/evaluation-context.js.map +0 -1
  1357. package/dist/restorer/impls/index.d.ts +0 -46
  1358. package/dist/restorer/impls/index.js +0 -88
  1359. package/dist/restorer/impls/index.js.map +0 -1
  1360. package/dist/restorer/impls/legacy-claude/index.d.ts +0 -52
  1361. package/dist/restorer/impls/legacy-claude/index.js +0 -140
  1362. package/dist/restorer/impls/legacy-claude/index.js.map +0 -1
  1363. package/dist/restorer/impls/portfolio-v0-evaluator/canonical-metrics.d.ts +0 -68
  1364. package/dist/restorer/impls/portfolio-v0-evaluator/canonical-metrics.js +0 -117
  1365. package/dist/restorer/impls/portfolio-v0-evaluator/canonical-metrics.js.map +0 -1
  1366. package/dist/restorer/impls/portfolio-v0-evaluator/checks/availability.js.map +0 -1
  1367. package/dist/restorer/impls/portfolio-v0-evaluator/checks/consistency.d.ts +0 -78
  1368. package/dist/restorer/impls/portfolio-v0-evaluator/checks/consistency.js +0 -274
  1369. package/dist/restorer/impls/portfolio-v0-evaluator/checks/consistency.js.map +0 -1
  1370. package/dist/restorer/impls/portfolio-v0-evaluator/checks/eligibility.d.ts +0 -23
  1371. package/dist/restorer/impls/portfolio-v0-evaluator/checks/eligibility.js +0 -49
  1372. package/dist/restorer/impls/portfolio-v0-evaluator/checks/eligibility.js.map +0 -1
  1373. package/dist/restorer/impls/portfolio-v0-evaluator/checks/integrity.d.ts +0 -25
  1374. package/dist/restorer/impls/portfolio-v0-evaluator/checks/integrity.js +0 -44
  1375. package/dist/restorer/impls/portfolio-v0-evaluator/checks/integrity.js.map +0 -1
  1376. package/dist/restorer/impls/portfolio-v0-evaluator/checks/spec.d.ts +0 -17
  1377. package/dist/restorer/impls/portfolio-v0-evaluator/checks/spec.js +0 -43
  1378. package/dist/restorer/impls/portfolio-v0-evaluator/checks/spec.js.map +0 -1
  1379. package/dist/restorer/impls/portfolio-v0-evaluator/index.d.ts +0 -44
  1380. package/dist/restorer/impls/portfolio-v0-evaluator/index.js +0 -440
  1381. package/dist/restorer/impls/portfolio-v0-evaluator/index.js.map +0 -1
  1382. package/dist/restorer/impls/portfolio-v0-evaluator/score.js.map +0 -1
  1383. package/dist/restorer/impls/portfolio-v0-evaluator/types.d.ts +0 -34
  1384. package/dist/restorer/impls/portfolio-v0-evaluator/types.js.map +0 -1
  1385. package/dist/restorer/impls/prediction-apy-v0-baseline/index.d.ts +0 -40
  1386. package/dist/restorer/impls/prediction-apy-v0-baseline/index.js +0 -107
  1387. package/dist/restorer/impls/prediction-apy-v0-baseline/index.js.map +0 -1
  1388. package/dist/restorer/impls/prediction-apy-v0-baseline/strategy.js.map +0 -1
  1389. package/dist/restorer/impls/prediction-apy-v0-baseline/types.js.map +0 -1
  1390. package/dist/restorer/impls/prediction-apy-v0-evaluator/canonical-metrics.d.ts +0 -6
  1391. package/dist/restorer/impls/prediction-apy-v0-evaluator/canonical-metrics.js +0 -11
  1392. package/dist/restorer/impls/prediction-apy-v0-evaluator/canonical-metrics.js.map +0 -1
  1393. package/dist/restorer/impls/prediction-apy-v0-evaluator/index.d.ts +0 -42
  1394. package/dist/restorer/impls/prediction-apy-v0-evaluator/index.js +0 -208
  1395. package/dist/restorer/impls/prediction-apy-v0-evaluator/index.js.map +0 -1
  1396. package/dist/restorer/impls/prediction-apy-v0-evaluator/parse-submission.d.ts +0 -7
  1397. package/dist/restorer/impls/prediction-apy-v0-evaluator/parse-submission.js +0 -29
  1398. package/dist/restorer/impls/prediction-apy-v0-evaluator/parse-submission.js.map +0 -1
  1399. package/dist/restorer/impls/prediction-apy-v0-evaluator/score.js.map +0 -1
  1400. package/dist/restorer/impls/prediction-apy-v0-evaluator/types.js.map +0 -1
  1401. package/dist/restorer/impls/prediction-v0-baseline/index.d.ts +0 -31
  1402. package/dist/restorer/impls/prediction-v0-baseline/index.js +0 -100
  1403. package/dist/restorer/impls/prediction-v0-baseline/index.js.map +0 -1
  1404. package/dist/restorer/impls/prediction-v0-baseline/strategy.d.ts +0 -8
  1405. package/dist/restorer/impls/prediction-v0-baseline/strategy.js +0 -41
  1406. package/dist/restorer/impls/prediction-v0-baseline/strategy.js.map +0 -1
  1407. package/dist/restorer/impls/prediction-v0-baseline/types.d.ts +0 -7
  1408. package/dist/restorer/impls/prediction-v0-baseline/types.js.map +0 -1
  1409. package/dist/restorer/impls/prediction-v0-evaluator/canonical-metrics.d.ts +0 -20
  1410. package/dist/restorer/impls/prediction-v0-evaluator/canonical-metrics.js.map +0 -1
  1411. package/dist/restorer/impls/prediction-v0-evaluator/checks/availability.d.ts +0 -9
  1412. package/dist/restorer/impls/prediction-v0-evaluator/checks/availability.js.map +0 -1
  1413. package/dist/restorer/impls/prediction-v0-evaluator/checks/eligibility.d.ts +0 -3
  1414. package/dist/restorer/impls/prediction-v0-evaluator/checks/eligibility.js.map +0 -1
  1415. package/dist/restorer/impls/prediction-v0-evaluator/checks/integrity.d.ts +0 -13
  1416. package/dist/restorer/impls/prediction-v0-evaluator/checks/integrity.js +0 -111
  1417. package/dist/restorer/impls/prediction-v0-evaluator/checks/integrity.js.map +0 -1
  1418. package/dist/restorer/impls/prediction-v0-evaluator/checks/spec.d.ts +0 -5
  1419. package/dist/restorer/impls/prediction-v0-evaluator/checks/spec.js.map +0 -1
  1420. package/dist/restorer/impls/prediction-v0-evaluator/index.d.ts +0 -36
  1421. package/dist/restorer/impls/prediction-v0-evaluator/index.js +0 -234
  1422. package/dist/restorer/impls/prediction-v0-evaluator/index.js.map +0 -1
  1423. package/dist/restorer/impls/prediction-v0-evaluator/score.js.map +0 -1
  1424. package/dist/restorer/impls/prediction-v0-evaluator/types.js.map +0 -1
  1425. package/dist/restorer/types.d.ts +0 -194
  1426. package/dist/restorer/types.js +0 -28
  1427. package/dist/restorer/types.js.map +0 -1
  1428. package/dist/types/desired-state.d.ts +0 -94
  1429. package/dist/types/desired-state.js +0 -36
  1430. package/dist/types/desired-state.js.map +0 -1
  1431. /package/dist/cli/commands/{plugin-install.d.ts → solver-nets.d.ts} +0 -0
  1432. /package/dist/cli/commands/{submit-intent.d.ts → tasks.d.ts} +0 -0
  1433. /package/dist/{restorer/impls/prediction-apy-v0-baseline → harnesses/impls/claude-code-learner}/types.js +0 -0
  1434. /package/dist/{restorer → harnesses}/impls/claude-mcp-hyperliquid/api-wallet.js +0 -0
  1435. /package/dist/{restorer → harnesses}/impls/claude-mcp-hyperliquid/mcp-tools.d.ts +0 -0
  1436. /package/dist/{restorer → harnesses}/impls/claude-mcp-hyperliquid/mcp-tools.js +0 -0
  1437. /package/dist/{restorer → harnesses}/impls/claude-mcp-hyperliquid/safety-rails.d.ts +0 -0
  1438. /package/dist/{restorer → harnesses}/impls/claude-mcp-hyperliquid/safety-rails.js +0 -0
  1439. /package/dist/{restorer → harnesses}/impls/claude-mcp-prediction/mcp-tools.d.ts +0 -0
  1440. /package/dist/{restorer → harnesses}/impls/claude-mcp-prediction-apy/mcp-tools.d.ts +0 -0
  1441. /package/dist/{restorer → harnesses}/impls/portfolio-v0-evaluator/checks/availability.d.ts +0 -0
  1442. /package/dist/{restorer → harnesses}/impls/portfolio-v0-evaluator/checks/availability.js +0 -0
  1443. /package/dist/{restorer → harnesses}/impls/portfolio-v0-evaluator/score.d.ts +0 -0
  1444. /package/dist/{restorer → harnesses}/impls/portfolio-v0-evaluator/score.js +0 -0
  1445. /package/dist/{restorer → harnesses}/impls/portfolio-v0-evaluator/types.js +0 -0
  1446. /package/dist/{restorer → harnesses}/impls/prediction-apy-v0-baseline/strategy.d.ts +0 -0
  1447. /package/dist/{restorer → harnesses}/impls/prediction-apy-v0-baseline/strategy.js +0 -0
  1448. /package/dist/{restorer → harnesses}/impls/prediction-apy-v0-baseline/types.d.ts +0 -0
  1449. /package/dist/{restorer/impls/prediction-apy-v0-evaluator → harnesses/impls/prediction-apy-v0-baseline}/types.js +0 -0
  1450. /package/dist/{restorer → harnesses}/impls/prediction-apy-v0-evaluator/score.d.ts +0 -0
  1451. /package/dist/{restorer → harnesses}/impls/prediction-apy-v0-evaluator/score.js +0 -0
  1452. /package/dist/{restorer → harnesses}/impls/prediction-apy-v0-evaluator/types.d.ts +0 -0
  1453. /package/dist/{restorer/impls/prediction-v0-baseline → harnesses/impls/prediction-apy-v0-evaluator}/types.js +0 -0
  1454. /package/dist/{restorer/impls/prediction-v0-evaluator → harnesses/impls/prediction-v0-baseline}/types.js +0 -0
  1455. /package/dist/{restorer → harnesses}/impls/prediction-v0-evaluator/canonical-metrics.js +0 -0
  1456. /package/dist/{restorer → harnesses}/impls/prediction-v0-evaluator/checks/availability.js +0 -0
  1457. /package/dist/{restorer → harnesses}/impls/prediction-v0-evaluator/checks/eligibility.js +0 -0
  1458. /package/dist/{restorer → harnesses}/impls/prediction-v0-evaluator/checks/spec.js +0 -0
  1459. /package/dist/{restorer → harnesses}/impls/prediction-v0-evaluator/score.d.ts +0 -0
  1460. /package/dist/{restorer → harnesses}/impls/prediction-v0-evaluator/score.js +0 -0
  1461. /package/dist/{restorer → harnesses}/impls/prediction-v0-evaluator/types.d.ts +0 -0
package/dist/config.js CHANGED
@@ -13,12 +13,21 @@
13
13
  * Router claims: JINN_ROUTER_CLAIM_DELIVERY_VERSION=v1|v2 overrides chain default
14
14
  * (mainnet V1, testnet V2) for JinnRouter claimDelivery encoding.
15
15
  */
16
- import { existsSync, readFileSync } from 'node:fs';
16
+ import { existsSync, mkdirSync, readFileSync, writeFileSync } from 'node:fs';
17
17
  import { homedir } from 'node:os';
18
- import { join } from 'node:path';
18
+ import { dirname, join } from 'node:path';
19
19
  import { z } from 'zod';
20
- import { DesiredStateSchema, parseDesiredState } from './types/desired-state.js';
21
- // ── Schema ──────────────────────────────────────────────────────────────────
20
+ import { TaskSchema, parseTask } from './types/task.js';
21
+ import { canonicalHarnessName, CLAUDE_CODE_HARNESS } from './harnesses/names.js';
22
+ /**
23
+ * Default `solverNets` is empty per Decision 5 of
24
+ * spec/2026-05-05-solvernet-creation-and-launch.md — pre-release, no
25
+ * migration burden. Fresh installs no longer seed the `prediction` entry;
26
+ * the operator joins SolverNets through the registry (Task 21's
27
+ * `joinedSolverNets` block).
28
+ */
29
+ export const DEFAULT_SOLVER_NETS = {};
30
+ const HarnessNameSchema = z.string().transform((name) => canonicalHarnessName(name));
22
31
  export const JinnConfigSchema = z.object({
23
32
  /**
24
33
  * Network to connect to.
@@ -35,6 +44,13 @@ export const JinnConfigSchema = z.object({
35
44
  */
36
45
  rpcUrl: z.string().optional(),
37
46
  archiveRpcUrl: z.string().optional(),
47
+ /**
48
+ * Optional L2 proof/archive RPC endpoint for canonical cross-chain canaries.
49
+ * The daemon can use its normal rpcUrl for writes while proof construction
50
+ * uses this endpoint for historical eth_getProof at OP dispute-game blocks.
51
+ * Env: JINN_L2_PROOF_RPC_URL.
52
+ */
53
+ l2ProofRpcUrl: z.string().url().optional(),
38
54
  /** Earning state directory */
39
55
  earningDir: z.string().default(join(homedir(), '.jinn-client', 'earning')),
40
56
  /** SQLite database path */
@@ -56,6 +72,16 @@ export const JinnConfigSchema = z.object({
56
72
  balanceTopupIntervalMs: z.number().int().min(0).default(300_000),
57
73
  /** HTTP API port */
58
74
  apiPort: z.number().int().positive().default(7331),
75
+ /**
76
+ * Bind host for the HTTP API server. Defaults to `127.0.0.1` so the daemon
77
+ * is unreachable across the network out of the box — operators who need
78
+ * LAN access (or who terminate TLS in front of the daemon) opt in via this
79
+ * knob or `JINN_API_BIND_HOST`. Cost-mutating routes (`POST /artifacts`,
80
+ * `POST /v1/artifacts/acquire`) require a bearer token regardless; the
81
+ * bind host is the outer firewall.
82
+ * Env: JINN_API_BIND_HOST.
83
+ */
84
+ apiBindHost: z.string().optional(),
59
85
  /** Path to claude CLI binary */
60
86
  claudePath: z.string().default('claude'),
61
87
  /** Model for restoration/evaluation agent */
@@ -76,10 +102,16 @@ export const JinnConfigSchema = z.object({
76
102
  ]).default([]),
77
103
  /** The Graph subgraph URL for artifact discovery */
78
104
  subgraphUrl: z.string().optional(),
105
+ /**
106
+ * Narrow task discovery to specific on-chain task ids. This is primarily
107
+ * for live acceptance gates that must avoid claiming unrelated public
108
+ * backlog while proving one fresh task path.
109
+ */
110
+ taskDiscoveryAllowedTaskIds: z.array(z.string()).optional(),
79
111
  /** This node's public HTTP endpoint (for 8004 registration) */
80
112
  nodeEndpoint: z.string().optional(),
81
- /** Desired states to create and restore. Empty by default; testnet auto-intents fill the loop. */
82
- desiredStates: z.array(DesiredStateSchema).default([]),
113
+ /** Tasks to create and solve. Empty by default; enabled SolverNet generators fill the loop. */
114
+ tasks: z.array(TaskSchema).default([]),
83
115
  /** IPFS upload endpoint */
84
116
  ipfsRegistryUrl: z.string().default('https://registry.autonolas.tech'),
85
117
  /** IPFS read endpoint */
@@ -92,8 +124,83 @@ export const JinnConfigSchema = z.object({
92
124
  testnetMechDeploymentPath: z.string().optional(),
93
125
  /** Optional Base Sepolia stOLAS deployment artifact path */
94
126
  testnetStolasDeploymentPath: z.string().optional(),
95
- /** Optional Base Sepolia ClaimRegistry deployment artifact path */
96
- testnetClaimRegistryDeploymentPath: z.string().optional(),
127
+ /**
128
+ * Optional deployment artifact for the v0 MVI L1 stack
129
+ * (deployment-jinn-mvi-l1-{network}{,-fast}.json). Provides addresses for
130
+ * JINN, Timelock, JinnGovernor, JinnDistributor, and Messenger.
131
+ * When set the daemon enables the cross-chain JINN claim loop.
132
+ */
133
+ jinnMviL1DeploymentPath: z.string().optional(),
134
+ /**
135
+ * Optional deployment artifact for the v0 MVI L2 emitter
136
+ * (deployment-jinn-mvi-l2-{network}.json). Provides the
137
+ * TaskClaimEmitter address on the measurement chain (Base / Base Sepolia).
138
+ */
139
+ jinnMviL2DeploymentPath: z.string().optional(),
140
+ // ── Cross-chain claim loop (Phase B / jinn-mono-7x5) ─────────────────────
141
+ /**
142
+ * RPC endpoint for the L1 governance chain (Ethereum / Sepolia) where the
143
+ * JinnDistributor lives. Required when jinnDistributorAddress is set.
144
+ * Env: JINN_ETHEREUM_RPC_URL.
145
+ */
146
+ ethereumRpcUrl: z.string().url().optional(),
147
+ /**
148
+ * Optional archive RPC endpoint for the L1 governance chain. Used for
149
+ * historical block lookups when constructing canonical-mode proofs.
150
+ * Env: JINN_ETHEREUM_ARCHIVE_RPC_URL.
151
+ */
152
+ ethereumArchiveRpcUrl: z.string().url().optional(),
153
+ /**
154
+ * L1 network used by the cross-chain claim loop. 'sepolia' tracks Base
155
+ * Sepolia testnet; 'ethereum' tracks Base mainnet. Defaults to 'sepolia'
156
+ * during Phase 1b. Env: JINN_L1_NETWORK.
157
+ */
158
+ jinnL1Network: z.enum(['sepolia', 'ethereum']).default('sepolia'),
159
+ /**
160
+ * JinnDistributor address on the L1 governance chain. Setting this enables
161
+ * the cross-chain claim loop. When set, ethereumRpcUrl MUST also be set.
162
+ * Resolved from jinnMviL1DeploymentPath when omitted; otherwise a manual
163
+ * override. Env: JINN_DISTRIBUTOR_ADDRESS.
164
+ */
165
+ jinnDistributorAddress: z
166
+ .string()
167
+ .regex(/^0x[0-9a-fA-F]{40}$/, 'must be a 0x-prefixed 20-byte address')
168
+ .optional(),
169
+ /**
170
+ * TaskClaimEmitter address on the L2 measurement chain (Base / Base
171
+ * Sepolia). Resolved from jinnMviL2DeploymentPath when omitted.
172
+ * Env: JINN_CLAIM_EMITTER_ADDRESS.
173
+ */
174
+ jinnClaimEmitterAddress: z
175
+ .string()
176
+ .regex(/^0x[0-9a-fA-F]{40}$/, 'must be a 0x-prefixed 20-byte address')
177
+ .optional(),
178
+ /**
179
+ * Messenger address on the L1 governance chain. Resolved from
180
+ * jinnMviL1DeploymentPath when omitted.
181
+ * Env: JINN_MESSENGER_ADDRESS.
182
+ */
183
+ jinnMessengerAddress: z
184
+ .string()
185
+ .regex(/^0x[0-9a-fA-F]{40}$/, 'must be a 0x-prefixed 20-byte address')
186
+ .optional(),
187
+ /**
188
+ * Messenger mode driving proof construction. `mock` submits MockMessenger
189
+ * fixtures — required for automated Sepolia burn-in (`runOnce`). `canonical`
190
+ * builds OP-Stack storage proofs for verifier-only checks; scheduled daemon
191
+ * ticks **skip** canonical mode (multi-day finality) — use
192
+ * `tsx scripts/verify-canonical-canary.ts` after finality instead. Defaults
193
+ * to `canonical`.
194
+ * Env: JINN_MESSENGER_MODE.
195
+ */
196
+ jinnMessengerMode: z.enum(['canonical', 'mock']).default('canonical'),
197
+ /**
198
+ * How often the daemon ticks the cross-chain JINN claim loop (ms). Default
199
+ * 3 600 000 (1 hour) — well below mainnet challenge windows while
200
+ * minimising RPC/gas churn. Set to 0 to disable when the address is set.
201
+ * Env: JINN_CLAIM_LOOP_INTERVAL_MS.
202
+ */
203
+ jinnClaimLoopIntervalMs: z.number().int().min(0).default(60 * 60 * 1000),
97
204
  /** Staking mode: 'standard' uses stOLAS (no OLAS needed), 'self-bond' uses operator-provided OLAS. */
98
205
  stakingMode: z.enum(['standard', 'self-bond']).default('standard'),
99
206
  /** Number of services to bootstrap and run. */
@@ -112,23 +219,182 @@ export const JinnConfigSchema = z.object({
112
219
  .regex(/^\d+$/, 'must be a non-negative integer string')
113
220
  .optional(),
114
221
  /**
115
- * Operator-controlled impl dispatch for the restorer engine.
116
- *
117
- * Wired by daemon (jinn-mono-bv5); engine consumes via RestorerImplRegistry config.
118
- *
119
- * byKind: explicit spec.kind → impl name mapping (highest priority)
120
- * default: fallback impl name when no kind-specific match is found
121
- * disabled: impl names to exclude from dispatch entirely
222
+ * Optional gas runway override for bootstrap/top-up targets (wei string).
223
+ * Used by Docker testnet acceptance to match the bundled faucet budget.
224
+ * Env: JINN_MIN_EOA_GAS_WEI
225
+ */
226
+ minEoaGasWei: z
227
+ .string()
228
+ .regex(/^\d+$/, 'must be a non-negative integer string')
229
+ .optional(),
230
+ /**
231
+ * Optional Safe ETH target override for bootstrap/top-up targets (wei string).
232
+ * Env: JINN_MIN_SAFE_ETH_WEI
233
+ */
234
+ minSafeEthWei: z
235
+ .string()
236
+ .regex(/^\d+$/, 'must be a non-negative integer string')
237
+ .optional(),
238
+ /**
239
+ * Operator-controlled Harness inventory.
122
240
  */
123
- restorers: z
241
+ harnesses: z
124
242
  .object({
125
- byKind: z.record(z.string()).optional(),
126
- default: z.string().optional(),
127
- disabled: z.array(z.string()).optional(),
243
+ default: HarnessNameSchema.optional(),
244
+ disabled: z.array(HarnessNameSchema).optional(),
245
+ /**
246
+ * Operator-supplied external harness impls.
247
+ *
248
+ * Each entry points the daemon at a manifest-bearing package on disk
249
+ * (typically inside `node_modules/`); `client/src/main.ts` invokes
250
+ * `loadExternalImpl()` for each entry at boot, validates the manifest
251
+ * against `trustedImplSigners`, and registers the resulting impl in
252
+ * the harness registry. See
253
+ * `docs/superpowers/plans/2026-04-30-plug-in-surface-path-2-foundation.md`
254
+ * step 5.7-5.8.
255
+ */
256
+ externalImpls: z
257
+ .array(z.object({
258
+ name: z.string(),
259
+ entry: z.string(),
260
+ package: z.string().optional(),
261
+ /**
262
+ * Optional pinned version. When set, the loader rejects the
263
+ * impl if its manifest's `version` does not match this string
264
+ * exactly — guards against silent upgrades of an on-disk
265
+ * package without an explicit operator config change
266
+ * (Finding 10).
267
+ */
268
+ version: z.string().optional(),
269
+ }))
270
+ .optional(),
128
271
  })
129
272
  .optional(),
130
273
  /**
131
- * Restoration engine durable directories (per-intent work + impl state).
274
+ * Harness execution settings. The `mode` field controls whether the
275
+ * harness runs with state-write phases enabled (`train`) or disabled
276
+ * (`frozen`). Frozen mode produces stable codeDigest across Tasks for
277
+ * benchmark-grade per-snapshot scoring; see
278
+ * docs/superpowers/specs/2026-05-06-agent-harness-solvernet-design.md §5.
279
+ */
280
+ harness: z
281
+ .object({
282
+ mode: z.enum(['train', 'frozen']).default('train'),
283
+ })
284
+ .default({ mode: 'train' }),
285
+ /**
286
+ * SolverNet activation, Harness selection, and operator-configured runtime plugins.
287
+ *
288
+ * Each entry's `roles` is a non-empty subset of `['solving', 'evaluating']`.
289
+ * Multiple roles can run concurrently for the same SolverNet; the
290
+ * protocol-level `disallowSolverSelfEvaluation` flag prevents the operator
291
+ * from evaluating its own Solutions and the on-chain
292
+ * TaskActivityCheckerV3 tracks Solution and Verdict counters independently
293
+ * (additive into `eligibleActivityWeight`).
294
+ *
295
+ * Launcher ownership lives in the launched-record subsystem
296
+ * (spec/2026-05-05-solvernet-creation-and-launch.md §11), not in operator
297
+ * config — there is no `'launching'` operator role. Legacy entries that
298
+ * include `'launching'` in `roles` have it stripped by the preprocessor so
299
+ * older config files keep loading.
300
+ *
301
+ * Backwards-compat: a legacy `role: 'solving' | 'evaluating'` field is
302
+ * auto-promoted to `roles: [<role>]` by the zod preprocessor below so
303
+ * existing `~/.jinn-client/config.json` files keep loading without an
304
+ * operator migration step.
305
+ */
306
+ solverNets: z.record(z.preprocess((raw) => {
307
+ if (typeof raw !== 'object' || raw === null)
308
+ return raw;
309
+ const obj = raw;
310
+ // Promote legacy `role: X` → `roles: [X]` when only the singular form
311
+ // is provided. If both are present (mid-migration third-party config),
312
+ // `roles` wins and `role` is dropped.
313
+ if (Array.isArray(obj['roles']) && obj['roles'].length > 0) {
314
+ // Drop legacy `'launching'` entries — operator config no longer
315
+ // carries the launcher role; ownership is via launched records.
316
+ const filteredRoles = obj['roles'].filter((r) => r !== 'launching');
317
+ const { role: _legacyRole, ...rest } = obj;
318
+ return { ...rest, roles: filteredRoles };
319
+ }
320
+ if (typeof obj['role'] === 'string' && (obj['role'] === 'solving' || obj['role'] === 'evaluating')) {
321
+ const { role, ...rest } = obj;
322
+ return { ...rest, roles: [role] };
323
+ }
324
+ return obj;
325
+ }, z.object({
326
+ enabled: z.boolean().default(true),
327
+ solverType: z.string(),
328
+ roles: z.array(z.enum(['solving', 'evaluating']))
329
+ .min(1, 'each SolverNet must enable at least one role')
330
+ .default(['solving'])
331
+ // Deduplicate to keep downstream consumers simple.
332
+ .transform((arr) => Array.from(new Set(arr))),
333
+ harness: HarnessNameSchema.default(CLAUDE_CODE_HARNESS),
334
+ model: z.string().optional(),
335
+ plugins: z.array(z.union([
336
+ z.string(),
337
+ z.object({
338
+ name: z.string().optional(),
339
+ source: z.string(),
340
+ version: z.string().optional(),
341
+ }),
342
+ ])).default([]),
343
+ taskGenerator: z.object({
344
+ enabled: z.boolean().default(true),
345
+ }).default({ enabled: true }),
346
+ }))).default(DEFAULT_SOLVER_NETS),
347
+ /**
348
+ * Manifest-keyed joined SolverNets (Task 21).
349
+ *
350
+ * Spec: spec/2026-05-05-solvernet-creation-and-launch.md §12.
351
+ *
352
+ * Populated by `POST /v1/operator/join/:cid` when an operator joins a
353
+ * launched SolverNet from the registry catalog. Keys are `manifestCid`
354
+ * (CIDv0 / CIDv1) — the only stable identifier that maps back to a
355
+ * launched-instance authority across launchers.
356
+ *
357
+ * Kept structurally separate from legacy `solverNets` for now. The daemon
358
+ * narrows this block into runtime SolverNet registry entries on restart, and
359
+ * Task 22 collapses both branches into a single manifest-keyed shape once
360
+ * the legacy block is fully drained.
361
+ */
362
+ joinedSolverNets: z
363
+ .record(z.string(), z.object({
364
+ manifestCid: z.string().min(1),
365
+ name: z.string().optional(),
366
+ contract: z
367
+ .object({
368
+ id: z.string().min(1),
369
+ version: z.string().min(1),
370
+ })
371
+ .optional(),
372
+ roles: z
373
+ .array(z.enum(['solver', 'evaluator']))
374
+ .min(1, 'each joined SolverNet must enable at least one role'),
375
+ harness: HarnessNameSchema.optional(),
376
+ model: z.string().optional(),
377
+ plugins: z.array(z.string()).default([]),
378
+ disabledDefaultPlugins: z.array(z.string()).default([]),
379
+ }))
380
+ .optional(),
381
+ /**
382
+ * Trusted ed25519 publishers for external harness impls. The daemon
383
+ * refuses to load any external impl whose manifest signature is not
384
+ * verifiable against one of these public keys.
385
+ *
386
+ * `publicKey` is base64-encoded raw ed25519. `label` is operator-facing
387
+ * provenance only.
388
+ */
389
+ trustedImplSigners: z
390
+ .array(z.object({
391
+ alg: z.literal('ed25519'),
392
+ publicKey: z.string(),
393
+ label: z.string().optional(),
394
+ }))
395
+ .optional(),
396
+ /**
397
+ * Restoration engine durable directories (per-task work + impl state).
132
398
  * Defaults under ~/.jinn-client/engine/. Env: JINN_ENGINE_WORKING_DIR_ROOT,
133
399
  * JINN_ENGINE_IMPL_STATE_DIR_ROOT.
134
400
  */
@@ -138,6 +404,108 @@ export const JinnConfigSchema = z.object({
138
404
  implStateDirRoot: z.string().optional(),
139
405
  })
140
406
  .optional(),
407
+ /**
408
+ * Operator-local artifact and donation configuration.
409
+ *
410
+ * Public testnet donation is IPFS-first: when `donation.enabled` is true,
411
+ * scrubbed solver/evaluator artifacts are pinned to IPFS and advertised in
412
+ * signed metadata so peers can discover, verify, and reuse them without an
413
+ * operator-hosted public endpoint.
414
+ *
415
+ * `publicEndpoint`, `defaultPriceUsdc`, and `perArtifactTypePrice` are kept
416
+ * as compatibility and future data-market fallback plumbing. They are not
417
+ * required for the free IPFS donation path used by this release.
418
+ *
419
+ * Resolution precedence in `uploadArtifacts`:
420
+ * OUTPUTS.json `access.priceUsdc` > `perArtifactTypePrice[artifactType]`
421
+ * > `defaultPriceUsdc`.
422
+ *
423
+ * Env overrides:
424
+ * JINN_OPERATOR_PUBLIC_ENDPOINT
425
+ * JINN_OPERATOR_DEFAULT_PRICE_USDC
426
+ * JINN_OPERATOR_DONATION_ENABLED
427
+ */
428
+ operator: z
429
+ .object({
430
+ publicEndpoint: z.string().url().optional(),
431
+ defaultPriceUsdc: z
432
+ .string()
433
+ .regex(/^\d+(\.\d+)?$/, 'must be a non-negative decimal string')
434
+ .default('0'),
435
+ perArtifactTypePrice: z
436
+ .record(z.string(), z.string().regex(/^\d+(\.\d+)?$/, 'must be a non-negative decimal string'))
437
+ .default({}),
438
+ donation: z
439
+ .object({
440
+ enabled: z.boolean().default(false),
441
+ })
442
+ .default({ enabled: false }),
443
+ })
444
+ .optional(),
445
+ /**
446
+ * Operator-local capture configuration.
447
+ *
448
+ * Path C (LLM API proxy) is disabled by default. Operators opt in by
449
+ * enabling this block and pointing ANTHROPIC_BASE_URL / OPENAI_BASE_URL at
450
+ * the local proxy port.
451
+ *
452
+ * Env:
453
+ * JINN_CAPTURES_LLM_PROXY_ENABLED=1|true|yes
454
+ * JINN_CAPTURES_LLM_PROXY_PORT=7342
455
+ */
456
+ captures: z
457
+ .object({
458
+ llmProxy: z
459
+ .object({
460
+ enabled: z.boolean().default(false),
461
+ port: z.number().int().positive().default(7342),
462
+ })
463
+ .default({ enabled: false, port: 7342 }),
464
+ })
465
+ .default({ llmProxy: { enabled: false, port: 7342 } }),
466
+ /**
467
+ * Run idempotent legacy migrations at daemon startup (jinn-mono-jgp:
468
+ * backfill `agent_id` on `complete` services that pre-date j07).
469
+ *
470
+ * Defaults to true — the migrations are no-ops on already-migrated
471
+ * fleets and cheap on Base. Operators on a flaky RPC or with locked
472
+ * funds can set this to false and run `jinn migrate-agent-id`
473
+ * explicitly.
474
+ *
475
+ * Env: JINN_RUN_LEGACY_MIGRATIONS=0|1.
476
+ */
477
+ runLegacyMigrations: z.boolean().default(true),
478
+ /**
479
+ * ERC-8004 Identity Registry contract address on the configured chain.
480
+ * Pre-rebuild config key (PR #37 cleanup left it in place). The post-rebuild
481
+ * client (jinn-mono-j07/3zk) reads the address from
482
+ * `client/src/erc8004/identity.ts` constants and from
483
+ * `EarningState.identity_registry_address`; this config key is currently
484
+ * unused but kept for backwards-compat with operator config files.
485
+ * Env: JINN_IDENTITY_REGISTRY_ADDRESS
486
+ */
487
+ identityRegistryAddress: z.string().optional(),
488
+ /**
489
+ * ERC-8004 Validation Registry contract address on the configured chain.
490
+ * Pre-rebuild config key. The post-rebuild client (jinn-mono-9jg) reads the
491
+ * address from `client/src/erc8004/addresses.ts:VALIDATION_REGISTRY_ADDRESSES`;
492
+ * this config key is currently unused but kept for backwards-compat.
493
+ * Env: JINN_VALIDATION_REGISTRY_ADDRESS
494
+ */
495
+ validationRegistryAddress: z.string().optional(),
496
+ /**
497
+ * Whether to enable the read-only reputation surface (query-time flag).
498
+ * Pre-rebuild config key. The post-rebuild client (jinn-mono-2ff/yg4) is
499
+ * always constructed when `agent_id` is set; this flag is currently unused
500
+ * but kept for backwards-compat.
501
+ * Env: JINN_REPUTATION_ENABLED
502
+ */
503
+ reputationEnabled: z.boolean().default(false),
504
+ }).refine((cfg) => !cfg.jinnDistributorAddress || !!cfg.ethereumRpcUrl, {
505
+ message: 'ethereumRpcUrl must be set when jinnDistributorAddress is configured ' +
506
+ '(env JINN_ETHEREUM_RPC_URL or config field). The cross-chain claim loop ' +
507
+ 'cannot reach the L1 governance chain without it.',
508
+ path: ['ethereumRpcUrl'],
141
509
  });
142
510
  const DEFAULT_ENGINE = {
143
511
  workingDirRoot: join(homedir(), '.jinn-client', 'engine', 'work'),
@@ -145,7 +513,8 @@ const DEFAULT_ENGINE = {
145
513
  };
146
514
  // ── Defaults ────────────────────────────────────────────────────────────────
147
515
  const DEFAULT_DIR = join(homedir(), '.jinn-client');
148
- const DEFAULT_CONFIG_PATH = join(DEFAULT_DIR, 'config.json');
516
+ export const DEFAULT_CONFIG_PATH = join(DEFAULT_DIR, 'config.json');
517
+ export const DEFAULT_TESTNET_SUBGRAPH_URL = 'https://api.studio.thegraph.com/query/1749489/jinn-testnet/capture-live-20260508183750';
149
518
  export class ConfigLoadError extends Error {
150
519
  code;
151
520
  details;
@@ -190,6 +559,8 @@ export function loadConfig(configPath) {
190
559
  const merged = { ...fileValues };
191
560
  if (env['JINN_NETWORK'])
192
561
  merged.network = env['JINN_NETWORK'];
562
+ if (env['JINN_L2_PROOF_RPC_URL'])
563
+ merged.l2ProofRpcUrl = env['JINN_L2_PROOF_RPC_URL'];
193
564
  if (env['JINN_EARNING_DIR'])
194
565
  merged.earningDir = env['JINN_EARNING_DIR'];
195
566
  if (env['JINN_DB_PATH'])
@@ -203,6 +574,8 @@ export function loadConfig(configPath) {
203
574
  merged.balanceTopupIntervalMs = Number.parseInt(env['JINN_BALANCE_TOPUP_INTERVAL_MS'], 10);
204
575
  if (env['JINN_API_PORT'])
205
576
  merged.apiPort = parseInt(env['JINN_API_PORT'], 10);
577
+ if (env['JINN_API_BIND_HOST'])
578
+ merged.apiBindHost = env['JINN_API_BIND_HOST'];
206
579
  if (env['JINN_CLAUDE_PATH'])
207
580
  merged.claudePath = env['JINN_CLAUDE_PATH'];
208
581
  if (env['JINN_CLAUDE_MODEL'])
@@ -225,8 +598,26 @@ export function loadConfig(configPath) {
225
598
  merged.testnetL2TokenDeploymentPath = env['JINN_TESTNET_TOKEN_DEPLOYMENT'];
226
599
  if (env['JINN_TESTNET_MECH_DEPLOYMENT'])
227
600
  merged.testnetMechDeploymentPath = env['JINN_TESTNET_MECH_DEPLOYMENT'];
228
- if (env['JINN_TESTNET_CLAIM_REGISTRY_DEPLOYMENT']) {
229
- merged.testnetClaimRegistryDeploymentPath = env['JINN_TESTNET_CLAIM_REGISTRY_DEPLOYMENT'];
601
+ if (env['JINN_MVI_L1_DEPLOYMENT'])
602
+ merged.jinnMviL1DeploymentPath = env['JINN_MVI_L1_DEPLOYMENT'];
603
+ if (env['JINN_MVI_L2_DEPLOYMENT'])
604
+ merged.jinnMviL2DeploymentPath = env['JINN_MVI_L2_DEPLOYMENT'];
605
+ if (env['JINN_ETHEREUM_RPC_URL'])
606
+ merged.ethereumRpcUrl = env['JINN_ETHEREUM_RPC_URL'];
607
+ if (env['JINN_ETHEREUM_ARCHIVE_RPC_URL'])
608
+ merged.ethereumArchiveRpcUrl = env['JINN_ETHEREUM_ARCHIVE_RPC_URL'];
609
+ if (env['JINN_L1_NETWORK'])
610
+ merged.jinnL1Network = env['JINN_L1_NETWORK'];
611
+ if (env['JINN_DISTRIBUTOR_ADDRESS'])
612
+ merged.jinnDistributorAddress = env['JINN_DISTRIBUTOR_ADDRESS'];
613
+ if (env['JINN_CLAIM_EMITTER_ADDRESS'])
614
+ merged.jinnClaimEmitterAddress = env['JINN_CLAIM_EMITTER_ADDRESS'];
615
+ if (env['JINN_MESSENGER_ADDRESS'])
616
+ merged.jinnMessengerAddress = env['JINN_MESSENGER_ADDRESS'];
617
+ if (env['JINN_MESSENGER_MODE'])
618
+ merged.jinnMessengerMode = env['JINN_MESSENGER_MODE'];
619
+ if (env['JINN_CLAIM_LOOP_INTERVAL_MS'] !== undefined) {
620
+ merged.jinnClaimLoopIntervalMs = parseInt(env['JINN_CLAIM_LOOP_INTERVAL_MS'], 10);
230
621
  }
231
622
  if (env['JINN_STAKING_MODE'])
232
623
  merged.stakingMode = env['JINN_STAKING_MODE'];
@@ -236,9 +627,79 @@ export function loadConfig(configPath) {
236
627
  const v = env['JINN_DEBUG'].trim().toLowerCase();
237
628
  merged.debug = v === '1' || v === 'true' || v === 'yes';
238
629
  }
630
+ if (env['JINN_RUN_LEGACY_MIGRATIONS'] !== undefined) {
631
+ const v = env['JINN_RUN_LEGACY_MIGRATIONS'].trim().toLowerCase();
632
+ merged.runLegacyMigrations =
633
+ !(v === '0' || v === 'false' || v === 'no' || v === '');
634
+ }
239
635
  if (env['JINN_MASTER_ETH_DAILY_WEI']) {
240
636
  merged.masterEthDailyEstimateWei = env['JINN_MASTER_ETH_DAILY_WEI'].trim();
241
637
  }
638
+ if (env['JINN_MIN_EOA_GAS_WEI']) {
639
+ merged.minEoaGasWei = env['JINN_MIN_EOA_GAS_WEI'].trim();
640
+ }
641
+ if (env['JINN_MIN_SAFE_ETH_WEI']) {
642
+ merged.minSafeEthWei = env['JINN_MIN_SAFE_ETH_WEI'].trim();
643
+ }
644
+ // Legacy `JINN_PREDICTION_V1_*` env vars are no longer recognised. Their
645
+ // values now live in the launched-record's generator-config block per
646
+ // spec/2026-05-05-solvernet-creation-and-launch.md (Decision 5 + Task 14)
647
+ // — set them through the SolverNet config API instead.
648
+ if (env['JINN_IDENTITY_REGISTRY_ADDRESS'])
649
+ merged.identityRegistryAddress = env['JINN_IDENTITY_REGISTRY_ADDRESS'];
650
+ if (env['JINN_VALIDATION_REGISTRY_ADDRESS'])
651
+ merged.validationRegistryAddress = env['JINN_VALIDATION_REGISTRY_ADDRESS'];
652
+ if (env['JINN_REPUTATION_ENABLED'] !== undefined) {
653
+ const rv = env['JINN_REPUTATION_ENABLED'].trim().toLowerCase();
654
+ merged.reputationEnabled = rv === '1' || rv === 'true' || rv === 'yes';
655
+ }
656
+ if (env['JINN_OPERATOR_PUBLIC_ENDPOINT'] ||
657
+ env['JINN_OPERATOR_DEFAULT_PRICE_USDC'] ||
658
+ env['JINN_OPERATOR_DONATION_ENABLED'] !== undefined) {
659
+ const prevOp = typeof merged['operator'] === 'object' && merged['operator'] !== null
660
+ ? merged['operator']
661
+ : {};
662
+ const prevDonation = typeof prevOp['donation'] === 'object' && prevOp['donation'] !== null
663
+ ? prevOp['donation']
664
+ : {};
665
+ const donationEnabled = env['JINN_OPERATOR_DONATION_ENABLED'] !== undefined
666
+ ? ['1', 'true', 'yes'].includes(env['JINN_OPERATOR_DONATION_ENABLED'].trim().toLowerCase())
667
+ : undefined;
668
+ merged['operator'] = {
669
+ ...prevOp,
670
+ ...(env['JINN_OPERATOR_PUBLIC_ENDPOINT']
671
+ ? { publicEndpoint: env['JINN_OPERATOR_PUBLIC_ENDPOINT'] }
672
+ : {}),
673
+ ...(env['JINN_OPERATOR_DEFAULT_PRICE_USDC']
674
+ ? { defaultPriceUsdc: env['JINN_OPERATOR_DEFAULT_PRICE_USDC'] }
675
+ : {}),
676
+ ...(donationEnabled !== undefined
677
+ ? { donation: { ...prevDonation, enabled: donationEnabled } }
678
+ : {}),
679
+ };
680
+ }
681
+ if (env['JINN_CAPTURES_LLM_PROXY_ENABLED'] !== undefined ||
682
+ env['JINN_CAPTURES_LLM_PROXY_PORT'] !== undefined) {
683
+ const prevCaptures = typeof merged['captures'] === 'object' && merged['captures'] !== null
684
+ ? merged['captures']
685
+ : {};
686
+ const prevProxy = typeof prevCaptures['llmProxy'] === 'object' && prevCaptures['llmProxy'] !== null
687
+ ? prevCaptures['llmProxy']
688
+ : {};
689
+ const enabled = env['JINN_CAPTURES_LLM_PROXY_ENABLED'] !== undefined
690
+ ? ['1', 'true', 'yes'].includes(env['JINN_CAPTURES_LLM_PROXY_ENABLED'].trim().toLowerCase())
691
+ : undefined;
692
+ merged['captures'] = {
693
+ ...prevCaptures,
694
+ llmProxy: {
695
+ ...prevProxy,
696
+ ...(enabled !== undefined ? { enabled } : {}),
697
+ ...(env['JINN_CAPTURES_LLM_PROXY_PORT']
698
+ ? { port: Number.parseInt(env['JINN_CAPTURES_LLM_PROXY_PORT'], 10) }
699
+ : {}),
700
+ },
701
+ };
702
+ }
242
703
  if (env['JINN_ENGINE_WORKING_DIR_ROOT'] || env['JINN_ENGINE_IMPL_STATE_DIR_ROOT']) {
243
704
  const prev = typeof merged['engine'] === 'object' && merged['engine'] !== null
244
705
  ? merged['engine']
@@ -250,6 +711,9 @@ export function loadConfig(configPath) {
250
711
  };
251
712
  }
252
713
  const resolvedNetwork = merged.network === 'testnet' ? 'testnet' : 'mainnet';
714
+ if (resolvedNetwork === 'testnet' && merged.subgraphUrl === undefined) {
715
+ merged.subgraphUrl = DEFAULT_TESTNET_SUBGRAPH_URL;
716
+ }
253
717
  // Keep the legacy BASE_RPC_URL override for Base mainnet only. Testnet must
254
718
  // not silently inherit a mainnet RPC from client/.env during bootstrap.
255
719
  if (env['JINN_RPC_URL']) {
@@ -266,18 +730,18 @@ export function loadConfig(configPath) {
266
730
  if (env['JINN_ARCHIVE_RPC_URL']) {
267
731
  merged.archiveRpcUrl = env['JINN_ARCHIVE_RPC_URL'];
268
732
  }
269
- // desiredStates from env points to a JSON file
270
- if (env['JINN_DESIRED_STATES']) {
271
- const statesPath = env['JINN_DESIRED_STATES'];
272
- if (!existsSync(statesPath)) {
273
- throw new ConfigLoadError('desired_states_file_not_found', `JINN_DESIRED_STATES file not found: ${statesPath}`, { path: statesPath });
733
+ // tasks from env points to a JSON file
734
+ if (env['JINN_TASKS']) {
735
+ const tasksPath = env['JINN_TASKS'];
736
+ if (!existsSync(tasksPath)) {
737
+ throw new ConfigLoadError('tasks_file_not_found', `JINN_TASKS file not found: ${tasksPath}`, { path: tasksPath });
274
738
  }
275
739
  try {
276
- merged.desiredStates = JSON.parse(readFileSync(statesPath, 'utf-8'));
740
+ merged.tasks = JSON.parse(readFileSync(tasksPath, 'utf-8'));
277
741
  }
278
742
  catch (error) {
279
- throw new ConfigLoadError('desired_states_json_invalid', `Invalid JSON in JINN_DESIRED_STATES file: ${statesPath}`, {
280
- path: statesPath,
743
+ throw new ConfigLoadError('tasks_json_invalid', `Invalid JSON in JINN_TASKS file: ${tasksPath}`, {
744
+ path: tasksPath,
281
745
  cause: error instanceof Error ? error.message : String(error),
282
746
  });
283
747
  }
@@ -300,8 +764,8 @@ export function loadConfig(configPath) {
300
764
  return {
301
765
  ...parsed,
302
766
  rpcUrl: parsed.rpcUrl ?? defaultRpcUrl,
303
- // parseDesiredState assigns a UUID to any entry missing an id
304
- desiredStates: parsed.desiredStates.map(parseDesiredState),
767
+ // parseTask assigns a UUID to any entry missing an id
768
+ tasks: parsed.tasks.map(parseTask),
305
769
  engine: {
306
770
  workingDirRoot: parsed.engine?.workingDirRoot ?? DEFAULT_ENGINE.workingDirRoot,
307
771
  implStateDirRoot: parsed.engine?.implStateDirRoot ?? DEFAULT_ENGINE.implStateDirRoot,
@@ -315,4 +779,115 @@ export function getConfigPathFromArgs(argv = process.argv) {
315
779
  const idx = argv.indexOf('--config');
316
780
  return idx >= 0 && argv[idx + 1] ? argv[idx + 1] : undefined;
317
781
  }
782
+ /**
783
+ * Merge one top-level value into the operator config file. Used by local setup
784
+ * flows that discover a durable setting after the daemon has already started.
785
+ */
786
+ export function persistTopLevelConfigValue(key, value, configPath) {
787
+ const filePath = configPath ?? DEFAULT_CONFIG_PATH;
788
+ let current = {};
789
+ if (existsSync(filePath)) {
790
+ current = JSON.parse(readFileSync(filePath, 'utf-8'));
791
+ }
792
+ else {
793
+ mkdirSync(dirname(filePath), { recursive: true });
794
+ }
795
+ current[key] = value;
796
+ writeFileSync(filePath, `${JSON.stringify(current, null, 2)}\n`, 'utf-8');
797
+ return filePath;
798
+ }
799
+ // ── Config provenance ────────────────────────────────────────────────────────
800
+ /**
801
+ * Env var names that map to JinnConfig fields (excluding password and
802
+ * security-sensitive vars that must never be surfaced even redacted).
803
+ *
804
+ * The list mirrors the `merged.*` assignments in `loadConfig` above.
805
+ * JINN_PASSWORD is intentionally absent — never list it.
806
+ */
807
+ const TRACKED_ENV_VARS = [
808
+ 'JINN_NETWORK',
809
+ 'JINN_EARNING_DIR',
810
+ 'JINN_DB_PATH',
811
+ 'JINN_POLL_INTERVAL_MS',
812
+ 'JINN_REWARD_CLAIM_INTERVAL_MS',
813
+ 'JINN_BALANCE_TOPUP_INTERVAL_MS',
814
+ 'JINN_API_PORT',
815
+ 'JINN_API_BIND_HOST',
816
+ 'JINN_CLAUDE_PATH',
817
+ 'JINN_CLAUDE_MODEL',
818
+ 'JINN_RUNTIME_MODE',
819
+ 'JINN_PEERS',
820
+ 'JINN_SUBGRAPH_URL',
821
+ 'JINN_NODE_ENDPOINT',
822
+ 'JINN_IPFS_REGISTRY_URL',
823
+ 'JINN_IPFS_GATEWAY_URL',
824
+ 'JINN_TESTNET_L2_DEPLOYMENT',
825
+ 'JINN_TESTNET_TOKEN_DEPLOYMENT',
826
+ 'JINN_TESTNET_MECH_DEPLOYMENT',
827
+ 'JINN_L2_PROOF_RPC_URL',
828
+ 'JINN_MVI_L1_DEPLOYMENT',
829
+ 'JINN_MVI_L2_DEPLOYMENT',
830
+ 'JINN_ETHEREUM_RPC_URL',
831
+ 'JINN_ETHEREUM_ARCHIVE_RPC_URL',
832
+ 'JINN_L1_NETWORK',
833
+ 'JINN_DISTRIBUTOR_ADDRESS',
834
+ 'JINN_CLAIM_EMITTER_ADDRESS',
835
+ 'JINN_MESSENGER_ADDRESS',
836
+ 'JINN_MESSENGER_MODE',
837
+ 'JINN_CLAIM_LOOP_INTERVAL_MS',
838
+ 'JINN_STAKING_MODE',
839
+ 'JINN_TARGET_SERVICES',
840
+ 'JINN_DEBUG',
841
+ 'JINN_RUN_LEGACY_MIGRATIONS',
842
+ 'JINN_MASTER_ETH_DAILY_WEI',
843
+ 'JINN_MIN_EOA_GAS_WEI',
844
+ 'JINN_MIN_SAFE_ETH_WEI',
845
+ 'JINN_IDENTITY_REGISTRY_ADDRESS',
846
+ 'JINN_VALIDATION_REGISTRY_ADDRESS',
847
+ 'JINN_REPUTATION_ENABLED',
848
+ 'JINN_RPC_URL',
849
+ 'BASE_RPC_URL',
850
+ 'BASE_SEPOLIA_RPC_URL',
851
+ 'JINN_ARCHIVE_RPC_URL',
852
+ 'JINN_TASKS',
853
+ 'JINN_ENGINE_WORKING_DIR_ROOT',
854
+ 'JINN_ENGINE_IMPL_STATE_DIR_ROOT',
855
+ 'JINN_OPERATOR_PUBLIC_ENDPOINT',
856
+ 'JINN_OPERATOR_DEFAULT_PRICE_USDC',
857
+ 'JINN_OPERATOR_DONATION_ENABLED',
858
+ 'JINN_CAPTURES_LLM_PROXY_ENABLED',
859
+ 'JINN_CAPTURES_LLM_PROXY_PORT',
860
+ 'JINN_BUILD_COMMIT',
861
+ ];
862
+ /**
863
+ * Build a structured provenance block describing how the config was resolved.
864
+ *
865
+ * Pass the same `configPath` you passed to `loadConfig`, and the resulting
866
+ * `JinnConfig`. The helper inspects `process.env` to discover which tracked
867
+ * env vars were set; it never reads their values.
868
+ *
869
+ * @param configPath — the explicit config file path passed to `loadConfig`,
870
+ * or undefined if the default path was used.
871
+ * @param config — the resolved `JinnConfig` returned by `loadConfig`.
872
+ * @param env — defaults to `process.env`; inject in tests.
873
+ */
874
+ export function buildConfigProvenance(configPath, config, env = process.env) {
875
+ const filePath = configPath ?? DEFAULT_CONFIG_PATH;
876
+ const configLoaded = existsSync(filePath);
877
+ const envOverrides = {};
878
+ for (const name of TRACKED_ENV_VARS) {
879
+ if (env[name] !== undefined) {
880
+ envOverrides[name] = 'set';
881
+ }
882
+ }
883
+ return {
884
+ configPath: configLoaded ? filePath : null,
885
+ configLoaded,
886
+ network: config.network,
887
+ earningDir: config.earningDir,
888
+ dbPath: config.dbPath,
889
+ runtimeMode: config.runtimeMode ?? null,
890
+ envOverrides,
891
+ };
892
+ }
318
893
  //# sourceMappingURL=config.js.map