Skip to main content

Systems & Emerging Tech · Checklist

Smart contract pre-audit checklist

What to fix before paying for an audit, so auditors spend their time on real problems.

Security Solidity
  • [ ] Compiler version pinned; no floating pragma
  • [ ] Checks-effects-interactions everywhere value moves
  • [ ] Reentrancy guards on external calls that change state
  • [ ] Access control on every privileged function, with tests
  • [ ] No tx.origin for authorisation
  • [ ] Events emitted for every state change an indexer needs
  • [ ] Upgradeability (if any) documented with storage layout
  • [ ] 100% branch coverage on value-moving functions
  • [ ] Slither and a fuzzer run clean, findings triaged
  • [ ] A one-page threat summary for the auditors