-
Notifications
You must be signed in to change notification settings - Fork 11.8k
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
ERC-4337 & ERC-7579 compliant modular smart accounts with ERC7579 signer/validator support #5119
base: master
Are you sure you want to change the base?
Conversation
Co-authored-by: Ernesto García <[email protected]>
…nterfaces-and-helpers
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I've been reviewing and it's looking good if we only consider the ERC7579 view of how to implement accounts.
I'd like to challenge the idea that ERC7579 is indeed the minimal version of an account; IMO, the validators
are not a good fit for identities since they're not something you change frequently as you may do with a module. That would require a lot of operations during deployment (e.g. deploying multiple identities and enabling multiple modules).
From my point of view, identities are core to the functionality and we already have a standard for signature interoperability (ERC1271) so I'd like the identities approach to be more focused on making ERC1271 work out of the box rather than through a validator module.
I opened this PR to demonstrate how it simpler if we allow a generic identity to be plugged into an account (see AccountIdentity) or multiple (AccountMultiIdentity). I feel that approach is way leaner, but we can still write ERC7579 modules for more complex requirements (e.g. Governor as an executor).
Variant of #4991 with full 7579 based userop verification
PR Checklist
npx changeset add
)