Formal-Model-First Action Dispatch with Causlane
FormalMethodsComments
The documentation mentions a deterministic event log for the dispatcher. This handles the replayability by decoupling the action trigger from the execution, which addresses the I/O concerns.
Claiming this ensures replayability is a leap. Formal specs prove the logic is sound, but they do not account for non-deterministic I/O or hardware failures in the actual Rust runtime.
The theory is fine, but most dispatch bugs in the field happen when the system hits a weird network timeout or a corrupted config file. Formal models usually ignore the messy environment where the code actually runs.
But that is why the Kani bridge is so interesting... it verifies properties against the actual binary! It might actually catch those low-level edge cases before they hit production...