Skip to main content

Module canonicalize

Module canonicalize 

Source
Expand description

Shared where-clause validation + canonicalization for the aggregate query surfaces (count / sum / average / joint count-and-sum) and their SDK proof verifiers.

Lives outside the per-surface dispatcher modules because the shape contract must be identical on every route: the server dispatchers canonicalize before mode detection, and the proof verifiers must run the very same canonicalization before their mode detection or a proof the server produced for the canonical shape is rejected client-side (the count dispatcher promises callers “the bounded form and the pre-merged form get equivalent mode detection” — that promise only holds if verifiers canonicalize too).

Functions§

validate_and_canonicalize_where_clauses
Run the system-wide where-clause validator on a structured Vec<WhereClause> and canonicalize same-field range pairs into their between* form. Single source of truth for the aggregate shape contract; called by the count / sum / average / joint dispatchers, the legacy CBOR-decoded count entry, and the SDK count / sum / average proof verifiers.