optimized_wire_version

Function optimized_wire_version 

Source
pub(crate) fn optimized_wire_version(has_rotation: bool) -> u8
Expand description

The optimized format’s wire version, chosen by what the payload CONTAINS.

v2 is the pre-#3575 shape: an instance table without rot0..rot8, placed as world = origin + template_position. v3 adds the nine rotation columns and the placement becomes world = origin + R * template_position.

A response in which every instance came out identity IS a v2 payload in every observable respect, so it ships as one and an unchanged client keeps decoding every model it decoded before #3575. Only a payload that genuinely carries rotation declares 3, where a v2-only decoder fails loud on its version check (Unsupported optimized Parquet version: 3) instead of silently dropping the rotations and misplacing the geometry.

The argument is the rotation data actually emitted, NOT “the model has instance metadata” or “the feature is on”: translation-only reuse runs the whole rotation-aware dedup and still produces identity everywhere.