fn queue_orchard_bundle(
select_verifier: impl FnOnce() -> &'static VerifierService,
bundle: Option<Bundle<Authorized, ZatBalance>>,
sighash: &SigHash,
) -> AsyncChecksExpand description
Queues an Orchard-shaped bundle’s single aggregated Halo2 proof against a verifier.
§Consensus
The proof 𝜋 MUST be valid given a primary input (cv, rt^{Orchard}, nf, rk, cm_x, enableSpends, enableOutputs)
https://zips.z.cash/protocol/protocol.pdf#actiondesc
Unlike Sapling, Orchard shielded transactions have a single aggregated Halo2 proof per
transaction, even with multiple Actions, so it is queued for verification only once instead
of once per Action description. The choice of verifying key is the caller’s; see
verify_orchard_bundle and verify_orchard_v6_bundle.
select_verifier is only invoked when a bundle is present, so a bundle-less transaction
never forces the (lazily initialized) verifier services.