# Whether each runtime's own reader opens the file. A flush and a commit replace a file exactly when it reads; where a runtime has a soft flush (TypeScript, Rust) it leaves a file that reads byte for byte and refuses one that does not.
# A store holding two records under one key is unreadable; keys are ordinal strings (no case folding, no normalisation), so distinct spellings are distinct keys.
# Columns: file, csharp, rust, typescript, python. `../v3-base.msgpack` is the one valid store.
# `@directory` is no file: the walker makes an empty directory at the store path and every runtime must refuse to open it and to write over it (flush, commit, delete), leaving the directory empty.
../v3-base.msgpack  reads    reads    reads    reads
zero-byte.bin       refuses  refuses  refuses  refuses
empty-array.bin     reads    reads    reads    reads
legacy-envelopes.bin refuses reads    reads    reads
legacy-dup-key.bin  refuses  refuses  refuses  refuses
legacy-trailing.bin refuses refuses refuses refuses
ints.bin            refuses  refuses  refuses  refuses
nil-first.bin       refuses  refuses  refuses  refuses
nested-array.bin    refuses  refuses  refuses  refuses
string-first.bin    refuses  refuses  refuses  refuses
header-v9.bin       refuses  refuses  refuses  refuses
bin-header-v1.bin   refuses  refuses  refuses  refuses
bin-header-v3.bin   refuses  refuses  refuses  refuses
bin-header-v9.bin   refuses  refuses  refuses  refuses
scalar.bin          refuses  refuses  refuses  refuses
map.bin             refuses  refuses  refuses  refuses
truncated.bin       refuses  refuses  refuses  refuses
trailing-byte.bin   refuses  refuses  refuses  refuses
trailing-bytes.bin  refuses  refuses  refuses  refuses
trailing-store.bin  refuses  refuses  refuses  refuses
bad-body-v1.bin     refuses  refuses  refuses  refuses
bad-body-v3.bin     refuses  refuses  refuses  refuses
header-only-v1.bin  refuses  refuses  refuses  refuses
header-only-v3.bin  refuses  refuses  refuses  refuses
extra-top-slot.bin  refuses  refuses  refuses  refuses
missing-schema-v3.bin refuses refuses  refuses  refuses
variant-slot-v3.bin reads    refuses  refuses  refuses
missing-schema-versioned-v3.bin refuses refuses refuses refuses
compatible-id-only-v3.bin reads reads reads reads
own-id-over-compatible-v3.bin reads reads reads reads
compatible-before-owner-v3.bin reads reads reads reads
dup-key-same-schema-v3.bin refuses refuses refuses refuses
dup-key-other-schema-v3.bin refuses refuses refuses refuses
dup-key-different-payload-v3.bin refuses refuses refuses refuses
distinct-keys-case-v3.bin reads reads reads reads
distinct-keys-nfd-v3.bin reads reads reads reads
../../document-variants-c0/current-catalog-bad-canonical.msgpack refuses refuses refuses refuses
../../document-variants-c0/legacy-catalog-plain.msgpack refuses refuses refuses refuses
../../document-variants-c0/legacy-catalog-extra-slot.msgpack refuses refuses refuses refuses
../../document-variants-c0/legacy-catalog-trailing.msgpack refuses refuses refuses refuses
@directory refuses refuses refuses refuses
