- [x] Use the [latest](https://docs.soliditylang.org/en/latest/) major version of Solidity. - [ ] All happy path tests - [ ] All revert condition tests. - [ ] Run [Slither](https://github.com/crytic/slither)/[MythX](https://mythx.io/) - [x] Run spellchecker - [ ] Fuzz tests, invariant testing - [ ] Recheck immutable setters in deploy scripts. - [ ] Test contracts hitting code size limit. - [ ] Check major functions for reentrancy attacks. - Function should set a unique variable at start that blocks reentry. - Function should handle storage variables safely. - Avoid if reentring a function doesnt have any impact to protocol. - [x] Add natspec for all public/external functions. - [ ] Explain all id creations. - [x] Explain usage of unchecked code blocks. - [ ] Prepare assumptions, external actors list. - [ ] Prepare audit goals list. - [x] version lib usage? - [x] execute try/catch