Smart contract audit checklist · the one we actually use
A checklist for the last days before mainnet: threat model, tests, fuzz, deploy, monitor · 30+ items we never skip.
A checklist for the last days before mainnet: threat model, tests, fuzz, deploy, monitor · 30+ items we never skip.
Reviewed by:Dezső Mező· Founder · Engineer, DField Solutions· 22 Mar 2026
A single re-entrancy bug cost $180M once. A single access-control miss zeroed out thousands of users. Blockchain doesn't forgive. This checklist is what we run on every project before the first mainnet transaction.
100% line coverage isn't the goal · the goal is a scenario test for every economic situation. Foundry or Hardhat, augmented with invariant tests.
// Foundry invariant test
contract TreasuryInvariants is Test {
function invariant_totalSupplyMatchesBalances() public {
uint256 sum;
for (uint256 i = 0; i < users.length; i++) {
sum += treasury.balanceOf(users[i]);
}
assertEq(sum, treasury.totalSupply());
}
}Tools don't find every business-logic bug. Read the contracts line by line. Focus: state transitions, permissioning, rollback, migration. Four-eye principle · two independent reviewers.
30-90 days of production monitoring: anomaly detection (flashloan patterns, TVL jumps, suspicious gas usage). Pager pipeline at threshold.
Never deploy to mainnet on a Friday afternoon. Ever. Not even for a 'small update'.
This list isn't complete, but it's the repeatable part of what we do. If you'd like, we can run it against your code · 2-8 weeks to a full audit report as PRs.

Founder, DField Solutions
I'm a full-stack engineer and I build across the whole stack myself · AI agents, web and mobile apps, blockchain, backends, security, right down to the OS layer. If it's software, I've probably built it and broken it.
Let's talk about your project. 30 minutes, no strings.