You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
feat: add special transaction support to compact block filters (BIP-157/158)
Implements extraction of special transaction fields for compact block filters,
achieving feature parity with bloom filters. SPV clients can now detect special
transactions using either filtering mechanism.
Changes:
- Add ExtractSpecialTxFilterElements() to extract fields from special txs
- Integrate special tx extraction into BasicFilterElements()
- Support all special transaction types:
* ProRegTx: collateral, owner/voting keys, payout script
* ProUpServTx: ProTx hash, operator payout
* ProUpRegTx: ProTx hash, voting key, payout script
* ProUpRevTx: ProTx hash
* AssetLockTx: credit output scripts
- Add comprehensive unit tests for all transaction types
- Add functional tests with actual AssetLockTx transactions
- Use delegation pattern to avoid circular dependencies
The implementation mirrors CheckSpecialTransactionMatchesAndUpdate() to ensure
consistent behavior between bloom and compact filters.
🤖 Generated with [Claude Code](https://claude.ai/code)
Co-Authored-By: Claude <[email protected]>
0 commit comments