AT
← Developer activityStrong match

Anthony Towns

Public commit activity attributed with strong match confidence. This page describes observable work, not personal trustworthiness.

64 commits1 monitored projects4 candidates0 high-risk analyses
Project constellation

Where the commits appear

Amber nodes are monitored by CommitWatch. Gray nodes are sampled from authenticated GitHub public commit search and may not represent complete contribution history.

Monitored External sample
Projects connected to Anthony TownsA visual map of monitored and externally discovered repositories.ATdeveloper64Bitcoin Core
Monitored evidence

CommitWatch projects

External discovery

Other public projects

No external sample loaded yet.

A verified GitHub handle is needed before external discovery.
Analyzed activity

Recent published watches

Message quality and risk characterize commits, never the person.

Informational 15 AI analysisMessage 65 · Adequate
BC Bitcoin CoreBitcoin Core BitcoinSupply chain

bitcoin-util: replace netmagic command with getchainparams command

This commit renames and expands a command-line helper in Bitcoin Core. The old 'bitcoin-util netmagic' command, which only printed the network's magic bytes, is replaced by 'bitcoin-util getchainparams', which prints a JSON document contai…

7298281bby Anthony Towns+223−3516 files
No security note in commit
Informational 15 AI analysisMessage 65 · Adequate
BC Bitcoin CoreBitcoin Core BitcoinSupply chain

util/tokenbucket.h: Provide a generic TokenBucket class

This commit introduces a brand-new, generic token-bucket utility class and a full set of unit tests for it. A token bucket is a common algorithm for rate limiting (controlling how often an action can happen). There is no change to existing…

7927650eby Anthony Towns+201−02 files
No security note in commit
Moderate 63 AI analysisMessage 90 · Strong
BC Bitcoin CoreBitcoin Core BitcoinSupply chain

net_processing: add a global delay queue for sending txs

This commit adds a global rate limiter to how many transaction announcements (INV messages) a Bitcoin node sends out. Before, each peer had its own queue, so a node could receive one transaction and announce it to over 100 peers, acting li…

Global rate limiting replaces per-peer queues to prevent transaction-announcement amplificationDual token buckets bound both INV count and relay bandwidthCommit message explicitly describes the change as limiting transaction-spam amplification and excessive memory/CPU usage
df31ee57by Anthony Towns+176−252 files
Vendor flagged security relevance
Informational 18 AI analysisMessage 73 · Adequate
BC Bitcoin CoreBitcoin Core BitcoinSupply chain

rpc: report -txsendrate and bucket info via getnetworkinfo

This commit adds new read-only information fields to Bitcoin Core's getnetworkinfo RPC command. It exposes the configured transaction send rate and internal token-bucket statistics used to pace transaction announcements to peers. There is …

New RPC output fields only; no state mutationNo authentication or authorization changesNo network protocol changes
4842903aby Anthony Towns+45−13 files
No security note in commit
Informational 15 AI analysisMessage 50 · Thin
BC Bitcoin CoreBitcoin Core BitcoinSupply chain

net_processing: Drop unnecessary txid arg from InitiateTxBroadcastToAll

This is a small code cleanup change in Bitcoin Core's network transaction broadcasting. It removes an unused transaction ID argument from an internal function called InitiateTxBroadcastToAll, leaving only the witness transaction ID. The fu…

349c72eeby Anthony Towns+9−93 files
No security note in commit
Informational 15 AI analysisMessage 50 · Thin
BC Bitcoin CoreBitcoin Core BitcoinSupply chain

net_processing: Provide a 30bpm heartbeat log while inv backlog is in use

This commit adds a periodic debug log message that prints statistics about Bitcoin's inventory backlog. It is purely an observability/monitoring change and does not alter network behavior, consensus rules, or security boundaries.

6307bd03by Anthony Towns+26−01 file
No security note in commit
Informational 15 AI analysisMessage 45 · Thin
BC Bitcoin CoreBitcoin Core BitcoinSupply chain

doc: Add release note for -txsendrate etc

This commit only adds a release note describing a previously made network change. It does not change any code, configuration defaults, or behavior. There is no security issue in this documentation patch itself.

12b0dc33by Anthony Towns+13−01 file
No security note in commit
Informational 15 AI analysisMessage 55 · Thin
BC Bitcoin CoreBitcoin Core BitcoinSupply chain

tests: basic functional test for tx rate limiting

This commit only adds a new automated test file and registers it in the test runner. It does not change any production code in Bitcoin Core. The test verifies that transaction relay rate limiting (a feature controlled by the -txsendrate op…

5cde6634by Anthony Towns+115−02 files
No security note in commit
Informational 15 AI analysisMessage 50 · Thin
BC Bitcoin CoreBitcoin Core BitcoinSupply chain

txmempool: Drop CompareMiningScoreWithTopology

This commit removes an unused helper function called CompareMiningScoreWithTopology from Bitcoin Core's transaction memory pool code. It also updates an internal consistency check to use a different, already-existing comparison method. The…

749bb447by Anthony Towns+4−222 files
No security note in commit
Informational 19 AI analysisMessage 78 · Adequate
BC Bitcoin CoreBitcoin Core BitcoinSupply chain

init: add -txsendrate configuration parameter

This commit adds a new debug-only command-line option called -txsendrate that lets node operators change how many transaction announcements per second Bitcoin Core sends to inbound peers. The default behavior stays the same (14 transaction…

Adds a new DEBUG_ONLY configuration knob for transaction inventory broadcast rateClamps user-supplied value to 1-1000 tx/s to prevent extreme misconfigurationReplaces hardcoded constant with runtime option; default behavior unchanged
74a47a52by Anthony Towns+16−95 files
No security note in commit
Low 32 AI analysisMessage 58 · Thin
BC Bitcoin CoreBitcoin Core BitcoinSupply chain

net_processing: Replace CompareInvMempoolOrder

This Bitcoin Core commit refactors how transactions are selected and sorted before being announced to network peers. It replaces an older in-place heap sort with a new mempool function that picks the best transactions by mining fee score w…

Refactor of P2P transaction inventory relay ordering logicChange of container type from std::set to std::vector for pending inventoryIntroduction of new mempool dependency-aware selection API
e1b7490fby Anthony Towns+37−551 file
No security note in commit
Informational 12 AI analysisMessage 63 · Adequate
BC Bitcoin CoreBitcoin Core BitcoinSupply chain

txmempool: Add ExtractBestByMiningScoreWithTopology

This commit adds a new internal mempool helper function that takes a list of transaction IDs, looks them up in the memory pool, removes duplicates and missing entries, and returns the best-priority ones according to Bitcoin's mining-score/…

No security-relevant signals observed in the diff or commit message.Function is additive and not invoked in the changed code.Locking annotation and iterator-lifetime warning are present and correct.
6cfc65d2by Anthony Towns+71−02 files
No security note in commit
Low 45 AI analysisMessage 68 · Adequate
BC Bitcoin CoreBitcoin Core BitcoinSupply chain

net_processing: Remove per-peer rate-limiting

This Bitcoin Core change removes a per-peer speed limit on how many transaction announcements (INV messages) a node sends out at once. Previously a peer would only announce up to about 1,000 transactions per batch, with a dynamic cap. Now …

Removal of a rate-limiting control that constrained per-peer transaction announcement burstsIncrease in maximum single INV message size from ~1,000 to ~50,000 itemsCommit message explicitly references 'severe bugs in the past' caused by per-peer rate-limiting logic
026f70e0by Anthony Towns+6−151 file
Vendor flagged security relevance
Low 35 AI analysisMessage 65 · Adequate
BC Bitcoin CoreBitcoin Core BitcoinSupply chain

net_processing: bump last_inv_sequence for bip35 messages explicitly

This change makes a Bitcoin node's mempool announcement logic more explicit and reliable. When a node announces the contents of its memory pool to a peer (a BIP35 'mempool' request), it now directly records the latest mempool version. Prev…

P2P protocol state inconsistency between mempool announcement and inventory sequence trackingReliance on implicit side effect for security-relevant state updatePotential for follow-up GETDATA requests to be mishandled after BIP35 mempool response
46c8c471by Anthony Towns+4−01 file
No security note in commit
Informational 23 AI analysisMessage 58 · Thin
BC Bitcoin CoreBitcoin Core BitcoinSupply chain

BIP434: FEATURE message support

This commit adds support for a new Bitcoin peer-to-peer message type called FEATURE, defined in BIP 434. It is infrastructure for negotiating optional protocol features during the initial handshake, not a finished feature itself. The code …

New network message type introduced (FEATURE)Protocol version bumped to 70017Peer disconnection logic added for malformed or out-of-sequence FEATURE messages
6a129983by Anthony Towns+105−810 files
No security note in commit
Informational 15 AI analysisMessage 35 · Opaque
BC Bitcoin CoreBitcoin Core BitcoinSupply chain

test_framework: BIP 434 support

This commit only updates Bitcoin Core's internal Python test framework to recognize a new P2P protocol version (70017) and a new 'FEATURE' message type as part of BIP 434 support. It does not change the actual Bitcoin node software, networ…

01b8a117by Anthony Towns+9−32 files
No security note in commit
Low 28 AI analysisMessage 50 · Thin
BC Bitcoin CoreBitcoin Core BitcoinSupply chain

net: Add AdvertisedVersion() for protocol version advertised to a peer

This commit is a privacy-focused code cleanup. Bitcoin nodes normally announce a current protocol version number when connecting to peers. For a special 'private broadcast' connection type used to hide transaction origins, the commit makes…

privacy hardeningfingerprinting reductionprotocol version anonymization
3210fc47by Anthony Towns+13−64 files
No security note in commit
Informational 12 AI analysisMessage 35 · Opaque
BC Bitcoin CoreBitcoin Core BitcoinSupply chain

serialize: add LimitedVectorFormatter

This commit adds a new helper called LimitedVectorFormatter that lets Bitcoin Core reject serialized data containing vectors (lists of values) that are larger than an allowed maximum. It is a defensive building block, not a fix for an acti…

Adds an explicit length-limit check during deserialization, which is a defensive hardening patternMirrors an existing, trusted formatter (LimitedStringFormatter) already used for bounded string deserializationNo production code paths are changed; the new formatter is only a library addition and unit test
94ed4542by Anthony Towns+55−02 files
No security note in commit
Informational 15 AI analysisMessage 50 · Thin
BC Bitcoin CoreBitcoin Core BitcoinSupply chain

serialize: string_view serialization

This commit adds a convenience feature to Bitcoin Core's serialization code: it lets a lightweight read-only string type (std::string_view) be written directly to a data stream, instead of first copying it into a std::string. It also expli…

No memory-unsafe operations observed: serialization uses MakeByteSpan and the existing WriteCompactSize/os.write pathUnserialize explicitly deleted to prevent misuse of a non-owning view typeNo changes to consensus, network, or wallet code
1b3f776eby Anthony Towns+28−12 files
No security note in commit
Low 27 AI analysisMessage 75 · Adequate
BC Bitcoin CoreBitcoin Core BitcoinSupply chain

versionbits: Limit live activation params and activation warnings per BIP323

This Bitcoin Core change narrows which version bits trigger live 'unknown soft fork' warnings from 29 bits down to 5, following the new BIP323 specification. It does not change how many bits exist in block headers or how test networks beha…

Consensus-adjacent constant change (versionbits warning scope)BIP323 compliance changeReduction of false-positive activation warnings
f802edf5by Anthony Towns+31−65 files
No security note in commit
Wrong identity?Names can collide and public author strings can be misleading.Contact commitwatch@karma-x.io →