Skip to content

v1.6.0 — top-of-range compressed floats round-trip in every declaration

Choose a tag to compare

@rowan-claude rowan-claude released this 23 Aug 14:22

The compressed float writer now clamps the quantized integer to max_integer_value after the floor, so a top-of-range value round-trips in every declaration rather than only outside [2^23, 2^24).

This is the normative amendment ruled 2026-08-23 (schema#109) and carried by the whole family. Both witnesses the standard mandates are pinned here: [0, 8388609] at resolution 1, where the unclamped code was rejected by the reader, and [0, 16777215] at resolution 1, where the unclamped code overflowed the field and was masked to zero. The clamp sits in the single quantizer that every write entry point flows through — stream and batch, derive-per-call and precomputed — so no writer path is left uncovered.

Also in this release:

  • The decode's two roundings are pinned in the source rather than left to RyuJIT.
  • The differential gains negative controls and a run that can actually discriminate.
  • Two corpus shapes where ceil and round disagree.
  • The interop pin moves to v1.11.0, and the string buffer floor drops to 1.
  • The repo's first bench harness, with string and wstring rows.

No byte changes for any declaration outside [2^23, 2^24).