---
{
  "id": "platform.memo.versions-and-restore",
  "topic": "memo",
  "title": "Memo 版本與 roll-forward 還原",
  "locale": "zh-TW",
  "version": "2026-08-25",
  "summary": "Memo 寫入會建立 immutable 完整快照；restore 把舊快照複製成新的目前版本，不會刪除歷史。",
  "content": "每次成功 create、update 或 restore，都在同一 transaction 內寫入 immutable snapshot；快照包含完整 title、content 與 tags。`versionNumber` 跟隨 page version 計數，`isCurrent` 標示目前版本。`get_version` 可直接讀舊內容做 diff 或摘要，不必先 restore。\n\n`restore_version` 是 roll-forward：把指定舊快照複製到新版本、page version+1，所有既有歷史仍保留。只有頁面作者、conversation owner，或 community 的 creator／admin／moderator 可以 restore。這不是 destructive action，不需 user confirmation，但不允許 public surface。\n\n`create_named_version` 把目前 title、content、tags 存成耐久 checkpoint，可附 optional label。它不需 confirmation、只允許私有執行、採 Strict drift，而且只應在使用者明確要求命名目前狀態時使用。\n\n`delete_page` 不同：它是不可逆 hard delete，需 user confirmation 與 strict drift。cascade 會連版本歷史一起刪除，restore 無法救回已刪頁面；刪除前先判斷使用者是否其實只需 update 或 restore。`list_versions`／`get_version` 允許 public read，`restore_version` 不允許。\n",
  "aliases": [
    "備忘錄版本",
    "頁面歷史",
    "還原舊頁面",
    "roll-forward restore",
    "已刪除頁面"
  ],
  "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/zh-tw/kb/memo/versions-and-restore/"
}
---

每次成功 create、update 或 restore，都在同一 transaction 內寫入 immutable snapshot；快照包含完整 title、content 與 tags。`versionNumber` 跟隨 page version 計數，`isCurrent` 標示目前版本。`get_version` 可直接讀舊內容做 diff 或摘要，不必先 restore。

`restore_version` 是 roll-forward：把指定舊快照複製到新版本、page version+1，所有既有歷史仍保留。只有頁面作者、conversation owner，或 community 的 creator／admin／moderator 可以 restore。這不是 destructive action，不需 user confirmation，但不允許 public surface。

`create_named_version` 把目前 title、content、tags 存成耐久 checkpoint，可附 optional label。它不需 confirmation、只允許私有執行、採 Strict drift，而且只應在使用者明確要求命名目前狀態時使用。

`delete_page` 不同：它是不可逆 hard delete，需 user confirmation 與 strict drift。cascade 會連版本歷史一起刪除，restore 無法救回已刪頁面；刪除前先判斷使用者是否其實只需 update 或 restore。`list_versions`／`get_version` 允許 public read，`restore_version` 不允許。
