dexe-mcp 0.21.0 → 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.
- package/CHANGELOG.md +88 -0
- package/README.md +2 -1
- package/dexe-plugin/skills/dexe-create-dao/SKILL.md +8 -0
- package/dexe-plugin/skills/dexe-create-proposal/SKILL.md +26 -5
- package/dexe-plugin/skills/dexe-otc/SKILL.md +5 -0
- package/dexe-plugin/skills/dexe-vote-execute/SKILL.md +16 -3
- package/dist/config.d.ts +7 -0
- package/dist/config.d.ts.map +1 -1
- package/dist/config.js +49 -9
- package/dist/config.js.map +1 -1
- package/dist/env/schema.d.ts +27 -6
- package/dist/env/schema.d.ts.map +1 -1
- package/dist/env/schema.js +36 -6
- package/dist/env/schema.js.map +1 -1
- package/dist/index.js +33 -6
- package/dist/index.js.map +1 -1
- package/dist/lib/errors.d.ts +33 -0
- package/dist/lib/errors.d.ts.map +1 -0
- package/dist/lib/errors.js +65 -0
- package/dist/lib/errors.js.map +1 -0
- package/dist/lib/params.d.ts +8 -0
- package/dist/lib/params.d.ts.map +1 -0
- package/dist/lib/params.js +14 -0
- package/dist/lib/params.js.map +1 -0
- package/dist/lib/proposalBuilders.d.ts +30 -2
- package/dist/lib/proposalBuilders.d.ts.map +1 -1
- package/dist/lib/proposalBuilders.js +583 -17
- package/dist/lib/proposalBuilders.js.map +1 -1
- package/dist/lib/requireEnv.d.ts.map +1 -1
- package/dist/lib/requireEnv.js +7 -4
- package/dist/lib/requireEnv.js.map +1 -1
- package/dist/lib/signer.d.ts.map +1 -1
- package/dist/lib/signer.js +7 -2
- package/dist/lib/signer.js.map +1 -1
- package/dist/lib/txWait.d.ts +28 -0
- package/dist/lib/txWait.d.ts.map +1 -0
- package/dist/lib/txWait.js +63 -0
- package/dist/lib/txWait.js.map +1 -0
- package/dist/lib/units.d.ts +32 -0
- package/dist/lib/units.d.ts.map +1 -0
- package/dist/lib/units.js +64 -0
- package/dist/lib/units.js.map +1 -0
- package/dist/rpc.d.ts +29 -1
- package/dist/rpc.d.ts.map +1 -1
- package/dist/rpc.js +86 -22
- package/dist/rpc.js.map +1 -1
- package/dist/tools/dao.d.ts.map +1 -1
- package/dist/tools/dao.js +16 -12
- package/dist/tools/dao.js.map +1 -1
- package/dist/tools/daoCreate.d.ts.map +1 -1
- package/dist/tools/daoCreate.js +13 -2
- package/dist/tools/daoCreate.js.map +1 -1
- package/dist/tools/flow.d.ts +28 -1
- package/dist/tools/flow.d.ts.map +1 -1
- package/dist/tools/flow.js +368 -111
- package/dist/tools/flow.js.map +1 -1
- package/dist/tools/gate.js +2 -2
- package/dist/tools/gov.d.ts.map +1 -1
- package/dist/tools/gov.js +17 -4
- package/dist/tools/gov.js.map +1 -1
- package/dist/tools/inbox.d.ts.map +1 -1
- package/dist/tools/inbox.js +4 -2
- package/dist/tools/inbox.js.map +1 -1
- package/dist/tools/operationalContext.d.ts.map +1 -1
- package/dist/tools/operationalContext.js +39 -5
- package/dist/tools/operationalContext.js.map +1 -1
- package/dist/tools/otc.d.ts.map +1 -1
- package/dist/tools/otc.js +53 -13
- package/dist/tools/otc.js.map +1 -1
- package/dist/tools/predict.d.ts.map +1 -1
- package/dist/tools/predict.js +7 -4
- package/dist/tools/predict.js.map +1 -1
- package/dist/tools/proposal.d.ts.map +1 -1
- package/dist/tools/proposal.js +8 -4
- package/dist/tools/proposal.js.map +1 -1
- package/dist/tools/proposalBuild.d.ts +1 -0
- package/dist/tools/proposalBuild.d.ts.map +1 -1
- package/dist/tools/proposalBuild.js +2 -1
- package/dist/tools/proposalBuild.js.map +1 -1
- package/dist/tools/proposalBuildComplex.d.ts +7 -0
- package/dist/tools/proposalBuildComplex.d.ts.map +1 -1
- package/dist/tools/proposalBuildComplex.js +7 -7
- package/dist/tools/proposalBuildComplex.js.map +1 -1
- package/dist/tools/proposalBuildInternal.d.ts +21 -0
- package/dist/tools/proposalBuildInternal.d.ts.map +1 -1
- package/dist/tools/proposalBuildInternal.js +1 -1
- package/dist/tools/proposalBuildInternal.js.map +1 -1
- package/dist/tools/proposalBuildMore.d.ts +2 -0
- package/dist/tools/proposalBuildMore.d.ts.map +1 -1
- package/dist/tools/proposalBuildMore.js +2 -2
- package/dist/tools/proposalBuildMore.js.map +1 -1
- package/dist/tools/read.d.ts.map +1 -1
- package/dist/tools/read.js +25 -16
- package/dist/tools/read.js.map +1 -1
- package/dist/tools/subgraph.d.ts.map +1 -1
- package/dist/tools/subgraph.js +5 -3
- package/dist/tools/subgraph.js.map +1 -1
- package/dist/tools/txSend.d.ts.map +1 -1
- package/dist/tools/txSend.js +46 -6
- package/dist/tools/txSend.js.map +1 -1
- package/dist/tools/vote.d.ts.map +1 -1
- package/dist/tools/vote.js +7 -4
- package/dist/tools/vote.js.map +1 -1
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"proposalBuilders.js","sourceRoot":"","sources":["../../src/lib/proposalBuilders.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AACH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,SAAS,EAAE,SAAS,EAAE,WAAW,EAAE,MAAM,QAAQ,CAAC;AAE3D,OAAO,EAAE,cAAc,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAChE,OAAO,EAAE,qBAAqB,EAAE,sBAAsB,EAAE,MAAM,yBAAyB,CAAC;AACxF,OAAO,EACL,sBAAsB,EACtB,eAAe,GAChB,MAAM,+BAA+B,CAAC;AACvC,OAAO,EACL,0BAA0B,EAC1B,UAAU,GACX,MAAM,kCAAkC,CAAC;AAE1C,6EAA6E;AAE7E,MAAM,kBAAkB,GAAG,IAAI,SAAS,CAAC;IACvC,8DAA8D;IAC9D,kEAAkE;CACnE,CAAC,CAAC;AACH,MAAM,mBAAmB,GAAG,IAAI,SAAS,CAAC;IACxC,kEAAkE;CACnE,CAAC,CAAC;AACH,MAAM,gBAAgB,GAAG,IAAI,SAAS,CAAC;IACrC,wbAAwb;IACxb,0aAA0a;CAC3a,CAAC,CAAC;AACH,MAAM,cAAc,GAAG,IAAI,SAAS,CAAC;IACnC,uCAAuC;IACvC,6BAA6B;CAC9B,CAAC,CAAC;AACH,MAAM,yBAAyB,GAAG,IAAI,SAAS,CAAC;IAC9C,qEAAqE;CACtE,CAAC,CAAC;AA2BH,SAAS,OAAO,CAAC,eAAwC;IACvD,OAAO,EAAE,OAAO,EAAE,EAAE,eAAe,EAAE,cAAc,EAAE,EAAE,EAAE,EAAE,CAAC;AAC9D,CAAC;AAED,iCAAiC;AAEjC,MAAM,oBAAoB,GAAmB;IAC3C,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC;QACf,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,QAAQ,CAAC,mDAAmD,CAAC;QAC3F,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,mBAAmB,CAAC;QACnD,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,+BAA+B,CAAC;QAC5D,QAAQ,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,QAAQ,CAAC,kCAAkC,CAAC;KAClF,CAAC;IACF,KAAK,CAAC,KAAK,CAAC,GAAG,EAAE,EAAE,GAAG,EAAE;QACtB,MAAM,CAAC,GAAG,GAA8E,CAAC;QACzF,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC;YAAE,MAAM,IAAI,KAAK,CAAC,sBAAsB,CAAC,CAAC,SAAS,EAAE,CAAC,CAAC;QAClF,IAAI,CAAC,CAAC,QAAQ,EAAE,CAAC;YACf,OAAO;gBACL,YAAY,EAAE,CAAC,EAAE,QAAQ,EAAE,CAAC,CAAC,SAAS,EAAE,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC;gBACtE,QAAQ,EAAE,eAAe;gBACzB,aAAa,EAAE,OAAO,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,eAAe,EAAE,CAAC,CAAC,SAAS,EAAE,CAAC,EAAE,YAAY,EAAE,WAAW,EAAE,CAAC;gBACtH,OAAO,EAAE,qBAAqB,CAAC,CAAC,SAAS,KAAK,CAAC,CAAC,MAAM,OAAO;aAC9D,CAAC;QACJ,CAAC;QACD,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC;YAAE,MAAM,IAAI,KAAK,CAAC,kBAAkB,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC;QACtE,MAAM,EAAE,GAAG,MAAM,cAAc,CAAC,GAAG,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,SAAS,CAAC,CAAC;QAClE,IAAI,EAAE,CAAC,MAAM,KAAK,aAAa;YAAE,MAAM,IAAI,KAAK,CAAC,cAAc,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC;QACvF,MAAM,IAAI,GAAG,kBAAkB,CAAC,kBAAkB,CAAC,UAAU,EAAE,CAAC,CAAC,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;QAChG,OAAO;YACL,YAAY,EAAE,CAAC,EAAE,QAAQ,EAAE,CAAC,CAAC,KAAK,EAAE,KAAK,EAAE,GAAG,EAAE,IAAI,EAAE,CAAC;YACvD,QAAQ,EAAE,eAAe;YACzB,aAAa,EAAE,OAAO,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,eAAe,EAAE,CAAC,CAAC,SAAS,EAAE,CAAC,EAAE,YAAY,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC;YAClH,OAAO,EAAE,SAAS,CAAC,CAAC,KAAK,cAAc,CAAC,CAAC,SAAS,KAAK,CAAC,CAAC,MAAM,GAAG;SACnE,CAAC;IACJ,CAAC;CACF,CAAC;AAEF,MAAM,uBAAuB,GAAmB;IAC9C,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC;QACf,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,+BAA+B,CAAC;QAC9D,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,QAAQ,CAAC,0CAA0C,CAAC;QAClF,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,QAAQ,CAAC,2CAA2C,CAAC;QACrF,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,QAAQ,CAAC,uCAAuC,CAAC;QACpF,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,QAAQ,CAAC,kCAAkC,CAAC;KACrF,CAAC;IACF,KAAK,CAAC,KAAK,CAAC,GAAG,EAAE,EAAE,GAAG,EAAE,OAAO,EAAE;QAC/B,MAAM,CAAC,GAAG,GAAgG,CAAC;QAC3G,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,QAAQ,CAAC;YAAE,MAAM,IAAI,KAAK,CAAC,qBAAqB,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAC;QAC/E,MAAM,SAAS,GAAG,CAAC,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,IAAI,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,EAAE,CAAC;QAC9D,MAAM,QAAQ,GAAG,CAAC,CAAC,UAAU,CAAC,MAAM,GAAG,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC;QAChE,IAAI,CAAC,SAAS,IAAI,CAAC,QAAQ,EAAE,CAAC;YAC5B,MAAM,IAAI,KAAK,CAAC,2FAA2F,CAAC,CAAC;QAC/G,CAAC;QACD,IAAI,SAAS,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC;YAAE,MAAM,IAAI,KAAK,CAAC,kBAAkB,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC;QACnF,IAAI,QAAQ,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,UAAU,CAAC;YAAE,MAAM,IAAI,KAAK,CAAC,uBAAuB,CAAC,CAAC,UAAU,EAAE,CAAC,CAAC;QACjG,8EAA8E;QAC9E,4EAA4E;QAC5E,wEAAwE;QACxE,MAAM,YAAY,GAAyD,EAAE,CAAC;QAC9E,IAAI,SAAS,EAAE,CAAC;YACd,MAAM,EAAE,GAAG,MAAM,cAAc,CAAC,GAAG,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC;YACjE,IAAI,EAAE,CAAC,MAAM,KAAK,aAAa;gBAAE,MAAM,IAAI,KAAK,CAAC,cAAc,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC;YACtF,YAAY,CAAC,IAAI,CAAC;gBAChB,QAAQ,EAAE,CAAC,CAAC,KAAK;gBACjB,KAAK,EAAE,GAAG;gBACV,IAAI,EAAE,kBAAkB,CAAC,kBAAkB,CAAC,UAAU,EAAE,CAAC,CAAC,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC;aACxF,CAAC,CAAC;QACL,CAAC;QACD,IAAI,QAAQ,EAAE,CAAC;YACb,KAAK,MAAM,EAAE,IAAI,CAAC,CAAC,MAAM,EAAE,CAAC;gBAC1B,YAAY,CAAC,IAAI,CAAC;oBAChB,QAAQ,EAAE,CAAC,CAAC,UAAU;oBACtB,KAAK,EAAE,GAAG;oBACV,IAAI,EAAE,mBAAmB,CAAC,kBAAkB,CAAC,cAAc,EAAE,CAAC,OAAO,EAAE,CAAC,CAAC,QAAQ,EAAE,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC;iBAChG,CAAC,CAAC;YACL,CAAC;QACH,CAAC;QACD,OAAO;YACL,YAAY;YACZ,QAAQ,EAAE,iBAAiB;YAC3B,aAAa,EAAE,OAAO,CAAC,EAAE,QAAQ,EAAE,CAAC,CAAC,QAAQ,EAAE,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,UAAU,EAAE,CAAC,CAAC,UAAU,EAAE,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC;YAC9H,OAAO,EAAE,uBAAuB,CAAC,CAAC,QAAQ,KAAK,YAAY,CAAC,MAAM,UAAU,YAAY,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,GAAG;SACpH,CAAC;IACJ,CAAC;CACF,CAAC;AAEF,MAAM,2BAA2B,GAAmB;IAClD,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC;QACf,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,sDAAsD,CAAC;QACxF,QAAQ,EAAE,CAAC,CAAC,KAAK,CAAC,sBAAsB,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;QAChD,WAAW,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,QAAQ,CAAC,0DAA0D,CAAC;KAClH,CAAC;IACF,KAAK,CAAC,KAAK,CAAC,GAAG;QACb,MAAM,CAAC,GAAG,GAAyG,CAAC;QACpH,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,WAAW,CAAC;YAAE,MAAM,IAAI,KAAK,CAAC,wBAAwB,CAAC,CAAC,WAAW,EAAE,CAAC,CAAC;QACxF,IAAI,CAAC,CAAC,WAAW,CAAC,MAAM,GAAG,CAAC,IAAI,CAAC,CAAC,WAAW,CAAC,MAAM,KAAK,CAAC,CAAC,QAAQ,CAAC,MAAM,EAAE,CAAC;YAC3E,MAAM,IAAI,KAAK,CAAC,4DAA4D,CAAC,CAAC;QAChF,CAAC;QACD,MAAM,MAAM,GAAG,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC;QAC/C,MAAM,MAAM,GAAG,CAAC,CAAC,WAAW,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,aAAa,CAAC;QACzE,MAAM,IAAI,GACR,MAAM,KAAK,cAAc;YACvB,CAAC,CAAC,gBAAgB,CAAC,kBAAkB,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC;YAC5F,CAAC,CAAC,gBAAgB,CAAC,kBAAkB,CAAC,MAAM,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC;QAC5D,OAAO;YACL,YAAY,EAAE,CAAC,EAAE,QAAQ,EAAE,CAAC,CAAC,WAAW,EAAE,KAAK,EAAE,GAAG,EAAE,IAAI,EAAE,CAAC;YAC7D,QAAQ,EAAE,gBAAgB;YAC1B,aAAa,EAAE,OAAO,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,WAAW,EAAE,CAAC,CAAC,WAAW,EAAE,QAAQ,EAAE,CAAC,CAAC,QAAQ,EAAE,CAAC;YAC1F,OAAO,EAAE,2BAA2B,MAAM,KAAK,CAAC,CAAC,QAAQ,CAAC,MAAM,WAAW;SAC5E,CAAC;IACJ,CAAC;CACF,CAAC;AAEF,MAAM,gBAAgB,GAAmB;IACvC,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC;QACf,iBAAiB,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,uFAAuF,CAAC;QAC/H,KAAK,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC;QAClC,aAAa,EAAE,CAAC,CAAC,MAAM,EAAE;QACzB,GAAG,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,OAAO,CAAC,EAAE,CAAC;KAC5B,CAAC;IACF,KAAK,CAAC,KAAK,CAAC,GAAG;QACb,MAAM,CAAC,GAAG,GAAmG,CAAC;QAC9G,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,iBAAiB,CAAC;YAAE,MAAM,IAAI,KAAK,CAAC,8BAA8B,CAAC,CAAC,iBAAiB,EAAE,CAAC,CAAC;QAC1G,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,aAAa,CAAC;YAAE,MAAM,IAAI,KAAK,CAAC,0BAA0B,CAAC,CAAC,aAAa,EAAE,CAAC,CAAC;QAC9F,MAAM,IAAI,GAAG,cAAc,CAAC,kBAAkB,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,aAAa,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;QACjF,OAAO;YACL,YAAY,EAAE,CAAC,EAAE,QAAQ,EAAE,CAAC,CAAC,iBAAiB,EAAE,KAAK,EAAE,GAAG,EAAE,IAAI,EAAE,CAAC;YACnE,QAAQ,EAAE,CAAC,CAAC,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,aAAa;YAC/D,aAAa,EAAE,OAAO,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,aAAa,EAAE,CAAC,CAAC,aAAa,EAAE,iBAAiB,EAAE,CAAC,CAAC,iBAAiB,EAAE,GAAG,EAAE,CAAC,CAAC,GAAG,EAAE,CAAC;YAC9H,OAAO,EAAE,OAAO,CAAC,CAAC,KAAK,aAAa,CAAC,CAAC,aAAa,EAAE;SACtD,CAAC;IACJ,CAAC;CACF,CAAC;AAEF,MAAM,mBAAmB,GAAmB;IAC1C,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC;QACf,iBAAiB,EAAE,CAAC,CAAC,MAAM,EAAE;QAC7B,KAAK,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC;QAClC,aAAa,EAAE,CAAC,CAAC,MAAM,EAAE;KAC1B,CAAC;IACF,KAAK,CAAC,KAAK,CAAC,GAAG;QACb,MAAM,CAAC,GAAG,GAAsF,CAAC;QACjG,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,iBAAiB,CAAC;YAAE,MAAM,IAAI,KAAK,CAAC,8BAA8B,CAAC,CAAC,iBAAiB,EAAE,CAAC,CAAC;QAC1G,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,aAAa,CAAC;YAAE,MAAM,IAAI,KAAK,CAAC,0BAA0B,CAAC,CAAC,aAAa,EAAE,CAAC,CAAC;QAC9F,MAAM,IAAI,GAAG,cAAc,CAAC,kBAAkB,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC;QAC1E,OAAO;YACL,YAAY,EAAE,CAAC,EAAE,QAAQ,EAAE,CAAC,CAAC,iBAAiB,EAAE,KAAK,EAAE,GAAG,EAAE,IAAI,EAAE,CAAC;YACnE,QAAQ,EAAE,CAAC,CAAC,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,qBAAqB,CAAC,CAAC,CAAC,oBAAoB;YAC7E,aAAa,EAAE,OAAO,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,aAAa,EAAE,CAAC,CAAC,aAAa,EAAE,iBAAiB,EAAE,CAAC,CAAC,iBAAiB,EAAE,CAAC;YAClH,OAAO,EAAE,UAAU,CAAC,CAAC,KAAK,aAAa,CAAC,CAAC,aAAa,EAAE;SACzD,CAAC;IACJ,CAAC;CACF,CAAC;AAEF,MAAM,wBAAwB,GAAmB;IAC/C,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC;QACf,oBAAoB,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,8BAA8B,CAAC;QACzE,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,oDAAoD,CAAC;QACrF,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE;QACjB,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE;QAClB,QAAQ,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,QAAQ,CAAC,wDAAwD,CAAC;KACxG,CAAC;IACF,KAAK,CAAC,KAAK,CAAC,GAAG;QACb,MAAM,CAAC,GAAG,GAA6G,CAAC;QACxH,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,oBAAoB,CAAC;YAAE,MAAM,IAAI,KAAK,CAAC,iCAAiC,CAAC,CAAC,oBAAoB,EAAE,CAAC,CAAC;QACnH,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC;YAAE,MAAM,IAAI,KAAK,CAAC,kBAAkB,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC;QACtE,MAAM,WAAW,GAAG,yBAAyB,CAAC,kBAAkB,CAAC,SAAS,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,UAAU,CAAC,EAAE,CAAC,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;QAC/H,MAAM,YAAY,GAAyD,EAAE,CAAC;QAC9E,IAAI,CAAC,CAAC,QAAQ,EAAE,CAAC;YACf,YAAY,CAAC,IAAI,CAAC,EAAE,QAAQ,EAAE,CAAC,CAAC,oBAAoB,EAAE,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,IAAI,EAAE,WAAW,EAAE,CAAC,CAAC;QAC9F,CAAC;aAAM,CAAC;YACN,MAAM,WAAW,GAAG,kBAAkB,CAAC,kBAAkB,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC,oBAAoB,EAAE,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;YACjH,YAAY,CAAC,IAAI,CAAC,EAAE,QAAQ,EAAE,CAAC,CAAC,KAAK,EAAE,KAAK,EAAE,GAAG,EAAE,IAAI,EAAE,WAAW,EAAE,CAAC,CAAC;YACxE,YAAY,CAAC,IAAI,CAAC,EAAE,QAAQ,EAAE,CAAC,CAAC,oBAAoB,EAAE,KAAK,EAAE,GAAG,EAAE,IAAI,EAAE,WAAW,EAAE,CAAC,CAAC;QACzF,CAAC;QACD,OAAO;YACL,YAAY;YACZ,QAAQ,EAAE,mBAAmB;YAC7B,aAAa,EAAE,OAAO,CAAC,EAAE,YAAY,EAAE,CAAC,CAAC,KAAK,EAAE,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,UAAU,EAAE,CAAC,CAAC,UAAU,EAAE,CAAC;YAClG,OAAO,EAAE,wBAAwB,CAAC,CAAC,MAAM,OAAO,CAAC,CAAC,KAAK,kBAAkB,CAAC,CAAC,UAAU,EAAE;SACxF,CAAC;IACJ,CAAC;CACF,CAAC;AAEF,MAAM,gBAAgB,GAAmB;IACvC,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC;QACf,iBAAiB,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,oCAAoC,CAAC;QAC5E,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;QACjC,YAAY,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,QAAQ,CAAC,+DAA+D,CAAC;KAChH,CAAC;IACF,KAAK,CAAC,KAAK,CAAC,GAAG;QACb,MAAM,CAAC,GAAG,GAA4E,CAAC;QACvF,4EAA4E;QAC5E,0EAA0E;QAC1E,MAAM,KAAK,GAAG,0BAA0B,CAAC;YACvC,iBAAiB,EAAE,CAAC,CAAC,iBAAiB;YACtC,KAAK,EAAE,CAAC,CAAC,KAAc;YACvB,YAAY,EAAE,CAAC,CAAC,YAAY;SAC7B,CAAC,CAAC;QACH,MAAM,IAAI,GAAG,KAAK,CAAC,QAAiD,CAAC;QACrE,OAAO;YACL,YAAY,EAAE,KAAK,CAAC,OAAO;YAC3B,QAAQ,EAAE,WAAW;YACrB,aAAa,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE;YAC5D,OAAO,EAAE,sBAAsB,KAAK,CAAC,SAAS,EAAE;SACjD,CAAC;IACJ,CAAC;CACF,CAAC;AAEF,MAAM,gBAAgB,GAAmB;IACvC,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC;QACf,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,mCAAmC,CAAC;QAChE,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,wDAAwD,CAAC;QACxF,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,oCAAoC,CAAC;QACjE,IAAI,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC;QACtC,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC;KAC/B,CAAC;IACF,KAAK,CAAC,KAAK,CAAC,GAAG;QACb,MAAM,CAAC,GAAG,GAA4F,CAAC;QACvG,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC;YAAE,MAAM,IAAI,KAAK,CAAC,mBAAmB,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC;QACzE,MAAM,KAAK,GAAG,IAAI,SAAS,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC;QAC3C,MAAM,OAAO,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE;YAC/B,IAAI,OAAO,CAAC,KAAK,QAAQ,IAAI,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBAC/D,IAAI,CAAC;oBACH,OAAO,MAAM,CAAC,CAAC,CAAC,CAAC;gBACnB,CAAC;gBAAC,MAAM,CAAC;oBACP,OAAO,CAAC,CAAC;gBACX,CAAC;YACH,CAAC;YACD,OAAO,CAAC,CAAC;QACX,CAAC,CAAC,CAAC;QACH,MAAM,IAAI,GAAG,KAAK,CAAC,kBAAkB,CAAC,CAAC,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;QACzD,MAAM,SAAS,GAAG,qBAAqB,CAAC,IAAI,CAAC,CAAC;QAC9C,IAAI,SAAS;YAAE,MAAM,IAAI,KAAK,CAAC,sBAAsB,CAAC,SAAS,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC;QAC5E,OAAO;YACL,YAAY,EAAE,CAAC,EAAE,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,IAAI,EAAE,CAAC;YAC5D,aAAa,EAAE,EAAE;YACjB,OAAO,EAAE,GAAG,CAAC,CAAC,MAAM,IAAI,CAAC,CAAC,MAAM,IAAI,CAAC,CAAC,IAAI,CAAC,MAAM,QAAQ;SAC1D,CAAC;IACJ,CAAC;CACF,CAAC;AAEF;;;GAGG;AACH,MAAM,CAAC,MAAM,iBAAiB,GAAmC;IAC/D,cAAc,EAAE,oBAAoB;IACpC,iBAAiB,EAAE,uBAAuB;IAC1C,sBAAsB,EAAE,2BAA2B;IACnD,UAAU,EAAE,gBAAgB;IAC5B,aAAa,EAAE,mBAAmB;IAClC,kBAAkB,EAAE,wBAAwB;IAC5C,UAAU,EAAE,gBAAgB;IAC5B,UAAU,EAAE,gBAAgB;CAC7B,CAAC;AAEF,mEAAmE;AACnE,MAAM,CAAC,MAAM,mBAAmB,GAAG;IACjC,oBAAoB;IACpB,QAAQ;IACR,GAAG,MAAM,CAAC,IAAI,CAAC,iBAAiB,CAAC;CACzB,CAAC"}
|
|
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,
|
|
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"}
|
package/dist/lib/requireEnv.js
CHANGED
|
@@ -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
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
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,
|
|
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"}
|
package/dist/lib/signer.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"signer.d.ts","sourceRoot":"","sources":["../../src/lib/signer.ts"],"names":[],"mappings":"AAAA,OAAO,
|
|
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"}
|
package/dist/lib/signer.js
CHANGED
|
@@ -1,5 +1,6 @@
|
|
|
1
|
-
import {
|
|
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
|
-
|
|
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
|
}
|
package/dist/lib/signer.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"signer.js","sourceRoot":"","sources":["../../src/lib/signer.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,
|
|
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,
|
|
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
|
|
25
|
-
*
|
|
26
|
-
*
|
|
27
|
-
*
|
|
28
|
-
*
|
|
29
|
-
*
|
|
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
|
|
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
|
-
|
|
35
|
-
|
|
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
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
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
|
-
|
|
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":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,QAAQ,CAAC;
|
|
1
|
+
{"version":3,"file":"rpc.js","sourceRoot":"","sources":["../src/rpc.ts"],"names":[],"mappings":"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"}
|