@jinn-network/client 0.1.6 → 0.1.7

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (288) hide show
  1. package/CHANGELOG.md +33 -0
  2. package/deployments/deployment-jinn-mvi-l1-sepolia-fast.json +23 -4
  3. package/deployments/deployment-jinn-mvi-l1-sepolia.json +23 -4
  4. package/deployments/deployment-jinn-mvi-l2-baseSepolia.json +5 -4
  5. package/dist/adapters/mech/adapter.d.ts +38 -1
  6. package/dist/adapters/mech/adapter.js +241 -54
  7. package/dist/adapters/mech/adapter.js.map +1 -1
  8. package/dist/adapters/mech/contracts.d.ts +17 -4
  9. package/dist/adapters/mech/contracts.js +8 -2
  10. package/dist/adapters/mech/contracts.js.map +1 -1
  11. package/dist/adapters/mech/safe-revert.d.ts +20 -0
  12. package/dist/adapters/mech/safe-revert.js +12 -4
  13. package/dist/adapters/mech/safe-revert.js.map +1 -1
  14. package/dist/adapters/mech/safe.d.ts +5 -1
  15. package/dist/adapters/mech/safe.js +27 -8
  16. package/dist/adapters/mech/safe.js.map +1 -1
  17. package/dist/adapters/mech/verdict-code.d.ts +1 -0
  18. package/dist/adapters/mech/verdict-code.js +18 -0
  19. package/dist/adapters/mech/verdict-code.js.map +1 -1
  20. package/dist/api/admin-endpoint.d.ts +15 -3
  21. package/dist/api/admin-endpoint.js +24 -2
  22. package/dist/api/admin-endpoint.js.map +1 -1
  23. package/dist/api/bootstrap-endpoint.js +49 -0
  24. package/dist/api/bootstrap-endpoint.js.map +1 -1
  25. package/dist/api/codex-doctor-endpoint.d.ts +73 -0
  26. package/dist/api/codex-doctor-endpoint.js +177 -0
  27. package/dist/api/codex-doctor-endpoint.js.map +1 -0
  28. package/dist/api/discovery-endpoint.d.ts +1 -0
  29. package/dist/api/discovery-endpoint.js +26 -0
  30. package/dist/api/discovery-endpoint.js.map +1 -1
  31. package/dist/api/fleet-build.d.ts +1 -0
  32. package/dist/api/fleet-build.js +2 -1
  33. package/dist/api/fleet-build.js.map +1 -1
  34. package/dist/api/gather-status.d.ts +11 -0
  35. package/dist/api/gather-status.js +400 -4
  36. package/dist/api/gather-status.js.map +1 -1
  37. package/dist/api/hermes-doctor-endpoint.d.ts +117 -0
  38. package/dist/api/hermes-doctor-endpoint.js +229 -23
  39. package/dist/api/hermes-doctor-endpoint.js.map +1 -1
  40. package/dist/api/launcher-status.d.ts +21 -16
  41. package/dist/api/launcher-status.js +2 -1
  42. package/dist/api/launcher-status.js.map +1 -1
  43. package/dist/api/portfolio-v0-build.d.ts +10 -0
  44. package/dist/api/portfolio-v0-build.js +24 -5
  45. package/dist/api/portfolio-v0-build.js.map +1 -1
  46. package/dist/api/prediction-v1-build.d.ts +10 -0
  47. package/dist/api/prediction-v1-build.js +7 -1
  48. package/dist/api/prediction-v1-build.js.map +1 -1
  49. package/dist/api/server.d.ts +31 -1
  50. package/dist/api/server.js +68 -1
  51. package/dist/api/server.js.map +1 -1
  52. package/dist/api/setup-endpoints.d.ts +16 -0
  53. package/dist/api/setup-endpoints.js +78 -4
  54. package/dist/api/setup-endpoints.js.map +1 -1
  55. package/dist/api/setup-retry-endpoint.d.ts +19 -0
  56. package/dist/api/setup-retry-endpoint.js +32 -0
  57. package/dist/api/setup-retry-endpoint.js.map +1 -0
  58. package/dist/api/solvernets-endpoints.d.ts +8 -0
  59. package/dist/api/solvernets-endpoints.js +71 -43
  60. package/dist/api/solvernets-endpoints.js.map +1 -1
  61. package/dist/api/status-build.d.ts +72 -0
  62. package/dist/api/status-build.js +73 -18
  63. package/dist/api/status-build.js.map +1 -1
  64. package/dist/api/task-run-routing.d.ts +7 -0
  65. package/dist/api/task-run-routing.js +12 -0
  66. package/dist/api/task-run-routing.js.map +1 -0
  67. package/dist/api/task-runs-build.d.ts +21 -0
  68. package/dist/api/task-runs-build.js +14 -1
  69. package/dist/api/task-runs-build.js.map +1 -1
  70. package/dist/build-info.json +4 -4
  71. package/dist/build-meta.json +1 -1
  72. package/dist/chain-read-errors.d.ts +10 -0
  73. package/dist/chain-read-errors.js +15 -0
  74. package/dist/chain-read-errors.js.map +1 -1
  75. package/dist/cli/commands/auth.js +1 -1
  76. package/dist/cli/commands/auth.js.map +1 -1
  77. package/dist/cli/commands/create.js +3 -2
  78. package/dist/cli/commands/create.js.map +1 -1
  79. package/dist/cli/commands/doctor.d.ts +2 -0
  80. package/dist/cli/commands/doctor.js +2 -0
  81. package/dist/cli/commands/doctor.js.map +1 -1
  82. package/dist/cli/commands/rewards.js +11 -7
  83. package/dist/cli/commands/rewards.js.map +1 -1
  84. package/dist/cli/commands/solver-nets.js +24 -9
  85. package/dist/cli/commands/solver-nets.js.map +1 -1
  86. package/dist/cli/commands/status.js +1 -1
  87. package/dist/cli/commands/status.js.map +1 -1
  88. package/dist/cli/commands/tasks.js +86 -9
  89. package/dist/cli/commands/tasks.js.map +1 -1
  90. package/dist/cli/commands/update.d.ts +10 -0
  91. package/dist/cli/commands/update.js +36 -0
  92. package/dist/cli/commands/update.js.map +1 -1
  93. package/dist/cli/introspection-context.js +5 -0
  94. package/dist/cli/introspection-context.js.map +1 -1
  95. package/dist/cli/task-native-readiness.d.ts +3 -1
  96. package/dist/cli/task-native-readiness.js +28 -6
  97. package/dist/cli/task-native-readiness.js.map +1 -1
  98. package/dist/config.d.ts +106 -5
  99. package/dist/config.js +97 -18
  100. package/dist/config.js.map +1 -1
  101. package/dist/daemon/checkpoint-loop.d.ts +48 -0
  102. package/dist/daemon/checkpoint-loop.js +76 -0
  103. package/dist/daemon/checkpoint-loop.js.map +1 -0
  104. package/dist/daemon/creator.d.ts +1 -1
  105. package/dist/daemon/creator.js +7 -3
  106. package/dist/daemon/creator.js.map +1 -1
  107. package/dist/daemon/daemon.d.ts +19 -0
  108. package/dist/daemon/daemon.js +68 -1
  109. package/dist/daemon/daemon.js.map +1 -1
  110. package/dist/daemon/eviction-loop.d.ts +40 -0
  111. package/dist/daemon/eviction-loop.js +67 -0
  112. package/dist/daemon/eviction-loop.js.map +1 -0
  113. package/dist/daemon/jinn-claim-loop-wiring.d.ts +33 -0
  114. package/dist/daemon/jinn-claim-loop-wiring.js +40 -0
  115. package/dist/daemon/jinn-claim-loop-wiring.js.map +1 -0
  116. package/dist/daemon/jinn-claim-loop.d.ts +24 -17
  117. package/dist/daemon/jinn-claim-loop.js +77 -23
  118. package/dist/daemon/jinn-claim-loop.js.map +1 -1
  119. package/dist/daemon/skip-log-dedup.d.ts +69 -0
  120. package/dist/daemon/skip-log-dedup.js +106 -0
  121. package/dist/daemon/skip-log-dedup.js.map +1 -0
  122. package/dist/dashboard/assets/index-BUlE8F3Y.js +330 -0
  123. package/dist/dashboard/assets/index-blqc7eqq.css +32 -0
  124. package/dist/dashboard/index.html +2 -2
  125. package/dist/discovery/factory.d.ts +17 -5
  126. package/dist/discovery/factory.js +46 -18
  127. package/dist/discovery/factory.js.map +1 -1
  128. package/dist/discovery/http.js +142 -3
  129. package/dist/discovery/http.js.map +1 -1
  130. package/dist/discovery/onchain.d.ts +5 -0
  131. package/dist/discovery/onchain.js +407 -15
  132. package/dist/discovery/onchain.js.map +1 -1
  133. package/dist/discovery/types.d.ts +45 -1
  134. package/dist/discovery/types.js +8 -10
  135. package/dist/discovery/types.js.map +1 -1
  136. package/dist/discovery/with-fallback.d.ts +7 -0
  137. package/dist/discovery/with-fallback.js +10 -0
  138. package/dist/discovery/with-fallback.js.map +1 -1
  139. package/dist/earning/bootstrap.d.ts +92 -1
  140. package/dist/earning/bootstrap.js +203 -63
  141. package/dist/earning/bootstrap.js.map +1 -1
  142. package/dist/earning/contracts.d.ts +14 -0
  143. package/dist/earning/contracts.js +17 -5
  144. package/dist/earning/contracts.js.map +1 -1
  145. package/dist/earning/funding-plan.js +27 -18
  146. package/dist/earning/funding-plan.js.map +1 -1
  147. package/dist/earning/jinn-rewards.d.ts +46 -0
  148. package/dist/earning/jinn-rewards.js +32 -0
  149. package/dist/earning/jinn-rewards.js.map +1 -1
  150. package/dist/earning/safe-adapter.d.ts +2 -0
  151. package/dist/earning/safe-adapter.js +26 -12
  152. package/dist/earning/safe-adapter.js.map +1 -1
  153. package/dist/earning/store.d.ts +8 -0
  154. package/dist/earning/store.js.map +1 -1
  155. package/dist/earning/testnet-setup-migration.d.ts +12 -0
  156. package/dist/earning/testnet-setup-migration.js +27 -1
  157. package/dist/earning/testnet-setup-migration.js.map +1 -1
  158. package/dist/earning/types.d.ts +15 -0
  159. package/dist/erc8004/reputation.d.ts +8 -0
  160. package/dist/erc8004/reputation.js +22 -3
  161. package/dist/erc8004/reputation.js.map +1 -1
  162. package/dist/harnesses/cost-estimates.d.ts +145 -0
  163. package/dist/harnesses/cost-estimates.js +297 -0
  164. package/dist/harnesses/cost-estimates.js.map +1 -0
  165. package/dist/harnesses/engine/engine.d.ts +72 -0
  166. package/dist/harnesses/engine/engine.js +105 -8
  167. package/dist/harnesses/engine/engine.js.map +1 -1
  168. package/dist/harnesses/engine/persistence.d.ts +51 -1
  169. package/dist/harnesses/engine/persistence.js +118 -5
  170. package/dist/harnesses/engine/persistence.js.map +1 -1
  171. package/dist/harnesses/engine/work-dir-reaper.d.ts +65 -0
  172. package/dist/harnesses/engine/work-dir-reaper.js +100 -0
  173. package/dist/harnesses/engine/work-dir-reaper.js.map +1 -0
  174. package/dist/harnesses/impls/hermes-agent/adapter.js +40 -0
  175. package/dist/harnesses/impls/hermes-agent/adapter.js.map +1 -1
  176. package/dist/harnesses/impls/hermes-agent/bootstrap.d.ts +20 -0
  177. package/dist/harnesses/impls/hermes-agent/bootstrap.js +40 -6
  178. package/dist/harnesses/impls/hermes-agent/bootstrap.js.map +1 -1
  179. package/dist/harnesses/impls/hermes-agent/harness.d.ts +59 -1
  180. package/dist/harnesses/impls/hermes-agent/harness.js +104 -0
  181. package/dist/harnesses/impls/hermes-agent/harness.js.map +1 -1
  182. package/dist/harnesses/impls/index.d.ts +7 -0
  183. package/dist/harnesses/impls/index.js +16 -1
  184. package/dist/harnesses/impls/index.js.map +1 -1
  185. package/dist/harnesses/impls/learner/harness.d.ts +38 -4
  186. package/dist/harnesses/impls/learner/harness.js +96 -2
  187. package/dist/harnesses/impls/learner/harness.js.map +1 -1
  188. package/dist/harnesses/impls/learner/plugin-path.d.ts +0 -13
  189. package/dist/harnesses/impls/learner/plugin-path.js +35 -15
  190. package/dist/harnesses/impls/learner/plugin-path.js.map +1 -1
  191. package/dist/harnesses/impls/learner/types.d.ts +11 -0
  192. package/dist/harnesses/impls/stub.d.ts +58 -0
  193. package/dist/harnesses/impls/stub.js +89 -0
  194. package/dist/harnesses/impls/stub.js.map +1 -0
  195. package/dist/harnesses/impls/swe-rebench-v2-evaluator/eval-runner.d.ts +69 -50
  196. package/dist/harnesses/impls/swe-rebench-v2-evaluator/eval-runner.js +178 -93
  197. package/dist/harnesses/impls/swe-rebench-v2-evaluator/eval-runner.js.map +1 -1
  198. package/dist/harnesses/impls/swe-rebench-v2-evaluator/harness.d.ts +12 -1
  199. package/dist/harnesses/impls/swe-rebench-v2-evaluator/harness.js +121 -7
  200. package/dist/harnesses/impls/swe-rebench-v2-evaluator/harness.js.map +1 -1
  201. package/dist/harnesses/impls/swe-rebench-v2-evaluator/hf-fetcher.d.ts +15 -0
  202. package/dist/harnesses/impls/swe-rebench-v2-evaluator/hf-fetcher.js +54 -4
  203. package/dist/harnesses/impls/swe-rebench-v2-evaluator/hf-fetcher.js.map +1 -1
  204. package/dist/harnesses/impls/swe-rebench-v2-evaluator/index.d.ts +6 -0
  205. package/dist/harnesses/impls/swe-rebench-v2-evaluator/index.js +1 -1
  206. package/dist/harnesses/impls/swe-rebench-v2-evaluator/index.js.map +1 -1
  207. package/dist/harnesses/readiness-registry.js +9 -1
  208. package/dist/harnesses/readiness-registry.js.map +1 -1
  209. package/dist/main.js +371 -82
  210. package/dist/main.js.map +1 -1
  211. package/dist/observability/emit-event.d.ts +1 -1
  212. package/dist/observability/emit-event.js.map +1 -1
  213. package/dist/operator-errors.d.ts +7 -0
  214. package/dist/operator-errors.js +13 -1
  215. package/dist/operator-errors.js.map +1 -1
  216. package/dist/plugins/learner/.claude-plugin/plugin.json +9 -0
  217. package/dist/plugins/learner/.codex-plugin/plugin.json +39 -0
  218. package/dist/plugins/learner/AGENTS.md +40 -0
  219. package/dist/plugins/learner/CLAUDE.md +33 -0
  220. package/dist/plugins/learner/README.md +59 -0
  221. package/dist/plugins/learner/hooks/hooks.json +16 -0
  222. package/dist/plugins/learner/hooks/session-start +38 -0
  223. package/dist/plugins/learner/skills/learn/SKILL.md +412 -0
  224. package/dist/plugins/learner/skills/learn/analyst-prompt.md +68 -0
  225. package/dist/plugins/learner/skills/learn/consolidator-prompt.md +94 -0
  226. package/dist/plugins/learner/skills/learn/explorer-prompt.md +53 -0
  227. package/dist/plugins/learner/skills/learn/planner-prompt.md +87 -0
  228. package/dist/plugins/learner/skills/learn/promoter-prompt.md +113 -0
  229. package/dist/plugins/learner/skills/learn/step-worker-prompt.md +47 -0
  230. package/dist/plugins/learner/skills/learn/strategist-prompt.md +85 -0
  231. package/dist/restart-daemon.d.ts +90 -0
  232. package/dist/restart-daemon.js +95 -0
  233. package/dist/restart-daemon.js.map +1 -0
  234. package/dist/setup/halt-mode.d.ts +14 -0
  235. package/dist/setup/halt-mode.js +17 -0
  236. package/dist/setup/halt-mode.js.map +1 -0
  237. package/dist/solver-nets/prediction-operator-ux.js +43 -3
  238. package/dist/solver-nets/prediction-operator-ux.js.map +1 -1
  239. package/dist/solver-nets/registry.d.ts +1 -0
  240. package/dist/solver-nets/registry.js +1 -1
  241. package/dist/solver-nets/registry.js.map +1 -1
  242. package/dist/solver-types/_swe-rebench-v2-pool-cache.d.ts +58 -0
  243. package/dist/solver-types/_swe-rebench-v2-pool-cache.js +87 -0
  244. package/dist/solver-types/_swe-rebench-v2-pool-cache.js.map +1 -0
  245. package/dist/solver-types/_swe-rebench-v2-substrate.d.ts +1 -0
  246. package/dist/solver-types/_swe-rebench-v2-substrate.js +10 -0
  247. package/dist/solver-types/_swe-rebench-v2-substrate.js.map +1 -1
  248. package/dist/solver-types/_swe-rebench-v2-validated-pool.d.ts +65 -0
  249. package/dist/solver-types/_swe-rebench-v2-validated-pool.js +243 -26
  250. package/dist/solver-types/_swe-rebench-v2-validated-pool.js.map +1 -1
  251. package/dist/solver-types/swe-rebench-v2-auto.d.ts +22 -7
  252. package/dist/solver-types/swe-rebench-v2-auto.js +45 -20
  253. package/dist/solver-types/swe-rebench-v2-auto.js.map +1 -1
  254. package/dist/solver-types/swe-rebench-v2.d.ts +13 -2
  255. package/dist/solver-types/swe-rebench-v2.js +233 -94
  256. package/dist/solver-types/swe-rebench-v2.js.map +1 -1
  257. package/dist/solvernets/daemon-init.d.ts +10 -2
  258. package/dist/solvernets/daemon-init.js +22 -2
  259. package/dist/solvernets/daemon-init.js.map +1 -1
  260. package/dist/solvernets/launched-record-dispatcher.js +35 -7
  261. package/dist/solvernets/launched-record-dispatcher.js.map +1 -1
  262. package/dist/solvernets/store.d.ts +5 -0
  263. package/dist/solvernets/store.js +1 -0
  264. package/dist/solvernets/store.js.map +1 -1
  265. package/dist/store/store.d.ts +15 -0
  266. package/dist/store/store.js +118 -3
  267. package/dist/store/store.js.map +1 -1
  268. package/dist/tasks/sources.d.ts +18 -1
  269. package/dist/tasks/sources.js +33 -5
  270. package/dist/tasks/sources.js.map +1 -1
  271. package/dist/tx-retry.d.ts +151 -19
  272. package/dist/tx-retry.js +286 -32
  273. package/dist/tx-retry.js.map +1 -1
  274. package/dist/types/payloads/prediction-apy-v0.d.ts +5 -5
  275. package/dist/types/payloads/prediction-v0.d.ts +5 -5
  276. package/dist/types/task-document.d.ts +392 -0
  277. package/dist/types/task-document.js +10 -0
  278. package/dist/types/task-document.js.map +1 -1
  279. package/dist/types/task.d.ts +28 -0
  280. package/dist/util/extract-tx-hash.d.ts +14 -0
  281. package/dist/util/extract-tx-hash.js +19 -0
  282. package/dist/util/extract-tx-hash.js.map +1 -0
  283. package/dist/vendor/@jinn-network/sdk/dist/contracts.js +1 -1
  284. package/dist/vendor/@jinn-network/sdk/dist/solvernets/manifest-schema.d.ts +3 -0
  285. package/dist/vendor/@jinn-network/sdk/dist/solvernets/manifest-schema.js +1 -0
  286. package/package.json +29 -12
  287. package/dist/dashboard/assets/index-DOlzFN8a.css +0 -32
  288. package/dist/dashboard/assets/index-NkZ7CTAT.js +0 -140
@@ -21,6 +21,14 @@ function isTaskNativeService(service) {
21
21
  isNonZeroAddress(service.safe_address) &&
22
22
  isNonZeroAddress(service.mech_address);
23
23
  }
24
+ function hasConfiguredEvaluatorRole(config) {
25
+ const legacySolverNets = Object.values(config.solverNets ?? {});
26
+ const legacyHasEvaluator = legacySolverNets.some((entry) => (entry.enabled !== false && entry.roles.includes('evaluating')));
27
+ if (legacyHasEvaluator)
28
+ return true;
29
+ const joinedSolverNets = Object.values(config.joinedSolverNets ?? {});
30
+ return joinedSolverNets.some((entry) => entry.roles.includes('evaluator'));
31
+ }
24
32
  function loadFleetState(config) {
25
33
  const path = taskNativeStatePath(config);
26
34
  if (!existsSync(path)) {
@@ -48,6 +56,8 @@ export function resolveTaskNativeReadiness(config) {
48
56
  ok: false,
49
57
  solverReady: false,
50
58
  evaluatorReady: false,
59
+ evaluatorRoleReady: false,
60
+ distinctEvaluatorServiceReady: false,
51
61
  detail: source
52
62
  ? `Task-native deployment artifact is not bundled at ${source}`
53
63
  : `Task-native deployment artifact is not bundled for ${chain}`,
@@ -70,6 +80,8 @@ export function resolveTaskNativeReadiness(config) {
70
80
  ok: false,
71
81
  solverReady: false,
72
82
  evaluatorReady: false,
83
+ evaluatorRoleReady: false,
84
+ distinctEvaluatorServiceReady: false,
73
85
  detail: `Task-native deployment config could not be resolved: ${err instanceof Error ? err.message : String(err)}`,
74
86
  remedy: 'Verify bundled deployment artifacts and deployment path overrides.',
75
87
  source,
@@ -85,6 +97,8 @@ export function resolveTaskNativeReadiness(config) {
85
97
  ok: false,
86
98
  solverReady: false,
87
99
  evaluatorReady: false,
100
+ evaluatorRoleReady: false,
101
+ distinctEvaluatorServiceReady: false,
88
102
  detail: `Task-native deployment artifact could not be parsed at ${source}: ${err instanceof Error ? err.message : String(err)}`,
89
103
  remedy: 'Refresh the bundled TaskCoordinator/JinnRouterV3 deployment artifact.',
90
104
  source,
@@ -119,6 +133,7 @@ export function resolveTaskNativeReadiness(config) {
119
133
  const evaluator = active
120
134
  ? taskNativeServices.find((svc) => svc.safe_address.toLowerCase() !== active.safe_address.toLowerCase())
121
135
  : undefined;
136
+ const configuredEvaluatorRole = hasConfiguredEvaluatorRole(config);
122
137
  const stateChainReady = state?.chain === expectedFleetChain;
123
138
  const operatorState = {
124
139
  statePath: stateLoad.path,
@@ -129,7 +144,7 @@ export function resolveTaskNativeReadiness(config) {
129
144
  ...(active?.mech_address ? { activeMech: active.mech_address } : {}),
130
145
  ...(evaluator?.safe_address ? { evaluatorSafe: evaluator.safe_address } : {}),
131
146
  ...(evaluator?.mech_address ? { evaluatorMech: evaluator.mech_address } : {}),
132
- selfEvaluationAllowed: false,
147
+ distinctEvaluatorServiceReady: Boolean(evaluator),
133
148
  };
134
149
  const stateIssues = [
135
150
  stateLoad.error ?? null,
@@ -144,17 +159,24 @@ export function resolveTaskNativeReadiness(config) {
144
159
  claimVariantReady ? null : `router claim variant is ${chainCfg.routerClaimDeliveryVersion}, expected v3`,
145
160
  ].filter((part) => part !== null);
146
161
  const solverReady = deploymentReady && stateChainReady && Boolean(active);
147
- const evaluatorReady = solverReady && Boolean(evaluator);
148
- const evaluatorDetail = evaluatorReady
149
- ? `evaluator-ready=true evaluatorSafe=${evaluator.safe_address} evaluatorMech=${evaluator.mech_address}`
150
- : 'evaluator-ready=false (self-evaluation is disabled and no distinct evaluator Safe/Mech is configured)';
162
+ const evaluatorRoleReady = solverReady && configuredEvaluatorRole;
163
+ const distinctEvaluatorServiceReady = solverReady && Boolean(evaluator);
164
+ const evaluatorReady = evaluatorRoleReady;
165
+ const evaluatorRoleDetail = evaluatorRoleReady
166
+ ? 'evaluator-role=ready'
167
+ : 'evaluator-role=not-ready (operator has not joined any evaluator role)';
168
+ const evaluatorTopologyDetail = distinctEvaluatorServiceReady
169
+ ? `evaluator-topology=distinct evaluatorSafe=${evaluator.safe_address} evaluatorMech=${evaluator.mech_address}`
170
+ : 'evaluator-topology=same-service (no distinct evaluator Safe/Mech configured)';
151
171
  const detail = solverReady
152
- ? `Task-native solver-ready=true ${evaluatorDetail} on ${chain}: TaskCoordinator=${taskCoordinator}, JinnRouterV3=${jinnRouterV3}, TaskActivityCheckerV3=${taskActivityCheckerV3}; activeSafe=${active.safe_address} activeMech=${active.mech_address}`
172
+ ? `Task-native solver-ready=true evaluator-ready=${evaluatorReady ? 'true' : 'false'} ${evaluatorRoleDetail}; ${evaluatorTopologyDetail} on ${chain}: TaskCoordinator=${taskCoordinator}, JinnRouterV3=${jinnRouterV3}, TaskActivityCheckerV3=${taskActivityCheckerV3}; activeSafe=${active.safe_address} activeMech=${active.mech_address}`
153
173
  : `Task-native not ready on ${chain}: ${[...deploymentIssues, ...stateIssues].join('; ')}`;
154
174
  return {
155
175
  ok: solverReady,
156
176
  solverReady,
157
177
  evaluatorReady,
178
+ evaluatorRoleReady,
179
+ distinctEvaluatorServiceReady,
158
180
  detail,
159
181
  ...(solverReady
160
182
  ? {}
@@ -1 +1 @@
1
- {"version":3,"file":"task-native-readiness.js","sourceRoot":"","sources":["../../src/cli/task-native-readiness.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"task-native-readiness.js","sourceRoot":"","sources":["../../src/cli/task-native-readiness.ts"],"names":[],"mappings":"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"}
package/dist/config.d.ts CHANGED
@@ -96,6 +96,20 @@ export declare const JinnConfigSchema: z.ZodEffects<z.ZodObject<{
96
96
  * Set to 0 to disable. Env: JINN_BALANCE_TOPUP_INTERVAL_MS
97
97
  */
98
98
  balanceTopupIntervalMs: z.ZodDefault<z.ZodNumber>;
99
+ /**
100
+ * Interval between eviction-state polls for the staking proxy (ms).
101
+ * Default 60000 (1 min). Set to 0 to disable. Env: JINN_EVICTION_CHECK_INTERVAL_MS
102
+ */
103
+ evictionCheckIntervalMs: z.ZodDefault<z.ZodNumber>;
104
+ /**
105
+ * Interval between proactive `checkpoint()` tx calls to each staked
106
+ * proxy (ms). Keeps `tsCheckpoint` advancing so the activity-rate window
107
+ * stays narrow — without it operators silently fail liveness on realistic
108
+ * cadence (issue #505). Default 300_000 (5 min), matching the standard
109
+ * `livenessPeriod` on stOLAS staking proxies. Set to 0 to disable.
110
+ * Env: JINN_CHECKPOINT_INTERVAL_MS.
111
+ */
112
+ checkpointIntervalMs: z.ZodDefault<z.ZodNumber>;
99
113
  /** HTTP API port */
100
114
  apiPort: z.ZodDefault<z.ZodNumber>;
101
115
  /**
@@ -123,6 +137,13 @@ export declare const JinnConfigSchema: z.ZodEffects<z.ZodObject<{
123
137
  * Default 30 000 ms. Env: JINN_HERMES_DOCTOR_TIMEOUT_MS.
124
138
  */
125
139
  hermesDoctorTimeoutMs: z.ZodDefault<z.ZodNumber>;
140
+ /** Path to the `codex` executable. Defaults to `codex` when unset. */
141
+ codexPath: z.ZodOptional<z.ZodString>;
142
+ /**
143
+ * Timeout in ms for `codex --version` health-check runs.
144
+ * Default 30 000 ms. Env: JINN_CODEX_DOCTOR_TIMEOUT_MS.
145
+ */
146
+ codexDoctorTimeoutMs: z.ZodDefault<z.ZodNumber>;
126
147
  /**
127
148
  * How the operator runs the daemon. Set once by app-guided setup or the
128
149
  * legacy `jinn auth` compatibility command, then read by every command that
@@ -208,6 +229,7 @@ export declare const JinnConfigSchema: z.ZodEffects<z.ZodObject<{
208
229
  submissionDeadlineTs: z.ZodOptional<z.ZodNumber>;
209
230
  claimLeaseTtlSeconds: z.ZodDefault<z.ZodNumber>;
210
231
  policyHook: z.ZodOptional<z.ZodString>;
232
+ requiredVerdicts: z.ZodOptional<z.ZodNumber>;
211
233
  }, "passthrough", z.ZodTypeAny, z.objectOutputType<{
212
234
  mode: z.ZodDefault<z.ZodEnum<["exclusive", "parallel"]>>;
213
235
  maxClaims: z.ZodNumber;
@@ -217,6 +239,7 @@ export declare const JinnConfigSchema: z.ZodEffects<z.ZodObject<{
217
239
  submissionDeadlineTs: z.ZodOptional<z.ZodNumber>;
218
240
  claimLeaseTtlSeconds: z.ZodDefault<z.ZodNumber>;
219
241
  policyHook: z.ZodOptional<z.ZodString>;
242
+ requiredVerdicts: z.ZodOptional<z.ZodNumber>;
220
243
  }, z.ZodTypeAny, "passthrough">, z.objectInputType<{
221
244
  mode: z.ZodDefault<z.ZodEnum<["exclusive", "parallel"]>>;
222
245
  maxClaims: z.ZodNumber;
@@ -226,6 +249,7 @@ export declare const JinnConfigSchema: z.ZodEffects<z.ZodObject<{
226
249
  submissionDeadlineTs: z.ZodOptional<z.ZodNumber>;
227
250
  claimLeaseTtlSeconds: z.ZodDefault<z.ZodNumber>;
228
251
  policyHook: z.ZodOptional<z.ZodString>;
252
+ requiredVerdicts: z.ZodOptional<z.ZodNumber>;
229
253
  }, z.ZodTypeAny, "passthrough">>>;
230
254
  signedTask: z.ZodOptional<z.ZodEffects<z.ZodEffects<z.ZodObject<{
231
255
  signature: z.ZodObject<{
@@ -273,6 +297,7 @@ export declare const JinnConfigSchema: z.ZodEffects<z.ZodObject<{
273
297
  submissionDeadlineTs: z.ZodOptional<z.ZodNumber>;
274
298
  claimLeaseTtlSeconds: z.ZodDefault<z.ZodNumber>;
275
299
  policyHook: z.ZodOptional<z.ZodString>;
300
+ requiredVerdicts: z.ZodOptional<z.ZodNumber>;
276
301
  }, "passthrough", z.ZodTypeAny, z.objectOutputType<{
277
302
  mode: z.ZodDefault<z.ZodEnum<["exclusive", "parallel"]>>;
278
303
  maxClaims: z.ZodNumber;
@@ -282,6 +307,7 @@ export declare const JinnConfigSchema: z.ZodEffects<z.ZodObject<{
282
307
  submissionDeadlineTs: z.ZodOptional<z.ZodNumber>;
283
308
  claimLeaseTtlSeconds: z.ZodDefault<z.ZodNumber>;
284
309
  policyHook: z.ZodOptional<z.ZodString>;
310
+ requiredVerdicts: z.ZodOptional<z.ZodNumber>;
285
311
  }, z.ZodTypeAny, "passthrough">, z.objectInputType<{
286
312
  mode: z.ZodDefault<z.ZodEnum<["exclusive", "parallel"]>>;
287
313
  maxClaims: z.ZodNumber;
@@ -291,6 +317,7 @@ export declare const JinnConfigSchema: z.ZodEffects<z.ZodObject<{
291
317
  submissionDeadlineTs: z.ZodOptional<z.ZodNumber>;
292
318
  claimLeaseTtlSeconds: z.ZodDefault<z.ZodNumber>;
293
319
  policyHook: z.ZodOptional<z.ZodString>;
320
+ requiredVerdicts: z.ZodOptional<z.ZodNumber>;
294
321
  }, z.ZodTypeAny, "passthrough">>;
295
322
  creator: z.ZodObject<{
296
323
  safeAddress: z.ZodString;
@@ -349,6 +376,7 @@ export declare const JinnConfigSchema: z.ZodEffects<z.ZodObject<{
349
376
  submissionDeadlineTs: z.ZodOptional<z.ZodNumber>;
350
377
  claimLeaseTtlSeconds: z.ZodDefault<z.ZodNumber>;
351
378
  policyHook: z.ZodOptional<z.ZodString>;
379
+ requiredVerdicts: z.ZodOptional<z.ZodNumber>;
352
380
  }, "passthrough", z.ZodTypeAny, z.objectOutputType<{
353
381
  mode: z.ZodDefault<z.ZodEnum<["exclusive", "parallel"]>>;
354
382
  maxClaims: z.ZodNumber;
@@ -358,6 +386,7 @@ export declare const JinnConfigSchema: z.ZodEffects<z.ZodObject<{
358
386
  submissionDeadlineTs: z.ZodOptional<z.ZodNumber>;
359
387
  claimLeaseTtlSeconds: z.ZodDefault<z.ZodNumber>;
360
388
  policyHook: z.ZodOptional<z.ZodString>;
389
+ requiredVerdicts: z.ZodOptional<z.ZodNumber>;
361
390
  }, z.ZodTypeAny, "passthrough">, z.objectInputType<{
362
391
  mode: z.ZodDefault<z.ZodEnum<["exclusive", "parallel"]>>;
363
392
  maxClaims: z.ZodNumber;
@@ -367,6 +396,7 @@ export declare const JinnConfigSchema: z.ZodEffects<z.ZodObject<{
367
396
  submissionDeadlineTs: z.ZodOptional<z.ZodNumber>;
368
397
  claimLeaseTtlSeconds: z.ZodDefault<z.ZodNumber>;
369
398
  policyHook: z.ZodOptional<z.ZodString>;
399
+ requiredVerdicts: z.ZodOptional<z.ZodNumber>;
370
400
  }, z.ZodTypeAny, "passthrough">>;
371
401
  creator: z.ZodObject<{
372
402
  safeAddress: z.ZodString;
@@ -425,6 +455,7 @@ export declare const JinnConfigSchema: z.ZodEffects<z.ZodObject<{
425
455
  submissionDeadlineTs: z.ZodOptional<z.ZodNumber>;
426
456
  claimLeaseTtlSeconds: z.ZodDefault<z.ZodNumber>;
427
457
  policyHook: z.ZodOptional<z.ZodString>;
458
+ requiredVerdicts: z.ZodOptional<z.ZodNumber>;
428
459
  }, "passthrough", z.ZodTypeAny, z.objectOutputType<{
429
460
  mode: z.ZodDefault<z.ZodEnum<["exclusive", "parallel"]>>;
430
461
  maxClaims: z.ZodNumber;
@@ -434,6 +465,7 @@ export declare const JinnConfigSchema: z.ZodEffects<z.ZodObject<{
434
465
  submissionDeadlineTs: z.ZodOptional<z.ZodNumber>;
435
466
  claimLeaseTtlSeconds: z.ZodDefault<z.ZodNumber>;
436
467
  policyHook: z.ZodOptional<z.ZodString>;
468
+ requiredVerdicts: z.ZodOptional<z.ZodNumber>;
437
469
  }, z.ZodTypeAny, "passthrough">, z.objectInputType<{
438
470
  mode: z.ZodDefault<z.ZodEnum<["exclusive", "parallel"]>>;
439
471
  maxClaims: z.ZodNumber;
@@ -443,6 +475,7 @@ export declare const JinnConfigSchema: z.ZodEffects<z.ZodObject<{
443
475
  submissionDeadlineTs: z.ZodOptional<z.ZodNumber>;
444
476
  claimLeaseTtlSeconds: z.ZodDefault<z.ZodNumber>;
445
477
  policyHook: z.ZodOptional<z.ZodString>;
478
+ requiredVerdicts: z.ZodOptional<z.ZodNumber>;
446
479
  }, z.ZodTypeAny, "passthrough">>;
447
480
  creator: z.ZodObject<{
448
481
  safeAddress: z.ZodString;
@@ -501,6 +534,7 @@ export declare const JinnConfigSchema: z.ZodEffects<z.ZodObject<{
501
534
  submissionDeadlineTs: z.ZodOptional<z.ZodNumber>;
502
535
  claimLeaseTtlSeconds: z.ZodDefault<z.ZodNumber>;
503
536
  policyHook: z.ZodOptional<z.ZodString>;
537
+ requiredVerdicts: z.ZodOptional<z.ZodNumber>;
504
538
  }, "passthrough", z.ZodTypeAny, z.objectOutputType<{
505
539
  mode: z.ZodDefault<z.ZodEnum<["exclusive", "parallel"]>>;
506
540
  maxClaims: z.ZodNumber;
@@ -510,6 +544,7 @@ export declare const JinnConfigSchema: z.ZodEffects<z.ZodObject<{
510
544
  submissionDeadlineTs: z.ZodOptional<z.ZodNumber>;
511
545
  claimLeaseTtlSeconds: z.ZodDefault<z.ZodNumber>;
512
546
  policyHook: z.ZodOptional<z.ZodString>;
547
+ requiredVerdicts: z.ZodOptional<z.ZodNumber>;
513
548
  }, z.ZodTypeAny, "passthrough">, z.objectInputType<{
514
549
  mode: z.ZodDefault<z.ZodEnum<["exclusive", "parallel"]>>;
515
550
  maxClaims: z.ZodNumber;
@@ -519,6 +554,7 @@ export declare const JinnConfigSchema: z.ZodEffects<z.ZodObject<{
519
554
  submissionDeadlineTs: z.ZodOptional<z.ZodNumber>;
520
555
  claimLeaseTtlSeconds: z.ZodDefault<z.ZodNumber>;
521
556
  policyHook: z.ZodOptional<z.ZodString>;
557
+ requiredVerdicts: z.ZodOptional<z.ZodNumber>;
522
558
  }, z.ZodTypeAny, "passthrough">>;
523
559
  creator: z.ZodObject<{
524
560
  safeAddress: z.ZodString;
@@ -577,6 +613,7 @@ export declare const JinnConfigSchema: z.ZodEffects<z.ZodObject<{
577
613
  submissionDeadlineTs: z.ZodOptional<z.ZodNumber>;
578
614
  claimLeaseTtlSeconds: z.ZodDefault<z.ZodNumber>;
579
615
  policyHook: z.ZodOptional<z.ZodString>;
616
+ requiredVerdicts: z.ZodOptional<z.ZodNumber>;
580
617
  }, "passthrough", z.ZodTypeAny, z.objectOutputType<{
581
618
  mode: z.ZodDefault<z.ZodEnum<["exclusive", "parallel"]>>;
582
619
  maxClaims: z.ZodNumber;
@@ -586,6 +623,7 @@ export declare const JinnConfigSchema: z.ZodEffects<z.ZodObject<{
586
623
  submissionDeadlineTs: z.ZodOptional<z.ZodNumber>;
587
624
  claimLeaseTtlSeconds: z.ZodDefault<z.ZodNumber>;
588
625
  policyHook: z.ZodOptional<z.ZodString>;
626
+ requiredVerdicts: z.ZodOptional<z.ZodNumber>;
589
627
  }, z.ZodTypeAny, "passthrough">, z.objectInputType<{
590
628
  mode: z.ZodDefault<z.ZodEnum<["exclusive", "parallel"]>>;
591
629
  maxClaims: z.ZodNumber;
@@ -595,6 +633,7 @@ export declare const JinnConfigSchema: z.ZodEffects<z.ZodObject<{
595
633
  submissionDeadlineTs: z.ZodOptional<z.ZodNumber>;
596
634
  claimLeaseTtlSeconds: z.ZodDefault<z.ZodNumber>;
597
635
  policyHook: z.ZodOptional<z.ZodString>;
636
+ requiredVerdicts: z.ZodOptional<z.ZodNumber>;
598
637
  }, z.ZodTypeAny, "passthrough">>;
599
638
  creator: z.ZodObject<{
600
639
  safeAddress: z.ZodString;
@@ -637,6 +676,7 @@ export declare const JinnConfigSchema: z.ZodEffects<z.ZodObject<{
637
676
  claimWindowEndTs?: number | undefined;
638
677
  submissionDeadlineTs?: number | undefined;
639
678
  policyHook?: string | undefined;
679
+ requiredVerdicts?: number | undefined;
640
680
  } & {
641
681
  [k: string]: unknown;
642
682
  };
@@ -691,6 +731,7 @@ export declare const JinnConfigSchema: z.ZodEffects<z.ZodObject<{
691
731
  submissionDeadlineTs: z.ZodOptional<z.ZodNumber>;
692
732
  claimLeaseTtlSeconds: z.ZodDefault<z.ZodNumber>;
693
733
  policyHook: z.ZodOptional<z.ZodString>;
734
+ requiredVerdicts: z.ZodOptional<z.ZodNumber>;
694
735
  }, "passthrough", z.ZodTypeAny, z.objectOutputType<{
695
736
  mode: z.ZodDefault<z.ZodEnum<["exclusive", "parallel"]>>;
696
737
  maxClaims: z.ZodNumber;
@@ -700,6 +741,7 @@ export declare const JinnConfigSchema: z.ZodEffects<z.ZodObject<{
700
741
  submissionDeadlineTs: z.ZodOptional<z.ZodNumber>;
701
742
  claimLeaseTtlSeconds: z.ZodDefault<z.ZodNumber>;
702
743
  policyHook: z.ZodOptional<z.ZodString>;
744
+ requiredVerdicts: z.ZodOptional<z.ZodNumber>;
703
745
  }, z.ZodTypeAny, "passthrough">, z.objectInputType<{
704
746
  mode: z.ZodDefault<z.ZodEnum<["exclusive", "parallel"]>>;
705
747
  maxClaims: z.ZodNumber;
@@ -709,6 +751,7 @@ export declare const JinnConfigSchema: z.ZodEffects<z.ZodObject<{
709
751
  submissionDeadlineTs: z.ZodOptional<z.ZodNumber>;
710
752
  claimLeaseTtlSeconds: z.ZodDefault<z.ZodNumber>;
711
753
  policyHook: z.ZodOptional<z.ZodString>;
754
+ requiredVerdicts: z.ZodOptional<z.ZodNumber>;
712
755
  }, z.ZodTypeAny, "passthrough">>;
713
756
  creator: z.ZodObject<{
714
757
  safeAddress: z.ZodString;
@@ -745,6 +788,7 @@ export declare const JinnConfigSchema: z.ZodEffects<z.ZodObject<{
745
788
  submissionDeadlineTs: z.ZodOptional<z.ZodNumber>;
746
789
  claimLeaseTtlSeconds: z.ZodDefault<z.ZodNumber>;
747
790
  policyHook: z.ZodOptional<z.ZodString>;
791
+ requiredVerdicts: z.ZodOptional<z.ZodNumber>;
748
792
  }, z.ZodTypeAny, "passthrough"> | undefined;
749
793
  context?: Record<string, unknown> | undefined;
750
794
  attemptId?: string | undefined;
@@ -780,6 +824,7 @@ export declare const JinnConfigSchema: z.ZodEffects<z.ZodObject<{
780
824
  claimWindowEndTs?: number | undefined;
781
825
  submissionDeadlineTs?: number | undefined;
782
826
  policyHook?: string | undefined;
827
+ requiredVerdicts?: number | undefined;
783
828
  } & {
784
829
  [k: string]: unknown;
785
830
  };
@@ -812,6 +857,7 @@ export declare const JinnConfigSchema: z.ZodEffects<z.ZodObject<{
812
857
  submissionDeadlineTs: z.ZodOptional<z.ZodNumber>;
813
858
  claimLeaseTtlSeconds: z.ZodDefault<z.ZodNumber>;
814
859
  policyHook: z.ZodOptional<z.ZodString>;
860
+ requiredVerdicts: z.ZodOptional<z.ZodNumber>;
815
861
  }, z.ZodTypeAny, "passthrough"> | undefined;
816
862
  context?: Record<string, unknown> | undefined;
817
863
  attemptId?: string | undefined;
@@ -863,6 +909,7 @@ export declare const JinnConfigSchema: z.ZodEffects<z.ZodObject<{
863
909
  submissionDeadlineTs: z.ZodOptional<z.ZodNumber>;
864
910
  claimLeaseTtlSeconds: z.ZodDefault<z.ZodNumber>;
865
911
  policyHook: z.ZodOptional<z.ZodString>;
912
+ requiredVerdicts: z.ZodOptional<z.ZodNumber>;
866
913
  }, "passthrough", z.ZodTypeAny, z.objectOutputType<{
867
914
  mode: z.ZodDefault<z.ZodEnum<["exclusive", "parallel"]>>;
868
915
  maxClaims: z.ZodNumber;
@@ -872,6 +919,7 @@ export declare const JinnConfigSchema: z.ZodEffects<z.ZodObject<{
872
919
  submissionDeadlineTs: z.ZodOptional<z.ZodNumber>;
873
920
  claimLeaseTtlSeconds: z.ZodDefault<z.ZodNumber>;
874
921
  policyHook: z.ZodOptional<z.ZodString>;
922
+ requiredVerdicts: z.ZodOptional<z.ZodNumber>;
875
923
  }, z.ZodTypeAny, "passthrough">, z.objectInputType<{
876
924
  mode: z.ZodDefault<z.ZodEnum<["exclusive", "parallel"]>>;
877
925
  maxClaims: z.ZodNumber;
@@ -881,6 +929,7 @@ export declare const JinnConfigSchema: z.ZodEffects<z.ZodObject<{
881
929
  submissionDeadlineTs: z.ZodOptional<z.ZodNumber>;
882
930
  claimLeaseTtlSeconds: z.ZodDefault<z.ZodNumber>;
883
931
  policyHook: z.ZodOptional<z.ZodString>;
932
+ requiredVerdicts: z.ZodOptional<z.ZodNumber>;
884
933
  }, z.ZodTypeAny, "passthrough">>;
885
934
  creator: z.ZodObject<{
886
935
  safeAddress: z.ZodString;
@@ -922,7 +971,8 @@ export declare const JinnConfigSchema: z.ZodEffects<z.ZodObject<{
922
971
  jinnMviL2DeploymentPath: z.ZodOptional<z.ZodString>;
923
972
  /**
924
973
  * RPC endpoint for the L1 governance chain (Ethereum / Sepolia) where the
925
- * JinnDistributor lives. Required when jinnDistributorAddress is set.
974
+ * JinnDistributor lives. Testnet defaults to a public Sepolia RPC; mainnet
975
+ * requires an operator override when L1 submit mode is configured.
926
976
  * Env: JINN_ETHEREUM_RPC_URL.
927
977
  */
928
978
  ethereumRpcUrl: z.ZodOptional<z.ZodString>;
@@ -939,10 +989,10 @@ export declare const JinnConfigSchema: z.ZodEffects<z.ZodObject<{
939
989
  */
940
990
  jinnL1Network: z.ZodDefault<z.ZodEnum<["sepolia", "ethereum"]>>;
941
991
  /**
942
- * JinnDistributor address on the L1 governance chain. Setting this enables
943
- * the cross-chain claim loop. When set, ethereumRpcUrl MUST also be set.
944
- * Resolved from jinnMviL1DeploymentPath when omitted; otherwise a manual
945
- * override. Env: JINN_DISTRIBUTOR_ADDRESS.
992
+ * JinnDistributor address on the L1 governance chain. Required for
993
+ * jinnClaimSubmissionMode='submit'. When set for submit mode, ethereumRpcUrl
994
+ * MUST also be set. Resolved from jinnMviL1DeploymentPath when omitted;
995
+ * otherwise a manual override. Env: JINN_DISTRIBUTOR_ADDRESS.
946
996
  */
947
997
  jinnDistributorAddress: z.ZodOptional<z.ZodString>;
948
998
  /**
@@ -967,6 +1017,20 @@ export declare const JinnConfigSchema: z.ZodEffects<z.ZodObject<{
967
1017
  * Env: JINN_MESSENGER_MODE.
968
1018
  */
969
1019
  jinnMessengerMode: z.ZodDefault<z.ZodEnum<["canonical", "mock"]>>;
1020
+ /**
1021
+ * Claim submission mode. `emit-only` only submits TaskClaimEmitter.emitClaim
1022
+ * on L2 and records the resulting ticket. `submit` continues into the L1
1023
+ * messenger/distributor path.
1024
+ * Env: JINN_CLAIM_SUBMISSION_MODE.
1025
+ */
1026
+ jinnClaimSubmissionMode: z.ZodDefault<z.ZodEnum<["emit-only", "submit"]>>;
1027
+ /**
1028
+ * Explicit operator gate for the cross-chain JINN claim loop. The schema
1029
+ * default stays off for mainnet/unknown networks; loadConfig defaults this
1030
+ * on for testnet now that the emitter and standing relayer are live.
1031
+ * Env: JINN_CLAIM_LOOP_ENABLED=1|true|yes.
1032
+ */
1033
+ jinnClaimLoopEnabled: z.ZodDefault<z.ZodBoolean>;
970
1034
  /**
971
1035
  * How often the daemon ticks the cross-chain JINN claim loop (ms). Default
972
1036
  * 3 600 000 (1 hour) — well below mainnet challenge windows while
@@ -1384,10 +1448,13 @@ export declare const JinnConfigSchema: z.ZodEffects<z.ZodObject<{
1384
1448
  pollIntervalMs: number;
1385
1449
  rewardClaimIntervalMs: number;
1386
1450
  balanceTopupIntervalMs: number;
1451
+ evictionCheckIntervalMs: number;
1452
+ checkpointIntervalMs: number;
1387
1453
  apiPort: number;
1388
1454
  claudePath: string;
1389
1455
  claudeModel: string;
1390
1456
  hermesDoctorTimeoutMs: number;
1457
+ codexDoctorTimeoutMs: number;
1391
1458
  peers: string[];
1392
1459
  tasks: {
1393
1460
  id?: string | undefined;
@@ -1412,6 +1479,7 @@ export declare const JinnConfigSchema: z.ZodEffects<z.ZodObject<{
1412
1479
  submissionDeadlineTs: z.ZodOptional<z.ZodNumber>;
1413
1480
  claimLeaseTtlSeconds: z.ZodDefault<z.ZodNumber>;
1414
1481
  policyHook: z.ZodOptional<z.ZodString>;
1482
+ requiredVerdicts: z.ZodOptional<z.ZodNumber>;
1415
1483
  }, z.ZodTypeAny, "passthrough"> | undefined;
1416
1484
  context?: Record<string, unknown> | undefined;
1417
1485
  attemptId?: string | undefined;
@@ -1447,6 +1515,7 @@ export declare const JinnConfigSchema: z.ZodEffects<z.ZodObject<{
1447
1515
  claimWindowEndTs?: number | undefined;
1448
1516
  submissionDeadlineTs?: number | undefined;
1449
1517
  policyHook?: string | undefined;
1518
+ requiredVerdicts?: number | undefined;
1450
1519
  } & {
1451
1520
  [k: string]: unknown;
1452
1521
  };
@@ -1461,6 +1530,8 @@ export declare const JinnConfigSchema: z.ZodEffects<z.ZodObject<{
1461
1530
  ipfsGatewayUrl: string;
1462
1531
  jinnL1Network: "sepolia" | "ethereum";
1463
1532
  jinnMessengerMode: "canonical" | "mock";
1533
+ jinnClaimSubmissionMode: "emit-only" | "submit";
1534
+ jinnClaimLoopEnabled: boolean;
1464
1535
  jinnClaimLoopIntervalMs: number;
1465
1536
  stakingMode: "standard" | "self-bond";
1466
1537
  targetServices: number;
@@ -1495,6 +1566,7 @@ export declare const JinnConfigSchema: z.ZodEffects<z.ZodObject<{
1495
1566
  hermesPath?: string | undefined;
1496
1567
  hermesModel?: string | undefined;
1497
1568
  hermesProvider?: string | undefined;
1569
+ codexPath?: string | undefined;
1498
1570
  runtimeMode?: "bare" | "docker-compose" | "container" | undefined;
1499
1571
  discovery?: {
1500
1572
  mode?: "http" | "embedded" | "onchain" | undefined;
@@ -1572,6 +1644,8 @@ export declare const JinnConfigSchema: z.ZodEffects<z.ZodObject<{
1572
1644
  pollIntervalMs?: number | undefined;
1573
1645
  rewardClaimIntervalMs?: number | undefined;
1574
1646
  balanceTopupIntervalMs?: number | undefined;
1647
+ evictionCheckIntervalMs?: number | undefined;
1648
+ checkpointIntervalMs?: number | undefined;
1575
1649
  apiPort?: number | undefined;
1576
1650
  apiBindHost?: string | undefined;
1577
1651
  claudePath?: string | undefined;
@@ -1580,6 +1654,8 @@ export declare const JinnConfigSchema: z.ZodEffects<z.ZodObject<{
1580
1654
  hermesModel?: string | undefined;
1581
1655
  hermesProvider?: string | undefined;
1582
1656
  hermesDoctorTimeoutMs?: number | undefined;
1657
+ codexPath?: string | undefined;
1658
+ codexDoctorTimeoutMs?: number | undefined;
1583
1659
  runtimeMode?: "bare" | "docker-compose" | "container" | undefined;
1584
1660
  peers?: string | string[] | undefined;
1585
1661
  discovery?: {
@@ -1612,6 +1688,7 @@ export declare const JinnConfigSchema: z.ZodEffects<z.ZodObject<{
1612
1688
  submissionDeadlineTs: z.ZodOptional<z.ZodNumber>;
1613
1689
  claimLeaseTtlSeconds: z.ZodDefault<z.ZodNumber>;
1614
1690
  policyHook: z.ZodOptional<z.ZodString>;
1691
+ requiredVerdicts: z.ZodOptional<z.ZodNumber>;
1615
1692
  }, z.ZodTypeAny, "passthrough"> | undefined;
1616
1693
  context?: Record<string, unknown> | undefined;
1617
1694
  attemptId?: string | undefined;
@@ -1663,6 +1740,7 @@ export declare const JinnConfigSchema: z.ZodEffects<z.ZodObject<{
1663
1740
  submissionDeadlineTs: z.ZodOptional<z.ZodNumber>;
1664
1741
  claimLeaseTtlSeconds: z.ZodDefault<z.ZodNumber>;
1665
1742
  policyHook: z.ZodOptional<z.ZodString>;
1743
+ requiredVerdicts: z.ZodOptional<z.ZodNumber>;
1666
1744
  }, "passthrough", z.ZodTypeAny, z.objectOutputType<{
1667
1745
  mode: z.ZodDefault<z.ZodEnum<["exclusive", "parallel"]>>;
1668
1746
  maxClaims: z.ZodNumber;
@@ -1672,6 +1750,7 @@ export declare const JinnConfigSchema: z.ZodEffects<z.ZodObject<{
1672
1750
  submissionDeadlineTs: z.ZodOptional<z.ZodNumber>;
1673
1751
  claimLeaseTtlSeconds: z.ZodDefault<z.ZodNumber>;
1674
1752
  policyHook: z.ZodOptional<z.ZodString>;
1753
+ requiredVerdicts: z.ZodOptional<z.ZodNumber>;
1675
1754
  }, z.ZodTypeAny, "passthrough">, z.objectInputType<{
1676
1755
  mode: z.ZodDefault<z.ZodEnum<["exclusive", "parallel"]>>;
1677
1756
  maxClaims: z.ZodNumber;
@@ -1681,6 +1760,7 @@ export declare const JinnConfigSchema: z.ZodEffects<z.ZodObject<{
1681
1760
  submissionDeadlineTs: z.ZodOptional<z.ZodNumber>;
1682
1761
  claimLeaseTtlSeconds: z.ZodDefault<z.ZodNumber>;
1683
1762
  policyHook: z.ZodOptional<z.ZodString>;
1763
+ requiredVerdicts: z.ZodOptional<z.ZodNumber>;
1684
1764
  }, z.ZodTypeAny, "passthrough">>;
1685
1765
  creator: z.ZodObject<{
1686
1766
  safeAddress: z.ZodString;
@@ -1710,6 +1790,8 @@ export declare const JinnConfigSchema: z.ZodEffects<z.ZodObject<{
1710
1790
  jinnClaimEmitterAddress?: string | undefined;
1711
1791
  jinnMessengerAddress?: string | undefined;
1712
1792
  jinnMessengerMode?: "canonical" | "mock" | undefined;
1793
+ jinnClaimSubmissionMode?: "emit-only" | "submit" | undefined;
1794
+ jinnClaimLoopEnabled?: boolean | undefined;
1713
1795
  jinnClaimLoopIntervalMs?: number | undefined;
1714
1796
  stakingMode?: "standard" | "self-bond" | undefined;
1715
1797
  targetServices?: number | undefined;
@@ -1778,10 +1860,13 @@ export declare const JinnConfigSchema: z.ZodEffects<z.ZodObject<{
1778
1860
  pollIntervalMs: number;
1779
1861
  rewardClaimIntervalMs: number;
1780
1862
  balanceTopupIntervalMs: number;
1863
+ evictionCheckIntervalMs: number;
1864
+ checkpointIntervalMs: number;
1781
1865
  apiPort: number;
1782
1866
  claudePath: string;
1783
1867
  claudeModel: string;
1784
1868
  hermesDoctorTimeoutMs: number;
1869
+ codexDoctorTimeoutMs: number;
1785
1870
  peers: string[];
1786
1871
  tasks: {
1787
1872
  id?: string | undefined;
@@ -1806,6 +1891,7 @@ export declare const JinnConfigSchema: z.ZodEffects<z.ZodObject<{
1806
1891
  submissionDeadlineTs: z.ZodOptional<z.ZodNumber>;
1807
1892
  claimLeaseTtlSeconds: z.ZodDefault<z.ZodNumber>;
1808
1893
  policyHook: z.ZodOptional<z.ZodString>;
1894
+ requiredVerdicts: z.ZodOptional<z.ZodNumber>;
1809
1895
  }, z.ZodTypeAny, "passthrough"> | undefined;
1810
1896
  context?: Record<string, unknown> | undefined;
1811
1897
  attemptId?: string | undefined;
@@ -1841,6 +1927,7 @@ export declare const JinnConfigSchema: z.ZodEffects<z.ZodObject<{
1841
1927
  claimWindowEndTs?: number | undefined;
1842
1928
  submissionDeadlineTs?: number | undefined;
1843
1929
  policyHook?: string | undefined;
1930
+ requiredVerdicts?: number | undefined;
1844
1931
  } & {
1845
1932
  [k: string]: unknown;
1846
1933
  };
@@ -1855,6 +1942,8 @@ export declare const JinnConfigSchema: z.ZodEffects<z.ZodObject<{
1855
1942
  ipfsGatewayUrl: string;
1856
1943
  jinnL1Network: "sepolia" | "ethereum";
1857
1944
  jinnMessengerMode: "canonical" | "mock";
1945
+ jinnClaimSubmissionMode: "emit-only" | "submit";
1946
+ jinnClaimLoopEnabled: boolean;
1858
1947
  jinnClaimLoopIntervalMs: number;
1859
1948
  stakingMode: "standard" | "self-bond";
1860
1949
  targetServices: number;
@@ -1889,6 +1978,7 @@ export declare const JinnConfigSchema: z.ZodEffects<z.ZodObject<{
1889
1978
  hermesPath?: string | undefined;
1890
1979
  hermesModel?: string | undefined;
1891
1980
  hermesProvider?: string | undefined;
1981
+ codexPath?: string | undefined;
1892
1982
  runtimeMode?: "bare" | "docker-compose" | "container" | undefined;
1893
1983
  discovery?: {
1894
1984
  mode?: "http" | "embedded" | "onchain" | undefined;
@@ -1966,6 +2056,8 @@ export declare const JinnConfigSchema: z.ZodEffects<z.ZodObject<{
1966
2056
  pollIntervalMs?: number | undefined;
1967
2057
  rewardClaimIntervalMs?: number | undefined;
1968
2058
  balanceTopupIntervalMs?: number | undefined;
2059
+ evictionCheckIntervalMs?: number | undefined;
2060
+ checkpointIntervalMs?: number | undefined;
1969
2061
  apiPort?: number | undefined;
1970
2062
  apiBindHost?: string | undefined;
1971
2063
  claudePath?: string | undefined;
@@ -1974,6 +2066,8 @@ export declare const JinnConfigSchema: z.ZodEffects<z.ZodObject<{
1974
2066
  hermesModel?: string | undefined;
1975
2067
  hermesProvider?: string | undefined;
1976
2068
  hermesDoctorTimeoutMs?: number | undefined;
2069
+ codexPath?: string | undefined;
2070
+ codexDoctorTimeoutMs?: number | undefined;
1977
2071
  runtimeMode?: "bare" | "docker-compose" | "container" | undefined;
1978
2072
  peers?: string | string[] | undefined;
1979
2073
  discovery?: {
@@ -2006,6 +2100,7 @@ export declare const JinnConfigSchema: z.ZodEffects<z.ZodObject<{
2006
2100
  submissionDeadlineTs: z.ZodOptional<z.ZodNumber>;
2007
2101
  claimLeaseTtlSeconds: z.ZodDefault<z.ZodNumber>;
2008
2102
  policyHook: z.ZodOptional<z.ZodString>;
2103
+ requiredVerdicts: z.ZodOptional<z.ZodNumber>;
2009
2104
  }, z.ZodTypeAny, "passthrough"> | undefined;
2010
2105
  context?: Record<string, unknown> | undefined;
2011
2106
  attemptId?: string | undefined;
@@ -2057,6 +2152,7 @@ export declare const JinnConfigSchema: z.ZodEffects<z.ZodObject<{
2057
2152
  submissionDeadlineTs: z.ZodOptional<z.ZodNumber>;
2058
2153
  claimLeaseTtlSeconds: z.ZodDefault<z.ZodNumber>;
2059
2154
  policyHook: z.ZodOptional<z.ZodString>;
2155
+ requiredVerdicts: z.ZodOptional<z.ZodNumber>;
2060
2156
  }, "passthrough", z.ZodTypeAny, z.objectOutputType<{
2061
2157
  mode: z.ZodDefault<z.ZodEnum<["exclusive", "parallel"]>>;
2062
2158
  maxClaims: z.ZodNumber;
@@ -2066,6 +2162,7 @@ export declare const JinnConfigSchema: z.ZodEffects<z.ZodObject<{
2066
2162
  submissionDeadlineTs: z.ZodOptional<z.ZodNumber>;
2067
2163
  claimLeaseTtlSeconds: z.ZodDefault<z.ZodNumber>;
2068
2164
  policyHook: z.ZodOptional<z.ZodString>;
2165
+ requiredVerdicts: z.ZodOptional<z.ZodNumber>;
2069
2166
  }, z.ZodTypeAny, "passthrough">, z.objectInputType<{
2070
2167
  mode: z.ZodDefault<z.ZodEnum<["exclusive", "parallel"]>>;
2071
2168
  maxClaims: z.ZodNumber;
@@ -2075,6 +2172,7 @@ export declare const JinnConfigSchema: z.ZodEffects<z.ZodObject<{
2075
2172
  submissionDeadlineTs: z.ZodOptional<z.ZodNumber>;
2076
2173
  claimLeaseTtlSeconds: z.ZodDefault<z.ZodNumber>;
2077
2174
  policyHook: z.ZodOptional<z.ZodString>;
2175
+ requiredVerdicts: z.ZodOptional<z.ZodNumber>;
2078
2176
  }, z.ZodTypeAny, "passthrough">>;
2079
2177
  creator: z.ZodObject<{
2080
2178
  safeAddress: z.ZodString;
@@ -2104,6 +2202,8 @@ export declare const JinnConfigSchema: z.ZodEffects<z.ZodObject<{
2104
2202
  jinnClaimEmitterAddress?: string | undefined;
2105
2203
  jinnMessengerAddress?: string | undefined;
2106
2204
  jinnMessengerMode?: "canonical" | "mock" | undefined;
2205
+ jinnClaimSubmissionMode?: "emit-only" | "submit" | undefined;
2206
+ jinnClaimLoopEnabled?: boolean | undefined;
2107
2207
  jinnClaimLoopIntervalMs?: number | undefined;
2108
2208
  stakingMode?: "standard" | "self-bond" | undefined;
2109
2209
  targetServices?: number | undefined;
@@ -2181,6 +2281,7 @@ export declare const DEFAULT_CONFIG_PATH: string;
2181
2281
  * historical sync — see ponder.config.ts).
2182
2282
  */
2183
2283
  export declare const DEFAULT_TESTNET_DISCOVERY_URL = "https://jinn-indexer-production.up.railway.app";
2284
+ export declare const DEFAULT_TESTNET_ETHEREUM_RPC_URL = "https://ethereum-sepolia-rpc.publicnode.com";
2184
2285
  export type ConfigLoadErrorCode = 'config_file_not_found' | 'config_json_invalid' | 'tasks_file_not_found' | 'tasks_json_invalid' | 'config_invalid';
2185
2286
  export declare class ConfigLoadError extends Error {
2186
2287
  readonly code: ConfigLoadErrorCode;