@jinn-network/client 0.1.6 → 0.1.7-canary.1f64f0c4

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 (295) 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/activity-events-endpoint.d.ts +14 -0
  21. package/dist/api/activity-events-endpoint.js +59 -0
  22. package/dist/api/activity-events-endpoint.js.map +1 -0
  23. package/dist/api/admin-endpoint.d.ts +15 -3
  24. package/dist/api/admin-endpoint.js +24 -2
  25. package/dist/api/admin-endpoint.js.map +1 -1
  26. package/dist/api/bootstrap-endpoint.js +49 -0
  27. package/dist/api/bootstrap-endpoint.js.map +1 -1
  28. package/dist/api/codex-doctor-endpoint.d.ts +73 -0
  29. package/dist/api/codex-doctor-endpoint.js +177 -0
  30. package/dist/api/codex-doctor-endpoint.js.map +1 -0
  31. package/dist/api/discovery-endpoint.d.ts +1 -0
  32. package/dist/api/discovery-endpoint.js +26 -0
  33. package/dist/api/discovery-endpoint.js.map +1 -1
  34. package/dist/api/fleet-build.d.ts +1 -0
  35. package/dist/api/fleet-build.js +2 -1
  36. package/dist/api/fleet-build.js.map +1 -1
  37. package/dist/api/gather-status.d.ts +11 -0
  38. package/dist/api/gather-status.js +467 -4
  39. package/dist/api/gather-status.js.map +1 -1
  40. package/dist/api/hermes-doctor-endpoint.d.ts +117 -0
  41. package/dist/api/hermes-doctor-endpoint.js +229 -23
  42. package/dist/api/hermes-doctor-endpoint.js.map +1 -1
  43. package/dist/api/launcher-status.d.ts +21 -16
  44. package/dist/api/launcher-status.js +2 -1
  45. package/dist/api/launcher-status.js.map +1 -1
  46. package/dist/api/portfolio-v0-build.d.ts +10 -0
  47. package/dist/api/portfolio-v0-build.js +24 -5
  48. package/dist/api/portfolio-v0-build.js.map +1 -1
  49. package/dist/api/prediction-v1-build.d.ts +10 -0
  50. package/dist/api/prediction-v1-build.js +7 -1
  51. package/dist/api/prediction-v1-build.js.map +1 -1
  52. package/dist/api/server.d.ts +31 -1
  53. package/dist/api/server.js +72 -1
  54. package/dist/api/server.js.map +1 -1
  55. package/dist/api/setup-endpoints.d.ts +16 -0
  56. package/dist/api/setup-endpoints.js +78 -4
  57. package/dist/api/setup-endpoints.js.map +1 -1
  58. package/dist/api/setup-retry-endpoint.d.ts +19 -0
  59. package/dist/api/setup-retry-endpoint.js +32 -0
  60. package/dist/api/setup-retry-endpoint.js.map +1 -0
  61. package/dist/api/solvernets-endpoints.d.ts +8 -0
  62. package/dist/api/solvernets-endpoints.js +71 -43
  63. package/dist/api/solvernets-endpoints.js.map +1 -1
  64. package/dist/api/status-build.d.ts +78 -0
  65. package/dist/api/status-build.js +74 -18
  66. package/dist/api/status-build.js.map +1 -1
  67. package/dist/api/task-run-routing.d.ts +7 -0
  68. package/dist/api/task-run-routing.js +12 -0
  69. package/dist/api/task-run-routing.js.map +1 -0
  70. package/dist/api/task-runs-build.d.ts +21 -0
  71. package/dist/api/task-runs-build.js +14 -1
  72. package/dist/api/task-runs-build.js.map +1 -1
  73. package/dist/build-info.json +4 -4
  74. package/dist/build-meta.json +1 -1
  75. package/dist/chain-read-errors.d.ts +10 -0
  76. package/dist/chain-read-errors.js +15 -0
  77. package/dist/chain-read-errors.js.map +1 -1
  78. package/dist/cli/commands/auth.js +1 -1
  79. package/dist/cli/commands/auth.js.map +1 -1
  80. package/dist/cli/commands/create.js +3 -2
  81. package/dist/cli/commands/create.js.map +1 -1
  82. package/dist/cli/commands/doctor.d.ts +2 -0
  83. package/dist/cli/commands/doctor.js +2 -0
  84. package/dist/cli/commands/doctor.js.map +1 -1
  85. package/dist/cli/commands/rewards.js +11 -7
  86. package/dist/cli/commands/rewards.js.map +1 -1
  87. package/dist/cli/commands/solver-nets.js +24 -9
  88. package/dist/cli/commands/solver-nets.js.map +1 -1
  89. package/dist/cli/commands/status.js +1 -1
  90. package/dist/cli/commands/status.js.map +1 -1
  91. package/dist/cli/commands/tasks.js +86 -9
  92. package/dist/cli/commands/tasks.js.map +1 -1
  93. package/dist/cli/commands/update.d.ts +10 -0
  94. package/dist/cli/commands/update.js +36 -0
  95. package/dist/cli/commands/update.js.map +1 -1
  96. package/dist/cli/introspection-context.js +5 -0
  97. package/dist/cli/introspection-context.js.map +1 -1
  98. package/dist/cli/task-native-readiness.d.ts +3 -1
  99. package/dist/cli/task-native-readiness.js +28 -6
  100. package/dist/cli/task-native-readiness.js.map +1 -1
  101. package/dist/config.d.ts +118 -5
  102. package/dist/config.js +132 -18
  103. package/dist/config.js.map +1 -1
  104. package/dist/daemon/checkpoint-loop.d.ts +48 -0
  105. package/dist/daemon/checkpoint-loop.js +76 -0
  106. package/dist/daemon/checkpoint-loop.js.map +1 -0
  107. package/dist/daemon/creator.d.ts +1 -1
  108. package/dist/daemon/creator.js +7 -3
  109. package/dist/daemon/creator.js.map +1 -1
  110. package/dist/daemon/daemon.d.ts +19 -0
  111. package/dist/daemon/daemon.js +68 -1
  112. package/dist/daemon/daemon.js.map +1 -1
  113. package/dist/daemon/eviction-loop.d.ts +40 -0
  114. package/dist/daemon/eviction-loop.js +67 -0
  115. package/dist/daemon/eviction-loop.js.map +1 -0
  116. package/dist/daemon/jinn-claim-loop-wiring.d.ts +33 -0
  117. package/dist/daemon/jinn-claim-loop-wiring.js +40 -0
  118. package/dist/daemon/jinn-claim-loop-wiring.js.map +1 -0
  119. package/dist/daemon/jinn-claim-loop.d.ts +24 -17
  120. package/dist/daemon/jinn-claim-loop.js +77 -23
  121. package/dist/daemon/jinn-claim-loop.js.map +1 -1
  122. package/dist/daemon/skip-log-dedup.d.ts +69 -0
  123. package/dist/daemon/skip-log-dedup.js +106 -0
  124. package/dist/daemon/skip-log-dedup.js.map +1 -0
  125. package/dist/dashboard/assets/index-BGLVSRNO.css +32 -0
  126. package/dist/dashboard/assets/index-N_LenDRW.js +345 -0
  127. package/dist/dashboard/index.html +2 -2
  128. package/dist/discovery/factory.d.ts +17 -5
  129. package/dist/discovery/factory.js +46 -18
  130. package/dist/discovery/factory.js.map +1 -1
  131. package/dist/discovery/http.js +142 -3
  132. package/dist/discovery/http.js.map +1 -1
  133. package/dist/discovery/onchain.d.ts +5 -0
  134. package/dist/discovery/onchain.js +407 -15
  135. package/dist/discovery/onchain.js.map +1 -1
  136. package/dist/discovery/types.d.ts +45 -1
  137. package/dist/discovery/types.js +8 -10
  138. package/dist/discovery/types.js.map +1 -1
  139. package/dist/discovery/with-fallback.d.ts +7 -0
  140. package/dist/discovery/with-fallback.js +10 -0
  141. package/dist/discovery/with-fallback.js.map +1 -1
  142. package/dist/earning/bootstrap.d.ts +92 -1
  143. package/dist/earning/bootstrap.js +203 -63
  144. package/dist/earning/bootstrap.js.map +1 -1
  145. package/dist/earning/contracts.d.ts +14 -0
  146. package/dist/earning/contracts.js +17 -5
  147. package/dist/earning/contracts.js.map +1 -1
  148. package/dist/earning/funding-plan.js +27 -18
  149. package/dist/earning/funding-plan.js.map +1 -1
  150. package/dist/earning/jinn-rewards.d.ts +46 -0
  151. package/dist/earning/jinn-rewards.js +32 -0
  152. package/dist/earning/jinn-rewards.js.map +1 -1
  153. package/dist/earning/safe-adapter.d.ts +2 -0
  154. package/dist/earning/safe-adapter.js +26 -12
  155. package/dist/earning/safe-adapter.js.map +1 -1
  156. package/dist/earning/store.d.ts +8 -0
  157. package/dist/earning/store.js.map +1 -1
  158. package/dist/earning/testnet-setup-migration.d.ts +12 -0
  159. package/dist/earning/testnet-setup-migration.js +27 -1
  160. package/dist/earning/testnet-setup-migration.js.map +1 -1
  161. package/dist/earning/types.d.ts +15 -0
  162. package/dist/erc8004/reputation.d.ts +8 -0
  163. package/dist/erc8004/reputation.js +22 -3
  164. package/dist/erc8004/reputation.js.map +1 -1
  165. package/dist/harnesses/cost-estimates.d.ts +145 -0
  166. package/dist/harnesses/cost-estimates.js +297 -0
  167. package/dist/harnesses/cost-estimates.js.map +1 -0
  168. package/dist/harnesses/engine/engine.d.ts +72 -0
  169. package/dist/harnesses/engine/engine.js +105 -8
  170. package/dist/harnesses/engine/engine.js.map +1 -1
  171. package/dist/harnesses/engine/persistence.d.ts +51 -1
  172. package/dist/harnesses/engine/persistence.js +118 -5
  173. package/dist/harnesses/engine/persistence.js.map +1 -1
  174. package/dist/harnesses/engine/work-dir-reaper.d.ts +65 -0
  175. package/dist/harnesses/engine/work-dir-reaper.js +100 -0
  176. package/dist/harnesses/engine/work-dir-reaper.js.map +1 -0
  177. package/dist/harnesses/impls/hermes-agent/adapter.js +40 -0
  178. package/dist/harnesses/impls/hermes-agent/adapter.js.map +1 -1
  179. package/dist/harnesses/impls/hermes-agent/bootstrap.d.ts +20 -0
  180. package/dist/harnesses/impls/hermes-agent/bootstrap.js +40 -6
  181. package/dist/harnesses/impls/hermes-agent/bootstrap.js.map +1 -1
  182. package/dist/harnesses/impls/hermes-agent/harness.d.ts +59 -1
  183. package/dist/harnesses/impls/hermes-agent/harness.js +104 -0
  184. package/dist/harnesses/impls/hermes-agent/harness.js.map +1 -1
  185. package/dist/harnesses/impls/index.d.ts +9 -0
  186. package/dist/harnesses/impls/index.js +19 -1
  187. package/dist/harnesses/impls/index.js.map +1 -1
  188. package/dist/harnesses/impls/learner/adapters/codex-code.d.ts +3 -0
  189. package/dist/harnesses/impls/learner/adapters/codex-code.js +49 -0
  190. package/dist/harnesses/impls/learner/adapters/codex-code.js.map +1 -1
  191. package/dist/harnesses/impls/learner/harness.d.ts +41 -4
  192. package/dist/harnesses/impls/learner/harness.js +114 -2
  193. package/dist/harnesses/impls/learner/harness.js.map +1 -1
  194. package/dist/harnesses/impls/learner/plugin-path.d.ts +0 -13
  195. package/dist/harnesses/impls/learner/plugin-path.js +35 -15
  196. package/dist/harnesses/impls/learner/plugin-path.js.map +1 -1
  197. package/dist/harnesses/impls/learner/types.d.ts +15 -0
  198. package/dist/harnesses/impls/stub.d.ts +58 -0
  199. package/dist/harnesses/impls/stub.js +89 -0
  200. package/dist/harnesses/impls/stub.js.map +1 -0
  201. package/dist/harnesses/impls/swe-rebench-v2-evaluator/eval-runner.d.ts +69 -50
  202. package/dist/harnesses/impls/swe-rebench-v2-evaluator/eval-runner.js +178 -93
  203. package/dist/harnesses/impls/swe-rebench-v2-evaluator/eval-runner.js.map +1 -1
  204. package/dist/harnesses/impls/swe-rebench-v2-evaluator/harness.d.ts +12 -1
  205. package/dist/harnesses/impls/swe-rebench-v2-evaluator/harness.js +121 -7
  206. package/dist/harnesses/impls/swe-rebench-v2-evaluator/harness.js.map +1 -1
  207. package/dist/harnesses/impls/swe-rebench-v2-evaluator/hf-fetcher.d.ts +15 -0
  208. package/dist/harnesses/impls/swe-rebench-v2-evaluator/hf-fetcher.js +54 -4
  209. package/dist/harnesses/impls/swe-rebench-v2-evaluator/hf-fetcher.js.map +1 -1
  210. package/dist/harnesses/impls/swe-rebench-v2-evaluator/index.d.ts +6 -0
  211. package/dist/harnesses/impls/swe-rebench-v2-evaluator/index.js +1 -1
  212. package/dist/harnesses/impls/swe-rebench-v2-evaluator/index.js.map +1 -1
  213. package/dist/harnesses/readiness-registry.js +9 -1
  214. package/dist/harnesses/readiness-registry.js.map +1 -1
  215. package/dist/main.js +373 -82
  216. package/dist/main.js.map +1 -1
  217. package/dist/observability/emit-event.d.ts +2 -1
  218. package/dist/observability/emit-event.js +17 -0
  219. package/dist/observability/emit-event.js.map +1 -1
  220. package/dist/operator-errors.d.ts +7 -0
  221. package/dist/operator-errors.js +13 -1
  222. package/dist/operator-errors.js.map +1 -1
  223. package/dist/plugins/learner/.claude-plugin/plugin.json +9 -0
  224. package/dist/plugins/learner/.codex-plugin/plugin.json +39 -0
  225. package/dist/plugins/learner/AGENTS.md +40 -0
  226. package/dist/plugins/learner/CLAUDE.md +33 -0
  227. package/dist/plugins/learner/README.md +59 -0
  228. package/dist/plugins/learner/hooks/hooks.json +16 -0
  229. package/dist/plugins/learner/hooks/session-start +38 -0
  230. package/dist/plugins/learner/skills/learn/SKILL.md +412 -0
  231. package/dist/plugins/learner/skills/learn/analyst-prompt.md +68 -0
  232. package/dist/plugins/learner/skills/learn/consolidator-prompt.md +94 -0
  233. package/dist/plugins/learner/skills/learn/explorer-prompt.md +53 -0
  234. package/dist/plugins/learner/skills/learn/planner-prompt.md +87 -0
  235. package/dist/plugins/learner/skills/learn/promoter-prompt.md +113 -0
  236. package/dist/plugins/learner/skills/learn/step-worker-prompt.md +47 -0
  237. package/dist/plugins/learner/skills/learn/strategist-prompt.md +85 -0
  238. package/dist/restart-daemon.d.ts +90 -0
  239. package/dist/restart-daemon.js +95 -0
  240. package/dist/restart-daemon.js.map +1 -0
  241. package/dist/setup/halt-mode.d.ts +14 -0
  242. package/dist/setup/halt-mode.js +17 -0
  243. package/dist/setup/halt-mode.js.map +1 -0
  244. package/dist/solver-nets/prediction-operator-ux.js +43 -3
  245. package/dist/solver-nets/prediction-operator-ux.js.map +1 -1
  246. package/dist/solver-nets/registry.d.ts +1 -0
  247. package/dist/solver-nets/registry.js +1 -1
  248. package/dist/solver-nets/registry.js.map +1 -1
  249. package/dist/solver-types/_swe-rebench-v2-pool-cache.d.ts +58 -0
  250. package/dist/solver-types/_swe-rebench-v2-pool-cache.js +87 -0
  251. package/dist/solver-types/_swe-rebench-v2-pool-cache.js.map +1 -0
  252. package/dist/solver-types/_swe-rebench-v2-substrate.d.ts +1 -0
  253. package/dist/solver-types/_swe-rebench-v2-substrate.js +10 -0
  254. package/dist/solver-types/_swe-rebench-v2-substrate.js.map +1 -1
  255. package/dist/solver-types/_swe-rebench-v2-validated-pool.d.ts +65 -0
  256. package/dist/solver-types/_swe-rebench-v2-validated-pool.js +243 -26
  257. package/dist/solver-types/_swe-rebench-v2-validated-pool.js.map +1 -1
  258. package/dist/solver-types/swe-rebench-v2-auto.d.ts +22 -7
  259. package/dist/solver-types/swe-rebench-v2-auto.js +45 -20
  260. package/dist/solver-types/swe-rebench-v2-auto.js.map +1 -1
  261. package/dist/solver-types/swe-rebench-v2.d.ts +13 -2
  262. package/dist/solver-types/swe-rebench-v2.js +233 -94
  263. package/dist/solver-types/swe-rebench-v2.js.map +1 -1
  264. package/dist/solvernets/daemon-init.d.ts +10 -2
  265. package/dist/solvernets/daemon-init.js +22 -2
  266. package/dist/solvernets/daemon-init.js.map +1 -1
  267. package/dist/solvernets/launched-record-dispatcher.js +35 -7
  268. package/dist/solvernets/launched-record-dispatcher.js.map +1 -1
  269. package/dist/solvernets/store.d.ts +5 -0
  270. package/dist/solvernets/store.js +1 -0
  271. package/dist/solvernets/store.js.map +1 -1
  272. package/dist/store/store.d.ts +30 -0
  273. package/dist/store/store.js +184 -3
  274. package/dist/store/store.js.map +1 -1
  275. package/dist/tasks/sources.d.ts +18 -1
  276. package/dist/tasks/sources.js +33 -5
  277. package/dist/tasks/sources.js.map +1 -1
  278. package/dist/tx-retry.d.ts +151 -19
  279. package/dist/tx-retry.js +286 -32
  280. package/dist/tx-retry.js.map +1 -1
  281. package/dist/types/payloads/prediction-apy-v0.d.ts +5 -5
  282. package/dist/types/payloads/prediction-v0.d.ts +5 -5
  283. package/dist/types/task-document.d.ts +392 -0
  284. package/dist/types/task-document.js +10 -0
  285. package/dist/types/task-document.js.map +1 -1
  286. package/dist/types/task.d.ts +28 -0
  287. package/dist/util/extract-tx-hash.d.ts +14 -0
  288. package/dist/util/extract-tx-hash.js +19 -0
  289. package/dist/util/extract-tx-hash.js.map +1 -0
  290. package/dist/vendor/@jinn-network/sdk/dist/contracts.js +1 -1
  291. package/dist/vendor/@jinn-network/sdk/dist/solvernets/manifest-schema.d.ts +3 -0
  292. package/dist/vendor/@jinn-network/sdk/dist/solvernets/manifest-schema.js +1 -0
  293. package/package.json +29 -12
  294. package/dist/dashboard/assets/index-DOlzFN8a.css +0 -32
  295. package/dist/dashboard/assets/index-NkZ7CTAT.js +0 -140
package/dist/tx-retry.js CHANGED
@@ -7,6 +7,9 @@ export const TX_RETRY_DEFAULTS = {
7
7
  maxDelayMs: 12_000,
8
8
  /** Extra fee bump per retry attempt after the first (basis points, 1500 = +15%) */
9
9
  feeBumpBpsPerAttempt: 1500,
10
+ /** Minimum bump over the previously submitted fee for same-sender nonce replacement. */
11
+ replacementBumpBps: 1500,
12
+ stuckNonceAfterMs: 120_000,
10
13
  };
11
14
  export function flattenErrorMessage(error) {
12
15
  if (error === null || error === undefined)
@@ -194,6 +197,30 @@ export async function backoffDelay(attemptIndex, baseMs, maxMs) {
194
197
  const jitter = Math.floor(Math.random() * Math.min(250, baseMs));
195
198
  await sleep(exp + jitter);
196
199
  }
200
+ export function createMemoryTxSubmissionLedger() {
201
+ const entries = new Map();
202
+ const keyFor = (key) => `${key.chainId}:${key.from.toLowerCase()}:${key.nonce}`;
203
+ return {
204
+ getTxSubmission(key) {
205
+ return entries.get(keyFor(key)) ?? null;
206
+ },
207
+ recordTxSubmission(entry) {
208
+ entries.set(keyFor(entry), { ...entry, resolvedAtMs: entry.resolvedAtMs ?? null });
209
+ },
210
+ markTxSubmissionResolved(key) {
211
+ const existing = entries.get(keyFor(key));
212
+ if (existing)
213
+ entries.set(keyFor(key), { ...existing, resolvedAtMs: key.resolvedAtMs });
214
+ },
215
+ };
216
+ }
217
+ let defaultTxSubmissionLedger = createMemoryTxSubmissionLedger();
218
+ export function setDefaultTxSubmissionLedger(ledger) {
219
+ defaultTxSubmissionLedger = ledger;
220
+ }
221
+ export function getDefaultTxSubmissionLedger() {
222
+ return defaultTxSubmissionLedger;
223
+ }
197
224
  export async function withRecoverableRetry(fn, options = {}) {
198
225
  const maxAttempts = options.maxAttempts ?? TX_RETRY_DEFAULTS.maxAttempts;
199
226
  const baseDelayMs = options.baseDelayMs ?? TX_RETRY_DEFAULTS.baseDelayMs;
@@ -237,20 +264,71 @@ export async function waitForContractCode(publicClient, address, options = {}) {
237
264
  }
238
265
  throw new Error(`No contract code at ${address} after ${maxAttempts} getCode attempts`);
239
266
  }
240
- /** EIP-1559 or legacy gas overrides for viem, increasingly aggressive on later attempts. */
241
- export async function viemFeeOverridesForAttempt(publicClient, attemptIndex) {
267
+ function mulDivCeil(value, numerator, denominator) {
268
+ return (value * numerator + denominator - 1n) / denominator;
269
+ }
270
+ function maxBigInt(...values) {
271
+ const present = values.filter((value) => value !== undefined);
272
+ if (present.length === 0)
273
+ return undefined;
274
+ return present.reduce((max, value) => (value > max ? value : max), present[0]);
275
+ }
276
+ function replacementBump(value) {
277
+ return mulDivCeil(value, 10000n + BigInt(TX_RETRY_DEFAULTS.replacementBumpBps), 10000n);
278
+ }
279
+ function attemptBump(value, attemptIndex) {
242
280
  if (attemptIndex <= 0)
243
- return {};
281
+ return value;
244
282
  const bps = BigInt(TX_RETRY_DEFAULTS.feeBumpBpsPerAttempt) * BigInt(attemptIndex);
245
- const mult = 10000n + bps;
246
- const apply = (v) => (v * mult) / 10000n;
283
+ return mulDivCeil(value, 10000n + bps, 10000n);
284
+ }
285
+ export function mergeFeeEstimateWithPrevious(current, previous, attemptIndex = 0) {
286
+ if (current.gasPrice !== undefined || previous?.gasPrice !== undefined) {
287
+ const gasPrice = maxBigInt(current.gasPrice === undefined ? undefined : attemptBump(current.gasPrice, attemptIndex), previous?.gasPrice === undefined ? undefined : replacementBump(previous.gasPrice));
288
+ return gasPrice === undefined ? {} : { gasPrice };
289
+ }
290
+ const maxFeePerGas = maxBigInt(current.maxFeePerGas === undefined ? undefined : attemptBump(current.maxFeePerGas, attemptIndex), previous?.maxFeePerGas === undefined ? undefined : replacementBump(previous.maxFeePerGas));
291
+ const maxPriorityFeePerGas = maxBigInt(current.maxPriorityFeePerGas === undefined
292
+ ? undefined
293
+ : attemptBump(current.maxPriorityFeePerGas, attemptIndex), previous?.maxPriorityFeePerGas === undefined
294
+ ? undefined
295
+ : replacementBump(previous.maxPriorityFeePerGas));
296
+ if (maxFeePerGas !== undefined && maxPriorityFeePerGas !== undefined) {
297
+ return { maxFeePerGas, maxPriorityFeePerGas };
298
+ }
299
+ return {};
300
+ }
301
+ function feeOverrideResultFromSnapshot(snapshot) {
302
+ if (snapshot.maxFeePerGas !== undefined && snapshot.maxPriorityFeePerGas !== undefined) {
303
+ const overrides = {
304
+ maxFeePerGas: snapshot.maxFeePerGas,
305
+ maxPriorityFeePerGas: snapshot.maxPriorityFeePerGas,
306
+ };
307
+ return { kind: 'eip1559', overrides, snapshot: overrides };
308
+ }
309
+ if (snapshot.gasPrice !== undefined) {
310
+ const overrides = { gasPrice: snapshot.gasPrice };
311
+ return { kind: 'legacy', overrides, snapshot: overrides };
312
+ }
313
+ return { kind: 'none', overrides: {}, snapshot: {} };
314
+ }
315
+ /**
316
+ * EIP-1559 or legacy gas overrides for viem, increasingly aggressive on later attempts.
317
+ *
318
+ * The result carries both the spreadable viem transaction overrides and the
319
+ * ledger snapshot, keeping call sites from recasting the override object.
320
+ */
321
+ export async function viemFeeOverrideResultForAttempt(publicClient, attemptIndex, options = {}) {
322
+ if (attemptIndex <= 0 && !options.previousFees && !options.forceEstimate) {
323
+ return feeOverrideResultFromSnapshot({});
324
+ }
247
325
  try {
248
326
  const fees = await publicClient.estimateFeesPerGas();
249
327
  if (fees.maxFeePerGas !== undefined && fees.maxPriorityFeePerGas !== undefined) {
250
- return {
251
- maxFeePerGas: apply(fees.maxFeePerGas),
252
- maxPriorityFeePerGas: apply(fees.maxPriorityFeePerGas),
253
- };
328
+ return feeOverrideResultFromSnapshot(mergeFeeEstimateWithPrevious({
329
+ maxFeePerGas: fees.maxFeePerGas,
330
+ maxPriorityFeePerGas: fees.maxPriorityFeePerGas,
331
+ }, options.previousFees, attemptIndex));
254
332
  }
255
333
  }
256
334
  catch {
@@ -258,12 +336,18 @@ export async function viemFeeOverridesForAttempt(publicClient, attemptIndex) {
258
336
  }
259
337
  try {
260
338
  const gasPrice = await publicClient.getGasPrice();
261
- return { gasPrice: apply(gasPrice) };
339
+ return feeOverrideResultFromSnapshot(mergeFeeEstimateWithPrevious({ gasPrice }, options.previousFees, attemptIndex));
262
340
  }
263
341
  catch {
264
- return {};
342
+ return options.previousFees
343
+ ? feeOverrideResultFromSnapshot(mergeFeeEstimateWithPrevious({}, options.previousFees, attemptIndex))
344
+ : feeOverrideResultFromSnapshot({});
265
345
  }
266
346
  }
347
+ /** EIP-1559 or legacy gas overrides for viem, increasingly aggressive on later attempts. */
348
+ export async function viemFeeOverridesForAttempt(publicClient, attemptIndex, options = {}) {
349
+ return (await viemFeeOverrideResultForAttempt(publicClient, attemptIndex, options)).overrides;
350
+ }
267
351
  export async function waitForTransactionReceiptWithRetry(publicClient, hash, options = {}) {
268
352
  const maxAttempts = options.maxAttempts ?? TX_RETRY_DEFAULTS.maxAttempts;
269
353
  const baseDelayMs = options.baseDelayMs ?? TX_RETRY_DEFAULTS.baseDelayMs;
@@ -294,34 +378,204 @@ export async function waitForTransactionReceiptWithRetry(publicClient, hash, opt
294
378
  }
295
379
  throw lastError instanceof Error ? lastError : new Error(String(lastError));
296
380
  }
381
+ async function resolveTxChainId(publicClient) {
382
+ return Number(await publicClient.getChainId());
383
+ }
384
+ async function resolvePendingNonce(publicClient, from) {
385
+ return Number(await publicClient.getTransactionCount({ address: from, blockTag: 'pending' }));
386
+ }
387
+ async function resolveLatestNonce(publicClient, from) {
388
+ return Number(await publicClient.getTransactionCount({ address: from, blockTag: 'latest' }));
389
+ }
390
+ function accountAddress(account) {
391
+ if (account && typeof account === 'object' && typeof account.address === 'string') {
392
+ return account.address;
393
+ }
394
+ return undefined;
395
+ }
396
+ function supportsNonceTracking(publicClient) {
397
+ const client = publicClient;
398
+ return typeof client.getChainId === 'function' && typeof client.getTransactionCount === 'function';
399
+ }
400
+ function isEmptyFees(fees) {
401
+ return fees.maxFeePerGas === undefined
402
+ && fees.maxPriorityFeePerGas === undefined
403
+ && fees.gasPrice === undefined;
404
+ }
405
+ export function removeConflictingLegacyGasPrice(tx) {
406
+ if (tx.maxFeePerGas !== undefined && tx.maxPriorityFeePerGas !== undefined) {
407
+ delete tx.gasPrice;
408
+ }
409
+ }
410
+ function withoutFeeOverrides(tx) {
411
+ const { maxFeePerGas: _maxFeePerGas, maxPriorityFeePerGas: _maxPriorityFeePerGas, gasPrice: _gasPrice, ...baseRequest } = tx;
412
+ return baseRequest;
413
+ }
414
+ export async function withNonceLedger(args, fn) {
415
+ const ledger = args.ledger ?? defaultTxSubmissionLedger;
416
+ const chainId = args.chainId ?? await resolveTxChainId(args.publicClient);
417
+ if (args.recoverStuckNonce) {
418
+ if (!args.walletClient) {
419
+ throw new Error('withNonceLedger recovery requested without a wallet client');
420
+ }
421
+ await recoverStuckNonceIfNeeded({
422
+ publicClient: args.publicClient,
423
+ walletClient: args.walletClient,
424
+ ledger,
425
+ chainId,
426
+ from: args.from,
427
+ staleAfterMs: args.staleAfterMs,
428
+ });
429
+ }
430
+ const nonce = args.nonce ?? await resolvePendingNonce(args.publicClient, args.from);
431
+ const key = { chainId, from: args.from, nonce };
432
+ const context = {
433
+ ledger,
434
+ chainId,
435
+ from: args.from,
436
+ nonce,
437
+ async feeResultForAttempt(attemptIndex, options = {}) {
438
+ const previous = await ledger.getTxSubmission(key);
439
+ return viemFeeOverrideResultForAttempt(args.publicClient, attemptIndex, {
440
+ previousFees: previous?.resolvedAtMs == null ? previous?.fees : undefined,
441
+ forceEstimate: options.forceEstimate,
442
+ });
443
+ },
444
+ async recordSubmitted(entry) {
445
+ await ledger.recordTxSubmission({
446
+ chainId,
447
+ from: args.from,
448
+ nonce,
449
+ hash: entry.hash,
450
+ logicalTx: entry.logicalTx,
451
+ submittedAtMs: entry.submittedAtMs ?? Date.now(),
452
+ fees: entry.fees,
453
+ to: entry.to,
454
+ value: entry.value,
455
+ data: entry.data,
456
+ });
457
+ },
458
+ async markResolved(resolvedAtMs = Date.now()) {
459
+ await ledger.markTxSubmissionResolved({ chainId, from: args.from, nonce, resolvedAtMs });
460
+ },
461
+ };
462
+ return fn(context);
463
+ }
464
+ export async function recoverStuckNonceIfNeeded(args) {
465
+ const ledger = args.ledger ?? defaultTxSubmissionLedger;
466
+ const [chainId, pendingNonce, latestNonce] = await Promise.all([
467
+ args.chainId ?? resolveTxChainId(args.publicClient),
468
+ resolvePendingNonce(args.publicClient, args.from),
469
+ resolveLatestNonce(args.publicClient, args.from),
470
+ ]);
471
+ if (pendingNonce <= latestNonce)
472
+ return null;
473
+ const nowMs = args.nowMs ?? Date.now();
474
+ const staleAfterMs = args.staleAfterMs ?? TX_RETRY_DEFAULTS.stuckNonceAfterMs;
475
+ for (let nonce = latestNonce; nonce < pendingNonce; nonce++) {
476
+ const entry = await ledger.getTxSubmission({ chainId, from: args.from, nonce });
477
+ if (!entry || entry.resolvedAtMs != null)
478
+ continue;
479
+ if (nowMs - entry.submittedAtMs < staleAfterMs)
480
+ continue;
481
+ const feeOverrides = await viemFeeOverridesForAttempt(args.publicClient, 1, {
482
+ previousFees: entry.fees,
483
+ forceEstimate: true,
484
+ });
485
+ const account = args.walletClient.account;
486
+ const tx = {
487
+ account,
488
+ to: args.from,
489
+ value: 0n,
490
+ nonce,
491
+ ...feeOverrides,
492
+ };
493
+ removeConflictingLegacyGasPrice(tx);
494
+ const recoveryHash = await args.walletClient.sendTransaction(tx);
495
+ await ledger.recordTxSubmission({
496
+ chainId,
497
+ from: args.from,
498
+ nonce,
499
+ hash: recoveryHash,
500
+ logicalTx: 'stuck-nonce-recovery',
501
+ submittedAtMs: nowMs,
502
+ fees: feeOverrides,
503
+ to: args.from,
504
+ value: 0n,
505
+ });
506
+ await args.publicClient.waitForTransactionReceipt({ hash: recoveryHash });
507
+ await ledger.markTxSubmissionResolved({ chainId, from: args.from, nonce, resolvedAtMs: nowMs });
508
+ return { nonce, previousHash: entry.hash, recoveryHash };
509
+ }
510
+ return null;
511
+ }
297
512
  export async function viemSendTransactionWithRetry(walletClient, publicClient, txRequest, options = {}) {
298
513
  const maxAttempts = options.maxAttempts ?? TX_RETRY_DEFAULTS.maxAttempts;
299
514
  const baseDelayMs = options.baseDelayMs ?? TX_RETRY_DEFAULTS.baseDelayMs;
300
515
  const maxDelayMs = options.maxDelayMs ?? TX_RETRY_DEFAULTS.maxDelayMs;
301
- let lastError;
302
- for (let attempt = 0; attempt < maxAttempts; attempt++) {
303
- try {
304
- const overrides = await viemFeeOverridesForAttempt(publicClient, attempt);
305
- const req = { ...txRequest, ...overrides };
306
- // If we provided maxFeePerGas, ensure gasPrice is not somehow inherited
307
- if ('maxFeePerGas' in req && 'maxPriorityFeePerGas' in req) {
308
- delete req.gasPrice;
516
+ const ledger = options.ledger ?? defaultTxSubmissionLedger;
517
+ const from = accountAddress(txRequest.account);
518
+ const shouldTrackNonce = from !== undefined && supportsNonceTracking(publicClient);
519
+ const requestedNonce = txRequest.nonce === undefined ? undefined : Number(txRequest.nonce);
520
+ const sendWithRetry = async (nonceLedger) => {
521
+ const pinnedNonce = nonceLedger?.nonce ?? requestedNonce;
522
+ let lastError;
523
+ for (let attempt = 0; attempt < maxAttempts; attempt++) {
524
+ try {
525
+ const feeResult = nonceLedger
526
+ ? await nonceLedger.feeResultForAttempt(attempt, { forceEstimate: true })
527
+ : await viemFeeOverrideResultForAttempt(publicClient, attempt);
528
+ const nonceOverride = pinnedNonce !== undefined ? { nonce: pinnedNonce } : {};
529
+ const req = feeResult.kind === 'none'
530
+ ? {
531
+ ...txRequest,
532
+ ...nonceOverride,
533
+ }
534
+ : {
535
+ ...withoutFeeOverrides(txRequest),
536
+ ...nonceOverride,
537
+ ...feeResult.overrides,
538
+ };
539
+ removeConflictingLegacyGasPrice(req);
540
+ const hash = await walletClient.sendTransaction(req);
541
+ if (nonceLedger && !isEmptyFees(feeResult.snapshot)) {
542
+ await nonceLedger.recordSubmitted({
543
+ hash,
544
+ logicalTx: options.logicalTx,
545
+ fees: feeResult.snapshot,
546
+ to: txRequest.to,
547
+ value: txRequest.value,
548
+ data: txRequest.data,
549
+ });
550
+ }
551
+ return hash;
309
552
  }
310
- return await walletClient.sendTransaction(req);
311
- }
312
- catch (err) {
313
- lastError = err;
314
- if (!isRecoverableTransactionError(err) || attempt >= maxAttempts - 1) {
315
- throw err;
553
+ catch (err) {
554
+ lastError = err;
555
+ if (!isRecoverableTransactionError(err) || attempt >= maxAttempts - 1) {
556
+ throw err;
557
+ }
558
+ options.onRetry?.({
559
+ attempt: attempt + 1,
560
+ error: err,
561
+ message: flattenErrorMessage(err),
562
+ });
563
+ await backoffDelay(attempt, baseDelayMs, maxDelayMs);
316
564
  }
317
- options.onRetry?.({
318
- attempt: attempt + 1,
319
- error: err,
320
- message: flattenErrorMessage(err),
321
- });
322
- await backoffDelay(attempt, baseDelayMs, maxDelayMs);
323
565
  }
566
+ throw lastError instanceof Error ? lastError : new Error(String(lastError));
567
+ };
568
+ if (from && shouldTrackNonce) {
569
+ return withNonceLedger({
570
+ publicClient,
571
+ walletClient,
572
+ ledger,
573
+ from,
574
+ nonce: requestedNonce,
575
+ recoverStuckNonce: true,
576
+ staleAfterMs: options.stuckNonceAfterMs,
577
+ }, sendWithRetry);
324
578
  }
325
- throw lastError instanceof Error ? lastError : new Error(String(lastError));
579
+ return sendWithRetry();
326
580
  }
327
581
  //# sourceMappingURL=tx-retry.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"tx-retry.js","sourceRoot":"","sources":["../src/tx-retry.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"tx-retry.js","sourceRoot":"","sources":["../src/tx-retry.ts"],"names":[],"mappings":"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"}
@@ -136,11 +136,11 @@ export declare const PredictionApyV0VerdictPayloadSchema: z.ZodEffects<z.ZodObje
136
136
  detail: z.ZodOptional<z.ZodUnion<[z.ZodString, z.ZodRecord<z.ZodString, z.ZodUnknown>]>>;
137
137
  }, "strip", z.ZodTypeAny, {
138
138
  name: string;
139
- status: "PASS" | "FAIL" | "SKIP" | "INDETERMINATE";
139
+ status: "PASS" | "FAIL" | "INDETERMINATE" | "SKIP";
140
140
  detail?: string | Record<string, unknown> | undefined;
141
141
  }, {
142
142
  name: string;
143
- status: "PASS" | "FAIL" | "SKIP" | "INDETERMINATE";
143
+ status: "PASS" | "FAIL" | "INDETERMINATE" | "SKIP";
144
144
  detail?: string | Record<string, unknown> | undefined;
145
145
  }>, "many">;
146
146
  }, "strip", z.ZodTypeAny, {
@@ -157,7 +157,7 @@ export declare const PredictionApyV0VerdictPayloadSchema: z.ZodEffects<z.ZodObje
157
157
  };
158
158
  checks: {
159
159
  name: string;
160
- status: "PASS" | "FAIL" | "SKIP" | "INDETERMINATE";
160
+ status: "PASS" | "FAIL" | "INDETERMINATE" | "SKIP";
161
161
  detail?: string | Record<string, unknown> | undefined;
162
162
  }[];
163
163
  verificationOfRestoration: {
@@ -199,7 +199,7 @@ export declare const PredictionApyV0VerdictPayloadSchema: z.ZodEffects<z.ZodObje
199
199
  };
200
200
  checks: {
201
201
  name: string;
202
- status: "PASS" | "FAIL" | "SKIP" | "INDETERMINATE";
202
+ status: "PASS" | "FAIL" | "INDETERMINATE" | "SKIP";
203
203
  detail?: string | Record<string, unknown> | undefined;
204
204
  }[];
205
205
  verificationOfRestoration: {
@@ -241,7 +241,7 @@ export declare const PredictionApyV0VerdictPayloadSchema: z.ZodEffects<z.ZodObje
241
241
  };
242
242
  checks: {
243
243
  name: string;
244
- status: "PASS" | "FAIL" | "SKIP" | "INDETERMINATE";
244
+ status: "PASS" | "FAIL" | "INDETERMINATE" | "SKIP";
245
245
  detail?: string | Record<string, unknown> | undefined;
246
246
  }[];
247
247
  verificationOfRestoration: {
@@ -173,11 +173,11 @@ export declare const PredictionV0VerdictPayloadSchema: z.ZodEffects<z.ZodObject<
173
173
  detail: z.ZodOptional<z.ZodUnion<[z.ZodString, z.ZodRecord<z.ZodString, z.ZodUnknown>]>>;
174
174
  }, "strip", z.ZodTypeAny, {
175
175
  name: string;
176
- status: "PASS" | "FAIL" | "SKIP" | "INDETERMINATE";
176
+ status: "PASS" | "FAIL" | "INDETERMINATE" | "SKIP";
177
177
  detail?: string | Record<string, unknown> | undefined;
178
178
  }, {
179
179
  name: string;
180
- status: "PASS" | "FAIL" | "SKIP" | "INDETERMINATE";
180
+ status: "PASS" | "FAIL" | "INDETERMINATE" | "SKIP";
181
181
  detail?: string | Record<string, unknown> | undefined;
182
182
  }>, "many">;
183
183
  }, "strip", z.ZodTypeAny, {
@@ -194,7 +194,7 @@ export declare const PredictionV0VerdictPayloadSchema: z.ZodEffects<z.ZodObject<
194
194
  };
195
195
  checks: {
196
196
  name: string;
197
- status: "PASS" | "FAIL" | "SKIP" | "INDETERMINATE";
197
+ status: "PASS" | "FAIL" | "INDETERMINATE" | "SKIP";
198
198
  detail?: string | Record<string, unknown> | undefined;
199
199
  }[];
200
200
  verificationOfRestoration: {
@@ -233,7 +233,7 @@ export declare const PredictionV0VerdictPayloadSchema: z.ZodEffects<z.ZodObject<
233
233
  };
234
234
  checks: {
235
235
  name: string;
236
- status: "PASS" | "FAIL" | "SKIP" | "INDETERMINATE";
236
+ status: "PASS" | "FAIL" | "INDETERMINATE" | "SKIP";
237
237
  detail?: string | Record<string, unknown> | undefined;
238
238
  }[];
239
239
  verificationOfRestoration: {
@@ -272,7 +272,7 @@ export declare const PredictionV0VerdictPayloadSchema: z.ZodEffects<z.ZodObject<
272
272
  };
273
273
  checks: {
274
274
  name: string;
275
- status: "PASS" | "FAIL" | "SKIP" | "INDETERMINATE";
275
+ status: "PASS" | "FAIL" | "INDETERMINATE" | "SKIP";
276
276
  detail?: string | Record<string, unknown> | undefined;
277
277
  }[];
278
278
  verificationOfRestoration: {