Files
姚章浩 066dc45a25
build / build (push) Successful in 1m34s
fix(release): 删除型索引恢复不再用 ES 统计计数放行
- ES `_stats` 写计数是分片生命周期统计(官方文档:分片迁到另一节点时该分片统计清零),
  索引 uuid 不变不绑定统计生命周期,清零后重新累计到同一数值(ABA)无法排除。
  撤销 r36 的"写计数器栅栏"授权:既不落盘也不读取,统计仅作诊断。
- 删除型恢复(独占 `_create`)只有在本次尝试开始时不存在任何恢复意图、且文档确实缺失时
  才可重做;既存 restore-mark-intent 配缺失文档一律 held、零写入。
- 保留可证明路径:marker 仍在且世代一致的 clean 收尾重试;文档仍是 applied 结果、
  世代一致的 DELETE 补偿重试。
- 新增 ABA 反例(传输层 stats 故障模拟、真实 ES 文档写删、未重启共享 ES);
  B19 / clean / delete 安全正例全回归。

验证(真实 PG/ES/MinIO 隔离夹具):
- ABA 反例:旧代码 RED(restoration must be held, not rebuilt),新代码 PASS
- 索引/恢复回归 13 项 PASS
- 回滚回归 2 项 PASS
- make verify 16 项 success(identity 仅 CI 可核)
未部署、未写生产/云、未重启共享 ES。
2026-11-02 01:19:00 +08:00
..