github ksedgwic/clboss v0.17.0-rc3

pre-release5 hours ago

Third release candidate for v0.17.0. Testers wanted: the rebalancer is new, so please run it on a node you watch and report what you see. Not yet recommended for unattended production use.

Changes since rc2

  • docs/xrebalance_overview.md: why the built-in rebalancers were replaced, how a cycle is decided, and what each tuning option changes, including grant and gain.
  • clboss-xrebalance-per-hour defaults to 24 matched cycles per hour (was 12).
  • contrib/clboss-xrebalance-view shows each peer's raw net earnings rate (InNetPpm / OutNetPpm) beside the grant/gain-adjusted rate the driver ranks by (InAdjPpm / OutAdjPpm); the gross-rate columns are gone, and --sort in_net_ppm / out_net_ppm replace in_ppm / out_ppm. Its fallback defaults (used only when listconfigs lacks an option) now match the driver's.
  • The clboss-xrebalance-gain help text says that a value below 1 tightens the rule.

Changes since rc1 (in rc2)

  • Earnings attribution no longer misses rebalance parts and forwards through a channel younger than the last listpeerchannels snapshot (#337).
  • The XRebalancer: transfer ... log line reads the plugin's summary object, so part counts, the pending amount, and the closest failure are reported with xrebalance plugin v0.4.4 or later (#338).
  • A missing xrebalance plugin logs a warning once an hour and clboss-status gains an xrebalancer entry with the plugin state.
  • cln-plugin-bounce applies config-file edits only after checking that every config-file option is still registered by the restarted plugins.

What changed in v0.17.0

  • Rebalancing moves to a new engine, xrebalance: circular rebalances planned from each peer's earnings record and executed through the external xrebalance plugin on CLN's askrene min-cost-flow router. Cycles run on a Poisson clock and on demand when a forward drains a channel. Pricing is strict: a cycle's fee budget comes from what the involved peers actually earn.
  • The built-in rebalancer (JIT, earnings, initial, FundsMover, clboss-movefunds) is removed. JIT rebalancing is removed deliberately: holding an incoming HTLC while a rebalance runs delays the whole payment path; demand-triggered cycles cover the same need without holding HTLCs. If you relied on JIT rebalancing, please open an issue describing your case.
  • Channel-open candidates are ranked by their earnings track record (keepers first, unknowns next, underperformers last); among unknowns, peers advertising splicing are preferred. clboss-track-record <nodeid> shows the verdict.
  • Many options are dynamic: lightning-cli setconfig changes them without a restart, and bad values are rejected instead of silently ignored.
  • New contrib tools: clboss-xrebalance-view (the rebalancer's view of your node and the request the next cycle would send) and cln-plugin-bounce.

Requirements and upgrading from 0.16.x

  • Core Lightning v26.04 or later (v25.09 is the hard floor; below v26.04 CLBOSS starts with a warning).
  • Install the xrebalance plugin, v0.4.5 or later, and load it alongside CLBOSS -- see "The xrebalance plugin" under Installing in the README. Without it CLBOSS runs everything except rebalancing.
  • Remove clboss-max-rebalance-fee-ppm from your configuration; lightningd refuses to start on an unknown option.
  • Development builds from between 0.16.x and this release created persistent askrene layers; see "Upgrading from 0.16.x" in CHANGELOG.md to remove them. Release builds of 0.16.x created none.

Reporting

  • The XRebalancer: log lines describe every cycle (candidates, floor, request, and the transfer summary). Please include them, your clboss-xrebalance-* settings, and the CLN and plugin versions in reports.

See CHANGELOG.md for details.

Don't miss a new clboss release

NewReleases is sending notifications on new releases.