Skip to main content

result_set_commitments

Function result_set_commitments 

Source
pub fn result_set_commitments(
    provider_id: &str,
    frames: &[ContextFrame],
) -> Vec<(FrameId, [u8; 32])>
Expand description

Every frame of a result set paired with its commitment, in the protocol’s canonical FrameId order (SPEC.md §6.3, §6.5.3).

The order is the whole point: a Merkle root is a function of leaf sequence, so a provider and a verifier that sort differently compute different roots from identical frames. Sorting by the identity triple — the order deterministic composition already uses — means neither side has to preserve, transmit, or agree on the order the frames happened to arrive in.