Demote zone data from runtime projection

This commit is contained in:
Meta Vens 2026-06-13 21:41:34 +01:00
commit 12e73e983c
3 changed files with 13 additions and 4 deletions

View file

@ -69,8 +69,10 @@ and inspection metadata for the typed runtime bridge.
Item instances now carry `RuntimeItemReference`, a narrow item-id/value holder.
The old generic `RuntimeCatalogLink<T>` abstraction has been deleted; item data
projection is routed through `ItemManager` and the typed runtime catalog reader.
Surviving catalog and zone Unity DTOs inherit `RuntimeProjectionEntry`; the old
`RuntimeCatalogEntry` base name no longer appears in live source.
Surviving item/faction catalog Unity DTOs inherit `RuntimeProjectionEntry`; the
old `RuntimeCatalogEntry` base name no longer appears in live source. Zone
body/orbit DTOs keep local GUID fields but no longer inherit the shared
projection identity base.
The dead `InspectableRuntimeCatalogLinkAttribute` inspector metadata is gone;
typed runtime projection still uses `LegacyPayloadKeyAttribute` only where the
temporary mapper needs a deterministic field order.

View file

@ -21,8 +21,10 @@ public class RuntimeZoneBlueprint
public double Time;
}
public abstract class BodyData : RuntimeProjectionEntry, INamedEntry
public abstract class BodyData : INamedEntry
{
public Guid ID = Guid.NewGuid();
public string Name = "";
public Guid Orbit;
@ -101,8 +103,10 @@ public class Asteroid
public float RotationSpeed;
}
public class OrbitData : RuntimeProjectionEntry
public class OrbitData
{
public Guid ID = Guid.NewGuid();
public Guid Parent;
public float Distance;

View file

@ -305,6 +305,9 @@ legacy catalog cache, and legacy UI paths should be migration-only or deleted.
- `AgentTask` has been cut loose from `RuntimeProjectionEntry`; AI tasks are
local runtime work orders and no longer participate in the shared projection
identity base.
- `BodyData` and `OrbitData` have also been cut loose from
`RuntimeProjectionEntry`; they keep local GUID fields for zone runtime lookup,
but no longer inherit shared projection equality.
- `Aetheria.Shared.Unity` no longer references the vendored `MessagePack`
assembly. The embedded `GameCult.Aetheria.State.Unity` package still depends
on MessagePackReader to open CultCache `.cc` records; that dependency belongs