CultLib/src
Repository files (latest commit first)
Filename Latest commit message Latest commit date
Meta Vens fc52f984db CultCache: element id rules, atomic minting, minted override values, the v3 marker
The id rule is one plan, made before anything is written: Plan decides every fill and
refuses a duplicate, a random id that is not 12 lowercase hex characters, and a derived
id whose source is null or empty, naming the record and list (CultElementIdException).
A load refuses what a write refuses. Apply and Undo make minting part of the admission:
a refused or uncommitted write leaves the caller's documents as they were.

Override values mint inside Resolve, into the decoded copy, so the public
CultVariantOverride.Set, C1-era overrides and Override() all get ids on write and on load;
Override() no longer mints. Interface unions are judged on their concrete types, the same
rule registration and minting share, and a subtype reusing the id's key is refused at
registration. Dictionary keys format with the invariant culture.

Records minted at load are marked per entry (IdsInMemoryOnly) instead of listed by key, so
a deleted record leaves the mark with it, and a flush of the whole store clears it. A store
whose types reach an object list declares cultcache.store.v3 (directory: v5), which every
reader older than ids refuses; a marked file stays marked when a writer merges onto it.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-09-29 18:27:16 +02:00
..
GameCult.Caching CultCache: element id rules, atomic minting, minted override values, the v3 marker 2026-09-29 18:27:16 +02:00
GameCult.Caching.MessagePack CultCache: element id rules, atomic minting, minted override values, the v3 marker 2026-09-29 18:27:16 +02:00
GameCult.Geometry CultCache: element ids on every object-list element (C2a) 2026-09-29 12:31:12 +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 CultCache: derived element ids; the CDN chunk ref carries one 2026-09-29 15:03:09 +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 CultNet: witness element types carry ids; peers and fixtures follow 2026-09-29 15:03:09 +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