From ef8f76a0d4baa5483067c7f617f1d79ad26f4178 Mon Sep 17 00:00:00 2001 From: Meta Vens Date: Wed, 30 Sep 2026 02:15:47 +0200 Subject: [PATCH] Geometry: register the cache's CultRecordRef formatter with the MessagePack generator The MessagePack source generator emitted a broken formatter reference for the CultRecordRef reference members. Declaring CultRecordRefFormatter<> a known formatter makes the generated resolver defer to the cache's own. Co-Authored-By: Claude Sonnet 5.5 --- src/GameCult.Geometry/CultGeometryDocuments.cs | 4 ++++ src/GameCult.Geometry/GameCult.Geometry.csproj | 1 + 2 files changed, 5 insertions(+) diff --git a/src/GameCult.Geometry/CultGeometryDocuments.cs b/src/GameCult.Geometry/CultGeometryDocuments.cs index 0da8af90..5d9ddaa9 100644 --- a/src/GameCult.Geometry/CultGeometryDocuments.cs +++ b/src/GameCult.Geometry/CultGeometryDocuments.cs @@ -7,6 +7,10 @@ using GameCult.Caching; using MessagePack; using static GameCult.Geometry.CultGeometryDocuments; +// The generator emits a resolver for these [MessagePackObject] documents; without this it would try to +// generate a formatter for the CultRecordRef reference members instead of using the cache's. +[assembly: MessagePackKnownFormatter(typeof(CultRecordRefFormatter<>))] + namespace GameCult.Geometry { /// diff --git a/src/GameCult.Geometry/GameCult.Geometry.csproj b/src/GameCult.Geometry/GameCult.Geometry.csproj index c10c2ecf..c1588906 100644 --- a/src/GameCult.Geometry/GameCult.Geometry.csproj +++ b/src/GameCult.Geometry/GameCult.Geometry.csproj @@ -10,6 +10,7 @@ +