BEEFY justifications are encoded as VersionedFinalityProofs.
Snowbridge's commitment scanner currently parses these BEEFY justifications as OptionalSignedCommitment here.
This inadvertently works because the first byte of an encoded VersionedFinalityProof signals the version (currently strictly 1), which overlaps with the 1 used to signal Some(..) in an encoded option.
However, it will break once we add new VersionedFinalityProof versions, such as required for paritytech/polkadot-sdk#1119.
BEEFY justifications are encoded as
VersionedFinalityProofs.Snowbridge's commitment scanner currently parses these BEEFY justifications as
OptionalSignedCommitmenthere.This inadvertently works because the first byte of an encoded
VersionedFinalityProofsignals the version (currently strictly1), which overlaps with the1used to signalSome(..)in an encoded option.However, it will break once we add new
VersionedFinalityProofversions, such as required for paritytech/polkadot-sdk#1119.