You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Describe the bug AtmosphereVisualEvidenceTest.DayNightWeatherMatrixRendersAndHoldsContracts fails on every run, in both the slot-based and heap-bindless configurations, on two of its matrix cells:
AtmosphereVisualEvidenceTest.cpp(408): error: Expected: (rmse) <= (kGoldenRmseThreshold),
actual: 13.077706847047567 vs 8
Capture 'NightClear' drifted from its golden (RMSE 13.077706847047567)
AtmosphereVisualEvidenceTest.cpp(408): error: Expected: (rmse) <= (kGoldenRmseThreshold),
actual: 9.4036103562132709 vs 8
Capture 'NightOvercast' drifted from its golden (RMSE 9.4036103562132709)
It is deterministic, not flaky. The two RMSE values are identical to the last digit across runs taken days apart, on different builds, in both configurations. This is a fixed offset between what the renderer produces and what the committed goldens hold — not noise, and not a threshold that is marginally too tight.
The failure is confined to NIGHT, and that is the diagnostic lead.NightClear and NightOvercast fail; NightStorm passes, as do all of Dawn, Dusk and Noon. Whatever changed is specific to the night sky path (star field, moon, night-side scattering) and appears to be suppressed by heavy overcast — which is presumably why NightStorm survives.
Root cause (unknown — two candidates, and they have opposite fixes)
Night rendering regressed after those goldens were captured. Fix: find and fix the regression — rebasing would silently bless the bug.
Do not rebase without looking at the images first. RMSE 13 on a night sky is not subtle; per CLAUDE.md's rendering-verification rule, open Atmosphere_NightClear.png against its golden and decide which of the two it is. A blind OLOENGINE_GOLDEN_REBASE=1 here would convert a possible rendering regression into a permanent, invisible baseline.
Requires a GL 4.6 context (SKIPs headless). Fails identically every time.
Expected behavior
Either the goldens match the renderer, or they are rebased deliberately after visual confirmation.
Why it matters beyond one red test
This is the only consistently failing test in the suite, so "N passed, 1 failed" has become the expected result — precisely the state in which a new regression is invisible. During #691 Phase 3 this test was repeatedly the known-good baseline for "did my change break anything?", and every such comparison was one unrelated red away from ambiguity.
Not caused by #691. The bindless branch touches neither AtmosphereVisualEvidenceTest.cpp nor AtmosphereSky.glsl/StarNestSky.glsl; it fails identically with the heap disabled (the shipped configuration); and the goldens' last-touching commit is on master.
Describe the bug
AtmosphereVisualEvidenceTest.DayNightWeatherMatrixRendersAndHoldsContractsfails on every run, in both the slot-based and heap-bindless configurations, on two of its matrix cells:It is deterministic, not flaky. The two RMSE values are identical to the last digit across runs taken days apart, on different builds, in both configurations. This is a fixed offset between what the renderer produces and what the committed goldens hold — not noise, and not a threshold that is marginally too tight.
The failure is confined to NIGHT, and that is the diagnostic lead.
NightClearandNightOvercastfail;NightStormpasses, as do all of Dawn, Dusk and Noon. Whatever changed is specific to the night sky path (star field, moon, night-side scattering) and appears to be suppressed by heavy overcast — which is presumably whyNightStormsurvives.Root cause (unknown — two candidates, and they have opposite fixes)
Do not rebase without looking at the images first. RMSE 13 on a night sky is not subtle; per
CLAUDE.md's rendering-verification rule, openAtmosphere_NightClear.pngagainst its golden and decide which of the two it is. A blindOLOENGINE_GOLDEN_REBASE=1here would convert a possible rendering regression into a permanent, invisible baseline.To Reproduce
Requires a GL 4.6 context (SKIPs headless). Fails identically every time.
Expected behavior
Either the goldens match the renderer, or they are rebased deliberately after visual confirmation.
Why it matters beyond one red test
This is the only consistently failing test in the suite, so "N passed, 1 failed" has become the expected result — precisely the state in which a new regression is invisible. During #691 Phase 3 this test was repeatedly the known-good baseline for "did my change break anything?", and every such comparison was one unrelated red away from ambiguity.
Not caused by #691. The bindless branch touches neither
AtmosphereVisualEvidenceTest.cppnorAtmosphereSky.glsl/StarNestSky.glsl; it fails identically with the heap disabled (the shipped configuration); and the goldens' last-touching commit is onmaster.Screenshots / logs
Goldens:
OloEditor/assets/tests/visual/Atmosphere_Night{Clear,Overcast,Storm}.png.Score