---
{
  "id": "platform.memo.versions-and-restore",
  "topic": "memo",
  "title": "Memo versions and roll-forward restore",
  "locale": "en",
  "version": "2026-08-25",
  "summary": "Memo writes create immutable full snapshots, and restore copies an older snapshot forward into a new current version without deleting history.",
  "content": "Every successful create, update, or restore writes an immutable snapshot in the same transaction as the page write. A snapshot contains the full title, content, and tags. Its `versionNumber` follows the page version counter, and `isCurrent` identifies the current one. `get_version` can retrieve old content for a diff or summary without restoring it.\n\n`restore_version` is roll-forward: it copies the selected old snapshot into a new version, increments the page version, and preserves every prior snapshot. Restore is allowed only for the page author, conversation owner, or a community creator, admin, or moderator. It is not destructive and requires no user confirmation, though it is unavailable on the public surface.\n\n`create_named_version` saves the current title, content, and tags as a durable checkpoint with an optional label. It needs no confirmation, is private, uses Strict drift, and is appropriate only when the user explicitly asks to name the current state.\n\n`delete_page` is different: it is an irreversible hard delete with user confirmation and strict drift. Cascading deletion removes version history, so restore cannot recover a deleted page. Before deleting, check whether the user actually wants an update or a restore. `list_versions` and `get_version` permit public reads; `restore_version` does not.\n",
  "aliases": [
    "memo versions",
    "page history",
    "restore old page",
    "roll-forward restore",
    "deleted memo"
  ],
  "tags": [
    "memo",
    "version",
    "restore"
  ],
  "relatedActions": [
    "arinova.memo.list_versions",
    "arinova.memo.get_version",
    "arinova.memo.create_named_version",
    "arinova.memo.restore_version",
    "arinova.memo.delete_page"
  ],
  "relatedActionPrefixes": [],
  "url": "https://docs.arinova.ai/en/kb/memo/versions-and-restore/"
}
---

Every successful create, update, or restore writes an immutable snapshot in the same transaction as the page write. A snapshot contains the full title, content, and tags. Its `versionNumber` follows the page version counter, and `isCurrent` identifies the current one. `get_version` can retrieve old content for a diff or summary without restoring it.

`restore_version` is roll-forward: it copies the selected old snapshot into a new version, increments the page version, and preserves every prior snapshot. Restore is allowed only for the page author, conversation owner, or a community creator, admin, or moderator. It is not destructive and requires no user confirmation, though it is unavailable on the public surface.

`create_named_version` saves the current title, content, and tags as a durable checkpoint with an optional label. It needs no confirmation, is private, uses Strict drift, and is appropriate only when the user explicitly asks to name the current state.

`delete_page` is different: it is an irreversible hard delete with user confirmation and strict drift. Cascading deletion removes version history, so restore cannot recover a deleted page. Before deleting, check whether the user actually wants an update or a restore. `list_versions` and `get_version` permit public reads; `restore_version` does not.
