Skip to content
This repository has been archived by the owner on Nov 1, 2023. It is now read-only.

AURA OTC to GLC patch - Review #341

Merged
merged 4 commits into from
Oct 23, 2023
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,7 @@ contract DeployEthereum is EthereumScript {
contract CreateProposal is EthereumScript {
function run() external broadcast {
GovHelpers.Payload[] memory payloads = new GovHelpers.Payload[](1);
payloads[0] = GovHelpers.buildMainnet(0x8E6701Bfd7FACB64Fb0d6F368BeB5E1C3b13115E);
payloads[0] = GovHelpers.buildMainnet(0x20a067bF6956996c7c8b7a98073A9d260dB03b7a);
GovHelpers.createProposal(
payloads,
GovHelpers.ipfsHashFile(
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -29,12 +29,8 @@ contract AaveV3_Ethereum_EnhancingAaveDAOSLiquidityIncentiveStrategyOnBalancer_2
function execute() external {
// 1. AURA OTC DEAL

// pull AURA from AURA_DAO_TREASURY wallet to collector, this will fail if they don't approve Short_executor
IERC20(AURA_TOKEN).safeTransferFrom(
AURA_DAO_TREASURY,
address(AaveV2Ethereum.COLLECTOR),
AURA_AMOUNT
);
// pull AURA from AURA_DAO_TREASURY wallet to GLC, this will fail if they don't approve Short_executor
IERC20(AURA_TOKEN).safeTransferFrom(AURA_DAO_TREASURY, GLC, AURA_AMOUNT);

// Transfer V3 aUSDC from COLLECTOR to Short_Executor

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -39,7 +39,7 @@ contract AaveV3_Ethereum_EnhancingAaveDAOSLiquidityIncentiveStrategyOnBalancer_2
uint256 aUSDCV2BalanceBefore = IERC20(AaveV2EthereumAssets.USDC_A_TOKEN).balanceOf(
address(AaveV2Ethereum.COLLECTOR)
);
uint256 AURABalanceBefore = IERC20(AURA_TOKEN).balanceOf(address(AaveV2Ethereum.COLLECTOR));
uint256 GLCAURABalanceBefore = IERC20(AURA_TOKEN).balanceOf(GLC);

uint256 veBALBalanceBefore = IERC20(VEBAL_TOKEN).balanceOf(address(AaveV2Ethereum.COLLECTOR));
uint256 GLCVEBALBalanceBefore = IERC20(VEBAL_TOKEN).balanceOf(GLC);
Expand All @@ -55,8 +55,8 @@ contract AaveV3_Ethereum_EnhancingAaveDAOSLiquidityIncentiveStrategyOnBalancer_2
uint256 aUSDCV2BalanceAfter = IERC20(AaveV2EthereumAssets.USDC_A_TOKEN).balanceOf(
address(AaveV2Ethereum.COLLECTOR)
);
uint256 AURABalanceAfter = IERC20(AURA_TOKEN).balanceOf(address(AaveV2Ethereum.COLLECTOR));

uint256 GLCAURABalanceAfter = IERC20(AURA_TOKEN).balanceOf(GLC);
uint256 GLCUSDCBalance = IERC20(AaveV3EthereumAssets.USDC_UNDERLYING).balanceOf(GLC);
uint256 GLCVEBALBalanceAfter = IERC20(VEBAL_TOKEN).balanceOf(GLC);
uint256 veBALBalanceAfter = IERC20(VEBAL_TOKEN).balanceOf(address(AaveV2Ethereum.COLLECTOR));
Expand All @@ -72,13 +72,18 @@ contract AaveV3_Ethereum_EnhancingAaveDAOSLiquidityIncentiveStrategyOnBalancer_2
assertApproxEqAbs(
aUSDCV2BalanceAfter,
aUSDCV2BalanceBefore - USDC_AMOUNT_TO_GLC,
100 ether,
1 ether,
'aUSDC_V2_LEFTOVER'
);

assertApproxEqAbs(AURABalanceAfter, AURABalanceBefore + AURA_AMOUNT, 1500 wei, 'AURA_LEFTOVER');
assertApproxEqAbs(
GLCAURABalanceAfter,
GLCAURABalanceBefore + AURA_AMOUNT,
1500 wei,
'AURA_LEFTOVER'
);

assertApproxEqAbs(GLCUSDCBalance, USDC_AMOUNT_TO_GLC, 10 ether, 'GLC_USDC_LEFTOVER');
assertApproxEqAbs(GLCUSDCBalance, USDC_AMOUNT_TO_GLC, 1500 wei, 'GLC_USDC_LEFTOVER');

assertEq(veBALBalanceAfter, 0);
assertEq(GLCVEBALBalanceAfter, GLCVEBALBalanceBefore + veBALBalanceBefore);
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -7,13 +7,15 @@ discussions: "https://governance.aave.com/t/arfc-enhancing-aave-daos-liquidity-i
## Simple Summary

This AIP proposes Aave DAO to:

- Mint auraBAL using existing B-80BAL-20WETH holdings and stake it on Aura Finance's Classic Staking Pool;
- Buy 400,000 USDC worth of AURA OTM; and
- Buy 400,000 USDC worth of AURA OTM
- Swap $200,000 worth of AAVE for AURA and 200,000 USDC for AURA in an OTC deal with AURA DAO.
- Send the proceeds to the GHO Liquidity Commitee (GLC) to operate.

## Motivation

This AIP is part of the GHO overall support and aims at creating deeper GHO secondary liquidity in the balancer ecosystem. It also aims at providing funding to GLC to operate.
This AIP is part of the GHO overall support and aims at creating deeper GHO secondary liquidity in the balancer ecosystem. It also aims at providing funding to the GLC to operate.

## Specification

Expand All @@ -31,7 +33,7 @@ We recommend using [CowSwap's TWAP](https://swap.cow.fi/#/1/advanced/USDC/AURA?t

## 3. Swap $200,000 worth of AAVE for AURA and 200,000 USDC for AURA in an OTC deal with AURA DAO.

This action can be achieved by transferring 2,965.35 AAVE from the ecosystem reserve and 200,000 USDC from the collector to a token swap contract with properties similar to the one used for the [CRV OTC deal](https://github.com/bgd-labs/aave-proposals/blob/e77e5f1bdfd71970bbc752acbad6a1e46af3feaa/src/AaveV2_Eth_CRV_OTC_Deal_20230508/AaveV2_Eth_CRV_OTC_Deal_20230508.sol).
This action can be achieved by transferring 2,965.35 AAVE from the ecosystem reserve and 200,000 USDC from the collector to a token swap contract with properties similar to the one used for the [CRV OTC deal](https://github.com/bgd-labs/aave-proposals/blob/main/src/AaveV2_Eth_CRV_OTC_Deal_20230508/AaveV2_Eth_CRV_OTC_Deal_20230508.sol).

We'd be exchanging 2,965.35 AAVE and 200,000 USDC for 477,088.51 AURA with the AURA DAO. The TWAP prices for AURA and AAVE were calculated for the period from September 29th to October 6th and can be found [here](https://docs.google.com/spreadsheets/d/1_oogFs9V-fZQkxj-dBpO8YCLLHEI2YneFHeCtzL501s/edit?usp=sharing).

Expand All @@ -49,8 +51,8 @@ https://docs.google.com/spreadsheets/d/1_oogFs9V-fZQkxj-dBpO8YCLLHEI2YneFHeCtzL5

## References

- Implementation: [Ethereum](https://github.com/bgd-labs/aave-proposals/blob/e77e5f1bdfd71970bbc752acbad6a1e46af3feaa/src/20231017_AaveV3_Eth_EnhancingAaveDAOSLiquidityIncentiveStrategyOnBalancer/AaveV3_Ethereum_EnhancingAaveDAOSLiquidityIncentiveStrategyOnBalancer_20231017.sol)
- Tests: [Ethereum](https://github.com/bgd-labs/aave-proposals/blob/e77e5f1bdfd71970bbc752acbad6a1e46af3feaa/src/20231017_AaveV3_Eth_EnhancingAaveDAOSLiquidityIncentiveStrategyOnBalancer/AaveV3_Ethereum_EnhancingAaveDAOSLiquidityIncentiveStrategyOnBalancer_20231017.t.sol)
- Implementation: [Ethereum](https://github.com/bgd-labs/aave-proposals/blob/main/src/20231017_AaveV3_Eth_EnhancingAaveDAOSLiquidityIncentiveStrategyOnBalancer/AaveV3_Ethereum_EnhancingAaveDAOSLiquidityIncentiveStrategyOnBalancer_20231017.sol)
- Tests: [Ethereum](https://github.com/bgd-labs/aave-proposals/blob/main/src/20231017_AaveV3_Eth_EnhancingAaveDAOSLiquidityIncentiveStrategyOnBalancer/AaveV3_Ethereum_EnhancingAaveDAOSLiquidityIncentiveStrategyOnBalancer_20231017.t.sol)
- [Snapshot](https://snapshot.org/#/aave.eth/proposal/0xd1136b4db12346a95870f5a52ce02ef1bd4fb83cbbbf56c709aa14ae2d38659b)
- [Discussion](https://governance.aave.com/t/arfc-enhancing-aave-daos-liquidity-incentive-strategy-on-balancer/15061)

Expand Down