v1.6.0 — top-of-range compressed floats round-trip in every declaration
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
ceilandrounddisagree. - 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).