CultLib/src
Repository files (latest commit first)
Filename Latest commit message Latest commit date
Meta Vens 188d4ad88d C#: a whole-view write that stores a record differently mints it a later storedAt
A condition names a record by (stored schema id, storedAt), and that name must
say which bytes are stored. A single-file whole-view write (plain flush, or an
unconditional commit) re-encoded every record under its own type's id with the
storedAt it loaded, so the pair could name two byte strings: v1 shed a member
keeping storedAt, a second v2 cache restored v2's id keeping it again, and a v2
cache holding the original bytes committed its condition (Soul F6, A-B-A).

Now such a write stores a record under a later storedAt whenever it stores it
differently: under another id than it was loaded under, or with other bytes than
the file holds at that storedAt (a record written with the ids it minted at
load, for one). A record stored exactly as the file holds it keeps its storedAt.
The store's entries and the cache's take the id and storedAt the write gave them.

Tests: the A-B-A through commits and through plain flushes, with Expect and
ExpectUnchanged; a flush that re-encodes a record restamps the cache that
flushed (a condition holds straight after, SM12); a record stored unchanged keeps
its storedAt through commits and flushes; persisting load-minted ids gives a
later storedAt. The rolling-deploy test asserted v1's rewrite kept storedAt; it
now asserts a later one, since that rewrite is a new store of the record.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-09-30 15:25:22 +02:00
..
GameCult.Caching C#: a whole-view write that stores a record differently mints it a later storedAt 2026-09-30 15:25:22 +02:00
GameCult.Caching.MessagePack C#: the directory store's loaded id is its manifest's; the variant fixture names itself 2026-09-30 12:52:15 +02:00
GameCult.Geometry Merge origin/main into hands/variants-c2a 2026-09-30 03:58:11 +02:00
GameCult.Logging JSON backing store, I/O fixes, Networking Security 2026-04-18 13:01:24 +01:00
GameCult.Logging.Unity JSON backing store, I/O fixes, Networking Security 2026-04-18 13:01:24 +01:00
GameCult.Mesh C#: compatible schema ids publish a schema on open, Mesh takes only the older layout, the refusal names its file 2026-09-30 06:54:17 +02:00
GameCult.Mesh.Quic Document latest-only retention for newly attached QUIC peers 2026-09-23 18:17:37 +02:00
GameCult.Mesh.Quic.Native Bind CultMesh authority identity to physical routes 2026-08-18 17:21:58 +02:00
GameCult.Networking Merge origin/main: CultCache publication Cuts 1-3 and the RUDP hardening 2026-09-29 23:33:11 +02:00
GameCult.Networking.WebSockets Recover authority-bound CultMesh and atomic generations 2026-08-26 19:01:24 +02:00
GameCult.Unity Studio README: grouping, create in group, drag to reference 2026-09-29 14:10:39 +02:00
Directory.Build.props Initial commit 2026-04-18 06:04:39 +01:00