autopilot: move determining chanSize from heuristic to agent
Since we want to combine scores from multiple heuristics, things get complicated if the heuristics report their own individual channel sizes. Therefore we change the NodeScores interface slightly, letting the agent specify the wanted channel size, and let the heuristic score the nodes accordingly.
This commit is contained in:
4 files changed
+27
-32
No files matched your search
+7
-1
@@ -547,10 +547,16 @@ func (a *Agent) openChans(availableFunds btcutil.Amount, numChans uint32,
|
||||
return fmt.Errorf("unable to get graph nodes: %v", err)
|
||||
}
|
||||
|
||||
// As channel size we'll use the maximum channel size available.
|
||||
chanSize := a.cfg.Constraints.MaxChanSize()
|
||||
if availableFunds-chanSize < 0 {
|
||||
chanSize = availableFunds
|
||||
}
|
||||
|
||||
// Use the heuristic to calculate a score for each node in the
|
||||
// graph.
|
||||
scores, err := a.cfg.Heuristic.NodeScores(
|
||||
a.cfg.Graph, totalChans, availableFunds, nodes,
|
||||
a.cfg.Graph, totalChans, chanSize, nodes,
|
||||
)
|
||||
if err != nil {
|
||||
return fmt.Errorf("unable to calculate node scores : %v", err)
|
||||
|
||||
Reference in new issue
Block a user