The bsv-rs library versions before 0.8.5 and certain beta versions allow transaction readers to accept trailing bytes after a parsed transaction. This causes the transaction's cached serialization and ID to include extra bytes, potentially resulting in a transaction being identified by a different ID than expected. The issue is fixed in versions 0.8.5 and 0.9.0-beta.7.0.