verify_batch_permutation

Function verify_batch_permutation 

Source
pub fn verify_batch_permutation(
    slots: &[usize],
    ks: &[usize],
    canonical: bool,
) -> Vec<usize>
Expand description

2026-09-25: Dispatch order for one verify batch, as a permutation only.

slots[i] and ks[i] describe member i in the caller’s order (ks[i] is its row count, drafts + 1). order[p] is the input index dispatched at position p.

  • canonical = true: ascending ssm slot; ks is unread.
  • canonical = false: deepest first, then ascending ssm slot.

Ties break on input index, so the order is a deterministic function of the inputs. Under canonical = true a second application to the ordered batch returns the identity (canonical_order_is_idempotent).

Panics when slots and ks differ in length.