github aftermath2/hydrus v0.2.0

4 months ago

Release notes

Channels routing policies adjustments

Channels routing policies are adjusted based on the channel state (capacity, local balance) and the amount of satoshis forwarded in the last activity period (agent.intervals.routing_policies).

Apart from this, Hydrus adjusts the maximum HTLC value to 80% of the local balance. It is not set to the exact local balance to leave a buffer of 20% of the funds, in order to avoid running out of liquidity and failing to route payments before the next update.

CLI commands

Agent instructions and scores queries now have their own command to execute them separately. To run all agent tasks (open/close/updates) use the agent run command.

New commands:

Name Description
agent run Run the agent, executing channels and routing policies evaluations on intervals
channels close Evaluate local channels to close and create the closing transactions
channels open Evaluate nodes to connect to and create the funding transaction
channels updatepolicies Evaluate local channels and update their routing policies
scores channels Show local channels scores
scores nodes Show network graph nodes scores

Built-in tasks scheduling

Choose how often to open/close channels or update routing policies without having to use systemd timers or cron jobs.

New configurations:

Name Type Description
agent.intervals.channels time Channels modifications interval
agent.intervals.routing_policies time Routing policies modifications interval

New open heuristic

This release introduces a new open channel heuristic called channels.block_height.

Good channels are typically kept open for longer because they are profitable or useful, take the age of channels into account when choosing peers with this new heuristic.

Dependencies upgrade

Direct and indirect dependencies have been upgrade to their latest versions.

Changelog

  • e62eb18 Add agent intervals configuration
  • f316d40 Add agent run method
  • cec6bae Add channels block height open heuristic
  • d301d57 Add commands
  • 920ed1c Add configuration options types
  • 1042547 Add healthchecks to LND
  • 8c4c04e Add routing policies updates
  • 4ded607 Check for race conditions during test
  • 478a9cc Halve fee_rate outliers limit
  • 1756011 Improve install docs
  • 488e5f2 Limit active goroutines to the number of logical CPUs
  • ee3fed4 Merge pull request #1 from aftermath2/add_channels_block_height
  • 3bd9707 Merge pull request #2 from aftermath2/fees_management
  • 8af2b31 Merge pull request #4 from aftermath2/cli_commands
  • 55f15b0 Merge pull request #5 from aftermath2/small_adjustments
  • 7baae34 Refactor centrality heuristics
  • baea1a6 Refactor channels open heuristics
  • 69344df Refer to block height instead of age
  • ffc5a8e Rename update command
  • b0ceb57 Replace recursion with for loop
  • 95025d5 Simplify config path usage
  • d6792af Specify unchanged policies
  • b5ae527 Typo fixes
  • d4a0430 Update CLI documentation
  • 52375e6 Update activity period values
  • 7ec7040 Update commands descriptions
  • 9cff166 Update commands logger tag
  • d96b53d Update documentation
  • 15a6472 Update log message
  • 0560b37 Upgrade dependencies

Note

Due to the addition of CLI commands, this release is not compatible with v0.1.0. However, the only change required would be to add agent run after the binary execution.

Don't miss a new hydrus release

NewReleases is sending notifications on new releases.