lnd/autopilot
Elle Mouton 7f1be39d45
refactor: move various duties from ChannelRouter to graph.Builder
This commit is a large refactor that moves over various responsibilities
from the ChannelRouter to the graph.Builder. These include all graph
related tasks such as:
- graph pruning
- validation of new network updates & persisting new updates
- notifying topology update clients of any changes.

This is a large commit but:
- many of the files are purely moved from `routing` to `graph`
- the business logic put in the graph Builder is copied exactly as is
  from the ChannelRouter with one exception:
- The ChannelRouter just needs to be able to call the Builder's
  `ApplyChannelUpdate` method. So this is now exported and provided to
the ChannelRouter as a config option.
- The trickiest part was just moving over the test code since quite a
  bit had to be duplicated.
2024-07-15 15:56:33 +02:00
..
agent_constraints_test.go multi: use btcd's btcec/v2 and btcutil modules 2022-03-09 19:02:37 +01:00
agent_constraints.go trivial: Fix spelling errors 2023-09-21 22:35:33 -04:00
agent_test.go chore: fix function names in comment 2024-04-27 00:04:09 +08:00
agent.go multi: wrap all errors 2024-04-11 15:04:03 +02:00
betweenness_centrality_test.go autopilot: fix loop variables, use require 2022-10-13 14:40:43 +02:00
betweenness_centrality.go multi: Fix typos [skip ci] 2022-01-24 12:19:02 +02:00
centrality_testdata_test.go multi: use btcd's btcec/v2 and btcutil modules 2022-03-09 19:02:37 +01:00
choice_test.go chore: fix struct names 2024-04-17 11:19:31 +08:00
choice.go multi: Fix typos [skip ci] 2022-01-24 12:19:02 +02:00
combinedattach.go multi: wrap all errors 2024-04-11 15:04:03 +02:00
externalscoreattach_test.go multi: use btcd's btcec/v2 and btcutil modules 2022-03-09 19:02:37 +01:00
externalscoreattach.go multi: use btcd's btcec/v2 and btcutil modules 2022-03-09 19:02:37 +01:00
graph_test.go multi: use btcd's btcec/v2 and btcutil modules 2022-03-09 19:02:37 +01:00
graph.go multi+refactor: create ForEachNodeChannel with no tx param 2024-07-15 15:13:58 +02:00
interface.go multi: use btcd's btcec/v2 and btcutil modules 2022-03-09 19:02:37 +01:00
log.go multi: init subsystem loggers via build pkg 2018-10-05 13:04:45 +09:00
manager.go refactor: move various duties from ChannelRouter to graph.Builder 2024-07-15 15:56:33 +02:00
prefattach_test.go autopilot: fix loop variables, use require 2022-10-13 14:40:43 +02:00
prefattach.go multi: use btcd's btcec/v2 and btcutil modules 2022-03-09 19:02:37 +01:00
simple_graph_test.go lnrpc+autopilot: add graph diameter calculation 2022-03-07 11:15:47 +01:00
simple_graph.go trivial: Fix spelling errors 2023-09-21 22:35:33 -04:00
top_centrality_test.go trivial: Fix spelling errors 2023-09-21 22:35:33 -04:00
top_centrality.go multi: use btcd's btcec/v2 and btcutil modules 2022-03-09 19:02:37 +01:00