feat: add configurable scoring fee/decay parameters#85
Open
pwltr wants to merge 1 commit into
Open
Conversation
0c4e847 to
44f9447
Compare
44f9447 to
35f70c2
Compare
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: 44f944731c
ℹ️ About Codex in GitHub
Codex has been enabled to automatically review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
When you sign up for Codex through ChatGPT, Codex can also answer questions or update the PR, like "@codex address that feedback".
35f70c2 to
d8d5363
Compare
piotr-iohk
reviewed
Jun 29, 2026
|
Also |
ed6ea2e to
5b9fe28
Compare
Author
piotr-iohk
approved these changes
Jun 29, 2026
piotr-iohk
left a comment
There was a problem hiding this comment.
utACK
I checked the latest head locally.
Verified:
cargo fmt --checkpasses now (only stable rustfmt warnings from unstable config keys).cargo test set_scoring_params_updates_builder_configpasses.- Previous Package.swift same-tag/checksum concern is addressed by bumping to
v0.7.0-rc.52. - The old Codex comments look outdated against the current diff.
Two things I’m not 100% sure about before/around merge:
bindings/python/pyproject.tomlstill shows0.7.0-rc.50while the other version files are0.7.0-rc.52. Maybe intentional if Python is not being released here.Package.swiftnow points tov0.7.0-rc.52, but I don’t see that GitHub release yet. Before consumers use this tag, we should publishv0.7.0-rc.52and verify theLDKNodeFFI.xcframework.zipchecksum matchesPackage.swift.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
This PR adds configurable pathfinding scorer parameters so apps can tune routing behavior instead of always using LDK defaults.
It introduces two new config surfaces:
ScoringFeeParameters(maps toProbabilisticScoringFeeParameters)ScoringDecayParameters(maps toProbabilisticScoringDecayParameters)These can now be set through:
Config(scoring_fee_params,scoring_decay_params)BuilderAPIs:set_scoring_fee_params(...)set_scoring_decay_params(...)At build time, ldk-node now uses configured scorer params when constructing/deserializing the
ProbabilisticScorerand router fee params, falling back to LDK defaults when unset.Why this is needed
Probe and payment outcomes are sensitive to scorer behavior (penalty model + decay dynamics). With hardcoded defaults, consumers cannot adapt routing to their environment (e.g., aggressive probing diversity vs conservative reliability). This change makes scorer behavior explicit