AI-generated analysisPublished automatically and not human-verified. Validated context appears in community notes below.
← Watch feed
Informational 22 Bitcoin

multi: version ForEachNode, ForEachNodeCached, NumZombies

Public commit record

What the developer wrote

Authored by Elle Mouton

83/100 · Strong
multi: version ForEachNode, ForEachNodeCached, NumZombies

Add a gossip version parameter to ForEachNode, ForEachNodeCached, and
NumZombies in the Store interface and propagate it through the KV and
SQL implementations and the ChannelGraph wrapper.

The KVStore gates each method against GossipVersion1, returning
ErrVersionNotSupportedForKVDB for any other version. The SQLStore uses
the version to filter the underlying queries.

All call sites—routing graph, autopilot, RPC server, and the graph
migration integration test—are updated to pass the appropriate version
explicitly.
✓ Specific, descriptive subject✓ Names a concrete action or component✓ Provides detailed explanatory context✓ Mentions testing or verification
The short version

What changed, and why it matters

This commit is a software plumbing change: it adds a 'gossip version' parameter to several graph database methods so the code can distinguish between different network protocol versions. It does not fix a crash, a privacy leak, or an obvious way for an attacker to steal funds. Instead, it prepares the codebase for future multi-version channel graph support. The KV (file-based) backend now refuses non-V1 versions, while the SQL backend uses the version to filter queries. Several internal callers are updated to explicitly request version 1.

Recommended action

Treat as a normal refactoring/versioning commit. Reviewers should verify that all new call sites pass an explicit, correct gossip version and that the KVStore guard cannot be bypassed. Monitor follow-up commits that address the TODOs about cross-version graph views, as those may carry actual security or correctness implications.

Security signals we found

01

API versioning added to graph store methods

02

KV backend explicitly rejects unsupported gossip versions

03

SQL backend filters queries by gossip version

04

Internal call sites hard-coded to GossipVersion1 with TODOs for cross-version views

05

No explicit security claim in commit message or diff

Risk score

Why this scored 22/100

Our methodology →
Potential impact 5/30
Exploitability 0/25
Stealth signal 0/15
Affected reach 5/15
Confidence 8/10
Evidence quality 4/5
Human-validated context

Community notes

Notes can correct, qualify, or add evidence to the AI analysis. Every note shown here has been validated by a human moderator.

No validated notes yet.

The AI analysis stands alone for now. Submit a note if you can add evidence or important context.