Skip to content

Add page for ERC-7562 AA validation rules #2225

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Draft
wants to merge 1 commit into
base: master
Choose a base branch
from

Conversation

amiecorso
Copy link
Contributor

What changed? Why?
I've added a page under smart wallet "usage details" for ERC7562 validation rules and banned opcodes.

UserOperations submitted by bundlers must use a restricted set of opcodes and conform to other limitations due to the fact that the EOA submitting the transaction with the userOp is not the smart contract wallet address that is executing the userOp. The Bundler EOA must protect itself against operations that may pass simulation but ultimately fail onchain and thereby fail to reimburse the bundler for gas.

An onchain app that uses these banned opcodes or otherwise violates validation rules cannot be used by smart contract wallets. An app called JokeRace could not use CoinbaseSmartWallet for some but not all of their onchain execution flows. We ultimately discovered that the failing flows involved a codepath that references tx.origin (one of the banned opcodes).

Hopefully this documentation will help make it more clear more quickly to future devs why EVM code that relies on certain opcodes can't be used with CBSW.

Notes to reviewers

How has it been tested?
Locally

Have you tested the following pages?

BaseWeb

  • [] base.org
  • [] base.org/names
  • [] base.org/builders
  • [] base.org/ecosystem
  • [] base.org/name/jesse
  • [] base.org/manage-names
  • [] base.org/resources

BaseDocs

  • docs.base.org
  • [] docs sub-pages

Copy link

vercel bot commented Apr 18, 2025

The latest updates on your projects. Learn more about Vercel for Git ↗︎

Name Status Preview Comments Updated (UTC)
base-web ✅ Ready (Inspect) Visit Preview 💬 Add feedback Apr 18, 2025 2:26pm
web-base-docs ✅ Ready (Inspect) Visit Preview 💬 Add feedback Apr 18, 2025 2:26pm

@cb-heimdall
Copy link
Collaborator

🟡 Heimdall Review Status

Requirement Status More Info
Reviews 🟡 0/1
Denominator calculation
Show calculation
1 if user is bot 0
1 if user is external 0
From .codeflow.yml 1
Additional review requirements
Show calculation
Max 0
0
From CODEOWNERS 0
Global minimum 0
Max 1
1
1 if commit is unverified 0
Sum 1

Copy link

@eric-ships eric-ships left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks great, will defer to @youssefea @ericbrown99 on where the best place for this to live is

@amiecorso amiecorso marked this pull request as draft April 18, 2025 16:56
@wbnns wbnns added the base docs review To be reviewed by the Base docs team label Apr 18, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
base docs review To be reviewed by the Base docs team
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants