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
{{ message }}
Repository navigation
v2.x: a rule call with a float literal returns -0.0's row in some runs (float_constant_test flaky) #750
On main (v2.0.10 line), the answer to a rule call with a float literal argument differs from run to run. tests/float_constant_test.rs::float_constant_matches_equal_floats_only fails in about 6–10% of runs (19/300, 24/300 and 29/300 in three local Linux loops; also failed once in Windows CI on #749, passed on rerun).
Most runs return :zero only (the rule call's literal joins by Value's hash on v2.x, which tells -0.0 from 0.0, as the test's comment says). Some runs return :zero and :neg. The same process gives the same answer within one run, so the choice looks seeded by RandomState (map iteration order picking a path).
Activity
fix(types): -0.0 and 0.0 hash alike, so a rule call's 0.0 returns -0.…
release: v2.0.11
adityamukho commentedon Oct 26, 2026
Fixed in v2.0.11, now published: https://github.com/project-minigraf/minigraf/releases/tag/v2.0.11. The fix shipped in #752: equal zero floats hash alike, so a rule call returns -0.0 rows in every run. Updated the pinned known-issues list (#421).