59 Commits

Author SHA1 Message Date
067ba38668 Fix exceptions for no CLN nodes 2023-05-25 04:19:45 -07:00
5ff70bccb7 Add core-lightning as backend lightning node vendor (#611)
* Add CLN node backend image and service (#418)

* Add cln service

* Add hodlvoice Dockerfile and entrypoint

* Add lnnode vendor switch (#431)

* Add LNNode vendor switch

* Add CLN version to frontend and other fixes

* init

* first draft

* add unsettled_local_balance and unsettled_remote_balance

* gen_hold_invoice now takes 3 more variables to build a label for cln

* remove unneeded payment_hash from gen_hold_invoice

* remove comment

* add get_cln_version

* first draft of clns follow_send_payment

* fix name of get_lnd_version

* enable flake8

* flake8 fixes

* renaming cln file, class and get_version

* remove lnd specific commented code

* get_version: add try/except, refactor to top to mimic lnd.py

* rename htlc_cltv to htlc_expiry

* add clns lookup_invoice_status

* refactored double_check_htlc_is_settled to the end to match lnds file

* fix generate_rpc

* Add sample environmental variables, small fixes

* Fix CLN gRPC port

* Fix gen_hold_invoice, plus some other tiny fixes (#435)

* Fix channel_balance to use int object inside Amount (#438)

* Add CLN/LND volume to celery-beat service

* Add CLN/LND volume to celery-beat service

* Bump CLN to v23.05

* changes for 0.5 and some small fixes

* change invoice expiry from absolute to relative duration

* add try/except to catch timeout error

* fix failure_reason to be ln_payment failure reasons, albeit inaccurate sometimes

* refactor follow_send_payment and add pending check to expired case

* fix status comments

* add send_keysend method

* fix wrong state ints in cancel and settle

* switch to use hodlinvoicelookup in double_check

* move pay command after lnpayment status update

* remove loop in follow_send_payment and add error result for edge case

* fix typeerror for payment_hash

* rework follow_send_payment logic and payment_hash, watch harder if pending

* use fully qualified names for status instead of raw int

* missed 2 status from prev commit

* Always copy the cln-grpc-hodl plugin on start up

* Fix ALLOW_SELF_KEYSEND linting error

* Fix missing definition of failure_reason

---------

Co-authored-by: daywalker90 <admin@noserver4u.de>
2023-05-22 14:56:15 +00:00
20f4a7b471 Add qualified lnd grpc variables 2023-05-21 15:22:15 -07:00
0a620901a7 Add keysend devfund donations functionality (#589) 2023-05-16 17:12:15 +00:00
b0ffe150c0 Refactor expiry_height into follow_invoices 2023-05-13 08:51:22 -07:00
3b77a473f8 Coordinator db performance clean up (#561)
* Improve DB writes performance and concurrency. Add order coordinator proceeds field.

* Fix checks on order GET inducing 400
2023-05-08 12:49:21 -07:00
a1f0a85646 Small fixes 2023-05-01 10:35:55 -07:00
75f04579ed Refactor models into a module (#481)
* Refactor models into a module

* Rename Profile model as Robot

* Underscore numeric literals
2023-05-01 10:30:53 +00:00
c693faacde Optimize follow-invoices service performance (#480) 2023-04-30 13:46:23 +00:00
b1e9081ff8 Handle expired invoices that are in_flight 2023-04-25 04:46:07 -07:00
52df958be8 Add full semver string (v) 2023-04-23 13:44:38 -07:00
df7f034667 Small variable name fixes 2023-04-22 12:41:17 -07:00
ac24c310c5 Refactor LNNode, use versioner for LND get_version, refactor macaroon (#432)
* Add Versioner rpc, use versioner for LND get_version, refactor macaroon

* Move LND specific rpc calls from the follow-invoices thread to LNNode

* Move LND specific rpc calls from tasks to LNNode
2023-04-22 18:54:03 +00:00
9158bd4c98 Fix reject too low mining fees (< 12 blocks conf target) 2023-03-17 15:06:15 -07:00
94bc44ad0e Improve tasks reliability (#390)
* Add broadcasted flag

* Improve celery tasks reliability
2023-03-16 00:53:37 +00:00
82c8f2280b Add MAX_SWAP_AMOUNT envvar (#389) 2023-03-14 19:54:31 +00:00
42f208fad4 Fix race condition onchain (#388)
* Fix race condition swaps

* Collect new phrases

* Increase random delay interval
2023-03-14 17:23:11 +00:00
ef55207812 Add envvar for spend_unconfirmed 2023-03-10 04:52:33 -08:00
b02fdcb084 Deprecate old routing budget pipeline (#347)
Delete old routing budget routines. Clients older than 0.3.1 are now incompatible!
2023-02-10 13:34:35 +00:00
86e6bed37c Add advanced options to LN payout form (#326)
* Add advanced options to LN payout form

* Complete amount calcs

* Temporary working solution for lnproxy web only (uses text instead of json)

* Update LNpayment model and logics to use user's routing budget

* Add handle lnproxyserver networks (i2p, tor, clearnet) / (mainnet,testnet)

* Small fixes
2022-11-24 17:42:30 +00:00
7643e524f1 Fix all files with pre-commit 2022-10-25 11:04:12 -07:00
5723cde20e Fix onchain payouts bug 2022-10-22 07:23:22 -07:00
4d5c60239f Conform to pep8 rules (#295)
* Conform to pep8 rules

* Fix some more flake8 linting errors
2022-10-20 20:53:51 +00:00
3d3da78f8a Fix code style issues with Black 2022-10-20 09:56:10 +00:00
8423896285 Tight CLTV expiry dynamically 2022-07-21 06:19:47 -07:00
c12c18a5c7 Update wallet docs relating to Muun 2022-06-21 05:07:45 -07:00
43b85d79d4 Fix invoice payouts. Add onchain summary to accounting days. 2022-06-16 15:48:35 -07:00
5c87c5ad85 Add UI elements for swap fee and TXID payout. Fix bugs. 2022-06-16 13:01:10 -07:00
efed6b3c0a Pay buyer onchain-tx 2022-06-16 08:31:30 -07:00
cf82a4d6ae Add onchain logics pt2 2022-06-06 13:37:51 -07:00
8d0b518222 Add onchain logics pt1 2022-06-06 10:57:04 -07:00
f538d26355 Create Balance model and log task 2022-06-06 02:32:39 -07:00
4ac3618fd7 Add routing timeout to .env 2022-06-05 09:15:40 -07:00
d24e01f1f5 Add validation of invoice based on total cost of routing hints 2022-05-26 16:35:45 -07:00
d48ee9ced4 Add explicit routing failure reasons for users 2022-05-19 07:00:55 -07:00
ca79ea9914 Init accounting panel, add import/export 2022-03-20 16:32:25 -07:00
a616e4945e Fix reward withdrawal failure handling 2022-03-09 03:35:50 -08:00
255dae188d Implement withdraw rewards (backend & frontend) 2022-03-06 08:08:28 -08:00
fc4ccd5281 Re-format all python code 2022-02-17 11:50:10 -08:00
96be0d8f80 Dockerize dev stack, now fully functional 2022-02-09 11:45:11 -08:00
db2d7cc922 Small fixes 2022-02-06 06:50:42 -08:00
24347682c3 Improve routing within app components 2022-01-31 04:53:20 -08:00
58ecb607c3 Add setup background threads. Minor fixes and cosmetic. 2022-01-30 07:18:03 -08:00
64115a8bb5 Remodel usergen form. Add fee limit hparams. 2022-01-30 05:18:32 -08:00
753e80c589 Fix explicit sats frontend. Fix float max sats routing fee 2022-01-27 09:43:17 -08:00
d2dbc0d249 Add async background catches expiry height 2022-01-25 07:20:56 -08:00
5a677067f7 Record expiry height into lnpayment and admin panel 2022-01-25 06:46:02 -08:00
25ab5fdf2e Add invoice expiry paddingas temporary fix for order expire at invoice expire. 2022-01-24 10:34:52 -08:00
51d65fd15e Implement CLTV_expiries for each hold invoice duration. Invoice expiry matches status time to lock it. 2022-01-24 09:54:44 -08:00
eddd4674f6 Add admin background task: follow all active hold invoices 2022-01-17 08:41:55 -08:00