forked from aave-dao/aave-v3-origin
-
Notifications
You must be signed in to change notification settings - Fork 2
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Merge pull request #10 from aave-dao/fix/cleanup
fix: cleanup and added more tests
- Loading branch information
Showing
28 changed files
with
1,546 additions
and
1,388 deletions.
There are no files selected for viewing
This file contains 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
This file contains 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
This file contains 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
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,15 +1,15 @@ | ||
{ | ||
"files": [ | ||
"certora/harness/ATokenHarness.sol", | ||
"certora/harness/SimpleERC20.sol" | ||
], | ||
"link": [ | ||
"ATokenHarness:_underlyingAsset=SimpleERC20" | ||
], | ||
"rule_sanity": "basic", // from time to time, use "advanced" instead of "basic". | ||
"optimistic_loop": true, | ||
"process": "emv", | ||
"solc": "solc8.19", | ||
"verify": "ATokenHarness:certora/specs/AToken.spec", | ||
"msg": "aToken spec" | ||
} | ||
"files": [ | ||
"certora/harness/ATokenHarness.sol", | ||
"certora/harness/SimpleERC20.sol" | ||
], | ||
"link": [ | ||
"ATokenHarness:_underlyingAsset=SimpleERC20" | ||
], | ||
"rule_sanity": "basic", // from time to time, use "advanced" instead of "basic". | ||
"optimistic_loop": true, | ||
"process": "emv", | ||
"solc": "solc8.19", | ||
"verify": "ATokenHarness:certora/specs/AToken.spec", | ||
"msg": "aToken spec" | ||
} |
This file contains 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
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,40 +1,41 @@ | ||
{ | ||
"files": [ | ||
"certora/harness/ATokenHarness.sol", | ||
"certora/harness/PoolHarness.sol", | ||
"certora/harness/StableDebtTokenHarness.sol", | ||
"certora/harness/SimpleERC20.sol", | ||
"src/core/instances/VariableDebtTokenInstance.sol", | ||
"src/core/contracts/misc/AaveProtocolDataProvider.sol", | ||
"src/core/contracts/protocol/pool/DefaultReserveInterestRateStrategyV2.sol", | ||
"src/core/contracts/protocol/configuration/ACLManager.sol", | ||
"src/core/contracts/protocol/libraries/aave-upgradeability/InitializableImmutableAdminUpgradeabilityProxy.sol", | ||
"src/core/contracts/protocol/configuration/PriceOracleSentinel.sol", | ||
"src/core/contracts/protocol/configuration/PoolAddressesProvider.sol", | ||
], | ||
"link": [ | ||
"ATokenHarness:POOL=PoolHarness", | ||
"ATokenHarness:_underlyingAsset=SimpleERC20", | ||
"PoolHarness:ADDRESSES_PROVIDER=PoolAddressesProvider", | ||
"AaveProtocolDataProvider:ADDRESSES_PROVIDER=PoolAddressesProvider", | ||
], | ||
"struct_link": [ | ||
"PoolHarness:aTokenAddress=ATokenHarness", | ||
"PoolHarness:stableDebtTokenAddress=StableDebtTokenHarness", | ||
"PoolHarness:variableDebtTokenAddress=VariableDebtTokenInstance", | ||
"PoolHarness:interestRateStrategyAddress=DefaultReserveInterestRateStrategyV2", | ||
], | ||
"rule_sanity": "basic", // from time to time, use advanced instead of basic, it gives more insight on requires, vacuity rules etc. | ||
"optimistic_loop": true, | ||
"process": "emv", | ||
"global_timeout": "7198", | ||
"prover_args": ["-depth 11"], // If reachability passes and the time is ok, this number is ok, dont touch it. | ||
"solc": "solc8.19", | ||
"verify": "PoolHarness:certora/specs/NEW-pool-no-summarizations.spec", | ||
"rule": ["liquidityIndexNonDecresingFor_cumulateToLiquidityIndex", | ||
"depositUpdatesUserATokenSuperBalance", | ||
"depositCannotChangeOthersATokenSuperBalance" | ||
], | ||
"parametric_contracts": ["PoolHarness"], | ||
"msg": "pool-no-summarizations::partial rules", | ||
"files": [ | ||
"certora/harness/ATokenHarness.sol", | ||
"certora/harness/PoolHarness.sol", | ||
"certora/harness/StableDebtTokenHarness.sol", | ||
"certora/harness/SimpleERC20.sol", | ||
"src/core/instances/VariableDebtTokenInstance.sol", | ||
"src/core/contracts/misc/AaveProtocolDataProvider.sol", | ||
"src/core/contracts/protocol/pool/DefaultReserveInterestRateStrategyV2.sol", | ||
"src/core/contracts/protocol/configuration/ACLManager.sol", | ||
"src/core/contracts/protocol/libraries/aave-upgradeability/InitializableImmutableAdminUpgradeabilityProxy.sol", | ||
"src/core/contracts/protocol/configuration/PriceOracleSentinel.sol", | ||
"src/core/contracts/protocol/configuration/PoolAddressesProvider.sol", | ||
], | ||
"link": [ | ||
"ATokenHarness:POOL=PoolHarness", | ||
"ATokenHarness:_underlyingAsset=SimpleERC20", | ||
"PoolHarness:ADDRESSES_PROVIDER=PoolAddressesProvider", | ||
"AaveProtocolDataProvider:ADDRESSES_PROVIDER=PoolAddressesProvider", | ||
], | ||
"struct_link": [ | ||
"PoolHarness:aTokenAddress=ATokenHarness", | ||
"PoolHarness:stableDebtTokenAddress=StableDebtTokenHarness", | ||
"PoolHarness:variableDebtTokenAddress=VariableDebtTokenInstance", | ||
"PoolHarness:interestRateStrategyAddress=DefaultReserveInterestRateStrategyV2", | ||
], | ||
"rule_sanity": "basic", // from time to time, use advanced instead of basic, it gives more insight on requires, vacuity rules etc. | ||
"optimistic_loop": true, | ||
"process": "emv", | ||
"global_timeout": "7198", | ||
"prover_args": ["-depth 11"], // If reachability passes and the time is ok, this number is ok, dont touch it. | ||
"solc": "solc8.19", | ||
"verify": "PoolHarness:certora/specs/NEW-pool-no-summarizations.spec", | ||
"rule": [ | ||
"liquidityIndexNonDecresingFor_cumulateToLiquidityIndex", | ||
"depositUpdatesUserATokenSuperBalance", | ||
"depositCannotChangeOthersATokenSuperBalance" | ||
], | ||
"parametric_contracts": ["PoolHarness"], | ||
"msg": "pool-no-summarizations::partial rules", | ||
} |
This file contains 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
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,42 +1,43 @@ | ||
{ | ||
"files": [ | ||
"certora/harness/ATokenHarness.sol", | ||
"certora/harness/PoolHarness.sol", | ||
"certora/harness/StableDebtTokenHarness.sol", | ||
"certora/harness/SimpleERC20.sol", | ||
"src/core/instances/VariableDebtTokenInstance.sol", | ||
"src/core/contracts/misc/AaveProtocolDataProvider.sol", | ||
"src/core/contracts/protocol/pool/DefaultReserveInterestRateStrategyV2.sol", | ||
"src/core/contracts/protocol/libraries/types/DataTypes.sol", | ||
"src/core/contracts/protocol/configuration/PoolAddressesProvider.sol", | ||
], | ||
"link": [ | ||
"ATokenHarness:POOL=PoolHarness", | ||
"ATokenHarness:_underlyingAsset=SimpleERC20", | ||
"PoolHarness:ADDRESSES_PROVIDER=PoolAddressesProvider", | ||
], | ||
"struct_link": [ | ||
"PoolHarness:aTokenAddress=ATokenHarness", | ||
"PoolHarness:stableDebtTokenAddress=StableDebtTokenHarness", | ||
"PoolHarness:variableDebtTokenAddress=VariableDebtTokenInstance", | ||
"PoolHarness:interestRateStrategyAddress=DefaultReserveInterestRateStrategyV2", | ||
], | ||
"rule_sanity": "basic", // from time to time, use advanced instead of basic, it gives more insight on requires, vacuity rules etc. | ||
"optimistic_loop": true, | ||
"process": "emv", | ||
"prover_args": ["-depth 12"], // If reachability passes and the time is ok, this number is ok, dont touch it. | ||
"solc": "solc8.19", | ||
"verify": "PoolHarness:certora/specs/NEW-pool-simple-properties.spec", | ||
"rule": ["cannotDepositInInactiveReserve", | ||
"cannotDepositInFrozenReserve", | ||
"cannotDepositZeroAmount", | ||
"cannotWithdrawZeroAmount", | ||
"cannotWithdrawFromInactiveReserve", | ||
"cannotBorrowZeroAmount", | ||
"cannotBorrowOnInactiveReserve", | ||
"cannotBorrowOnReserveDisabledForBorrowing", | ||
"cannotBorrowOnFrozenReserve" | ||
], | ||
"parametric_contracts": ["PoolHarness"], | ||
"msg": "pool-simple-properties::ALL", | ||
"files": [ | ||
"certora/harness/ATokenHarness.sol", | ||
"certora/harness/PoolHarness.sol", | ||
"certora/harness/StableDebtTokenHarness.sol", | ||
"certora/harness/SimpleERC20.sol", | ||
"src/core/instances/VariableDebtTokenInstance.sol", | ||
"src/core/contracts/misc/AaveProtocolDataProvider.sol", | ||
"src/core/contracts/protocol/pool/DefaultReserveInterestRateStrategyV2.sol", | ||
"src/core/contracts/protocol/libraries/types/DataTypes.sol", | ||
"src/core/contracts/protocol/configuration/PoolAddressesProvider.sol", | ||
], | ||
"link": [ | ||
"ATokenHarness:POOL=PoolHarness", | ||
"ATokenHarness:_underlyingAsset=SimpleERC20", | ||
"PoolHarness:ADDRESSES_PROVIDER=PoolAddressesProvider", | ||
], | ||
"struct_link": [ | ||
"PoolHarness:aTokenAddress=ATokenHarness", | ||
"PoolHarness:stableDebtTokenAddress=StableDebtTokenHarness", | ||
"PoolHarness:variableDebtTokenAddress=VariableDebtTokenInstance", | ||
"PoolHarness:interestRateStrategyAddress=DefaultReserveInterestRateStrategyV2", | ||
], | ||
"rule_sanity": "basic", // from time to time, use advanced instead of basic, it gives more insight on requires, vacuity rules etc. | ||
"optimistic_loop": true, | ||
"process": "emv", | ||
"prover_args": ["-depth 12"], // If reachability passes and the time is ok, this number is ok, dont touch it. | ||
"solc": "solc8.19", | ||
"verify": "PoolHarness:certora/specs/NEW-pool-simple-properties.spec", | ||
"rule": [ | ||
"cannotDepositInInactiveReserve", | ||
"cannotDepositInFrozenReserve", | ||
"cannotDepositZeroAmount", | ||
"cannotWithdrawZeroAmount", | ||
"cannotWithdrawFromInactiveReserve", | ||
"cannotBorrowZeroAmount", | ||
"cannotBorrowOnInactiveReserve", | ||
"cannotBorrowOnReserveDisabledForBorrowing", | ||
"cannotBorrowOnFrozenReserve" | ||
], | ||
"parametric_contracts": ["PoolHarness"], | ||
"msg": "pool-simple-properties::ALL", | ||
} |
This file contains 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
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,14 +1,14 @@ | ||
{ | ||
"files": [ | ||
"certora/harness/ReserveConfigurationHarness.sol" | ||
], | ||
"msg": "ReserveConfiguration", | ||
"optimistic_loop": true, | ||
"process": "emv", | ||
"prover_args": [ | ||
"-useBitVectorTheory" | ||
], | ||
"rule_sanity": "basic", // from time to time, use "advanced" instead of "basic" | ||
"solc": "solc8.19", | ||
"verify": "ReserveConfigurationHarness:certora/specs/ReserveConfiguration.spec" | ||
} | ||
"files": [ | ||
"certora/harness/ReserveConfigurationHarness.sol" | ||
], | ||
"msg": "ReserveConfiguration", | ||
"optimistic_loop": true, | ||
"process": "emv", | ||
"prover_args": [ | ||
"-useBitVectorTheory" | ||
], | ||
"rule_sanity": "basic", // from time to time, use "advanced" instead of "basic" | ||
"solc": "solc8.19", | ||
"verify": "ReserveConfigurationHarness:certora/specs/ReserveConfiguration.spec" | ||
} |
This file contains 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
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,18 +1,18 @@ | ||
//=================================================================================== | ||
// IMPORTANT: | ||
// This file can be DELETED, since Stable coins are removed. | ||
// This file can be DELETED, since Stable coins are removed. | ||
// In the implementation all the function either revert or return 0 | ||
// =================================================================================== | ||
|
||
{ | ||
"cache": "StableToken", | ||
"files": [ | ||
"certora/harness/StableDebtTokenHarness.sol:StableDebtTokenHarness" | ||
], | ||
"loop_iter": "4", | ||
"msg": "stableTokenCLI", | ||
"optimistic_loop": true, | ||
"process": "emv", | ||
"solc": "solc8.19", | ||
"verify": "StableDebtTokenHarness:certora/specs/StableDebtToken.spec" | ||
} | ||
"cache": "StableToken", | ||
"files": [ | ||
"certora/harness/StableDebtTokenHarness.sol:StableDebtTokenHarness" | ||
], | ||
"loop_iter": "4", | ||
"msg": "stableTokenCLI", | ||
"optimistic_loop": true, | ||
"process": "emv", | ||
"solc": "solc8.19", | ||
"verify": "StableDebtTokenHarness:certora/specs/StableDebtToken.spec" | ||
} |
This file contains 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
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,15 +1,15 @@ | ||
{ | ||
"files": [ | ||
"certora/harness/UserConfigurationHarness.sol" | ||
], | ||
// No rule sanity because a there are invariant s.t. the invariant can be proven | ||
// without assuming it first. (for some of the functions.) | ||
"msg": "UserConfiguration All spec", | ||
"optimistic_loop": true, | ||
"process": "emv", | ||
"prover_args": [ | ||
"-useBitVectorTheory" | ||
], | ||
"solc": "solc8.19", | ||
"verify": "UserConfigurationHarness:certora/specs/UserConfiguration.spec" | ||
} | ||
"files": [ | ||
"certora/harness/UserConfigurationHarness.sol" | ||
], | ||
// No rule sanity because a there are invariant s.t. the invariant can be proven | ||
// without assuming it first. (for some of the functions.) | ||
"msg": "UserConfiguration All spec", | ||
"optimistic_loop": true, | ||
"process": "emv", | ||
"prover_args": [ | ||
"-useBitVectorTheory" | ||
], | ||
"solc": "solc8.19", | ||
"verify": "UserConfigurationHarness:certora/specs/UserConfiguration.spec" | ||
} |
This file contains 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
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,11 +1,11 @@ | ||
{ | ||
"files": [ | ||
"certora/harness/VariableDebtTokenHarness.sol" | ||
], | ||
"rule_sanity": "basic", // from time to time, use advanced instead of basic, it gives more insight on requires, vacuity rules etc. | ||
"msg": "variable debt token", | ||
"optimistic_loop": true, | ||
"process": "emv", | ||
"solc": "solc8.19", | ||
"verify": "VariableDebtTokenHarness:certora/specs/VariableDebtToken.spec" | ||
} | ||
"files": [ | ||
"certora/harness/VariableDebtTokenHarness.sol" | ||
], | ||
"rule_sanity": "basic", // from time to time, use advanced instead of basic, it gives more insight on requires, vacuity rules etc. | ||
"msg": "variable debt token", | ||
"optimistic_loop": true, | ||
"process": "emv", | ||
"solc": "solc8.19", | ||
"verify": "VariableDebtTokenHarness:certora/specs/VariableDebtToken.spec" | ||
} |
Oops, something went wrong.