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: Uniswap V4 GeomeanOracle Hook Enforcer (Experimental) #3

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

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 integrates with the Uniswap V4 GeomeanOracle.sol hook.

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

User Story

As a I user I want to enable a transaction once a Uniswap V4 token pair price is within X-Y range.

Enforcer

The new UniV4GeomeanOracleEnforcer.sol module should request token pair price pricing using the GeomeanOracle.sol interfaces and allow a user to define a token pair price range for when a transaction can be executed.

For example the enforcer module should only allow a transaction to execute when the Uniswap ETH/USDC token pair price is between 1ETH/4200USDC and 1ETH/4201USDC

Conclusion

Create a secure Delegation Framework Enforcer to fetch token pair pricing from the Uniswap V4 GeomeanOracle hook.

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