dexe-mcp 0.20.1 → 0.22.0

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 (111) hide show
  1. package/CHANGELOG.md +114 -0
  2. package/README.md +2 -1
  3. package/dexe-plugin/skills/dexe-create-dao/SKILL.md +8 -0
  4. package/dexe-plugin/skills/dexe-create-proposal/SKILL.md +47 -8
  5. package/dexe-plugin/skills/dexe-otc/SKILL.md +5 -0
  6. package/dexe-plugin/skills/dexe-vote-execute/SKILL.md +16 -3
  7. package/dist/config.d.ts +7 -0
  8. package/dist/config.d.ts.map +1 -1
  9. package/dist/config.js +49 -9
  10. package/dist/config.js.map +1 -1
  11. package/dist/env/schema.d.ts +27 -6
  12. package/dist/env/schema.d.ts.map +1 -1
  13. package/dist/env/schema.js +36 -6
  14. package/dist/env/schema.js.map +1 -1
  15. package/dist/index.js +35 -7
  16. package/dist/index.js.map +1 -1
  17. package/dist/lib/avatarUpload.d.ts +57 -0
  18. package/dist/lib/avatarUpload.d.ts.map +1 -0
  19. package/dist/lib/avatarUpload.js +95 -0
  20. package/dist/lib/avatarUpload.js.map +1 -0
  21. package/dist/lib/errors.d.ts +33 -0
  22. package/dist/lib/errors.d.ts.map +1 -0
  23. package/dist/lib/errors.js +65 -0
  24. package/dist/lib/errors.js.map +1 -0
  25. package/dist/lib/params.d.ts +8 -0
  26. package/dist/lib/params.d.ts.map +1 -0
  27. package/dist/lib/params.js +14 -0
  28. package/dist/lib/params.js.map +1 -0
  29. package/dist/lib/proposalBuilders.d.ts +30 -2
  30. package/dist/lib/proposalBuilders.d.ts.map +1 -1
  31. package/dist/lib/proposalBuilders.js +583 -17
  32. package/dist/lib/proposalBuilders.js.map +1 -1
  33. package/dist/lib/requireEnv.d.ts.map +1 -1
  34. package/dist/lib/requireEnv.js +7 -4
  35. package/dist/lib/requireEnv.js.map +1 -1
  36. package/dist/lib/signer.d.ts.map +1 -1
  37. package/dist/lib/signer.js +7 -2
  38. package/dist/lib/signer.js.map +1 -1
  39. package/dist/lib/txWait.d.ts +28 -0
  40. package/dist/lib/txWait.d.ts.map +1 -0
  41. package/dist/lib/txWait.js +63 -0
  42. package/dist/lib/txWait.js.map +1 -0
  43. package/dist/lib/units.d.ts +32 -0
  44. package/dist/lib/units.d.ts.map +1 -0
  45. package/dist/lib/units.js +64 -0
  46. package/dist/lib/units.js.map +1 -0
  47. package/dist/rpc.d.ts +29 -1
  48. package/dist/rpc.d.ts.map +1 -1
  49. package/dist/rpc.js +86 -22
  50. package/dist/rpc.js.map +1 -1
  51. package/dist/tools/dao.d.ts.map +1 -1
  52. package/dist/tools/dao.js +16 -12
  53. package/dist/tools/dao.js.map +1 -1
  54. package/dist/tools/daoCreate.d.ts.map +1 -1
  55. package/dist/tools/daoCreate.js +37 -7
  56. package/dist/tools/daoCreate.js.map +1 -1
  57. package/dist/tools/flow.d.ts +32 -1
  58. package/dist/tools/flow.d.ts.map +1 -1
  59. package/dist/tools/flow.js +405 -120
  60. package/dist/tools/flow.js.map +1 -1
  61. package/dist/tools/gate.js +2 -2
  62. package/dist/tools/gov.d.ts.map +1 -1
  63. package/dist/tools/gov.js +17 -4
  64. package/dist/tools/gov.js.map +1 -1
  65. package/dist/tools/inbox.d.ts.map +1 -1
  66. package/dist/tools/inbox.js +4 -2
  67. package/dist/tools/inbox.js.map +1 -1
  68. package/dist/tools/ipfs.d.ts.map +1 -1
  69. package/dist/tools/ipfs.js +43 -47
  70. package/dist/tools/ipfs.js.map +1 -1
  71. package/dist/tools/operationalContext.d.ts.map +1 -1
  72. package/dist/tools/operationalContext.js +39 -5
  73. package/dist/tools/operationalContext.js.map +1 -1
  74. package/dist/tools/otc.d.ts.map +1 -1
  75. package/dist/tools/otc.js +53 -13
  76. package/dist/tools/otc.js.map +1 -1
  77. package/dist/tools/predict.d.ts.map +1 -1
  78. package/dist/tools/predict.js +7 -4
  79. package/dist/tools/predict.js.map +1 -1
  80. package/dist/tools/proposal.d.ts.map +1 -1
  81. package/dist/tools/proposal.js +8 -4
  82. package/dist/tools/proposal.js.map +1 -1
  83. package/dist/tools/proposalBuild.d.ts +1 -0
  84. package/dist/tools/proposalBuild.d.ts.map +1 -1
  85. package/dist/tools/proposalBuild.js +2 -1
  86. package/dist/tools/proposalBuild.js.map +1 -1
  87. package/dist/tools/proposalBuildComplex.d.ts +7 -0
  88. package/dist/tools/proposalBuildComplex.d.ts.map +1 -1
  89. package/dist/tools/proposalBuildComplex.js +7 -7
  90. package/dist/tools/proposalBuildComplex.js.map +1 -1
  91. package/dist/tools/proposalBuildInternal.d.ts +21 -0
  92. package/dist/tools/proposalBuildInternal.d.ts.map +1 -1
  93. package/dist/tools/proposalBuildInternal.js +1 -1
  94. package/dist/tools/proposalBuildInternal.js.map +1 -1
  95. package/dist/tools/proposalBuildMore.d.ts +2 -0
  96. package/dist/tools/proposalBuildMore.d.ts.map +1 -1
  97. package/dist/tools/proposalBuildMore.js +2 -2
  98. package/dist/tools/proposalBuildMore.js.map +1 -1
  99. package/dist/tools/read.d.ts.map +1 -1
  100. package/dist/tools/read.js +25 -16
  101. package/dist/tools/read.js.map +1 -1
  102. package/dist/tools/subgraph.d.ts.map +1 -1
  103. package/dist/tools/subgraph.js +5 -3
  104. package/dist/tools/subgraph.js.map +1 -1
  105. package/dist/tools/txSend.d.ts.map +1 -1
  106. package/dist/tools/txSend.js +46 -6
  107. package/dist/tools/txSend.js.map +1 -1
  108. package/dist/tools/vote.d.ts.map +1 -1
  109. package/dist/tools/vote.js +7 -4
  110. package/dist/tools/vote.js.map +1 -1
  111. package/package.json +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"proposalBuilders.js","sourceRoot":"","sources":["../../src/lib/proposalBuilders.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"proposalBuilders.js","sourceRoot":"","sources":["../../src/lib/proposalBuilders.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"requireEnv.d.ts","sourceRoot":"","sources":["../../src/lib/requireEnv.ts"],"names":[],"mappings":"AAAA,OAAO,EAAgB,KAAK,MAAM,EAAE,MAAM,kBAAkB,CAAC;AAE7D;;;;;;;;GAQG;AACH,MAAM,MAAM,cAAc,CAAC,CAAC,IAAI;IAAE,EAAE,EAAE,CAAC,CAAA;CAAE,GAAG;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,WAAW,EAAE,MAAM,CAAA;CAAE,CAAC;AAEnF;;;;GAIG;AACH,wBAAgB,UAAU,CAAC,CAAC,SAAS,MAAM,EACzC,IAAI,EAAE,SAAS,CAAC,EAAE,GACjB,cAAc,CAAC,MAAM,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC,CAkBnC;AAED;;;;;GAKG;AACH,wBAAgB,OAAO,CAAC,IAAI,EAAE,SAAS,MAAM,EAAE,GAAG,MAAM,CAevD;AAED;;;;;GAKG;AACH,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,CAQxD"}
1
+ {"version":3,"file":"requireEnv.d.ts","sourceRoot":"","sources":["../../src/lib/requireEnv.ts"],"names":[],"mappings":"AAAA,OAAO,EAAgB,KAAK,MAAM,EAAE,MAAM,kBAAkB,CAAC;AAE7D;;;;;;;;GAQG;AACH,MAAM,MAAM,cAAc,CAAC,CAAC,IAAI;IAAE,EAAE,EAAE,CAAC,CAAA;CAAE,GAAG;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,WAAW,EAAE,MAAM,CAAA;CAAE,CAAC;AAEnF;;;;GAIG;AACH,wBAAgB,UAAU,CAAC,CAAC,SAAS,MAAM,EACzC,IAAI,EAAE,SAAS,CAAC,EAAE,GACjB,cAAc,CAAC,MAAM,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC,CAkBnC;AAED;;;;;GAKG;AACH,wBAAgB,OAAO,CAAC,IAAI,EAAE,SAAS,MAAM,EAAE,GAAG,MAAM,CAevD;AAED;;;;;GAKG;AACH,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,CAWxD"}
@@ -53,9 +53,12 @@ export function hintFor(keys) {
53
53
  */
54
54
  export function pinataUploadHint(context) {
55
55
  return (`DEXE_PINATA_JWT is required ${context}. Reads work without it, but pinning ` +
56
- `metadata to IPFS needs a Pinata JWT.\n` +
57
- hintFor(["DEXE_PINATA_JWT"]) +
58
- "\nGuided setup: run /dexe-setup. Get a free JWT at https://app.pinata.cloud " +
59
- "(API Keys New Key, grant pinJSONToIPFS + pinFileToIPFS).");
56
+ `metadata to IPFS needs a Pinata JWT. Three steps to fix (~2 minutes):\n` +
57
+ `1) Create a free API key at https://app.pinata.cloud → API Keys → New Key — ` +
58
+ `grant it pinJSONToIPFS + pinFileToIPFS, copy the JWT (the long eyJ… string).\n` +
59
+ `2) Add a line 'DEXE_PINATA_JWT=<jwt>' to the .env file at the dexe-mcp root — ` +
60
+ `NEVER to .claude.json (the MCP env block silently shadows .env). No spaces around '=', file must end with a newline.\n` +
61
+ `3) Restart Claude Code (quit + relaunch) — .env is read once at startup, so the key does nothing until restart.\n` +
62
+ `Prefer a guided walkthrough? Run /dexe-setup. Verify afterwards with dexe_doctor.`);
60
63
  }
61
64
  //# sourceMappingURL=requireEnv.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"requireEnv.js","sourceRoot":"","sources":["../../src/lib/requireEnv.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAe,MAAM,kBAAkB,CAAC;AAa7D;;;;GAIG;AACH,MAAM,UAAU,UAAU,CACxB,IAAkB;IAElB,MAAM,OAAO,GAAQ,EAAE,CAAC;IACxB,MAAM,GAAG,GAAG,EAAuB,CAAC;IACpC,KAAK,MAAM,CAAC,IAAI,IAAI,EAAE,CAAC;QACrB,MAAM,CAAC,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC;QACjC,IAAI,CAAC,CAAC,EAAE,CAAC;YACP,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC;aAAM,CAAC;YACN,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;QACb,CAAC;IACH,CAAC;IACD,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACvB,OAAO;YACL,KAAK,EAAE,yBAAyB,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE;YACpD,WAAW,EAAE,OAAO,CAAC,OAAO,CAAC;SAC9B,CAAC;IACJ,CAAC;IACD,OAAO,EAAE,EAAE,EAAE,GAAG,EAAE,CAAC;AACrB,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,OAAO,CAAC,IAAuB;IAC7C,MAAM,KAAK,GAAa,EAAE,CAAC;IAC3B,KAAK,MAAM,CAAC,IAAI,IAAI,EAAE,CAAC;QACrB,MAAM,IAAI,GAAG,YAAY,CAAC,CAAC,CAAC,CAAC;QAC7B,IAAI,CAAC,IAAI;YAAE,SAAS;QACpB,MAAM,QAAQ,GAAG,IAAI,CAAC,YAAY,EAAE,MAAM;YACxC,CAAC,CAAC,cAAc,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG;YAC/C,CAAC,CAAC,EAAE,CAAC;QACP,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,cAAc,IAAI,CAAC,GAAG,GAAG,QAAQ,EAAE,CAAC,CAAC;IAC1D,CAAC;IACD,KAAK,CAAC,IAAI,CACR,6EAA6E;QAC3E,0DAA0D,CAC7D,CAAC;IACF,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAC1B,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,gBAAgB,CAAC,OAAe;IAC9C,OAAO,CACL,+BAA+B,OAAO,uCAAuC;QAC7E,wCAAwC;QACxC,OAAO,CAAC,CAAC,iBAAiB,CAAC,CAAC;QAC5B,8EAA8E;QAC9E,4DAA4D,CAC7D,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"requireEnv.js","sourceRoot":"","sources":["../../src/lib/requireEnv.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAe,MAAM,kBAAkB,CAAC;AAa7D;;;;GAIG;AACH,MAAM,UAAU,UAAU,CACxB,IAAkB;IAElB,MAAM,OAAO,GAAQ,EAAE,CAAC;IACxB,MAAM,GAAG,GAAG,EAAuB,CAAC;IACpC,KAAK,MAAM,CAAC,IAAI,IAAI,EAAE,CAAC;QACrB,MAAM,CAAC,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC;QACjC,IAAI,CAAC,CAAC,EAAE,CAAC;YACP,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC;aAAM,CAAC;YACN,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;QACb,CAAC;IACH,CAAC;IACD,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACvB,OAAO;YACL,KAAK,EAAE,yBAAyB,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE;YACpD,WAAW,EAAE,OAAO,CAAC,OAAO,CAAC;SAC9B,CAAC;IACJ,CAAC;IACD,OAAO,EAAE,EAAE,EAAE,GAAG,EAAE,CAAC;AACrB,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,OAAO,CAAC,IAAuB;IAC7C,MAAM,KAAK,GAAa,EAAE,CAAC;IAC3B,KAAK,MAAM,CAAC,IAAI,IAAI,EAAE,CAAC;QACrB,MAAM,IAAI,GAAG,YAAY,CAAC,CAAC,CAAC,CAAC;QAC7B,IAAI,CAAC,IAAI;YAAE,SAAS;QACpB,MAAM,QAAQ,GAAG,IAAI,CAAC,YAAY,EAAE,MAAM;YACxC,CAAC,CAAC,cAAc,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG;YAC/C,CAAC,CAAC,EAAE,CAAC;QACP,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,cAAc,IAAI,CAAC,GAAG,GAAG,QAAQ,EAAE,CAAC,CAAC;IAC1D,CAAC;IACD,KAAK,CAAC,IAAI,CACR,6EAA6E;QAC3E,0DAA0D,CAC7D,CAAC;IACF,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAC1B,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,gBAAgB,CAAC,OAAe;IAC9C,OAAO,CACL,+BAA+B,OAAO,uCAAuC;QAC7E,yEAAyE;QACzE,8EAA8E;QAC9E,gFAAgF;QAChF,gFAAgF;QAChF,wHAAwH;QACxH,mHAAmH;QACnH,mFAAmF,CACpF,CAAC;AACJ,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"signer.d.ts","sourceRoot":"","sources":["../../src/lib/signer.ts"],"names":[],"mappings":"AAAA,OAAO,EAAmB,MAAM,EAAE,MAAM,QAAQ,CAAC;AACjD,OAAO,EAAgB,KAAK,UAAU,EAAE,MAAM,cAAc,CAAC;AAC7D,OAAO,EAAW,KAAK,cAAc,EAAE,MAAM,iBAAiB,CAAC;AAE/D;;;GAGG;AACH,qBAAa,aAAa;IACxB,OAAO,CAAC,QAAQ,CAAC,KAAK,CAA6B;IACnD,kEAAkE;IAClE,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAuC;IACvE,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAqB;IACzC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAa;gBAExB,MAAM,EAAE,UAAU;IAK9B,SAAS,IAAI,OAAO;IAIpB,wFAAwF;IACxF,SAAS,IAAI,UAAU;IAIvB;;;OAGG;IACH,UAAU,IAAI,MAAM;IAKpB;;;OAGG;IACH,aAAa,CAAC,OAAO,CAAC,EAAE,MAAM,GAAG,MAAM;IAYvC;;;;;OAKG;IACH,SAAS,CAAC,OAAO,CAAC,EAAE,MAAM,GAAG,cAAc,CAAC,MAAM,CAAC;IAWnD;;;;;;;OAOG;IACG,iBAAiB,CAAC,CAAC,EAAE,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,OAAO,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC;IAgB/E,OAAO,CAAC,SAAS;CAMlB"}
1
+ {"version":3,"file":"signer.d.ts","sourceRoot":"","sources":["../../src/lib/signer.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAChC,OAAO,EAAgB,KAAK,UAAU,EAAE,MAAM,cAAc,CAAC;AAE7D,OAAO,EAAW,KAAK,cAAc,EAAE,MAAM,iBAAiB,CAAC;AAE/D;;;GAGG;AACH,qBAAa,aAAa;IACxB,OAAO,CAAC,QAAQ,CAAC,KAAK,CAA6B;IACnD,kEAAkE;IAClE,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAuC;IACvE,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAqB;IACzC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAa;gBAExB,MAAM,EAAE,UAAU;IAK9B,SAAS,IAAI,OAAO;IAIpB,wFAAwF;IACxF,SAAS,IAAI,UAAU;IAIvB;;;OAGG;IACH,UAAU,IAAI,MAAM;IAKpB;;;OAGG;IACH,aAAa,CAAC,OAAO,CAAC,EAAE,MAAM,GAAG,MAAM;IAgBvC;;;;;OAKG;IACH,SAAS,CAAC,OAAO,CAAC,EAAE,MAAM,GAAG,cAAc,CAAC,MAAM,CAAC;IAWnD;;;;;;;OAOG;IACG,iBAAiB,CAAC,CAAC,EAAE,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,OAAO,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC;IAgB/E,OAAO,CAAC,SAAS;CAMlB"}
@@ -1,5 +1,6 @@
1
- import { JsonRpcProvider, Wallet } from "ethers";
1
+ import { Wallet } from "ethers";
2
2
  import { resolveChain } from "../config.js";
3
+ import { createChainProvider } from "../rpc.js";
3
4
  import { hintFor } from "./requireEnv.js";
4
5
  /**
5
6
  * Per-chain signer cache. The private key is chain-agnostic; only the
@@ -41,7 +42,11 @@ export class SignerManager {
41
42
  const chain = resolveChain(this.config, chainId);
42
43
  let wallet = this.cache.get(chain.chainId);
43
44
  if (!wallet) {
44
- const provider = new JsonRpcProvider(chain.rpcUrl);
45
+ // Shared resilient factory (R1): the signer's reads (nonce, gas
46
+ // estimate, receipt polling) get the same retry + URL-rotation + hint
47
+ // behavior as every read tool. Broadcasts themselves are never retried
48
+ // at the transport layer (see ResilientRpcProvider).
49
+ const provider = createChainProvider(chain, this.config);
45
50
  wallet = new Wallet(this.key, provider);
46
51
  this.cache.set(chain.chainId, wallet);
47
52
  }
@@ -1 +1 @@
1
- {"version":3,"file":"signer.js","sourceRoot":"","sources":["../../src/lib/signer.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"signer.js","sourceRoot":"","sources":["../../src/lib/signer.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,28 @@
1
+ import type { JsonRpcProvider, TransactionReceipt, TransactionResponse } from "ethers";
2
+ /** Default on-chain confirmation wait budget (ms). Override: DEXE_TX_WAIT_TIMEOUT_MS. */
3
+ export declare const DEFAULT_TX_WAIT_TIMEOUT_MS = 180000;
4
+ /**
5
+ * `tx.wait` with a hard timeout (ethers v6 supports a wait timeout natively;
6
+ * this normalizes the TimeoutError into an actionable message that carries the
7
+ * tx hash + the dexe_tx_status follow-up). A stuck/dropped tx no longer hangs
8
+ * the tool call forever (R2).
9
+ */
10
+ export declare function waitWithTimeout(tx: TransactionResponse, opts?: {
11
+ confirmations?: number;
12
+ timeoutMs?: number;
13
+ }): Promise<TransactionReceipt | null>;
14
+ /** `provider.waitForTransaction` with the same timeout normalization (WC path). */
15
+ export declare function waitForHashWithTimeout(provider: JsonRpcProvider, txHash: string, chainId: number, opts?: {
16
+ confirmations?: number;
17
+ timeoutMs?: number;
18
+ }): Promise<TransactionReceipt | null>;
19
+ /**
20
+ * R3 — a mined-but-reverted tx (receipt.status === 0) must NEVER read as
21
+ * success: dependent composite steps would proceed on top of unchanged state
22
+ * (e.g. a reverted approve followed by a deposit). Throws with the tx hash so
23
+ * the failure is diagnosable.
24
+ */
25
+ export declare function assertReceiptSuccess(receipt: TransactionReceipt | null, label: string): asserts receipt is TransactionReceipt;
26
+ /** Resolve the wait budget from env once per call site (config-independent helper). */
27
+ export declare function txWaitTimeoutMs(): number;
28
+ //# sourceMappingURL=txWait.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"txWait.d.ts","sourceRoot":"","sources":["../../src/lib/txWait.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,kBAAkB,EAAE,mBAAmB,EAAE,MAAM,QAAQ,CAAC;AAEvF,yFAAyF;AACzF,eAAO,MAAM,0BAA0B,SAAU,CAAC;AAelD;;;;;GAKG;AACH,wBAAsB,eAAe,CACnC,EAAE,EAAE,mBAAmB,EACvB,IAAI,CAAC,EAAE;IAAE,aAAa,CAAC,EAAE,MAAM,CAAC;IAAC,SAAS,CAAC,EAAE,MAAM,CAAA;CAAE,GACpD,OAAO,CAAC,kBAAkB,GAAG,IAAI,CAAC,CAQpC;AAED,mFAAmF;AACnF,wBAAsB,sBAAsB,CAC1C,QAAQ,EAAE,eAAe,EACzB,MAAM,EAAE,MAAM,EACd,OAAO,EAAE,MAAM,EACf,IAAI,CAAC,EAAE;IAAE,aAAa,CAAC,EAAE,MAAM,CAAC;IAAC,SAAS,CAAC,EAAE,MAAM,CAAA;CAAE,GACpD,OAAO,CAAC,kBAAkB,GAAG,IAAI,CAAC,CAQpC;AAED;;;;;GAKG;AACH,wBAAgB,oBAAoB,CAClC,OAAO,EAAE,kBAAkB,GAAG,IAAI,EAClC,KAAK,EAAE,MAAM,GACZ,OAAO,CAAC,OAAO,IAAI,kBAAkB,CAQvC;AAED,uFAAuF;AACvF,wBAAgB,eAAe,IAAI,MAAM,CAKxC"}
@@ -0,0 +1,63 @@
1
+ /** Default on-chain confirmation wait budget (ms). Override: DEXE_TX_WAIT_TIMEOUT_MS. */
2
+ export const DEFAULT_TX_WAIT_TIMEOUT_MS = 180_000;
3
+ function timeoutMessage(txHash, chainId, ms) {
4
+ return (`Transaction ${txHash} was broadcast but not mined within ${Math.round(ms / 1000)}s — it may still land. ` +
5
+ `Do NOT re-send blindly (risk of double-execution). Check it with dexe_tx_status {"txHash":"${txHash}"` +
6
+ (chainId !== undefined ? `,"chainId":${chainId}` : "") +
7
+ `} and re-run this call only after it reports not_found.`);
8
+ }
9
+ function isEthersTimeout(err) {
10
+ return err?.code === "TIMEOUT";
11
+ }
12
+ /**
13
+ * `tx.wait` with a hard timeout (ethers v6 supports a wait timeout natively;
14
+ * this normalizes the TimeoutError into an actionable message that carries the
15
+ * tx hash + the dexe_tx_status follow-up). A stuck/dropped tx no longer hangs
16
+ * the tool call forever (R2).
17
+ */
18
+ export async function waitWithTimeout(tx, opts) {
19
+ const ms = opts?.timeoutMs ?? DEFAULT_TX_WAIT_TIMEOUT_MS;
20
+ try {
21
+ return await tx.wait(opts?.confirmations ?? 1, ms);
22
+ }
23
+ catch (err) {
24
+ if (isEthersTimeout(err))
25
+ throw new Error(timeoutMessage(tx.hash, tx.chainId, ms));
26
+ throw err;
27
+ }
28
+ }
29
+ /** `provider.waitForTransaction` with the same timeout normalization (WC path). */
30
+ export async function waitForHashWithTimeout(provider, txHash, chainId, opts) {
31
+ const ms = opts?.timeoutMs ?? DEFAULT_TX_WAIT_TIMEOUT_MS;
32
+ try {
33
+ return await provider.waitForTransaction(txHash, opts?.confirmations ?? 1, ms);
34
+ }
35
+ catch (err) {
36
+ if (isEthersTimeout(err))
37
+ throw new Error(timeoutMessage(txHash, chainId, ms));
38
+ throw err;
39
+ }
40
+ }
41
+ /**
42
+ * R3 — a mined-but-reverted tx (receipt.status === 0) must NEVER read as
43
+ * success: dependent composite steps would proceed on top of unchanged state
44
+ * (e.g. a reverted approve followed by a deposit). Throws with the tx hash so
45
+ * the failure is diagnosable.
46
+ */
47
+ export function assertReceiptSuccess(receipt, label) {
48
+ if (!receipt)
49
+ return; // absent receipt is handled by the timeout path
50
+ if (receipt.status === 0) {
51
+ throw new Error(`${label} REVERTED on-chain (tx ${receipt.hash}, status 0) — state was not changed by this step. ` +
52
+ `Inspect the tx on the explorer for the revert reason, fix the cause, and re-run.`);
53
+ }
54
+ }
55
+ /** Resolve the wait budget from env once per call site (config-independent helper). */
56
+ export function txWaitTimeoutMs() {
57
+ const raw = process.env.DEXE_TX_WAIT_TIMEOUT_MS?.trim();
58
+ if (!raw)
59
+ return DEFAULT_TX_WAIT_TIMEOUT_MS;
60
+ const n = Number(raw);
61
+ return Number.isInteger(n) && n > 0 ? n : DEFAULT_TX_WAIT_TIMEOUT_MS;
62
+ }
63
+ //# sourceMappingURL=txWait.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"txWait.js","sourceRoot":"","sources":["../../src/lib/txWait.ts"],"names":[],"mappings":"AAEA,yFAAyF;AACzF,MAAM,CAAC,MAAM,0BAA0B,GAAG,OAAO,CAAC;AAElD,SAAS,cAAc,CAAC,MAAc,EAAE,OAAoC,EAAE,EAAU;IACtF,OAAO,CACL,eAAe,MAAM,uCAAuC,IAAI,CAAC,KAAK,CAAC,EAAE,GAAG,IAAI,CAAC,yBAAyB;QAC1G,8FAA8F,MAAM,GAAG;QACvG,CAAC,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,cAAc,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACtD,yDAAyD,CAC1D,CAAC;AACJ,CAAC;AAED,SAAS,eAAe,CAAC,GAAY;IACnC,OAAQ,GAAiC,EAAE,IAAI,KAAK,SAAS,CAAC;AAChE,CAAC;AAED;;;;;GAKG;AACH,MAAM,CAAC,KAAK,UAAU,eAAe,CACnC,EAAuB,EACvB,IAAqD;IAErD,MAAM,EAAE,GAAG,IAAI,EAAE,SAAS,IAAI,0BAA0B,CAAC;IACzD,IAAI,CAAC;QACH,OAAO,MAAM,EAAE,CAAC,IAAI,CAAC,IAAI,EAAE,aAAa,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC;IACrD,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,IAAI,eAAe,CAAC,GAAG,CAAC;YAAE,MAAM,IAAI,KAAK,CAAC,cAAc,CAAC,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,CAAC;QACnF,MAAM,GAAG,CAAC;IACZ,CAAC;AACH,CAAC;AAED,mFAAmF;AACnF,MAAM,CAAC,KAAK,UAAU,sBAAsB,CAC1C,QAAyB,EACzB,MAAc,EACd,OAAe,EACf,IAAqD;IAErD,MAAM,EAAE,GAAG,IAAI,EAAE,SAAS,IAAI,0BAA0B,CAAC;IACzD,IAAI,CAAC;QACH,OAAO,MAAM,QAAQ,CAAC,kBAAkB,CAAC,MAAM,EAAE,IAAI,EAAE,aAAa,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC;IACjF,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,IAAI,eAAe,CAAC,GAAG,CAAC;YAAE,MAAM,IAAI,KAAK,CAAC,cAAc,CAAC,MAAM,EAAE,OAAO,EAAE,EAAE,CAAC,CAAC,CAAC;QAC/E,MAAM,GAAG,CAAC;IACZ,CAAC;AACH,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,oBAAoB,CAClC,OAAkC,EAClC,KAAa;IAEb,IAAI,CAAC,OAAO;QAAE,OAAO,CAAC,gDAAgD;IACtE,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACzB,MAAM,IAAI,KAAK,CACb,GAAG,KAAK,0BAA0B,OAAO,CAAC,IAAI,oDAAoD;YAChG,kFAAkF,CACrF,CAAC;IACJ,CAAC;AACH,CAAC;AAED,uFAAuF;AACvF,MAAM,UAAU,eAAe;IAC7B,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC,uBAAuB,EAAE,IAAI,EAAE,CAAC;IACxD,IAAI,CAAC,GAAG;QAAE,OAAO,0BAA0B,CAAC;IAC5C,MAAM,CAAC,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC;IACtB,OAAO,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,0BAA0B,CAAC;AACvE,CAAC"}
@@ -0,0 +1,32 @@
1
+ /**
2
+ * Dual-mode token-amount parsing shared by every tool that accepts an amount.
3
+ *
4
+ * Rules (back-compat by construction):
5
+ * - digits-only string ("12500000000000000000") → treated as RAW smallest
6
+ * units (wei) and returned unchanged. This is what every pre-0.22 caller
7
+ * passed, so existing integrations keep byte-identical behavior.
8
+ * - decimal string ("12.5") → HUMAN units, scaled by the token's real
9
+ * `decimals` (never assume 18 — mirrors the frontend, which calls
10
+ * `parseUnits(amount, token.decimals)` per token).
11
+ *
12
+ * Anything else (negative, hex, scientific notation, thousands separators)
13
+ * is rejected with an example of both accepted forms.
14
+ */
15
+ export declare function parseAmount(input: string, decimals: number): bigint;
16
+ /**
17
+ * Human-readable rendering of a raw token amount — used by error messages so
18
+ * the model/user never has to convert wei by hand. "12.5 GEC (raw 12500…000)".
19
+ */
20
+ export declare function formatAmount(raw: bigint, decimals: number, symbol?: string): string;
21
+ /**
22
+ * Convert an 18-decimal-normalized amount to a token's native raw units —
23
+ * mirrors the protocol's from18Safe (DecimalsConverter). Used by the OTC buy
24
+ * preflight: `TokenSaleProposal.buy` takes the 18-dec-normalized amount but
25
+ * `transferFrom` pulls the converted RAW amount, so balance checks and the
26
+ * exact-amount approve must use this value (R9).
27
+ *
28
+ * Throws on precision loss for <18-dec tokens (the contract's Safe variant
29
+ * rejects those too — better to fail here with a readable message).
30
+ */
31
+ export declare function from18(normalized: bigint, decimals: number): bigint;
32
+ //# sourceMappingURL=units.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"units.d.ts","sourceRoot":"","sources":["../../src/lib/units.ts"],"names":[],"mappings":"AAEA;;;;;;;;;;;;;GAaG;AACH,wBAAgB,WAAW,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,MAAM,CAkBnE;AAED;;;GAGG;AACH,wBAAgB,YAAY,CAAC,GAAG,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,MAAM,CAGnF;AAED;;;;;;;;;GASG;AACH,wBAAgB,MAAM,CAAC,UAAU,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,MAAM,CAcnE"}
@@ -0,0 +1,64 @@
1
+ import { parseUnits, formatUnits } from "ethers";
2
+ /**
3
+ * Dual-mode token-amount parsing shared by every tool that accepts an amount.
4
+ *
5
+ * Rules (back-compat by construction):
6
+ * - digits-only string ("12500000000000000000") → treated as RAW smallest
7
+ * units (wei) and returned unchanged. This is what every pre-0.22 caller
8
+ * passed, so existing integrations keep byte-identical behavior.
9
+ * - decimal string ("12.5") → HUMAN units, scaled by the token's real
10
+ * `decimals` (never assume 18 — mirrors the frontend, which calls
11
+ * `parseUnits(amount, token.decimals)` per token).
12
+ *
13
+ * Anything else (negative, hex, scientific notation, thousands separators)
14
+ * is rejected with an example of both accepted forms.
15
+ */
16
+ export function parseAmount(input, decimals) {
17
+ const s = input.trim();
18
+ if (/^\d+$/.test(s))
19
+ return BigInt(s);
20
+ if (/^\d+\.\d+$/.test(s)) {
21
+ const frac = s.split(".")[1];
22
+ if (frac.length > decimals) {
23
+ throw new Error(`Amount '${s}' has ${frac.length} decimal places but the token only has ${decimals} — ` +
24
+ `it cannot be represented on-chain. Use at most ${decimals} decimal places.`);
25
+ }
26
+ return parseUnits(s, decimals);
27
+ }
28
+ throw new Error(`Cannot parse amount '${input}'. Pass either raw smallest units as a digits-only string ` +
29
+ `(e.g. '12500000000000000000') or human units with a decimal point (e.g. '12.5', scaled by the ` +
30
+ `token's ${decimals} decimals).`);
31
+ }
32
+ /**
33
+ * Human-readable rendering of a raw token amount — used by error messages so
34
+ * the model/user never has to convert wei by hand. "12.5 GEC (raw 12500…000)".
35
+ */
36
+ export function formatAmount(raw, decimals, symbol) {
37
+ const human = formatUnits(raw, decimals);
38
+ return `${human}${symbol ? ` ${symbol}` : ""} (raw ${raw.toString()})`;
39
+ }
40
+ /**
41
+ * Convert an 18-decimal-normalized amount to a token's native raw units —
42
+ * mirrors the protocol's from18Safe (DecimalsConverter). Used by the OTC buy
43
+ * preflight: `TokenSaleProposal.buy` takes the 18-dec-normalized amount but
44
+ * `transferFrom` pulls the converted RAW amount, so balance checks and the
45
+ * exact-amount approve must use this value (R9).
46
+ *
47
+ * Throws on precision loss for <18-dec tokens (the contract's Safe variant
48
+ * rejects those too — better to fail here with a readable message).
49
+ */
50
+ export function from18(normalized, decimals) {
51
+ if (decimals === 18)
52
+ return normalized;
53
+ if (decimals < 18) {
54
+ const factor = 10n ** BigInt(18 - decimals);
55
+ if (normalized % factor !== 0n) {
56
+ throw new Error(`Amount ${normalized.toString()} (18-dec normalized) cannot be represented in the payment token's ` +
57
+ `${decimals} decimals without precision loss — the contract's from18Safe would revert. ` +
58
+ `Use a multiple of 10^${18 - decimals}.`);
59
+ }
60
+ return normalized / factor;
61
+ }
62
+ return normalized * 10n ** BigInt(decimals - 18);
63
+ }
64
+ //# sourceMappingURL=units.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"units.js","sourceRoot":"","sources":["../../src/lib/units.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,WAAW,EAAE,MAAM,QAAQ,CAAC;AAEjD;;;;;;;;;;;;;GAaG;AACH,MAAM,UAAU,WAAW,CAAC,KAAa,EAAE,QAAgB;IACzD,MAAM,CAAC,GAAG,KAAK,CAAC,IAAI,EAAE,CAAC;IACvB,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC;QAAE,OAAO,MAAM,CAAC,CAAC,CAAC,CAAC;IACtC,IAAI,YAAY,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC;QACzB,MAAM,IAAI,GAAG,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAE,CAAC;QAC9B,IAAI,IAAI,CAAC,MAAM,GAAG,QAAQ,EAAE,CAAC;YAC3B,MAAM,IAAI,KAAK,CACb,WAAW,CAAC,SAAS,IAAI,CAAC,MAAM,0CAA0C,QAAQ,KAAK;gBACrF,kDAAkD,QAAQ,kBAAkB,CAC/E,CAAC;QACJ,CAAC;QACD,OAAO,UAAU,CAAC,CAAC,EAAE,QAAQ,CAAC,CAAC;IACjC,CAAC;IACD,MAAM,IAAI,KAAK,CACb,wBAAwB,KAAK,4DAA4D;QACvF,gGAAgG;QAChG,WAAW,QAAQ,aAAa,CACnC,CAAC;AACJ,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,YAAY,CAAC,GAAW,EAAE,QAAgB,EAAE,MAAe;IACzE,MAAM,KAAK,GAAG,WAAW,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAC;IACzC,OAAO,GAAG,KAAK,GAAG,MAAM,CAAC,CAAC,CAAC,IAAI,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,SAAS,GAAG,CAAC,QAAQ,EAAE,GAAG,CAAC;AACzE,CAAC;AAED;;;;;;;;;GASG;AACH,MAAM,UAAU,MAAM,CAAC,UAAkB,EAAE,QAAgB;IACzD,IAAI,QAAQ,KAAK,EAAE;QAAE,OAAO,UAAU,CAAC;IACvC,IAAI,QAAQ,GAAG,EAAE,EAAE,CAAC;QAClB,MAAM,MAAM,GAAG,GAAG,IAAI,MAAM,CAAC,EAAE,GAAG,QAAQ,CAAC,CAAC;QAC5C,IAAI,UAAU,GAAG,MAAM,KAAK,EAAE,EAAE,CAAC;YAC/B,MAAM,IAAI,KAAK,CACb,UAAU,UAAU,CAAC,QAAQ,EAAE,oEAAoE;gBACjG,GAAG,QAAQ,6EAA6E;gBACxF,wBAAwB,EAAE,GAAG,QAAQ,GAAG,CAC3C,CAAC;QACJ,CAAC;QACD,OAAO,UAAU,GAAG,MAAM,CAAC;IAC7B,CAAC;IACD,OAAO,UAAU,GAAG,GAAG,IAAI,MAAM,CAAC,QAAQ,GAAG,EAAE,CAAC,CAAC;AACnD,CAAC"}
package/dist/rpc.d.ts CHANGED
@@ -1,6 +1,34 @@
1
1
  import { JsonRpcProvider } from "ethers";
2
- import { type DexeConfig } from "./config.js";
2
+ import { type ChainConfig, type DexeConfig } from "./config.js";
3
3
  import type { EnvGuardResult } from "./lib/requireEnv.js";
4
+ export declare function isTransportError(err: unknown): boolean;
5
+ /**
6
+ * JsonRpcProvider with transport-failure resilience (R1):
7
+ * - retries transport errors (429 / timeout / 5xx / DNS) with backoff, then
8
+ * rotates through the chain's fallback URLs;
9
+ * - `eth_sendRawTransaction` is NEVER retried or rotated — resubmitting a
10
+ * broadcast on flaky transport risks confusing "already known" states; the
11
+ * composite layer owns re-run semantics for broadcasts;
12
+ * - contract reverts (CALL_EXCEPTION) pass through untouched on the first
13
+ * attempt — they are results, not failures;
14
+ * - when the chain is served by the zero-config public fallback, the final
15
+ * transport failure is annotated with a configure-your-own-RPC hint.
16
+ *
17
+ * In ethers v6 every read (`call`, `getBalance`, receipt polling, multicall's
18
+ * `eth_call`) routes through `send`, so this one override covers all paths.
19
+ */
20
+ export declare class ResilientRpcProvider extends JsonRpcProvider {
21
+ #private;
22
+ constructor(urls: string[], chainId: number, annotatePublicHint: boolean);
23
+ send(method: string, params: Array<any>): Promise<any>;
24
+ }
25
+ /**
26
+ * THE provider factory — every module that needs a provider for a resolved
27
+ * chain must come through here (RpcProvider reads, SignerManager broadcasts,
28
+ * dexe_tx_send / dexe_tx_status lookups), so retry + failover + the public-RPC
29
+ * hint behave identically everywhere (the old signer path bypassed both).
30
+ */
31
+ export declare function createChainProvider(chain: ChainConfig, config: DexeConfig): JsonRpcProvider;
4
32
  /**
5
33
  * Lazy ethers v6 provider factory. Gov tools that need an RPC endpoint call
6
34
  * `requireProvider(chainId?)`; tools that don't (decode_calldata,
package/dist/rpc.d.ts.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"rpc.d.ts","sourceRoot":"","sources":["../src/rpc.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,QAAQ,CAAC;AACzC,OAAO,EAAgB,KAAK,UAAU,EAAE,MAAM,aAAa,CAAC;AAC5D,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAgD1D;;;;;;;GAOG;AACH,qBAAa,WAAW;IAGV,OAAO,CAAC,QAAQ,CAAC,MAAM;IAFnC,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAsC;gBAE/B,MAAM,EAAE,UAAU;IAE/C,eAAe,CAAC,OAAO,CAAC,EAAE,MAAM,GAAG,eAAe;IAclD;;;;;OAKG;IACH,WAAW,CAAC,OAAO,CAAC,EAAE,MAAM,GAAG,cAAc,CAAC,eAAe,CAAC;IAa9D,yEAAyE;IACzE,cAAc,CAAC,OAAO,CAAC,EAAE,MAAM,GAAG,MAAM;CAGzC"}
1
+ {"version":3,"file":"rpc.d.ts","sourceRoot":"","sources":["../src/rpc.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAW,MAAM,QAAQ,CAAC;AAClD,OAAO,EAAgB,KAAK,WAAW,EAAE,KAAK,UAAU,EAAE,MAAM,aAAa,CAAC;AAC9E,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAW1D,wBAAgB,gBAAgB,CAAC,GAAG,EAAE,OAAO,GAAG,OAAO,CAMtD;AAaD;;;;;;;;;;;;;;GAcG;AACH,qBAAa,oBAAqB,SAAQ,eAAe;;gBAK3C,IAAI,EAAE,MAAM,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,kBAAkB,EAAE,OAAO;IAoBzD,IAAI,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK,CAAC,GAAG,CAAC,GAAG,OAAO,CAAC,GAAG,CAAC;CAuCtE;AAED;;;;;GAKG;AACH,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,WAAW,EAAE,MAAM,EAAE,UAAU,GAAG,eAAe,CAM3F;AAED;;;;;;;GAOG;AACH,qBAAa,WAAW;IAGV,OAAO,CAAC,QAAQ,CAAC,MAAM;IAFnC,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAsC;gBAE/B,MAAM,EAAE,UAAU;IAE/C,eAAe,CAAC,OAAO,CAAC,EAAE,MAAM,GAAG,eAAe;IAUlD;;;;;OAKG;IACH,WAAW,CAAC,OAAO,CAAC,EAAE,MAAM,GAAG,cAAc,CAAC,eAAe,CAAC;IAa9D,yEAAyE;IACzE,cAAc,CAAC,OAAO,CAAC,EAAE,MAAM,GAAG,MAAM;CAGzC"}
package/dist/rpc.js CHANGED
@@ -1,4 +1,4 @@
1
- import { JsonRpcProvider } from "ethers";
1
+ import { JsonRpcProvider, Network } from "ethers";
2
2
  import { resolveChain } from "./config.js";
3
3
  import { safeErrorMessage } from "./lib/redact.js";
4
4
  /**
@@ -7,12 +7,12 @@ import { safeErrorMessage } from "./lib/redact.js";
7
7
  * a caller may branch on and must pass through untouched.
8
8
  */
9
9
  const TRANSPORT_ERR_RE = /timeout|ETIMEDOUT|ECONNRESET|ECONNREFUSED|ENOTFOUND|EAI_AGAIN|rate.?limit|\b429\b|\b50[234]\b|could not detect network|SERVER_ERROR|NETWORK_ERROR|TIMEOUT|failed to fetch|fetch failed/i;
10
- function isTransportError(err) {
10
+ export function isTransportError(err) {
11
11
  const code = err?.code;
12
12
  if (code === "TIMEOUT" || code === "SERVER_ERROR" || code === "NETWORK_ERROR")
13
13
  return true;
14
14
  if (code === "CALL_EXCEPTION")
15
- return false; // a real revert — never annotate
15
+ return false; // a real revert — never annotate/retry
16
16
  const msg = err instanceof Error ? err.message : String(err);
17
17
  return TRANSPORT_ERR_RE.test(msg);
18
18
  }
@@ -20,29 +20,97 @@ const PUBLIC_RPC_HINT = "\n\n[hint] this call used the shared PUBLIC BSC RPC, wh
20
20
  "For reliability set your own endpoint in .env — DEXE_RPC_URL_MAINNET (chain 56) / " +
21
21
  "DEXE_RPC_URL_TESTNET (chain 97), e.g. an Alchemy / QuickNode / Ankr URL — then restart " +
22
22
  "(Claude Code: quit + relaunch). Run /dexe-setup for a guided walkthrough.";
23
+ /** Backoff before retry attempt N (ms). Total worst-case wait ≈ 3.9s. */
24
+ const RETRY_DELAYS_MS = [400, 1000, 2500];
25
+ const sleep = (ms) => new Promise((r) => setTimeout(r, ms));
23
26
  /**
24
- * JsonRpcProvider that annotates *transport* failures with a nudge to configure
25
- * a private RPC. Used only for chains served by the zero-config public fallback,
26
- * so users who never set an RPC get an actionable message instead of a bare
27
- * timeout. In ethers v6 every read perform (`call`, `getBalance`, block reads,
28
- * multicall's `eth_call`) routes through `send`, so this one override covers the
29
- * hot read paths. Contract reverts (CALL_EXCEPTION) are excluded and pass through.
27
+ * JsonRpcProvider with transport-failure resilience (R1):
28
+ * - retries transport errors (429 / timeout / 5xx / DNS) with backoff, then
29
+ * rotates through the chain's fallback URLs;
30
+ * - `eth_sendRawTransaction` is NEVER retried or rotated resubmitting a
31
+ * broadcast on flaky transport risks confusing "already known" states; the
32
+ * composite layer owns re-run semantics for broadcasts;
33
+ * - contract reverts (CALL_EXCEPTION) pass through untouched on the first
34
+ * attempt — they are results, not failures;
35
+ * - when the chain is served by the zero-config public fallback, the final
36
+ * transport failure is annotated with a configure-your-own-RPC hint.
37
+ *
38
+ * In ethers v6 every read (`call`, `getBalance`, receipt polling, multicall's
39
+ * `eth_call`) routes through `send`, so this one override covers all paths.
30
40
  */
31
- class PublicRpcProvider extends JsonRpcProvider {
41
+ export class ResilientRpcProvider extends JsonRpcProvider {
42
+ #fallbacks = [];
43
+ #urls;
44
+ #annotatePublicHint;
45
+ constructor(urls, chainId, annotatePublicHint) {
46
+ // staticNetwork: skip per-call eth_chainId detection — fewer requests
47
+ // against rate-limited public nodes, and the chain id is known from config.
48
+ const network = Network.from(chainId);
49
+ super(urls[0], network, { staticNetwork: network });
50
+ this.#urls = urls;
51
+ this.#annotatePublicHint = annotatePublicHint;
52
+ }
53
+ #fallbackAt(i) {
54
+ let p = this.#fallbacks[i];
55
+ if (!p) {
56
+ const network = Network.from(this._network.chainId);
57
+ p = new JsonRpcProvider(this.#urls[i + 1], network, { staticNetwork: network });
58
+ this.#fallbacks[i] = p;
59
+ }
60
+ return p;
61
+ }
32
62
  // eslint-disable-next-line @typescript-eslint/no-explicit-any
33
63
  async send(method, params) {
34
- try {
35
- return await super.send(method, params);
64
+ // Broadcasts: single attempt, primary URL only (see class doc).
65
+ if (method === "eth_sendRawTransaction") {
66
+ try {
67
+ return await super.send(method, params);
68
+ }
69
+ catch (err) {
70
+ throw this.#finalize(err);
71
+ }
36
72
  }
37
- catch (err) {
38
- if (isTransportError(err)) {
39
- const base = safeErrorMessage(err);
40
- throw new Error(base.includes("[hint]") ? base : base + PUBLIC_RPC_HINT);
73
+ // attempt 0 = primary; attempts 1..N alternate across fallback URLs (when
74
+ // present) with backoff. Each URL gets at least one try; the primary gets
75
+ // the retries left over when there are fewer fallbacks than delays.
76
+ let lastErr;
77
+ const totalAttempts = 1 + RETRY_DELAYS_MS.length;
78
+ for (let attempt = 0; attempt < totalAttempts; attempt++) {
79
+ if (attempt > 0)
80
+ await sleep(RETRY_DELAYS_MS[attempt - 1]);
81
+ const fallbackCount = this.#urls.length - 1;
82
+ const useFallback = attempt > 0 && fallbackCount > 0;
83
+ const target = useFallback ? this.#fallbackAt((attempt - 1) % fallbackCount) : undefined;
84
+ try {
85
+ return target
86
+ ? await target.send(method, params)
87
+ : await super.send(method, params);
88
+ }
89
+ catch (err) {
90
+ if (!isTransportError(err))
91
+ throw err;
92
+ lastErr = err;
41
93
  }
42
- throw err;
43
94
  }
95
+ throw this.#finalize(lastErr);
96
+ }
97
+ #finalize(err) {
98
+ if (this.#annotatePublicHint && isTransportError(err)) {
99
+ const base = safeErrorMessage(err);
100
+ return new Error(base.includes("[hint]") ? base : base + PUBLIC_RPC_HINT);
101
+ }
102
+ return err instanceof Error ? err : new Error(safeErrorMessage(err));
44
103
  }
45
104
  }
105
+ /**
106
+ * THE provider factory — every module that needs a provider for a resolved
107
+ * chain must come through here (RpcProvider reads, SignerManager broadcasts,
108
+ * dexe_tx_send / dexe_tx_status lookups), so retry + failover + the public-RPC
109
+ * hint behave identically everywhere (the old signer path bypassed both).
110
+ */
111
+ export function createChainProvider(chain, config) {
112
+ return new ResilientRpcProvider(chain.rpcUrls ?? [chain.rpcUrl], chain.chainId, config.usingPublicRpcFallback);
113
+ }
46
114
  /**
47
115
  * Lazy ethers v6 provider factory. Gov tools that need an RPC endpoint call
48
116
  * `requireProvider(chainId?)`; tools that don't (decode_calldata,
@@ -61,11 +129,7 @@ export class RpcProvider {
61
129
  const chain = resolveChain(this.config, chainId);
62
130
  let provider = this.cache.get(chain.chainId);
63
131
  if (!provider) {
64
- // Wrap with the annotating provider only when this chain is served by the
65
- // zero-config public fallback — a user-configured RPC gets no false nudge.
66
- provider = this.config.usingPublicRpcFallback
67
- ? new PublicRpcProvider(chain.rpcUrl)
68
- : new JsonRpcProvider(chain.rpcUrl);
132
+ provider = createChainProvider(chain, this.config);
69
133
  this.cache.set(chain.chainId, provider);
70
134
  }
71
135
  return provider;
package/dist/rpc.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"rpc.js","sourceRoot":"","sources":["../src/rpc.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"rpc.js","sourceRoot":"","sources":["../src/rpc.ts"],"names":[],"mappings":"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"}