docs: update README and all docs with formal verification, new BaraQL features, OpenTelemetry tracing
- Add Formal Verification section to README and architecture docs - Document TLA+ specs for Raft, 2PC, MVCC, Replication - Add new BaraQL features: JSON path (->, ->>), FTS @@, CREATE INDEX USING FTS, RECOVER TO TIMESTAMP, UNION/INTERSECT/EXCEPT - Add OpenTelemetry tracing example to README - Update Quick Start to use nimble test/bench - Update EN and BG documentation
This commit is contained in:
@@ -87,4 +87,24 @@ import barabadb/core/disttxn
|
||||
var dt = newDistributedTxn()
|
||||
dt.prepare(@["node1", "node2"])
|
||||
dt.commit()
|
||||
```
|
||||
|
||||
## Formal Verification
|
||||
|
||||
Core distributed algorithms are formally specified in TLA+ and model-checked:
|
||||
|
||||
- **Raft Consensus** — `formal-verification/raft.tla`
|
||||
- Verified: ElectionSafety, StateMachineSafety
|
||||
- **Two-Phase Commit** — `formal-verification/twopc.tla`
|
||||
- Verified: Atomicity, NoOrphanBlocks
|
||||
- **Replication** — `formal-verification/replication.tla`
|
||||
- Verified: MonotonicLsn, AcksRemovePending
|
||||
|
||||
Run TLC locally:
|
||||
|
||||
```bash
|
||||
cd formal-verification
|
||||
java -cp tla2tools.jar tlc2.TLC -config models/raft.cfg raft.tla
|
||||
java -cp tla2tools.jar tlc2.TLC -config models/twopc.cfg twopc.tla
|
||||
java -cp tla2tools.jar tlc2.TLC -config models/replication.cfg replication.tla
|
||||
```
|
||||
Reference in New Issue
Block a user