跳转到内容

外部评审:Git 式记忆构想该抄什么、该自建什么

7 月底集团请了一个"外部异构席"审一份构想:用 Git 的思路做集团记忆和协作透明。评审的结论今天读仍然锋利:存储层全用无聊的成熟技术,组织语义层市面上没有现货必须自建,而且这东西不该叫记忆系统,该叫操作系统内核。这一页是它和第 4 课的接口。

评审日期 2026 年 7 月 29 日,性质是"成就式审核、无阻塞权"。引用原文处已标出。

先记三样
  • 位置:存储层用商品(SQLite、追加事件、投影);组织语义层市面无现货,自建。
  • 抄与不抄:抄:事件溯源与双时态的工程学。不抄:用真 git 做结构化状态的真源。
  • 一个数:七项 finding 六项 ADOPT。一条令:"有人拿框架对比表劝换方案,先让他推翻"组织记忆无现货"这条判定。"

高度符合,而且不只是符合:这份构想就是体检报告五层架构中“证据层”的完整施工图。方向不需要改。需要的是七个补丁,防止它在落地时背叛自己的初衷;以及一个升维:把它从“记忆功能”重新定位为集团操作系统内核。

评审的核心洞见是:Directive、授权、任务书、Skill、章程版本、成绩单,全部应该是同一套状态系统里的对象类型。

  • Directive 的真源就是一类 directive 事件流,天然获得版本、覆盖关系和审计;
  • 授权是 authorization 对象加过期加撤销级联,一个 supersedes 字段免费实现级联失效;
  • 任务书是 work item 的创建事件,登记时自动跑撞车检测;
  • token 花费是运行观察事件,成本投影免费获得数据源;
  • done_when 抽检以 verified 事件为抽样框。

这和第 4 课讲的 ESAA(agent 只发意图,编排器追加日志再投影)是同一个思路,早了半年。

层判定理由(原文摘录)
组织语义层:对象类型、单写者所有权、claim_status、双时态、scoped 可见性、盲窗口BUILD这是你们的差异化。2026 年的 agent 记忆生态(LangGraph checkpointer、Letta/MemGPT、Mem0、Zep 等)解决的都是个人或会话记忆:没有所有权语义、没有证据分级、没有组织级可见性边界。市面上没有"组织记忆"现货,这个判断本身值得写进文档,防止后人拿着框架对比表来重新争论。
存储与查询引擎ADOPT单库(SQLite 起步,Postgres 扩展)加追加事件表加物化投影,全部是无聊的成熟技术。不要写自定义存储引擎,不要用真 git 做结构化状态的真源:git 的 merge 语义对散文是错的,对结构化对象更错;数据库里按对象的比较交换更强更简单。
载体适配层ADAPT各框架的 checkpoint 和 resume 接口设计可参考;adapter 薄一点,所有语义留在 API 侧。
  • 事件溯源与 CQRS(Fowler;《Designing Event-Driven Systems》第 7 章):事件史加投影是行业标准;事件版本化是长期第一痛点,所以主张小内核 schema。
  • 双时态数据库传统:recorded_at 和 effective_at 有现成工程学,时态查询有现成理论可抄。
  • 2026 年 agent 记忆框架生态对比(LangGraph、Letta、Mem0、Zep):现货皆为个人或会话记忆,组织记忆语义无现货。
  • 多智能体共享状态的实践者讨论:共享状态尚无行业定式;集团的“单写者加 owner 合并”在该讨论空间里属于最干净的一类。

集团对七项 finding 的逐项处置(原文)

Section titled “集团对七项 finding 的逐项处置(原文)”

评审给了七个 finding,集团没有整篇照搬,而是在 external-reviews 目录的登记里逐项写了处置:

  • P1 提交税:ADOPT,系统派生字段,Agent 只手写判断;
  • P2 盲窗口:ADOPT,进入 scoped visibility 与查询审计;
  • P3 claim_status:ADOPT,区分 observed、derived、asserted、verified;
  • P4 校验范围:ADOPT_WITH_LANGUAGE_ADAPTATION,只校验数据完整性和 exact 安全边界,不判断工作正当性,不扩成人工流程;
  • P5 持久化注入:ADOPT,外部内容隔离、结构化数据框架和确定性扫描;
  • P6 lineage 与 promotion:ADOPT,重生席不自动继承旧 lineage;
  • P7 capsule golden set:ADOPT,按载体预算验证必含、必不含与首动作恢复。

同一登记明确不采纳评审中“13 个产品项砍到 4 个、其余等缺口咬人再建”的建议,理由是集团当时已因连续性、载体、A2A、Workspace 和逐席迁移不完整而停摆,这些能力不能无限延期;v0 walking skeleton 只是第一段可运行纵切,不是范围削减。

  • 第 4 课把集团现状标成“Current、Goal、Task Plan 都是手改的”,这份评审两个月前就给出了处方:追加事件表加物化投影,SQLite 起步。
  • 路线图里“事件表统一、Current 改投影、单写者、版本号”四条,与这里的 ADOPT 一字不差;“记忆只做投影、冲突以事件日志为准”对应这里的 BUILD 判定。
  • 评审说“不要用真 git 做结构化状态的真源”。Letta 9 月的 MemFS 用 git 托底记忆文件,正好是它警告的方向,第 4 课在记忆层那一段点了这个失效点。

把“市面上没有现货”写成一条正式判定。 它不是自夸,是防御:以后任何人拿框架对比表来劝换方案,先要推翻这条判定。

  • 集团内部:《〈Git 式记忆与协作透明构想 V0.1〉审核意见》(docs/reference/external-reviews/2026-07-29-fable5-git-memory-v0.1-review.zh-CN.md);《组织外部体检报告》(2026-07-28,该评审的前件)。
  • 外部:Martin Fowler,Event Sourcing;Ben Stopford,Designing Event-Driven Systems;atlan.com 的 2026 记忆框架对比;Hugging Face 论坛多智能体共享状态讨论。