Skip to content

Commit

Permalink
stkAAVE Rewards Update (#520)
Browse files Browse the repository at this point in the history
* feat: stkAAVE rewards restart

* chore: update readme with forum post

* chore: update readme

* feat: remove configure assets

* chore: fix readme
  • Loading branch information
efecarranza authored Nov 11, 2024
1 parent 21469ba commit 3f98ef3
Show file tree
Hide file tree
Showing 5 changed files with 226 additions and 0 deletions.
Original file line number Diff line number Diff line change
@@ -0,0 +1,43 @@
// SPDX-License-Identifier: MIT
pragma solidity ^0.8.0;

import {IERC20} from 'solidity-utils/contracts/oz-common/interfaces/IERC20.sol';
import {AaveV3EthereumAssets} from 'aave-address-book/AaveV3Ethereum.sol';
import {MiscEthereum} from 'aave-address-book/MiscEthereum.sol';
import {AaveSafetyModule} from 'aave-address-book/AaveSafetyModule.sol';
import {IProposalGenericExecutor} from 'aave-helpers/src/interfaces/IProposalGenericExecutor.sol';

import {IStakeToken} from 'aave-address-book/common/IStakeToken.sol';

/**
* @title Safety Module stkAAVE - Re-enable Rewards
* @author @karpatkey_TokenLogic
* - Snapshot: Direct-to-AIP
* - Discussion: https://governance.aave.com/t/arfc-amend-safety-module-emissions/16640/13
*/
contract AaveV3Ethereum_SafetyModuleStkAAVEReEnableRewards_20241106 is IProposalGenericExecutor {
uint256 public constant DISTRIBUTION_DURATION = 180 days;
uint128 public constant AAVE_EMISSION_PER_SECOND_STK_AAVE = uint128(360e18) / 1 days; // 360 AAVE per day

function execute() external {
uint256 remainingAllowance = IERC20(AaveV3EthereumAssets.AAVE_UNDERLYING).allowance(
address(MiscEthereum.ECOSYSTEM_RESERVE),
AaveSafetyModule.STK_AAVE
);

// Approval needs to be reset in order to increase it
MiscEthereum.AAVE_ECOSYSTEM_RESERVE_CONTROLLER.approve(
MiscEthereum.ECOSYSTEM_RESERVE,
AaveV3EthereumAssets.AAVE_UNDERLYING,
AaveSafetyModule.STK_AAVE,
0
);

MiscEthereum.AAVE_ECOSYSTEM_RESERVE_CONTROLLER.approve(
MiscEthereum.ECOSYSTEM_RESERVE,
AaveV3EthereumAssets.AAVE_UNDERLYING,
AaveSafetyModule.STK_AAVE,
remainingAllowance + (AAVE_EMISSION_PER_SECOND_STK_AAVE * DISTRIBUTION_DURATION)
);
}
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,74 @@
// SPDX-License-Identifier: MIT
pragma solidity ^0.8.0;

import {IERC20} from 'solidity-utils/contracts/oz-common/interfaces/IERC20.sol';
import {AaveV3Ethereum, AaveV3EthereumAssets} from 'aave-address-book/AaveV3Ethereum.sol';
import {MiscEthereum} from 'aave-address-book/MiscEthereum.sol';
import {AaveSafetyModule} from 'aave-address-book/AaveSafetyModule.sol';
import {IStakeToken} from 'aave-address-book/common/IStakeToken.sol';
import {ProtocolV3TestBase} from 'aave-helpers/src/ProtocolV3TestBase.sol';

import {AaveV3Ethereum_SafetyModuleStkAAVEReEnableRewards_20241106} from './AaveV3Ethereum_SafetyModuleStkAAVEReEnableRewards_20241106.sol';

/**
* @dev Test for AaveV3Ethereum_SafetyModuleStkAAVEReEnableRewards_20241106
* command: FOUNDRY_PROFILE=mainnet forge test --match-path=src/20241106_AaveV3Ethereum_SafetyModuleStkAAVEReEnableRewards/AaveV3Ethereum_SafetyModuleStkAAVEReEnableRewards_20241106.t.sol -vv
*/
contract AaveV3Ethereum_SafetyModuleStkAAVEReEnableRewards_20241106_Test is ProtocolV3TestBase {
AaveV3Ethereum_SafetyModuleStkAAVEReEnableRewards_20241106 internal proposal;

function setUp() public {
vm.createSelectFork(vm.rpcUrl('mainnet'), 21128772);
proposal = new AaveV3Ethereum_SafetyModuleStkAAVEReEnableRewards_20241106();
}

function test_checkConfig() public {
(uint128 emissionPerSecondBeforeStkAAVE, , ) = IStakeToken(AaveSafetyModule.STK_AAVE).assets(
AaveSafetyModule.STK_AAVE
);

assertEq(
emissionPerSecondBeforeStkAAVE,
proposal.AAVE_EMISSION_PER_SECOND_STK_AAVE(),
'emissions before not equal stkAAVE'
);

executePayload(vm, address(proposal));

(uint128 emissionPerSecondAfterStkAAVE, , ) = IStakeToken(AaveSafetyModule.STK_AAVE).assets(
AaveSafetyModule.STK_AAVE
);

assertEq(
emissionPerSecondAfterStkAAVE,
proposal.AAVE_EMISSION_PER_SECOND_STK_AAVE(),
'emissions after not equal stkAAVE'
);
assertApproxEqAbs(
emissionPerSecondAfterStkAAVE,
emissionPerSecondBeforeStkAAVE,
1,
'stkAAVE emissions not same as previous'
);
}

function test_checkRewards_stkAAVE() public {
address staker = 0x5a801a9418D036fD453078c3ADCB761fdc5Ae695;
uint256 rewardsPerDay = proposal.AAVE_EMISSION_PER_SECOND_STK_AAVE();

executePayload(vm, address(proposal));

vm.startPrank(staker);
IERC20(AaveV3EthereumAssets.AAVE_UNDERLYING).approve(AaveSafetyModule.STK_AAVE, 1e18);

IStakeToken(AaveSafetyModule.STK_AAVE).stake(staker, 1e18);

vm.warp(block.timestamp + 1 days);

uint256 rewardsBalance = IStakeToken(AaveSafetyModule.STK_AAVE).getTotalRewardsBalance(staker);

assertTrue(rewardsBalance > 0 && rewardsBalance <= rewardsPerDay);

vm.stopPrank();
}
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,35 @@
---
title: "Safety Module stkAAVE - Re-enable Rewards"
author: "@karpatkey_TokenLogic"
discussions: "https://governance.aave.com/t/arfc-amend-safety-module-emissions/16640/13"
snapshot: "Direct-to-AIP"
---

## Simple Summary

This publication proposes renewing the AAVE emissions to stkAAVE holders for the following 180 days.

## Motivation

With the conclusion of the recent reward cycle, this proposal aims to renew $AAVE emissions for stkAAVE holders. The stkAAVE module has proven to be a crucial mechanism as an AAVE supply sink, currently holding a TVL of $480M and accounting for 18.8% of the supply. It is recommended to maintain these emissions in anticipation of upcoming Umbrella developments, with adjustments to be made following the outcomes of the Umbrella upgrade.

More information on stkAAVE can be found in these dashboards, [here](https://dune.com/xmc2/aave-safety-module) and [here](https://dune.com/KARTOD/AAVE-Staking).

## Specification

This proposal will implement the following changes to the AAVE emissions across the three SM categories:

| Asset | Current AAVE/Day | Proposed AAVE/Day |
| ------- | ---------------- | ----------------- |
| stkAAVE | 360 | 360 |

## References

- Implementation: [AaveV3Ethereum](https://github.com/bgd-labs/aave-proposals-v3/blob/main/src/20241106_AaveV3Ethereum_SafetyModuleStkAAVEReEnableRewards/AaveV3Ethereum_SafetyModuleStkAAVEReEnableRewards_20241106.sol)
- Tests: [AaveV3Ethereum](https://github.com/bgd-labs/aave-proposals-v3/blob/main/src/20241106_AaveV3Ethereum_SafetyModuleStkAAVEReEnableRewards/AaveV3Ethereum_SafetyModuleStkAAVEReEnableRewards_20241106.t.sol)
- [Snapshot]: Direct-to-AIP
- [Discussion](https://governance.aave.com/t/arfc-amend-safety-module-emissions/16640/13)

## Copyright

Copyright and related rights waived via [CC0](https://creativecommons.org/publicdomain/zero/1.0/).
Original file line number Diff line number Diff line change
@@ -0,0 +1,60 @@
// SPDX-License-Identifier: MIT
pragma solidity ^0.8.0;

import {GovV3Helpers, IPayloadsControllerCore, PayloadsControllerUtils} from 'aave-helpers/src/GovV3Helpers.sol';
import {GovernanceV3Ethereum} from 'aave-address-book/GovernanceV3Ethereum.sol';
import {EthereumScript} from 'solidity-utils/contracts/utils/ScriptUtils.sol';
import {AaveV3Ethereum_SafetyModuleStkAAVEReEnableRewards_20241106} from './AaveV3Ethereum_SafetyModuleStkAAVEReEnableRewards_20241106.sol';

/**
* @dev Deploy Ethereum
* deploy-command: make deploy-ledger contract=src/20241106_AaveV3Ethereum_SafetyModuleStkAAVEReEnableRewards/SafetyModuleStkAAVEReEnableRewards_20241106.s.sol:DeployEthereum chain=mainnet
* verify-command: FOUNDRY_PROFILE=mainnet npx catapulta-verify -b broadcast/SafetyModuleStkAAVEReEnableRewards_20241106.s.sol/1/run-latest.json
*/
contract DeployEthereum is EthereumScript {
function run() external broadcast {
// deploy payloads
address payload0 = GovV3Helpers.deployDeterministic(
type(AaveV3Ethereum_SafetyModuleStkAAVEReEnableRewards_20241106).creationCode
);

// compose action
IPayloadsControllerCore.ExecutionAction[]
memory actions = new IPayloadsControllerCore.ExecutionAction[](1);
actions[0] = GovV3Helpers.buildAction(payload0);

// register action at payloadsController
GovV3Helpers.createPayload(actions);
}
}

/**
* @dev Create Proposal
* command: make deploy-ledger contract=src/20241106_AaveV3Ethereum_SafetyModuleStkAAVEReEnableRewards/SafetyModuleStkAAVEReEnableRewards_20241106.s.sol:CreateProposal chain=mainnet
*/
contract CreateProposal is EthereumScript {
function run() external {
// create payloads
PayloadsControllerUtils.Payload[] memory payloads = new PayloadsControllerUtils.Payload[](1);

// compose actions for validation
IPayloadsControllerCore.ExecutionAction[]
memory actionsEthereum = new IPayloadsControllerCore.ExecutionAction[](1);
actionsEthereum[0] = GovV3Helpers.buildAction(
type(AaveV3Ethereum_SafetyModuleStkAAVEReEnableRewards_20241106).creationCode
);
payloads[0] = GovV3Helpers.buildMainnetPayload(vm, actionsEthereum);

// create proposal
vm.startBroadcast();
GovV3Helpers.createProposal(
vm,
payloads,
GovernanceV3Ethereum.VOTING_PORTAL_ETH_POL,
GovV3Helpers.ipfsHashFile(
vm,
'src/20241106_AaveV3Ethereum_SafetyModuleStkAAVEReEnableRewards/SafetyModuleStkAAVEReEnableRewards.md'
)
);
}
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
import {ConfigFile} from '../../generator/types';
export const config: ConfigFile = {
rootOptions: {
pools: ['AaveV3Ethereum'],
title: 'Safety Module stkAAVE - Re-enable Rewards',
shortName: 'SafetyModuleStkAAVEReEnableRewards',
date: '20241106',
author: '@karpatkey_TokenLogic',
discussion: '',
snapshot: 'Direct-to-AIP',
votingNetwork: 'POLYGON',
},
poolOptions: {AaveV3Ethereum: {configs: {OTHERS: {}}, cache: {blockNumber: 21128772}}},
};

1 comment on commit 3f98ef3

@github-actions
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Foundry report

forge 0.2.0 (e028b92 2024-11-11T00:22:42.074556087Z)
Build log
Compiling 328 files with Solc 0.8.20
Solc 0.8.20 finished in 155.54s
Compiler run successful with warnings:
Warning (5667): Unused function parameter. Remove or comment out the variable name to silence this warning.
   --> lib/aave-helpers/src/swaps/AaveSwapper.sol:146:5:
    |
146 |     address erc20Token
    |     ^^^^^^^^^^^^^^^^^^

Warning (2018): Function state mutability can be restricted to pure
   --> lib/aave-helpers/src/swaps/AaveSwapper.sol:145:3:
    |
145 |   function maxRescue(
    |   ^ (Relevant source part starts here and spans across multiple lines).

Warning (2018): Function state mutability can be restricted to pure
   --> lib/aave-helpers/src/ProtocolV2TestBase.sol:663:3:
    |
663 |   function _logReserveConfig(ReserveConfig memory config) internal view {
    |   ^ (Relevant source part starts here and spans across multiple lines).

| Contract                                                            | Runtime Size (B) | Initcode Size (B) | Runtime Margin (B) | Initcode Margin (B) |
|---------------------------------------------------------------------|------------------|-------------------|--------------------|---------------------|
| AaveGovernanceV2                                                    |               44 |                94 |             24,532 |              49,058 |
| AaveSafetyModule                                                    |               44 |                94 |             24,532 |              49,058 |
| AaveSwapper                                                         |            5,555 |             5,992 |             19,021 |              43,160 |
| AaveV2Avalanche                                                     |               44 |                94 |             24,532 |              49,058 |
| AaveV2AvalancheAssets                                               |               44 |                94 |             24,532 |              49,058 |
| AaveV2Avalanche_ReserveFactorUpdatesMidOctober_20241004             |              988 |             1,017 |             23,588 |              48,135 |
| AaveV2Avalanche_UpdateLegacyGuardian_20241016                       |              348 |               486 |             24,228 |              48,666 |
| AaveV2Ethereum                                                      |               44 |                94 |             24,532 |              49,058 |
| AaveV2EthereumAMM                                                   |               44 |                94 |             24,532 |              49,058 |
| AaveV2EthereumAMMAssets                                             |               44 |                94 |             24,532 |              49,058 |
| AaveV2EthereumAMM_UpdateLegacyGuardian_20241016                     |              348 |               486 |             24,228 |              48,666 |
| AaveV2EthereumAssets                                                |               44 |                94 |             24,532 |              49,058 |
| AaveV2Ethereum_ReserveFactorUpdatesMidOctober_20241004              |              988 |             1,017 |             23,588 |              48,135 |
| AaveV2Ethereum_UpdateLegacyGuardian_20241016                        |              348 |               486 |             24,228 |              48,666 |
| AaveV2Polygon                                                       |               44 |                94 |             24,532 |              49,058 |
| AaveV2PolygonAssets                                                 |               44 |                94 |             24,532 |              49,058 |
| AaveV2Polygon_ReserveFactorUpdatesMidOctober_20241004               |            2,384 |             2,454 |             22,192 |              46,698 |
| AaveV2Polygon_UpdateLegacyGuardian_20241016                         |              348 |               486 |             24,228 |              48,666 |
| AaveV3Arbitrum                                                      |               44 |                94 |             24,532 |              49,058 |
| AaveV3ArbitrumAssets                                                |               44 |                94 |             24,532 |              49,058 |
| AaveV3ArbitrumEModes                                                |               44 |                94 |             24,532 |              49,058 |
| AaveV3ArbitrumExternalLibraries                                     |               44 |                94 |             24,532 |              49,058 |
| AaveV3Arbitrum_GHOCCIP150Upgrade_20241021                           |              817 |               846 |             23,759 |              48,306 |
| AaveV3Arbitrum_GHOStewardV2Upgrade_20241007                         |            1,360 |             1,389 |             23,216 |              47,763 |
| AaveV3Arbitrum_ReserveFactorUpdatesMidOctober_20241004              |            3,227 |             3,297 |             21,349 |              45,855 |
| AaveV3Arbitrum_RiskStewardPhase2_20240805                           |              307 |               336 |             24,269 |              48,816 |
| AaveV3Arbitrum_UpdateLegacyGuardian_20241016                        |            1,062 |             1,393 |             23,514 |              47,759 |
| AaveV3Avalanche                                                     |               44 |                94 |             24,532 |              49,058 |
| AaveV3AvalancheAssets                                               |               44 |                94 |             24,532 |              49,058 |
| AaveV3AvalancheEModes                                               |               44 |                94 |             24,532 |              49,058 |
| AaveV3AvalancheExternalLibraries                                    |               44 |                94 |             24,532 |              49,058 |
| AaveV3Avalanche_RiskStewardPhase2_20240805                          |              178 |               206 |             24,398 |              48,946 |
| AaveV3Avalanche_UpdateLegacyGuardian_20241016                       |            1,062 |             1,393 |             23,514 |              47,759 |
| AaveV3BNB                                                           |               44 |                94 |             24,532 |              49,058 |
| AaveV3BNBAssets                                                     |               44 |                94 |             24,532 |              49,058 |
| AaveV3BNBEModes                                                     |               44 |                94 |             24,532 |              49,058 |
| AaveV3BNBExternalLibraries                                          |               44 |                94 |             24,532 |              49,058 |
| AaveV3BNB_OnboardWstETHToAaveV3OnBNBChain_20241030                  |            5,561 |             5,632 |             19,015 |              43,520 |
| AaveV3BNB_RiskStewardPhase2_20240805                                |              178 |               206 |             24,398 |              48,946 |
| AaveV3BNB_UpdateLegacyGuardian_20241016                             |            1,062 |             1,393 |             23,514 |              47,759 |
| AaveV3Base                                                          |               44 |                94 |             24,532 |              49,058 |
| AaveV3BaseAssets                                                    |               44 |                94 |             24,532 |              49,058 |
| AaveV3BaseEModes                                                    |               44 |                94 |             24,532 |              49,058 |
| AaveV3BaseExternalLibraries                                         |               44 |                94 |             24,532 |              49,058 |
| AaveV3Base_IncreaseCbBTCSupplyCaps_20241004                         |            3,146 |             3,216 |             21,430 |              45,936 |
| AaveV3Base_ReserveFactorUpdatesMidOctober_20241004                  |            3,223 |             3,293 |             21,353 |              45,859 |
| AaveV3Base_RiskStewardPhase2_20240805                               |              178 |               206 |             24,398 |              48,946 |
| AaveV3Base_UpdateLegacyGuardian_20241016                            |            1,062 |             1,393 |             23,514 |              47,759 |
| AaveV3Ethereum                                                      |               44 |                94 |             24,532 |              49,058 |
| AaveV3EthereumAssets                                                |               44 |                94 |             24,532 |              49,058 |
| AaveV3EthereumEModes                                                |               44 |                94 |             24,532 |              49,058 |
| AaveV3EthereumEtherFi                                               |               44 |                94 |             24,532 |              49,058 |
| AaveV3EthereumEtherFiAssets                                         |               44 |                94 |             24,532 |              49,058 |
| AaveV3EthereumEtherFiEModes                                         |               44 |                94 |             24,532 |              49,058 |
| AaveV3EthereumEtherFiExternalLibraries                              |               44 |                94 |             24,532 |              49,058 |
| AaveV3EthereumEtherFi_RiskStewardPhase2_20240805                    |              178 |               206 |             24,398 |              48,946 |
| AaveV3EthereumExternalLibraries                                     |               44 |                94 |             24,532 |              49,058 |
| AaveV3EthereumLido                                                  |               44 |                94 |             24,532 |              49,058 |
| AaveV3EthereumLidoAssets                                            |               44 |                94 |             24,532 |              49,058 |
| AaveV3EthereumLidoEModes                                            |               44 |                94 |             24,532 |              49,058 |
| AaveV3EthereumLidoExternalLibraries                                 |               44 |                94 |             24,532 |              49,058 |
| AaveV3EthereumLido_AutomatedAGRSActivation_20241108                 |            3,046 |             3,075 |             21,530 |              46,077 |
| AaveV3EthereumLido_OnboardEzETHToLidoInstance_20241021              |            6,194 |             6,265 |             18,382 |              42,887 |
| AaveV3EthereumLido_RiskStewardPhase2_20240805                       |              178 |               206 |             24,398 |              48,946 |
| AaveV3EthereumLido_WstETHSlope1UoptimalUpdate_20241001              |            3,250 |             3,320 |             21,326 |              45,832 |
| AaveV3Ethereum_AaveBGDPhase4_20241025                               |            1,407 |             1,436 |             23,169 |              47,716 |
| AaveV3Ethereum_AaveCertoraContinuousSecurityServices_20241014       |            1,567 |             1,596 |             23,009 |              47,556 |
| AaveV3Ethereum_ChaosLabsAaveRiskManagementServiceRenewal_20241012   |            1,255 |             1,284 |             23,321 |              47,868 |
| AaveV3Ethereum_FixUSDSBorrowRateToMatchSkySavingsRate_20241022      |            3,238 |             3,308 |             21,338 |              45,844 |
| AaveV3Ethereum_GHOCCIP150Upgrade_20241021                           |              817 |               846 |             23,759 |              48,306 |
| AaveV3Ethereum_GHOStewardV2Upgrade_20241007                         |            2,895 |             2,924 |             21,681 |              46,228 |
| AaveV3Ethereum_IncreaseCbBTCSupplyCaps_20241004                     |            3,150 |             3,220 |             21,426 |              45,932 |
| AaveV3Ethereum_IncreaseUSDSBorrowRateToMatchSkySavingsRate_20241016 |            3,239 |             3,309 |             21,337 |              45,843 |
| AaveV3Ethereum_RenewLlamaRiskAsRiskServiceProvider_20241013         |            1,068 |             1,097 |             23,508 |              48,055 |
| AaveV3Ethereum_RiskStewardPhase2_20240805                           |              307 |               336 |             24,269 |              48,816 |
| AaveV3Ethereum_SafetyModuleStkAAVEReEnableRewards_20241106          |              910 |               939 |             23,666 |              48,213 |
| AaveV3Ethereum_StkGHOIncentivesQ4_20241029                          |            1,458 |             1,487 |             23,118 |              47,665 |
| AaveV3Ethereum_UpdateLegacyGuardian_20241016                        |            1,062 |             1,413 |             23,514 |              47,739 |
| AaveV3Gnosis                                                        |               44 |                94 |             24,532 |              49,058 |
| AaveV3GnosisAssets                                                  |               44 |                94 |             24,532 |              49,058 |
| AaveV3GnosisEModes                                                  |               44 |                94 |             24,532 |              49,058 |
| AaveV3GnosisExternalLibraries                                       |               44 |                94 |             24,532 |              49,058 |
| AaveV3Gnosis_ReserveFactorUpdatesMidOctober_20241004                |            3,225 |             3,295 |             21,351 |              45,857 |
| AaveV3Gnosis_RiskStewardPhase2_20240805                             |              178 |               206 |             24,398 |              48,946 |
| AaveV3Gnosis_UpdateLegacyGuardian_20241016                          |            1,062 |             1,393 |             23,514 |              47,759 |
| AaveV3Metis                                                         |               44 |                94 |             24,532 |              49,058 |
| AaveV3MetisAssets                                                   |               44 |                94 |             24,532 |              49,058 |
| AaveV3MetisEModes                                                   |               44 |                94 |             24,532 |              49,058 |
| AaveV3MetisExternalLibraries                                        |               44 |                94 |             24,532 |              49,058 |
| AaveV3Metis_RiskStewardPhase2_20240805                              |              178 |               206 |             24,398 |              48,946 |
| AaveV3Metis_UpdateLegacyGuardian_20241016                           |            1,062 |             1,393 |             23,514 |              47,759 |
| AaveV3Optimism                                                      |               44 |                94 |             24,532 |              49,058 |
| AaveV3OptimismAssets                                                |               44 |                94 |             24,532 |              49,058 |
| AaveV3OptimismEModes                                                |               44 |                94 |             24,532 |              49,058 |
| AaveV3OptimismExternalLibraries                                     |               44 |                94 |             24,532 |              49,058 |
| AaveV3Optimism_ReserveFactorUpdatesMidOctober_20241004              |            3,227 |             3,297 |             21,349 |              45,855 |
| AaveV3Optimism_RiskStewardPhase2_20240805                           |              178 |               206 |             24,398 |              48,946 |
| AaveV3Optimism_UpdateLegacyGuardian_20241016                        |            1,062 |             1,393 |             23,514 |              47,759 |
| AaveV3Polygon                                                       |               44 |                94 |             24,532 |              49,058 |
| AaveV3PolygonAssets                                                 |               44 |                94 |             24,532 |              49,058 |
| AaveV3PolygonEModes                                                 |               44 |                94 |             24,532 |              49,058 |
| AaveV3PolygonExternalLibraries                                      |               44 |                94 |             24,532 |              49,058 |
| AaveV3Polygon_ReserveFactorUpdatesMidOctober_20241004               |            3,226 |             3,296 |             21,350 |              45,856 |
| AaveV3Polygon_RiskStewardPhase2_20240805                            |              178 |               206 |             24,398 |              48,946 |
| AaveV3Polygon_UpdateLegacyGuardian_20241016                         |            1,062 |             1,393 |             23,514 |              47,759 |
| AaveV3Scroll                                                        |               44 |                94 |             24,532 |              49,058 |
| AaveV3ScrollAssets                                                  |               44 |                94 |             24,532 |              49,058 |
| AaveV3ScrollEModes                                                  |               44 |                94 |             24,532 |              49,058 |
| AaveV3ScrollExternalLibraries                                       |               44 |                94 |             24,532 |              49,058 |
| AaveV3Scroll_RiskStewardPhase2_20240805                             |              178 |               206 |             24,398 |              48,946 |
| AaveV3Scroll_UpdateLegacyGuardian_20241016                          |            1,062 |             1,393 |             23,514 |              47,759 |
| Address                                                             |               44 |                94 |             24,532 |              49,058 |
| CCIPUtils                                                           |            4,968 |             5,021 |             19,608 |              44,131 |
| ChainHelpers                                                        |               44 |                94 |             24,532 |              49,058 |
| ChainIds                                                            |               44 |                94 |             24,532 |              49,058 |
| Client                                                              |              109 |               160 |             24,467 |              48,992 |
| CollectorUtils                                                      |               44 |                94 |             24,532 |              49,058 |
| ConfiguratorInputTypes                                              |               44 |                94 |             24,532 |              49,058 |
| Create2Utils                                                        |              121 |               172 |             24,455 |              48,980 |
| Create2UtilsZkSync                                                  |              104 |               155 |             24,472 |              48,997 |
| DataTypes                                                           |               44 |                94 |             24,532 |              49,058 |
| ERC1967Proxy                                                        |              129 |             1,179 |             24,447 |              47,973 |
| EngineFlags                                                         |               44 |                94 |             24,532 |              49,058 |
| Errors                                                              |            4,652 |             4,705 |             19,924 |              44,447 |
| GovV3Helpers                                                        |            2,517 |             2,570 |             22,059 |              46,582 |
| GovV3StorageHelpers                                                 |               44 |                94 |             24,532 |              49,058 |
| GovernanceGuardians                                                 |              292 |               345 |             24,284 |              48,807 |
| GovernanceV3Arbitrum                                                |               44 |                94 |             24,532 |              49,058 |
| GovernanceV3Avalanche                                               |               44 |                94 |             24,532 |              49,058 |
| GovernanceV3BNB                                                     |               44 |                94 |             24,532 |              49,058 |
| GovernanceV3Base                                                    |               44 |                94 |             24,532 |              49,058 |
| GovernanceV3Ethereum                                                |               44 |                94 |             24,532 |              49,058 |
| GovernanceV3Gnosis                                                  |               44 |                94 |             24,532 |              49,058 |
| GovernanceV3Metis                                                   |               44 |                94 |             24,532 |              49,058 |
| GovernanceV3Optimism                                                |               44 |                94 |             24,532 |              49,058 |
| GovernanceV3Polygon                                                 |               44 |                94 |             24,532 |              49,058 |
| GovernanceV3PolygonZkEvm                                            |               44 |                94 |             24,532 |              49,058 |
| GovernanceV3Scroll                                                  |               44 |                94 |             24,532 |              49,058 |
| GovernanceV3ZkSync                                                  |               44 |                94 |             24,532 |              49,058 |
| IpfsUtils                                                           |               44 |                94 |             24,532 |              49,058 |
| MiscArbitrum                                                        |               44 |                94 |             24,532 |              49,058 |
| MiscAvalanche                                                       |               44 |                94 |             24,532 |              49,058 |
| MiscBNB                                                             |               44 |                94 |             24,532 |              49,058 |
| MiscBase                                                            |               44 |                94 |             24,532 |              49,058 |
| MiscEthereum                                                        |               44 |                94 |             24,532 |              49,058 |
| MiscGnosis                                                          |               44 |                94 |             24,532 |              49,058 |
| MiscMetis                                                           |               44 |                94 |             24,532 |              49,058 |
| MiscOptimism                                                        |               44 |                94 |             24,532 |              49,058 |
| MiscPolygon                                                         |               44 |                94 |             24,532 |              49,058 |
| MiscScroll                                                          |               44 |                94 |             24,532 |              49,058 |
| Payloads                                                            |               44 |                94 |             24,532 |              49,058 |
| PayloadsControllerUtils                                             |               44 |                94 |             24,532 |              49,058 |
| ProtocolGuardians                                                   |              292 |               345 |             24,284 |              48,807 |
| ProxyAdmin                                                          |            1,592 |             1,714 |             22,984 |              47,438 |
| ProxyHelpers                                                        |               44 |                94 |             24,532 |              49,058 |
| RateLimiter                                                         |               44 |                94 |             24,532 |              49,058 |
| RenewalV2BasePayload                                                |              348 |               595 |             24,228 |              48,557 |
| RenewalV3BasePayload                                                |            1,062 |             1,509 |             23,514 |              47,643 |
| ReserveConfiguration                                                |              128 |               179 |             24,448 |              48,973 |
| RewardsDataTypes                                                    |               44 |                94 |             24,532 |              49,058 |
| SafeCast                                                            |               44 |                94 |             24,532 |              49,058 |
| SafeERC20                                                           |               44 |                94 |             24,532 |              49,058 |
| StorageHelpers                                                      |               44 |                94 |             24,532 |              49,058 |
| StorageSlot                                                         |               44 |                94 |             24,532 |              49,058 |
| TestNetChainIds                                                     |               44 |                94 |             24,532 |              49,058 |
| TransparentUpgradeableProxy                                         |            2,000 |             3,429 |             22,576 |              45,723 |
| WadRayMath                                                          |               44 |                94 |             24,532 |              49,058 |
Test success 🌈
No files changed, compilation skipped

Ran 2 tests for src/20241106_AaveV3Ethereum_SafetyModuleStkAAVEReEnableRewards/AaveV3Ethereum_SafetyModuleStkAAVEReEnableRewards_20241106.t.sol:AaveV3Ethereum_SafetyModuleStkAAVEReEnableRewards_20241106_Test
[PASS] test_checkConfig() (gas: 146396)
[PASS] test_checkRewards_stkAAVE() (gas: 262070)
Suite result: ok. 2 passed; 0 failed; 0 skipped; finished in 6.48s (9.20s CPU time)

Ran 1 test suite in 6.49s (6.48s CPU time): 2 tests passed, 0 failed, 0 skipped (2 total tests)

Please sign in to comment.