Assert Aetheria EveUnity receipt bridge
This commit is contained in:
parent
881282dd50
commit
4a15c39079
2 changed files with 19 additions and 7 deletions
|
|
@ -180,7 +180,12 @@ source, so the next presentation still comes from daemon-authored state.
|
|||
`EveUnityPlayableWorldRuntime` is the generic runtime composition entry point:
|
||||
it wires provider surface documents, provider asset manifest documents, command
|
||||
sink, optional receipt source, asset manifest cache, presenter, and scene sink
|
||||
into one Unity playable-world client without importing provider code.
|
||||
into one Unity playable-world client without importing provider code. The
|
||||
Aetheria provider bridge now implements the same receipt-source port: when the
|
||||
daemon accepts a surface command envelope or routes a fallback Eve command, it
|
||||
publishes an `EveUnitySceneCommandReceipt` through
|
||||
`IEveUnitySceneCommandReceiptSource` so the Unity client observes provider
|
||||
acceptance without mutating scene truth locally.
|
||||
`EveUnityPlayableWorldPresenter` maps the provider-authored entity rows and
|
||||
asset refs into scene operations through `IEveUnityPlayableWorldSceneSink` and
|
||||
`IEveUnityPlayableWorldAssetResolver`, including removal of entities that
|
||||
|
|
@ -203,11 +208,12 @@ names appear only as provider-authored data and command ids; the Unity client
|
|||
code does not import Aetheria runtime types, prefab classes, or apply movement
|
||||
locally.
|
||||
|
||||
This is not yet the final playable client. The remaining cut is a live
|
||||
CultMesh/CultNet provider subscription adapter implementing those document and
|
||||
command ports, concrete CultMesh/CultCache readers for provider surface and
|
||||
asset manifest documents, and proof that daemon receipts plus provider
|
||||
documents drive the next rendered Unity frame rather than renderer-local state.
|
||||
This is not yet the final playable client. The Aetheria consumer bridge now
|
||||
feeds surface documents, asset manifest documents, command submission, and
|
||||
provider receipts into the generic Unity ports. The remaining cut is live
|
||||
CultMesh/CultNet subscription ownership for those same ports and proof that
|
||||
daemon receipts plus refreshed provider documents drive the next rendered Unity
|
||||
frame rather than renderer-local state.
|
||||
|
||||
## Non-Goals
|
||||
|
||||
|
|
|
|||
|
|
@ -118,9 +118,13 @@ foreach ($symbol in @(
|
|||
"IEveUnitySceneProviderSurfaceDocumentSource",
|
||||
"IEveUnityPlayableWorldAssetManifestDocumentSource",
|
||||
"IEveUnitySceneCommandSink",
|
||||
"IEveUnitySceneCommandReceiptSource",
|
||||
"IEveUnityProviderRefreshSource",
|
||||
"ManifestRef",
|
||||
"AetheriaEveRuntimeUnityHooks.RequireControl"
|
||||
"ReceiptAvailable",
|
||||
"AetheriaEveRuntimeUnityHooks.RequireControl",
|
||||
"ToReceipt(request, daemonEnvelope)",
|
||||
"ToReceipt(request, envelope)"
|
||||
)) {
|
||||
if (-not $sceneBridge.Contains($symbol)) {
|
||||
throw "Aetheria Eve Unity scene bridge missing symbol: $symbol"
|
||||
|
|
@ -134,8 +138,10 @@ foreach ($symbol in @(
|
|||
"IEveUnitySceneProviderSurfaceDocumentSource",
|
||||
"IEveUnityPlayableWorldAssetManifestDocumentSource",
|
||||
"IEveUnitySceneCommandSink",
|
||||
"IEveUnitySceneCommandReceiptSource",
|
||||
"IEveUnityProviderRefreshSource",
|
||||
"AetheriaEveUnitySceneProviderBridge",
|
||||
"ReceiptAvailable",
|
||||
"stateFilePathOverride",
|
||||
"surfaceId",
|
||||
"runtimeId",
|
||||
|
|
|
|||
Loading…
Reference in a new issue