Continuous public-repository analysis

Open source.
Not open secrets.

We watch what security-critical projects change—then translate the code into clear, independent intelligence anyone can understand.

23Projects watched
16918Commits captured
16841AI analyses
83High-risk findings · 30d
The watch feed

Changes worth understanding

AI analysis is published as generated. Community notes appear after human validation.

16841 analyses
Highest risk·RSS
Low 31 AI analysisMessage 45 · Thin
BT btcsuitebtcd BitcoinNode implementations

blockchain/indexers: fix dropped error

This commit fixes a programming mistake where an error from deleting a database bucket was accidentally ignored. The function that drops an index now properly returns the error instead of continuing as if nothing went wrong. A silently ign…

dropped error return value now handleddatabase bucket deletion failure previously ignoredpotential index state inconsistency after partial deletion
ad3b10d1by Lars Lehtonen+3−01 file
No security note in commit
Moderate 60 AI analysisMessage 68 · Adequate
BT btcsuitebtcd BitcoinNode implementations

psbt: reject nil taproot pointer fields

This commit fixes a class of crash bugs in btcd's PSBT (Partially Signed Bitcoin Transaction) handling for Taproot transactions. Previously, if certain Taproot-related lists contained a nil (empty) entry, the code would panic when trying t…

nil-pointer dereference / panic prevention in Taproot PSBT finalizernil-pointer dereference / panic prevention in PSBT serializationinput validation added before sort.Slice and pointer dereference
1ead5ba3by Olaoluwa Osuntokun+171−165 files
Vendor flagged security relevance
Low 31 AI analysisMessage 83 · Strong
BT btcsuitebtcd BitcoinNode implementations

multi: parse own-DB blocks leniently in getblock and indexer init

This commit fixes two related bugs in btcd, a Bitcoin node implementation. First, it prevents the getblock RPC from using database memory after it has expired, which could previously cause crashes or corrupted block data. Second, it makes …

Use of transaction-scoped database buffer after view lifetime (getblock RPC)Lenient parsing of own-DB blocks to avoid permanent unreadability of legacy dataAddition of regression test for buffer invalidation after DB.View
4ac2e425by Olaoluwa Osuntokun+113−404 files
No security note in commit
Low 37 AI analysisMessage 73 · Adequate
BC Bitcoin Corelibsecp256k1 BitcoinCryptographic libraries

nonce: terminate RFC6979 loop at UINT_MAX

This commit fixes an infinite-loop bug in the RFC6979 nonce generation code used for creating cryptographic signatures. If a caller asked for attempt number UINT_MAX (the maximum value of an unsigned integer), the old loop would generate t…

Infinite loop in cryptographic nonce generation when counter is UINT_MAXLoop index wraparound causing non-terminationRFC6979 nonce function behavior mismatch with public API contract
b1bc6f3eby Lőrinc+2−11 file
No security note in commit
Informational 15 AI analysisMessage 35 · Opaque
EP Elements ProjectCore Lightning BitcoinLightning Network

doc: Fix spliceout description

This commit only fixes a typo and an incorrect sentence in documentation files describing the 'spliceout' command. It changes 'move funds into a channel' to 'move funds out of a channel' and adds the word 'to' in a usage sentence. No code …

d304d207by ShahanaFarooqui+4−42 files
No security note in commit
Low 42 AI analysisMessage 62 · Adequate
KS KeystoneKeystone 3 firmware BitcoinHardware wallets

fix(zcash): defer checked batch cleanup after signing

This patch changes when a Zcash batch signing screen frees a sensitive internal data structure. Instead of destroying the data immediately when the page is cleared, it now schedules the cleanup to run after the signing operation has finish…

Use-after-free / premature-free risk in cryptographic signing pathAsync deferred cleanup introduced to avoid race with FIFO signing taskInline comment explicitly describes security-relevant ordering constraint
3b8995faby Adam Tucker+32−11 file
No security note in commit
Low 35 AI analysisMessage 57 · Thin
KS KeystoneKeystone 3 firmware BitcoinHardware wallets

fix(zcash): initialize batch parse fingerprint

This commit fixes a small but meaningful bug in the Keystone hardware wallet's Zcash batch transaction screen. A 32-byte fingerprint buffer (`sfp`) was used without being initialized to zero. The code then fills it via `GetZcashSFP`, but i…

Uninitialized local buffer used for cryptographic/identity fingerprintPotential information disclosure or verification bypass if helper function fails partiallyFix pattern is a one-line initialization, indicating a partial/spot fix rather than systemic audit
56df2725by Adam Tucker+1−11 file
No security note in commit
Low 33 AI analysisMessage 57 · Thin
KS KeystoneKeystone 3 firmware BitcoinHardware wallets

fix(zcash): guard batch refresh display state

This is a small, defensive fix in the Zcash batch transaction screen of a Keystone hardware wallet. It adds a check that a UI display object actually exists before continuing to refresh the screen. Without the guard, the refresh function c…

Null-pointer guard added to UI refresh functionPotential denial-of-service/crash hardening in firmware UI pathNo explicit security claim or CVE referenced in commit
c634f1caby Adam Tucker+1−11 file
No security note in commit
Moderate 59 AI analysisMessage 57 · Thin
KS KeystoneKeystone 3 firmware BitcoinHardware wallets

fix(zcash): size UFVK buffers for terminators

This commit fixes a buffer sizing bug in the Keystone hardware wallet's Zcash support. The code previously treated the maximum string length and the buffer size as the same number, leaving no guaranteed room for the null terminator at the …

Off-by-one buffer sizing for null terminator in Zcash UFVK handlingUse of string-length constant instead of buffer-size constant in strcpy_s and memset_s callsInconsistent buffer declarations across account manager and GUI code
5f158dd3by Adam Tucker+14−136 files
No security note in commit
Informational 15 AI analysisMessage 81 · Strong
LDK Lightning Dev Kitrust-lightning BitcoinCryptographic librariesLightning Network

Change assign-reviewer authorized integration token to a bot acct

This commit swaps the ID number used by an automated workflow that randomly assigns code reviewers. The old number pointed to a real person's account, so the workflow's assignments appeared to come from that person. The new number points t…

f734d1ebby Matt Corallo+1−11 file
No security note in commit
Low 46 AI analysisMessage 78 · Adequate
LL Lightning LabsLND BitcoinLightning Network

paymentsdb: normalize orphaned blinded total

This commit fixes a database migration bug in LND (Lightning Network Daemon) that could prevent the node from starting after upgrading. Some old payment routes stored a 'blinded total amount' without the matching encrypted recipient data. …

Fixes a startup-denial condition caused by a SQL constraint violation during migrationChanges discriminator for sensitive blinded-hop rows from a monetary total to encrypted recipient dataAdds explicit malformed-data rejection with payment/attempt/hop context instead of an opaque SQL error
04da2fa5by ziggie+202−113 files
No security note in commit
01
Why commit watching?

Security should leave a paper trail.

A quiet fix may be responsible caution—or it may leave users unaware that their assets were ever at risk. CommitWatch preserves the evidence, adds context, and tracks whether vendors disclose, acknowledge, and learn.

Why we built this