Pin CultLib abd1a92e: element ids on every list element type, tests follow the new wire and write rules

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
This commit is contained in:
Nibu 2026-11-11 09:50:22 +00:00
commit ff54fe7b46
33 changed files with 251 additions and 27 deletions

View file

@ -29,7 +29,10 @@ public class InputLayout
Union(0, typeof(InputLayoutRowSpacer)),
Union(1, typeof(InputLayoutKeyRow))
]
public abstract class InputLayoutRow { }
public abstract class InputLayoutRow {
// Element identity: minted by the cache on write; "" means unset.
[Key(1)] [CultElementId] public string Id = "";
}
[MessagePackObject, JsonObject(MemberSerialization.OptIn)]
public class InputLayoutRowSpacer : InputLayoutRow
@ -52,6 +55,9 @@ public class InputLayoutKeyRow : InputLayoutRow
public abstract class InputLayoutColumn
{
[Key(0), JsonProperty("width")] public float Width;
// Element identity: minted by the cache on write; "" means unset.
[Key(5)] [CultElementId] public string Id = "";
}
[MessagePackObject, JsonObject(MemberSerialization.OptIn)]