yyforyongyu
3109a8f3fe
discovery: pass banThreshold to banman
...
So we can configure it via gossip's config in a following commit.
2025-08-04 15:44:35 +08:00
yyforyongyu
343418cfdf
docs: update release notes
2025-08-04 15:44:34 +08:00
yyforyongyu
11c53b7212
discovery: increase peer's ban score when received skewed channel_update
2025-08-04 15:44:34 +08:00
yyforyongyu
c3780a230c
discovery: use handleBadPeer to increase peer's ban score
2025-08-04 15:44:34 +08:00
yyforyongyu
f1b2a47717
discovery: add new method handleBadPeer
...
So we can use the same piece of code elsewhere.
2025-08-04 15:44:34 +08:00
yyforyongyu
9cae62dcd7
discovery: only send node_announcement associated with channels
...
If a node doesn't have any channels, there's little point to send its
node_announcement as it cannot be used for routing.
2025-08-04 15:44:34 +08:00
yyforyongyu
f00073e62c
discovery: skip sending channel_announcement with no channel_updates
...
Base on BOLT07:
> If a channel_announcement has no corresponding channel_updates:
> - MUST NOT send the channel_announcement.
2025-08-04 15:44:33 +08:00
Yong
6c39b9a3d4
Merge pull request #10097 from Roasbeef/gossip-block-fix
...
multi: make gossip filter sends non-blocking, only allow a single backlog catch up goroutine per peer
2025-08-04 15:43:33 +08:00
Yong
149a81911a
Merge pull request #10087 from starius/estimate-feerate-allow-1
...
walletrpc: allow conf_target=1 in EstimateFee and FundPsbt
2025-08-04 14:08:42 +08:00
yyforyongyu
d0c07d76d2
docs: update release notes
2025-07-25 17:45:02 +08:00
yyforyongyu
03bf1974a3
lncfg: update docs about msg-rate-bytes and msg-burst-bytes
2025-07-25 17:41:00 +08:00
yyforyongyu
cadf870dcb
discovery: increase default msg rates to 1MB
2025-07-25 17:40:59 +08:00
yyforyongyu
19a6358a3e
docs: add release notes
2025-07-25 17:13:44 +08:00
yyforyongyu
10b4ed6c28
contractcourt: replace MarkChannelClosed with NotifyChannelResolved
2025-07-25 17:13:43 +08:00
yyforyongyu
d3501197be
contractcourt: add a new chan resolvedChan to handle resolved channels
...
Thus we can mark channels as resolved in an async way to avoid deadlock.
2025-07-25 17:13:43 +08:00
yyforyongyu
af2f935ab7
.github: add timeout when sending coverage reports
...
We also make it cancelable.
2025-07-18 15:41:46 +08:00
yyforyongyu
f2e1c11593
.github: remove github.job from the cache key and update docs
...
This commit adds a more descriptive docs about the caching process. In
addition, the `github.job` is now removed from the cache key
construction to allow jobs sharing the same cache. In addition, given we
now use `inputs.key-prefix`, the `github.job` is no longer relevant as
the `key-prefix` already creates a unique name for the cache.
We also update the lint and check commits job to use the same cache from
the unit test, given they are running in the same environment.
2025-07-18 15:41:46 +08:00
yyforyongyu
4b1a68778e
.github: use title case in job names
...
To unify the format used in job names.
2025-07-18 15:41:46 +08:00
yyforyongyu
a83dcaffae
.github: add new action cleanup-space
2025-07-18 15:41:44 +08:00
yyforyongyu
81ce5aad94
.github: run PR review stats only for side branches
2025-07-17 20:42:24 +08:00
yyforyongyu
db0927fb95
.github: auto clean caches older than 12 hours
2025-07-17 20:42:24 +08:00
yyforyongyu
4f98a0313a
.github: add write permission to delete caches
2025-07-17 20:42:24 +08:00
yyforyongyu
da2b3469dd
.github: move small tasks onto the same machine
...
Thus saving us from the overhead cost, also they can share the same
cache file.
2025-07-17 20:42:21 +08:00
yyforyongyu
77380debbc
.github: replace the aggressive cleanup with a more targeted one
...
This follows GitHub's official recommendation to avoid re-downloading
essential tools that setup-go might depend on
2025-07-17 16:02:35 +08:00
yyforyongyu
583b8562ab
.github: use module cache only whenever possible
2025-07-17 16:02:33 +08:00
yyforyongyu
9039cd1396
walletunlocker: assert new password can be used to open the store
2025-07-16 02:21:13 +08:00
yyforyongyu
c643c47288
walletunlocker: fix typos in the tests
2025-07-16 01:28:52 +08:00
yyforyongyu
3a6e656faa
walletunlocker: wait for goroutine to finish before exit
...
Make sure we wait for `doChangePassword` goroutine to finish before
exiting the test. We also remove the `openOrCreateTestMacStore` call
inside `doChangePassword` as it was never finished.
2025-07-16 01:28:52 +08:00
yyforyongyu
da277482bb
walletunlocker: add missing return and wrong password
...
We are missing a return here, and we are testing opening the macaroon db
using the new password, not the old one.
2025-07-16 01:28:51 +08:00
yyforyongyu
5d5e635c48
invoices: fix typos
2025-07-14 13:48:10 +08:00
yyforyongyu
5d0c787856
invoices: remove the global mock htlcModifierMock
...
This can create race in the tests.
2025-07-14 13:44:45 +08:00
yyforyongyu
18916daa0c
docs: update release notes
2025-07-11 04:11:31 +03:00
yyforyongyu
7a9f197de8
lnwire: simplify dyn decode methods
...
Remove the unnecessary convertions as suggested by Gemini.
2025-07-11 04:11:31 +03:00
yyforyongyu
91797ad1d2
lnwire: patch test and fix extra data in DynCommit
2025-07-11 04:11:31 +03:00
yyforyongyu
e6ab37305c
lnwire: add missing record LocalNonce
...
This record was never added to the `DynCommit`, but it's inherited from
the embedding msg `DynAck`.
2025-07-11 04:11:30 +03:00
yyforyongyu
f39c3679f2
lnwire: make LocalNonce an optional tlv record and fix extra data
...
It should be an optional record instead of an fn option. In addition,
its tlv type is bumped to be 14 as this record is also included in the
`DynCommit`. If we use tlv type 0, it will create a conflict in the msg
`DynCommit`, which is fixed in the following commit.
2025-07-11 04:11:30 +03:00
yyforyongyu
b7d2f68ed0
lnwire: patch uint test for DynAck
2025-07-11 04:11:30 +03:00
yyforyongyu
5961f7a1bd
lnwire: add method ParseAndExtractExtraData
...
Similar to `ParseAndExtractCustomRecords`, we now add this helper method
to make sure the extra data is parsed correctly.
2025-07-11 04:11:30 +03:00
yyforyongyu
e94ca84449
lnwire: fix encoding of MilliSatoshi
...
`MilliSatoshi` itself is already a `BigSize`, we just need to change the
decoding and encoding types to use that.
2025-07-11 04:11:29 +03:00
yyforyongyu
5e9365552c
lnwire: fix encoding ExtraData in DynPropose
...
Previously we encode all the fields plus extra data to the field
`ExtraData`, this is now fixed by encoding only unknown data to extra
data. For known records, they are already encoded into the message
fields.
2025-07-11 04:11:29 +03:00
yyforyongyu
61ef83e9c2
lnwire: patch unit test for DynPropose
2025-07-11 04:09:11 +03:00
yyforyongyu
0f1cb54eb2
lnwire: use BigSize for encoding btc amount
2025-07-11 04:09:11 +03:00
yyforyongyu
52d963bae0
itest+lntest: fix flake in testListSweeps
...
We now make sure we assert the `ListSweeps` results in a wait closure.
2025-07-09 20:52:02 +03:00
yyforyongyu
9fb0f77d8c
docs: update release docs
2025-07-07 16:01:04 +03:00
yyforyongyu
2b4c28204a
contractcourt: only close quit in Stop
...
Make sure we don't prematurely close the `quit` chans.
2025-07-07 15:46:47 +03:00
Yong
ff32e90d1d
Merge pull request #10035 from ziggie1984/fix-switch-deadlock
...
fix switch deadlock
2025-07-04 16:35:20 +03:00
yyforyongyu
bac8c51076
docs: update release notes
2025-07-04 04:20:00 +08:00
yyforyongyu
c4c519a3ae
itest+lncfg: test the quiescence timeout behaivor
2025-07-04 04:20:00 +08:00
yyforyongyu
56fd8eeb43
lntest: add RPC SubscribePeerEvents
...
And a few assertion helpers.
2025-07-04 04:19:59 +08:00
yyforyongyu
d44b480977
lnd: fix notifying peer online event too early
...
We need to notify the peer is online only when it has been started
successfully.
2025-07-04 04:19:59 +08:00
yyforyongyu
2a45e8a0fa
itest: fix testQuiescence
...
The original test lets Bob send an HTLC to Alice, but Bob doesn't have
any balance to begin with. This commit now fixes it by explicitly
checking sending payment is allowed before quiescence, and forbidden
after.
2025-07-04 04:19:59 +08:00
yyforyongyu
463f51d371
lncfg: enable quiescence in non-dev environment
2025-07-04 04:19:59 +08:00
yyforyongyu
127b0e9f41
multi: add new config QuiescenceTimeout
...
This commit makes removes the `defaultQuiescenceTimeout` and makes it
configurable as different nodes have different network environment. In
addition the default timeout has been increased from 30s to 60s.
2025-07-04 04:19:59 +08:00
Yong
ffd944e8b7
Merge pull request #10012 from ziggie1984/fix-goroutine-leak
...
multi: prevent goroutine leak in brontide
2025-07-03 20:11:31 +08:00
yyforyongyu
240593a399
htlcswitch: log the error returned from SendMessage
2025-07-03 19:51:35 +08:00
yyforyongyu
d6c3400e4e
docs: update release notes
2025-07-03 19:51:35 +08:00
yyforyongyu
d9369ae1a8
htlcswitch: remove unnecessary prand.Seed
2025-07-03 19:51:35 +08:00
yyforyongyu
1b6ca8827e
htlcswitch: fix linters
...
Fix a few linter errors - these were not caught before as they were
configured to be ignored.
2025-07-03 19:51:33 +08:00
yyforyongyu
2bb8b90afd
htlcswitch: fix error not checked
...
As required by the linter.
2025-07-03 19:50:58 +08:00
yyforyongyu
31e166a6b3
htlcswitch: add processLocalUpdateFaillHTLC
2025-07-03 19:50:30 +08:00
yyforyongyu
765714e750
htlcswitch: add processLocalUpdateFulfillHTLC
2025-07-03 19:50:29 +08:00
yyforyongyu
c42bf9b545
htlcswitch: log err in the end in handleUpstreamMsg
2025-07-03 19:50:29 +08:00
yyforyongyu
87b490dfc4
htlcswitch: add processRemoteError and processRemoteUpdateFee
2025-07-03 19:50:29 +08:00
yyforyongyu
4017104475
htlcswitch: add processRemoteRevokeAndAck
2025-07-03 19:50:29 +08:00
yyforyongyu
04abf96f60
htlcswitch: add processRemoteCommitSig
2025-07-03 19:50:29 +08:00
yyforyongyu
ad1566ee3f
htlcswitch: add processRemoteUpdateFailHTLC
2025-07-03 19:50:29 +08:00
yyforyongyu
e883a51a63
htlcswitch: add processRemoteUpdateFailMalformedHTLC
2025-07-03 19:50:28 +08:00
yyforyongyu
f9df5a9f51
htlcswitch: add processRemoteUpdateFulfillHTLC
2025-07-03 19:50:28 +08:00
yyforyongyu
212262bf88
htlcswitch: add processRemoteUpdateAddHTLC
2025-07-03 19:50:28 +08:00
yyforyongyu
83f658f714
htlcswitch: remove TODO and nolint
...
This old TODO is no longer relevant.
2025-07-03 19:50:28 +08:00
yyforyongyu
3af8281370
htlcswitch: add handler resumeLink
2025-07-03 19:50:25 +08:00
yyforyongyu
ca770bb4af
htlcswitch: notify channel active after reforwarding
...
The channel should only be considered active when its pending tasks are
finished, which includes,
1. sync channel state via reestablish.
2. send previous shutdown msg.
3. reset the mailbox's packets.
4. reforwarding logs loaded from restart.
When the above tasks are finished, the channel can be considered as
fully resumed from its previous disconnection.
2025-07-03 18:31:13 +08:00
yyforyongyu
09022b5f56
htlcswitch: add handler toggleBatchTicker
2025-07-03 18:31:12 +08:00
yyforyongyu
cccb447439
htlcswitch: add handler handleUpdateFee
2025-07-03 18:31:12 +08:00
yyforyongyu
e8b2035484
htlcswitch: add handler handleQuiescenceReq
2025-07-03 18:31:12 +08:00
yyforyongyu
30f9257a6b
htlcswitch: add handler handleHtlcResolution
2025-07-03 18:31:12 +08:00
yyforyongyu
43ea309f2c
lnrpc: update description for RoutingPolicy.CustomRecords
2025-07-01 19:59:51 +08:00
yyforyongyu
9ed32bddf3
docs: update release notes for 0.20
2025-07-01 19:59:50 +08:00
yyforyongyu
650e72518c
rpcserver: remove duplicate info from RoutingPolicy
...
We remove the inbound fee record from `RoutingPolicy.CustomRecords` as
we already have fields `InboundFeeBaseMsat` and `InboundFeeRateMilliMsat`.
2025-07-01 19:59:50 +08:00
yyforyongyu
624dc6c26a
lntest: assert CustomRecords fields on channel policy
...
Make sure the `CustomRecords` field is asserted.
2025-07-01 19:59:50 +08:00
yyforyongyu
bef90c6a84
watchtower: fix logging and add comments
2025-06-27 19:01:33 +08:00
yyforyongyu
c64e3a6c34
lnwire: fix linter
2025-06-25 14:53:22 +08:00
yyforyongyu
828486e35a
lnwire: fix unit test for DynCommit
2025-06-25 14:53:20 +08:00
yyforyongyu
8456aef9eb
gitignore: ignore test data from rapid
2025-06-25 02:50:51 +08:00
yyforyongyu
42089b19d6
lnwire: add DynCommit message to match spec
2025-06-25 01:10:54 +08:00
yyforyongyu
0e247641d7
itest: document and fix a wallet utxo flake
2025-06-23 22:18:54 +08:00
yyforyongyu
2c73a3fa7c
itest: remove extra UTXO used in sweeping tests
...
Given #8786 is now fixed, we no longer need extra UTXOs in these tests.
2025-06-23 22:18:31 +08:00
Yong
09df5894d0
Merge pull request #9947 from yyforyongyu/export-itest-db
...
lntest: add a flag to export data generated during the test
2025-06-23 21:33:31 +08:00
yyforyongyu
3b84088d4a
multi: enable passing flag basedir to make itest
2025-06-23 17:29:26 +08:00
yyforyongyu
343ae963b0
lntest: add a new basedir flag to keep test data
2025-06-23 17:29:26 +08:00
yyforyongyu
0d20e96e96
lntest: create GenBaseDir to generate the base dir
2025-06-23 17:28:48 +08:00
Yong
5ebb29309e
Merge pull request #9977 from starius/itest-bitcoind-neutrino
...
lntest: enable neutrino testing with bitcoind
2025-06-23 17:08:18 +08:00
Yong
a3209a5bfa
Merge pull request #9950 from starius/describegraph-authproofs2
...
lnrpc: add auth_proof to graph APIs
2025-06-20 14:54:03 +08:00
yyforyongyu
e47091063a
config: update docs for num-restricted-slots
2025-06-19 20:29:38 +08:00
yyforyongyu
250a61af6d
lnd: remove peer from peerChanInfo when necessary
...
We now remove the peer from `peerChanInfo` if this peer doesn't have
channels with us. Also patched a unit test for `removePeerAccess`.
2025-06-19 20:23:46 +08:00
yyforyongyu
32d8e2123d
channeldb+lnd: rename peerCounts to peerChanInfo for clarity
2025-06-19 16:48:13 +08:00
yyforyongyu
03de0f9e4b
funding+lnd: make sure accessman won't interrupt funding flow
...
If there's an error occured when updating the peer's status after the
channel status is changed, we now make sure we log the error instead of
letting it interrupt the channel open/close flow.
2025-06-19 16:05:59 +08:00
yyforyongyu
0dc10ba692
accessman+lnd: rename checkIncomingConnBanScore for clarity
2025-06-19 16:05:59 +08:00
yyforyongyu
869e541b7c
docs: add release notes for improved accessman
2025-06-19 16:05:59 +08:00
yyforyongyu
9caa5f220d
itest+lntest: add more itest for accessman
2025-06-19 16:05:59 +08:00