From 190f5871edc4ec46ef1fc8609a3d308389d8ee13 Mon Sep 17 00:00:00 2001 From: Meta Vens Date: Thu, 16 Jul 2026 21:58:52 +0100 Subject: [PATCH] Pin and prove temporal projection release --- .../Tests/PlayMode/GenericWorldCaptureTests.cs | 2 +- ReleaseConsumerProject/Packages/manifest.json | 2 +- .../Packages/packages-lock.json | 4 ++-- .../Tests/PlayMode/GenericWorldCaptureTests.cs | 2 +- docs/aetheria-released-package-witness.md | 18 ++++++++++++++++-- scripts/run-aetheria-daemon-world-witness.ps1 | 2 +- 6 files changed, 22 insertions(+), 8 deletions(-) diff --git a/ReleaseConsumerProject/Assets/Tests/PlayMode/GenericWorldCaptureTests.cs b/ReleaseConsumerProject/Assets/Tests/PlayMode/GenericWorldCaptureTests.cs index 5fe6c4a..f98cfd1 100644 --- a/ReleaseConsumerProject/Assets/Tests/PlayMode/GenericWorldCaptureTests.cs +++ b/ReleaseConsumerProject/Assets/Tests/PlayMode/GenericWorldCaptureTests.cs @@ -716,7 +716,7 @@ namespace GameCult.EveUnity.GenericClient.PlayModeTests Assert.That(captureFieldVolume.CompositeCount - initialCompositeCount, Is.GreaterThanOrEqualTo(temporalSettlingFrames), "The pilot capture ran before the advertised temporal reconstruction had settled."); - camera.Render(); + yield return null; RenderTexture.active = target; pixels = new Texture2D(captureWidth, captureHeight, TextureFormat.RGB24, false); pixels.ReadPixels(new Rect(0, 0, captureWidth, captureHeight), 0, 0); diff --git a/ReleaseConsumerProject/Packages/manifest.json b/ReleaseConsumerProject/Packages/manifest.json index 3c9427b..f27304a 100644 --- a/ReleaseConsumerProject/Packages/manifest.json +++ b/ReleaseConsumerProject/Packages/manifest.json @@ -9,7 +9,7 @@ "org.gamecult.cultlib": "https://github.com/GameCult/CultLib.git?path=/unity/org.gamecult.cultlib#cultlib-unity-v1.0.15", "org.gamecult.eve.plugin-fields": "https://github.com/GameCult/EvePlugins.git?path=/plugins/eve-plugin-fields/unity/org.gamecult.eve.plugin-fields#eve-plugin-fields-unity-v0.2.3", "org.gamecult.eve.surface": "https://github.com/GameCult/EveUnity.git?path=/packages/org.gamecult.eve.surface#eveunity-surface-v0.2.2", - "org.gamecult.eve.unity-scene": "https://github.com/GameCult/EveUnity.git?path=/packages/org.gamecult.eve.unity-scene#eveunity-scene-v0.3.62", + "org.gamecult.eve.unity-scene": "https://github.com/GameCult/EveUnity.git?path=/packages/org.gamecult.eve.unity-scene#eveunity-scene-v0.3.63", "org.gamecult.eve.unity-uitoolkit": "https://github.com/GameCult/EveUnity.git?path=/packages/org.gamecult.eve.unity-uitoolkit#eveunity-uitoolkit-v0.1.1" }, "testables": [ diff --git a/ReleaseConsumerProject/Packages/packages-lock.json b/ReleaseConsumerProject/Packages/packages-lock.json index 92907d8..9c3c276 100644 --- a/ReleaseConsumerProject/Packages/packages-lock.json +++ b/ReleaseConsumerProject/Packages/packages-lock.json @@ -144,7 +144,7 @@ "hash": "140e1bd963a0033e66777a3b2c5fe6e9c97dfe32" }, "org.gamecult.eve.unity-scene": { - "version": "https://github.com/GameCult/EveUnity.git?path=/packages/org.gamecult.eve.unity-scene#eveunity-scene-v0.3.62", + "version": "https://github.com/GameCult/EveUnity.git?path=/packages/org.gamecult.eve.unity-scene#eveunity-scene-v0.3.63", "depth": 0, "source": "git", "dependencies": { @@ -155,7 +155,7 @@ "com.unity.render-pipelines.universal": "17.4.0", "com.unity.modules.particlesystem": "1.0.0" }, - "hash": "ed92fa7be0e2e7e386ab50ad36d6fd954d2d86a5" + "hash": "3135d24bb84f40719b121b51634811c85af0a7af" }, "org.gamecult.eve.unity-uitoolkit": { "version": "https://github.com/GameCult/EveUnity.git?path=/packages/org.gamecult.eve.unity-uitoolkit#eveunity-uitoolkit-v0.1.1", diff --git a/TestProject/Assets/Tests/PlayMode/GenericWorldCaptureTests.cs b/TestProject/Assets/Tests/PlayMode/GenericWorldCaptureTests.cs index 5fe6c4a..f98cfd1 100644 --- a/TestProject/Assets/Tests/PlayMode/GenericWorldCaptureTests.cs +++ b/TestProject/Assets/Tests/PlayMode/GenericWorldCaptureTests.cs @@ -716,7 +716,7 @@ namespace GameCult.EveUnity.GenericClient.PlayModeTests Assert.That(captureFieldVolume.CompositeCount - initialCompositeCount, Is.GreaterThanOrEqualTo(temporalSettlingFrames), "The pilot capture ran before the advertised temporal reconstruction had settled."); - camera.Render(); + yield return null; RenderTexture.active = target; pixels = new Texture2D(captureWidth, captureHeight, TextureFormat.RGB24, false); pixels.ReadPixels(new Rect(0, 0, captureWidth, captureHeight), 0, 0); diff --git a/docs/aetheria-released-package-witness.md b/docs/aetheria-released-package-witness.md index fc6de39..a71e860 100644 --- a/docs/aetheria-released-package-witness.md +++ b/docs/aetheria-released-package-witness.md @@ -4,8 +4,8 @@ The released-package cold world witness passes with: -- `org.gamecult.eve.unity-scene` `0.3.62`, commit - `ed92fa7be0e2e7e386ab50ad36d6fd954d2d86a5`; +- `org.gamecult.eve.unity-scene` `0.3.63`, commit + `3135d24bb84f40719b121b51634811c85af0a7af`; - `org.gamecult.eve.plugin-fields` `0.2.3`, commit `c5a4a75c1b727499b16c2dae1895f29e2a9f72f0`; - `org.gamecult.eve.surface` `0.2.2`, commit @@ -70,6 +70,20 @@ command participates in the transaction. The event identity begins `ymir-fact:` and contains the retained Box3D session, step, contact episode, and begin-fact identity. +The released `0.3.63` warm HD witness in +`artifacts/aetheria-daemon-temporal-projection-0363-warm-hd` makes the native +volume history projection convention an explicit provider-program semantic. +Aetheria advertises the non-render-target projection convention used by its +historical `Graphics.Blit` temporal pass; the generic URP lowerer applies that +convention without naming Aetheria or interpreting fog. The witness captures +the naturally rendered camera target after 359 volume composites instead of +issuing a second out-of-band `Camera.Render()`. Package tests pass 105/105 and +the released gameplay witness still proves movement, combat, destruction loot, +one Ymir contact collection, held tractor input, and camera-channel isolation. +The remaining visual controls (fog parameters, stellar tint, ambient intensity, +histogram exposure, grading, and temporal settings) remain provider-owned +levers; this proof does not claim a final art grade. + Current released-package evidence is in `artifacts/aetheria-daemon-mapped-body-cold`; despite that retained directory name, `runtime-witness.warm.json` is the current passing run. The warm PlayMode test diff --git a/scripts/run-aetheria-daemon-world-witness.ps1 b/scripts/run-aetheria-daemon-world-witness.ps1 index 5773583..86fb3a0 100644 --- a/scripts/run-aetheria-daemon-world-witness.ps1 +++ b/scripts/run-aetheria-daemon-world-witness.ps1 @@ -13,7 +13,7 @@ param( ) $ErrorActionPreference = "Stop" -$expectedEveUnityCommit = "ed92fa7be0e2e7e386ab50ad36d6fd954d2d86a5" +$expectedEveUnityCommit = "3135d24bb84f40719b121b51634811c85af0a7af" $expectedEveFieldsCommit = "c5a4a75c1b727499b16c2dae1895f29e2a9f72f0" $expectedEveUnityUiToolkitCommit = "4d0cbe0185bdc4fc65eb63503a7c5cb578539669" $expectedCultLibCommit = "419053ebe2325848051c4f4d8ba352cd4286c424"