-
Notifications
You must be signed in to change notification settings - Fork 151
Fixed edge case in the LiquidationDataProvider helper contract #122
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Merged
sakulstra
merged 1 commit into
aave-dao:main
from
bgd-labs:fix/fix-liquidation-helper-contract
May 19, 2025
Merged
Fixed edge case in the LiquidationDataProvider helper contract #122
sakulstra
merged 1 commit into
aave-dao:main
from
bgd-labs:fix/fix-liquidation-helper-contract
May 19, 2025
Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Codecov ReportAll modified and coverable lines are covered by tests ✅ 📢 Thoughts on this report? Let us know! |
Contributor
🌈 Test ResultsNo files changed, compilation skipped
Ran 6 tests for tests/treasury/Collector.t.sol:FundsAdminRoleBytesTest
[PASS] testApprove() (gas: 49675)
[PASS] testApproveWhenNotFundsAdmin() (gas: 18171)
[PASS] testTransfer() (gas: 54918)
[PASS] testTransferWhenNotFundsAdmin() (gas: 18195)
[PASS] test_receiveEth() (gas: 20297)
[PASS] test_successful() (gas: 13389)
Suite result: ok. 6 passed; 0 failed; 0 skipped; finished in 3.51ms (377.18µs CPU time)
Ran 7 tests for tests/treasury/Collector.t.sol:IsFundsAdminTest
[PASS] testApprove() (gas: 49675)
[PASS] testApproveWhenNotFundsAdmin() (gas: 18193)
[PASS] testTransfer() (gas: 54873)
[PASS] testTransferWhenNotFundsAdmin() (gas: 18217)
[PASS] test_isFundsAdmin() (gas: 24267)
[PASS] test_isNotFundsAdmin() (gas: 17595)
[PASS] test_receiveEth() (gas: 20297)
Suite result: ok. 7 passed; 0 failed; 0 skipped; finished in 3.43ms (508.63µs CPU time)
Ran 20 tests for tests/protocol/configuration/ACLManager.t.sol:ACLManagerTest
[PASS] testDefaultAdminRoleAfterDeploy() (gas: 20689)
[PASS] test_defaultAdmin_grantAdminRole_FlashBorrowAdmin() (gas: 65510)
[PASS] test_defaultAdmin_grants_AssetsListingRole() (gas: 37593)
[PASS] test_defaultAdmin_grants_BridgeRole() (gas: 37659)
[PASS] test_defaultAdmin_grants_EmergencyAdminRole() (gas: 37606)
[PASS] test_defaultAdmin_grants_PoolAdminRole() (gas: 37726)
[PASS] test_defaultAdmin_grants_RiskRole() (gas: 37723)
[PASS] test_defaultAdmin_remove_AssetsListingRole() (gas: 29442)
[PASS] test_defaultAdmin_remove_BridgeRole() (gas: 29531)
[PASS] test_defaultAdmin_remove_EmergencyAdminRole() (gas: 29426)
[PASS] test_defaultAdmin_remove_PoolAdminRole() (gas: 29548)
[PASS] test_defaultAdmin_remove_RiskRole() (gas: 29432)
[PASS] test_flashBorrowAdmin_grantRole_FlashBorrowRole() (gas: 91916)
[PASS] test_flashBorrowAdmin_removeRole_FlashBorrowRole() (gas: 76438)
[PASS] test_remove_riskAdmin() (gas: 29442)
[PASS] test_revert_anyUser_grantAdminRole_FlashBorrowAdmin() (gas: 72851)
[PASS] test_revert_deploy_ACLADMIN_zeroAddress() (gas: 1469924)
[PASS] test_reverts_defaultAdmin_notRoleAdmin_addRole_FlashBorrowRole() (gas: 98836)
[PASS] test_reverts_defaultAdmin_notRoleAdmin_revokeRole_FlashBorrowRole() (gas: 125219)
[PASS] test_reverts_notAdmin_grantRole_FlashBorrow() (gas: 113990)
Suite result: ok. 20 passed; 0 failed; 0 skipped; finished in 8.60ms (2.69ms CPU time)
Ran 26 tests for tests/treasury/Collector.t.sol:StreamsTest
[PASS] testApprove() (gas: 49653)
[PASS] testApproveWhenNotFundsAdmin() (gas: 18345)
[PASS] testCancelStreamByFundsAdmin() (gas: 206193)
[PASS] testCancelStreamByRecipient() (gas: 231303)
[PASS] testCancelStreamWhenNotAdminOrRecipient() (gas: 242254)
[PASS] testCancelStreamWhenStreamNotExists() (gas: 22848)
[PASS] testCreateStream() (gas: 244333)
[PASS] testCreateStreamWhenDepositIsZero() (gas: 27266)
[PASS] testCreateStreamWhenNotFundsAdmin() (gas: 24611)
[PASS] testCreateStreamWhenRecipientIsCollector() (gas: 25055)
[PASS] testCreateStreamWhenRecipientIsTheCaller() (gas: 25310)
[PASS] testCreateStreamWhenRecipientIsZero() (gas: 25078)
[PASS] testCreateStreamWhenStartTimeInThePast() (gas: 25778)
[PASS] testCreateStreamWhenStopTimeBeforeStart() (gas: 23224)
[PASS] testGetNextStreamId() (gas: 17598)
[PASS] testGetNotExistingStream() (gas: 18426)
[PASS] testGetStream() (gas: 234368)
[PASS] testTransfer() (gas: 54962)
[PASS] testTransferWhenNotFundsAdmin() (gas: 18347)
[PASS] testWithdrawFromStream() (gas: 307230)
[PASS] testWithdrawFromStreamFinishesSuccessfully() (gas: 230235)
[PASS] testWithdrawFromStreamWhenAmountExceedsBalance() (gas: 243637)
[PASS] testWithdrawFromStreamWhenAmountIsZero() (gas: 238129)
[PASS] testWithdrawFromStreamWhenNotAdminOrRecipient() (gas: 240288)
[PASS] testWithdrawFromStreamWhenStreamNotExists() (gas: 23014)
[PASS] test_receiveEth() (gas: 20319)
Suite result: ok. 26 passed; 0 failed; 0 skipped; finished in 6.03ms (2.93ms CPU time)
2025-05-08T11:53:45.748343Z ERROR cheatcodes: non-empty stderr input=["bash", "-c", "response=\"$([ -e .env ] && grep -q \"FOUNDRY_LIBRARIES\" .env && echo true || echo false)\"; cast abi-encode \"response(bool)\" $response;"] stderr="Warning: This is a nightly build of Foundry. It is recommended to use the latest stable version. Visit https://book.getfoundry.sh/announcements for more information. \nTo mute this warning set `FOUNDRY_DISABLE_NIGHTLY_WARNING` in your environment. \n\n"
2025-05-08T11:53:45.748344Z ERROR cheatcodes: non-empty stderr input=["bash", "-c", "response=\"$([ -e .env ] && grep -q \"FOUNDRY_LIBRARIES\" .env && echo true || echo false)\"; cast abi-encode \"response(bool)\" $response;"] stderr="Warning: This is a nightly build of Foundry. It is recommended to use the latest stable version. Visit https://book.getfoundry.sh/announcements for more information. \nTo mute this warning set `FOUNDRY_DISABLE_NIGHTLY_WARNING` in your environment. \n\n"
2025-05-08T11:53:45.750775Z ERROR cheatcodes: non-empty stderr input=["bash", "-c", "response=\"$([ -e .env ] && grep -q \"FOUNDRY_LIBRARIES\" .env && echo true || echo false)\"; cast abi-encode \"response(bool)\" $response;"] stderr="Warning: This is a nightly build of Foundry. It is recommended to use the latest stable version. Visit https://book.getfoundry.sh/announcements for more information. \nTo mute this warning set `FOUNDRY_DISABLE_NIGHTLY_WARNING` in your environment. \n\n"
Ran 9 tests for tests/gas/AToken.Transfer.gas.t.sol:ATokenTransfer_gas_Tests
[PASS] test_transfer_fullAmount() (gas: 604123)
[PASS] test_transfer_fullAmount_dirtyReceiver() (gas: 1062068)
[PASS] test_transfer_fullAmount_senderCollateralDisabled() (gas: 699965)
[PASS] test_transfer_fullAmount_senderCollateralDisabled_receiverNonZeroFunds() (gas: 1103168)
[PASS] test_transfer_fullAmount_senderCollateralDisabled_receiverNonZeroFunds2() (gas: 1007350)
[PASS] test_transfer_partialAmount() (gas: 700059)
[PASS] test_transfer_partialAmount_receiverNonZeroFunds() (gas: 1103243)
[PASS] test_transfer_partialAmount_senderCollateralEnabled() (gas: 609006)
[PASS] test_transfer_partialAmount_senderCollateralEnabled_receiverNonZeroFunds() (gas: 1012168)
Suite result: ok. 9 passed; 0 failed; 0 skipped; finished in 54.84ms (17.08ms CPU time)
2025-05-08T11:53:45.803553Z ERROR cheatcodes: non-empty stderr input=["bash", "-c", "response=\"$([ -e .env ] && grep -q \"FOUNDRY_LIBRARIES\" .env && echo true || echo false)\"; cast abi-encode \"response(bool)\" $response;"] stderr="Warning: This is a nightly build of Foundry. It is recommended to use the latest stable version. Visit https://book.getfoundry.sh/announcements for more information. \nTo mute this warning set `FOUNDRY_DISABLE_NIGHTLY_WARNING` in your environment. \n\n"
Ran 17 tests for tests/protocol/tokenization/ATokenEdgeCases.t.sol:ATokenEdgeCasesTests
[PASS] testApprove() (gas: 45105)
[PASS] testApproveMax() (gas: 45208)
[PASS] testApproveWithZeroAddressSpender() (gas: 42159)
[PASS] testCheckGetters() (gas: 259765)
[PASS] testDecreaseAllowance() (gas: 53034)
[PASS] testIncreaseAllowance() (gas: 53078)
[PASS] testIncreaseAllowanceFromZero() (gas: 48398)
[PASS] testMintToTreasury_amount_zero() (gas: 15793)
[PASS] testTransferFromZeroAmount() (gas: 129523)
[PASS] test_burn_zeroAddress() (gas: 259125)
[PASS] test_mintToZeroAddress() (gas: 82271)
[PASS] test_poolAdmin_setIncentivesController() (gas: 35820)
[PASS] test_revert_notAdmin_setIncentivesController() (gas: 40389)
[PASS] test_reverts_burnAmountScaledZero() (gas: 19433)
[PASS] test_reverts_mintAmountScaledZero() (gas: 19577)
[PASS] test_transferFrom_zeroAddress_origin() (gas: 129334)
[PASS] test_transfer_amount_MAX_UINT_128() (gas: 16460)
Suite result: ok. 17 passed; 0 failed; 0 skipped; finished in 35.52ms (3.24ms CPU time)
2025-05-08T11:53:45.838985Z ERROR cheatcodes: non-empty stderr input=["bash", "-c", "response=\"$([ -e .env ] && grep -q \"FOUNDRY_LIBRARIES\" .env && echo true || echo false)\"; cast abi-encode \"response(bool)\" $response;"] stderr="Warning: This is a nightly build of Foundry. It is recommended to use the latest stable version. Visit https://book.getfoundry.sh/announcements for more information. \nTo mute this warning set `FOUNDRY_DISABLE_NIGHTLY_WARNING` in your environment. \n\n"
Ran 8 tests for tests/protocol/tokenization/ATokenEvents.t.sol:ATokenEventsTests
[PASS] test_atoken_burnEvents_fullBalance() (gas: 562246)
[PASS] test_atoken_burnEvents_multipleWithdrawals_withInterests() (gas: 649865)
[PASS] test_atoken_burnEvents_singleWithdraw_WithInterests() (gas: 572848)
[PASS] test_atoken_burnEvents_singleWithdraw_noInterests() (gas: 254908)
[PASS] test_atoken_burnEvents_withdrawAmountLessThanInterests() (gas: 575696)
[PASS] test_atoken_mintEvents_firstSupply() (gas: 252188)
[PASS] test_atoken_mintEvents_supplyAfterBorrow() (gas: 628468)
[PASS] test_mintToTreasury_events() (gas: 90162)
Suite result: ok. 8 passed; 0 failed; 0 skipped; finished in 41.67ms (10.24ms CPU time)
2025-05-08T11:53:45.880670Z ERROR cheatcodes: non-empty stderr input=["bash", "-c", "response=\"$([ -e .env ] && grep -q \"FOUNDRY_LIBRARIES\" .env && echo true || echo false)\"; cast abi-encode \"response(bool)\" $response;"] stderr="Warning: This is a nightly build of Foundry. It is recommended to use the latest stable version. Visit https://book.getfoundry.sh/announcements for more information. \nTo mute this warning set `FOUNDRY_DISABLE_NIGHTLY_WARNING` in your environment. \n\n"
Ran 4 tests for tests/protocol/tokenization/ATokenModifiers.t.sol:ATokenModifiersTests
[PASS] test_revert_notAdmin_burn() (gas: 17084)
[PASS] test_revert_notAdmin_mint() (gas: 17178)
[PASS] test_revert_notAdmin_transferOnLiquidation() (gas: 17210)
[PASS] test_revert_notAdmin_transferUnderlyingTo() (gas: 17015)
Suite result: ok. 4 passed; 0 failed; 0 skipped; finished in 31.21ms (247.83µs CPU time)
2025-05-08T11:53:45.912510Z ERROR cheatcodes: non-empty stderr input=["bash", "-c", "response=\"$([ -e .env ] && grep -q \"FOUNDRY_LIBRARIES\" .env && echo true || echo false)\"; cast abi-encode \"response(bool)\" $response;"] stderr="Warning: This is a nightly build of Foundry. It is recommended to use the latest stable version. Visit https://book.getfoundry.sh/announcements for more information. \nTo mute this warning set `FOUNDRY_DISABLE_NIGHTLY_WARNING` in your environment. \n\n"
Ran 9 tests for tests/protocol/tokenization/ATokenPermit.t.sol:ATokenPermitTests
[PASS] testCheckDomainSeparator() (gas: 26163)
[PASS] test_cancelPermit() (gas: 100693)
[PASS] test_chain_fork_calculateDomainSeparator() (gas: 32906)
[PASS] test_revert_submitPermit_0_expiration() (gas: 46698)
[PASS] test_revert_submitPermit_invalid_expiration_previosCurrentBlock() (gas: 47177)
[PASS] test_revert_submitPermit_invalid_nonce() (gas: 55087)
[PASS] test_revert_submitPermit_invalid_owner() (gas: 46525)
[PASS] test_revert_submitPermit_invalid_signature() (gas: 54947)
[PASS] test_submitPermit() (gas: 94296)
Suite result: ok. 9 passed; 0 failed; 0 skipped; finished in 36.62ms (5.46ms CPU time)
2025-05-08T11:53:45.949395Z ERROR cheatcodes: non-empty stderr input=["bash", "-c", "response=\"$([ -e .env ] && grep -q \"FOUNDRY_LIBRARIES\" .env && echo true || echo false)\"; cast abi-encode \"response(bool)\" $response;"] stderr="Warning: This is a nightly build of Foundry. It is recommended to use the latest stable version. Visit https://book.getfoundry.sh/announcements for more information. \nTo mute this warning set `FOUNDRY_DISABLE_NIGHTLY_WARNING` in your environment. \n\n"
Ran 3 tests for tests/protocol/tokenization/ATokenRepay.t.sol:ATokenRepayTests
[PASS] test_repay_allDebt() (gas: 275412)
[PASS] test_repay_partialDebt() (gas: 274535)
[PASS] test_revert_repay_withoutFunds() (gas: 180152)
Suite result: ok. 3 passed; 0 failed; 0 skipped; finished in 31.26ms (1.82ms CPU time)
2025-05-08T11:53:45.981123Z ERROR cheatcodes: non-empty stderr input=["bash", "-c", "response=\"$([ -e .env ] && grep -q \"FOUNDRY_LIBRARIES\" .env && echo true || echo false)\"; cast abi-encode \"response(bool)\" $response;"] stderr="Warning: This is a nightly build of Foundry. It is recommended to use the latest stable version. Visit https://book.getfoundry.sh/announcements for more information. \nTo mute this warning set `FOUNDRY_DISABLE_NIGHTLY_WARNING` in your environment. \n\n"
Ran 3 tests for tests/protocol/tokenization/ATokenRescueTokens.sol:ATokenRescueTokensTests
[PASS] test_rescueTokens() (gas: 77965)
[PASS] test_reverts_rescueTokens_CALLER_NOT_POOL_ADMIN() (gas: 70878)
[PASS] test_reverts_rescueTokens_UNDERLYING_CANNOT_BE_RESCUED() (gas: 71617)
Suite result: ok. 3 passed; 0 failed; 0 skipped; finished in 31.72ms (588.53µs CPU time)
2025-05-08T11:53:46.019661Z ERROR cheatcodes: non-empty stderr input=["bash", "-c", "response=\"$([ -e .env ] && grep -q \"FOUNDRY_LIBRARIES\" .env && echo true || echo false)\"; cast abi-encode \"response(bool)\" $response;"] stderr="Warning: This is a nightly build of Foundry. It is recommended to use the latest stable version. Visit https://book.getfoundry.sh/announcements for more information. \nTo mute this warning set `FOUNDRY_DISABLE_NIGHTLY_WARNING` in your environment. \n\n"
Ran 28 tests for tests/invariants/CryticToFoundry.t.sol:CryticToFoundry
[PASS] test_replay_V33_setUserEMode() (gas: 3683815)
[PASS] test_replay_V33_supply() (gas: 2077206)
[PASS] test_replay_V33_transferFrom() (gas: 2552756)
[PASS] test_replay_v33_2liquidationCall() (gas: 2753953)
[PASS] test_replay_v33_2repayWithAtokens() (gas: 2094335)
[PASS] test_replay_v33_2setUserEMode() (gas: 2578252)
[PASS] test_replay_v33_2transfer() (gas: 2097118)
[PASS] test_replay_v33_3liquidationCall() (gas: 2858687)
[PASS] test_replay_v33_assert_BORROWING_HSPOST_C() (gas: 2205663)
[PASS] test_replay_v33_assert_BORROWING_HSPOST_G() (gas: 2598983)
[PASS] test_replay_v33_borrow() (gas: 6357408)
[PASS] test_replay_v33_echidna_BASE_INVARIANT_B() (gas: 3541210)
[PASS] test_replay_v33_echidna_BORROWING_INVARIANT_B() (gas: 7548672)
[PASS] test_replay_v33_echidna_BORROWING_INVARIANT_C() (gas: 19264751)
[PASS] test_replay_v33_eliminateReserveDeficit() (gas: 3541192)
[PASS] test_replay_v33_liquidationCall() (gas: 2274600)
[PASS] test_replay_v33_repayWithATokens() (gas: 2595997)
[PASS] test_replay_v33_setPoolPause() (gas: 3705403)
[PASS] test_replay_v33_setReserveActive() (gas: 2151398)
[PASS] test_replay_v33_supply() (gas: 2716563)
[PASS] test_v32_2_borrow() (gas: 2279749)
[PASS] test_v32_2_liquidationCall() (gas: 2662728)
[PASS] test_v32_borrow() (gas: 2126146)
[PASS] test_v32_liquidationCall() (gas: 2876854)
[PASS] test_v32_mintToTreasury() (gas: 2545356)
[PASS] test_v32_repay() (gas: 1966607)
[PASS] test_v32_setPoolPause() (gas: 4608999)
[PASS] test_v32_withdrawEchidna() (gas: 2114739)
Suite result: ok. 28 passed; 0 failed; 0 skipped; finished in 458.33ms (433.04ms CPU time)
Ran 13 tests for tests/deployments/DeploymentsGasLimits.t.sol:DeploymentsGasLimits
[PASS] test0AaveV3SetupDeployment() (gas: 4576799)
[PASS] test10ConfigEngineDeployment() (gas: 6574845)
[PASS] test11StaticATokenDeployment() (gas: 6703281)
[PASS] test12PeripheralsTreasuryPartner() (gas: 7595730)
[PASS] test1AaveV3GettersBatch1Deployment() (gas: 6573257)
[PASS] test2AaveV3GettersBatch2Deployment() (gas: 2063021)
[PASS] test3AaveV3PoolDeployment() (gas: 8514974)
[PASS] test4AaveV3L2PoolDeployment() (gas: 8765607)
[PASS] test5PeripheralsRelease() (gas: 7109059)
[PASS] test6MiscDeployment() (gas: 1360629)
[PASS] test7ParaswapDeployment() (gas: 5156198)
[PASS] test8SetupMarket() (gas: 2715177)
[PASS] test9TokensMarket() (gas: 3900799)
Suite result: ok. 13 passed; 0 failed; 0 skipped; finished in 18.20ms (7.65ms CPU time)
2025-05-08T11:53:46.230468Z ERROR cheatcodes: non-empty stderr input=["bash", "-c", "response=\"$([ -e .env ] && grep -q \"FOUNDRY_LIBRARIES\" .env && echo true || echo false)\"; cast abi-encode \"response(bool)\" $response;"] stderr="Warning: This is a nightly build of Foundry. It is recommended to use the latest stable version. Visit https://book.getfoundry.sh/announcements for more information. \nTo mute this warning set `FOUNDRY_DISABLE_NIGHTLY_WARNING` in your environment. \n\n"
Ran 11 tests for tests/protocol/tokenization/ATokenTransfers.t.sol:ATokenTransferTests
[PASS] test_atoken_alice_transfer_all_to_bob() (gas: 162086)
[PASS] test_atoken_alice_transfer_to_bob() (gas: 232071)
[PASS] test_atoken_alice_transfer_to_bob_zero() (gas: 160039)
[PASS] test_atoken_alice_transfer_to_carol_accrues_interests() (gas: 224488)
[PASS] test_atoken_alice_transfer_to_herself() (gas: 81567)
[PASS] test_atoken_alice_transfer_to_herself_zero() (gas: 81608)
[PASS] test_atoken_multiple_transfers() (gas: 201287)
[PASS] test_atoken_transfer_sets_enabled_as_collateral(uint64,uint256) (runs: 1000, μ: 386102, ~: 390609)
[PASS] test_atoken_transfer_some_collateral_from_bob_borrower_to_alice() (gas: 524853)
[PASS] test_atoken_transfer_to_bob_them_bob_borrows() (gas: 395919)
[PASS] test_reverts_atoken_transfer_all_collateral_from_bob_borrower_to_alice() (gas: 405468)
Suite result: ok. 11 passed; 0 failed; 0 skipped; finished in 1.27s (1.24s CPU time)
2025-05-08T11:53:47.287374Z ERROR cheatcodes: non-empty stderr input=["bash", "-c", "response=\"$([ -e .env ] && grep -q \"FOUNDRY_LIBRARIES\" .env && echo true || echo false)\"; cast abi-encode \"response(bool)\" $response;"] stderr="Warning: This is a nightly build of Foundry. It is recommended to use the latest stable version. Visit https://book.getfoundry.sh/announcements for more information. \nTo mute this warning set `FOUNDRY_DISABLE_NIGHTLY_WARNING` in your environment. \n\n"
Ran 12 tests for tests/misc/AaveOracle.t.sol:AaveOracleTest
[PASS] testAddSingleSource() (gas: 936825)
[PASS] testAssetZeroPriceAndZeroFallbackPrice() (gas: 1076118)
[PASS] testAssetZeroPriceNonZeroFallback() (gas: 1096069)
[PASS] testAssetZeroPriceWithoutFallback() (gas: 918563)
[PASS] testEmptySource() (gas: 821552)
[PASS] testGetBaseCurrencyPrice() (gas: 12315)
[PASS] testGetPriceViaFallbackOracle() (gas: 1000286)
[PASS] testUpdateFallbackOracle() (gas: 178617)
[PASS] testUpdateSingleSource() (gas: 126927)
[PASS] testUpdateSourceBaseCurrency() (gas: 138544)
[PASS] test_revert_setAssetSources_inconsistentParams() (gas: 822966)
[PASS] test_revert_setAssetSources_wrongCaller() (gas: 24620)
Suite result: ok. 12 passed; 0 failed; 0 skipped; finished in 35.36ms (2.49ms CPU time)
2025-05-08T11:53:47.321913Z ERROR cheatcodes: non-empty stderr input=["bash", "-c", "response=\"$([ -e .env ] && grep -q \"FOUNDRY_LIBRARIES\" .env && echo true || echo false)\"; cast abi-encode \"response(bool)\" $response;"] stderr="Warning: This is a nightly build of Foundry. It is recommended to use the latest stable version. Visit https://book.getfoundry.sh/announcements for more information. \nTo mute this warning set `FOUNDRY_DISABLE_NIGHTLY_WARNING` in your environment. \n\n"
2025-05-08T11:53:47.339973Z ERROR cheatcodes: non-empty stderr input=["bash", "-c", "response=\"$([ -e .env ] && grep -q \"FOUNDRY_LIBRARIES\" .env && echo true || echo false)\"; cast abi-encode \"response(bool)\" $response;"] stderr="Warning: This is a nightly build of Foundry. It is recommended to use the latest stable version. Visit https://book.getfoundry.sh/announcements for more information. \nTo mute this warning set `FOUNDRY_DISABLE_NIGHTLY_WARNING` in your environment. \n\n"
2025-05-08T11:53:47.388844Z ERROR cheatcodes: non-empty stderr input=["bash", "-c", "response=\"$([ -e .env ] && grep -q \"FOUNDRY_LIBRARIES\" .env && echo true || echo false)\"; cast abi-encode \"response(bool)\" $response;"] stderr="Warning: This is a nightly build of Foundry. It is recommended to use the latest stable version. Visit https://book.getfoundry.sh/announcements for more information. \nTo mute this warning set `FOUNDRY_DISABLE_NIGHTLY_WARNING` in your environment. \n\n"
2025-05-08T11:53:47.419668Z ERROR cheatcodes: non-empty stderr input=["bash", "-c", "response=\"$([ -e .env ] && grep -q \"FOUNDRY_LIBRARIES\" .env && echo true || echo false)\"; cast abi-encode \"response(bool)\" $response;"] stderr="Warning: This is a nightly build of Foundry. It is recommended to use the latest stable version. Visit https://book.getfoundry.sh/announcements for more information. \nTo mute this warning set `FOUNDRY_DISABLE_NIGHTLY_WARNING` in your environment. \n\n"
2025-05-08T11:53:47.475725Z ERROR cheatcodes: non-empty stderr input=["bash", "-c", "response=\"$([ -e .env ] && grep -q \"FOUNDRY_LIBRARIES\" .env && echo true || echo false)\"; cast abi-encode \"response(bool)\" $response;"] stderr="Warning: This is a nightly build of Foundry. It is recommended to use the latest stable version. Visit https://book.getfoundry.sh/announcements for more information. \nTo mute this warning set `FOUNDRY_DISABLE_NIGHTLY_WARNING` in your environment. \n\n"
Ran 5 tests for tests/deployments/AaveV3BatchDeployment.t.sol:AaveV3BatchDeployment
[PASS] testAaveV3BatchDeploy() (gas: 54498880)
[PASS] testAaveV3BatchDeploymentCheck() (gas: 65605571)
[PASS] testAaveV3Batch_reuseIncentivesProxy() (gas: 53975694)
[PASS] testAaveV3L2BatchDeploymentCheck() (gas: 67435647)
[PASS] testAaveV3TreasuryPartnerBatchDeploymentCheck() (gas: 66112640)
Suite result: ok. 5 passed; 0 failed; 0 skipped; finished in 192.74ms (188.30ms CPU time)
Ran 12 tests for tests/deployments/AaveV3BatchTests.t.sol:AaveV3BatchTests
[PASS] test0AaveV3SetupDeployment() (gas: 4576886)
[PASS] test10StaticATokenDeployment() (gas: 6703331)
[PASS] test1AaveV3GettersDeployment() (gas: 7834796)
[PASS] test2AaveV3PoolDeployment() (gas: 8515008)
[PASS] test3AaveV3L2PoolDeployment() (gas: 8765684)
[PASS] test4PeripheralsRelease() (gas: 7109081)
[PASS] test5MiscDeployment() (gas: 929335)
[PASS] test6ParaswapRelease() (gas: 5156175)
[PASS] test7SetupMarket() (gas: 2690501)
[PASS] test8TokensMarket() (gas: 3900808)
[PASS] test9ConfigEngineDeployment() (gas: 6574908)
[PASS] testAaveV3FullBatchOrchestration() (gas: 54495216)
Suite result: ok. 12 passed; 0 failed; 0 skipped; finished in 40.40ms (16.53ms CPU time)
2025-05-08T11:53:47.558438Z ERROR cheatcodes: non-empty stderr input=["bash", "-c", "response=\"$([ -e .env ] && grep -q \"FOUNDRY_LIBRARIES\" .env && echo true || echo false)\"; cast abi-encode \"response(bool)\" $response;"] stderr="Warning: This is a nightly build of Foundry. It is recommended to use the latest stable version. Visit https://book.getfoundry.sh/announcements for more information. \nTo mute this warning set `FOUNDRY_DISABLE_NIGHTLY_WARNING` in your environment. \n\n"
Ran 47 tests for tests/protocol/pool/L2Pool.t.sol:L2PoolTests
[PASS] test_dropReserve() (gas: 98864)
[PASS] test_getBorrowLogic() (gas: 13620)
[PASS] test_getBridgeLogic() (gas: 13706)
[PASS] test_getEModeLogic() (gas: 13708)
[PASS] test_getFlashLoanLogic() (gas: 13685)
[PASS] test_getLiquidationLogic() (gas: 13685)
[PASS] test_getPoolLogic() (gas: 13706)
[PASS] test_getSupplyLogic() (gas: 13683)
[PASS] test_getVirtualUnderlyingBalance() (gas: 244672)
[PASS] test_getters_getUserAccountData() (gas: 598641)
[PASS] test_l2_borrow() (gas: 432414)
[PASS] test_l2_liquidationCall() (gas: 1083406)
[PASS] test_l2_partial_withdraw() (gas: 307375)
[PASS] test_l2_repay() (gas: 461025)
[PASS] test_l2_repay_atokens() (gas: 468685)
[PASS] test_l2_repay_permit(uint128,uint128,uint128,uint128,uint128) (runs: 1000, μ: 630490, ~: 627817)
[PASS] test_l2_set_user_collateral() (gas: 267056)
[PASS] test_l2_supply() (gas: 250760)
[PASS] test_l2_supply_permit(uint128,uint128) (runs: 1000, μ: 419244, ~: 419248)
[PASS] test_l2_withdraw() (gas: 243292)
[PASS] test_mintToTreasury() (gas: 693612)
[PASS] test_mintToTreasury_skip_invalid_addresses() (gas: 698171)
[PASS] test_noop_setUserUseReserveAsCollateral_true_when_already_is_activated() (gas: 290835)
[PASS] test_pool_defaultValues() (gas: 4368448)
[PASS] test_rescueTokens(uint256) (runs: 1000, μ: 81916, ~: 82198)
[PASS] test_resetIsolationModeTotalDebt() (gas: 721884)
[PASS] test_reverts_initReserve_not_poolConfigurator(address) (runs: 1000, μ: 25515, ~: 25515)
[PASS] test_reverts_modifiers_not_poolConfigurator(address) (runs: 1000, μ: 127035, ~: 127035)
[PASS] test_reverts_new_Pool_invalidAddressesProvider() (gas: 4380496)
[PASS] test_reverts_setReserveInterestRateStrategyAddress_AssetNotListed(address,address) (runs: 1000, μ: 43827, ~: 43827)
[PASS] test_reverts_setReserveInterestRateStrategyAddress_ZeroAssetAddress(address) (runs: 1000, μ: 22733, ~: 22733)
[PASS] test_reverts_setUserEmode_0_bad_hf() (gas: 969520)
[PASS] test_reverts_setUserUseReserveAsCollateral_false_hf_lower_lqt() (gas: 600724)
[PASS] test_reverts_setUserUseReserveAsCollateral_true_ltv_zero() (gas: 296738)
[PASS] test_reverts_setUserUseReserveAsCollateral_true_reserve_inactive() (gas: 212016)
[PASS] test_reverts_setUserUseReserveAsCollateral_true_reserve_paused() (gas: 291598)
[PASS] test_reverts_setUserUseReserveAsCollateral_true_user_balance_zero() (gas: 71869)
[PASS] test_reverts_setUserUseReserveAsCollateral_true_user_isolation_mode() (gas: 778678)
[PASS] test_setLiquidationGracePeriod(uint40) (runs: 1000, μ: 34645, ~: 34746)
[PASS] test_setLiquidationGracePeriod_assetNotListed(uint40) (runs: 1000, μ: 27115, ~: 27115)
[PASS] test_setReserveInterestRateStrategyAddress() (gas: 899736)
[PASS] test_setUserEmode() (gas: 227668)
[PASS] test_setUserEmode_twice() (gas: 358158)
[PASS] test_setUserEmode_twice_inconsistent_category() (gas: 968439)
[PASS] test_setUserUseReserveAsCollateral_false() (gas: 240307)
[PASS] test_setUserUseReserveAsCollateral_true() (gas: 277892)
[PASS] test_updateBridgeProtocolFee() (gas: 187)
Suite result: ok. 47 passed; 0 failed; 0 skipped; finished in 6.00s (5.96s CPU time)
Ran 5 tests for tests/protocol/libraries/math/MathUtils.t.sol:MathUtilsTests
[PASS] test_calculateCompoundInterest_1() (gas: 10340)
[PASS] test_calculateCompoundInterest_2() (gas: 10337)
[PASS] test_calculateCompoundInterest_edge() (gas: 9166)
[PASS] test_calculateLinearInterest() (gas: 9211)
[PASS] test_constants() (gas: 8334)
Suite result: ok. 5 passed; 0 failed; 0 skipped; finished in 2.50ms (207.95µs CPU time)
2025-05-08T11:53:51.750016Z ERROR cheatcodes: non-empty stderr input=["bash", "-c", "response=\"$([ -e .env ] && grep -q \"FOUNDRY_LIBRARIES\" .env && echo true || echo false)\"; cast abi-encode \"response(bool)\" $response;"] stderr="Warning: This is a nightly build of Foundry. It is recommended to use the latest stable version. Visit https://book.getfoundry.sh/announcements for more information. \nTo mute this warning set `FOUNDRY_DISABLE_NIGHTLY_WARNING` in your environment. \n\n"
Ran 17 tests for tests/extensions/paraswap-adapters/ParaswapAdapters.t.sol:ParaswapAdaptersTest
[PASS] test_rescueTokens() (gas: 196192)
[PASS] test_reverts_offset_out_of_range_swap_liquidity_permit_flashloan() (gas: 739954)
[PASS] test_reverts_swapAndDeposit_offset() (gas: 811061)
[PASS] test_reverts_swapAndRepay_offset_out_of_range() (gas: 912655)
[PASS] test_reverts_withdrawAndSwap_offset_out_of_range() (gas: 791019)
[PASS] test_swapAndDeposit() (gas: 891441)
[PASS] test_swapAndDeposit_permit() (gas: 938470)
[PASS] test_swapAndRepay() (gas: 987298)
[PASS] test_swapAndRepay_flashloan() (gas: 1076146)
[PASS] test_swapAndRepay_flashloan_permit() (gas: 1118777)
[PASS] test_swapAndRepay_no_collateral_leftovers() (gas: 1036783)
[PASS] test_swapAndRepay_permit() (gas: 1034175)
[PASS] test_swap_liquidity_flashloan() (gas: 1002304)
[PASS] test_swap_liquidity_permit_flashloan() (gas: 1044828)
[PASS] test_withdrawAndSwap() (gas: 808494)
[PASS] test_withdrawAndSwap_permit() (gas: 851595)
[PASS] test_withdrawSwapAdapter_reverts_flashloan() (gas: 532838)
Suite result: ok. 17 passed; 0 failed; 0 skipped; finished in 76.25ms (40.74ms CPU time)
Ran 5 tests for tests/protocol/libraries/math/PercentageMath.t.sol:PercentageMathTests
[PASS] test_constants() (gas: 10165)
[PASS] test_percentDiv() (gas: 11147)
[PASS] test_percentDiv_fuzz(uint256,uint256) (runs: 1000, μ: 10597, ~: 10678)
[PASS] test_percentMul() (gas: 11154)
[PASS] test_percentMul_fuzz(uint256,uint256) (runs: 1000, μ: 10599, ~: 11209)
Suite result: ok. 5 passed; 0 failed; 0 skipped; finished in 112.13ms (110.98ms CPU time)
2025-05-08T11:53:51.937061Z ERROR cheatcodes: non-empty stderr input=["bash", "-c", "response=\"$([ -e .env ] && grep -q \"FOUNDRY_LIBRARIES\" .env && echo true || echo false)\"; cast abi-encode \"response(bool)\" $response;"] stderr="Warning: This is a nightly build of Foundry. It is recommended to use the latest stable version. Visit https://book.getfoundry.sh/announcements for more information. \nTo mute this warning set `FOUNDRY_DISABLE_NIGHTLY_WARNING` in your environment. \n\n"
Ran 18 tests for tests/protocol/pool/Pool.Borrow.t.sol:PoolBorrowTests
[PASS] test_borrow_variable_in_isolation() (gas: 556781)
[PASS] test_reverts_borrow_cap() (gas: 303525)
[PASS] test_reverts_borrow_collateral_balance_zero() (gas: 81484)
[PASS] test_reverts_borrow_collateral_can_not_cover() (gas: 315212)
[PASS] test_reverts_borrow_debt_ceiling() (gas: 649154)
[PASS] test_reverts_borrow_debt_ceiling_exceeded() (gas: 390265)
[PASS] test_reverts_borrow_hf_lt_1() (gas: 563284)
[PASS] test_reverts_borrow_inconsistent_emode_category() (gas: 429768)
[PASS] test_reverts_borrow_invalidAmount() (gas: 64941)
[PASS] test_reverts_borrow_not_borrowable_isolation() (gas: 374498)
[PASS] test_reverts_borrow_reserveFrozen() (gas: 132863)
[PASS] test_reverts_borrow_reserveInactive() (gas: 140844)
[PASS] test_reverts_borrow_reservePaused() (gas: 103564)
[PASS] test_reverts_borrow_sentinel_oracle_down() (gas: 315651)
[PASS] test_reverts_borrow_sioled_borrowing_violation() (gas: 708151)
[PASS] test_reverts_deprecated_stable_borrow() (gas: 406653)
[PASS] test_reverts_variable_borrow_transferred_funds() (gas: 381059)
[PASS] test_variable_borrow() (gas: 346821)
Suite result: ok. 18 passed; 0 failed; 0 skipped; finished in 49.38ms (13.82ms CPU time)
2025-05-08T11:53:51.988631Z ERROR cheatcodes: non-empty stderr input=["bash", "-c", "response=\"$([ -e .env ] && grep -q \"FOUNDRY_LIBRARIES\" .env && echo true || echo false)\"; cast abi-encode \"response(bool)\" $response;"] stderr="Warning: This is a nightly build of Foundry. It is recommended to use the latest stable version. Visit https://book.getfoundry.sh/announcements for more information. \nTo mute this warning set `FOUNDRY_DISABLE_NIGHTLY_WARNING` in your environment. \n\n"
Ran 26 tests for tests/protocol/pool/Pool.Liquidations.t.sol:PoolLiquidationTests
[PASS] test_deficit_increased_after_liquidate_bad_debt() (gas: 812898)
[PASS] test_full_liquidate_atokens_multiple_variable_borrows() (gas: 949068)
[PASS] test_full_liquidate_multiple_supplies_and_variable_borrows() (gas: 1147560)
[PASS] test_full_liquidate_multiple_variable_borrows() (gas: 1008759)
[PASS] test_liquidate_borrow_bad_debt() (gas: 826202)
[PASS] test_liquidate_borrow_burn_multiple_assets_bad_debt() (gas: 1192405)
[PASS] test_liquidate_emode_position_without_emode_oracle() (gas: 1039162)
[PASS] test_liquidate_isolated_position() (gas: 898213)
[PASS] test_liquidate_variable_borrow_no_fee() (gas: 834719)
[PASS] test_liquidate_variable_borrow_repro() (gas: 1053155)
[PASS] test_liquidate_variable_borrow_same_collateral_and_borrow() (gas: 687667)
[PASS] test_liquidation_when_grace_period_disabled(uint40) (runs: 1000, μ: 875859, ~: 876178)
[PASS] test_liquidation_with_liquidation_grace_period_collateral_active(uint40) (runs: 1000, μ: 1089019, ~: 1093201)
[PASS] test_liquidation_with_liquidation_grace_period_debt_active(uint40) (runs: 1000, μ: 1085098, ~: 1090697)
[PASS] test_liquidation_with_liquidation_grace_period_debt_collateral_active(uint40) (runs: 1000, μ: 1101102, ~: 1106946)
[PASS] test_partial_liquidate_atokens_variable_borrow() (gas: 885575)
[PASS] test_partial_liquidate_variable_borrow() (gas: 837886)
[PASS] test_reverts_liquidation_collateral_not_active() (gas: 632503)
[PASS] test_reverts_liquidation_hf_gt_liquidation_threshold() (gas: 465323)
[PASS] test_reverts_liquidation_invalid_borrow() (gas: 596613)
[PASS] test_reverts_liquidation_oracle_sentinel_on() (gas: 337410)
[PASS] test_reverts_liquidation_reserveInactive() (gas: 169134)
[PASS] test_reverts_liquidation_reservePaused() (gas: 134538)
[PASS] test_self_liquidate_isolated_position_shoulDisableCollateral() (gas: 852218)
[PASS] test_self_liquidate_isolated_position_shoulEnableCollateralIfIsolatedSupplier() (gas: 902412)
[PASS] test_self_liquidate_position_shoulKeepCollateralEnabled() (gas: 776982)
Suite result: ok. 26 passed; 0 failed; 0 skipped; finished in 19.57s (19.52s CPU time)
2025-05-08T11:54:05.311513Z ERROR cheatcodes: non-empty stderr input=["bash", "-c", "response=\"$([ -e .env ] && grep -q \"FOUNDRY_LIBRARIES\" .env && echo true || echo false)\"; cast abi-encode \"response(bool)\" $response;"] stderr="Warning: This is a nightly build of Foundry. It is recommended to use the latest stable version. Visit https://book.getfoundry.sh/announcements for more information. \nTo mute this warning set `FOUNDRY_DISABLE_NIGHTLY_WARNING` in your environment. \n\n"
Ran 17 tests for tests/gas/Pool.Operations.gas.t.sol:PoolOperations_gas_Tests
[PASS] test_borrow() (gas: 987208)
[PASS] test_flashLoanSimple() (gas: 640023)
[PASS] test_flashLoan_with_one_asset() (gas: 769228)
[PASS] test_flashLoan_with_one_asset_with_borrowing() (gas: 1198241)
[PASS] test_flashLoan_with_two_assets() (gas: 1098816)
[PASS] test_flashLoan_with_two_assets_with_borrowing() (gas: 1924068)
[PASS] test_liquidationCall_deficit() (gas: 1413756)
[PASS] test_liquidationCall_deficitInAdditionalReserve() (gas: 1796819)
[PASS] test_liquidationCall_full() (gas: 1413867)
[PASS] test_liquidationCall_partial() (gas: 1399739)
[PASS] test_liquidationCall_receive_ATokens_full() (gas: 1390247)
[PASS] test_liquidationCall_receive_ATokens_partial() (gas: 1375880)
[PASS] test_repay() (gas: 1362036)
[PASS] test_repay_with_ATokens() (gas: 1161938)
[PASS] test_supply() (gas: 1859837)
[PASS] test_withdraw() (gas: 807238)
[PASS] test_withdraw_with_active_borrows() (gas: 980999)
Suite result: ok. 17 passed; 0 failed; 0 skipped; finished in 85.28ms (47.53ms CPU time)
2025-05-08T11:54:05.399859Z ERROR cheatcodes: non-empty stderr input=["bash", "-c", "response=\"$([ -e .env ] && grep -q \"FOUNDRY_LIBRARIES\" .env && echo true || echo false)\"; cast abi-encode \"response(bool)\" $response;"] stderr="Warning: This is a nightly build of Foundry. It is recommended to use the latest stable version. Visit https://book.getfoundry.sh/announcements for more information. \nTo mute this warning set `FOUNDRY_DISABLE_NIGHTLY_WARNING` in your environment. \n\n"
Ran 17 tests for tests/extensions/stata-token/ERC20AaveLMUpgradable.t.sol:ERC20AaveLMUpgradableTest
[PASS] test_7201() (gas: 3358)
[PASS] test_claimRewards(uint256,uint32,uint88,uint32) (runs: 1000, μ: 833702, ~: 796331)
[PASS] test_claimRewardsOnBehalfOf_self(uint256,uint32,uint88,uint32) (runs: 1000, μ: 836066, ~: 796886)
[PASS] test_claimRewardsOnBehalfOf_shouldRevertForInvalidClaimer(uint256,uint32,uint88,uint32) (runs: 1000, μ: 771120, ~: 772580)
[PASS] test_claimRewardsOnBehalfOf_validClaimer(uint256,uint32,uint88,uint32) (runs: 1000, μ: 868245, ~: 828943)
[PASS] test_claimRewardsToSelf(uint256,uint32,uint88,uint32) (runs: 1000, μ: 832466, ~: 796243)
[PASS] test_claimableRewards(uint256,uint32,uint88,uint32) (runs: 1000, μ: 771516, ~: 773480)
[PASS] test_collectAndUpdateRewards(uint256,uint32,uint88,uint32) (runs: 1000, μ: 816167, ~: 792599)
[PASS] test_correctAccountingForDelayedRegistration() (gas: 822120)
[PASS] test_getReferenceAsset() (gas: 12908)
[PASS] test_isRegisteredRewardToken() (gas: 632952)
[PASS] test_noRewardsInitialized() (gas: 39241)
[PASS] test_noopWhenNotInitialized() (gas: 52824)
[PASS] test_rewardTokens() (gas: 631057)
[PASS] test_transfer(uint256,uint32,uint88,uint32,address,uint256) (runs: 1000, μ: 845835, ~: 863123)
[PASS] test_transfer_toSelf(uint256,uint32,uint88,uint32) (runs: 1000, μ: 804704, ~: 797175)
[PASS] test_zeroIncentivesController() (gas: 37692)
Suite result: ok. 17 passed; 0 failed; 0 skipped; finished in 19.33s (19.30s CPU time)
2025-05-08T11:54:05.561220Z ERROR cheatcodes: non-empty stderr input=["bash", "-c", "response=\"$([ -e .env ] && grep -q \"FOUNDRY_LIBRARIES\" .env && echo true || echo false)\"; cast abi-encode \"response(bool)\" $response;"] stderr="Warning: This is a nightly build of Foundry. It is recommended to use the latest stable version. Visit https://book.getfoundry.sh/announcements for more information. \nTo mute this warning set `FOUNDRY_DISABLE_NIGHTLY_WARNING` in your environment. \n\n"
Ran 17 tests for tests/extensions/v3-config-engine/AaveV3ConfigEngineTest.t.sol:AaveV3ConfigEngineTest
[PASS] testAssetEModeUpdates() (gas: 4042895)
[PASS] testBorrowUpdatesNoChange() (gas: 3081778)
[PASS] testBorrowsUpdates() (gas: 3148980)
[PASS] testCapsUpdate() (gas: 3091941)
[PASS] testCollateralUpdateCorrectBonus() (gas: 3106328)
[PASS] testCollateralUpdateWrongBonus() (gas: 732663)
[PASS] testCollateralsUpdates() (gas: 3105921)
[PASS] testCollateralsUpdatesNoChange() (gas: 3079753)
[PASS] testCollateralsUpdatesNoChangeShouldNotEmit() (gas: 738297)
[PASS] testEModeCategoryUpdates() (gas: 3178376)
[PASS] testEModeCategoryUpdatesNoChange() (gas: 3077483)
[PASS] testEModeCategoryUpdatesNoChangeShouldNotEmit() (gas: 717805)
[PASS] testEModeCategoryUpdatesWrongBonus() (gas: 720961)
[PASS] testListings() (gas: 6257318)
[PASS] testListingsCustom() (gas: 9979406)
[PASS] testPriceFeedsUpdates() (gas: 3162892)
[PASS] testRateStrategiesUpdates() (gas: 3159889)
Suite result: ok. 17 passed; 0 failed; 0 skipped; finished in 21.72s (21.67s CPU time)
2025-05-08T11:54:09.286676Z ERROR cheatcodes: non-empty stderr input=["bash", "-c", "response=\"$([ -e .env ] && grep -q \"FOUNDRY_LIBRARIES\" .env && echo true || echo false)\"; cast abi-encode \"response(bool)\" $response;"] stderr="Warning: This is a nightly build of Foundry. It is recommended to use the latest stable version. Visit https://book.getfoundry.sh/announcements for more information. \nTo mute this warning set `FOUNDRY_DISABLE_NIGHTLY_WARNING` in your environment. \n\n"
2025-05-08T11:54:09.303712Z ERROR cheatcodes: non-empty stderr input=["bash", "-c", "response=\"$([ -e .env ] && grep -q \"FOUNDRY_LIBRARIES\" .env && echo true || echo false)\"; cast abi-encode \"response(bool)\" $response;"] stderr="Warning: This is a nightly build of Foundry. It is recommended to use the latest stable version. Visit https://book.getfoundry.sh/announcements for more information. \nTo mute this warning set `FOUNDRY_DISABLE_NIGHTLY_WARNING` in your environment. \n\n"
Ran 2 tests for tests/deployments/AaveV3PermissionsTest.t.sol:AaveV3PermissionsTest
[PASS] testCheckPermissions() (gas: 52865142)
[PASS] testCheckPermissionsTreasuryPartner() (gas: 53354503)
Suite result: ok. 2 passed; 0 failed; 0 skipped; finished in 43.63ms (35.76ms CPU time)
2025-05-08T11:54:09.325472Z ERROR cheatcodes: non-empty stderr input=["bash", "-c", "response=\"$([ -e .env ] && grep -q \"FOUNDRY_LIBRARIES\" .env && echo true || echo false)\"; cast abi-encode \"response(bool)\" $response;"] stderr="Warning: This is a nightly build of Foundry. It is recommended to use the latest stable version. Visit https://book.getfoundry.sh/announcements for more information. \nTo mute this warning set `FOUNDRY_DISABLE_NIGHTLY_WARNING` in your environment. \n\n"
Ran 7 tests for tests/protocol/configuration/AddressesProviderRegistry.t.sol:PoolAddressesProviderRegistryTest
[PASS] testAddAddressesProvider() (gas: 120577)
[PASS] testRemoveAddressesProvider() (gas: 97125)
[PASS] testRemoveMultipleAddressesProvider() (gas: 242924)
[PASS] test_addressesProviderAddedToRegistry() (gas: 16357)
[PASS] test_removesLastProvider() (gas: 32624)
[PASS] test_revert_registry_0() (gas: 15558)
[PASS] test_revert_removeNonExistingAddressesProvider() (gas: 27567)
Suite result: ok. 7 passed; 0 failed; 0 skipped; finished in 32.76ms (1.65ms CPU time)
2025-05-08T11:54:09.359295Z ERROR cheatcodes: non-empty stderr input=["bash", "-c", "response=\"$([ -e .env ] && grep -q \"FOUNDRY_LIBRARIES\" .env && echo true || echo false)\"; cast abi-encode \"response(bool)\" $response;"] stderr="Warning: This is a nightly build of Foundry. It is recommended to use the latest stable version. Visit https://book.getfoundry.sh/announcements for more information. \nTo mute this warning set `FOUNDRY_DISABLE_NIGHTLY_WARNING` in your environment. \n\n"
Ran 1 test for tests/template/BaseTest.t.sol:BaseTest
[PASS] test_default() (gas: 245785)
Suite result: ok. 1 passed; 0 failed; 0 skipped; finished in 32.04ms (373.88µs CPU time)
2025-05-08T11:54:09.391048Z ERROR cheatcodes: non-empty stderr input=["bash", "-c", "response=\"$([ -e .env ] && grep -q \"FOUNDRY_LIBRARIES\" .env && echo true || echo false)\"; cast abi-encode \"response(bool)\" $response;"] stderr="Warning: This is a nightly build of Foundry. It is recommended to use the latest stable version. Visit https://book.getfoundry.sh/announcements for more information. \nTo mute this warning set `FOUNDRY_DISABLE_NIGHTLY_WARNING` in your environment. \n\n"
Ran 12 tests for tests/protocol/libraries/logic/BridgeLogic.t.sol:BridgeLogicTests
[PASS] test_backUnbacked_but_unbacked_is_zero_with_fee() (gas: 190752)
[PASS] test_backUnbacked_but_unbacked_is_zero_with_only_fee() (gas: 190810)
[PASS] test_backUnbacked_but_unbacked_is_zero_without_fee() (gas: 156156)
[PASS] test_backUnbacked_onlyFee() (gas: 356414)
[PASS] test_backUnbacked_withFee() (gas: 356594)
[PASS] test_backUnbacked_withoutFee() (gas: 333892)
[PASS] test_multiple_backUnbacked() (gas: 631087)
[PASS] test_multiple_unbackedMint_with_cap() (gas: 478054)
[PASS] test_revert_multiple_unbackedMint_with_cap() (gas: 419371)
[PASS] test_revert_unathorized_unbackedMint() (gas: 30598)
[PASS] test_revert_unbackedMint_zero_cap() (gas: 86100)
[PASS] test_unbackedMint_with_cap() (gas: 265578)
Suite result: ok. 12 passed; 0 failed; 0 skipped; finished in 44.51ms (13.13ms CPU time)
Ran 5 tests for tests/treasury/Collector.t.sol:CollectorTest
[PASS] testApprove() (gas: 49719)
[PASS] testApproveWhenNotFundsAdmin() (gas: 18193)
[PASS] testTransfer() (gas: 54873)
[PASS] testTransferWhenNotFundsAdmin() (gas: 18217)
[PASS] test_receiveEth() (gas: 20274)
Suite result: ok. 5 passed; 0 failed; 0 skipped; finished in 3.28ms (283.44µs CPU time)
2025-05-08T11:54:09.439975Z ERROR cheatcodes: non-empty stderr input=["bash", "-c", "response=\"$([ -e .env ] && grep -q \"FOUNDRY_LIBRARIES\" .env && echo true || echo false)\"; cast abi-encode \"response(bool)\" $response;"] stderr="Warning: This is a nightly build of Foundry. It is recommended to use the latest stable version. Visit https://book.getfoundry.sh/announcements for more information. \nTo mute this warning set `FOUNDRY_DISABLE_NIGHTLY_WARNING` in your environment. \n\n"
Ran 9 tests for tests/rewards/EmissionsManager.t.sol:EmissionManagerTest
[PASS] test_configureAssets() (gas: 598178)
[PASS] test_new_EmissionManager() (gas: 747563)
[PASS] test_setClaimer() (gas: 51471)
[PASS] test_setDistributionEnd() (gas: 605447)
[PASS] test_setEmissionAdmin() (gas: 43012)
[PASS] test_setEmissionPerSecond() (gas: 611936)
[PASS] test_setRewardOracle() (gas: 687194)
[PASS] test_setRewardsController() (gas: 19086)
[PASS] test_setTransferStrategy() (gas: 888756)
Suite result: ok. 9 passed; 0 failed; 0 skipped; finished in 33.12ms (1.93ms CPU time)
Ran 6 tests for tests/misc/aave-upgradeability/InitializableImmutableAdminUpgradeabilityProxy.t.sol:InitializableImmutableAdminUpgradeabilityProxyTests
[PASS] test_proxy_fallback() (gas: 597826)
[PASS] test_proxy_upgradeTo() (gas: 619697)
[PASS] test_proxy_upgradeToAndCall() (gas: 625580)
[PASS] test_proxy_upgradeToAndCall_initialize() (gas: 594922)
[PASS] test_reverts_upgradeToAndCall_notAdmin() (gas: 600809)
[PASS] test_reverts_upgradeTo_notAdmin() (gas: 598615)
Suite result: ok. 6 passed; 0 failed; 0 skipped; finished in 3.07ms (1.81ms CPU time)
2025-05-08T11:54:09.477578Z ERROR cheatcodes: non-empty stderr input=["bash", "-c", "response=\"$([ -e .env ] && grep -q \"FOUNDRY_LIBRARIES\" .env && echo true || echo false)\"; cast abi-encode \"response(bool)\" $response;"] stderr="Warning: This is a nightly build of Foundry. It is recommended to use the latest stable version. Visit https://book.getfoundry.sh/announcements for more information. \nTo mute this warning set `FOUNDRY_DISABLE_NIGHTLY_WARNING` in your environment. \n\n"
Ran 11 tests for tests/misc/PriceOracleSentinel.t.sol:PriceOracleSentinelTest
[PASS] test_isBorrowAllowed_network_down() (gas: 27223)
[PASS] test_isBorrowAllowed_network_up_not_grace_period() (gas: 46925)
[PASS] test_isBorrowAllowed_true_network_up_grace_period_pass() (gas: 46979)
[PASS] test_isLiquidationAllowed_network_down() (gas: 27134)
[PASS] test_isLiquidationAllowed_network_up_not_grace_period() (gas: 46902)
[PASS] test_isLiquidationAllowed_true_network_up_grace_period_pass() (gas: 47000)
[PASS] test_new_PriceOracleSentinel() (gas: 423731)
[PASS] test_reverts_setGracePeriod_not_poolAdmin() (gas: 25829)
[PASS] test_reverts_setSequencerOracle_not_poolAdmin() (gas: 22737)
[PASS] test_setGracePeriod() (gas: 32496)
[PASS] test_setSequencerOracle() (gas: 24631)
Suite result: ok. 11 passed; 0 failed; 0 skipped; finished in 33.44ms (970.29µs CPU time)
2025-05-08T11:54:09.515142Z ERROR cheatcodes: non-empty stderr input=["bash", "-c", "response=\"$([ -e .env ] && grep -q \"FOUNDRY_LIBRARIES\" .env && echo true || echo false)\"; cast abi-encode \"response(bool)\" $response;"] stderr="Warning: This is a nightly build of Foundry. It is recommended to use the latest stable version. Visit https://book.getfoundry.sh/announcements for more information. \nTo mute this warning set `FOUNDRY_DISABLE_NIGHTLY_WARNING` in your environment. \n\n"
Ran 15 tests for tests/gas/ProtocolDataProvider.gas.t.sol:ProtocolDataProvider_gas_Tests
[PASS] test_getATokenTotalSupply() (gas: 45824)
[PASS] test_getDebtCeiling() (gas: 27099)
[PASS] test_getFlashLoanEnabled() (gas: 27199)
[PASS] test_getInterestRateStrategyAddress() (gas: 50707)
[PASS] test_getIsVirtualAccActive() (gas: 27206)
[PASS] test_getLiquidationProtocolFee() (gas: 27158)
[PASS] test_getPaused() (gas: 27250)
[PASS] test_getReserveCaps() (gas: 27176)
[PASS] test_getReserveConfigurationData() (gas: 28077)
[PASS] test_getReserveTokensAddresses() (gas: 31054)
[PASS] test_getSiloedBorrowing() (gas: 27254)
[PASS] test_getTotalDebt() (gas: 45846)
[PASS] test_getUnbackedMintCap() (gas: 27097)
[PASS] test_getUserReserveData() (gas: 539271)
[PASS] test_getVirtualUnderlyingBalance() (gas: 26880)
Suite result: ok. 15 passed; 0 failed; 0 skipped; finished in 40.44ms (2.50ms CPU time)
2025-05-08T11:54:09.552718Z ERROR cheatcodes: non-empty stderr input=["bash", "-c", "response=\"$([ -e .env ] && grep -q \"FOUNDRY_LIBRARIES\" .env && echo true || echo false)\"; cast abi-encode \"response(bool)\" $response;"] stderr="Warning: This is a nightly build of Foundry. It is recommended to use the latest stable version. Visit https://book.getfoundry.sh/announcements for more information. \nTo mute this warning set `FOUNDRY_DISABLE_NIGHTLY_WARNING` in your environment. \n\n"
Ran 13 tests for tests/misc/rates/RateStrategy.calculateRates.t.sol:RateStrategyCalculateRatesTests
[PASS] test_calculate_rates_100_percent_usage() (gas: 48587)
Logs:
Bound result 8000
Bound result 400
[PASS] test_calculate_rates_80_bps_usage() (gas: 48706)
Logs:
Bound result 8000
Bound result 400
[PASS] test_calculate_rates_80_percent_usage() (gas: 91357)
Logs:
Bound result 8000
Bound result 400
[PASS] test_calculate_rates_80_percent_usage_and_50_percent_supply_usage_due_minted_tokens() (gas: 46912)
Logs:
Bound result 8000
Bound result 400
[PASS] test_calculate_rates_80_percent_usage_and_80_bps_supply_usage_due_minted_tokens() (gas: 46934)
Logs:
Bound result 8000
Bound result 400
[PASS] test_calculate_rates_above_op_usage((uint16,uint32,uint32,uint32),uint256,uint256,uint256) (runs: 1000, μ: 124134, ~: 124369)
[PASS] test_calculate_rates_below_op_usage((uint16,uint32,uint32,uint32),uint256,uint256,uint256) (runs: 1000, μ: 118612, ~: 121027)
[PASS] test_calculate_rates_below_op_usage_when_no_debt((uint16,uint32,uint32,uint32),uint256,uint256) (runs: 1000, μ: 75500, ~: 76058)
[PASS] test_calculate_rates_empty_reserve((uint16,uint32,uint32,uint32)) (runs: 1000, μ: 44222, ~: 44123)
[PASS] test_calculate_rates_when_not_using_virtual_valance((uint16,uint32,uint32,uint32),uint256,uint256) (runs: 1000, μ: 68106, ~: 69107)
[PASS] test_calculate_rates_when_total_debt_0((uint16,uint32,uint32,uint32),uint256,uint256) (runs: 1000, μ: 68486, ~: 69327)
[PASS] test_fuzz_calculate_rates_80_percent_usage_added_and_virtual_equal(uint256) (runs: 1000, μ: 33324, ~: 32997)
[PASS] test_zero_rates_strategy_calculate_rates() (gas: 19289)
Suite result: ok. 13 passed; 0 failed; 0 skipped; finished in 3.90s (3.87s CPU time)
2025-05-08T11:54:13.451931Z ERROR cheatcodes: non-empty stderr input=["bash", "-c", "response=\"$([ -e .env ] && grep -q \"FOUNDRY_LIBRARIES\" .env && echo true || echo false)\"; cast abi-encode \"response(bool)\" $response;"] stderr="Warning: This is a nightly build of Foundry. It is recommended to use the latest stable version. Visit https://book.getfoundry.sh/announcements for more information. \nTo mute this warning set `FOUNDRY_DISABLE_NIGHTLY_WARNING` in your environment. \n\n"
Ran 7 tests for tests/misc/rates/RateStrategy.setters.t.sol:RateStrategySettersTests
[PASS] test_new_SetReserveInterestRateParams((uint16,uint32,uint32,uint32)) (runs: 1000, μ: 52553, ~: 52483)
[PASS] test_new_SetReserveInterestRateParams_when_not_configurator((uint16,uint32,uint32,uint32)) (runs: 1000, μ: 26293, ~: 26215)
[PASS] test_reverts_SetReserveInterestRateParams_when_gt_maxRate((uint16,uint32,uint32,uint32)) (runs: 1000, μ: 29728, ~: 29827)
[PASS] test_reverts_SetReserveInterestRateParams_when_gt_max_op((uint16,uint32,uint32,uint32)) (runs: 1000, μ: 22536, ~: 22536)
[PASS] test_reverts_SetReserveInterestRateParams_when_lt_min_op((uint16,uint32,uint32,uint32)) (runs: 1000, μ: 22584, ~: 22584)
[PASS] test_reverts_SetReserveInterestRateParams_when_reserve_0((uint16,uint32,uint32,uint32)) (runs: 1000, μ: 27210, ~: 27140)
[PASS] test_reverts_SetReserveInterestRateParams_when_slope1_gt_slope2((uint16,uint32,uint32,uint32)) (runs: 1000, μ: 23886, ~: 23886)
Suite result: ok. 7 passed; 0 failed; 0 skipped; finished in 1.66s (1.63s CPU time)
2025-05-08T11:54:15.116324Z ERROR cheatcodes: non-empty stderr input=["bash", "-c", "response=\"$([ -e .env ] && grep -q \"FOUNDRY_LIBRARIES\" .env && echo true || echo false)\"; cast abi-encode \"response(bool)\" $response;"] stderr="Warning: This is a nightly build of Foundry. It is recommended to use the latest stable version. Visit https://book.getfoundry.sh/announcements for more information. \nTo mute this warning set `FOUNDRY_DISABLE_NIGHTLY_WARNING` in your environment. \n\n"
Ran 15 tests for tests/protocol/pool/Pool.Repay.t.sol:PoolRepayTests
[PASS] test_full_repay_borrow_variable_in_isolation() (gas: 575952)
[PASS] test_partial_repay_borrow_variable_in_isolation() (gas: 628389)
[PASS] test_repayWithATokens_full_collateral_variable_borrow() (gas: 616691)
[PASS] test_repayWithATokens_full_variable_borrow() (gas: 415229)
[PASS] test_repayWithATokens_fuzz_collateral_variable_borrow(uint256,uint32) (runs: 1000, μ: 603464, ~: 604727)
[PASS] test_repayWithPermit(uint128,uint128,uint128,uint128,uint128) (runs: 1000, μ: 572099, ~: 570969)
[PASS] test_repayWithPermit_not_failing_if_permit_was_used(uint128,uint128,uint128,uint128,uint128) (runs: 1000, μ: 578005, ~: 576461)
[PASS] test_repayWithPermit_should_revert_if_permit_is_less_then_repay_amount(uint128,uint128,uint128,uint128,uint128) (runs: 1000, μ: 528211, ~: 524421)
[PASS] test_repay_full_variable_borrow() (gas: 401859)
[PASS] test_revert_repay_full_stable_borrow() (gas: 353430)
[PASS] test_reverts_borrow_invalidAmount() (gas: 51504)
[PASS] test_reverts_borrow_reserveInactive() (gas: 129619)
[PASS] test_reverts_borrow_reservePaused() (gas: 92442)
[PASS] test_reverts_no_explicit_repay_on_behalf() (gas: 327417)
[PASS] test_reverts_repay_no_debt() (gas: 52075)
Suite result: ok. 15 passed; 0 failed; 0 skipped; finished in 10.30s (10.25s CPU time)
2025-05-08T11:54:15.696271Z ERROR cheatcodes: non-empty stderr input=["bash", "-c", "response=\"$([ -e .env ] && grep -q \"FOUNDRY_LIBRARIES\" .env && echo true || echo false)\"; cast abi-encode \"response(bool)\" $response;"] stderr="Warning: This is a nightly build of Foundry. It is recommended to use the latest stable version. Visit https://book.getfoundry.sh/announcements for more information. \nTo mute this warning set `FOUNDRY_DISABLE_NIGHTLY_WARNING` in your environment. \n\n"
Ran 2 tests for tests/gas/Pool.Setters.gas.t.sol:PoolSetters_gas_Tests
[PASS] test_setUserEMode() (gas: 1758962)
[PASS] test_setUserUseReserveAsCollateral() (gas: 650111)
Suite result: ok. 2 passed; 0 failed; 0 skipped; finished in 41.56ms (4.85ms CPU time)
2025-05-08T11:54:15.736110Z ERROR cheatcodes: non-empty stderr input=["bash", "-c", "response=\"$([ -e .env ] && grep -q \"FOUNDRY_LIBRARIES\" .env && echo true || echo false)\"; cast abi-encode \"response(bool)\" $response;"] stderr="Warning: This is a nightly build of Foundry. It is recommended to use the latest stable version. Visit https://book.getfoundry.sh/announcements for more information. \nTo mute this warning set `FOUNDRY_DISABLE_NIGHTLY_WARNING` in your environment. \n\n"
Ran 7 tests for tests/misc/rates/RateStrategy.setters.t.sol:RateStrategySettersTestsOverride
[PASS] test_new_SetReserveInterestRateParams((uint16,uint32,uint32,uint32)) (runs: 1000, μ: 51947, ~: 51882)
[PASS] test_new_SetReserveInterestRateParams_when_not_configurator((uint16,uint32,uint32,uint32)) (runs: 1000, μ: 25665, ~: 25598)
[PASS] test_reverts_SetReserveInterestRateParams_when_gt_maxRate((uint16,uint32,uint32,uint32)) (runs: 1000, μ: 29130, ~: 29220)
[PASS] test_reverts_SetReserveInterestRateParams_when_gt_max_op((uint16,uint32,uint32,uint32)) (runs: 1000, μ: 21927, ~: 21927)
[PASS] test_reverts_SetReserveInterestRateParams_when_lt_min_op((uint16,uint32,uint32,uint32)) (runs: 1000, μ: 21975, ~: 21975)
[PASS] test_reverts_SetReserveInterestRateParams_when_reserve_0((uint16,uint32,uint32,uint32)) (runs: 1000, μ: 26612, ~: 26531)
[PASS] test_reverts_SetReserveInterestRateParams_when_slope1_gt_slope2((uint16,uint32,uint32,uint32)) (runs: 1000, μ: 23277, ~: 23277)
Suite result: ok. 7 passed; 0 failed; 0 skipped; finished in 1.64s (1.61s CPU time)
2025-05-08T11:54:16.758251Z ERROR cheatcodes: non-empty stderr input=["bash", "-c", "response=\"$([ -e .env ] && grep -q \"FOUNDRY_LIBRARIES\" .env && echo true || echo false)\"; cast abi-encode \"response(bool)\" $response;"] stderr="Warning: This is a nightly build of Foundry. It is recommended to use the latest stable version. Visit https://book.getfoundry.sh/announcements for more information. \nTo mute this warning set `FOUNDRY_DISABLE_NIGHTLY_WARNING` in your environment. \n\n"
Ran 15 tests for tests/misc/rates/RateStrategy.t.sol:RateStrategyBaseTests
[PASS] test_getInterestRateDataBps((uint16,uint32,uint32,uint32)) (runs: 1000, μ: 40436, ~: 40356)
[PASS] test_getInterestRateDataRay((uint16,uint32,uint32,uint32)) (runs: 1000, μ: 41343, ~: 41282)
[PASS] test_getMaxVariableBorrowRate((uint16,uint32,uint32,uint32)) (runs: 1000, μ: 38852, ~: 38790)
[PASS] test_initialization() (gas: 27078)
[PASS] test_new_DefaultReserveInterestRateStrategy_wrong_provider() (gas: 42406)
[PASS] test_new_SetReserveInterestRateParams((uint16,uint32,uint32,uint32)) (runs: 1000, μ: 52513, ~: 52454)
[PASS] test_new_SetReserveInterestRateParams_override_method((uint16,uint32,uint32,uint32)) (runs: 1000, μ: 49742, ~: 49659)
[PASS] test_new_SetReserveInterestRateParams_when_not_configurator((uint16,uint32,uint32,uint32)) (runs: 1000, μ: 26300, ~: 26241)
[PASS] test_overflow_liquidity_rates() (gas: 59548)
[PASS] test_overflow_variable_rates() (gas: 546010)
[PASS] test_reverts_SetReserveInterestRateParams_when_gt_maxRate((uint16,uint32,uint32,uint32)) (runs: 1000, μ: 34978, ~: 34978)
[PASS] test_reverts_SetReserveInterestRateParams_when_gt_max_op((uint16,uint32,uint32,uint32)) (runs: 1000, μ: 31521, ~: 31521)
[PASS] test_reverts_SetReserveInterestRateParams_when_lt_min_op((uint16,uint32,uint32,uint32)) (runs: 1000, μ: 31597, ~: 31597)
[PASS] test_reverts_SetReserveInterestRateParams_when_reserve_0((uint16,uint32,uint32,uint32)) (runs: 1000, μ: 27959, ~: 27959)
[PASS] test_reverts_SetReserveInterestRateParams_when_slope1_gt_slope2(uint16,uint32,uint32,uint32) (runs: 1000, μ: 33710, ~: 33710)
Suite result: ok. 15 passed; 0 failed; 0 skipped; finished in 3.05s (3.02s CPU time)
Ran 13 tests for tests/protocol/pool/Pool.Supply.t.sol:PoolSupplyTests
[PASS] test_deprecated_deposit() (gas: 240892)
[PASS] test_first_supply() (gas: 240871)
[PASS] test_first_supply_on_behalf() (gas: 242918)
[PASS] test_reverts_supply_cap() (gas: 105305)
[PASS] test_reverts_supply_invalidAmount() (gas: 47720)
[PASS] test_reverts_supply_reserveFrozen() (gas: 117591)
[PASS] test_reverts_supply_reserveInactive() (gas: 125551)
[PASS] test_reverts_supply_reservePaused() (gas: 88395)
[PASS] test_reverts_supply_to_aToken() (gas: 50239)
[PASS] test_supplyWithPermit(uint128,uint128,uint128) (runs: 1000, μ: 413670, ~: 413686)
[PASS] test_supplyWithPermit_not_failing_if_permit_was_used(uint128,uint128,uint128) (runs: 1000, μ: 413875, ~: 413894)
[PASS] test_supplyWithPermit_should_revert_if_permit_is_less_then_supply_amount(uint128,uint128) (runs: 1000, μ: 280944, ~: 280948)
[PASS] test_supply_after_collateral_enabled() (gas: 287552)
Suite result: ok. 13 passed; 0 failed; 0 skipped; finished in 5.54s (5.51s CPU time)
2025-05-08T11:54:21.282862Z ERROR cheatcodes: non-empty stderr input=["bash", "-c", "response=\"$([ -e .env ] && grep -q \"FOUNDRY_LIBRARIES\" .env && echo true || echo false)\"; cast abi-encode \"response(bool)\" $response;"] stderr="Warning: This is a nightly build of Foundry. It is recommended to use the latest stable version. Visit https://book.getfoundry.sh/announcements for more information. \nTo mute this warning set `FOUNDRY_DISABLE_NIGHTLY_WARNING` in your environment. \n\n"
Ran 11 tests for tests/protocol/pool/Pool.Withdraw.t.sol:PoolWithdrawTests
[PASS] test_Reverts_withdraw_transferred_funds() (gas: 549402)
[PASS] test_full_withdraw() (gas: 234777)
[PASS] test_full_withdraw_to() (gas: 240305)
[PASS] test_partial_withdraw() (gas: 231268)
[PASS] test_reverts_withdraw_hf_lt_lqt() (gas: 679099)
[PASS] test_reverts_withdraw_invalidAmount() (gas: 247145)
[PASS] test_reverts_withdraw_invalidBalance() (gas: 249215)
[PASS] test_reverts_withdraw_reserveInactive() (gas: 203217)
[PASS] test_reverts_withdraw_reservePaused() (gas: 284676)
[PASS] test_reverts_withdraw_to_atoken() (gas: 247118)
[PASS] test_withdraw_not_enabled_as_collateral() (gas: 248144)
Suite result: ok. 11 passed; 0 failed; 0 skipped; finished in 43.32ms (7.59ms CPU time)
2025-05-08T11:54:21.323107Z ERROR cheatcodes: non-empty stderr input=["bash", "-c", "response=\"$([ -e .env ] && grep -q \"FOUNDRY_LIBRARIES\" .env && echo true || echo false)\"; cast abi-encode \"response(bool)\" $response;"] stderr="Warning: This is a nightly build of Foundry. It is recommended to use the latest stable version. Visit https://book.getfoundry.sh/announcements for more information. \nTo mute this warning set `FOUNDRY_DISABLE_NIGHTLY_WARNING` in your environment. \n\n"
Ran 37 tests for tests/protocol/pool/Pool.t.sol:PoolTests
[PASS] test_dropReserve() (gas: 99058)
[PASS] test_getBorrowLogic() (gas: 13619)
[PASS] test_getBridgeLogic() (gas: 13617)
[PASS] test_getEModeLogic() (gas: 13618)
[PASS] test_getFlashLoanLogic() (gas: 13598)
[PASS] test_getLiquidationLogic() (gas: 13687)
[PASS] test_getPoolLogic() (gas: 13683)
[PASS] test_getSupplyLogic() (gas: 13682)
[PASS] test_getVirtualUnderlyingBalance() (gas: 244743)
[PASS] test_getters_getUserAccountData() (gas: 598817)
[PASS] test_mintToTreasury() (gas: 693322)
[PASS] test_mintToTreasury_skip_invalid_addresses() (gas: 697947)
[PASS] test_noop_setUserUseReserveAsCollateral_true_when_already_is_activated() (gas: 290768)
[PASS] test_pool_defaultValues() (gas: 4368459)
[PASS] test_rescueTokens(uint256) (runs: 1000, μ: 81853, ~: 82155)
[PASS] test_resetIsolationModeTotalDebt() (gas: 721635)
[PASS] test_reverts_initReserve_not_poolConfigurator(address) (runs: 1000, μ: 25430, ~: 25430)
[PASS] test_reverts_modifiers_not_poolConfigurator(address) (runs: 1000, μ: 127079, ~: 127079)
[PASS] test_reverts_new_Pool_invalidAddressesProvider() (gas: 4380474)
[PASS] test_reverts_setReserveInterestRateStrategyAddress_AssetNotListed(address,address) (runs: 1000, μ: 43826, ~: 43826)
[PASS] test_reverts_setReserveInterestRateStrategyAddress_ZeroAssetAddress(address) (runs: 1000, μ: 22732, ~: 22732)
[PASS] test_reverts_setUserEmode_0_bad_hf() (gas: 969385)
[PASS] test_reverts_setUserUseReserveAsCollateral_false_hf_lower_lqt() (gas: 600767)
[PASS] test_reverts_setUserUseReserveAsCollateral_true_ltv_zero() (gas: 296779)
[PASS] test_reverts_setUserUseReserveAsCollateral_true_reserve_inactive() (gas: 212145)
[PASS] test_reverts_setUserUseReserveAsCollateral_true_reserve_paused() (gas: 291639)
[PASS] test_reverts_setUserUseReserveAsCollateral_true_user_balance_zero() (gas: 71802)
[PASS] test_reverts_setUserUseReserveAsCollateral_true_user_isolation_mode() (gas: 778938)
[PASS] test_setLiquidationGracePeriod(uint40) (runs: 1000, μ: 34741, ~: 34834)
[PASS] test_setLiquidationGracePeriod_assetNotListed(uint40) (runs: 1000, μ: 27115, ~: 27115)
[PASS] test_setReserveInterestRateStrategyAddress() (gas: 899626)
[PASS] test_setUserEmode() (gas: 227533)
[PASS] test_setUserEmode_twice() (gas: 358044)
[PASS] test_setUserEmode_twice_inconsistent_category() (gas: 968281)
[PASS] test_setUserUseReserveAsCollateral_false() (gas: 240328)
[PASS] test_setUserUseReserveAsCollateral_true() (gas: 277847)
[PASS] test_updateBridgeProtocolFee() (gas: 253)
Suite result: ok. 37 passed; 0 failed; 0 skipped; finished in 997.20ms (965.39ms CPU time)
2025-05-08T11:54:22.323787Z ERROR cheatcodes: non-empty stderr input=["bash", "-c", "response=\"$([ -e .env ] && grep -q \"FOUNDRY_LIBRARIES\" .env && echo true || echo false)\"; cast abi-encode \"response(bool)\" $response;"] stderr="Warning: This is a nightly build of Foundry. It is recommended to use the latest stable version. Visit https://book.getfoundry.sh/announcements for more information. \nTo mute this warning set `FOUNDRY_DISABLE_NIGHTLY_WARNING` in your environment. \n\n"
Ran 22 tests for tests/protocol/configuration/PoolAddressesProvider.t.sol:PoolAddressesProviderTests
[PASS] test_PoolDataProvider_changeContract() (gas: 1472600)
[PASS] test_getter_getMarketId() (gas: 1435029)
[PASS] test_new_PoolAddressesProvider() (gas: 1444259)
[PASS] test_reverts_setAddressAsProxy_notAuth() (gas: 1448435)
[PASS] test_reverts_setAddress_noAuth() (gas: 1453612)
[PASS] test_reverts_setters_notOwner() (gas: 1451221)
[PASS] test_setACLManager_changeContract() (gas: 3014111)
[PASS] test_setACLManager_setACLAdmin() (gas: 2248064)
[PASS] test_setAddress() (gas: 1462527)
[PASS] test_setAddressAsProxy_new_proxy() (gas: 2020261)
[PASS] test_setAddressAsProxy_upgrade_proxy() (gas: 2132633)
[PASS] test_setAddress_updateAddress() (gas: 1471653)
[PASS] test_setPoolConfiguratorImpl() (gas: 5939538)
[PASS] test_setPoolConfiguratorImpl_upgrade() (gas: 10340515)
[PASS] test_setPoolDataProvider() (gas: 1463045)
[PASS] test_setPoolImpl() (gas: 6251535)
[PASS] test_setPoolImpl_upgrade() (gas: 10652172)
[PASS] test_setPriceOracle() (gas: 1463202)
[PASS] test_setPriceOracleSentinel() (gas: 1463073)
[PASS] test_setPriceOracleSentinel_changeContract() (gas: 1472677)
[PASS] test_setPriceOracle_changeContract() (gas: 1472938)
[PASS] test_setter_setMarketId() (gas: 1446179)
Suite result: ok. 22 passed; 0 failed; 0 skipped; finished in 43.60ms (8.41ms CPU time)
2025-05-08T11:54:22.366008Z ERROR cheatcodes: non-empty stderr input=["bash", "-c", "response=\"$([ -e .env ] && grep -q \"FOUNDRY_LIBRARIES\" .env && echo true || echo false)\"; cast abi-encode \"response(bool)\" $response;"] stderr="Warning: This is a nightly build of Foundry. It is recommended to use the latest stable version. Visit https://book.getfoundry.sh/announcements for more information. \nTo mute this warning set `FOUNDRY_DISABLE_NIGHTLY_WARNING` in your environment. \n\n"
Ran 15 tests for tests/extensions/RevenueSplitter.t.sol:RevenueSplitterTest
[PASS] test_constructor() (gas: 15312)
[PASS] test_constructor_fuzzing(uint16) (runs: 1000, μ: 455456, ~: 455456)
[PASS] test_constructor_revert_invalid_split_percentage() (gas: 174521)
[PASS] test_splitFund_oneToken() (gas: 410764)
[PASS] test_splitFund_reverts_randomAddress() (gas: 51331)
[PASS] test_splitFund_zeroAmount_noOp() (gas: 371636)
[PASS] test_splitFund_zeroFunds_noOp() (gas: 50896)
[PASS] test_splitFund_zeroTokens_noOp() (gas: 370555)
[PASS] test_splitFunds_fixed() (gas: 447716)
[PASS] test_splitFunds_fuzz_max(uint256,uint256) (runs: 1000, μ: 448242, ~: 449900)
[PASS] test_splitFunds_fuzz_realistic(uint256,uint256) (runs: 1000, μ: 447353, ~: 448359)
[PASS] tes...*[Comment body truncated]* |
Contributor
🔮 Coverage report
|
Contributor
♻️ Forge Gas Snapshots🔕 Unchanged
|
Contributor
Forge Build Sizes
🔕 Unchanged
|
kyzia551
approved these changes
May 8, 2025
sendra
approved these changes
May 19, 2025
avniculae
added a commit
to aave/aave-v3-horizon
that referenced
this pull request
May 21, 2025
* test: update certora suite for 3.3.0 (aave-dao#104) Co-authored-by: nisnislevi <[email protected]> * fix: vm.assume for user address for the Pool Deficit tests & update snapshots (aave-dao#105) Foundry had an issue in regards to storage hotness checks on gas reports. The changes in the gas reports here highlight the updated snapshots based on the fix. Co-authored-by: Lukas <[email protected]> * feat: add lcov report (aave-dao#108) * feat: add changeset, add release workflow, make snapshots run in siolation (aave-dao#110) * feat: adding dust bin to deployment script (aave-dao#111) * Added gas snapshots for flashloans (aave-dao#112) * ci: fixed ci permissions (aave-dao#113) before the changeset integration was not allowed to create pull requests. * ci: checkout commit when submitting lcov to codecov (aave-dao#116) Codecov requires the git to be initialized as otherwise apparently it has problems to identify which artifact belongs to what. This pr fixes this by checking out the repo on the codecov flow. * chore: bump solidity-utils lib * fix: fixed edge case in the LiquidationDataProvider helper contract (aave-dao#122) Co-authored-by: TepNik <[email protected]> --------- Co-authored-by: Lukas <[email protected]> Co-authored-by: nisnislevi <[email protected]> Co-authored-by: Nikita <[email protected]> Co-authored-by: Lukas <[email protected]> Co-authored-by: Harsh Pandey <[email protected]> Co-authored-by: TepNik <[email protected]>
grothem
pushed a commit
to aave/aave-v3-origin
that referenced
this pull request
Jul 8, 2025
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
The
LiquidationDataProviderhelper contract returns how much debt and collateral can be liquidated for a borrower. The return data should be passed to a liquidation call.There existed two edge cases when this contract returns data, with which the
Poolcontract returns an error.Example:
Xdebt andYcollateralXamount of debt from the borrower, but he doesn't have enough collateral. In this case, we can only liquidateNamount of debt (N < X) andYamount of collateral.For this example, we have two bad edge cases:
Namount of debt to be liquidated, the contract calculates the amount of collateral that will be liquidated. Sometimes this amount equalsM, whereM < Y, and we have some leftovers in the collateral. This happens because of an integer division and a+-1error. And these leftovers can be lower than the allowed threshold of leftovers (1000$), and because of that, a liquidation call reverts.LiquidationDataProviderhelper contract not in the same block as when we make a liquidation call, we may also face an error. This can happen because some time passed and a borrower now has a bigger amount of the collateral because he has some interest. And because of that, after a liquidation (Namount of debt andYamount of collateral) there will be some leftovers in collateral token,s and those leftovers can be lower than the allowed threshold of leftovers (1000$), and because of that, a liquidation call reverts.Solution:
Now, if a borrower has all his collateral balance liquidatable, the
LiquidationDataProviderhelper contract returns that we can liquidate the whole debt balance of the borrower. ThePoolcontract in this case will calculate itself how much debt and collateral will be liquidatable.