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.

24Projects watched
17490Commits captured
17117AI analyses
88High-risk findings · 30d
The watch feed

Changes worth understanding

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

17117 analyses
Highest risk·RSS
Informational 12 AI analysisMessage 87 · Strong
RB Rust Bitcoinrust-bitcoin BitcoinCryptographic libraries

test: V1NetworkMessage sendcmpct should be either 1 or 0

This commit only adds a new unit test. It does not change any production code, so it cannot by itself introduce or fix a security vulnerability. The test verifies that an invalid 'sendcmpct' network message (with a mode byte other than 0 o…

Test-only change: no production code modifiedTopic: P2P message parsing strictness for sendcmpct mode byteNo patch to decoder/validation logic visible in diff
e99b8e4fby Abeeujah+16−01 file
No security note in commit
Low 37 AI analysisMessage 88 · Strong
RB Rust Bitcoinrust-bitcoin BitcoinCryptographic libraries

p2p: make SendCmpct encode/decode idempotent

This change fixes a serialization bug in how the rust-bitcoin library handles a Bitcoin peer-to-peer message called `sendcmpct`. Previously, if a malformed or unusual message arrived with a mode value other than 0 or 1, the library would s…

Non-idempotent encode/decode roundtrip for network messagesSilent normalization of out-of-spec protocol fieldChecksum mismatch on re-serialization of received messages
b7c35effby yancy+44−81 file
No security note in commit
Low 28 AI analysisMessage 50 · Thin
SW SparrowSparrow Wallet BitcoinHardware integrationSoftware wallets

fix npe comparing unresolved silent payment output

This is a one-line bug fix for a NullPointerException (NPE) that occurs when comparing an unresolved silent payment output. A silent payment is a newer Bitcoin privacy feature that lets someone receive payments without publicly revealing t…

NullPointerException fix in payment output comparisonSilent payment output handlingOne-line patch in wallet library (drongo)
d8e7b54cby Craig Raw+1−11 file
No security note in commit
Moderate 59 AI analysisMessage 50 · Thin
SW SparrowSparrow Wallet BitcoinHardware integrationSoftware wallets

check all open tabs when verifying a scanned or loaded transaction matches the originating psbt

This commit tightens how Sparrow Wallet checks that a scanned QR code or loaded file matches the transaction the user is currently working on. Previously, the app only compared the new transaction/PSBT against the single currently open tab…

UI workflow hardening: cross-tab verification prevents acceptance of mismatched transactions/PSBTsPreviously, verification was scoped to a single tab's context PSBT, which could be bypassed by tab confusion or user errorSilent Payments edge case preserved: possibleUnverifiableSilentPaymentsTransaction still triggers a dedicated warning
078af174by Craig Raw+66−234 files
No security note in commit
Moderate 61 AI analysisMessage 60 · Adequate
EP Elements ProjectCore Lightning BitcoinLightning Network

tests: test RBF stops after closed tx is confirmed

This commit adds a test that checks whether Core Lightning stops trying to replace (RBF) a penalty transaction once a replacement version has already been confirmed on the blockchain. The test documents a bug where the node would keep firi…

RBF loop does not terminate after replacement tx is confirmedUse of stale original_txid instead of current in-flight txid for confirmation checkIndefinite rebroadcast of on-chain penalty transaction
3e0f48e1by enaples+71−01 file
No security note in commit
Moderate 59 AI analysisMessage 85 · Strong
EP Elements ProjectCore Lightning BitcoinLightning Network

chaintopology: fix RBF loop that never stops after replacement tx confirms

This fix resolves a bug where Core Lightning would keep trying to replace a transaction with a higher-fee version forever, even after the replacement had already been confirmed on the Bitcoin blockchain. The loop happened because the code …

CWE-835: Infinite LoopResource exhaustion via repeated on-chain transaction creationPotential fee loss / wallet bloat from perpetual RBF replacements
15a66cbcby enaples+7−21 file
Vendor flagged security relevance
Moderate 64 AI analysisMessage 50 · Thin
KS KeystoneKeystone 3 firmware BitcoinHardware wallets

fix the issue of uvfk not changed if changed password

This commit fixes a bug in the Keystone 3 hardware wallet's Zcash support: when a user changed their login password, the encrypted Zcash 'unified full viewing key' (UFVK) was not re-encrypted with the new password. That meant the stored UF…

Credential/key material desynchronization after password changeZcash UFVK ciphertext keyed by login passwordAutomatic migration/recovery of stale encrypted key material
6d8e2d9dby aaron+137−464 files
No security note in commit
Low 31 AI analysisMessage 85 · Strong
TZ TrezorTrezor firmware BitcoinHardware wallets

refactor(core/ethereum): simplify calldata streaming flow

This is a code cleanup (refactor) in Trezor's Ethereum transaction signing. It merges two internal steps into one so that transaction data is streamed, hashed, and shown to the user in a single pass instead of two. The commit message says …

Refactor of Ethereum transaction confirmation and hashing flowCalldata hashing moved into a callback invoked during streamingUI test fixture hashes updated for payment-request tests
ca9c3cafby Roman Zeyde+266−2564 files
No security note in commit
Moderate 59 AI analysisMessage 60 · Adequate
SW SparrowSparrow Wallet BitcoinHardware integrationSoftware wallets

verify scanned or loaded transactions match the originating psbt

This commit adds a safety check in the Sparrow Wallet desktop app to make sure a transaction loaded from a file or scanned from a QR code actually matches the PSBT (a partially-signed Bitcoin transaction) that was already open. Before this…

New integrity/matching validation between an originating PSBT and subsequently loaded or scanned transactions/PSBTsUser-facing error dialogs for mismatched transactions and silent-payment transactionsPrevention of displaying a substituted transaction as if it were the intended one
4b8a4594by Craig Raw+64−284 files
No security note in commit
Informational 19 AI analysisMessage 62 · Adequate
TZ TrezorTrezor firmware BitcoinHardware wallets

feat(nordic): add support for different NCS sdk versions

This commit updates Trezor's Bluetooth firmware build system so it can compile against two different Nordic SDK versions (an older 2.9 and a newer 3.3). It adds version checks, pins the correct compiler toolchain, and renames a few Bluetoo…

Build script now pins toolchain version to prevent silent use of wrong compiler/SDKBuild script verifies SDK/board compatibility before compilingHost-side signing tools isolated from NCS toolchain Python environment to avoid 'SRE module mismatch' and potential wrong-tool signing
253c4f87by tychovrahe+248−2210 files
No security note in commit
Informational 15 AI analysisMessage 68 · Adequate
BC Bitcoin CoreBitcoin Core BitcoinSupply chain

lint: remove E731 Ruff ignore

This commit is a code cleanup that changes the way some Python test helper functions are written so that a linting tool (Ruff) can enforce a style rule. It does not change what the software does, only how the test code is formatted. There …

6eca1117by will+56−3010 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