The proof
A property test runs two laptops and the server from a seed. Each step is one random operation: a laptop posts an entry, sends an invoice, registers a bill, corrects or reverses an entry, imports a bank file, matches a bank line, closes a quarter, tries to save an entry that does not balance, loses its network or syncs, and some syncs are lost on the way. After every step the invariants are checked on the server and on both laptops. At the end both laptops come online and must hold the server’s entries exactly. This page runs the same code as the test in node; a seed gives the same run every time.
Starting. The first run begins when the page has loaded.
The invariants
| Invariant | Checked | Result |
|---|
The operations
| Operation | Times |
|---|