版本化记忆

Tentarc 的记忆是版本化结构化状态,不是可变大对象。

数据模型思路

每次写入都追加新版本:

{
  "workspaceId": "ws_prod",
  "sessionId": "s_42",
  "agentId": "session",
  "revision": 18,
  "status": "ok|fallback",
  "summary": {},
  "meta": {}
}

读取路径按 (sessionId, agentId) 选择最新有效版本。

为什么版本优于覆盖写

  • 保留演化轨迹(何时变更、为何变更)
  • 支持 replay/rollback/fork
  • 让部分失败显式化,而不是破坏性覆盖

回退语义

当生成或查询失败时,运行时仍可写回退版本:

  • 版本号继续递增
  • 记录带失败元数据
  • 状态机保持单调、可调试

不会“悄悄丢记忆”。

压缩原则

版本日志会增长,压缩时应:

  • 保留最新有效版本
  • 保留关键审计元数据
  • 不抹掉未闭环故障历史

压缩是存储优化,不是语义重写。

提交文档反馈最后更新:2026年3月6日
这页有帮助吗?有帮助没帮助