From c988b624adac60634e3667d9242201cf632b362b Mon Sep 17 00:00:00 2001 From: Eyal Ovadya Date: Wed, 13 Mar 2024 10:32:10 +0200 Subject: [PATCH] Arbitrum Caps Increase 20240312 --- ...12_post_arbitrum_caps_increase_20240312.md | 87 +++++++++++++++++++ src/ArbitrumCapsIncrease_20240312.s.sol | 60 +++++++++++++ 2 files changed, 147 insertions(+) create mode 100644 diffs/pre_arbitrum_caps_increase_20240312_post_arbitrum_caps_increase_20240312.md create mode 100644 src/ArbitrumCapsIncrease_20240312.s.sol diff --git a/diffs/pre_arbitrum_caps_increase_20240312_post_arbitrum_caps_increase_20240312.md b/diffs/pre_arbitrum_caps_increase_20240312_post_arbitrum_caps_increase_20240312.md new file mode 100644 index 0000000..4712b59 --- /dev/null +++ b/diffs/pre_arbitrum_caps_increase_20240312_post_arbitrum_caps_increase_20240312.md @@ -0,0 +1,87 @@ +## Reserve changes + +### Reserve altered + +#### EURS ([0xD22a58f79e9481D1a88e00c343885A588b34b68B](https://arbiscan.io/address/0xD22a58f79e9481D1a88e00c343885A588b34b68B)) + +| description | value before | value after | +| --- | --- | --- | +| supplyCap | 65,000 EURS | 80,000 EURS | + + +#### USDT ([0xFd086bC7CD5C481DCC9C85ebE478A1C0b69FCbb9](https://arbiscan.io/address/0xFd086bC7CD5C481DCC9C85ebE478A1C0b69FCbb9)) + +| description | value before | value after | +| --- | --- | --- | +| supplyCap | 50,000,000 USDT | 100,000,000 USDT | +| borrowCap | 35,000,000 USDT | 70,000,000 USDT | + + +#### USDC ([0xaf88d065e77c8cC2239327C5EDb3A432268e5831](https://arbiscan.io/address/0xaf88d065e77c8cC2239327C5EDb3A432268e5831)) + +| description | value before | value after | +| --- | --- | --- | +| supplyCap | 128,000,000 USDC | 200,000,000 USDC | +| borrowCap | 120,000,000 USDC | 180,000,000 USDC | + + +#### AAVE ([0xba5DdD1f9d7F570dc94a51479a000E3BCE967196](https://arbiscan.io/address/0xba5DdD1f9d7F570dc94a51479a000E3BCE967196)) + +| description | value before | value after | +| --- | --- | --- | +| supplyCap | 1,850 AAVE | 3,600 AAVE | + + +#### LINK ([0xf97f4df75117a78c1A5a0DBb814Af92458539FB4](https://arbiscan.io/address/0xf97f4df75117a78c1A5a0DBb814Af92458539FB4)) + +| description | value before | value after | +| --- | --- | --- | +| supplyCap | 1,800,000 LINK | 2,000,000 LINK | + + +## Raw diff + +```json +{ + "reserves": { + "0xD22a58f79e9481D1a88e00c343885A588b34b68B": { + "supplyCap": { + "from": 65000, + "to": 80000 + } + }, + "0xFd086bC7CD5C481DCC9C85ebE478A1C0b69FCbb9": { + "borrowCap": { + "from": 35000000, + "to": 70000000 + }, + "supplyCap": { + "from": 50000000, + "to": 100000000 + } + }, + "0xaf88d065e77c8cC2239327C5EDb3A432268e5831": { + "borrowCap": { + "from": 120000000, + "to": 180000000 + }, + "supplyCap": { + "from": 128000000, + "to": 200000000 + } + }, + "0xba5DdD1f9d7F570dc94a51479a000E3BCE967196": { + "supplyCap": { + "from": 1850, + "to": 3600 + } + }, + "0xf97f4df75117a78c1A5a0DBb814Af92458539FB4": { + "supplyCap": { + "from": 1800000, + "to": 2000000 + } + } + } +} +``` \ No newline at end of file diff --git a/src/ArbitrumCapsIncrease_20240312.s.sol b/src/ArbitrumCapsIncrease_20240312.s.sol new file mode 100644 index 0000000..90338ba --- /dev/null +++ b/src/ArbitrumCapsIncrease_20240312.s.sol @@ -0,0 +1,60 @@ +// SPDX-License-Identifier: MIT +pragma solidity ^0.8.0; + +import {AaveV3ArbitrumAssets} from 'aave-address-book/AaveV3Arbitrum.sol'; +import {IAaveV3ConfigEngine} from 'aave-helpers/v3-config-engine/IAaveV3ConfigEngine.sol'; +import {EngineFlags} from 'aave-helpers/v3-config-engine/EngineFlags.sol'; +import {CapsPlusRiskStewardArbitrum} from '../scripts/CapsPlusRiskStewardArbitrum.s.sol'; + +/** + * @title Update Caps on Arbitrum V3 + * @author Chaos Labs + * - Discussion: https://governance.aave.com/t/chaos-labs-risk-stewards-supply-and-borrow-cap-recommendation-on-v3-arbitrum-03-12-24/16936 + */ +contract ArbitrumCapsIncrease_20240312 is CapsPlusRiskStewardArbitrum { + /** + * @return string name identifier used for the diff + */ + function name() internal pure override returns (string memory) { + return 'arbitrum_caps_increase_20240312'; + } + + /** + * @return IAaveV3ConfigEngine.CapsUpdate[] capUpdates to be performed + */ + function capsUpdates() internal pure override returns (IAaveV3ConfigEngine.CapsUpdate[] memory) { + IAaveV3ConfigEngine.CapsUpdate[] memory capUpdates = new IAaveV3ConfigEngine.CapsUpdate[](5); + + capUpdates[0] = IAaveV3ConfigEngine.CapsUpdate( + AaveV3ArbitrumAssets.LINK_UNDERLYING, + 2_000_000, + EngineFlags.KEEP_CURRENT + ); + + capUpdates[1] = IAaveV3ConfigEngine.CapsUpdate( + AaveV3ArbitrumAssets.AAVE_UNDERLYING, + 3_600, + EngineFlags.KEEP_CURRENT + ); + + capUpdates[2] = IAaveV3ConfigEngine.CapsUpdate( + AaveV3ArbitrumAssets.EURS_UNDERLYING, + 80_000, + EngineFlags.KEEP_CURRENT + ); + + capUpdates[3] = IAaveV3ConfigEngine.CapsUpdate( + AaveV3ArbitrumAssets.USDCn_UNDERLYING, + 200_000_000, + 180_000_000 + ); + + capUpdates[4] = IAaveV3ConfigEngine.CapsUpdate( + AaveV3ArbitrumAssets.USDT_UNDERLYING, + 100_000_000, + 70_000_000 + ); + + return capUpdates; + } +}