@jinn-network/client 0.1.6 → 0.1.7-canary.08ebd916

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 (390) hide show
  1. package/CHANGELOG.md +33 -0
  2. package/README.md +67 -1
  3. package/deployments/deployment-jinn-mvi-l1-sepolia-fast.json +23 -4
  4. package/deployments/deployment-jinn-mvi-l1-sepolia.json +23 -4
  5. package/deployments/deployment-jinn-mvi-l2-baseSepolia.json +5 -4
  6. package/dist/adapters/mech/adapter.d.ts +38 -2
  7. package/dist/adapters/mech/adapter.js +269 -62
  8. package/dist/adapters/mech/adapter.js.map +1 -1
  9. package/dist/adapters/mech/contracts.d.ts +17 -4
  10. package/dist/adapters/mech/contracts.js +8 -2
  11. package/dist/adapters/mech/contracts.js.map +1 -1
  12. package/dist/adapters/mech/safe-revert.d.ts +20 -0
  13. package/dist/adapters/mech/safe-revert.js +12 -4
  14. package/dist/adapters/mech/safe-revert.js.map +1 -1
  15. package/dist/adapters/mech/safe.d.ts +6 -2
  16. package/dist/adapters/mech/safe.js +32 -11
  17. package/dist/adapters/mech/safe.js.map +1 -1
  18. package/dist/adapters/mech/types.d.ts +6 -1
  19. package/dist/adapters/mech/types.js.map +1 -1
  20. package/dist/adapters/mech/verdict-code.d.ts +1 -0
  21. package/dist/adapters/mech/verdict-code.js +18 -0
  22. package/dist/adapters/mech/verdict-code.js.map +1 -1
  23. package/dist/agent/operator-claude.js +8 -0
  24. package/dist/agent/operator-claude.js.map +1 -1
  25. package/dist/api/activity-events-endpoint.d.ts +14 -0
  26. package/dist/api/activity-events-endpoint.js +59 -0
  27. package/dist/api/activity-events-endpoint.js.map +1 -0
  28. package/dist/api/admin-endpoint.d.ts +15 -3
  29. package/dist/api/admin-endpoint.js +24 -2
  30. package/dist/api/admin-endpoint.js.map +1 -1
  31. package/dist/api/bootstrap-endpoint.d.ts +1 -2
  32. package/dist/api/bootstrap-endpoint.js +85 -18
  33. package/dist/api/bootstrap-endpoint.js.map +1 -1
  34. package/dist/api/codex-doctor-endpoint.d.ts +90 -0
  35. package/dist/api/codex-doctor-endpoint.js +296 -0
  36. package/dist/api/codex-doctor-endpoint.js.map +1 -0
  37. package/dist/api/discovery-endpoint.d.ts +1 -0
  38. package/dist/api/discovery-endpoint.js +26 -0
  39. package/dist/api/discovery-endpoint.js.map +1 -1
  40. package/dist/api/fleet-build.d.ts +1 -0
  41. package/dist/api/fleet-build.js +2 -1
  42. package/dist/api/fleet-build.js.map +1 -1
  43. package/dist/api/gather-status.d.ts +37 -0
  44. package/dist/api/gather-status.js +572 -19
  45. package/dist/api/gather-status.js.map +1 -1
  46. package/dist/api/hermes-doctor-endpoint.d.ts +128 -3
  47. package/dist/api/hermes-doctor-endpoint.js +265 -22
  48. package/dist/api/hermes-doctor-endpoint.js.map +1 -1
  49. package/dist/api/launcher-status.d.ts +25 -17
  50. package/dist/api/launcher-status.js +13 -11
  51. package/dist/api/launcher-status.js.map +1 -1
  52. package/dist/api/launcher-tasks.d.ts +1 -1
  53. package/dist/api/launcher-tasks.js +12 -8
  54. package/dist/api/launcher-tasks.js.map +1 -1
  55. package/dist/api/operator-artifacts-endpoint.js +73 -6
  56. package/dist/api/operator-artifacts-endpoint.js.map +1 -1
  57. package/dist/api/portfolio-v0-build.d.ts +10 -0
  58. package/dist/api/portfolio-v0-build.js +24 -5
  59. package/dist/api/portfolio-v0-build.js.map +1 -1
  60. package/dist/api/prediction-v1-build.d.ts +10 -0
  61. package/dist/api/prediction-v1-build.js +7 -1
  62. package/dist/api/prediction-v1-build.js.map +1 -1
  63. package/dist/api/server.d.ts +31 -1
  64. package/dist/api/server.js +95 -2
  65. package/dist/api/server.js.map +1 -1
  66. package/dist/api/setup-endpoints.d.ts +16 -0
  67. package/dist/api/setup-endpoints.js +89 -135
  68. package/dist/api/setup-endpoints.js.map +1 -1
  69. package/dist/api/setup-retry-endpoint.d.ts +19 -0
  70. package/dist/api/setup-retry-endpoint.js +32 -0
  71. package/dist/api/setup-retry-endpoint.js.map +1 -0
  72. package/dist/api/solvernets-endpoints.d.ts +8 -0
  73. package/dist/api/solvernets-endpoints.js +99 -60
  74. package/dist/api/solvernets-endpoints.js.map +1 -1
  75. package/dist/api/status-build.d.ts +168 -2
  76. package/dist/api/status-build.js +116 -27
  77. package/dist/api/status-build.js.map +1 -1
  78. package/dist/api/status-harness-rollup.d.ts +35 -0
  79. package/dist/api/status-harness-rollup.js +45 -0
  80. package/dist/api/status-harness-rollup.js.map +1 -0
  81. package/dist/api/task-run-routing.d.ts +7 -0
  82. package/dist/api/task-run-routing.js +12 -0
  83. package/dist/api/task-run-routing.js.map +1 -0
  84. package/dist/api/task-runs-build.d.ts +21 -0
  85. package/dist/api/task-runs-build.js +14 -1
  86. package/dist/api/task-runs-build.js.map +1 -1
  87. package/dist/build-info.json +4 -4
  88. package/dist/build-meta.json +1 -1
  89. package/dist/captures/live-publisher.js +24 -4
  90. package/dist/captures/live-publisher.js.map +1 -1
  91. package/dist/captures/publish.d.ts +1 -1
  92. package/dist/chain-read-errors.d.ts +10 -0
  93. package/dist/chain-read-errors.js +15 -0
  94. package/dist/chain-read-errors.js.map +1 -1
  95. package/dist/cli/commands/auth.js +1 -1
  96. package/dist/cli/commands/auth.js.map +1 -1
  97. package/dist/cli/commands/create.js +3 -2
  98. package/dist/cli/commands/create.js.map +1 -1
  99. package/dist/cli/commands/doctor.d.ts +2 -0
  100. package/dist/cli/commands/doctor.js +2 -0
  101. package/dist/cli/commands/doctor.js.map +1 -1
  102. package/dist/cli/commands/rewards.js +11 -7
  103. package/dist/cli/commands/rewards.js.map +1 -1
  104. package/dist/cli/commands/solver-nets.js +101 -15
  105. package/dist/cli/commands/solver-nets.js.map +1 -1
  106. package/dist/cli/commands/solver-plugins-block.d.ts +33 -0
  107. package/dist/cli/commands/solver-plugins-block.js +118 -0
  108. package/dist/cli/commands/solver-plugins-block.js.map +1 -0
  109. package/dist/cli/commands/solver-plugins-feedback.d.ts +72 -0
  110. package/dist/cli/commands/solver-plugins-feedback.js +262 -0
  111. package/dist/cli/commands/solver-plugins-feedback.js.map +1 -0
  112. package/dist/cli/commands/solver-plugins-read.d.ts +54 -0
  113. package/dist/cli/commands/solver-plugins-read.js +259 -0
  114. package/dist/cli/commands/solver-plugins-read.js.map +1 -0
  115. package/dist/cli/commands/solver-plugins.d.ts +35 -0
  116. package/dist/cli/commands/solver-plugins.js +399 -2
  117. package/dist/cli/commands/solver-plugins.js.map +1 -1
  118. package/dist/cli/commands/status.js +1 -1
  119. package/dist/cli/commands/status.js.map +1 -1
  120. package/dist/cli/commands/tasks.js +101 -11
  121. package/dist/cli/commands/tasks.js.map +1 -1
  122. package/dist/cli/commands/update.d.ts +10 -0
  123. package/dist/cli/commands/update.js +36 -0
  124. package/dist/cli/commands/update.js.map +1 -1
  125. package/dist/cli/introspection-context.js +5 -0
  126. package/dist/cli/introspection-context.js.map +1 -1
  127. package/dist/cli/task-native-readiness.d.ts +10 -1
  128. package/dist/cli/task-native-readiness.js +30 -6
  129. package/dist/cli/task-native-readiness.js.map +1 -1
  130. package/dist/config.d.ts +273 -235
  131. package/dist/config.js +305 -114
  132. package/dist/config.js.map +1 -1
  133. package/dist/daemon/checkpoint-loop.d.ts +48 -0
  134. package/dist/daemon/checkpoint-loop.js +76 -0
  135. package/dist/daemon/checkpoint-loop.js.map +1 -0
  136. package/dist/daemon/creator.d.ts +1 -1
  137. package/dist/daemon/creator.js +7 -3
  138. package/dist/daemon/creator.js.map +1 -1
  139. package/dist/daemon/daemon.d.ts +22 -0
  140. package/dist/daemon/daemon.js +156 -23
  141. package/dist/daemon/daemon.js.map +1 -1
  142. package/dist/daemon/eviction-loop.d.ts +40 -0
  143. package/dist/daemon/eviction-loop.js +67 -0
  144. package/dist/daemon/eviction-loop.js.map +1 -0
  145. package/dist/daemon/gate-logger.d.ts +9 -0
  146. package/dist/daemon/gate-logger.js +2 -0
  147. package/dist/daemon/gate-logger.js.map +1 -0
  148. package/dist/daemon/jinn-claim-loop-wiring.d.ts +33 -0
  149. package/dist/daemon/jinn-claim-loop-wiring.js +40 -0
  150. package/dist/daemon/jinn-claim-loop-wiring.js.map +1 -0
  151. package/dist/daemon/jinn-claim-loop.d.ts +24 -17
  152. package/dist/daemon/jinn-claim-loop.js +77 -23
  153. package/dist/daemon/jinn-claim-loop.js.map +1 -1
  154. package/dist/daemon/readiness-gate.d.ts +1 -4
  155. package/dist/daemon/readiness-gate.js.map +1 -1
  156. package/dist/daemon/skip-log-dedup.d.ts +69 -0
  157. package/dist/daemon/skip-log-dedup.js +106 -0
  158. package/dist/daemon/skip-log-dedup.js.map +1 -0
  159. package/dist/daemon/spend-cap-gate.d.ts +40 -0
  160. package/dist/daemon/spend-cap-gate.js +46 -0
  161. package/dist/daemon/spend-cap-gate.js.map +1 -0
  162. package/dist/dashboard/assets/index-C4huIsUW.css +32 -0
  163. package/dist/dashboard/assets/index-DkTglWXU.js +345 -0
  164. package/dist/dashboard/index.html +2 -2
  165. package/dist/discovery/factory.d.ts +17 -5
  166. package/dist/discovery/factory.js +46 -18
  167. package/dist/discovery/factory.js.map +1 -1
  168. package/dist/discovery/http.js +216 -3
  169. package/dist/discovery/http.js.map +1 -1
  170. package/dist/discovery/onchain.d.ts +5 -0
  171. package/dist/discovery/onchain.js +418 -15
  172. package/dist/discovery/onchain.js.map +1 -1
  173. package/dist/discovery/types.d.ts +75 -1
  174. package/dist/discovery/types.js +8 -10
  175. package/dist/discovery/types.js.map +1 -1
  176. package/dist/discovery/with-fallback.d.ts +7 -0
  177. package/dist/discovery/with-fallback.js +20 -0
  178. package/dist/discovery/with-fallback.js.map +1 -1
  179. package/dist/earning/bootstrap.d.ts +100 -4
  180. package/dist/earning/bootstrap.js +221 -74
  181. package/dist/earning/bootstrap.js.map +1 -1
  182. package/dist/earning/contracts.d.ts +14 -0
  183. package/dist/earning/contracts.js +17 -5
  184. package/dist/earning/contracts.js.map +1 -1
  185. package/dist/earning/funding-plan.js +27 -18
  186. package/dist/earning/funding-plan.js.map +1 -1
  187. package/dist/earning/jinn-rewards.d.ts +46 -0
  188. package/dist/earning/jinn-rewards.js +32 -0
  189. package/dist/earning/jinn-rewards.js.map +1 -1
  190. package/dist/earning/safe-adapter.d.ts +2 -0
  191. package/dist/earning/safe-adapter.js +37 -11
  192. package/dist/earning/safe-adapter.js.map +1 -1
  193. package/dist/earning/store.d.ts +8 -0
  194. package/dist/earning/store.js.map +1 -1
  195. package/dist/earning/testnet-setup-migration.d.ts +12 -0
  196. package/dist/earning/testnet-setup-migration.js +27 -1
  197. package/dist/earning/testnet-setup-migration.js.map +1 -1
  198. package/dist/earning/types.d.ts +21 -6
  199. package/dist/earning/viem-clients.d.ts +11 -4
  200. package/dist/earning/viem-clients.js +14 -5
  201. package/dist/earning/viem-clients.js.map +1 -1
  202. package/dist/erc8004/identity.d.ts +19 -3
  203. package/dist/erc8004/identity.js +21 -6
  204. package/dist/erc8004/identity.js.map +1 -1
  205. package/dist/erc8004/index.d.ts +1 -1
  206. package/dist/erc8004/index.js.map +1 -1
  207. package/dist/erc8004/reputation.d.ts +8 -0
  208. package/dist/erc8004/reputation.js +22 -3
  209. package/dist/erc8004/reputation.js.map +1 -1
  210. package/dist/events/types.d.ts +2 -2
  211. package/dist/harnesses/cost-estimates.d.ts +145 -0
  212. package/dist/harnesses/cost-estimates.js +297 -0
  213. package/dist/harnesses/cost-estimates.js.map +1 -0
  214. package/dist/harnesses/engine/engine.d.ts +78 -0
  215. package/dist/harnesses/engine/engine.js +153 -11
  216. package/dist/harnesses/engine/engine.js.map +1 -1
  217. package/dist/harnesses/engine/persistence.d.ts +51 -1
  218. package/dist/harnesses/engine/persistence.js +118 -5
  219. package/dist/harnesses/engine/persistence.js.map +1 -1
  220. package/dist/harnesses/engine/work-dir-reaper.d.ts +65 -0
  221. package/dist/harnesses/engine/work-dir-reaper.js +100 -0
  222. package/dist/harnesses/engine/work-dir-reaper.js.map +1 -0
  223. package/dist/harnesses/impls/hermes-agent/adapter.js +40 -0
  224. package/dist/harnesses/impls/hermes-agent/adapter.js.map +1 -1
  225. package/dist/harnesses/impls/hermes-agent/bootstrap.d.ts +20 -0
  226. package/dist/harnesses/impls/hermes-agent/bootstrap.js +40 -6
  227. package/dist/harnesses/impls/hermes-agent/bootstrap.js.map +1 -1
  228. package/dist/harnesses/impls/hermes-agent/harness.d.ts +59 -1
  229. package/dist/harnesses/impls/hermes-agent/harness.js +104 -0
  230. package/dist/harnesses/impls/hermes-agent/harness.js.map +1 -1
  231. package/dist/harnesses/impls/hermes-agent/prompt.d.ts +6 -6
  232. package/dist/harnesses/impls/hermes-agent/prompt.js +6 -6
  233. package/dist/harnesses/impls/index.d.ts +7 -0
  234. package/dist/harnesses/impls/index.js +16 -1
  235. package/dist/harnesses/impls/index.js.map +1 -1
  236. package/dist/harnesses/impls/learner/adapters/codex-code.d.ts +9 -0
  237. package/dist/harnesses/impls/learner/adapters/codex-code.js +30 -8
  238. package/dist/harnesses/impls/learner/adapters/codex-code.js.map +1 -1
  239. package/dist/harnesses/impls/learner/harness.d.ts +38 -4
  240. package/dist/harnesses/impls/learner/harness.js +96 -2
  241. package/dist/harnesses/impls/learner/harness.js.map +1 -1
  242. package/dist/harnesses/impls/learner/harvest.d.ts +1 -1
  243. package/dist/harnesses/impls/learner/harvest.js +23 -5
  244. package/dist/harnesses/impls/learner/harvest.js.map +1 -1
  245. package/dist/harnesses/impls/learner/plugin-path.d.ts +0 -13
  246. package/dist/harnesses/impls/learner/plugin-path.js +35 -15
  247. package/dist/harnesses/impls/learner/plugin-path.js.map +1 -1
  248. package/dist/harnesses/impls/learner/restoration-patch.d.ts +2 -2
  249. package/dist/harnesses/impls/learner/restoration-patch.js +25 -6
  250. package/dist/harnesses/impls/learner/restoration-patch.js.map +1 -1
  251. package/dist/harnesses/impls/learner/types.d.ts +11 -0
  252. package/dist/harnesses/impls/stub.d.ts +58 -0
  253. package/dist/harnesses/impls/stub.js +89 -0
  254. package/dist/harnesses/impls/stub.js.map +1 -0
  255. package/dist/harnesses/impls/swe-rebench-v2-evaluator/eval-runner.d.ts +69 -50
  256. package/dist/harnesses/impls/swe-rebench-v2-evaluator/eval-runner.js +178 -93
  257. package/dist/harnesses/impls/swe-rebench-v2-evaluator/eval-runner.js.map +1 -1
  258. package/dist/harnesses/impls/swe-rebench-v2-evaluator/harness.d.ts +12 -1
  259. package/dist/harnesses/impls/swe-rebench-v2-evaluator/harness.js +121 -7
  260. package/dist/harnesses/impls/swe-rebench-v2-evaluator/harness.js.map +1 -1
  261. package/dist/harnesses/impls/swe-rebench-v2-evaluator/hf-fetcher.d.ts +88 -4
  262. package/dist/harnesses/impls/swe-rebench-v2-evaluator/hf-fetcher.js +143 -22
  263. package/dist/harnesses/impls/swe-rebench-v2-evaluator/hf-fetcher.js.map +1 -1
  264. package/dist/harnesses/impls/swe-rebench-v2-evaluator/index.d.ts +6 -0
  265. package/dist/harnesses/impls/swe-rebench-v2-evaluator/index.js +1 -1
  266. package/dist/harnesses/impls/swe-rebench-v2-evaluator/index.js.map +1 -1
  267. package/dist/harnesses/readiness-registry.d.ts +7 -0
  268. package/dist/harnesses/readiness-registry.js +18 -1
  269. package/dist/harnesses/readiness-registry.js.map +1 -1
  270. package/dist/main.js +419 -111
  271. package/dist/main.js.map +1 -1
  272. package/dist/observability/emit-event.d.ts +3 -2
  273. package/dist/observability/emit-event.js +22 -1
  274. package/dist/observability/emit-event.js.map +1 -1
  275. package/dist/operator-errors.d.ts +7 -0
  276. package/dist/operator-errors.js +13 -1
  277. package/dist/operator-errors.js.map +1 -1
  278. package/dist/plugins/learner/.claude-plugin/plugin.json +9 -0
  279. package/dist/plugins/learner/.codex-plugin/plugin.json +39 -0
  280. package/dist/plugins/learner/AGENTS.md +40 -0
  281. package/dist/plugins/learner/CLAUDE.md +33 -0
  282. package/dist/plugins/learner/README.md +59 -0
  283. package/dist/plugins/learner/hooks/hooks.json +16 -0
  284. package/dist/plugins/learner/hooks/session-start +38 -0
  285. package/dist/plugins/learner/skills/learn/SKILL.md +412 -0
  286. package/dist/plugins/learner/skills/learn/analyst-prompt.md +68 -0
  287. package/dist/plugins/learner/skills/learn/consolidator-prompt.md +94 -0
  288. package/dist/plugins/learner/skills/learn/explorer-prompt.md +53 -0
  289. package/dist/plugins/learner/skills/learn/planner-prompt.md +87 -0
  290. package/dist/plugins/learner/skills/learn/promoter-prompt.md +113 -0
  291. package/dist/plugins/learner/skills/learn/step-worker-prompt.md +47 -0
  292. package/dist/plugins/learner/skills/learn/strategist-prompt.md +85 -0
  293. package/dist/preflight/rpc-network.d.ts +40 -0
  294. package/dist/preflight/rpc-network.js +67 -1
  295. package/dist/preflight/rpc-network.js.map +1 -1
  296. package/dist/restart-daemon.d.ts +90 -0
  297. package/dist/restart-daemon.js +95 -0
  298. package/dist/restart-daemon.js.map +1 -0
  299. package/dist/rpc/transport.d.ts +109 -0
  300. package/dist/rpc/transport.js +220 -0
  301. package/dist/rpc/transport.js.map +1 -0
  302. package/dist/scripts/donation-consumption-acceptance.js +7 -28
  303. package/dist/scripts/donation-consumption-acceptance.js.map +1 -1
  304. package/dist/setup/halt-mode.d.ts +14 -0
  305. package/dist/setup/halt-mode.js +17 -0
  306. package/dist/setup/halt-mode.js.map +1 -0
  307. package/dist/solver-nets/prediction-operator-ux.d.ts +1 -2
  308. package/dist/solver-nets/prediction-operator-ux.js +90 -47
  309. package/dist/solver-nets/prediction-operator-ux.js.map +1 -1
  310. package/dist/solver-nets/registry.d.ts +20 -1
  311. package/dist/solver-nets/registry.js +38 -25
  312. package/dist/solver-nets/registry.js.map +1 -1
  313. package/dist/solver-types/_swe-rebench-v2-pool-cache.d.ts +58 -0
  314. package/dist/solver-types/_swe-rebench-v2-pool-cache.js +87 -0
  315. package/dist/solver-types/_swe-rebench-v2-pool-cache.js.map +1 -0
  316. package/dist/solver-types/_swe-rebench-v2-pool.d.ts +9 -2
  317. package/dist/solver-types/_swe-rebench-v2-pool.js +15 -20
  318. package/dist/solver-types/_swe-rebench-v2-pool.js.map +1 -1
  319. package/dist/solver-types/_swe-rebench-v2-substrate.d.ts +1 -0
  320. package/dist/solver-types/_swe-rebench-v2-substrate.js +10 -0
  321. package/dist/solver-types/_swe-rebench-v2-substrate.js.map +1 -1
  322. package/dist/solver-types/_swe-rebench-v2-validated-pool.d.ts +94 -1
  323. package/dist/solver-types/_swe-rebench-v2-validated-pool.js +305 -39
  324. package/dist/solver-types/_swe-rebench-v2-validated-pool.js.map +1 -1
  325. package/dist/solver-types/swe-rebench-v2-auto.d.ts +22 -7
  326. package/dist/solver-types/swe-rebench-v2-auto.js +57 -20
  327. package/dist/solver-types/swe-rebench-v2-auto.js.map +1 -1
  328. package/dist/solver-types/swe-rebench-v2.d.ts +18 -2
  329. package/dist/solver-types/swe-rebench-v2.js +310 -94
  330. package/dist/solver-types/swe-rebench-v2.js.map +1 -1
  331. package/dist/solvernets/daemon-init.d.ts +10 -2
  332. package/dist/solvernets/daemon-init.js +22 -2
  333. package/dist/solvernets/daemon-init.js.map +1 -1
  334. package/dist/solvernets/launched-record-dispatcher.d.ts +4 -0
  335. package/dist/solvernets/launched-record-dispatcher.js +44 -7
  336. package/dist/solvernets/launched-record-dispatcher.js.map +1 -1
  337. package/dist/solvernets/store.d.ts +5 -0
  338. package/dist/solvernets/store.js +1 -0
  339. package/dist/solvernets/store.js.map +1 -1
  340. package/dist/spend/credential.d.ts +8 -0
  341. package/dist/spend/credential.js +30 -0
  342. package/dist/spend/credential.js.map +1 -0
  343. package/dist/spend/daemon-config.d.ts +13 -0
  344. package/dist/spend/daemon-config.js +24 -0
  345. package/dist/spend/daemon-config.js.map +1 -0
  346. package/dist/spend/pricing.d.ts +16 -0
  347. package/dist/spend/pricing.js +26 -0
  348. package/dist/spend/pricing.js.map +1 -0
  349. package/dist/spend/record.d.ts +13 -0
  350. package/dist/spend/record.js +30 -0
  351. package/dist/spend/record.js.map +1 -0
  352. package/dist/spend/usage.d.ts +27 -0
  353. package/dist/spend/usage.js +113 -0
  354. package/dist/spend/usage.js.map +1 -0
  355. package/dist/store/store.d.ts +61 -0
  356. package/dist/store/store.js +302 -7
  357. package/dist/store/store.js.map +1 -1
  358. package/dist/tasks/sources.d.ts +18 -1
  359. package/dist/tasks/sources.js +33 -5
  360. package/dist/tasks/sources.js.map +1 -1
  361. package/dist/trajectory/transcript-parsers/types.d.ts +8 -8
  362. package/dist/tx-retry.d.ts +166 -19
  363. package/dist/tx-retry.js +310 -32
  364. package/dist/tx-retry.js.map +1 -1
  365. package/dist/types/payloads/prediction-apy-v0.d.ts +5 -5
  366. package/dist/types/payloads/prediction-v0.d.ts +5 -5
  367. package/dist/types/task-document.d.ts +392 -0
  368. package/dist/types/task-document.js +10 -0
  369. package/dist/types/task-document.js.map +1 -1
  370. package/dist/types/task.d.ts +28 -0
  371. package/dist/util/extract-tx-hash.d.ts +14 -0
  372. package/dist/util/extract-tx-hash.js +19 -0
  373. package/dist/util/extract-tx-hash.js.map +1 -0
  374. package/dist/vendor/@jinn-network/sdk/dist/contracts.js +1 -1
  375. package/dist/vendor/@jinn-network/sdk/dist/solvernets/manifest-schema.d.ts +3 -0
  376. package/dist/vendor/@jinn-network/sdk/dist/solvernets/manifest-schema.js +1 -0
  377. package/package.json +36 -13
  378. package/plugins/swe-rebench-v2-diffmin/README.md +10 -9
  379. package/plugins/swe-rebench-v2-diffmin/jinn.plugin.json +1 -1
  380. package/plugins/swe-rebench-v2-diffmin/skills/diffmin/SKILL.md +15 -10
  381. package/plugins/swe-rebench-v2-diffmin/skills/test-map/SKILL.md +10 -12
  382. package/plugins/swe-rebench-v2-runtime/.claude-plugin/plugin.json +1 -1
  383. package/plugins/swe-rebench-v2-runtime/.codex-plugin/plugin.json +3 -3
  384. package/plugins/swe-rebench-v2-runtime/README.md +6 -6
  385. package/plugins/swe-rebench-v2-runtime/jinn.plugin.json +2 -3
  386. package/plugins/swe-rebench-v2-runtime/skills/task/SKILL.md +69 -0
  387. package/dist/dashboard/assets/index-DOlzFN8a.css +0 -32
  388. package/dist/dashboard/assets/index-NkZ7CTAT.js +0 -140
  389. package/plugins/swe-rebench-v2-runtime/skills/orient/SKILL.md +0 -29
  390. package/plugins/swe-rebench-v2-runtime/skills/plan/SKILL.md +0 -53
package/CHANGELOG.md CHANGED
@@ -2,6 +2,39 @@
2
2
 
3
3
  ## Unreleased
4
4
 
5
+ ### Embedded agent surface hidden by default (issue #326)
6
+
7
+ - **The embedded Claude agent chat surface no longer renders in the operator
8
+ app by default.** The right-rail agent panel (running mode) and the
9
+ "Ask Claude" panel (onboarding) are hidden. The 2026-05-19 v0.1.6 dogfood
10
+ found the surface isn't robust enough for first-time operators — it is the
11
+ only daemon-side surface that strictly requires Claude auth, and its
12
+ action-authority / plugin-scope shape is still in design (#177 / #178).
13
+ - **Feature flag: `JINN_ENABLE_EMBEDDED_AGENT`.** Set
14
+ `JINN_ENABLE_EMBEDDED_AGENT=1` (also accepts `true`) to re-enable the
15
+ surface for development. Default is off. When off, the daemon does not
16
+ mount the `/api/agent/ws` bridge and the SPA renders no agent panel; when
17
+ on, the dev-time path works end-to-end as before. (Issue #367: the SPA now
18
+ reads this flag through the injected `window.__JINN_FEATURES__`, the same
19
+ channel as the plug-in builder UI flag — no behaviour change for operators.)
20
+ - **Claude-Code-as-a-solver-harness is unaffected.** Operators can still pick
21
+ Claude Code as their SolverNet harness — that path is independent of the
22
+ embedded chat surface and its WebSocket bridge.
23
+
24
+ ### Operator app
25
+
26
+ - **Plug-in builder UI surfaces hidden by default (issue #327).** The `/build`
27
+ route and the Build top-tab no longer appear in the operator app. Hitting
28
+ `/build` by direct URL redirects to `/overview`. The plug-in substrate stays
29
+ fully live — `jinn solver-plugins publish` / `revoke`, the Ponder indexer,
30
+ the Discovery API endpoints, and the `client/docs/build/` tree are
31
+ unchanged, so direct-CLI builders following the docs are not blocked. The
32
+ surfaces are gated to keep the operator-app first-run UX focused; they will
33
+ be re-promoted once that UX is solid and plug-in indexing is end-to-end
34
+ populated. Set `JINN_ENABLE_PLUGIN_BUILDER_UI=1` on the daemon to re-enable
35
+ the full builder surface for development and design work — the daemon injects
36
+ the flag into the SPA via `window.__JINN_FEATURES__`.
37
+
5
38
  ### SWE-rebench v2 admission
6
39
 
7
40
  - **Admission semantics bumped from `'2'` → `'3'`.** Operators running the
package/README.md CHANGED
@@ -312,7 +312,7 @@ JINN_PASSWORD=secret jinn run --config ./my-config.json
312
312
  | Config key | Env override | Default |
313
313
  |---|---|---|
314
314
  | network | JINN_NETWORK | `testnet` (Phase 1b default; flips to `mainnet` at Phase 2 launch) |
315
- | rpcUrl | BASE_RPC_URL / JINN_RPC_URL | network-appropriate public RPC |
315
+ | rpcUrl | BASE_RPC_URL / JINN_RPC_URL | testnet: two-provider fallback chain `[publicnode, sepolia.base.org]`; mainnet: single `mainnet.base.org`. Accepts string OR array; env values split on commas. See "RPC fallback chain" below. |
316
316
  | claudeModel | JINN_CLAUDE_MODEL | claude-haiku-4-5-20251001 |
317
317
  | claudePath | JINN_CLAUDE_PATH | claude |
318
318
  | pollIntervalMs | JINN_POLL_INTERVAL_MS | 5000 |
@@ -325,6 +325,72 @@ JINN_PASSWORD=secret jinn run --config ./my-config.json
325
325
 
326
326
  `JINN_PASSWORD` is env-only (keystore encryption, never in config files). Alternatively, use `--password-fd <N>` to read from a file descriptor.
327
327
 
328
+ ### RPC fallback chain
329
+
330
+ Out of the box on testnet, `jinn run` uses a two-provider fallback chain —
331
+ no key required, zero config:
332
+
333
+ ```text
334
+ slot 0 https://base-sepolia.publicnode.com (no-auth, 50k-block getLogs cap)
335
+ slot 1 https://sepolia.base.org (free public Coinbase, 2k cap)
336
+ ```
337
+
338
+ If the primary returns a network error or HTTP 429 / 5xx, viem
339
+ transparently falls through to the next slot. When every slot fails the
340
+ daemon throws `AllRpcsFailedError` (visible in the dashboard's NetworkSection
341
+ and in stderr).
342
+
343
+ #### Bring your own paid primary
344
+
345
+ Operators with a paid Alchemy / Tenderly / QuickNode endpoint should
346
+ **prepend** their URL — the public free chain stays as automatic backup:
347
+
348
+ ```json
349
+ {
350
+ "rpcUrl": [
351
+ "https://my-alchemy-key.example",
352
+ "https://base-sepolia.publicnode.com",
353
+ "https://sepolia.base.org"
354
+ ]
355
+ }
356
+ ```
357
+
358
+ Or via env (comma-separated, same chain capped at 4 providers):
359
+
360
+ ```bash
361
+ JINN_RPC_URL='https://my-alchemy-key.example,https://base-sepolia.publicnode.com,https://sepolia.base.org' jinn run
362
+ ```
363
+
364
+ The chain is built with viem's `fallback({ rank: false })` so operator slot
365
+ order is preserved (no latency-based reshuffling).
366
+
367
+ #### Automatic failure modes
368
+
369
+ | Failure | What used to happen | What now happens |
370
+ |---------------------------------------------|--------------------------------|-------------------------------------------------|
371
+ | Primary RPC returns HTTP 429 (rate limit) | Daemon hot-loops on every call | viem falls through to slot 1; daemon continues |
372
+ | Primary RPC unreachable | Daemon errors silently | viem falls through to slot 1; daemon continues |
373
+ | Primary's API key quota exhausted | Daemon silently degraded | viem falls through to slot 1; daemon continues |
374
+ | Every slot fails (rare) | Daemon errors silently | `AllRpcsFailedError` thrown with masked host list — surfaces as a state message in the operator app |
375
+
376
+ On boot the daemon emits one log line per slot followed by the canonical
377
+ summary line:
378
+
379
+ ```text
380
+ [rpc] L2 base-sepolia.publicnode.com ok latency=87ms
381
+ [rpc] L2 sepolia.base.org ok latency=141ms
382
+ [rpc] L2 transport: fallback chain (2 providers) — primary=base-sepolia.publicnode.com
383
+ ```
384
+
385
+ The probe is **log-only** — secondary-slot 429s warn but never gate
386
+ startup. Only chain-id mismatch against the head URL is fail-loud
387
+ (`checkRpcNetwork`).
388
+
389
+ Note this is the JSON-RPC transport layer. It is distinct from
390
+ `discovery.fallbackToOnchain`, which is a separate flag at the read-API
391
+ layer (Ponder indexer → direct `eth_getLogs` floor). The RPC fallback chain
392
+ operates beneath both.
393
+
328
394
  ## Tokens
329
395
 
330
396
  | Role | Phase 1b (testnet, Base Sepolia) | Phase 2 (mainnet, Base) |
@@ -20,8 +20,13 @@
20
20
  },
21
21
  "messenger": {
22
22
  "mode": "mock",
23
- "address": "0x30E2f1A5691a999053A54e8DAf9496CD7ccF2DFD",
24
- "owner": "0x34516dB851f03f8E14d0c1cD56200175e914cCf0"
23
+ "address": "0xd229A2C20333B747675090Ce38B8a1Fb2dafe6AC",
24
+ "owner": "0x15e78734481bD31F6e183dad05225505a45ACd07",
25
+ "previousAddress": "0x30E2f1A5691a999053A54e8DAf9496CD7ccF2DFD",
26
+ "rotatedAt": "2026-05-20T17:14:48.591Z",
27
+ "deployTxHash": "0x44c0fc6f92e1c8247304dceb195b8cfa1ae114a79e7a6ce1305e4305de45b9af",
28
+ "setMessengerTxHash": "0x13313c9cc29ae9d7ce1e13ca78472359fdb6213b5d1d936d73f89ca051867c00",
29
+ "rotationBlockNumber": 10886858
25
30
  },
26
31
  "handover": {
27
32
  "renounceAdmin": false
@@ -31,6 +36,20 @@
31
36
  "TimelockController": "0x5CE9c7E24f0509490a91a1cD285DDFF70A9C058D",
32
37
  "JinnGovernor": "0xbbc43A1B5AC699de09577dAE4A1007a3bA704D9E",
33
38
  "JinnDistributor": "0xaC9CD847660d05e77D82A3684aFC4EbFd94fBfe6",
34
- "Messenger": "0x30E2f1A5691a999053A54e8DAf9496CD7ccF2DFD"
35
- }
39
+ "Messenger": "0xd229A2C20333B747675090Ce38B8a1Fb2dafe6AC",
40
+ "MockMessenger": "0xd229A2C20333B747675090Ce38B8a1Fb2dafe6AC"
41
+ },
42
+ "rotations": [
43
+ {
44
+ "type": "mock-messenger",
45
+ "previousMessenger": "0x30E2f1A5691a999053A54e8DAf9496CD7ccF2DFD",
46
+ "newMessenger": "0xd229A2C20333B747675090Ce38B8a1Fb2dafe6AC",
47
+ "owner": "0x15e78734481bD31F6e183dad05225505a45ACd07",
48
+ "distributor": "0xaC9CD847660d05e77D82A3684aFC4EbFd94fBfe6",
49
+ "deployTxHash": "0x44c0fc6f92e1c8247304dceb195b8cfa1ae114a79e7a6ce1305e4305de45b9af",
50
+ "setMessengerTxHash": "0x13313c9cc29ae9d7ce1e13ca78472359fdb6213b5d1d936d73f89ca051867c00",
51
+ "blockNumber": 10886858,
52
+ "rotatedAt": "2026-05-20T17:14:48.591Z"
53
+ }
54
+ ]
36
55
  }
@@ -20,8 +20,13 @@
20
20
  },
21
21
  "messenger": {
22
22
  "mode": "mock",
23
- "address": "0x30E2f1A5691a999053A54e8DAf9496CD7ccF2DFD",
24
- "owner": "0x34516dB851f03f8E14d0c1cD56200175e914cCf0"
23
+ "address": "0xd229A2C20333B747675090Ce38B8a1Fb2dafe6AC",
24
+ "owner": "0x15e78734481bD31F6e183dad05225505a45ACd07",
25
+ "previousAddress": "0x30E2f1A5691a999053A54e8DAf9496CD7ccF2DFD",
26
+ "rotatedAt": "2026-05-20T17:14:48.591Z",
27
+ "deployTxHash": "0x44c0fc6f92e1c8247304dceb195b8cfa1ae114a79e7a6ce1305e4305de45b9af",
28
+ "setMessengerTxHash": "0x13313c9cc29ae9d7ce1e13ca78472359fdb6213b5d1d936d73f89ca051867c00",
29
+ "rotationBlockNumber": 10886858
25
30
  },
26
31
  "handover": {
27
32
  "renounceAdmin": false
@@ -31,6 +36,20 @@
31
36
  "TimelockController": "0x5CE9c7E24f0509490a91a1cD285DDFF70A9C058D",
32
37
  "JinnGovernor": "0xbbc43A1B5AC699de09577dAE4A1007a3bA704D9E",
33
38
  "JinnDistributor": "0xaC9CD847660d05e77D82A3684aFC4EbFd94fBfe6",
34
- "Messenger": "0x30E2f1A5691a999053A54e8DAf9496CD7ccF2DFD"
35
- }
39
+ "Messenger": "0xd229A2C20333B747675090Ce38B8a1Fb2dafe6AC",
40
+ "MockMessenger": "0xd229A2C20333B747675090Ce38B8a1Fb2dafe6AC"
41
+ },
42
+ "rotations": [
43
+ {
44
+ "type": "mock-messenger",
45
+ "previousMessenger": "0x30E2f1A5691a999053A54e8DAf9496CD7ccF2DFD",
46
+ "newMessenger": "0xd229A2C20333B747675090Ce38B8a1Fb2dafe6AC",
47
+ "owner": "0x15e78734481bD31F6e183dad05225505a45ACd07",
48
+ "distributor": "0xaC9CD847660d05e77D82A3684aFC4EbFd94fBfe6",
49
+ "deployTxHash": "0x44c0fc6f92e1c8247304dceb195b8cfa1ae114a79e7a6ce1305e4305de45b9af",
50
+ "setMessengerTxHash": "0x13313c9cc29ae9d7ce1e13ca78472359fdb6213b5d1d936d73f89ca051867c00",
51
+ "blockNumber": 10886858,
52
+ "rotatedAt": "2026-05-20T17:14:48.591Z"
53
+ }
54
+ ]
36
55
  }
@@ -2,11 +2,12 @@
2
2
  "network": "baseSepolia",
3
3
  "chainId": 84532,
4
4
  "deployer": "0x15e78734481bD31F6e183dad05225505a45ACd07",
5
- "deployedAt": "2026-04-29T11:37:34.801Z",
5
+ "deployedAt": "2026-05-20T15:23:10.000Z",
6
+ "deployBlock": 41761151,
7
+ "txHash": "0x97524384c024a2bcfe11b3699bad53e8533bc25f43e64101ce1e0e4170491f9b",
6
8
  "contracts": {
7
- "JinnClaimEmitter": "0xDB2f776D78d9aF12792C2C0f9875465eDaa859E7",
8
- "RestorationActivityCheckerV2": "0x0e1B5f264F4FAdcFAA950fb00c58d9A39C040f70",
9
- "JinnRouterV2": "0x13dae57a54A7DF862113BcA8Ee2fd3dEf6a6A94A",
9
+ "TaskClaimEmitter": "0xF60055534E377F4020eEA80356C0643E02f4f307",
10
+ "TaskActivityCheckerV3": "0x0e1B5f264F4FAdcFAA950fb00c58d9A39C040f70",
10
11
  "ServiceRegistry": "0x31D3202d8744B16A120117A053459DDFAE93c855"
11
12
  }
12
13
  }
@@ -33,8 +33,18 @@ export declare class MechAdapter implements ExecutionAdapter {
33
33
  private deliveryBlockCursor;
34
34
  private pendingEvaluations;
35
35
  private observedTasks;
36
+ /**
37
+ * Read-through cache for `restorationAnnouncementForTaskId` — the restoration
38
+ * task body looked up *while building an evaluation opportunity*. Kept
39
+ * SEPARATE from `observedTasks` (the `watchForTasks` discovery dedup set) on
40
+ * purpose: writing the restoration body into `observedTasks` made the
41
+ * TaskCreated scan skip that taskId as a *restoration* opportunity just
42
+ * because the daemon had built an *evaluation* opportunity for someone
43
+ * else's attempt on it. That blocked the creator's own daemon from claiming
44
+ * its own attempt on a multi-attempt (`maxClaims > 1`) task it posted.
45
+ */
46
+ private restorationBodyCache;
36
47
  private requestKinds;
37
- private claimedRestorationTaskIds;
38
48
  private evaluationOpportunities;
39
49
  private pendingEvaluationSolutions;
40
50
  private originalStates;
@@ -51,6 +61,9 @@ export declare class MechAdapter implements ExecutionAdapter {
51
61
  private persistPendingEvaluationSolutions;
52
62
  private rememberPendingEvaluationSolution;
53
63
  private forgetPendingEvaluationSolution;
64
+ private clearPendingDeliveryRecoveryState;
65
+ private recoveryDeliveryExpirySeconds;
66
+ private shouldSkipExpiredRecoveryDelivery;
54
67
  postTask(state: Task): Promise<PostedTask>;
55
68
  private signTaskDocument;
56
69
  private contractPolicyForTask;
@@ -58,6 +71,17 @@ export declare class MechAdapter implements ExecutionAdapter {
58
71
  private restorationAnnouncementForTaskId;
59
72
  private restorationAnnouncementFromDigest;
60
73
  private discoverSubgraphRestorationTasks;
74
+ /**
75
+ * Look up the Deliver-event envelope CID for a pending evaluation solution.
76
+ *
77
+ * Returns `null` when the Deliver event is not present in the configured
78
+ * lookback window. This is a terminal signal for the caller — re-running the
79
+ * same lookup later is deterministically futile when `solution.blockNumber`
80
+ * is set (toBlock is fixed at the SolutionDeliveryClaimed block), and is
81
+ * monotonically less likely to find the event when toBlock follows chain head
82
+ * (the window slides forward, away from any older Deliver event). Callers
83
+ * should prune the pending solution on `null` rather than retry — see #553.
84
+ */
61
85
  private deliveryEnvelopeCidForSolution;
62
86
  private evaluationAnnouncementForSolution;
63
87
  private retryPendingEvaluationSolutions;
@@ -74,8 +98,20 @@ export declare class MechAdapter implements ExecutionAdapter {
74
98
  }>;
75
99
  submitSolutionDelivery(requestId: RequestId, solutionDigest: Hex): Promise<void>;
76
100
  submitVerdictDelivery(requestId: RequestId, verdictDigest: Hex, verdictCode: VerdictCode): Promise<void>;
77
- private evidenceHashForDelivery;
101
+ private deliveryClaimForDelivery;
78
102
  private ensureDeliveryClaimed;
103
+ /**
104
+ * Paginate `getLogs` over `[deliveryBlockCursor+1, currentBlock]` chunked by
105
+ * `DEFAULT_ROUTER_LOG_CHUNK_BLOCKS` to honor RPC provider block-range limits
106
+ * (Tenderly base-sepolia caps at 100k; sepolia.base.org ~1k). Advances +
107
+ * persists `deliveryBlockCursor` per chunk so a mid-scan RPC failure on a
108
+ * later chunk does not strand the cursor at the pre-poll value (#552).
109
+ *
110
+ * Yields each chunk's decoded Deliver entries so the consumer can process
111
+ * them with the live "current block" context (needed for the recovery-
112
+ * delivery timestamp cache).
113
+ */
114
+ private scanDeliveryLogChunks;
79
115
  watchForDeliveries(): AsyncIterable<DeliveredResult>;
80
116
  stop(): Promise<void>;
81
117
  }