[epic]: revive ChannelRouter
as the layer 3 within the ln stack
#8835
Labels
advanced
Issues suitable for very experienced developers
architecture
Related to system design
chain handling
enhancement
Improvements to existing features / behaviour
epic
Issues created to track large feature development
gossip
payments
Related to invoices/payments
routing
As of today, the
routing
package has the following tasks:routing/chainview
ChannelRouter.handleNetworkUpdate
CachedGraph
)MissionControl
)findPath
)paymentLifecycle
)We need to refine and move some tasks out of the
routing
package to makeChannelRouter
fulfill its promise:lnd/routing/router.go
Lines 431 to 438 in 26892a2
Proposals
A high level summary of proposed changes, each item should have its own issue page to provide the details.
Similar onchain notifications have been implemented in
routing/chainview
,chainntnfs
andbtcwallet/chain
. We should instead have a single place deadling with blockchain data, i.e.,btcwallet/chain
should be the only entrypoint to access chain backends (TODO: add an issue page).Fix duplicated gossip handling found in
gossip
androuting
, detailed in [epic]: ChannelDB, Graph, Gossiper and Router separation #8833A subservice to handle payments, detailed in [epic]: Payment and Router separation #8834
TBD: the relationship among the network graph, probability graph and pathfinding -
ChannelRouter
can be the single entity to interact with, while the probability graph can be a subservice that provides pathfinding.The text was updated successfully, but these errors were encountered: