Cairn Docs Claims Blog Packages

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

All of cairn_atproto 0.3.0's claims

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

provedinitCairnAtproto.ActClaims.fakeWrites.init
provedstepCairnAtproto.ActClaims.fakeWrites.step
provedreceiveCairnAtproto.ActClaims.fakeWrites.receive
provedreachableCairnAtproto.ActClaims.fakeWrites.reachable
provedreachableAllCairnAtproto.ActClaims.fakeWrites.reachableAll
fuzzedNot shown yet: the claim-driven fuzzer held it in every random sequence (docs/fuzz.md). A CI step will publish it (#95).
testedNot 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:252 at v0.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.