OriginProtocol / origin-dollar

OUSD and OETH are stablecoins that passively accrue yield while you are holding it
https://originprotocol.com
MIT License
115 stars 75 forks source link

Aero harvester contract #2045

Closed PraneshASP closed 2 months ago

PraneshASP commented 2 months ago

Description:

Added a new contract AeroHarvester to harvest AERO token rewards from the Aerodrome AMM, swap it back to Wrapped Ether and send it to the vault contract. This is required for the Aerodrome AMO strategy.


If you made a contract change, make sure to complete the checklist below before merging it in master.

Refer to our documentation for more details about contract security best practices.

Contract change checklist:

github-actions[bot] commented 2 months ago
Warnings
:warning: :eyes: This PR needs at least 2 reviewers

Generated by :no_entry_sign: dangerJS against f88560593d0e1f8e72f9d86d67d7282c9a0b21d5

PraneshASP commented 2 months ago

This shares a lot of code with the BaseHarvester. Can it be refactored so it only re-implements the things that are different?

I tried the same earlier, but the Base harvester seems to be more Ethereum focused as there are lot of internal functions to handle swaps with various platforms. if we want to refactor, there'll be a lot of breaking changes in the BaseHarvester contract. To keep things simple, I created a new harvester contract specific to Aero (base).

cc: @sparrowDom