CultLib/tests/vectors/ref-list-drift
Repository files (latest commit first)
Filename Latest commit message Latest commit date
2026-10-23 13:28:33 +02:00
..
old-store.cc Caching tests: the ref-list vector names the test type as the runtime does 2026-10-22 22:21:34 +02:00
README.md ref-list-drift: the store the 1.0.60 writer makes for a list of record references, written on Yggdrasil at cultlib-unity-v1.0.60 2026-10-23 13:28:33 +02:00
v1-0-60-written.cc ref-list-drift: the store the 1.0.60 writer makes for a list of record references, written on Yggdrasil at cultlib-unity-v1.0.60 2026-10-23 13:28:33 +02:00

ref-list-drift vector

old-store.cc is a cultcache.store.v1 file in the shape CultLib 1.0.x wrote for a list of record references: the Items slot (CultRecordRef<RefListTarget>[]) is persisted with isReference:false and no target schema, and its payload is an array of key strings. Its layout is copied from a real 1.0.x-written store (Aetheria run.cc, schema aetheria.savedgame, slots Zones and Factions), pruned to two schemas and three records: alpha and beta (tests.reflist_target) and list (tests.reflist_holder, Items = [alpha, beta]).

Hand-written by a script outside the runtime under test; never regenerated by CultCache. A change to this file is a reviewed commit.

v1-0-60-written.cc is the same shape written by CultLib itself: OldWriterRefListProbe (in tests/vectors/document-variants-c2a/old-writer-probes/), compiled into a checkout of cultlib-unity-v1.0.60 (45c2f400) and run as old-reader-refusal.sh gate csharp, which stages that tree and writes the store through CultCache and SingleFileMessagePackBackingStore. It is cultcache.store.v1 with records alpha, beta and list (Items = [alpha, beta]). The runtime under test never regenerates it; RefListDriftTests.A_1_0_60_Written_Store_Opens_Like_2_0_1 reads it.