用 TLA+ 提升系统安全:Depot 用模型检查抓到真 Bug
来源:depot.dev — 2026-07-20
📋 概述
Depot 团队在重写 Registry 的垃圾回收器时用 TLA+ 做了模型检查,发现了一个测试和评审都没抓到的真实 bug,也迫使他们厘清一个听上去荒谬的设计决定——存储不可变、内容寻址 blob 的 Registry 为何仍依赖 S3 桶版本控制。文章介绍 TLA+ 如何把系统描述为状态与转移、TLC 如何穷举所有可达状态与交错,从而在「你没想过的顺序」里揪出数据消失类的最难分布式 bug。
🔑 核心要点
- TLA+ 把系统建模为状态与转移,TLC 穷举所有可达状态与交错。
- 模型检查抓到了测试与评审都没发现的真实 bug。
- 论证了不可变内容寻址 Registry 为何仍依赖 S3 版本控制。
💡 金句
测试跑的是你想过的交错,而 bug 藏在你想不到的那一个里。
👍 0
👎 0
← 返回 Lobsters 首页