Experts Call for Continuous Verification as AI Shortens Smart Contract Audit Lifespan
$1.32 billion gross. 344 incidents. H1 2026. Net after frozen and recovered funds: roughly $1.2B. The figures come from CertiK's Hack3d report. The surface-level read — losses down 46.8% year-over-year — conceals the structural shift.
Caleb North·updated July 14, 2026

Remove one historic outlier and the period runs ~28% higher than the comparable window. One-time audits captured at deploy time do not account for this drift. The attack surface has migrated to legacy code.
The Data
204 code vulnerability exploits. $151.6M lost. Attacks on contracts older than one year are climbing. TRM Labs logged 207 attacks in the same period — a record for its dataset — totaling $972M. The direction is not ambiguous. Older code is the target.
Why One-Time Audits Fail
Ari Redbord, TRM Labs Head of Policy: attack methods evolve faster than an audit conducted on launch day can account for. The mechanism is now measurable. Anthropic's December 2025 SCONE-bench study tested 405 real exploited contracts from 2020–2025. Agent success rate moved from 2% to 55.88% in one year. Cumulative value of simulated successful exploits: $5,000 to $4.6M. Cost per scan: $1.22. The barrier to finding a vulnerability has dropped two orders of magnitude. The window between discovery and exploitation is compressing in lockstep.
Legacy Code as Attack Vector
June 14, 2026: ~$2.19M drained from Aztec Connect. The protocol was discontinued in 2023. Days later: ~$300,000 from mySwap DEX, despite no new liquidity intake for over six months. The Zcash Orchard pool carried a critical vulnerability from May 2022 until an emergency patch in June 2026 — four years of live exposure. Discovery method: an agent built on Anthropic's Claude Opus 4.8, per Shielded Labs engineer Taylor Hornby. A positive counterpoint exists: in May, whitehat 0xflorent returned 1,003 ETH to 48 Hong Coin ICO investors whose funds had been locked since 2016 due to a bug in the automatic return mechanism. Recovery is possible. It requires someone to look.
The invariant a launch-day audit verified does not hold indefinitely. State does not degrade. The threat model around it does.
Audit Checklist
- Re-audit on every meaningful dependency upgrade. Linked library changes void prior coverage.
- Run agent-based scanners against any contract older than 12 months. Sub-dollar cost per scan removes the budget objection.
- Map every admin key and pause function. State persists regardless of declared status.
- Treat pause as a state, not a kill switch. Aztec Connect and mySwap are the pattern.
- Subscribe to threat intel keyed to function signatures and opcode patterns, not protocol names.
- Tag contracts with their audit date and threat-model version. Re-verify when either changes.