Commit Graph

157 Commits

Author SHA1 Message Date
Carsten Otto
fd3ec7353f add basic support for ratings 2022-06-03 10:58:52 +02:00
Carsten Otto
4796c6f592 fix: MPP self-payments
fixes #47
2022-05-30 22:23:33 +02:00
Carsten Otto
865e68a7d1 invalidate channel cache on in-flight change
this way the local balance returned is (more) accurate

fixes #42
2022-05-24 22:06:07 +02:00
Carsten Otto
7a784f90bc add toString 2022-05-22 23:32:58 +02:00
Carsten Otto
14d446bf9e add support for regtest network 2022-05-17 14:51:55 +02:00
Carsten Otto
da809d5dec do not fail on "old" channel ID 2022-05-17 08:46:50 +02:00
Carsten Otto
6adf408a3b parse and use route hints from invoices 2022-05-16 20:40:00 +02:00
Carsten Otto
215e0bc23b add MPP sender with payment loop 2022-05-15 17:58:03 +02:00
Carsten Otto
c00be96daa add shortcut for code 0 (no failure) that does not log 2022-05-14 10:59:57 +02:00
Carsten Otto
a13602e3d2 extend failure code handling 2022-05-14 00:07:22 +02:00
Carsten Otto
4f082d6f4a tweak upper bound wrt. in-flight amounts again, add clarifying comments 2022-05-13 22:47:45 +02:00
Carsten Otto
96d60d6bda read max htlc from policy 2022-05-13 18:31:05 +02:00
Carsten Otto
a9a233d067 add failure enum values 2022-05-13 18:02:16 +02:00
Carsten Otto
2d978b6d5f add test constants 2022-05-12 22:48:11 +02:00
Carsten Otto
8574e9d54b introduce "fee insufficient" failure code 2022-05-09 23:51:18 +02:00
Carsten Otto
2fa7a661c0 improve logging 2022-05-09 19:55:38 +02:00
Carsten Otto
a679181604 make liquidity information immutable, improve caching 2022-05-08 22:47:58 +02:00
Carsten Otto
85d0e66b15 refine test 2022-05-08 13:03:50 +02:00
Carsten Otto
721fc7e50f add tests 2022-05-08 13:03:50 +02:00
Carsten Otto
f4f1ef5697 fix another liquidity quirk 2022-05-06 21:51:51 +02:00
Carsten Otto
e40279857e fix liquidity computation: lower bound vs. in-flight 2022-05-06 21:28:57 +02:00
Carsten Otto
798f8cbfe5 fix probability computation 2022-05-05 19:46:42 +02:00
Carsten Otto
1815edddbc fix bound computation with amounts in flight 2022-05-04 22:15:59 +02:00
Carsten Otto
d1567f45d8 pay payment requests via pickhardt payments 2022-05-04 20:59:34 +02:00
Carsten Otto
57a1b5cafb sprinkle in a bit of synchronization 2022-05-03 21:28:11 +02:00
Carsten Otto
0438238367 add in flight at start of payment attempt 2022-05-03 20:57:48 +02:00
Carsten Otto
f62d67b8c4 track "in flight" amount 2022-05-03 18:56:30 +02:00
Carsten Otto
296240b52c reuse Coins.NONE object instance 2022-05-03 18:41:08 +02:00
Carsten Otto
3b74f41cb6 handle failures at end of route 2022-05-02 18:18:08 +02:00
Carsten Otto
34a35f9822 handle channel disabled / unknown next peer failures 2022-05-01 13:38:08 +02:00
Carsten Otto
d9836779e5 allow custom "maxAge" for liquidity bounds information 2022-04-30 17:31:04 +02:00
Carsten Otto
9279d43b44 avoid crash with conflicting liquidity information 2022-04-30 15:49:53 +02:00
Carsten Otto
0a84e83158 move models 2022-04-30 15:38:32 +02:00
Carsten Otto
e928c53eda move Edge to model module 2022-04-28 19:01:47 +02:00
Carsten Otto
5f4393b5ba use int instead of long for block height (expiry) 2022-04-27 20:35:16 +02:00
Carsten Otto
7076bdb53d add payment address to decoded payment request 2022-04-26 23:42:45 +02:00
Carsten Otto
76e717c9c3 decode payment requests 2022-04-24 18:54:23 +02:00
Carsten Otto
e7926a81f7 revert recent policy change
a policy now (again) contains the expiry delta settings of the peer setting the policy
2022-04-24 10:40:19 +02:00
Carsten Otto
5b080874c6 compute total expiry and per hop 2022-04-23 23:10:48 +02:00
Carsten Otto
17366cfca8 add time lock delta to policy 2022-04-23 15:17:13 +02:00
Carsten Otto
a050d3a7b4 Revert "treat local channels as free"
The modified policy is used to compute the fee for the
first hop (even though it is not paid). As such, it must
not be modified.

This reverts commit ed69174c10.
2022-04-23 12:55:11 +02:00
Carsten Otto
ed69174c10 treat local channels as free 2022-04-23 12:46:51 +02:00
Carsten Otto
514afc6b39 refactor, extend, fix and add tests 2022-04-22 19:59:28 +02:00
danielbroll
c396bc351d fix(hardcoded): extract hardcoded node aliases to "hardcoded" module (and make it configurable) 2022-04-22 19:59:28 +02:00
Carsten Otto
d68efdcbab keep information about liquidity bounds
and use it for pickhardt payments
2022-04-12 22:44:20 +02:00
Carsten Otto
cc91aedcfd add basic middleware support 2022-04-10 19:39:04 +02:00
Carsten Otto
dd4d2074ea remove expensive regular expression matching for pubkeys 2022-04-02 17:58:20 +02:00
Carsten Otto
812f7062ae compute hashcode once 2022-04-02 17:07:09 +02:00
Carsten Otto
1f889bf648 compare pubkeys via byte[] data 2022-04-02 16:35:22 +02:00
Carsten Otto
4ac6c796b0 normalize unit cost for large channel
with this the effect of the fee rate weight does
not depend on the size of the largest channel
2022-04-02 02:01:26 +02:00