coinbase / coinbase/smart-wallet

[Bug]: EIP-1271 Signature Validation Failure on Monad Mainnet (Chain ID 143) for Smart Wallet (Passkey)

Open
#151 4 comments 0 reactions 0 assignees View on GitHub
Dominant language
Solidity
Stars
487
Forks
176
PR merge metrics
No merged PRs in 30d

Description

Description:
I am reporting a critical signing blocker affecting the Coinbase Smart Wallet (biometric/Passkey-based) when interacting with the Monad Mainnet (Chain ID 143). While the wallet correctly indexes and displays balances on the network, it is currently unable to sign or broadcast any transactions, effectively locking user assets.

Environment:
Wallet Type: Coinbase Smart Wallet (ERC-4337 based, no seed phrase).
Platform: Android / iOS (Mobile App).
Network: Monad Mainnet (Chain ID 143).
Connection Method: In-app DApp Browser and WalletConnect.

Steps to Reproduce:
Configure Monad Mainnet as a Custom Network (since it is not yet in the native network filter list).
Deposit MON tokens from Coinbase Exchange to the Smart Wallet address.
The balance (approx. 44,275.042 MON) is correctly displayed in the UI.
Attempt to "Send" tokens back to the Exchange or interact with a DApp (e.g., MonadVision) to sign a message.
The app fails immediately with a "Something went wrong" generic error before the biometric/Passkey prompt appears.

Technical Analysis:
This issue appears to be a failure in EIP-1271 (Standard Signature Validation Method for Smart Accounts). The Smart Wallet's signature validation logic is likely not deployed or correctly initialized on Chain 143. Because the Smart Wallet relies on a smart contract to validate signatures rather than a local private key, the absence of the validation contract on the Monad network prevents the Passkey from generating a valid handshake.

Actual Behavior:
The wallet fails to trigger the signing process, returning an RPC or UI error, leaving the funds inaccessible.

Expected Behavior:
The Smart Wallet should trigger the Passkey biometric authentication and successfully validate the signature via the EIP-1271 contract on the Monad network, allowing for transaction broadcasting.

![Image](https://github.com/user-attachments/assets/5ba19ec9-5016-47bf-a12c-bb469aed192a)

![Image](https://github.com/user-attachments/assets/05d62a53-7baa-466d-88b7-69dfc4a232bf)

Additional Context:
Support agent Sumit has already escalated this to the engineering team.
Facebook support confirmed that "Smart Wallet does not currently support the Monad network for transactions."
This is a critical issue as Smart Wallet users cannot export private keys to migrate to other providers (e.g., MetaMask).

Contributor guide

No contributing guide indexed for this repository

Research direction

Start with the Send flow in the mobile app and the in-app DApp Browser or WalletConnect entry points, then verify Chain ID 143 support and the EIP-1271 validation path for the Coinbase Smart Wallet. Check whether the validation contract is deployed and initialized on Monad Mainnet. Done means Passkey authentication and transaction broadcasting work for the reported wallet actions.

Written by the indexing model from the issue text.

Assessment

Tech stack
solidity
Domain
blockchain
Issue type
Bug
Difficulty
5/5
Estimated time
Over a week
Activity status
Quiet
Clarity
Needs clarification
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.