Add ERC7739 and ERC7739Utils
Follow up from #5242 (must be reviewed first) and smaller version of #5182
This PR includes the following primitives:
- ERC7739Utils: A wrapped EIP-712 approach based on @frangio's and @Vectorized's work
- ERC7739Signer: An ERC1271 abstract contract that implements ERC7739Utils
Both of these will be required for the Account contracts
PR Checklist
- [x] Tests
- [x] Documentation
- [x] Changeset entry (run
npx changeset add)
🦋 Changeset detected
Latest commit: 8a33b8008e3fbf0121725177c0f33a476ecfc05e
The changes in this PR will be included in the next version bump.
This PR includes changesets to release 1 package
| Name | Type |
|---|---|
| openzeppelin-solidity | Minor |
Not sure what this means? Click here to learn what changesets are.
Click here if you're a maintainer who wants to add another changeset to this PR
Most of this work is inspired in ERC-7739 although I couldn't find an official reference to an ERC. We can update if needed
The diff is completelly bugged. Changing base doesn't reset it
IMO this should be in the go in the community repo, with the account work. I feels very new, and weither we want it or not depends on the account design (which I would also put in community repo)
Code an tests are making good progress, but the underlying ERC is still subject to a lot of discussion.
Consequently, I don't think we should include that in 5.2. I'd rather wait for to see how the ERC discussion evolve and target a release of this code in 5.3