Memo 版本與 roll-forward 還原
每次成功 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 不允許。
Related actions
Section titled “Related actions”arinova.memo.list_versions, arinova.memo.get_version, arinova.memo.create_named_version, arinova.memo.restore_version, arinova.memo.delete_page
Also known as
備忘錄版本, 頁面歷史, 還原舊頁面, roll-forward restore, 已刪除頁面
Build a7f47a5ca54ddcf7806cd48b81ce1b9827042766