mirror of
https://github.com/storytold/effectcraft.git
synced 2026-10-14 19:27:05 -04:00
Effects: the sim golden test accepts macOS 27's libm hash for Mr. Mercury (#232)
On macOS 27.2 (rustc 1.98) one of the 404 pinned simulation hashes, CC Mr. Mercury at non-default settings, 32 bpc, t = 2.2 s, came out different. The reporter rendered every case at the commit that pinned the hashes and at current main on that machine, and the frames were byte-identical. So the code didn't change: the platform's libm did (the hashes are exact f32 bits through sin, cos and powf). The test now also accepts listed per-case libm variants, with that hash as the first, and every other case stays exact. Its docs say how to tell a libm difference from a code change. Test: libm_variants_are_accepted_for_their_case_only (sim_golden; runs on every platform). Co-Authored-By: Claude Opus 5.5 <[email protected]>
This commit is contained in:
1 parent
f4319c1917
commit
e61f0e5560
2 files changed
+40
-11
No files matched your search
+2
-1
@@ -19,7 +19,8 @@ cargo xtask ci # fmt, clippy -D warnings, tests, layers, assets, was
|
||||
which read the clock are declared time-dependent. `crates/effects/tests/sim_golden.rs` pins
|
||||
exact pixel hashes of the simulation effects the GPU shares plans with (CC Rainfall … Card
|
||||
Wipe) at several settings, times, bit depths and resolutions, so any change to their CPU output
|
||||
fails (re-pin with `SIM_GOLDEN_PRINT=1` after an intended change; pinned for aarch64 macOS).
|
||||
fails (re-pin with `SIM_GOLDEN_PRINT=1` after an intended change; pinned for aarch64 macOS,
|
||||
with the hashes another macOS release's libm gives for unchanged code in `LIBM_VARIANTS`).
|
||||
- **Export** (`crates/export/tests`): every format is encoded and decoded back, checking frame
|
||||
count, size and pixels. When `ffmpeg`/`ffprobe` are installed they are used as an outside
|
||||
check; they are never linked or shipped.
|
||||
|
||||
Reference in new issue
Block a user