ordspv
    Preparing search index...

    Function checkTxNotAmbiguous

    • Refuse a transaction whose stripped serialization is 64 bytes.

      Both verifiers apply this rule to every transaction a bundle carries in a proven position: parseHopTx in custody.ts to each custody hop, and parseHexTxChecked in satnumber.ts to the genealogy endpoints and every funding step. Nothing in the build applied it, so a backend serving such a transaction bought a whole bundle that the verifier then refused after the loop had been left, with the other configured backends never asked.

      The reason is parseHopTx's: the txid-tree leaf preimage is the stripped serialization, so a 64-byte stripped transaction can be read as an inner node of that tree, and the ambiguity class is stripped length 64 whether or not the transaction carries a witness.

      Raised as HopConsistencyError naming the backend, so the loops record it as that backend producing no usable answer and lead the next attempt.

      Parameters

      • baseUrl: string
      • tx: ParsedTx
      • label: string

      Returns void