Things that broke in production (and the checks they became)
Backups that backed up nothing. The script dumped an empty Postgres database while n8n was actually running on SQLite, and the restore test didn't catch it. Now there are online SQLite snapshots, counts read before every dump, a 35-check restore test and a corruption drill that must fail.
A webhook down for five minutes. Recreating a container dropped n8n's manual attachment to the stack network. The network is now declared in compose.
Mail going to spam. After a network change, DKIM signing silently stopped. Lesson: test a mail fix on the path real mail takes, not from the host.
Every incident becomes a check in the static suite, which now stands at 1,400+ automated checks.