BIP-158 compresses information that helps light clients find relevant blocks. Its probabilistic matching must not be confused with verification of the actual transaction.

What the primary record establishes

BIP-158 specifies compact block filters for the BIP-157 light-client protocol, using Golomb-Rice coding. The basic filter includes specified output scripts and scripts of spent previous outputs, with defined exclusions such as OP_RETURN outputs. Bitcoin BIP-158 — Compact Block Filters for Light Clients ↗

The design explicitly considers false positives and the bandwidth spent downloading blocks because of them. A positive filter match can therefore be a candidate requiring further inspection; it is not itself evidence that the wallet received a particular payment. Bitcoin BIP-158 — Compact Block Filters for Light Clients ↗

What the distinction changes

For a wallet interface, discovery and verification are different stages. A filter can guide what to fetch next. The application then needs the relevant block and transaction evidence before displaying a confirmed incoming transfer or changing spendable balance.

An illustrative filter hit followed by no relevant transaction is not automatically an attack or a lost payment. False positives are part of the specified construction. Conversely, a product should not use that possibility to avoid investigating inconsistencies in the actual data it receives.

What to check before drawing a conclusion

Keep the filter, block reference and transaction-level result distinguishable in diagnostic records. Validate against the relevant protocol and chain assumptions. A short data structure or a successful matching call does not replace the consensus and transaction checks required by the application.

WFN’s analysis concerns the boundary of the filter’s evidence. It does not certify a light-client implementation or assert a measured false-positive rate for a particular service. A payment claim needs the transaction record, not merely a discovery signal.