floating / frame

System-wide Web3 for macOS, Windows and Linux
https://frame.sh
GNU General Public License v3.0
1.05k stars 142 forks source link

Enable replacing existing transaction via reusing nonce #1673

Closed droid192 closed 9 months ago

droid192 commented 9 months ago

latest desktop app throws error on default eth account when trying to cancel a tx with too low gas. Crosschecking with etherscan the nonce in the replacement tx on UI is correct but despite fails with:

15:01:03.708 › setTxSigned d..4
15:01:04.067 › { message: 'Nonce too low', code: -32000 }
15:01:04.069 › setRequestError d..4
15:01:04.070 › tray:replaceTx Error Error: Nonce too low
    at Object.<anonymous> (/tmp/.mount_aa-fraigWOwU/resources/app.asar/compiled/main/accounts/index.js:166:35)
    at res (/tmp/.mount_aa-fraigWOwU/resources/app.asar/compiled/main/provider/index.js:250:45)
    at resError (/tmp/.mount_aa-fraigWOwU/resources/app.asar/compiled/main/provider/helpers.js:113:5)
    at connection.send.type (/tmp/.mount_aa-fraigWOwU/resources/app.asar/compiled/main/provider/index.js:287:60)
    at resError (/tmp/.mount_aa-fraigWOwU/resources/app.asar/compiled/main/chains/index.js:22:43)
    at /tmp/.mount_aa-fraigWOwU/resources/app.asar/compiled/main/chains/index.js:366:28
    at Provider.sendAsync (/tmp/.mount_aa-fraigWOwU/resources/app.asar/node_modules/ethereum-provider/dist/index.js:255:17)
    at process.processTicksAndRejections (node:internal/process/task_queues:95:5)

I then tried canceling the contract call via NATIVE_TRANSFER of ETH on nonce == the stuck tx nonce, and again errors with nonce too low; Expected behavior is eating any nonce which has not yet been confirmed (thus making this tx replaceable)

image

droid192 commented 9 months ago

issue is the endpoint, after using a different one from https://chainlist.org/ it was fine