-
Notifications
You must be signed in to change notification settings - Fork 70
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Merge branch 'main' into ci/invariant
- Loading branch information
Showing
40 changed files
with
789 additions
and
337 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
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,31 @@ | ||
name: Halmos | ||
|
||
on: | ||
push: | ||
branches: | ||
- main | ||
pull_request: | ||
workflow_dispatch: | ||
|
||
jobs: | ||
verify: | ||
runs-on: ubuntu-latest | ||
|
||
steps: | ||
- uses: actions/checkout@v4 | ||
with: | ||
submodules: recursive | ||
|
||
- name: Install python | ||
uses: actions/setup-python@v5 | ||
with: | ||
python-version: ">=3.9" | ||
|
||
- name: Install Foundry | ||
uses: foundry-rs/foundry-toolchain@v1 | ||
|
||
- name: Install halmos | ||
run: pip install halmos | ||
|
||
- name: Run Halmos | ||
run: FOUNDRY_PROFILE=test halmos |
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,3 +1,6 @@ | ||
[submodule "lib/forge-std"] | ||
path = lib/forge-std | ||
url = https://github.com/foundry-rs/forge-std | ||
[submodule "lib/halmos-cheatcodes"] | ||
path = lib/halmos-cheatcodes | ||
url = https://github.com/a16z/halmos-cheatcodes.git |
Binary file not shown.
Binary file not shown.
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,14 +1,16 @@ | ||
{ | ||
"files": [ | ||
"certora/harness/MorphoHarness.sol", | ||
], | ||
"verify": "MorphoHarness:certora/specs/AccrueInterest.spec", | ||
"prover_args": [ | ||
"-depth 3", | ||
"-smt_hashingScheme plaininjectivity", | ||
"-mediumTimeout 30", | ||
], | ||
"rule_sanity": "basic", | ||
"server": "production", | ||
"msg": "Morpho Blue Accrue Interest" | ||
"files": [ | ||
"certora/harness/MorphoHarness.sol", | ||
"certora/harness/Util.sol" | ||
], | ||
"solc": "solc-0.8.19", | ||
"verify": "MorphoHarness:certora/specs/AccrueInterest.spec", | ||
"prover_args": [ | ||
"-depth 3", | ||
"-mediumTimeout 30", | ||
"-smt_hashingScheme plaininjectivity" | ||
], | ||
"rule_sanity": "basic", | ||
"server": "production", | ||
"msg": "Morpho Blue Accrue Interest" | ||
} |
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,9 +1,11 @@ | ||
{ | ||
"files": [ | ||
"certora/harness/MorphoHarness.sol", | ||
], | ||
"verify": "MorphoHarness:certora/specs/AssetsAccounting.spec", | ||
"rule_sanity": "basic", | ||
"server": "production", | ||
"msg": "Morpho Blue Assets Accounting" | ||
"files": [ | ||
"certora/harness/MorphoHarness.sol", | ||
"certora/harness/Util.sol" | ||
], | ||
"solc": "solc-0.8.19", | ||
"verify": "MorphoHarness:certora/specs/AssetsAccounting.spec", | ||
"rule_sanity": "basic", | ||
"server": "production", | ||
"msg": "Morpho Blue Assets Accounting" | ||
} |
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,9 +1,11 @@ | ||
{ | ||
"files": [ | ||
"certora/harness/MorphoHarness.sol", | ||
], | ||
"verify": "MorphoHarness:certora/specs/ConsistentState.spec", | ||
"rule_sanity": "basic", | ||
"server": "production", | ||
"msg": "Morpho Blue Consistent State" | ||
"files": [ | ||
"certora/harness/MorphoHarness.sol", | ||
"certora/harness/Util.sol" | ||
], | ||
"solc": "solc-0.8.19", | ||
"verify": "MorphoHarness:certora/specs/ConsistentState.spec", | ||
"rule_sanity": "basic", | ||
"server": "production", | ||
"msg": "Morpho Blue Consistent State" | ||
} |
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,19 @@ | ||
{ | ||
"files": [ | ||
"certora/harness/MorphoHarness.sol", | ||
], | ||
"verify": "MorphoHarness:certora/specs/ExactMath.spec", | ||
"rule_sanity": "basic", | ||
"prover_args": [ | ||
"-depth 3", | ||
"-smt_hashingScheme plaininjectivity", | ||
"-mediumTimeout 30", | ||
], | ||
"server": "production", | ||
"msg": "Morpho Blue Exact Math" | ||
"files": [ | ||
"certora/harness/MorphoHarness.sol", | ||
"certora/harness/Util.sol" | ||
], | ||
"solc": "solc-0.8.19", | ||
"verify": "MorphoHarness:certora/specs/ExactMath.spec", | ||
"prover_args": [ | ||
"-depth 5", | ||
"-mediumTimeout 5", | ||
"-timeout 3600", | ||
"-adaptiveSolverConfig false", | ||
"-smt_nonLinearArithmetic true", | ||
"-solvers [z3:def{randomSeed=1},z3:def{randomSeed=2},z3:def{randomSeed=3},z3:def{randomSeed=4},z3:def{randomSeed=5},z3:def{randomSeed=6},z3:def{randomSeed=7},z3:lia2]" | ||
], | ||
"rule_sanity": "basic", | ||
"server": "production", | ||
"msg": "Morpho Blue Exact Math" | ||
} |
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 |
---|---|---|
@@ -0,0 +1,15 @@ | ||
{ | ||
"files": [ | ||
"certora/harness/MorphoHarness.sol", | ||
"certora/harness/Util.sol" | ||
], | ||
"solc": "solc-0.8.19", | ||
"verify": "MorphoHarness:certora/specs/ExchangeRate.spec", | ||
"prover_args": [ | ||
"-smt_hashingScheme plaininjectivity", | ||
"-smt_easy_LIA true" | ||
], | ||
"rule_sanity": "basic", | ||
"server": "production", | ||
"msg": "Morpho Blue Exchange Rate" | ||
} |
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,13 +1,15 @@ | ||
{ | ||
"files": [ | ||
"certora/harness/MorphoHarness.sol", | ||
"src/mocks/OracleMock.sol" | ||
], | ||
"verify": "MorphoHarness:certora/specs/Health.spec", | ||
"rule_sanity": "basic", | ||
"prover_args": [ | ||
"-smt_hashingScheme plaininjectivity", | ||
], | ||
"server": "production", | ||
"msg": "Morpho Blue Health" | ||
"files": [ | ||
"certora/harness/MorphoHarness.sol", | ||
"certora/harness/Util.sol", | ||
"src/mocks/OracleMock.sol" | ||
], | ||
"solc": "solc-0.8.19", | ||
"verify": "MorphoHarness:certora/specs/Health.spec", | ||
"prover_args": [ | ||
"-smt_hashingScheme plaininjectivity" | ||
], | ||
"rule_sanity": "basic", | ||
"server": "production", | ||
"msg": "Morpho Blue Health" | ||
} |
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,9 +1,14 @@ | ||
{ | ||
"files": [ | ||
"certora/harness/MorphoHarness.sol", | ||
], | ||
"verify": "MorphoHarness:certora/specs/LibSummary.spec", | ||
"rule_sanity": "basic", | ||
"server": "production", | ||
"msg": "Morpho Blue Lib Summary" | ||
"files": [ | ||
"certora/harness/MorphoHarness.sol", | ||
"certora/harness/Util.sol" | ||
], | ||
"solc": "solc-0.8.19", | ||
"verify": "MorphoHarness:certora/specs/LibSummary.spec", | ||
"prover_args": [ | ||
"-smt_bitVectorTheory true" | ||
], | ||
"rule_sanity": "basic", | ||
"server": "production", | ||
"msg": "Morpho Blue Lib Summary" | ||
} |
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,9 +1,11 @@ | ||
{ | ||
"files": [ | ||
"certora/harness/MorphoInternalAccess.sol", | ||
], | ||
"verify": "MorphoInternalAccess:certora/specs/Liveness.spec", | ||
"rule_sanity": "basic", | ||
"server": "production", | ||
"msg": "Morpho Blue Liveness" | ||
"files": [ | ||
"certora/harness/MorphoInternalAccess.sol", | ||
"certora/harness/Util.sol" | ||
], | ||
"solc": "solc-0.8.19", | ||
"verify": "MorphoInternalAccess:certora/specs/Liveness.spec", | ||
"rule_sanity": "basic", | ||
"server": "production", | ||
"msg": "Morpho Blue Liveness" | ||
} |
This file was deleted.
Oops, something went wrong.
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,12 +1,13 @@ | ||
{ | ||
"files": [ | ||
"certora/harness/MorphoHarness.sol", | ||
], | ||
"verify": "MorphoHarness:certora/specs/Reentrancy.spec", | ||
"rule_sanity": "basic", | ||
"prover_args": [ | ||
"-enableStorageSplitting false", | ||
], | ||
"server": "production", | ||
"msg": "Morpho Blue Reentrancy" | ||
"files": [ | ||
"certora/harness/MorphoHarness.sol" | ||
], | ||
"solc": "solc-0.8.19", | ||
"verify": "MorphoHarness:certora/specs/Reentrancy.spec", | ||
"prover_args": [ | ||
"-enableStorageSplitting false" | ||
], | ||
"rule_sanity": "basic", | ||
"server": "production", | ||
"msg": "Morpho Blue Reentrancy" | ||
} |
Oops, something went wrong.