MegaETH outbound: 'Nonce gap too high for low balance account. Gap: 15, Min balance required: 0.01 ETH' blocks all outbound from MegaETH for thin-balance wallets #129

Closed
opened 2026-05-01 06:50:46 +00:00 by Brouie · 3 comments
Brouie commented 2026-05-01 06:50:46 +00:00 (Migrated from gitlab.com)

Attempting MegaETH → Solana TDEC bridge from wallet 0xc46b15...80650 (balance 0.0025 ETH on MegaETH, sufficient for tx gas alone) reverts with:

The contract function 'approve' reverted with the following reason:
Nonce gap too high for low balance account. Gap: 15, Min balance required: 0.01 ETH

This appears to be MegaETH's 98/100 gas forwarding / nonce-gap protection. Bridge frontend should either (a) detect low-balance state pre-submit and gate the BRIDGE button with a clear 'Need 0.01 ETH minimum on MegaETH for outbound' helper text, or (b) document this prerequisite in the bridge UX.

Currently surfaces as a viem-level revert with raw chain error, which is opaque to users.

P2 medium UX — same family as #127 (silent stuck) but at the approve-call layer. cc @PlasticDigits

Attempting MegaETH → Solana TDEC bridge from wallet 0xc46b15...80650 (balance 0.0025 ETH on MegaETH, sufficient for tx gas alone) reverts with: ``` The contract function 'approve' reverted with the following reason: Nonce gap too high for low balance account. Gap: 15, Min balance required: 0.01 ETH ``` This appears to be MegaETH's 98/100 gas forwarding / nonce-gap protection. Bridge frontend should either (a) detect low-balance state pre-submit and gate the BRIDGE button with a clear 'Need 0.01 ETH minimum on MegaETH for outbound' helper text, or (b) document this prerequisite in the bridge UX. Currently surfaces as a viem-level revert with raw chain error, which is opaque to users. P2 medium UX — same family as #127 (silent stuck) but at the approve-call layer. cc @PlasticDigits
Brouie commented 2026-05-01 06:56:54 +00:00 (Migrated from gitlab.com)

Per @PlasticDigits TG: this is MetaMask sending wrong nonce, not a bridge issue. After heavy network-switching mid-session (BSC -> MegaETH -> opBNB -> Terra -> Solana etc) MetaMask's pending-nonce tracker drifts out of sync with chain state on MegaETH specifically. Standard fix is remove + re-add the network in MetaMask to re-derive nonce from chain.

Closing as wallet-state issue, not bridge defect. Will reopen if reproducible after MM nonce reset.

Per @PlasticDigits TG: this is MetaMask sending wrong nonce, not a bridge issue. After heavy network-switching mid-session (BSC -> MegaETH -> opBNB -> Terra -> Solana etc) MetaMask's pending-nonce tracker drifts out of sync with chain state on MegaETH specifically. Standard fix is remove + re-add the network in MetaMask to re-derive nonce from chain. Closing as wallet-state issue, not bridge defect. Will reopen if reproducible after MM nonce reset.
Brouie (Migrated from gitlab.com) closed this issue 2026-05-01 06:56:56 +00:00
PlasticDigits commented 2026-05-01 06:58:09 +00:00 (Migrated from gitlab.com)

@Brouie Please file this bug with metamask, low priority

@Brouie Please file this bug with metamask, low priority
Brouie commented 2026-05-01 07:58:34 +00:00 (Migrated from gitlab.com)

mentioned in issue #123

mentioned in issue #123
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
code/cl8y-bridge-monorepo#129
No description provided.