Delete the CultCache MessagePack source generator
The reflective CultDocumentRegistry is now the only descriptor authority, and payloads always go through MessagePackSerializer with OptionsFor(document assembly). No consumer builds AOT, IL2CPP or trimmed, Unity always ran the reflective path, and no benchmark showed a gain, while the generator duplicated the registry's shape rules. Removed: GameCult.Caching.MessagePack.Generator and .Analyzers (solution, project and analyzer references, NuGet pack list), CultGeneratedDocumentMetadata (provider attribute, interface, definitions, loader), the generated descriptor and codec branches in CultCache and CultDocumentMessagePackSerialization, DocumentShapeSweepTests and the generator half of the unkeyed test, the Microsoft.CodeAnalysis.CSharp test reference and InternalsVisibleTo. The registry rejects, with a message naming the fix, what MessagePackSerializer cannot serialize and what the generator used to paper over: a document without [MessagePackObject], a non-public document without AllowPrivate = true, and a non-public member of an AllowPrivate document that is not [IgnoreMember]. DocumentShapeTests pins every rejection message and the accepted shapes' round trips against MessagePackSerializer bytes (keeps the 93A16E0305 pin). Rejected shapes are emitted into a dynamic assembly, which registry discovery skips. Nested member type names use reflection's Outer+Inner form, not the generator's dot form, so ReferenceHolderEntry's fixture id is re-pinned (bd8506... -> 4ec0c5...). A scan of the schema catalogs in all 2786 .cc stores under F:\Projects (AetheriaEve and CultLib-* worktrees, bin and obj excluded) found no member type name naming a nested type in either form. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
This commit is contained in:
parent
a5d1be650d
commit
96ee5fdce3
31 changed files with 453 additions and 1639 deletions
|
|
@ -19,8 +19,8 @@ The tests currently cover:
|
|||
- cache lookups (`Get`, `GetAll`, runtime-type upserts)
|
||||
- `CultCache.Commit` batches on a directory store: visibility after the store
|
||||
commits, abandoned stages, sealed batches, observers committing again
|
||||
- explicit Cult document payload codecs, generated metadata, canonical schema
|
||||
fixtures, and schema drift reports
|
||||
- Cult document payloads, registry shape rejections, canonical schema fixtures,
|
||||
and schema drift reports
|
||||
- hand-written MessagePack snapshot and record serialization
|
||||
- `StoreRoutingTests`: the store-composition contract (routing, attachment is
|
||||
hydration, read-only stores, global singletons, assignable lookups, batches,
|
||||
|
|
|
|||
Loading…
Reference in a new issue