時相論理の形式仕様の Quint を使って、denoland/celld の二重 writer バグを見つけた
- Quint で celld の single-writer 制約をモデル化し、時計ズレで二重 writer が発生する反例を発見した
- TTL=10秒、時計ズレ=+1秒、実時間=9秒で反例が発生し、Rust のテストで実装で再現可能だった
- 時計ズレの上限を契約にすると障害時の切り替えが遅くなるため、安全性と可用性のトレードオフを考慮する必要がある
時相論理の形式仕様の Quint を使って、denoland/celld の二重 writer バグを見つけた


