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
18176Commits captured
17449AI analyses
103High-risk findings · 30d
The watch feed

Changes worth understanding

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

17449 analyses
Highest risk·RSS
Low 38 AI analysisMessage 45 · Thin
BC Bitcoin CoreBitcoin Core BitcoinSupply chain

http: switch servers from libevent to bitcoin

This commit replaces Bitcoin Core's long-standing libevent-based HTTP server with a new custom-built HTTP server. The change is architectural, not a targeted bug fix. It alters how the node parses and rejects HTTP requests, which could cha…

Large-scale HTTP parser rewrite replacing a mature external library (libevent) with custom parsing codeChanges to request rejection semantics (status codes, header whitespace handling, duplicate Content-Length handling)Body size limit constant reduced/clarified from 0x02000000 to 32 MiB
21c7542cby Matthew Zipkin+44−588 files
No security note in commit
Informational 18 AI analysisMessage 60 · Adequate
BC Bitcoin CoreBitcoin Core BitcoinSupply chain

fuzz: switch http_libevent::HTTPRequest to http_bitcoin::HTTPRequest

This commit updates a fuzz test—a special automated test that feeds random data to a piece of code to find bugs. The test previously used Bitcoin Core's old libevent-based HTTP request parser and worked around a known crash in that parser.…

Removes a fuzz-test-only workaround for a libevent nullptr dereference in evhttp_parse_request_lineSwitches fuzzing target to the newer http_bitcoin HTTP parser implementationNo changes to production networking, consensus, or wallet code
e427c227by Matthew Zipkin+14−341 file
No security note in commit
Low 38 AI analysisMessage 45 · Thin
BC Bitcoin CoreBitcoin Core BitcoinSupply chain

HTTPserver: support "chunked" Transfer-Encoding

This commit adds support for HTTP 'chunked' transfer encoding to Bitcoin Core's built-in HTTP server. Before this change, the server only understood requests with a plain Content-Length body. The patch implements chunk-size parsing, chunk-…

New network-facing HTTP parser code for chunked transfer encodingAddition of size-limit checks against MAX_BODY_SIZE during chunked parsingHandling of chunk extensions and trailers, which are common sources of parser smuggling bugs
6734bcdeby Matthew Zipkin+195−183 files
No security note in commit
Low 27 AI analysisMessage 83 · Strong
BC Bitcoin CoreBitcoin Core BitcoinSupply chain

HTTPServer: compose and send replies to connected clients

This commit adds the ability for Bitcoin Core's built-in HTTP server to actually compose and send response messages back to connected clients. Previously, the server could read requests but had a placeholder 'TODO: send data' where replies…

New network-facing send path in HTTP serverUse of MSG_NOSIGNAL to prevent SIGPIPE process termination on closed peer socketsUse of MSG_DONTWAIT for non-blocking send behavior
cdf71998by Matthew Zipkin+251−125 files
No security note in commit
Informational 15 AI analysisMessage 78 · Adequate
BC Bitcoin CoreBitcoin Core BitcoinSupply chain

HTTPServer: read requests from connected clients

This commit adds the ability for Bitcoin Core's new HTTP server to actually read incoming request data from connected clients. Previously, the server could accept connections but did not read what clients sent. The change is a normal featu…

No security-relevant keywords in commit title or messageNo CVE, advisory, or security-fix referencesNo bounds-check, input-validation, or memory-safety corrections
80e1cfe5by Matthew Zipkin+215−295 files
No security note in commit
Informational 15 AI analysisMessage 65 · Adequate
BC Bitcoin CoreBitcoin Core BitcoinSupply chain

HTTPServer: generate sequential Ids for each newly accepted connection

This commit adds a simple internal counter so each incoming HTTP connection can be assigned a unique sequential ID. It does not change any externally visible behavior, fix a bug, or close a security hole. It is a routine code-structure cha…

a85286c5by Matthew Zipkin+21−02 files
No security note in commit
Informational 15 AI analysisMessage 35 · Opaque
BC Bitcoin CoreBitcoin Core BitcoinSupply chain

http: Introduce HTTPRemoteClient class

This commit only adds a new C++ class definition to a header file. It does not change any existing behavior, fix a bug, or alter how the program handles data. There is nothing here that would allow an attacker to exploit the software.

4ef4ebdcby Matthew Zipkin+20−01 file
No security note in commit
Informational 11 AI analysisMessage 73 · Adequate
BC Bitcoin CoreBitcoin Core BitcoinSupply chain

HTTPServer: start an I/O loop in a new thread and accept connections

This commit is a routine internal refactor of Bitcoin Core's HTTP server. It moves connection-accepting logic into a dedicated background I/O thread, mirroring how the peer-to-peer network layer already handles sockets. There is no indicat…

New background thread handles socket accept/IO loopShared socket ownership model changed to shared_ptr to avoid use-after-close during pollingTemporary/test-only APIs present (CloseConnection, GetFirstConnection)
3c5226abby Matthew Zipkin+287−143 files
No security note in commit
Informational 12 AI analysisMessage 60 · Adequate
BC Bitcoin CoreBitcoin Core BitcoinSupply chain

util/string: use string_view in LineReader

This is a routine code-quality refactor. It changes an internal string-line reader to return lightweight string views instead of making full string copies. There is no security fix or behavior change visible in the commit.

0cdbb191by Matthew Zipkin+13−114 files
No security note in commit
Low 35 AI analysisMessage 73 · Adequate
BC Bitcoin CoreBitcoin Core BitcoinSupply chain

util/string: LineReader should only trim \r or \r\n

This commit changes a low-level string utility so it no longer strips spaces from the beginning and end of lines it reads. It now only removes the actual line-ending characters (carriage return and newline). The change is described as a co…

Behavior change in line-reading utility used by network/protocol parsingCommit message explicitly references HTTP parsing and caller-controlled acceptance/rejection of CR/SPPotential for whitespace-sensitive parsing (e.g., HTTP headers, Bitcoin protocol messages) to be affected
5aa3629bby Matthew Zipkin+11−42 files
No security note in commit
Informational 15 AI analysisMessage 83 · Strong
BC Bitcoin CoreBitcoin Core BitcoinSupply chain

http: enclose libevent-dependent code in a namespace

This commit only moves existing HTTP server code into a new namespace called http_libevent. It does not change any behavior, fix any bug, or alter how the software handles network input. It is a pure code-organization change to make future…

89c54ae4by Matthew Zipkin+25−58 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