# Preview (dry run)

> A dashboard preview, or dry run, validates a proposed change and returns the result it would produce without saving anything, so the author can check it first.

Canonical: https://dvt.dev/glossary/dashboard-preview/

A dashboard preview, or dry run, is a mode in which a proposed change is validated and its outcome returned, but nothing is saved, so the author can check the result before it reaches anyone else.

Previews matter most when the author is an agent. A person editing in a browser sees the result as they go; an agent writing JSON does not, unless the system shows it. A preview closes that gap by letting the agent see what its change would do before committing to it.

## How it works in dvt

Every create and update in dvt, through the REST API or the [MCP server](https://dvt.dev/glossary/mcp-model-context-protocol), can run as a preview first. The preview [validates](https://dvt.dev/glossary/spec-validation) the spec, computes the result, and returns it, including a summary of the resulting layout, without writing a revision. Only a second call persists the change.

This is the validate, preview, apply loop that dvt's [quickstart](https://dvt.dev/quickstart) walks through: the [agent](https://dvt.dev/glossary/agent-built-dashboard) writes the SQL and the spec, validates it, previews the render, and only then applies it. The same loop is available to people, so a human change and an agent change reach the live dashboard through identical checks. Once applied, the change becomes a new [revision](https://dvt.dev/glossary/dashboard-version-history) that can be diffed or rolled back.

## Related terms

- [Spec validation](https://dvt.dev/glossary/spec-validation)
- [Agent-built dashboard](https://dvt.dev/glossary/agent-built-dashboard)
- [Dashboard version history (revision)](https://dvt.dev/glossary/dashboard-version-history)
- [Dashboards as code, the dvt implementation](https://dvt.dev/solutions/dashboards-as-code)
