# What is a dry run, and why should a system do one before it acts?

A dry run does everything except the part that changes something. It reads, computes and prints what it would have done, then stops. When it is the default, running the dangerous version of a script takes a deliberate act, and an accident produces a printout instead of a thousand modified rows.

Also called: dry-run mode, no-op mode
Checked: 2026-09-27

In one line

Everything except the part that changes something. Default, not a flag.

## Why it matters to you

This is the cheapest safety rule in operations and it is nearly always retrofitted after the incident that justified it.

On WhoFits the standing rule is that every script writing to the database defaults to dry run, and that tests read production but write their results to a local file, never back. It costs one line and it removes an entire category of Monday morning.

The same instinct applies to deletes. Both foreign keys on the WhoFits interaction-edge table used to cascade, so removing a creator quietly removed the edges that had taken days to collect. Changing them to restrict on 2026-03-22 turned a silent data loss into a blocked delete that names what it is blocking. For data that is expensive to collect, deletion should be loud.

## Where it turns up in something we run

- Every script that writes to the database defaults to dry run, and tests read production but write to a local file (recorded 2026-09-14, [WhoFits](https://octyn.co/casestudies/whofits))
- Cascade deletes changed to restrict after edges disappeared silently (recorded 2026-03-22, [WhoFits](https://octyn.co/casestudies/whofits))

## Next to this

- [Rollback](https://octyn.co/glossary/rollback)
- [Human in the loop](https://octyn.co/glossary/human-in-the-loop)
- [Observability](https://octyn.co/glossary/observability)

## Argued out at length

- [Why your AI automation broke and nobody noticed](https://octyn.co/compare/ai-automation-failing-silently)

## Related

- [Why your AI automation broke and nobody noticed](https://octyn.co/compare/ai-automation-failing-silently)
- [Rollback](https://octyn.co/glossary/rollback)
- [The Consult](https://octyn.co/consult)

Canonical: https://octyn.co/glossary/dry-run
