Add TLA+ formal verification specs for backup and recovery

- backup.tla: models backup/restore/verify/cleanup with properties:
  BackupSnapshotsValid, RestoreIntegrity, VerifyIntegrity,
  RetentionInvariant, HistoryConsistency, BackupIdValid
- recovery.tla: models WAL replay REDO/UNDO with properties:
  RedoCommitted, RecoveryCompleteness, WalIntegrity
- Added models/backup.cfg and models/recovery.cfg with bounded constants
- Updated run_all.sh to include both new specs
- All 9 TLA+ specs pass TLC model checking
This commit is contained in:
2026-05-13 00:06:45 +03:00
parent 5e27a987dd
commit 32b38675a9
5 changed files with 492 additions and 0 deletions
+20
View File
@@ -0,0 +1,20 @@
CONSTANTS
Files = {f1, f2}
Contents = {c1, c2}
MaxBackups = 3
KeepCount = 2
MaxSteps = 6
Nil = Nil
INIT Init
NEXT Next
CHECK_DEADLOCK FALSE
INVARIANTS
TypeOk
BackupSnapshotsValid
VerifyIntegrity
RetentionInvariant
HistoryConsistency
BackupIdValid