Claude Code 的压缩会丢弃仍在磁盘上的数据

发布: (2026年2月22日 GMT+8 13:14)
2 分钟阅读
原文: Dev.to

Source: Dev.to

发生了什么

压缩过程删除了仍被元数据引用的物理文件。这是一次元数据↔磁盘的顺序/竞争条件——删除在持久化元数据确认之前就已发生,导致对已缺失数据的活跃引用。

为什么重要

  • 静默腐败:应用程序默认压缩是安全的。
  • 当文件消失而索引仍指向它们时,可能出现丢失的向量、损坏的会话,或仅在高负载或恢复期间才显现的错误。

给构建者的建议

  • 停止盲目删除。
  • 使用保留窗口和两阶段删除(标记 → 确认 → 删除)。
  • 使用 fsync/原子重命名。
  • 实施端到端完整性检查并频繁快照。
  • 为压缩运行混沌测试。

Reference: Claude Code’s compaction discarded data still on disk — bug report & discussion

0 浏览
Back to Blog

相关文章

阅读更多 »