Skip to content

v1.85.0

Choose a tag to compare

@github-actions github-actions released this 18 Apr 17:29
addac2d

Fixed

  • Benchmark-level cache identity for reshaped sweeps: SweepBase.hash_persistent previously hashed only (units, samples), so reshaping a FloatSweep/IntSweep/SweepSelector (changing bounds, step, sample_values, or objects) silently left the benchmark-level cache and over_time history keyed by the old shape, returning stale coordinates. Fixed by introducing an explicit _sweep_identity whitelist (bounds, sample_values, step, objects) with a slot-coverage test that catches future "added a slot, forgot the hash" regressions.
  • CACHE_VERSION bumped to "3" and folded directly into BenchCfg.hash_persistent so version bumps atomically invalidate every benchmark-level and over_time key.

Changed

  • ResultFloat.direction and ResultRerun.width/height moved to _hash_exclude: these are interpretive/cosmetic fields that should not invalidate history when changed.
  • New TestGoldenBenchCfgHash regression pins byte-exact values for a canonical BenchCfg; any future change to what contributes to the hash fails CI loudly and forces a deliberate CACHE_VERSION bump.