Conversation
|
Pushed 555d5db: dropped the changelog entry from this PR; the release PR adds it in the fork's single section. Dispatched the Rust CI on this branch: https://github.com/synonymdev/ldk-node/actions/runs/36661558748 |
|
The Rust CI run on this branch (https://github.com/synonymdev/ldk-node/actions/runs/36661558748) failed in "build (ubuntu-latest, stable)", and fail-fast cancelled the other jobs. The failure is on |
…alue A node that cannot announce channels only accepts unannounced ones, so LDK's default of 10% of the channel value as maximum inbound HTLC value in flight capped every single incoming payment far below the inbound capacity. Set it to 100% for such nodes, as already done for unannounced channels we open ourselves. The integration test opens a channel to a node without a node alias and pays it 9% and 20% of the channel value; the second payment fails without the change.
555d5db to
fdb891c
Compare
|
Pushed fdb891c: rebased onto On the failed Rust CI run: the failing step is |
Codex Review SummaryThis comment shows the latest Codex review activity on this pull request.
ℹ️ About Codex in GitHubYour team has set up Codex to review pull requests in this repo. Reviews are triggered when you
Codex reacts with 👀 while any review is running, comments if it has suggestions, and reacts with 👍 once all reviews finish with no findings. |
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: fdb891c145
ℹ️ About Codex in GitHub
Your team has set up Codex to 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 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
The default_user_config branch that sets the maximum inbound HTLC value in flight to 100% now has focused unit tests: a node without alias and listening addresses, one without listening addresses, one without alias, and a node that can announce channels, which keeps LDK's default.
|
Pushed 4a7e44d: adds the unit test |
Refs:
Description
inbound_htlc_in_flight_limit_for_unannounced_node: opens a 1,000,000 sat channel to a node without an alias, pays it 9% (works with and without the change) and 20% of the channel value (fails withPaymentSendingFailedwithout the change).inbound_htlc_value_in_flight_limit_follows_announce_abilityfor thedefault_user_configbranch: no alias and no listening addresses, only one of them missing, and a node that can announce channels (keeps LDK's default).2867d5c1a, in the 0.3 pre-releases); the fork is on LDK 0.2.0, where it is still 10%.Out of Scope
src/builder.rs,src/event.rs: the LSPS2 paths keep their own 100% override.unannounced_channel_max_inbound_htlc_value_in_flight_percentage); when the fork moves to an LDK release with that option, this override can be removed.rust.yml, manual dispatch only) fails onmainin its UniFFI build, see QA Notes; fixing it is a separate change.QA Notes
Automated Checks
inbound_htlc_in_flight_limit_for_unannounced_nodeintests/integration_tests_rust.rs: fails onmain(a payment above 10% of the channel value must be routable: PaymentSendingFailed), passes with the change.inbound_htlc_value_in_flight_limit_follows_announce_abilityinsrc/config.rs: fails with thedefault_user_configchange removed (left: 10, right: 100), passes with it.rust.ymllocally on the rebased headfdb891c1(stable 1.98.1):cargo fmt --check,cargo build,cargo doc(release and private items) andcargo check --releasepass, as do the 120 unit tests with--features uniffi.--cfg no_download, with and without--features uniffi: all pass except the tests below.reorg_testand the 110 tests ofmulti_address_types_testspass (test_multi_wallet_all_combinationsfailed once withInvalidSocketAddressin a parallel run and passes alone).splice_channeland the eightchannel_full_cycle*tests hang at their splice step.splice_channelhangs the same way onmain(6d24c44), so the cause is not this change; these need the hosted run.build (ubuntu-latest, stable)fails in the stepBuild with UniFFI support on Rust stable(cargo build --features uniffiwithRUSTFLAGS=-D warnings) with 5 errors: four unused imports insrc/ffi/types.rsand the deprecatedbitcoin::FeeRate::from_sat_per_vb_uncheckedused by theFeeRateconstructor inbindings/ldk_node.udl. They are warnings in a plain build, which is why the app builds work, and the same 5 errors appear withmain's tree; this PR touches none of those files.rust.ymlonly runs on manual dispatch and no recent merged PR (fix: report on-chain broadcast outcomes #119, fix: restore android release publishing #121) ran it.Manual Tests
master(2.5.0) on a regtest LND channel of 1,000,000 sats, with alibldk_nodebuilt from 0.7.0-rc.66 plus this one-line change swapped in: the channel is accepted withmax_htlc_value_in_flight_msat: 1000000000(was100000000), and single payments of 110,000 sats (11%) and 500,000 sats (50%) succeed with "Received Instant Bitcoin". Without the change the 11% payment fails.