Version history and undo
Every edit to a body is kept 30 days, and ⌘Z takes back your last act.
Roma keeps two ways back. Version history remembers an item's body and its property values before every edit, whoever made it, for 30 days. Undo, ⌘Z on the Mac and in the browser, takes back the last thing you did to your own data, one step at a time. Between them, a rewrite you did not want, a wrong status pick or a slip of a drag is a moment's work to reverse.
What version history keeps
Every time an item's body or its values are written, Roma saves the body and the values as they stood before the change. The title, the status, the dates and the list are not versioned, because they are small and the Event Log keeps their earlier value with a Revert of its own. The body is where the work you cannot retype lives, so the body is what history holds (the body of a task or note).
The newest fifty versions of an item are kept, each for 30 days. Your own typing is not fifty entries: edits you make within ten minutes of each other keep one checkpoint per burst, so the history reads as sessions rather than keystrokes. A change that clears a body, cuts it below half, or empties every value always gets a checkpoint of its own.
Who edited what
Each entry names its writer: You, Operator, the expert that wrote it (Content Editor, say), or Background for a change Roma made on its own (experts). Beside the name is the kind of change: an edit, an operator edit, a cleanup, a restore, or external agent for an agent you connected. Each entry is the body as it stood before that writer's change, so to undo what the Content Editor did, restore the entry that names the Content Editor. The entry from an item's first save reads "empty body".
Restore a version
On the Mac and in the browser, view the task or note, press the ⋯ in its header and pick Version history. The list runs newest first, with the date, the writer, the kind of change and the size. Press Restore on an entry and that body and those values come back, and the restored body reaches every device within a moment. Version history is read from the server, so it needs a connection.
On your iPhone, the ⋯ on an open item holds Version history too, as a sheet with the same rows and the same Restore.
A restore is itself an edit: the body as it stood before the restore is saved first, so restoring the wrong entry is fixed by restoring again. A restore puts back the body and the values, never the title. An archived item keeps its history and restores like any other.
Ask the operator
You can say "bring back what I wrote this morning" or "undo what the Content Editor did", and the operator reads the history and restores the right entry. If you, or someone you share the item with, typed into the body after that entry, the operator says so and asks before overwriting it. After an edit of its own that went wrong, the operator restores rather than rebuilding the body from memory.
Undo on the Mac and in the browser
⌘Z takes back the last thing you did to your own data in this window, one gesture per step, as long as it can be put back exactly. ⇧⌘Z puts it forward again. A status pick, a due date, a reminder, a value in a cell, a rename, a move to another list, an archive, a reorder, a delete, a list's name, icon, instructions or properties: each is one step, and a change made to several rows at once is one step too. The last fifty steps are kept while the window is open (keyboard shortcuts).
A quiet line at the foot of the window says what happened: "Undid: Set status · Buy milk" with a Redo beside it. If another device, a member of a shared list or the operator changed the thing since, the line reads "Can't undo: Buy milk changed since", and nothing is overwritten.
Inside a text field or the body, ⌘Z stays the editor's own undo, which goes back keystroke by keystroke, and in a shared body it steps through your own edits alone. What cannot be put back exactly keeps its question before it happens: deleting a list, changing a property's type, deleting a property that still holds values.
On your iPhone there is no ⌘Z. Version history covers the body, a status or a date set by mistake is set again, and a deleted task comes back through your operator.
Questions people ask
How long does Roma keep old versions of a note?
For 30 days, up to the newest fifty versions per item. Edits you make within ten minutes of each other count as one version, so a long writing session takes one entry rather than fifty. A version is kept whether you, the operator, an expert or a connected agent made the edit.
Can I undo a change the operator made?
Yes. In the item's Version history, find the entry that names the operator or the expert and press Restore: that entry is the body as it stood before their change. Or ask the operator in plain words to undo its edit, and it restores the right entry itself, asking first if you typed into the body since.
Does ⌘Z work on my iPhone?
No. ⌘Z and ⇧⌘Z belong to the Mac app and Roma in the browser. On your iPhone, a wrong edit to a body is put back from Version history on the item's ⋯ menu, a status or a date you set by mistake is set again, and a deleted task comes back when you ask your operator.
Can I get an old title back?
Not from version history, which restores the body and the values alone. A title you renamed keeps its earlier value in the Event Log under Settings, where Revert on that line puts it back on the Mac and in the browser. On the Mac and in the browser, ⌘Z right after a rename does the same.