# 时间、真相与来源 *基础 · 第 4 课,共 5 课 · 约 10 分钟* ## 你将学到 标准为何把历史当作承重结构:语义时间线、来源、指纹,以及"重建任何过往知识状态"能给你带来什么。 ## 没有历史的知识只是传闻 多数系统只存储当前状态。你问它们"这个值为什么是这样?"、"是谁断言的?"、"上个季度我们相信的是什么?",它们只会耸耸肩。对单个应用来说这还能忍。对联邦知识而言这是致命的:你消费的是别人的断言,而没有历史,你既无法审计、无法质疑,也无法信任它们。 Vercy 的回答是结构性的,而非流程性的:**变更本身就是一个实体。** ## 语义时间线 语义现实的每一次变动都是一个**事件**:对象被创建、值被断言、映射被更改、契约被签署、模型版本被发布。事件仅可追加;任何东西都不会被就地编辑。事件的序列就是**语义时间线**,它赋予每个宇宙三项超能力: 1. **时间旅行**:重建任意过往时刻知识的确切状态:哪些对象存在,哪些规则的哪个版本在生效。 2. **归属**:每一条断言都可追溯到是谁做出的、何时、基于什么。 3. **诚实的修订**:更正过去意味着*追加*一个更正事件,而绝不是重写历史。错误与它的更正都会永久可见。 ## 在实地发现的两个后果 公共治理案例研究(一个被建模为维度的国家)发现,语义时间线在两个其设计者未曾预料的地方不可或缺: - **法院。** 一个公正的法律体系,会依据*当时生效*的规范来审判过去的行为。除非规范的各个版本可重建,否则这不可能做到:这就是语义时间线应用于法律。 - **抗操纵的度量。** 当你度量价值时,人们就会优化那个度量。防御手段是回溯重估:随着后果显现,重新为过去的事件打分。重估*改变的是证据,绝不是历史*:依然是仅追加。 当你的模型需要"当时规则怎么说?"或者"在不伪造的前提下重估过去"时,你就需要时间线。大多数严肃的模型两者都需要。 ## 来源与可查询的图 来源把时间线推广到各种推导关系上:这条记录*概括自*那个来源、*由*那条流水线*采集*、*经*那位所有者*校验*。标准让推导图可被查询,于是"给我看这个已撤回来源的所有下游"是一次查询,而不是一场考古。 ## 指纹:给意义一个身份 你如何知道一个模型的两份副本*意思相同*?字节会不同(格式、顺序、序列化方式),含义却未必不同。**语义指纹**是对模型*规范化后的语义结构*所做的可复现哈希:含义相同,指纹就相同,与序列化方式无关。包正是这样自我验证,登记册正是这样去重,主本与副本之间的漂移也正是这样被机械地检测出来。有一个生产模型就用这个办法让自己的公开网站保持诚实:一个每日任务把线上投影的指纹与模型作比较,一旦漂移就通知人。 ## 要点 - 变更是实体:语义时间线上仅可追加的事件。 - 历史带来时间旅行、归属与诚实修订,而真实系统(法院、抗操纵的度量)没有它就无法运转。 - 来源让推导可被查询;指纹给意义一个可验证的身份。 ## 深入阅读 - [事件与语义时间线](/spec/#04-core-concepts/Event.md) - [可追溯性](/spec/#02-architecture/Traceability.md) · [来源图](/spec/#02-architecture/Provenance-Graph.md) - [版本管理与语义指纹](/spec/#02-architecture/Versioning.md) 下一课:[标准家族](05-family.md)