Skip to main content
Every published Flow is a version. Versions are immutable — once shipped, they’re frozen. Nora manages the pointer from “production” to whichever version is currently live. Versions make risk manageable. You can publish confidently because rollback is instant. You can audit clearly because every deployment has a fixed identity. You can compare precisely because two versions are two things you can diff.

What’s in a version

A version captures:
  • Every block in the Flow.
  • Every wire between them.
  • Every setting (limits, approvals, retention).
  • Every attached preset (retrieval, memory, causal graph).
  • Every attached data source — pinned to specific collection versions.
  • The release note you provided at publish.
Nothing about a version can change after publish. Rollback shifts the “current” pointer; it doesn’t edit the version itself.

Where versions matter

Publish a version

Ship the Draft as a new version.

Rollback

Point production to a prior version.

Version diff

See exactly what changed.

Drafts

Edit safely without touching production.

Audit trail

Every publish, rollback, and restore.

The version numbering

Versions are numbered per Flow, starting at v1. Numbers are monotonically increasing — the number tells you the order things were shipped, not necessarily the one that’s live. Also visible: the version’s content hash — a short ID derived from the version’s contents. Two versions with the same content share a hash (rare but possible after a rollback + reroll).

Version lifecycle

Configurable retention: how long a version stays runnable after being superseded. Default: indefinite for the most recent 10 versions, 1 year for older, then archive.

The published pointer

Every Flow has one published pointer at any time. It points to the version that gets production traffic. Publish moves the pointer forward. Rollback moves it back. The pointer is what runs — the versions themselves are storage.

Multiple pointers (canary)

For canary rollouts, you can have two pointers active at once:
  • Primary — the version handling the majority of traffic.
  • Canary — the version handling a % of traffic.
Both are pinned versions. Traffic split is defined at the Flow level.