TGViewer
Solidity Treasures Solidity Treasures @soliditypedia · 4.28K subscribers
Post #574 503
Upgrading an EOA to a smart wallet without losing its address

EIP-7702 lets an EOA set code via a signed authorization, but you still need a storage layout that survives implementation swaps. Base's eip-7702-proxy is a minimal ERC-1967 proxy that delegates a plain EOA to CoinbaseSmartWallet, keeping the account's address and history intact.

Why it matters: the naive approach points the EOA directly at wallet logic, freezing you on one implementation and exposing you to initialization races. Routing through a 1967 proxy gives a stable upgrade slot and a controlled first-init path — the same discipline you already apply to contract upgrades, now for EOAs.

The subtle risk: an unguarded first delegation is front-runnable, so init authorization must be bound to the account. Read the proxy as a reference for that binding.

github.com/base/eip-7702-proxy
@soliditypedia
GitHub GitHub - base/eip-7702-proxy: A lightweight ERC-1967 proxy for EOA upgrades to `CoinbaseSmartWallet` A lightweight ERC-1967 proxy for EOA upgrades to `CoinbaseSmartWallet` - base/eip-7702-proxy
More from @soliditypedia
  1. Sep 22, 2026Deploy at the same address on every chain, without shipping initcode. Plain CREATE2 ties t…
  2. Sep 18, 2026An on-chain guard for AI-agent transactions moves the trust to whoever signs the attestati…
  3. Sep 16, 2026A generalized MEV bot beat the attacker to the rsETH exploit in the same block When the ex…
  4. Sep 15, 2026Public-mempool gas sponsorship can't have all three: no locked money, no off-chain trust,…
  5. Sep 13, 2026A QEMU/KVM sandbox is not a boundary for a cyber-capable agent Trail of Bits gave a fronti…
  6. Sep 12, 2026This week in Solidity Allbridge halted its core bridge after a $1.65M exploit: a $1.12M Ka…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →