Incident report: inactivity slashes following the v5 upgrade
Posting as the PM responsible for the node at Aztec Labs. This is a factual account of the inactivity slashes that occurred after the v5 upgrade, and the measures taken to prevent this from happening again.
What happened
On 2026-07-14, the network upgraded to v5 following a successful vote of token holders and sequencers. The v5.0.0 node software shipped with a default slash grace period of 24 hours; the intended configuration was 7 days. When the grace period ended on 2026-07-15, nodes began voting to slash sequencers that were offline, primarily operators that had not yet upgraded to v5. The votes passed and reached L1.
The slashing mechanism operated correctly. The default configuration gave less time for operators to upgrade their node software.
Impact
- Approximately 370,000 AZTEC has been slashed, all for inactivity offences. There is no sign of defective slashing.
- Slash round 159 executed. The slash veto council has since paused slashing from round 160 through round 180. Rounds from 181 onward may be executed by sequencers, which would trigger further slashes.
Root cause
In March, the grace period was raised from 24 hours to 7 days on the v4 release branch and shipped in v4.1.0. That change was never forward-ported to the main development branch. v5.0.0 was cut from that branch, so it went out with the original 24-hour default. The default configuration was fully public and available on the aztec-packages repo.
Why detection took time
- There was no internal alerting on slash votes or payloads; we learned of the issue from affected operators.
- Nodes log no warnings when the configured sequencer identities appear in a slashing payload, which is hard to reconcile if a node is offline or on a different p2p network.
- Community dashboards such as dashtec began tracking the v5 network three days after the upgrade, so the main tool operators use to check slashing activity showed nothing during the execution delay period.
What we’ve done
- Worked with the slash veto council to pause pending slash rounds.
- Released a patch restoring the correct defaults on all development branches.
- Stood up a QA process for default configuration on every stable release.
- Setup internal monitors to detect large slashing events ahead of their execution time.
- Authored this incident report.
Edits:
- Slashed amount is 370,000 not 182,000 as previously stated.