Panic Mode: Scope and Limits
What This Covers
Panic mode is the migration feature in MovingWallet. This post documents exactly what it does, what it does not do, and what risks users should be aware of before using it.
Technical Detail
Panic mode scans a connected wallet across four networks (Ethereum mainnet, Polygon, Optimism, Arbitrum) and displays detected assets. It supports three asset categories:
- Native tokens (ETH, POL, etc.) — queried via
eth_getBalance - ERC-20 tokens — queried via
balanceOfon specific contract addresses passed as parameters - NFTs (ERC-721, ERC-1155) — detected through the NFT adapter
Each transfer is a single transaction constructed by MovingWallet and signed by the user in their connected wallet. Transactions are not batched. Each one requires individual approval in the wallet application.
The source wallet must be connected via a supported provider (WalletConnect, MetaMask, or any RainbowKit-compatible wallet). The destination address is entered manually by the user. MovingWallet does not validate whether the destination address is controlled by the user.
Code references: src/features/panic/ (flow logic), src/app/api/assets/route.ts (asset query), src/core/services/rpc/getRpcTransport.ts (RPC transport).
Known Limitations
- No automatic token discovery. ERC-20 detection requires known contract addresses. Tokens not in the query set will not appear.
- No support for non-standard interfaces. Tokens that do not implement standard ERC-20/721/1155 methods will not be detected.
- Four chains only. Assets on chains other than Ethereum (1), Polygon (137), Optimism (10), and Arbitrum (42161) are not visible.
- No batching. Users must sign each transfer individually. For wallets with many assets, this is slow.
- No destination validation. MovingWallet does not verify that the destination address is correct, accessible, or owned by the user.
- No gas estimation guarantees. Gas costs depend on network conditions at time of execution.
Risks
- Assets may exist on the connected wallet that panic mode does not detect. Users should verify independently using a block explorer (Etherscan, Polygonscan, etc.).
- Sending assets to an incorrect destination address is irreversible. MovingWallet cannot recover mis-sent funds.
- Network congestion may cause transactions to fail or cost more than expected.
- The word "panic" may create urgency. Users should verify each transaction before signing regardless of time pressure.
Disclaimer: This is technical documentation, not financial advice. MovingWallet does not guarantee asset completeness, transaction success, or protection against loss. Users are responsible for verifying all operations independently.