diff --git a/Aetheria.State.Verify/Program.cs b/Aetheria.State.Verify/Program.cs index b27d2bdca..21bf6ae67 100644 --- a/Aetheria.State.Verify/Program.cs +++ b/Aetheria.State.Verify/Program.cs @@ -3213,7 +3213,8 @@ static void RequireEveRuntimeBootstrap(string root) { "private string surfaceId = AetheriaRuntimeDaemonGameSurfaceBuilder.SurfaceId", "ReadDaemonSurface(stateBoot)", - "AetheriaUnityRuntimeClientProvider.ReactiveEveSurface(", + ".RuntimeState(stateBoot, \"unity-eve-surface-presenter\")", + ".ReactiveEveSurface(surfaceId)", "AetheriaUnityRuntimeClientProvider.EveSurfaceStateRefResolver(", "CultMeshReactiveDocument", "ResolveReactiveDaemonSurfaceState(", @@ -16446,28 +16447,6 @@ static void RequireRuntimeStateReaderOwnsUnityStateAcquisition(string root) "public static AetheriaControl Control(string runtimeId = \"\")", "public static AetheriaUi Ui(string runtimeId = \"\")", "public static AetheriaUi Ui(", - "public static CultMeshReactiveDocument ReactiveCurrentDocking(", - "public static CultMeshReactiveDocument ReactiveCurrentEntity(", - "public static CultMeshReactiveDocument ReactiveStationRefit(", - "public static CultMeshReactiveDocument ReactiveCatalogSnapshot(", - "public static CultMeshReactiveDocument ReactivePlayerSettingsDocument(", - "public static CultMeshReactiveDocument ReactiveDaemonFrame(", - "public static CultMeshReactiveDocument ReactiveDaemonSoaView(", - "public static CultMeshReactiveDocument ReactiveZoneRender(", - "public static CultMeshReactiveDocument ReactiveLoadoutTemplates(", - "public static CultMeshReactiveDocument ReactiveSectorMap(", - "public static CultMeshReactiveDocument ReactiveCurrentZone(", - "public static CultMeshReactiveDocument ReactiveZoneContacts(", - "public static CultMeshReactiveDocument ReactiveVerseHostSettings(", - "public static CultMeshReactiveDocument ReactiveEveSurface(", - "public static CultMeshReactiveDocument ReactiveRtsViewport(", - "public static CultMeshReactiveDocument ReactiveObjectsViewport(", - "public static CultMeshReactiveDocument ReactiveGravityViewport(", - "public static CultMeshReactiveDocument ReactiveRenderSplatsViewport(", - "public static CultMeshReactiveDocument ReactiveZoneDetails(", - "public static CultMeshReactiveDocument ReactiveSelectedObject(", - "public static CultMeshReactiveDocument ReactiveInventory(", - "public static CultMeshReactiveDocument ReactiveStarbridgePlayerSeat(", "public static CultMeshStateRefResolver EveSurfaceStateRefResolver(string runtimeId = \"\")", "public static CultMeshStateRefResolver EveSurfaceStateRefResolver(", "private static readonly Dictionary RuntimeClients", @@ -16475,7 +16454,7 @@ static void RequireRuntimeStateReaderOwnsUnityStateAcquisition(string root) "RuntimeClients[cacheKey] = runtimeClient", "AetheriaClient", ".State", - "ReactivePlayerSettingsDocument()", + "RuntimeState().ReactivePlayerSettingsDocument()", "_playerSettingsDocument.Current", "_playerSettingsDocument?.Dispose()", "OpenAsync(", @@ -16492,10 +16471,12 @@ static void RequireRuntimeStateReaderOwnsUnityStateAcquisition(string root) string.Join(", ", missingRuntimeClientProviderSymbols)); } - if (runtimeClientProvider.Contains("public static CultMeshReactiveDocument Reactive", StringComparison.Ordinal)) + if (runtimeClientProvider.Contains("public static CultMeshReactiveDocument Reactive", StringComparison.Ordinal) || + runtimeClientProvider.Contains("public static CultMeshReactiveDocument ReactiveEveSurface(", StringComparison.Ordinal)) { throw new InvalidOperationException( - "AetheriaUnityRuntimeClientProvider must expose named game-state document access, not generic Reactive escape hatches."); + "AetheriaUnityRuntimeClientProvider should expose RuntimeState/Control/Ui and let AetheriaClientState own typed reactive document access; do not rebuild static ReactiveX facade wrappers."); } if (runtimeClientProvider.Contains("AetheriaRuntimePlayerSettingsSession _playerSettingsDocument", StringComparison.Ordinal) || @@ -17034,11 +17015,12 @@ static void RequireRuntimeStateReaderOwnsUnityStateAcquisition(string root) string.Join(", ", mainMenuReaderHits)); } - if (!eveSurfacePresenter.Contains("AetheriaUnityRuntimeClientProvider.ReactiveEveSurface(", StringComparison.Ordinal) || + if (!eveSurfacePresenter.Contains(".RuntimeState(stateBoot, \"unity-eve-surface-presenter\")", StringComparison.Ordinal) || + !eveSurfacePresenter.Contains(".ReactiveEveSurface(surfaceId)", StringComparison.Ordinal) || !eveSurfacePresenter.Contains("ReadDaemonSurface(stateBoot)", StringComparison.Ordinal)) { throw new InvalidOperationException( - "Aetheria Eve surface presenter must read daemon surface state through provider-native reactive typed documents."); + "Aetheria Eve surface presenter must grab the provider RuntimeState and read the daemon surface through AetheriaClientState reactive typed documents."); } if (!eveSurfacePresenter.Contains("AetheriaUnityRuntimeClientProvider.EveSurfaceStateRefResolver(", StringComparison.Ordinal) || diff --git a/Assets/Scripts/Gameplay/AetheriaUnityRuntimeClientProvider.cs b/Assets/Scripts/Gameplay/AetheriaUnityRuntimeClientProvider.cs index 971a682e4..68ff0ac24 100644 --- a/Assets/Scripts/Gameplay/AetheriaUnityRuntimeClientProvider.cs +++ b/Assets/Scripts/Gameplay/AetheriaUnityRuntimeClientProvider.cs @@ -105,310 +105,6 @@ public static class AetheriaUnityRuntimeClientProvider return RuntimeClient(stateBoot, runtimeId).Ui; } - public static CultMeshReactiveDocument ReactiveCurrentDocking( - string runtimeId = "") - { - return RuntimeState(runtimeId).ReactiveCurrentDocking(); - } - - public static CultMeshReactiveDocument ReactiveCurrentDocking( - AetheriaRuntimeStateBootReport stateBoot, - string runtimeId = "") - { - return RuntimeState(stateBoot, runtimeId).ReactiveCurrentDocking(); - } - - public static CultMeshReactiveDocument ReactiveCurrentEntity( - string runtimeId = "") - { - return RuntimeState(runtimeId).ReactiveCurrentEntity(); - } - - public static CultMeshReactiveDocument ReactiveCurrentEntity( - AetheriaRuntimeStateBootReport stateBoot, - string runtimeId = "") - { - return RuntimeState(stateBoot, runtimeId).ReactiveCurrentEntity(); - } - - public static CultMeshReactiveDocument ReactiveStationRefit( - string runtimeId = "") - { - return RuntimeState(runtimeId).ReactiveStationRefit(); - } - - public static CultMeshReactiveDocument ReactiveStationRefit( - AetheriaRuntimeStateBootReport stateBoot, - string runtimeId = "") - { - return RuntimeState(stateBoot, runtimeId).ReactiveStationRefit(); - } - - public static CultMeshReactiveDocument ReactiveCatalogSnapshot( - string runtimeId = "") - { - return RuntimeState(runtimeId).ReactiveCatalogSnapshot(); - } - - public static CultMeshReactiveDocument ReactiveCatalogSnapshot( - AetheriaRuntimeStateBootReport stateBoot, - string runtimeId = "") - { - return RuntimeState(stateBoot, runtimeId).ReactiveCatalogSnapshot(); - } - - public static CultMeshReactiveDocument ReactivePlayerSettingsDocument( - string runtimeId = "") - { - return RuntimeState(runtimeId).ReactivePlayerSettingsDocument(); - } - - public static CultMeshReactiveDocument ReactivePlayerSettingsDocument( - AetheriaRuntimeStateBootReport stateBoot, - string runtimeId = "") - { - return RuntimeState(stateBoot, runtimeId).ReactivePlayerSettingsDocument(); - } - - public static CultMeshReactiveDocument ReactiveDaemonFrame( - string runtimeId = "") - { - return RuntimeState(runtimeId).ReactiveDaemonFrame(); - } - - public static CultMeshReactiveDocument ReactiveDaemonFrame( - AetheriaRuntimeStateBootReport stateBoot, - string runtimeId = "") - { - return RuntimeState(stateBoot, runtimeId).ReactiveDaemonFrame(); - } - - public static CultMeshReactiveDocument ReactiveDaemonSoaView( - string runtimeId = "") - { - return RuntimeState(runtimeId).ReactiveDaemonSoaView(); - } - - public static CultMeshReactiveDocument ReactiveDaemonSoaView( - AetheriaRuntimeStateBootReport stateBoot, - string runtimeId = "") - { - return RuntimeState(stateBoot, runtimeId).ReactiveDaemonSoaView(); - } - - public static CultMeshReactiveDocument ReactiveZoneRender( - string runtimeId = "") - { - return RuntimeState(runtimeId).ReactiveZoneRender(); - } - - public static CultMeshReactiveDocument ReactiveZoneRender( - AetheriaRuntimeStateBootReport stateBoot, - string runtimeId = "") - { - return RuntimeState(stateBoot, runtimeId).ReactiveZoneRender(); - } - - public static CultMeshReactiveDocument ReactiveLoadoutTemplates( - string runtimeId = "") - { - return RuntimeState(runtimeId).ReactiveLoadoutTemplates(); - } - - public static CultMeshReactiveDocument ReactiveLoadoutTemplates( - AetheriaRuntimeStateBootReport stateBoot, - string runtimeId = "") - { - return RuntimeState(stateBoot, runtimeId).ReactiveLoadoutTemplates(); - } - - public static CultMeshReactiveDocument ReactiveSectorMap( - string runtimeId = "") - { - return RuntimeState(runtimeId).ReactiveSectorMap(); - } - - public static CultMeshReactiveDocument ReactiveSectorMap( - AetheriaRuntimeStateBootReport stateBoot, - string runtimeId = "") - { - return RuntimeState(stateBoot, runtimeId).ReactiveSectorMap(); - } - - public static CultMeshReactiveDocument ReactiveCurrentZone( - string runtimeId = "") - { - return RuntimeState(runtimeId).ReactiveCurrentZone(); - } - - public static CultMeshReactiveDocument ReactiveCurrentZone( - AetheriaRuntimeStateBootReport stateBoot, - string runtimeId = "") - { - return RuntimeState(stateBoot, runtimeId).ReactiveCurrentZone(); - } - - public static CultMeshReactiveDocument ReactiveZoneContacts( - string runtimeId = "") - { - return RuntimeState(runtimeId).ReactiveZoneContacts(); - } - - public static CultMeshReactiveDocument ReactiveZoneContacts( - AetheriaRuntimeStateBootReport stateBoot, - string runtimeId = "") - { - return RuntimeState(stateBoot, runtimeId).ReactiveZoneContacts(); - } - - public static CultMeshReactiveDocument ReactiveVerseHostSettings( - string runtimeId = "") - { - return RuntimeState(runtimeId).ReactiveVerseHostSettings(); - } - - public static CultMeshReactiveDocument ReactiveVerseHostSettings( - AetheriaRuntimeStateBootReport stateBoot, - string runtimeId = "") - { - return RuntimeState(stateBoot, runtimeId).ReactiveVerseHostSettings(); - } - - public static CultMeshReactiveDocument ReactiveEveSurface( - string surfaceId, - string runtimeId = "") - { - return RuntimeState(runtimeId).ReactiveEveSurface(surfaceId); - } - - public static CultMeshReactiveDocument ReactiveEveSurface( - AetheriaRuntimeStateBootReport stateBoot, - string surfaceId, - string runtimeId = "") - { - return RuntimeState(stateBoot, runtimeId).ReactiveEveSurface(surfaceId); - } - - public static CultMeshReactiveDocument ReactiveRtsViewport( - AetheriaRuntimeRtsViewportBounds viewport, - string runtimeId = "") - { - return RuntimeState(runtimeId).ReactiveRtsViewport(viewport); - } - - public static CultMeshReactiveDocument ReactiveRtsViewport( - AetheriaRuntimeStateBootReport stateBoot, - AetheriaRuntimeRtsViewportBounds viewport, - string runtimeId = "") - { - return RuntimeState(stateBoot, runtimeId).ReactiveRtsViewport(viewport); - } - - public static CultMeshReactiveDocument ReactiveObjectsViewport( - AetheriaRuntimeRtsViewportBounds viewport, - string runtimeId = "") - { - return RuntimeState(runtimeId).ReactiveObjectsViewport(viewport); - } - - public static CultMeshReactiveDocument ReactiveObjectsViewport( - AetheriaRuntimeStateBootReport stateBoot, - AetheriaRuntimeRtsViewportBounds viewport, - string runtimeId = "") - { - return RuntimeState(stateBoot, runtimeId).ReactiveObjectsViewport(viewport); - } - - public static CultMeshReactiveDocument ReactiveGravityViewport( - AetheriaRuntimeRtsViewportBounds viewport, - string runtimeId = "") - { - return RuntimeState(runtimeId).ReactiveGravityViewport(viewport); - } - - public static CultMeshReactiveDocument ReactiveGravityViewport( - AetheriaRuntimeStateBootReport stateBoot, - AetheriaRuntimeRtsViewportBounds viewport, - string runtimeId = "") - { - return RuntimeState(stateBoot, runtimeId).ReactiveGravityViewport(viewport); - } - - public static CultMeshReactiveDocument ReactiveRenderSplatsViewport( - AetheriaRuntimeRtsViewportBounds viewport, - string runtimeId = "") - { - return RuntimeState(runtimeId).ReactiveRenderSplatsViewport(viewport); - } - - public static CultMeshReactiveDocument ReactiveRenderSplatsViewport( - AetheriaRuntimeStateBootReport stateBoot, - AetheriaRuntimeRtsViewportBounds viewport, - string runtimeId = "") - { - return RuntimeState(stateBoot, runtimeId).ReactiveRenderSplatsViewport(viewport); - } - - public static CultMeshReactiveDocument ReactiveZoneDetails( - int zoneIndex, - string runtimeId = "") - { - return RuntimeState(runtimeId).ReactiveZoneDetails(zoneIndex); - } - - public static CultMeshReactiveDocument ReactiveZoneDetails( - AetheriaRuntimeStateBootReport stateBoot, - int zoneIndex, - string runtimeId = "") - { - return RuntimeState(stateBoot, runtimeId).ReactiveZoneDetails(zoneIndex); - } - - public static CultMeshReactiveDocument ReactiveSelectedObject( - int zoneIndex, - string runtimeId = "") - { - return RuntimeState(runtimeId).ReactiveSelectedObject(zoneIndex); - } - - public static CultMeshReactiveDocument ReactiveSelectedObject( - AetheriaRuntimeStateBootReport stateBoot, - int zoneIndex, - string runtimeId = "") - { - return RuntimeState(stateBoot, runtimeId).ReactiveSelectedObject(zoneIndex); - } - - public static CultMeshReactiveDocument ReactiveInventory( - int entityIndex, - string runtimeId = "") - { - return RuntimeState(runtimeId).ReactiveInventory(entityIndex); - } - - public static CultMeshReactiveDocument ReactiveInventory( - AetheriaRuntimeStateBootReport stateBoot, - int entityIndex, - string runtimeId = "") - { - return RuntimeState(stateBoot, runtimeId).ReactiveInventory(entityIndex); - } - - public static CultMeshReactiveDocument ReactiveStarbridgePlayerSeat( - string seatId, - string runtimeId = "") - { - return RuntimeState(runtimeId).ReactiveStarbridgePlayerSeat(seatId); - } - - public static CultMeshReactiveDocument ReactiveStarbridgePlayerSeat( - AetheriaRuntimeStateBootReport stateBoot, - string seatId, - string runtimeId = "") - { - return RuntimeState(stateBoot, runtimeId).ReactiveStarbridgePlayerSeat(seatId); - } - public static CultMeshStateRefResolver EveSurfaceStateRefResolver(string runtimeId = "") { return RuntimeState(runtimeId).CreateEveSurfaceCultMeshStateRefResolver(); @@ -442,7 +138,7 @@ public static class AetheriaUnityRuntimeClientProvider { try { - _playerSettingsDocument ??= ReactivePlayerSettingsDocument(); + _playerSettingsDocument ??= RuntimeState().ReactivePlayerSettingsDocument(); var stored = _playerSettingsDocument.Current; if (stored == null) diff --git a/Packages/org.gamecult.aetheria.eve-runtime/Runtime/AetheriaEveSurfacePresenter.cs b/Packages/org.gamecult.aetheria.eve-runtime/Runtime/AetheriaEveSurfacePresenter.cs index eb7dc62f5..13c985e8e 100644 --- a/Packages/org.gamecult.aetheria.eve-runtime/Runtime/AetheriaEveSurfacePresenter.cs +++ b/Packages/org.gamecult.aetheria.eve-runtime/Runtime/AetheriaEveSurfacePresenter.cs @@ -170,10 +170,9 @@ namespace GameCult.Aetheria.EveRuntime private CultMeshReactiveDocument? CreateReactiveDaemonSurfaceState( AetheriaRuntimeStateBootReport stateBoot) { - return AetheriaUnityRuntimeClientProvider.ReactiveEveSurface( - stateBoot, - surfaceId, - "unity-eve-surface-presenter"); + return AetheriaUnityRuntimeClientProvider + .RuntimeState(stateBoot, "unity-eve-surface-presenter") + .ReactiveEveSurface(surfaceId); } private UIDocument ResolveDocument()