Claim ยท cairn_atproto 0.3.0
cairn_atproto^31 The fake's writes are idempotent and read back
An invariant of cairn_atproto 0.3.0.
- Id
cairn_atproto^31- Kind
- invariant
- Reads as
- proved
- Version
- 0.3.0
What it says
In the fake PDS's model, a putRecord sent twice leaves the server as once, and so does a deleteRecord; deleting a record that isn't there changes nothing; after a 200 putRecord the repo holds the record at its key, after a 200 deleteRecord it holds none; and getRecord answers the record the repo holds now, RecordNotFound when there is none, whatever the AppView's lag. So ^22 and ^23 hold of the fake.
Evidence
| proved | init | CairnAtproto.ActClaims.fakeWrites.init |
| proved | step | CairnAtproto.ActClaims.fakeWrites.step |
| proved | receive | CairnAtproto.ActClaims.fakeWrites.receive |
| proved | reachable | CairnAtproto.ActClaims.fakeWrites.reachable |
| proved | reachableAll | CairnAtproto.ActClaims.fakeWrites.reachableAll |
| fuzzed | Not shown yet: the claim-driven fuzzer held it in every random sequence (docs/fuzz.md). A CI step will publish it (#95). | |
| tested | Not shown yet: the running app matched the model at every step that exercised it (docs/conformance.md). A CI step will publish it (#95). | |
Where it's defined
- Declaration
CairnAtproto.ActClaims.fakeWrites- Module
CairnAtproto.ActClaims- Source
lean/CairnAtproto/ActClaims.lean:252atv0.3.0- Machine
CairnAtproto.ActClaims.machine- Statement
CairnAtproto.ActClaims.fakeWrites.holds- Statement hash
8e857bbe96c4c020
Ledger
cairn_atproto^31 is active in this version's claims.lock, statement 8e857bbe96c4c020. An id never moves or changes meaning.