-
Notifications
You must be signed in to change notification settings - Fork 18
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
[Protocol Manager] Evaluate Protocol support for ERC4337 #60
Comments
After prototyping an erc4337 support for the protocol in the form of a plugin and a function handler, it doesn't seem possible to support erc4337 through the protocol in the current form because of forbidden storage reads:
Particularly, this mapping is not compatible:
When accessing plugin info for an account, the slot will be computed as:
One way to fix this would be to reverse the mapping to go from a plugin to an account, but this way, we'd lose getters for plugins enabled for an account. Also, this wouldn't eliminate registry storage reads. Also, the mapping for function handlers doesn't seem to be compatible and would require adjustments:
Potential solution: Alternatively, we could look into adjusting the mentioned mappings and somehow removing the registry storage reads The code is available here: https://github.com/5afe/safe-core-protocol-demo/tree/feature/erc4337-plugin |
Create an example to evaluate if Safe{Core} Protocol can be used with ERC4337
Expected outcome:
The text was updated successfully, but these errors were encountered: