This is a repost of the Uniswap Grants announcment here
Oracles play a crucial role in the ecosystem as their return values are consumed as a source of truth (data) for DeFi applications. For Oracle developers, great power comes with great responsibility. As a core tennant of DeFi infrastructure and with various approaches and implementations (onchain, offchain, decentralized, centralized etc) robust oracle infrastructure and tooling is necessary to empower developers to build secure, dependable applications. This grant will focus on building open source tooling to empower DeFi developers utilizing Uniswap v3 TWAP Oracles.
The motivation of this grant is to drive developer visiblity, consideration and adoption of Uniswap V3 TWAP oracles by building tools to improve the overall dev experience. At Chaos Labs, we’re strong advocates of the security and reliability TWAP oracles provide as an onchain oracle solution. Our goal is to build open sourcing tooling to reduce the complexity and technical undertaking of TWAP integrations. We intend to achieve this goal by extending and building usage and testing capabilities of the Uniswap v3 TWAP oracles for the wider Uniswap developer ecoystem.
Why Configuring TWAP Values is Crucial ✋
Oracle return values trigger internal state changes in web3 applications. When forking mainnent, TWAP oracles are static by default since no trades are executed in an isolated forked environment. If you're application consumes price data and initiates control flows based on returned values, being able to test a range of prices is critical. However, manipulating pool liquidity to reach a specific state (price) requires an unreasoable amount of trades and setup. When we have a myriad of liquidity pools configuration can become tedious and may require a lot of custom scripting and hacks. Chaos Labs aims to streamline developer productivity while also making it easier to test applications. This tool gives developers the ability to mock return values easily. Now we can test how our contracts / applications react to different types of external data 🤗.
So What Are We Building? 😎
Chaos Labs is building an open source CLI (command-line interface) application which will serve as a reference implementation and starter repository for bootstrapping a project with granular control over Uniswap v3 TWAP oracles. The CLI will have the ability to have control return values received from TWAP oracles. Ultimately, we will add the capability to mock and tweak the Uni TWAP oracles prices within a forked environment. This will help application developers in e2e testing and simulations as they can easily reach different test cases and scenarios that are dependant on incoming oracle data.
What's next? ⏭️
We're currently in execution mode, researching and building the required infrastructure. Look out for the open source repository in the coming days 🥳. In the meantime we invite the community to reach out if they have questions or feature requests for Uniswap v3 TWAP tooling!
About the Uniswap Grant Program
If you want to learn more about the Uniswap Grants Program, check out their blog.