展开本页目录
开始前准备什么
- 下载练习包,先阅读 README 中的依赖和运行范围。
- 使用独立练习目录;starter 是待完成任务,reference 是作者参考实现。
- 账号型功能须在自己的授权环境执行;本题不要求提供真实凭据。
- 保存带出处旧规
- 条件写入新规
- 拒绝陈旧覆盖
- 记录可恢复版本
- 制造错误合并
- 恢复有据版本
- 核对内容与身份
1. 保存带出处旧规
用create_only写入“距离用米”,正文保留spec-v1.md来源。路径表示规则身份,不能靠改文件名掩盖取代关系。
2. 条件写入新规
回读page_id,再以expected_page_id写入毫米新规和spec-v2.md来源。新规范明确旧米值需乘1000转换。
本题本地命令
AI_MEMORY_BIN="<ai-memory binary>" python versioned_page.py3. 拒绝陈旧覆盖
继续用旧page_id尝试覆盖。原生返回precondition_failed;调用方应回读后判断,不做无条件重试。
4. 记录可恢复版本
在隔离wiki中显式提交Git checkpoint,保存对应修订号。这是作者主动快照,不假定每次读取都会自动生成checkpoint。
5. 制造错误合并
将规则误写成“全部不用单位”。此为作者负例输入,不是AI实际合并产物;先保留错误现状以便对照。
6. 恢复有据版本
调用memory_restore_page并传正确rev。原生把该版本写成新的current page,旧误写版本仍可追溯。
7. 核对内容与身份
重新读页面,确认毫米正文和来源恢复、page_id已更新。恢复单页不等于恢复交接、用户权限或整个数据库。
怎样确认已经完成
- 旧版本仍可追溯
- 恢复不影响无关页
- 页面与索引回读一致
- 已运行 ai-memory原生版本条件写入及memory_restore_page恢复;显式Git checkpoint记录作者规范版本,旧page_id覆盖被拒绝;未运行LLM记忆合并。
常见问题
AI 一直记着旧规则怎么纠正又保留历史?
不要直接覆盖后丢掉来源。用expected_page_id条件更新,保留新旧规范来源;本题旧ID写入会被原生拒绝。
ai-memory 合并错了一页记忆能只恢复这一页吗?
可以从仍包含该页的Git checkpoint恢复。本文实际调用memory_restore_page产生新current版本;它只恢复页面,不恢复所有数据库状态。
哪些功能已经实际执行?
已运行 ai-memory原生版本条件写入及memory_restore_page恢复;显式Git checkpoint记录作者规范版本,旧page_id覆盖被拒绝;未运行LLM记忆合并。



