Drafts, publishing & version history
Every questionnaire has exactly one draft — the thing you edit — and a history of published versions — immutable snapshots respondents actually see. Nothing you do in the workspace is visible to respondents until you publish.
Autosave
Section titled “Autosave”The draft saves itself about two seconds after you stop editing (and
immediately when you close a dialog, publish, or leave the page). The
toolbar shows the state: Saving…, Saved, or — if the backend couldn’t
be reached — Draft not saved — retrying on next change. There is no save
button to forget.
The toolbar also shows where you stand relative to the live version:
never published, Unpublished changes, or Live = v3. The comparison is
by content, so undoing your edits back to the published state clears the
“unpublished changes” flag by itself.
Publishing
Section titled “Publishing”Publish changes validates the draft strictly (all problems listed at once — unresolvable rule references, invalid configurations, empty questionnaire) and, on success, snapshots it as the next version:
This snapshots the current draft as version 4 and makes it live for new respondents immediately. Respondents already in progress finish on the version they started.
You can attach an optional publish note — it shows in the version history, so a line like “added dessert branch” is future-you’s friend.
Version numbers only ever count up. Publishing never modifies an existing version, and nothing in the system rewrites history.
Why in-flight respondents are never disrupted
Section titled “Why in-flight respondents are never disrupted”When a respondent starts a questionnaire, their response is pinned to the version that was live at that moment. Resuming — even after you’ve published three more versions — serves the pinned version’s definition, not the latest. Their questions, rules, and codes stay exactly as they were, and their stored answers stay interpretable against that version forever.
New sessions always get the current version. So iterate freely: publishing is safe by construction, and the worst case for a mid-flight respondent is that they finish on slightly older questions.
Version history
Section titled “Version history”Version history in the toolbar lists every published version — number,
date, note, and a live badge on the current one. From here you can:
- View — inspect the version’s definition (shown as raw JSON).
- Restore to draft — copy that version’s contents over the current draft. Unpublished draft edits are lost (the dialog says so), but history is untouched: restoring v1 and publishing gives you v4, not a rewritten v1.
Duplicating
Section titled “Duplicating”Duplicate on the questionnaire list copies the draft, allowed origins, and submission policy into a new questionnaire named “Copy of …” with a fresh public id — and no versions or responses. It’s the way to fork a questionnaire for experiments without touching the original. (It happens immediately — there’s no confirmation step.)