acuarica / evm

A Symbolic Ethereum Virtual Machine (EVM) bytecode interpreter, parser and decompiler, along with several other utils for programmatically extracting information from EVM bytecode.
https://acuarica.github.io/evm/
MIT License
46 stars 5 forks source link

Output dataset test summary in Markdown format #132

Closed acuarica closed 4 days ago

acuarica commented 4 days ago

As a follow up of #131, this PR outputs dataset test summary in Markdown format so it can be used as a PR comment.

github-actions[bot] commented 4 days ago

size-limit report 📦

Path Size
dist/sevm.js 17.4 KB (0%)
codecov[bot] commented 4 days ago

Codecov Report

All modified and coverable lines are covered by tests :white_check_mark:

Project coverage is 94.24%. Comparing base (93fe0bc) to head (3f686de).

Additional details and impacted files ```diff @@ Coverage Diff @@ ## main #132 +/- ## ======================================= Coverage 94.24% 94.24% ======================================= Files 23 23 Lines 5456 5456 Branches 932 932 ======================================= Hits 5142 5142 Misses 299 299 Partials 15 15 ```

:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Have feedback on the report? Share it here.

github-actions[bot] commented 4 days ago

Contract Dataset Summary

Symbolic Execution Errors - 869 errors of 20 kinds (in 235 contracts)

x Memory destination for CODECOPY is not reducible to Val - 490 error(s)
  • TransparentUpgradeableProxy 0x10b5f02956d242ab770605d59b7d27e51e45774c ~4.2k v0.8.9 (x2)
  • Blindsight 0x7a449043deb555b9bb0add56ff66bafba1abe84e ~25.5k v0.8.9 (x10)
  • MODELY 0xdbab23ee1df3864ae1bb2822ff3b28e04fa96c54 ~21.8k v0.8.19 
  • MemoryPageFactRegistry 0x40864568f679c10aC9e72211500096a5130770fA ~4.3k v0.6.12 
  • GpsStatementVerifier 0xd51A3D50d4D2f99a345a66971E650EEA064DD8dF ~15.7k v0.6.12 
  • CpuFrilessVerifier 0x28E3aD4201ba416B23d9950503dB28a9232BE32a ~36.8k v0.6.12 (x17)
  • CpuFrilessVerifier 0xaA2c9CDD4ceAebe9A35873B77F57FB47c3Ef11b9 ~38.6k v0.6.12 (x17)
  • CpuFrilessVerifier 0xD0fC19710c389ef4a7244656cB08db08eA9D88b4 ~36.0k v0.6.12 (x17)
  • CpuFrilessVerifier 0x8055948c530dbBc19cc350d53473EEe3a1e3d22B ~34.5k v0.6.12 (x17)
  • CpuFrilessVerifier 0x66F2345D003511a1A60D87E3984Bb8d12C21A970 ~36.4k v0.6.12 (x17)
... 101 more contracts
x JUMP(0x56)@<pc> offset should be numeric but found `local<n>` - 293 error(s)
  • TFBXV 0xc856c519c068f1b29bb54f81d498c457c99d6b16 ~35.4k v0.8.22 (x5)
  • CurveHandler 0xBcFacE618465F7D35cE82992FbE92e63C0529b13 ~19.8k v0.8.17 (x7)
  • PunkPuppets 0x42b075d31e706fb38f7e236ad2aa66a1460cf721 ~17.5k v0.8.18 
  • PudgyPuppets 0xb801bf563e7ac8667211c9ae6c7cfff0586fb214 ~17.5k v0.8.18 
  • Nuts 0x88266f9eb705F5282a2507A9c418821a2AC9f8BD ~11.3k v0.8.22 (x5)
  • GalaxyFox 0x8F1CecE048Cade6b8a05dFA2f90EE4025F4F2662 ~17.9k v0.8.23 (x5)
  • LilMiladyPudgys 0x72ce68a0b1b897bf65561d6cc636c9370f5a7c6e ~17.5k v0.8.18 
  • Stuff 0xfA297F8a132811b5ED682Bed0bE035520DB7F89b ~18.0k v0.8.18 (x5)
  • FellowshipDutchAuction 0xbC3042ee8C6E1197Ab5EAe5B4E674D3885033Dd2 ~14.0k v0.8.23 (x4)
  • QuantumRats 0xad57ccc5b5ee395ed44afad079ad798756d2d7c3 ~18.6k v0.8.22 (x5)
... 60 more contracts
x JUMP(0x56)@<pc> destination should be JUMPDEST@0 but found '0x60' - 7 error(s)
  • CurveRegistryCache 0x29E06bBA53f73E271859214D9D87a1bE636273C0 ~16.1k v0.8.17 
  • XAlpha 0x369733153E6E08d38F2BC72ae2432E855Cfbe221 ~14.2k v0.8.17 
  • GuineaPigGovernor 0x96032D2B0640c220Fc5128cac3E4962AcA570C61 ~46.6k v0.8.23 (x3)
  • Vector 0xBb3D7F42C58Abd83616Ad7C8C72473Ee46df2678 ~29.7k v0.8.22 
  • Vector 0x5ad182646ab2a52f0f7d422c65f3f95bf2024877 ~29.7k v0.8.22 
x POP with empty stack - 18 error(s)
  • TitanTracker 0xD9ED35075F47078160170A74459A5AF6BdBbB2C2 ~32.2k v0.8.19 (x4)
  • ZeroxScans 0x10703cA5e253306e2ABABD68e963198be8887c81 ~35.7k v0.8.19 (x4)
  • ChainFactory_ERC20 0x23e70d4A085B72e970907b4126A604E2edF0E238 ~25.3k v0.8.23 (x2)
  • ETHERYIELD 0x3a2868C9A755BE1ec2977fB8f3BA8593c10c8DA4 ~34.8k v0.8.19 (x4)
  • ZeroxScans 0x347d28958B8C621838734fCBBd787e3407Ab9eb0 ~35.8k v0.8.19 (x4)
x JUMP(0x56)@<pc> offset should be numeric but found `mload(0x0)` - 34 error(s)
  • yPRISMA Forwarder Callback Minter 0x3d05654f333eea534fc5d7b873c9b8bf35b0550f ~3.8k <no version> 
  • Curve Degen Leverage Bot Factory 0x34bc9970228b14a76ebf0a7f5a601001bbca20c8 ~23.0k <no version> 
  • Curve Leverage Bot 0x425d9ca45409fd8f39f749dcf83f0ebdbb0b7da4 ~3.8k <no version> 
  • Liquidity Gauge v4 0x08d36c723b8213122f678025c2d9eb1ec7ab8f9d ~17.7k <no version> 
  • Curve Leverage Bot 0x89d79cda1a62e3ea95ca21d64681e853a0847300 ~3.8k <no version> 
  • Curve Leverage Bot 0xc12BE7AF8FD9Fa1bdE8Ad88bb10EF955b6e35417 ~3.8k <no version> 
  • Uniswap V3 TWAP Bot 0x7cb5d8dd2ec6aca4f006b44de8b734cc1298f40d ~19.3k <no version> 
  • Yearn Vault Factory 0x32035cb2a4308894f7e59c6c487651c4acce60ab ~6.6k <no version> 
  • Yearn V3 Vault 0x7d9a48273cf48c194086F6E79a56d7f23c0Ed4f2 ~45.2k <no version> 
  • Vyper_contract 0x7c868F045a60501A2F4159446545939771ddA323 ~0.4k <no version> 
... 24 more contracts
x Memory size too large creating Log: 115792089237316195423570985008687907853269984665640564039457584007913129639488 in `sub(local<n>, local<n>)` - 1 error(s)
  • FlatPriceSale_v_2_1 0x57c08f6827DC9A88b253830D73E0d8314b32E8D1 ~28.4k v0.8.21 
x Memory size too large creating Log: 115792089237316195423570985008687907853269984665640564039457584007913129639520 in `sub(add(0x20, add(local<n>, local<n>)), local<n>)` - 1 error(s)
  • FlatPriceSale_v_2_1 0x57c08f6827DC9A88b253830D73E0d8314b32E8D1 ~28.4k v0.8.21 
x Memory size too large creating Log: 115792089237316195423570985008687907853269984665640564039457584007913129639552 in `sub(add(0x20, add(local<n>, local<n>)), local<n>)` - 1 error(s)
  • FlatPriceSale_v_2_1 0x57c08f6827DC9A88b253830D73E0d8314b32E8D1 ~28.4k v0.8.21 
x Memory size too large creating Log: 115792089237316195423570985008687907853269984665640564039457584007913129639584 in `sub(add(0x20, add(local<n>, local<n>)), local<n>)` - 1 error(s)
  • FlatPriceSale_v_2_1 0x57c08f6827DC9A88b253830D73E0d8314b32E8D1 ~28.4k v0.8.21 
x Memory size too large creating Log: 115792089237316195423570985008687907853269984665640564039457584007913129639616 in `sub(add(0x20, add(local<n>, local<n>)), local<n>)` - 1 error(s)
  • FlatPriceSale_v_2_1 0x57c08f6827DC9A88b253830D73E0d8314b32E8D1 ~28.4k v0.8.21 
x Memory size too large creating Log: 115792089237316195423570985008687907853269984665640564039457584007913129639648 in `sub(add(0x20, add(local<n>, local<n>)), local<n>)` - 1 error(s)
  • FlatPriceSale_v_2_1 0x57c08f6827DC9A88b253830D73E0d8314b32E8D1 ~28.4k v0.8.21 
x Memory size too large creating Log: 115792089237316195423570985008687907853269984665640564039457584007913129639680 in `sub(add(0x20, add(local<n>, local<n>)), local<n>)` - 1 error(s)
  • FlatPriceSale_v_2_1 0x57c08f6827DC9A88b253830D73E0d8314b32E8D1 ~28.4k v0.8.21 
x Memory size too large creating Log: 115792089237316195423570985008687907853269984665640564039457584007913129639712 in `sub(add(0x20, add(local<n>, local<n>)), local<n>)` - 1 error(s)
  • FlatPriceSale_v_2_1 0x57c08f6827DC9A88b253830D73E0d8314b32E8D1 ~28.4k v0.8.21 
x Memory size too large creating Log: 115792089237316195423570985008687907853269984665640564039457584007913129639744 in `sub(add(0x20, add(local<n>, local<n>)), local<n>)` - 1 error(s)
  • FlatPriceSale_v_2_1 0x57c08f6827DC9A88b253830D73E0d8314b32E8D1 ~28.4k v0.8.21 
x Memory size too large creating Log: 115792089237316195423570985008687907853269984665640564039457584007913129639776 in `sub(add(0x20, add(local<n>, local<n>)), local<n>)` - 1 error(s)
  • FlatPriceSale_v_2_1 0x57c08f6827DC9A88b253830D73E0d8314b32E8D1 ~28.4k v0.8.21 
x Memory size too large creating Log: 115792089237316195423570985008687907853269984665640564039457584007913129639808 in `sub(add(0x20, add(local<n>, local<n>)), local<n>)` - 1 error(s)
  • FlatPriceSale_v_2_1 0x57c08f6827DC9A88b253830D73E0d8314b32E8D1 ~28.4k v0.8.21 
x JUMP(0x56)@<pc> offset should be numeric but found `add(local<n>, local<n>)` - 3 error(s)
  • Acidmen_nfts 0x1316cd513db5b9944101b652ffe0137708998079 ~17.0k v0.8.22 (x2)
  • gameboys 0x1010ea28cac9a75f4da9c388bd87c96e7f4866a1 ~33.3k v0.8.22 
x Memory size too large creating Sha3: 115792089237316195423570985008687907853269984665640564039457584007913129639808 in `sub(local<n>, local<n>)` - 5 error(s)
  • LOLWS 0xf4c2706e5c53869337ed5ab9e3bd801c224bba19 ~5.3k v0.8.23 
  • SIG 0xa9ec2f0ee0ae09b8a1d00d6653418f202ce91d44 ~6.3k v0.8.23 
  • WFW 0x32b819e2306e77dcb1c4a6fb7a796da69b9e356a ~6.3k v0.8.23 
  • Token 0xaeB3607eC434454ceB308f5Cd540875efb54309A ~10.7k v0.8.10 
  • OmniMerlin 0x234F534D322dF1a8a236a2F952d6657bf800F1FA ~5.2k v0.8.13 
x Memory size too large creating Revert: 115792089237316195423570985008687907853269984665640564039457584007913129639808 in `sub(0x0, local<n>)` - 3 error(s)
  • GoldFeverMaskBoxStore 0x986BE1392a313e9246e6B871AC42Eaf6c643A2C3 ~15.2k v0.8.17 
  • GoldFeverMaskBoxStore 0xD9d1f6BFBD32B5942B230d611733BCFC4805480f ~15.0k v0.8.17 
  • GoldFeverMaskBoxStore 0xd734f49358917695137f6c79Bd9757b7156840Bf ~14.2k v0.8.17 
x JUMP(0x56)@<pc> offset should be numeric but found `add(0x1, local<n>)` - 5 error(s)
  • PointFarmors 0x37ef980d65841c4c018e2a514a91ea07d7772ba7 ~34.3k v0.8.22 (x5)

Bench Stats

Metadata Stats

Selector Stats

ERCs Stats (most used first)

Precompiled Contract Stats (most used first)

PC Stats

Revert Selector Stats (most used first)