Skip to content
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

Feature Request: ERC-7683 Enforcer (Experimental) #5

Open
kamescg opened this issue Nov 24, 2024 · 0 comments
Open

Feature Request: ERC-7683 Enforcer (Experimental) #5

kamescg opened this issue Nov 24, 2024 · 0 comments

Comments

@kamescg
Copy link
Contributor

kamescg commented Nov 24, 2024

Context

The Universal wallet uses the MetaMask Delegation Framework for handling wallet delegations, authorizations and intents. The framework includes 20+ enforcer smart contract modules for dictating transaction execution capabilities.

We want to extend those capabilities.

Scope

Create a new enforcer module that uses the ERC-7683 standard proposed by Uniswap and Across.

ERC-7683: Cross Chain Intents Standard

Uniswap Labs and Across Propose Standard for Cross-chain Intents

The enforcer module should be named ERC7683ExperimentalEnforcer.sol and include complete unit test coverage.

User Story

As a I user I want to automate my cross-chain swaps using shared standards to receive the best possible prices.

Enforcer

The new ERC7683ExperimentalEnforcer.sol module should enforce that a transaction being executed from the Universal Wallet is using ERC-7683 for cross-chain orders and matches the user asset and maxAmount terms.

Review AllowedMethodsEnforcer.sol and AllowedCalldataEnforcer.sol modules for inspiration.

The ERC7683ExperimentalEnforcer module will probably derive the most value when combined with other low-level enforcers like TimestampEnforcer.sol and LimitCallsEnforcer.sol to delegate authority to a "trading agent" that can execute swap on a user's behalf.

Conclusion

Create a secure Delegation Framework Enforcer to restrict cross-chain token swaps to the ERC-7683 standard.

The full scope of the issue might not be captured in this ticket. Additional research and critical thinking is required. Do your best to think of all security concerns related to the implementation you choose.

Full unit test coverage is expected for a final implementation.

We increase bounty payouts for work that goes above and beyond!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

1 participant