Testing
- Pattern for testing lens against mutative version function
- Heuristic Invariant/Property in finance apps
- Compiling contracts faster with
forge-std::deployCodeorforge-std::deployCodeTo
Gas Optimization
-
Storing callback data on transient storage might be chapter than passing data to callback function
Example: metapool-router #246
-
Replace
JUMPIwith opcode for failure pattern
Imagine if-else branch likeif condition, then revert, theJUMPIcan be replaced withmload(condition - 0x01). The similar optimization can be seen in mega-dropper.
Deployment
- Crunch CREATE2 salt on terminal
- Library to deploy contracts built by Hardhat with Foundry
- Recording git commiet on-chain will make it easier to find version of upgradable contract