Skip to content

Conversation

@t-bast
Copy link
Member

@t-bast t-bast commented Jan 2, 2026

We introduced a mechanism to keep spent channels in the Router until the spending transaction has enough confirmations to avoid removing spliced channels from our graph too eagerly. An unwanted side-effect is that while we're waiting for confirmations, we may broadcast channel announcements for these spent channels, which looks like spam to our peers.

We now filter out channels that have been spent for which we're waiting for confirmations when sending out gossip. In the second commit, we ensure that these announcements are also filtered from front router nodes.

Fixes #3127

t-bast added 2 commits January 2, 2026 15:58
We introduced a mechanism to keep spent channels in the `Router` until
the spending transaction has enough confirmations to avoid removing
spliced channels from our graph too eagerly. An unwanted side-effect
is that while we're waiting for confirmations, we may broadcast channel
announcements for these spent channels, which looks like spam to our
peers.

We now filter out channels that have been spent for which we're waiting
for confirmations when sending out gossip.
Another side-effect of the splice change is that we didn't notify front
nodes that the channel was spent before it reached enough confirmations
so we kept sending channel gossip to our peers.

We now immediately notify the front nodes so that they stop sending this
channel to our peers.
@t-bast t-bast requested a review from pm47 January 2, 2026 15:19
Copy link
Member

@pm47 pm47 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The seconds commit will cause all splices to have a redundant ChannelLost event. That's probably fine.

@t-bast
Copy link
Member Author

t-bast commented Jan 6, 2026

The seconds commit will cause all splices to have a redundant ChannelLost event. That's probably fine.

Yes exactly, we could avoid it but it would add complexity, while receivers should handle duplicate such events without any issue (which the front nodes correctly do today).

@t-bast t-bast merged commit c214b07 into master Jan 6, 2026
1 check passed
@t-bast t-bast deleted the spent-channel-rebroadcast branch January 6, 2026 16:13
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Don't rebroadcast announcements for spent channels

3 participants