CultLib/packages
Repository files (latest commit first)
Filename Latest commit message Latest commit date
Meta Vens ea5a07b37a Own serialization options by the document's assembly
The static UntrustedData options are gone. An assembly declares its formatter
resolvers with [assembly: CultCacheFormatterResolver(typeof(R))];
CultDocumentMessagePackSerialization.OptionsFor(assembly) composes them ahead
of CultDocumentResolver and StandardResolver, once per assembly, and hands
assemblies that declare nothing the base Options. Generated codecs and the
reflective SerializeUntyped/DeserializeUntyped path both read
OptionsFor(typeof(X).Assembly). No registration call, no mutable options, no
load order.

CultMessagePackSecurity copies UntrustedData and supplies a collision-resistant
comparer over CultRecordRef<T>.Key.Value, so ref-keyed dictionaries
deserialize.

Tests: RefKeyedDictionaryRoundTrips failed on 825b4f7 ("No hash-resistant
equality comparer available"); DeclaredResolverEncodesValueTypeAsPositionalArray
and UnknownAssemblyGetsBaseOptions did not compile there (new API);
InteropNoteBytesUnchanged is a pin whose payload constant was captured on
825b4f7. BenchItem, the one unkeyed [CultDocument] in any consumer (in-memory
benchmark, no store), gains [Key]s in its existing slot order.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-09-13 21:12:53 +02:00
..
cultcache-py Drop the license classifier setuptools now refuses 2026-09-10 13:55:46 +02:00
cultcache-rs Correct stale store-routing, SoA, and generator docs 2026-09-13 16:01:32 +02:00
cultcache-ts Make the Eve onboarding checkpoint run against the contract that exists 2026-09-10 13:55:46 +02:00
cultmath Clarify CultMath and CultGeometry ownership 2026-08-26 17:47:06 +02:00
cultmesh-browser Harden CultMesh route fallback and secure onboarding 2026-08-18 19:41:03 +02:00
cultmesh-kotlin Finish the sequence-domain split in Python and Kotlin 2026-09-04 00:40:05 +02:00
cultmesh-py Drop the license classifier setuptools now refuses 2026-09-10 13:55:46 +02:00
cultmesh-rs Let a caller choose what the media channel does 2026-09-10 01:08:31 +02:00
cultmesh-ts Publish the non-Rust packages and make the licensing uniform 2026-09-04 04:41:44 +02:00
cultnet-py Own serialization options by the document's assembly 2026-09-13 21:12:53 +02:00
cultnet-rs Preserve public trust-anchor parent permissions 2026-09-13 14:45:40 +02:00
cultnet-ts Let the verse catalog schema say what the reference emits 2026-09-10 13:55:46 +02:00