diff --git a/.github/workflows/ci.yaml b/.github/workflows/ci.yaml index de198b3cc678..4c609e71a107 100644 --- a/.github/workflows/ci.yaml +++ b/.github/workflows/ci.yaml @@ -481,8 +481,7 @@ jobs: uv run eatmydata pytest tests/ -vvv -n 2 ${PYTEST_OPTS} ${{ matrix.PYTEST_OPTS }} update-docs-examples: - name: Update examples in doc schemas (disabled temporarily!) - if: false + name: Update examples in doc schemas runs-on: ubuntu-22.04 timeout-minutes: 30 strategy: @@ -608,6 +607,7 @@ jobs: - check-units - integration-valgrind - integration-sanitizers + - update-docs-examples - min-btc-support if: ${{ always() }} steps: diff --git a/Makefile b/Makefile index 04f2f3a262e2..b3ddec5b2b83 100644 --- a/Makefile +++ b/Makefile @@ -577,7 +577,7 @@ check-tmpctx: @if git grep -n 'tal_free[(]tmpctx)' | grep -Ev '^ccan/|/test/|^common/setup.c:|^common/utils.c:'; then echo "Don't free tmpctx!">&2; exit 1; fi check-discouraged-functions: - @if git grep -E "[^a-z_/](fgets|fputs|gets|scanf|sprintf)\(" -- "*.c" "*.h" ":(exclude)ccan/" ":(exclude)contrib/"; then exit 1; fi + @if git grep -nE "[^a-z_/](fgets|fputs|gets|scanf|sprintf|randombytes_buf|time_now)\(" -- "*.c" "*.h" ":(exclude)ccan/" ":(exclude)contrib/" | grep -Fv '/* discouraged:'; then exit 1; fi # Don't access amount_msat and amount_sat members directly without a good reason # since it risks overflow. @@ -590,14 +590,18 @@ repeat-doc-examples: echo "----------------------------------" >> tests/autogenerate-examples-repeat.log; \ echo "Iteration $$i" >> tests/autogenerate-examples-repeat.log; \ echo "----------------------------------" >> tests/autogenerate-examples-repeat.log; \ - VALGRIND=0 TIMEOUT=40 TEST_DEBUG=1 GENERATE_EXAMPLES=1 pytest -vvv tests/autogenerate-rpc-examples.py; \ + VALGRIND=0 TIMEOUT=40 TEST_DEBUG=1 GENERATE_EXAMPLES=1 CLN_NEXT_VERSION=$(CLN_NEXT_VERSION) pytest -vvv tests/autogenerate-rpc-examples.py; \ git diff >> tests/autogenerate-examples-repeat.log; \ git reset --hard; \ echo "----------------------------------" >> tests/autogenerate-examples-repeat.log; \ done update-doc-examples: - TEST_DEBUG=1 VALGRIND=0 GENERATE_EXAMPLES=1 $(PYTEST) $(PYTEST_OPTS) --timeout=1200 tests/autogenerate-rpc-examples.py && $(MAKE) $(MSGGEN_GEN_ALL) + TEST_DEBUG=1 VALGRIND=0 GENERATE_EXAMPLES=1 CLN_NEXT_VERSION=$(CLN_NEXT_VERSION) $(PYTEST) $(PYTEST_OPTS) --timeout=1200 tests/autogenerate-rpc-examples.py && $(MAKE) $(MSGGEN_GEN_ALL) + +# If you changed tests/autogenerate-rpc-examples.py to require new blocks, you have to run this: +update-doc-examples-newchain: + TEST_DEBUG=1 VALGRIND=0 GENERATE_EXAMPLES=1 CLN_NEXT_VERSION=$(CLN_NEXT_VERSION) REGENERATE_BLOCKCHAIN=1 $(PYTEST) $(PYTEST_OPTS) --timeout=1200 tests/autogenerate-rpc-examples.py && $(MAKE) $(MSGGEN_GEN_ALL) check-doc-examples: update-doc-examples git diff --exit-code HEAD diff --git a/bitcoin/script.c b/bitcoin/script.c index 63974644a34c..18461a8396b4 100644 --- a/bitcoin/script.c +++ b/bitcoin/script.c @@ -187,17 +187,6 @@ u8 *scriptpubkey_p2pkh(const tal_t *ctx, const struct bitcoin_address *addr) return script; } -u8 *scriptpubkey_opreturn_padded(const tal_t *ctx) -{ - u8 *script = tal_arr(ctx, u8, 0); - u8 random[20]; - randombytes_buf(random, sizeof(random)); - - add_op(&script, OP_RETURN); - script_push_bytes(&script, random, sizeof(random)); - return script; -} - /* Create an input script which spends p2pkh */ u8 *bitcoin_redeem_p2pkh(const tal_t *ctx, const struct pubkey *pubkey, const struct bitcoin_signature *sig) diff --git a/bitcoin/script.h b/bitcoin/script.h index 5b96d696ff15..c0a005c17d57 100644 --- a/bitcoin/script.h +++ b/bitcoin/script.h @@ -27,12 +27,6 @@ u8 *scriptpubkey_p2sh_hash(const tal_t *ctx, const struct ripemd160 *redeemhash) /* Create an output script using p2pkh */ u8 *scriptpubkey_p2pkh(const tal_t *ctx, const struct bitcoin_address *addr); -/* Create a prunable output script with 20 random bytes. - * This is needed since a spend from a p2wpkh to an `OP_RETURN` without - * any other outputs would result in a transaction smaller than the - * minimum size. */ -u8 *scriptpubkey_opreturn_padded(const tal_t *ctx); - /* Create an input script which spends p2pkh */ u8 *bitcoin_redeem_p2pkh(const tal_t *ctx, const struct pubkey *pubkey, const struct bitcoin_signature *sig); diff --git a/bitcoin/short_channel_id.c b/bitcoin/short_channel_id.c index cc1de68c4377..98fe4748b714 100644 --- a/bitcoin/short_channel_id.c +++ b/bitcoin/short_channel_id.c @@ -1,7 +1,7 @@ #include "config.h" #include #include -#include +#include #include #include @@ -104,6 +104,6 @@ struct short_channel_id fromwire_short_channel_id(const u8 **cursor, size_t *max struct short_channel_id random_scid(void) { struct short_channel_id scid; - randombytes_buf(&scid, sizeof(scid)); + randbytes(&scid, sizeof(scid)); return scid; } diff --git a/bitcoin/test/Makefile b/bitcoin/test/Makefile index 7b15ab9ae07f..fd29ff5907ce 100644 --- a/bitcoin/test/Makefile +++ b/bitcoin/test/Makefile @@ -2,7 +2,7 @@ BITCOIN_TEST_SRC := $(wildcard bitcoin/test/run-*.c) BITCOIN_TEST_OBJS := $(BITCOIN_TEST_SRC:.c=.o) BITCOIN_TEST_PROGRAMS := $(BITCOIN_TEST_OBJS:.o=) -BITCOIN_TEST_COMMON_OBJS := common/utils.o common/setup.o common/autodata.o +BITCOIN_TEST_COMMON_OBJS := common/utils.o common/setup.o common/autodata.o common/clock_time.o $(BITCOIN_TEST_PROGRAMS): $(BITCOIN_TEST_COMMON_OBJS) bitcoin/chainparams.o $(BITCOIN_TEST_OBJS): $(CCAN_HEADERS) $(BITCOIN_HEADERS) $(BITCOIN_SRC) diff --git a/bitcoin/test/run-secret_eq_consttime.c b/bitcoin/test/run-secret_eq_consttime.c index 4f21ee191f11..bfba7ceb5029 100644 --- a/bitcoin/test/run-secret_eq_consttime.c +++ b/bitcoin/test/run-secret_eq_consttime.c @@ -22,7 +22,7 @@ static struct timerel const_time_test(struct secret *s1, struct secret *s2, size_t off) { - struct timeabs start, end; + struct timemono start, end; int result = 0; memset(s1, 0, RUNS * sizeof(*s1)); @@ -31,16 +31,16 @@ static struct timerel const_time_test(struct secret *s1, for (size_t i = 0; i < RUNS; i++) s2[i].data[off] = i; - start = time_now(); + start = time_mono(); for (size_t i = 0; i < RUNS; i++) result += secret_eq_consttime(&s1[i], &s2[i]); - end = time_now(); + end = time_mono(); if (result != RUNS / 256) errx(1, "Expected %u successes at offset %zu, not %u!", RUNS / 256, off, result); - return time_between(end, start); + return timemono_between(end, start); } static inline bool secret_eq_nonconst(const struct secret *a, @@ -53,7 +53,7 @@ static struct timerel nonconst_time_test(struct secret *s1, struct secret *s2, size_t off) { - struct timeabs start, end; + struct timemono start, end; int result = 0; memset(s1, 0, RUNS * sizeof(*s1)); @@ -62,16 +62,16 @@ static struct timerel nonconst_time_test(struct secret *s1, for (size_t i = 0; i < RUNS; i++) s2[i].data[off] = i; - start = time_now(); + start = time_mono(); for (size_t i = 0; i < RUNS; i++) result += secret_eq_nonconst(&s1[i], &s2[i]); - end = time_now(); + end = time_mono(); if (result != RUNS / 256) errx(1, "Expected %u successes at offset %zu, not %u!", RUNS / 256, off, result); - return time_between(end, start); + return timemono_between(end, start); } static struct secret *s1, *s2; diff --git a/channeld/Makefile b/channeld/Makefile index 7edcd460ae4d..cd7aae387548 100644 --- a/channeld/Makefile +++ b/channeld/Makefile @@ -48,6 +48,7 @@ CHANNELD_COMMON_OBJS := \ common/channel_config.o \ common/channel_id.o \ common/channel_type.o \ + common/clock_time.o \ common/cryptomsg.o \ common/daemon.o \ common/daemon_conn.o \ @@ -84,6 +85,7 @@ CHANNELD_COMMON_OBJS := \ common/psbt_open.o \ common/psbt_internal.o \ common/pseudorand.o \ + common/randbytes.o \ common/read_peer_msg.o \ common/setup.o \ common/status.o \ diff --git a/channeld/full_channel.c b/channeld/full_channel.c index 699ccdf40ca4..cf27c69c11ad 100644 --- a/channeld/full_channel.c +++ b/channeld/full_channel.c @@ -17,12 +17,6 @@ /* Needs to be at end, since it doesn't include its own hdrs */ #include "full_channel_error_names_gen.h" -static void memleak_help_htlcmap(struct htable *memtable, - struct htlc_map *htlcs) -{ - memleak_scan_htable(memtable, &htlcs->raw); -} - /* This is a dangerous thing! Because we apply HTLCs in many places * in bulk, we can temporarily go negative. You must check balance_ok() * at the end! */ @@ -113,11 +107,9 @@ struct channel *new_full_channel(const tal_t *ctx, option_wumbo, opener); - if (channel) { - channel->htlcs = tal(channel, struct htlc_map); - htlc_map_init(channel->htlcs); - memleak_add_helper(channel->htlcs, memleak_help_htlcmap); - } + if (channel) + channel->htlcs = new_htable(channel, htlc_map); + return channel; } diff --git a/channeld/test/Makefile b/channeld/test/Makefile index 67bc5a79769f..7e447f598439 100644 --- a/channeld/test/Makefile +++ b/channeld/test/Makefile @@ -21,6 +21,7 @@ CHANNELD_TEST_COMMON_OBJS := \ common/msg_queue.o \ common/permute_tx.o \ common/pseudorand.o \ + common/randbytes.o \ common/setup.o \ common/utils.o diff --git a/channeld/test/run-commit_tx.c b/channeld/test/run-commit_tx.c index 5f0a636bdd4b..4df740c41ec4 100644 --- a/channeld/test/run-commit_tx.c +++ b/channeld/test/run-commit_tx.c @@ -15,6 +15,7 @@ static bool print_superverbose; #include #include #include +#include #include #include diff --git a/cli/Makefile b/cli/Makefile index 82dea907ea61..05c07100d9d1 100644 --- a/cli/Makefile +++ b/cli/Makefile @@ -10,6 +10,7 @@ LIGHTNING_CLI_COMMON_OBJS := \ common/configdir.o \ common/configvar.o \ common/json_parse_simple.o \ + common/memleak.o \ common/status_levels.o \ common/utils.o \ common/version.o diff --git a/cli/test/Makefile b/cli/test/Makefile index 6f9c9bea6579..3f587e8c098b 100644 --- a/cli/test/Makefile +++ b/cli/test/Makefile @@ -15,6 +15,7 @@ CLI_TEST_COMMON_OBJS := \ common/htlc_state.o \ common/json_parse_simple.o \ common/pseudorand.o \ + common/randbytes.o \ common/memleak.o \ common/msg_queue.o \ common/setup.o \ diff --git a/closingd/Makefile b/closingd/Makefile index 1c3953c14f20..c48d4db0f392 100644 --- a/closingd/Makefile +++ b/closingd/Makefile @@ -25,6 +25,7 @@ CLOSINGD_COMMON_OBJS := \ common/bigsize.o \ common/bip32.o \ common/channel_id.o \ + common/clock_time.o \ common/close_tx.o \ common/cryptomsg.o \ common/daemon.o \ @@ -47,6 +48,7 @@ CLOSINGD_COMMON_OBJS := \ common/psbt_keypath.o \ common/psbt_open.o \ common/pseudorand.o \ + common/randbytes.o \ common/status_wiregen.o \ common/read_peer_msg.o \ common/setup.o \ diff --git a/common/Makefile b/common/Makefile index dec98e099b26..b8b50eff7b0a 100644 --- a/common/Makefile +++ b/common/Makefile @@ -21,6 +21,7 @@ COMMON_SRC_NOGEN := \ common/channel_config.c \ common/channel_id.c \ common/channel_type.c \ + common/clock_time.c \ common/close_tx.c \ common/codex32.c \ common/coin_mvt.c \ @@ -85,6 +86,7 @@ COMMON_SRC_NOGEN := \ common/psbt_keypath.c \ common/psbt_open.c \ common/pseudorand.c \ + common/randbytes.c \ common/random_select.c \ common/read_peer_msg.c \ common/route.c \ diff --git a/common/blindedpath.h b/common/blindedpath.h index b84869351070..b0c96e0dd2cb 100644 --- a/common/blindedpath.h +++ b/common/blindedpath.h @@ -23,7 +23,7 @@ struct tlv_encrypted_data_tlv_payment_relay; * @next_path_privkey: (out) e(i+1), the next blinding secret (optional) * @node_alias: (out) the blinded pubkey of the node to tell the recipient. * - * You create a blinding secret using randombytes_buf(), then call this + * You create a blinding secret using randbytes(), then call this * iteratively for each node in the path. */ u8 *encrypt_tlv_encrypted_data(const tal_t *ctx, diff --git a/common/clock_time.c b/common/clock_time.c new file mode 100644 index 000000000000..e3a982d77e4f --- /dev/null +++ b/common/clock_time.c @@ -0,0 +1,36 @@ +#include "config.h" +#include +#include + +static bool used = false; +static struct timeabs dev_override; + +bool clock_time_overridden(void) +{ + return dev_override.ts.tv_sec != 0; +} + +struct timeabs clock_time(void) +{ + used = true; + if (!clock_time_overridden()) + return time_now(); /* discouraged: use clock_time so we can override */ + + return dev_override; +} + +struct timeabs clock_time_progresses_(u64 *progress) +{ + if (!clock_time_overridden()) + return clock_time(); + + return timeabs_add(dev_override, time_from_sec((*progress)++)); +} + +void dev_override_clock_time(struct timeabs now) +{ + assert(!used); + + dev_override = now; + assert(clock_time_overridden()); +} diff --git a/common/clock_time.h b/common/clock_time.h new file mode 100644 index 000000000000..a267abf461d9 --- /dev/null +++ b/common/clock_time.h @@ -0,0 +1,19 @@ +#ifndef LIGHTNING_COMMON_CLOCK_TIME_H +#define LIGHTNING_COMMON_CLOCK_TIME_H +#include "config.h" +#include +#include + +/* We use this instead of time_now, for overriding when we want reproducibility */ +struct timeabs clock_time(void); + +/* If you need a clock that progresses even when reproducible, use this. */ +#define clock_time_progresses() ({static u64 progress; clock_time_progresses_(&progress);}) +struct timeabs clock_time_progresses_(u64 *progress); + +/* dev setting to override time */ +void dev_override_clock_time(struct timeabs now); + +/* Did someone override time? */ +bool clock_time_overridden(void); +#endif /* LIGHTNING_COMMON_CLOCK_TIME_H */ diff --git a/common/coin_mvt.c b/common/coin_mvt.c index 4e9ec871e0a6..b15663aaaf17 100644 --- a/common/coin_mvt.c +++ b/common/coin_mvt.c @@ -3,7 +3,7 @@ #include #include #include -#include +#include #include #include #include @@ -154,6 +154,12 @@ static enum mvt_tag mvt_tag_in_db(enum mvt_tag mvt_tag) abort(); } +/* This puts the coin movements in order */ +u64 coinmvt_current_time(void) +{ + return clock_time_progresses().ts.tv_sec; +} + const char *mvt_tag_str(enum mvt_tag tag) { assert((unsigned)tag < NUM_MVT_TAGS); @@ -337,7 +343,7 @@ static struct chain_coin_mvt *new_chain_coin_mvt_sat(const tal_t *ctx, assert(ok); return new_chain_coin_mvt(ctx, channel, account_name, - time_now().ts.tv_sec, tx_txid, + coinmvt_current_time(), tx_txid, outpoint, payment_hash, blockheight, tags, direction, amt_msat, /* All amounts that are sat are @@ -392,7 +398,7 @@ struct chain_coin_mvt *new_coin_channel_close(const tal_t *ctx, tags = mk_mvt_tags(MVT_CHANNEL_CLOSE); mvt = new_chain_coin_mvt(ctx, channel, alt_account, - time_now().ts.tv_sec, txid, + coinmvt_current_time(), txid, out, NULL, blockheight, tags, COIN_DEBIT, amount, @@ -420,7 +426,7 @@ struct chain_coin_mvt *new_coin_channel_open_proposed(const tal_t *ctx, if (is_leased) mvt_tag_set(&tags, MVT_LEASED); - mvt = new_chain_coin_mvt(ctx, channel, NULL, time_now().ts.tv_sec, + mvt = new_chain_coin_mvt(ctx, channel, NULL, coinmvt_current_time(), NULL, out, NULL, 0, tags, COIN_CREDIT, amount, output_val, 0); @@ -473,7 +479,7 @@ struct chain_coin_mvt *new_coin_channel_open(const tal_t *ctx, bool is_leased) { return new_coin_channel_open_general(ctx, channel, NULL, - time_now().ts.tv_sec, + coinmvt_current_time(), out, peer_id, blockheight, amount, output_val, is_opener, is_leased); } @@ -515,7 +521,7 @@ struct chain_coin_mvt *new_coin_external_spend(const tal_t *ctx, struct mvt_tags tags) { return new_chain_coin_mvt(ctx, NULL, ACCOUNT_NAME_EXTERNAL, - time_now().ts.tv_sec, txid, + coinmvt_current_time(), txid, outpoint, NULL, blockheight, tags, COIN_CREDIT, AMOUNT_MSAT(0), amount, 0); @@ -583,7 +589,7 @@ struct channel_coin_mvt *new_coin_channel_push(const tal_t *ctx, struct mvt_tags tags) { return new_coin_channel_push_general(ctx, channel, NULL, - time_now().ts.tv_sec, + coinmvt_current_time(), direction, amount, tags); } @@ -730,6 +736,10 @@ void fromwire_chain_coin_mvt(const u8 **cursor, size_t *max, struct chain_coin_m } else mvt->peer_id = NULL; mvt->timestamp = fromwire_u64(cursor, max); + + /* Align onchaind's timestamps with ours if we're deterministic */ + if (clock_time_overridden()) + mvt->timestamp = coinmvt_current_time(); } struct mvt_tags mk_mvt_tags_(enum mvt_tag tag, ...) diff --git a/common/coin_mvt.h b/common/coin_mvt.h index e9a41b3251cd..fb20f5aaaebe 100644 --- a/common/coin_mvt.h +++ b/common/coin_mvt.h @@ -348,4 +348,7 @@ bool mvt_tag_parse(const char *buf, size_t len, enum mvt_tag *tag); void towire_chain_coin_mvt(u8 **pptr, const struct chain_coin_mvt *mvt); void fromwire_chain_coin_mvt(const u8 **cursor, size_t *max, struct chain_coin_mvt *mvt); +/* Time helper for deterministic timestamps: always moves forwards */ +u64 coinmvt_current_time(void); + #endif /* LIGHTNING_COMMON_COIN_MVT_H */ diff --git a/common/configdir.c b/common/configdir.c index 248c8e73e010..0926c44fd569 100644 --- a/common/configdir.c +++ b/common/configdir.c @@ -10,6 +10,7 @@ #include #include #include +#include #include #include @@ -36,8 +37,7 @@ static char *opt_set_abspath(const char *arg, char **p) /* Tal wrappers for opt. */ static void *opt_allocfn(size_t size) { - return tal_arr_label(NULL, char, size, - TAL_LABEL(opt_allocfn_notleak, "")); + return notleak(tal_arr(NULL, char, size)); } static void *tal_reallocfn(void *ptr, size_t size) diff --git a/common/daemon.c b/common/daemon.c index c3adac2a0255..dc0a7b829398 100644 --- a/common/daemon.c +++ b/common/daemon.c @@ -5,8 +5,10 @@ #include #include #include +#include #include #include +#include #include #include #include @@ -198,6 +200,7 @@ void daemon_shutdown(void) bool daemon_developer_mode(char *argv[]) { bool developer = false, debug = false; + const char *entropy_override, *time_override; for (int i = 1; argv[i]; i++) { if (streq(argv[i], "--dev-debug-self")) @@ -222,6 +225,21 @@ bool daemon_developer_mode(char *argv[]) kill(getpid(), SIGSTOP); } + /* We can override cryptographic randomness with this var in development + * mode, for reproducible results */ + entropy_override = getenv("CLN_DEV_ENTROPY_SEED"); + if (entropy_override) + dev_override_randbytes(argv[0], atol(entropy_override)); + + /* We can also control TIME ITSELF! */ + time_override = getenv("CLN_DEV_SET_TIME"); + if (time_override) { + struct timeabs t; + t.ts.tv_nsec = 0; + t.ts.tv_sec = atol(time_override); + dev_override_clock_time(t); + } + /* This checks for any tal_steal loops, but it's not free: * only use if we're already using the fairly heavy memleak * detection. */ diff --git a/common/memleak.c b/common/memleak.c index 7ac0da7c7bf3..de321a9a7c66 100644 --- a/common/memleak.c +++ b/common/memleak.c @@ -58,9 +58,6 @@ struct tal_backtrace { void *notleak_(void *ptr, bool plus_children) { const char *name; - /* If we're not tracking, don't do anything. */ - if (!memleak_track) - return cast_const(void *, ptr); /* We use special tal names to mark notleak */ name = tal_name(ptr); @@ -69,12 +66,14 @@ void *notleak_(void *ptr, bool plus_children) /* Don't mark more than once! */ if (!strstr(name, "**NOTLEAK")) { + /* Don't use tmpctx: it might not be set up yet! */ if (plus_children) - name = tal_fmt(tmpctx, "%s **NOTLEAK_IGNORE_CHILDREN**", + name = tal_fmt(NULL, "%s **NOTLEAK_IGNORE_CHILDREN**", name); else - name = tal_fmt(tmpctx, "%s **NOTLEAK**", name); + name = tal_fmt(NULL, "%s **NOTLEAK**", name); tal_set_name(ptr, name); + tal_free(name); } return cast_const(void *, ptr); @@ -331,8 +330,7 @@ static void call_memleak_helpers(struct htable *memtable, const tal_t *p) if (strends(name, "struct memleak_helper")) { const struct memleak_helper *mh = i; mh->cb(memtable, p); - } else if (strends(name, " **NOTLEAK**") - || strends(name, "_notleak")) { + } else if (strends(name, " **NOTLEAK**")) { memleak_ptr(memtable, i); memleak_scan_obj(memtable, i); } else if (strends(name, diff --git a/common/memleak.h b/common/memleak.h index a15413b23f34..b9782e651ceb 100644 --- a/common/memleak.h +++ b/common/memleak.h @@ -109,6 +109,18 @@ void memleak_scan_region(struct htable *memtable, const void *p, size_t len); /* Objects inside this htable (which is opaque to memleak) are not leaks. */ void memleak_scan_htable(struct htable *memtable, const struct htable *ht); +/* Allocate a htable, set up memleak scan automatically (assumes &p->raw == p) */ +#define new_htable(ctx, type) \ + ({ \ + const struct htable *raw; \ + struct type *p = tal(ctx, struct type); \ + type##_init(p); \ + raw = &p->raw; \ + assert((void *)raw == (void *)p); \ + memleak_add_helper(raw, memleak_scan_htable); \ + p; \ + }) + /* Objects inside this uintmap (which is opaque to memleak) are not leaks. */ #define memleak_scan_uintmap(memtable, umap) \ memleak_scan_intmap_(memtable, uintmap_unwrap_(umap)) diff --git a/common/onion_message.c b/common/onion_message.c index c781866ee78c..e673538f5af6 100644 --- a/common/onion_message.c +++ b/common/onion_message.c @@ -5,6 +5,7 @@ #include #include #include +#include #include #include #include @@ -68,7 +69,7 @@ struct blinded_path *blinded_path_from_encdata_tlvs(const tal_t *ctx, assert(nhops > 0); assert(tal_count(ids) > 0); - randombytes_buf(&first_blinding, sizeof(first_blinding)); + randbytes(&first_blinding, sizeof(first_blinding)); if (!pubkey_from_privkey(&first_blinding, &path->first_path_key)) abort(); sciddir_or_pubkey_from_pubkey(&path->first_node_id, &ids[0]); diff --git a/common/pseudorand.c b/common/pseudorand.c index 831be2bb584b..050906605225 100644 --- a/common/pseudorand.c +++ b/common/pseudorand.c @@ -6,7 +6,7 @@ #include #include #include -#include +#include #include static struct isaac64_ctx isaac64; @@ -19,7 +19,7 @@ static void init_if_needed(void) unsigned char seedbuf[16]; struct sha256 sha; - randombytes_buf(seedbuf, sizeof(seedbuf)); + randbytes(seedbuf, sizeof(seedbuf)); memcpy(&siphashseed, seedbuf, sizeof(siphashseed)); /* In case isaac is reversible, don't leak seed. */ @@ -29,25 +29,42 @@ static void init_if_needed(void) } } -uint64_t pseudorand(uint64_t max) +uint64_t pseudorand_(uint64_t max, uint64_t *offset) { init_if_needed(); assert(max); + + /* We try to avoid being order-dependent here. */ + if (randbytes_overridden()) { + uint64_t rand; + randbytes_(&rand, sizeof(rand), offset); + return rand % max; + } return isaac64_next_uint(&isaac64, max); } -uint64_t pseudorand_u64(void) +uint64_t pseudorand_u64_(uint64_t *offset) { init_if_needed(); + if (randbytes_overridden()) { + uint64_t rand; + randbytes_(&rand, sizeof(rand), offset); + return rand; + } return isaac64_next_uint64(&isaac64); } -double pseudorand_double(void) +double pseudorand_double_(uint64_t *offset) { init_if_needed(); + if (randbytes_overridden()) { + uint64_t rand; + randbytes_(&rand, sizeof(rand), offset); + return rand / (double)UINT64_MAX; + } return isaac64_next_double(&isaac64); } diff --git a/common/pseudorand.h b/common/pseudorand.h index a34220055560..e0303eaf094b 100644 --- a/common/pseudorand.h +++ b/common/pseudorand.h @@ -7,18 +7,21 @@ /** * pseudorand - pseudo (guessable!) random number between 0 and max-1. */ -uint64_t pseudorand(uint64_t max); +#define pseudorand(max) ({static uint64_t offset; pseudorand_((max), &offset);}) +uint64_t pseudorand_(uint64_t max, uint64_t *offset); /** - * pseudorand - pseudo (guessable!) random number between 0 and UINT64_MAX. + * pseudorand_u64 - pseudo (guessable!) random number between 0 and UINT64_MAX. */ -uint64_t pseudorand_u64(void); +#define pseudorand_u64() ({static uint64_t offset; pseudorand_u64_(&offset);}) +uint64_t pseudorand_u64_(uint64_t *offset); /** * pseudorand - pseudo (guessable!) random number between 0 (inclusive) and 1 * (exclusive). */ -double pseudorand_double(void); +#define pseudorand_double() ({static uint64_t offset; pseudorand_double_(&offset);}) +double pseudorand_double_(uint64_t *offset); /** * Get the siphash seed for hash tables. diff --git a/common/randbytes.c b/common/randbytes.c new file mode 100644 index 000000000000..fd38cdf7009f --- /dev/null +++ b/common/randbytes.c @@ -0,0 +1,64 @@ +#include "config.h" +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + +static bool used = false; +static u64 dev_seed = 0; + +bool randbytes_overridden(void) +{ + return dev_seed != 0; +} + +void randbytes_(void *bytes, size_t num_bytes, u64 *offset) +{ + static u64 offset_init; + be64 pattern; + + used = true; + if (!randbytes_overridden()) { + randombytes_buf(bytes, num_bytes); /* discouraged: use randbytes() */ + return; + } + + /* First time, start callers at different offsets */ + if (*offset == 0) { + *offset = offset_init; + offset_init += 1000; + } + + /* Somewhat recognizable pattern */ + pattern = cpu_to_be64(dev_seed + (*offset)++); + for (size_t i = 0; i < num_bytes; i += sizeof(pattern)) { + size_t copy = num_bytes - i; + if (copy > sizeof(pattern)) + copy = sizeof(pattern); + + memcpy((u8 *)bytes + i, &pattern, copy); + } +} + +/* We want different seeds for each plugin (hence argv0), and for each + * lightmingd instance, (hence seed from environment) */ +void dev_override_randbytes(const char *argv0, long int seed) +{ + struct siphash_seed hashseed; + assert(!used); + + hashseed.u.u64[0] = seed; + hashseed.u.u64[1] = 0; + + dev_seed = siphash24(&hashseed, argv0, strlen(argv0)); + assert(randbytes_overridden()); +} diff --git a/common/randbytes.h b/common/randbytes.h new file mode 100644 index 000000000000..18aa485eecf3 --- /dev/null +++ b/common/randbytes.h @@ -0,0 +1,20 @@ +#ifndef LIGHTNING_COMMON_RANDBYTES_H +#define LIGHTNING_COMMON_RANDBYTES_H +#include "config.h" +#include +#include +#include + +/* Usually the libsodium routine randombytes_buf, but dev options can make this deterministic */ +#define randbytes(bytes, num_bytes) \ + do { \ + static u64 offset; \ + randbytes_((bytes), (num_bytes), &offset); \ + } while(0) + +void randbytes_(void *bytes, size_t num_bytes, u64 *offset); + +void dev_override_randbytes(const char *argv0, long int seed); + +bool randbytes_overridden(void); +#endif /* LIGHTNING_COMMON_RANDBYTES_H */ diff --git a/common/sphinx.c b/common/sphinx.c index c254e63170bc..39a2c47bc598 100644 --- a/common/sphinx.c +++ b/common/sphinx.c @@ -6,13 +6,13 @@ #include #include #include +#include #include #include #include -#include #define BLINDING_FACTOR_SIZE 32 @@ -567,7 +567,7 @@ struct onionpacket *create_onionpacket( if (sp->session_key == NULL) { sp->session_key = tal(sp, struct secret); - randombytes_buf(sp->session_key, sizeof(struct secret)); + randbytes(sp->session_key, sizeof(struct secret)); } params = generate_hop_params(ctx, sp->session_key->data, sp); diff --git a/common/test/Makefile b/common/test/Makefile index db0fbcaab70e..1d01c3c8e892 100644 --- a/common/test/Makefile +++ b/common/test/Makefile @@ -5,11 +5,14 @@ COMMON_TEST_PROGRAMS := $(COMMON_TEST_OBJS:.o=) COMMON_TEST_COMMON_OBJS := \ common/autodata.o \ + common/memleak.o \ + common/randbytes.o \ + common/clock_time.o \ common/setup.o \ common/utils.o $(COMMON_TEST_PROGRAMS): $(COMMON_TEST_COMMON_OBJS) $(BITCOIN_OBJS) -$(COMMON_TEST_OBJS): $(COMMON_HEADERS) $(WIRE_HEADERS) $(COMMON_SRC) +$(COMMON_TEST_OBJS): $(COMMON_HEADERS) $(WIRE_HEADERS) $(COMMON_SRC) common/test/Makefile ALL_C_SOURCES += $(COMMON_TEST_SRC) ALL_TEST_PROGRAMS += $(COMMON_TEST_PROGRAMS) @@ -31,6 +34,7 @@ common/test/run-json: \ common/lease_rates.o \ common/node_id.o \ common/pseudorand.o \ + common/randbytes.o \ common/wireaddr.o \ wire/fromwire.o \ wire/onion_wiregen.o \ @@ -44,6 +48,7 @@ common/test/run-route common/test/run-route-specific common/test/run-route-inflo common/gossmap.o \ common/node_id.o \ common/pseudorand.o \ + common/randbytes.o \ common/route.o \ gossipd/gossip_store_wiregen.o \ wire/fromwire.o \ @@ -117,13 +122,14 @@ common/test/run-splice_script: \ common/test/run-trace: \ common/amount.o \ - common/memleak.o \ common/pseudorand.o \ + common/randbytes.o \ common/trace.o \ wire/fromwire.o \ wire/towire.o common/test/run-htable: \ + common/randbytes.o \ common/pseudorand.o common/test/run-shutdown_scriptpubkey: wire/towire.o wire/fromwire.o diff --git a/common/test/run-amount.c b/common/test/run-amount.c index 0e9f295dc0c2..f76484ef3436 100644 --- a/common/test/run-amount.c +++ b/common/test/run-amount.c @@ -1,5 +1,6 @@ #include "config.h" #include "../amount.c" +#include #include #include diff --git a/common/test/run-base64.c b/common/test/run-base64.c index c36c08bb3fc3..e71371c9873b 100644 --- a/common/test/run-base64.c +++ b/common/test/run-base64.c @@ -3,6 +3,7 @@ #include #include #include +#include #include #include #include diff --git a/common/test/run-bigsize.c b/common/test/run-bigsize.c index 9b181261e6c6..d11ad50ab0c5 100644 --- a/common/test/run-bigsize.c +++ b/common/test/run-bigsize.c @@ -4,6 +4,7 @@ #include #include #include +#include #include static const char *reason; diff --git a/common/test/run-blindedpath_enctlv.c b/common/test/run-blindedpath_enctlv.c index c9408cba2dd5..d2552ad4e727 100644 --- a/common/test/run-blindedpath_enctlv.c +++ b/common/test/run-blindedpath_enctlv.c @@ -3,6 +3,7 @@ #include "../blinding.c" #include "../hmac.c" #include +#include #include #include diff --git a/common/test/run-bolt11.c b/common/test/run-bolt11.c index e4fbbd797cbd..3cc516a35a6a 100644 --- a/common/test/run-bolt11.c +++ b/common/test/run-bolt11.c @@ -6,10 +6,10 @@ #include "../features.c" #include "../node_id.c" #include "../hash_u5.c" -#include "../memleak.c" #include "../wire/fromwire.c" #include "../wire/towire.c" #include +#include #include /* AUTOGENERATED MOCKS START */ diff --git a/common/test/run-bolt12-encode-test.c b/common/test/run-bolt12-encode-test.c index e7de25fdd381..5ca641f93012 100644 --- a/common/test/run-bolt12-encode-test.c +++ b/common/test/run-bolt12-encode-test.c @@ -12,6 +12,7 @@ #include #include #include +#include #include #include #include diff --git a/common/test/run-bolt12-format-string-test.c b/common/test/run-bolt12-format-string-test.c index dc8384750a09..d38bd6ed6210 100644 --- a/common/test/run-bolt12-format-string-test.c +++ b/common/test/run-bolt12-format-string-test.c @@ -8,6 +8,7 @@ #include #include #include +#include #include /* AUTOGENERATED MOCKS START */ diff --git a/common/test/run-bolt12-offer-decode.c b/common/test/run-bolt12-offer-decode.c index 5296e8fd6c22..d15f24338ab5 100644 --- a/common/test/run-bolt12-offer-decode.c +++ b/common/test/run-bolt12-offer-decode.c @@ -14,6 +14,7 @@ #include #include #include +#include #include /* AUTOGENERATED MOCKS START */ diff --git a/common/test/run-bolt12_decode.c b/common/test/run-bolt12_decode.c index 4702d23f251c..ce80438f2c0a 100644 --- a/common/test/run-bolt12_decode.c +++ b/common/test/run-bolt12_decode.c @@ -7,6 +7,7 @@ #include #include #include +#include #include /* AUTOGENERATED MOCKS START */ diff --git a/common/test/run-bolt12_merkle-json.c b/common/test/run-bolt12_merkle-json.c index 4c0910d3f57f..1cd8e8bcdf93 100644 --- a/common/test/run-bolt12_merkle-json.c +++ b/common/test/run-bolt12_merkle-json.c @@ -11,6 +11,7 @@ #include #include #include +#include #include /* AUTOGENERATED MOCKS START */ diff --git a/common/test/run-bolt12_merkle.c b/common/test/run-bolt12_merkle.c index 43265ef4d74f..4d2f0bc6d639 100644 --- a/common/test/run-bolt12_merkle.c +++ b/common/test/run-bolt12_merkle.c @@ -7,6 +7,7 @@ #include #include #include +#include #include #include diff --git a/common/test/run-bolt12_period.c b/common/test/run-bolt12_period.c index 514e47fe734f..1fad5d142007 100644 --- a/common/test/run-bolt12_period.c +++ b/common/test/run-bolt12_period.c @@ -5,6 +5,7 @@ #include #include #include +#include #include /* AUTOGENERATED MOCKS START */ diff --git a/common/test/run-channel_type.c b/common/test/run-channel_type.c index 46edef12b3ee..2cac84ac8f41 100644 --- a/common/test/run-channel_type.c +++ b/common/test/run-channel_type.c @@ -2,6 +2,7 @@ #include "../channel_type.c" #include "../features.c" #include +#include #include #include #include diff --git a/common/test/run-codex32.c b/common/test/run-codex32.c index 2aed32315799..24929672c643 100644 --- a/common/test/run-codex32.c +++ b/common/test/run-codex32.c @@ -8,6 +8,7 @@ #include #include #include +#include #include /* AUTOGENERATED MOCKS START */ diff --git a/common/test/run-coin_mvt.c b/common/test/run-coin_mvt.c index e7512c089b55..99651ccbb54e 100644 --- a/common/test/run-coin_mvt.c +++ b/common/test/run-coin_mvt.c @@ -1,6 +1,7 @@ #include "config.h" #include "../coin_mvt.c" #include +#include #include #include diff --git a/common/test/run-cryptomsg.c b/common/test/run-cryptomsg.c index 42fa16e89c1b..e3218eb0b863 100644 --- a/common/test/run-cryptomsg.c +++ b/common/test/run-cryptomsg.c @@ -1,5 +1,6 @@ #include "config.h" #include +#include #include #include #include diff --git a/common/test/run-deprecation.c b/common/test/run-deprecation.c index fe1a4cd0579c..fa1378c8648b 100644 --- a/common/test/run-deprecation.c +++ b/common/test/run-deprecation.c @@ -6,6 +6,7 @@ static const char *test_next_version; #include "../deprecation.c" #include +#include #include #include #include diff --git a/common/test/run-derive_basepoints.c b/common/test/run-derive_basepoints.c index 861a65d63531..cb896ad7795a 100644 --- a/common/test/run-derive_basepoints.c +++ b/common/test/run-derive_basepoints.c @@ -5,6 +5,7 @@ #include #include #include +#include #include #include #include diff --git a/common/test/run-features.c b/common/test/run-features.c index e6936d5a8be8..ef38a0cfc353 100644 --- a/common/test/run-features.c +++ b/common/test/run-features.c @@ -1,8 +1,9 @@ #include "config.h" #include "../features.c" -#include "../memleak.c" #include +#include #include +#include /* AUTOGENERATED MOCKS START */ /* Generated stub for amount_asset_is_main */ diff --git a/common/test/run-gossmap-fp16.c b/common/test/run-gossmap-fp16.c index 274eccf3a3fd..539b129b5293 100644 --- a/common/test/run-gossmap-fp16.c +++ b/common/test/run-gossmap-fp16.c @@ -1,5 +1,6 @@ #include "config.h" #include "../fp16.c" +#include #include #include #include diff --git a/common/test/run-htable.c b/common/test/run-htable.c index 64ac0b568555..267ad8c03f10 100644 --- a/common/test/run-htable.c +++ b/common/test/run-htable.c @@ -6,6 +6,7 @@ #include #include #include +#include #include #include #include diff --git a/common/test/run-ip_port_parsing.c b/common/test/run-ip_port_parsing.c index 026a06f8f5d4..c7c5ba226530 100644 --- a/common/test/run-ip_port_parsing.c +++ b/common/test/run-ip_port_parsing.c @@ -4,6 +4,7 @@ #include #include +#include #include /* AUTOGENERATED MOCKS START */ diff --git a/common/test/run-json.c b/common/test/run-json.c index b5fdecdb3c64..10733adaedbb 100644 --- a/common/test/run-json.c +++ b/common/test/run-json.c @@ -4,7 +4,9 @@ #include #include #include +#include #include +#include #include #include #include diff --git a/common/test/run-json_filter.c b/common/test/run-json_filter.c index 54138cbe6999..d682b82130b3 100644 --- a/common/test/run-json_filter.c +++ b/common/test/run-json_filter.c @@ -6,6 +6,7 @@ #include "../json_stream.c" #include #include +#include #include #include diff --git a/common/test/run-json_remove.c b/common/test/run-json_remove.c index f1c16a28cbe4..8a15653ebfae 100644 --- a/common/test/run-json_remove.c +++ b/common/test/run-json_remove.c @@ -2,6 +2,7 @@ #include #include #include +#include #include #include #include diff --git a/common/test/run-json_scan.c b/common/test/run-json_scan.c index a80dad990606..40ddb9bd4541 100644 --- a/common/test/run-json_scan.c +++ b/common/test/run-json_scan.c @@ -2,6 +2,7 @@ #include "../json_parse.c" #include "../json_parse_simple.c" #include +#include #include #include diff --git a/common/test/run-json_stream-filter.c b/common/test/run-json_stream-filter.c index 1e484b475868..6f6fe060f834 100644 --- a/common/test/run-json_stream-filter.c +++ b/common/test/run-json_stream-filter.c @@ -4,6 +4,7 @@ #include #include #include +#include #include #include #include diff --git a/common/test/run-key_derive.c b/common/test/run-key_derive.c index f30fcdfb2e18..6b158f74413d 100644 --- a/common/test/run-key_derive.c +++ b/common/test/run-key_derive.c @@ -4,6 +4,7 @@ #include #include #include +#include #include #include #include diff --git a/common/test/run-lease_rates.c b/common/test/run-lease_rates.c index 31da81c7d317..f995eb88c2f6 100644 --- a/common/test/run-lease_rates.c +++ b/common/test/run-lease_rates.c @@ -1,6 +1,7 @@ #include "config.h" #include "../amount.c" #include "../lease_rates.c" +#include #include #include diff --git a/common/test/run-marginal_feerate.c b/common/test/run-marginal_feerate.c index e0514cfdd83f..097852ceabc8 100644 --- a/common/test/run-marginal_feerate.c +++ b/common/test/run-marginal_feerate.c @@ -2,6 +2,7 @@ #include #include #include +#include #include #include #include "../fee_states.c" diff --git a/common/test/run-param.c b/common/test/run-param.c index 3cb94bf854c7..ddb5cab1e6a2 100644 --- a/common/test/run-param.c +++ b/common/test/run-param.c @@ -7,6 +7,8 @@ #include #include #include +#include +#include #include #include diff --git a/common/test/run-psbt_diff.c b/common/test/run-psbt_diff.c index 6d355697792d..1c107851ac66 100644 --- a/common/test/run-psbt_diff.c +++ b/common/test/run-psbt_diff.c @@ -1,4 +1,5 @@ #include "config.h" +#include #include #include #include "../amount.c" @@ -37,9 +38,9 @@ u8 fromwire_u8(const u8 **cursor UNNEEDED, size_t *max UNNEEDED) /* Generated stub for fromwire_u8_array */ void fromwire_u8_array(const u8 **cursor UNNEEDED, size_t *max UNNEEDED, u8 *arr UNNEEDED, size_t num UNNEEDED) { fprintf(stderr, "fromwire_u8_array called!\n"); abort(); } -/* Generated stub for pseudorand_u64 */ -uint64_t pseudorand_u64(void) -{ fprintf(stderr, "pseudorand_u64 called!\n"); abort(); } +/* Generated stub for pseudorand_u64_ */ +uint64_t pseudorand_u64_(uint64_t *offset UNNEEDED) +{ fprintf(stderr, "pseudorand_u64_ called!\n"); abort(); } /* Generated stub for towire */ void towire(u8 **pptr UNNEEDED, const void *data UNNEEDED, size_t len UNNEEDED) { fprintf(stderr, "towire called!\n"); abort(); } diff --git a/common/test/run-route-infloop.c b/common/test/run-route-infloop.c index c2e532fe5191..7556fd2f93af 100644 --- a/common/test/run-route-infloop.c +++ b/common/test/run-route-infloop.c @@ -7,6 +7,7 @@ #include #include #include +#include #include #include #include diff --git a/common/test/run-route-specific.c b/common/test/run-route-specific.c index 93f23de72c19..759b614fda21 100644 --- a/common/test/run-route-specific.c +++ b/common/test/run-route-specific.c @@ -12,6 +12,7 @@ #include #include #include +#include #include #include #include diff --git a/common/test/run-route.c b/common/test/run-route.c index 6b06dab66143..d9fb4d3b2f7b 100644 --- a/common/test/run-route.c +++ b/common/test/run-route.c @@ -5,6 +5,7 @@ #include #include #include +#include #include #include #include diff --git a/common/test/run-route_blinding_test.c b/common/test/run-route_blinding_test.c index 3358319dfae3..2b3ef812f77e 100644 --- a/common/test/run-route_blinding_test.c +++ b/common/test/run-route_blinding_test.c @@ -10,8 +10,10 @@ #include #include #include +#include #include #include +#include #include #include #include diff --git a/common/test/run-shutdown_scriptpubkey.c b/common/test/run-shutdown_scriptpubkey.c index db543a9d8d60..c98610d28277 100644 --- a/common/test/run-shutdown_scriptpubkey.c +++ b/common/test/run-shutdown_scriptpubkey.c @@ -4,6 +4,7 @@ #include #include #include +#include #include #include #include diff --git a/common/test/run-splice_script.c b/common/test/run-splice_script.c index c3bd63fcb2fc..082f46ceab49 100644 --- a/common/test/run-splice_script.c +++ b/common/test/run-splice_script.c @@ -6,6 +6,7 @@ #include "../json_stream.c" #include "../json_parse_simple.c" #include +#include #include #include #include diff --git a/common/test/run-tlv_span.c b/common/test/run-tlv_span.c index 4055ec9bcaae..eb3ede4b6cb4 100644 --- a/common/test/run-tlv_span.c +++ b/common/test/run-tlv_span.c @@ -2,6 +2,7 @@ #include "../bolt12.c" #include "../bigsize.c" #include "../../wire/fromwire.c" +#include #include #include diff --git a/common/test/run-tlv_unknown.c b/common/test/run-tlv_unknown.c index fdecc469965d..071b10432e1d 100644 --- a/common/test/run-tlv_unknown.c +++ b/common/test/run-tlv_unknown.c @@ -5,6 +5,7 @@ #include "../../wire/towire.c" #include "../bigsize.c" #include "../bolt12.c" +#include #include #include diff --git a/common/test/run-version.c b/common/test/run-version.c index 0e04b4cb061a..3b46f56e2289 100644 --- a/common/test/run-version.c +++ b/common/test/run-version.c @@ -1,9 +1,13 @@ #include "config.h" #include "../version.c" +#include #include #include #include +/* AUTOGENERATED MOCKS START */ +/* AUTOGENERATED MOCKS END */ + int main(int argc, char *argv[]) { common_setup(argv[0]); diff --git a/common/test/run-wireaddr.c b/common/test/run-wireaddr.c index faa48e3c7c46..f5dd2ff92806 100644 --- a/common/test/run-wireaddr.c +++ b/common/test/run-wireaddr.c @@ -1,6 +1,7 @@ #include "config.h" #include #include +#include #include #include diff --git a/common/trace.c b/common/trace.c index eade3171f790..1be745bed474 100644 --- a/common/trace.c +++ b/common/trace.c @@ -77,7 +77,7 @@ static void init_span(struct span *s, const char *name, struct span *parent) { - struct timeabs now = time_now(); + struct timeabs now = time_now(); /* discouraged: but tracing wants non-dev time */ s->key = key; s->id = pseudorand_u64(); @@ -184,15 +184,11 @@ static inline void trace_check_tree(void) {} static void trace_init(void) { const char *dev_trace_file; - const char notleak_name[] = "struct span **NOTLEAK**"; if (active_spans) return; - active_spans = tal_arrz(NULL, struct span, 1); - /* We're usually too early for memleak to be initialized, so mark - * this notleak manually! */ - tal_set_name(active_spans, notleak_name); + active_spans = notleak(tal_arrz(NULL, struct span, 1)); current = NULL; dev_trace_file = getenv("CLN_DEV_TRACE_FILE"); @@ -372,7 +368,7 @@ void trace_span_end(const void *key) trace_check_tree(); - struct timeabs now = time_now(); + struct timeabs now = time_now(); /* discouraged: but tracing wants non-dev time */ s->end_time = (now.ts.tv_sec * 1000000) + now.ts.tv_nsec / 1000; DTRACE_PROBE1(lightningd, span_end, s->id); if (trace_to_file) { diff --git a/connectd/Makefile b/connectd/Makefile index 781172e186de..0300e27623ee 100644 --- a/connectd/Makefile +++ b/connectd/Makefile @@ -48,6 +48,7 @@ CONNECTD_COMMON_OBJS := \ common/blinding.o \ common/blindedpath.o \ common/channel_id.o \ + common/clock_time.o \ common/cryptomsg.o \ common/daemon.o \ common/daemon_conn.o \ @@ -72,6 +73,7 @@ CONNECTD_COMMON_OBJS := \ common/per_peer_state.o \ common/psbt_open.o \ common/pseudorand.o \ + common/randbytes.o \ common/sciddir_or_pubkey.o \ common/setup.o \ common/sphinx.o \ diff --git a/connectd/connectd.c b/connectd/connectd.c index f04f2caa798d..8511678e25db 100644 --- a/connectd/connectd.c +++ b/connectd/connectd.c @@ -19,6 +19,7 @@ #include #include #include +#include #include #include #include @@ -26,6 +27,7 @@ #include #include #include +#include #include #include #include @@ -129,7 +131,7 @@ static struct peer *new_peer(struct daemon *daemon, peer->draining_state = NOT_DRAINING; peer->peer_in_lastmsg = -1; peer->peer_outq = msg_queue_new(peer, false); - peer->last_recv_time = time_now(); + peer->last_recv_time = time_mono(); peer->is_websocket = is_websocket; peer->dev_writes_enabled = NULL; peer->dev_read_enabled = true; @@ -1517,7 +1519,7 @@ setup_listeners(const tal_t *ctx, if (sodium_mlock(&random, sizeof(random)) != 0) status_failed(STATUS_FAIL_INTERNAL_ERROR, "Could not lock the random prf key memory."); - randombytes_buf((void * const)&random, 32); + randbytes((void * const)&random, 32); /* generate static tor node address, take first 32 bytes from secret of node_id plus 32 random bytes from sodiom */ struct sha256 sha; struct secret ss; @@ -1542,7 +1544,7 @@ setup_listeners(const tal_t *ctx, localaddr, 0); /* get rid of blob data on our side of tor and add jitter */ - randombytes_buf((void * const)proposed_wireaddr[i].u.torservice.blob, TOR_V3_BLOBLEN); + randbytes((void * const)proposed_wireaddr[i].u.torservice.blob, TOR_V3_BLOBLEN); if (!(proposed_listen_announce[i] & ADDR_ANNOUNCE)) { continue; @@ -2021,9 +2023,6 @@ static void dev_connect_memleak(struct daemon *daemon, const u8 *msg) /* Now delete daemon and those which it has pointers to. */ memleak_scan_obj(memtable, daemon); - memleak_scan_htable(memtable, &daemon->peers->raw); - memleak_scan_htable(memtable, &daemon->scid_htable->raw); - memleak_scan_htable(memtable, &daemon->important_ids->raw); found_leak = dump_memleak(memtable, memleak_status_broken, NULL); daemon_conn_send(daemon->master, @@ -2211,7 +2210,7 @@ static void dev_report_fds(struct daemon *daemon, const u8 *msg) void update_recent_timestamp(struct daemon *daemon, struct gossmap *gossmap) { /* 2 hours allows for some clock drift, not too much gossip */ - u32 recent = time_now().ts.tv_sec - 7200; + u32 recent = clock_time().ts.tv_sec - 7200; /* Only update every minute */ if (daemon->gossip_recent_time + 60 > recent) @@ -2437,14 +2436,6 @@ static struct io_plan *recv_gossip(struct io_conn *conn, return daemon_conn_read_next(conn, daemon->gossipd); } -/*~ This is a hook used by the memleak code: it can't see pointers - * inside hash tables, so we give it a hint here. */ -static void memleak_daemon_cb(struct htable *memtable, struct daemon *daemon) -{ - memleak_scan_htable(memtable, &daemon->peers->raw); - memleak_scan_htable(memtable, &daemon->connecting->raw); -} - static void gossipd_failed(struct daemon_conn *gossipd) { status_failed(STATUS_FAIL_GOSSIP_IO, "gossipd exited?"); @@ -2464,14 +2455,13 @@ int main(int argc, char *argv[]) daemon = tal(NULL, struct daemon); daemon->developer = developer; daemon->connection_counter = 1; - daemon->peers = tal(daemon, struct peer_htable); + /* htable_new is our helper which allocates a htable, initializes it + * and set up the memleak callback so our memleak code can see objects + * inside it */ + daemon->peers = new_htable(daemon, peer_htable); daemon->listeners = tal_arr(daemon, struct io_listener *, 0); - peer_htable_init(daemon->peers); - memleak_add_helper(daemon, memleak_daemon_cb); - daemon->connecting = tal(daemon, struct connecting_htable); - connecting_htable_init(daemon->connecting); - daemon->important_ids = tal(daemon, struct important_id_htable); - important_id_htable_init(daemon->important_ids); + daemon->connecting = new_htable(daemon, connecting_htable); + daemon->important_ids = new_htable(daemon, important_id_htable); timers_init(&daemon->timers, time_mono()); daemon->gossmap_raw = NULL; daemon->shutting_down = false; @@ -2481,8 +2471,7 @@ int main(int argc, char *argv[]) daemon->dev_exhausted_fds = false; /* We generally allow 1MB per second per peer, except for dev testing */ daemon->gossip_stream_limit = 1000000; - daemon->scid_htable = tal(daemon, struct scid_htable); - scid_htable_init(daemon->scid_htable); + daemon->scid_htable = new_htable(daemon, scid_htable); /* stdin == control */ daemon->master = daemon_conn_new(daemon, STDIN_FILENO, recv_req, NULL, diff --git a/connectd/connectd.h b/connectd/connectd.h index 5774c220f4da..f52e40ff1946 100644 --- a/connectd/connectd.h +++ b/connectd/connectd.h @@ -104,7 +104,7 @@ struct peer { struct oneshot *ping_timer; /* Last time we received traffic */ - struct timeabs last_recv_time; + struct timemono last_recv_time; /* How long have we been ignoring peer input? */ struct timemono peer_in_lasttime; diff --git a/connectd/handshake.c b/connectd/handshake.c index 3a11dead0ec0..ad388a62182c 100644 --- a/connectd/handshake.c +++ b/connectd/handshake.c @@ -7,6 +7,7 @@ #include #include #include +#include #include #include #include @@ -14,7 +15,6 @@ #include #include #include -#include #ifndef SUPERVERBOSE #define SUPERVERBOSE(...) @@ -194,7 +194,7 @@ static struct keypair generate_key(void) struct keypair k; do { - randombytes_buf(k.priv.secret.data, sizeof(k.priv.secret.data)); + randbytes(k.priv.secret.data, sizeof(k.priv.secret.data)); } while (!secp256k1_ec_pubkey_create(secp256k1_ctx, &k.pub.pubkey, k.priv.secret.data)); return k; diff --git a/connectd/multiplex.c b/connectd/multiplex.c index 77101e207603..06a768169fa9 100644 --- a/connectd/multiplex.c +++ b/connectd/multiplex.c @@ -650,8 +650,8 @@ static void send_ping(struct peer *peer) /* If it's still sending us traffic, maybe ping reply is backed up? * That's OK, ping is just to make sure it's still alive, and clearly * it is. */ - if (time_before(peer->last_recv_time, - timeabs_sub(time_now(), time_from_sec(60)))) { + if (timemono_before(peer->last_recv_time, + timemono_sub(time_mono(), time_from_sec(60)))) { /* Already have a ping in flight? */ if (peer->expecting_pong != PONG_UNEXPECTED) { status_peer_debug(&peer->id, "Last ping unreturned: hanging up"); @@ -1269,7 +1269,7 @@ static struct io_plan *read_body_from_peer_done(struct io_conn *peer_conn, } /* We got something! */ - peer->last_recv_time = time_now(); + peer->last_recv_time = time_mono(); /* Don't process packets while we're closing */ if (peer->draining_state != NOT_DRAINING) diff --git a/connectd/test/Makefile b/connectd/test/Makefile index c624f32190c2..2569e8c96c3a 100644 --- a/connectd/test/Makefile +++ b/connectd/test/Makefile @@ -8,6 +8,7 @@ CONNECTD_TEST_COMMON_OBJS := \ common/autodata.o \ common/features.o \ common/pseudorand.o \ + common/randbytes.o \ common/setup.o \ common/utils.o diff --git a/connectd/test/run-crc32_of_update.c b/connectd/test/run-crc32_of_update.c index efcaaf4792d7..ca5cd84df387 100644 --- a/connectd/test/run-crc32_of_update.c +++ b/connectd/test/run-crc32_of_update.c @@ -7,6 +7,7 @@ int unused_main(int argc, char *argv[]); #include #include #include +#include #include #include #include diff --git a/connectd/test/run-initiator-success.c b/connectd/test/run-initiator-success.c index 26aeb40cceff..f9a45fc73847 100644 --- a/connectd/test/run-initiator-success.c +++ b/connectd/test/run-initiator-success.c @@ -114,10 +114,10 @@ void towire_u8_array(u8 **pptr UNNEEDED, const u8 *arr UNNEEDED, size_t num UNNE /* AUTOGENERATED MOCKS END */ /* No randomness please, we want to replicate test vectors. */ -#include +#include -static void seed_randomness(u8 *secret, size_t len); -#define randombytes_buf(secret, len) seed_randomness((secret), (len)) +static void seed_randomness(u8 *secret, size_t len, u64 *offset); +#define randbytes_(secret, len, offset) seed_randomness((secret), (len), (offset)) struct handshake; static struct io_plan *test_write(struct io_conn *conn, @@ -188,7 +188,7 @@ const void *trc; static struct pubkey rs_pub, ls_pub, e_pub; static struct privkey ls_priv, e_priv; -static void seed_randomness(u8 *secret, size_t len) +static void seed_randomness(u8 *secret, size_t len, u64 *offset) { assert(len == sizeof(e_priv)); memcpy(secret, &e_priv, len); diff --git a/connectd/test/run-netaddress.c b/connectd/test/run-netaddress.c index c69ed2510325..4fee8f6a3f75 100644 --- a/connectd/test/run-netaddress.c +++ b/connectd/test/run-netaddress.c @@ -1,6 +1,7 @@ #include "config.h" #include #include +#include #include #include #include diff --git a/connectd/test/run-responder-success.c b/connectd/test/run-responder-success.c index ed1dfb175e35..e349a9a5ae6e 100644 --- a/connectd/test/run-responder-success.c +++ b/connectd/test/run-responder-success.c @@ -114,10 +114,10 @@ void towire_u8_array(u8 **pptr UNNEEDED, const u8 *arr UNNEEDED, size_t num UNNE /* AUTOGENERATED MOCKS END */ /* No randomness please, we want to replicate test vectors. */ -#include +#include -static void seed_randomness(u8 *secret, size_t len); -#define randombytes_buf(secret, len) seed_randomness((secret), (len)) +static void seed_randomness(u8 *secret, size_t len, u64 *offset); +#define randbytes_(secret, len, offset) seed_randomness((secret), (len), (offset)) struct handshake; static struct io_plan *test_write(struct io_conn *conn, @@ -187,7 +187,7 @@ extern secp256k1_context *secp256k1_ctx; static struct pubkey ls_pub, e_pub; static struct privkey ls_priv, e_priv; -static void seed_randomness(u8 *secret, size_t len) +static void seed_randomness(u8 *secret, size_t len, u64 *offset) { assert(len == sizeof(e_priv)); memcpy(secret, &e_priv, len); diff --git a/connectd/test/run-websocket.c b/connectd/test/run-websocket.c index 25f126e927d2..393534b036a1 100644 --- a/connectd/test/run-websocket.c +++ b/connectd/test/run-websocket.c @@ -1,6 +1,7 @@ #include "config.h" #include #include +#include #include #include #include diff --git a/contrib/msggen/msggen/schema.json b/contrib/msggen/msggen/schema.json index a0f42b9c8d4f..ac2b638fb2be 100644 --- a/contrib/msggen/msggen/schema.json +++ b/contrib/msggen/msggen/schema.json @@ -157,9 +157,9 @@ } }, "response": { - "psbt": "cHNidP8BAgpsbt1001010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101", + "psbt": "cHNidP8BAgQCAAAAAQMEbwAAAAEEAQABBQEBAQYBAwH7BAIAAAAAAQMIQEIPAAAAAAABBCJRIO7yw3zIUblRUcdhCLSjdFxJsYHu2s0Y29bT0bGAGdcbAA==", "estimated_added_weight": 172, - "outnum": 1 + "outnum": 0 } }, { @@ -168,11 +168,11 @@ "method": "addpsbtoutput", "params": [ 3333333, - "cHNidP8BAgpsbt20020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202" + "cHNidP8BAgQCAAAAAQMEbwAAAAEEAQABBQECAQYBAwH7BAIAAAAAAQMIQEIPAAAAAAABBCJRIO7yw3zIUblRUcdhCLSjdFxJsYHu2s0Y29bT0bGAGdcbAAEDCNXcMgAAAAAAAQQiUSA2cYCeVGcxdSZII2urHpalr5osmF2lPbYRaw1nKyPcmQA=" ] }, "response": { - "psbt": "cHNidP8BAgpsbt20020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202", + "psbt": "cHNidP8BAgQCAAAAAQMEbwAAAAEEAQABBQECAQYBAwH7BAIAAAAAAQMIQEIPAAAAAAABBCJRIO7yw3zIUblRUcdhCLSjdFxJsYHu2s0Y29bT0bGAGdcbAAEDCNXcMgAAAAAAAQQiUSA2cYCeVGcxdSZII2urHpalr5osmF2lPbYRaw1nKyPcmQA=", "estimated_added_weight": 172, "outnum": 1 } @@ -183,14 +183,14 @@ "method": "addpsbtoutput", "params": { "satoshi": 3333333, - "initialpsbt": "cHNidP8BAgpsbt20020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202", - "destination": "bcrt1p5201010101010101010101010101010101010101010101010101010101" + "initialpsbt": "cHNidP8BAgQCAAAAAQMEbwAAAAEEAQABBQECAQYBAwH7BAIAAAAAAQMIQEIPAAAAAAABBCJRIO7yw3zIUblRUcdhCLSjdFxJsYHu2s0Y29bT0bGAGdcbAAEDCNXcMgAAAAAAAQQiUSA2cYCeVGcxdSZII2urHpalr5osmF2lPbYRaw1nKyPcmQA=", + "destination": "bcrt1p52spc7t99z0wu444elxahxzkcu86gakzvnfp7ugudf567am2uspsuneuq9" } }, "response": { - "psbt": "cHNidP8BAgpsbt300303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303", + "psbt": "cHNidP8BAgQCAAAAAQMEbwAAAAEEAQABBQEDAQYBAwH7BAIAAAAAAQMIQEIPAAAAAAABBCJRIO7yw3zIUblRUcdhCLSjdFxJsYHu2s0Y29bT0bGAGdcbAAEDCNXcMgAAAAAAAQQiUSA2cYCeVGcxdSZII2urHpalr5osmF2lPbYRaw1nKyPcmQABAwjV3DIAAAAAAAEEIlEgoqAceWUonu5Wtc/N25hWxw+kdsJk0h9xHGppr3dq5AMA", "estimated_added_weight": 172, - "outnum": 1 + "outnum": 2 } } ] @@ -264,7 +264,7 @@ "method": "askrene-age", "params": { "layer": "test_layers", - "cutoff": 1738000000 + "cutoff": 1738000001 } }, "response": { @@ -391,7 +391,7 @@ "method": "askrene-bias-channel", "params": { "layer": "test_layers", - "short_channel_id_dir": "109x1x1/1", + "short_channel_id_dir": "110x1x0/1", "bias": 1 } }, @@ -399,7 +399,7 @@ "biases": [ { "layer": "test_layers", - "short_channel_id_dir": "109x1x1/1", + "short_channel_id_dir": "110x1x0/1", "bias": 1 } ] @@ -411,7 +411,7 @@ "method": "askrene-bias-channel", "params": [ "test_layers", - "109x1x1/1", + "110x1x0/1", -5, "bigger bias" ] @@ -420,7 +420,7 @@ "biases": [ { "layer": "test_layers", - "short_channel_id_dir": "109x1x1/1", + "short_channel_id_dir": "110x1x0/1", "description": "bigger bias", "bias": -5 } @@ -507,8 +507,8 @@ "method": "askrene-create-channel", "params": { "layer": "test_layers", - "source": "nodeid030303030303030303030303030303030303030303030303030303030303", - "destination": "nodeid010101010101010101010101010101010101010101010101010101010101", + "source": "035d2b1192dfba134e10e540875d366ebc8bc353d5aa766b80c090b39c3a5d885d", + "destination": "0266e4598d1d3c415f572a8488830b60f7e744ed9235eb0b1ba93283b315c03518", "short_channel_id": "0x0x1", "capacity_msat": "1000000sat" } @@ -845,7 +845,7 @@ "method": "askrene-disable-node", "params": { "layer": "test_layers", - "node": "nodeid010101010101010101010101010101010101010101010101010101010101" + "node": "0266e4598d1d3c415f572a8488830b60f7e744ed9235eb0b1ba93283b315c03518" } }, "response": {} @@ -1256,12 +1256,12 @@ "layer": "test_layers", "persistent": false, "disabled_nodes": [ - "nodeid010101010101010101010101010101010101010101010101010101010101" + "0266e4598d1d3c415f572a8488830b60f7e744ed9235eb0b1ba93283b315c03518" ], "created_channels": [ { - "source": "nodeid010101010101010101010101010101010101010101010101010101010101", - "destination": "nodeid030303030303030303030303030303030303030303030303030303030303", + "source": "0266e4598d1d3c415f572a8488830b60f7e744ed9235eb0b1ba93283b315c03518", + "destination": "035d2b1192dfba134e10e540875d366ebc8bc353d5aa766b80c090b39c3a5d885d", "short_channel_id": "0x0x1", "capacity_msat": 1000000000 } @@ -1285,7 +1285,7 @@ ], "biases": [ { - "short_channel_id_dir": "109x1x1/1", + "short_channel_id_dir": "110x1x0/1", "description": "bigger bias", "bias": -5 } @@ -1306,12 +1306,12 @@ "layer": "test_layers", "persistent": false, "disabled_nodes": [ - "nodeid010101010101010101010101010101010101010101010101010101010101" + "0266e4598d1d3c415f572a8488830b60f7e744ed9235eb0b1ba93283b315c03518" ], "created_channels": [ { - "source": "nodeid010101010101010101010101010101010101010101010101010101010101", - "destination": "nodeid030303030303030303030303030303030303030303030303030303030303", + "source": "0266e4598d1d3c415f572a8488830b60f7e744ed9235eb0b1ba93283b315c03518", + "destination": "035d2b1192dfba134e10e540875d366ebc8bc353d5aa766b80c090b39c3a5d885d", "short_channel_id": "0x0x1", "capacity_msat": 1000000000 } @@ -1335,7 +1335,7 @@ ], "biases": [ { - "short_channel_id_dir": "109x1x1/1", + "short_channel_id_dir": "110x1x0/1", "description": "bigger bias", "bias": -5 } @@ -1436,28 +1436,28 @@ "response": { "reservations": [ { - "short_channel_id_dir": "109x1x1/1", + "short_channel_id_dir": "110x1x0/1", "amount_msat": 1250000, "age_in_seconds": 2, - "command_id": "\"-c:askrene-reserve#62/cln:askrene-reserve#122\"" + "command_id": "examples.py:askrene-reserve#1/cln:askrene-reserve#2" }, { - "short_channel_id_dir": "123x1x1/0", - "amount_msat": 1250001, + "short_channel_id_dir": "110x1x0/1", + "amount_msat": 1250000000000, "age_in_seconds": 2, - "command_id": "\"-c:askrene-reserve#62/cln:askrene-reserve#122\"" + "command_id": "examples.py:askrene-reserve#2/cln:askrene-reserve#3" }, { - "short_channel_id_dir": "109x1x1/1", - "amount_msat": 1250000000000, + "short_channel_id_dir": "124x1x1/0", + "amount_msat": 1250001, "age_in_seconds": 2, - "command_id": "\"-c:askrene-reserve#66/cln:askrene-reserve#126\"" + "command_id": "examples.py:askrene-reserve#3/cln:askrene-reserve#4" }, { - "short_channel_id_dir": "123x1x1/0", + "short_channel_id_dir": "124x1x1/0", "amount_msat": 1250000000000, "age_in_seconds": 2, - "command_id": "\"-c:askrene-reserve#66/cln:askrene-reserve#126\"" + "command_id": "examples.py:askrene-reserve#4/cln:askrene-reserve#5" } ] } @@ -1583,11 +1583,11 @@ "params": { "path": [ { - "short_channel_id_dir": "109x1x1/1", + "short_channel_id_dir": "110x1x0/1", "amount_msat": 1250000 }, { - "short_channel_id_dir": "123x1x1/0", + "short_channel_id_dir": "124x1x1/0", "amount_msat": 1250001 } ] @@ -1602,11 +1602,11 @@ "params": { "path": [ { - "short_channel_id_dir": "109x1x1/1", + "short_channel_id_dir": "110x1x0/1", "amount_msat": 1250000000000 }, { - "short_channel_id_dir": "123x1x1/0", + "short_channel_id_dir": "124x1x1/0", "amount_msat": 1250000000000 } ] @@ -1684,11 +1684,11 @@ "params": { "path": [ { - "short_channel_id_dir": "109x1x1/1", + "short_channel_id_dir": "110x1x0/1", "amount_msat": 1250000 }, { - "short_channel_id_dir": "123x1x1/0", + "short_channel_id_dir": "124x1x1/0", "amount_msat": 1250001 } ] @@ -1703,11 +1703,11 @@ "params": { "path": [ { - "short_channel_id_dir": "109x1x1/1", + "short_channel_id_dir": "110x1x0/1", "amount_msat": 1250000000000 }, { - "short_channel_id_dir": "123x1x1/0", + "short_channel_id_dir": "124x1x1/0", "amount_msat": 1250000000000 } ] @@ -2058,8 +2058,8 @@ "response": { "autoclean": { "succeededpays": { - "cleaned": 7, - "uncleaned": 0 + "cleaned": 0, + "uncleaned": 7 } } } @@ -2538,7 +2538,7 @@ }, "succeededpays": { "enabled": false, - "cleaned": 7 + "cleaned": 0 }, "failedpays": { "enabled": false, @@ -2826,7 +2826,7 @@ "response": { "channels_apy": [ { - "account": "channelid0120000120000120000120000120000120000120000120000120000", + "account": "252d1b0a1e57895e84137f28cf19ab2c35847e284c112fefdecc7afeaa5c1de7", "routed_out_msat": 1000000, "routed_in_msat": 510091208, "lease_fee_paid_msat": 0, @@ -2846,7 +2846,7 @@ "apy_total": "0.0160%" }, { - "account": "channelid0230000230000230000230000230000230000230000230000230000", + "account": "a397dd9b3e44afcb67f3f3ce1d649b74a8ade63e35505985e4cc1828634f69a2", "routed_out_msat": 510190102, "routed_in_msat": 0, "lease_fee_paid_msat": 0, @@ -2867,7 +2867,7 @@ "apy_total_initial": "0.0161%" }, { - "account": "channelid0250000250000250000250000250000250000250000250000250000", + "account": "f8fc83a432cbfb2fffe222cc06727fdd977b5dd10ebd6707158e799e6f522d9f", "routed_out_msat": 500000000, "routed_in_msat": 0, "lease_fee_paid_msat": 0, @@ -3294,7 +3294,7 @@ "id": "example:bkpr-editdescriptionbyoutpoint#1", "method": "bkpr-editdescriptionbyoutpoint", "params": { - "outpoint": "txidbk0101010101010101010101010101010101010101010101010101010101:1", + "outpoint": "0c609c5643e2f316985989417c48044311cf2c1fb2113a03af7d7d51b4874ac5:1", "description": "edited utxo description" } }, @@ -3307,9 +3307,9 @@ "credit_msat": 200000000000, "debit_msat": 0, "currency": "bcrt", - "outpoint": "txidbk0101010101010101010101010101010101010101010101010101010101:1", - "timestamp": 1738510000, - "blockheight": 110, + "outpoint": "0c609c5643e2f316985989417c48044311cf2c1fb2113a03af7d7d51b4874ac5:1", + "timestamp": 1738000001, + "blockheight": 106, "description": "edited utxo description" } ] @@ -3597,23 +3597,23 @@ "id": "example:bkpr-editdescriptionbypaymentid#1", "method": "bkpr-editdescriptionbypaymentid", "params": { - "payment_id": "paymentid0000202020202020202020202020202020202020202020202020202", + "payment_id": "f61aef012557d6496699642e71e2bacda5670b5377c6357fa40485813facc628", "description": "edited invoice description from description send some sats l2 to l3" } }, "response": { "updated": [ { - "account": "channelid0230000230000230000230000230000230000230000230000230000", + "account": "a397dd9b3e44afcb67f3f3ce1d649b74a8ade63e35505985e4cc1828634f69a2", "type": "channel", "tag": "invoice", "credit_msat": 500000000, "debit_msat": 0, "currency": "bcrt", - "payment_id": "paymentid0000202020202020202020202020202020202020202020202020202", + "payment_id": "f61aef012557d6496699642e71e2bacda5670b5377c6357fa40485813facc628", "part_id": 0, - "timestamp": 1738520000, "description": "edited invoice description from description send some sats l2 to l3", + "timestamp": 1738000007, "is_rebalance": false } ] @@ -3849,18 +3849,18 @@ "id": "example:bkpr-inspect#1", "method": "bkpr-inspect", "params": { - "account": "channelid0230200230200230200230200230200230200230200230200230200" + "account": "ecabe6d86abdd57565b3fb7e7c5d724e60ca1a07633951769b5dbfa48dc884b3" } }, "response": { "txs": [ { - "txid": "channeltxid230200230200230200230200230200230200230200230200230200", - "blockheight": 123, - "fees_paid_msat": 5020000, + "txid": "148a366c9a72e40af01daca6acc24e0a5648d0efb7e01f4708f23412d9deba69", + "blockheight": 124, + "fees_paid_msat": 6652000, "outputs": [ { - "account": "channelid0230200230200230200230200230200230200230200230200230200", + "account": "ecabe6d86abdd57565b3fb7e7c5d724e60ca1a07633951769b5dbfa48dc884b3", "outnum": 1, "output_tag": "channel_open", "output_value_msat": 1000000000, @@ -4152,21 +4152,21 @@ "id": "example:bkpr-listaccountevents#1", "method": "bkpr-listaccountevents", "params": [ - "channelid0230200230200230200230200230200230200230200230200230200" + "ecabe6d86abdd57565b3fb7e7c5d724e60ca1a07633951769b5dbfa48dc884b3" ] }, "response": { "events": [ { - "account": "channelid0230200230200230200230200230200230200230200230200230200", + "account": "ecabe6d86abdd57565b3fb7e7c5d724e60ca1a07633951769b5dbfa48dc884b3", "type": "chain", "tag": "channel_open", "credit_msat": 0, "debit_msat": 0, "currency": "bcrt", - "outpoint": "txidbk0101010101010101010101010101010101010101010101010101010101:1", - "timestamp": 1738500000, - "blockheight": 123 + "outpoint": "148a366c9a72e40af01daca6acc24e0a5648d0efb7e01f4708f23412d9deba69:1", + "timestamp": 1738000023, + "blockheight": 124 } ] } @@ -4179,40 +4179,401 @@ }, "response": { "events": [ + { + "account": "wallet", + "type": "chain", + "tag": "deposit", + "credit_msat": 200000000000, + "debit_msat": 0, + "currency": "bcrt", + "outpoint": "0c609c5643e2f316985989417c48044311cf2c1fb2113a03af7d7d51b4874ac5:1", + "timestamp": 1738000001, + "blockheight": 106, + "description": "edited utxo description" + }, + { + "account": "a397dd9b3e44afcb67f3f3ce1d649b74a8ade63e35505985e4cc1828634f69a2", + "type": "chain", + "tag": "channel_open", + "credit_msat": 0, + "debit_msat": 0, + "currency": "bcrt", + "outpoint": "7cce7550c4b37924bb74fd4baf8f1946a4b14c050c42f2479b04fede08652aa9:0", + "timestamp": 1738000002, + "blockheight": 112 + }, + { + "account": "wallet", + "type": "chain", + "tag": "deposit", + "credit_msat": 2000000000, + "debit_msat": 0, + "currency": "bcrt", + "outpoint": "c3f4a0f787b5ea11505afaba3e9599d6135943d0f562df3d6a7d3e7f372e2067:0", + "timestamp": 1738000003, + "blockheight": 113 + }, + { + "account": "wallet", + "type": "chain", + "tag": "withdrawal", + "credit_msat": 0, + "debit_msat": 2000000000, + "currency": "bcrt", + "outpoint": "c3f4a0f787b5ea11505afaba3e9599d6135943d0f562df3d6a7d3e7f372e2067:0", + "txid": "efa52a006f5909ed9cb8a098f2dec8ad7146a1384b6eaaf2fae7aac05077f7b6", + "timestamp": 1738000004, + "blockheight": 114 + }, + { + "account": "wallet", + "type": "onchain_fee", + "tag": "onchain_fee", + "credit_msat": 1004927000, + "debit_msat": 0, + "currency": "bcrt", + "timestamp": 1738000004, + "txid": "efa52a006f5909ed9cb8a098f2dec8ad7146a1384b6eaaf2fae7aac05077f7b6" + }, + { + "account": "wallet", + "type": "onchain_fee", + "tag": "onchain_fee", + "credit_msat": 0, + "debit_msat": 1004927000, + "currency": "bcrt", + "timestamp": 1738000004, + "txid": "efa52a006f5909ed9cb8a098f2dec8ad7146a1384b6eaaf2fae7aac05077f7b6" + }, + { + "account": "wallet", + "type": "chain", + "tag": "deposit", + "credit_msat": 995073000, + "debit_msat": 0, + "currency": "bcrt", + "outpoint": "efa52a006f5909ed9cb8a098f2dec8ad7146a1384b6eaaf2fae7aac05077f7b6:1", + "timestamp": 1738000005, + "blockheight": 114 + }, + { + "account": "21bd30cac60f477f2c4267220b1702a6ec5780db34f9934fa94b8c0508bf3357", + "type": "chain", + "tag": "channel_open", + "credit_msat": 1000000000, + "debit_msat": 0, + "currency": "bcrt", + "outpoint": "efa52a006f5909ed9cb8a098f2dec8ad7146a1384b6eaaf2fae7aac05077f7b6:0", + "timestamp": 1738000006, + "blockheight": 114 + }, + { + "account": "21bd30cac60f477f2c4267220b1702a6ec5780db34f9934fa94b8c0508bf3357", + "type": "onchain_fee", + "tag": "onchain_fee", + "credit_msat": 4927000, + "debit_msat": 0, + "currency": "bcrt", + "timestamp": 1738000006, + "txid": "efa52a006f5909ed9cb8a098f2dec8ad7146a1384b6eaaf2fae7aac05077f7b6" + }, + { + "account": "a397dd9b3e44afcb67f3f3ce1d649b74a8ade63e35505985e4cc1828634f69a2", + "type": "channel", + "tag": "invoice", + "credit_msat": 500000000, + "debit_msat": 0, + "currency": "bcrt", + "payment_id": "f61aef012557d6496699642e71e2bacda5670b5377c6357fa40485813facc628", + "part_id": 0, + "description": "edited invoice description from description send some sats l2 to l3", + "timestamp": 1738000007, + "is_rebalance": false + }, + { + "account": "21bd30cac60f477f2c4267220b1702a6ec5780db34f9934fa94b8c0508bf3357", + "type": "channel", + "tag": "invoice", + "credit_msat": 0, + "debit_msat": 500000000, + "currency": "bcrt", + "payment_id": "864ef81f03c4eabf9e3087d55b18b53beedce221f9a1bcb91d4d69767a022805", + "part_id": 0, + "description": "description send some sats l3 to l4", + "timestamp": 1738000008, + "is_rebalance": false + }, + { + "account": "a397dd9b3e44afcb67f3f3ce1d649b74a8ade63e35505985e4cc1828634f69a2", + "type": "channel", + "tag": "invoice", + "credit_msat": 10000, + "debit_msat": 0, + "currency": "bcrt", + "payment_id": "9562ee18e942b0eb2e36050c108efcb34cb07e5cdbe28d08d26bb71af1556c2f", + "part_id": 0, + "description": "Invoice description l31", + "timestamp": 1738000009, + "is_rebalance": false + }, + { + "account": "a397dd9b3e44afcb67f3f3ce1d649b74a8ade63e35505985e4cc1828634f69a2", + "type": "channel", + "tag": "invoice", + "credit_msat": 10000, + "debit_msat": 0, + "currency": "bcrt", + "payment_id": "097dcfa3b0bc58d499908855dae7d442854a02d4f2ffcc625f9385ed74f3256e", + "part_id": 0, + "description": "keysend", + "timestamp": 1738000010, + "is_rebalance": false + }, + { + "account": "21bd30cac60f477f2c4267220b1702a6ec5780db34f9934fa94b8c0508bf3357", + "type": "channel", + "tag": "routed", + "credit_msat": 0, + "debit_msat": 10000000, + "fees_msat": 101, + "currency": "bcrt", + "payment_id": "9bf787fe700121009e2ecdca290632c8bf2da853527c700aa5746173981ae584", + "part_id": 0, + "timestamp": 1738000011, + "is_rebalance": false + }, + { + "account": "a397dd9b3e44afcb67f3f3ce1d649b74a8ade63e35505985e4cc1828634f69a2", + "type": "channel", + "tag": "routed", + "credit_msat": 10000101, + "debit_msat": 0, + "fees_msat": 101, + "currency": "bcrt", + "payment_id": "9bf787fe700121009e2ecdca290632c8bf2da853527c700aa5746173981ae584", + "part_id": 0, + "timestamp": 1738000012, + "is_rebalance": false + }, + { + "account": "a397dd9b3e44afcb67f3f3ce1d649b74a8ade63e35505985e4cc1828634f69a2", + "type": "channel", + "tag": "invoice", + "credit_msat": 10000, + "debit_msat": 0, + "currency": "bcrt", + "payment_id": "da6c0b6d30ac35f62762bc7114d64d323dc79fb858061902263eb72df6310caf", + "part_id": 0, + "description": "keysend", + "timestamp": 1738000013, + "is_rebalance": false + }, + { + "account": "a397dd9b3e44afcb67f3f3ce1d649b74a8ade63e35505985e4cc1828634f69a2", + "type": "channel", + "tag": "invoice", + "credit_msat": 50000, + "debit_msat": 0, + "currency": "bcrt", + "payment_id": "ab3a5a971aa3b21494f7ce646f077232c10c9917c33375935c1aebfa571fa1a1", + "part_id": 0, + "description": "l32 description", + "timestamp": 1738000014, + "is_rebalance": false + }, + { + "account": "a397dd9b3e44afcb67f3f3ce1d649b74a8ade63e35505985e4cc1828634f69a2", + "type": "channel", + "tag": "invoice", + "credit_msat": 100000, + "debit_msat": 0, + "currency": "bcrt", + "payment_id": "2b1434d9e61da6c5f1252369f4a98e1ddce722b4db3bf15553b87a94d19d351d", + "part_id": 0, + "description": "l33 description", + "timestamp": 1738000015, + "is_rebalance": false + }, + { + "account": "21bd30cac60f477f2c4267220b1702a6ec5780db34f9934fa94b8c0508bf3357", + "type": "channel", + "tag": "routed", + "credit_msat": 0, + "debit_msat": 10000, + "fees_msat": 1, + "currency": "bcrt", + "payment_id": "1bb513fb2fbde40592243877d9f404ba3668275e2eeacd9c7264f34f04d37fd1", + "part_id": 0, + "timestamp": 1738000016, + "is_rebalance": false + }, + { + "account": "a397dd9b3e44afcb67f3f3ce1d649b74a8ade63e35505985e4cc1828634f69a2", + "type": "channel", + "tag": "routed", + "credit_msat": 10001, + "debit_msat": 0, + "fees_msat": 1, + "currency": "bcrt", + "payment_id": "1bb513fb2fbde40592243877d9f404ba3668275e2eeacd9c7264f34f04d37fd1", + "part_id": 0, + "timestamp": 1738000017, + "is_rebalance": false + }, + { + "account": "wallet", + "type": "chain", + "tag": "deposit", + "credit_msat": 510190000, + "debit_msat": 0, + "currency": "bcrt", + "outpoint": "40b4acd3759ac69b5160488d73a5890a46bf4f013381e52e9171ee038b3c96d6:1", + "timestamp": 1738000018, + "blockheight": 122 + }, + { + "account": "21bd30cac60f477f2c4267220b1702a6ec5780db34f9934fa94b8c0508bf3357", + "type": "chain", + "tag": "channel_close", + "credit_msat": 0, + "debit_msat": 489990000, + "currency": "bcrt", + "outpoint": "efa52a006f5909ed9cb8a098f2dec8ad7146a1384b6eaaf2fae7aac05077f7b6:0", + "txid": "1aa6d7b0bb6c5d1dac62724caa4e26dc37ed8af5e747c836746987d28603fed2", + "timestamp": 1738000019, + "blockheight": 122 + }, { "account": "external", - "origin": "channelid0340000340000340000340000340000340000340000340000340000", + "origin": "21bd30cac60f477f2c4267220b1702a6ec5780db34f9934fa94b8c0508bf3357", "type": "chain", "tag": "to_them", "credit_msat": 510010000, "debit_msat": 0, "currency": "bcrt", - "outpoint": "txidbk0202020202020202020202020202020202020202020202020202020202:1", - "timestamp": 1738520000, - "blockheight": 142 + "outpoint": "1aa6d7b0bb6c5d1dac62724caa4e26dc37ed8af5e747c836746987d28603fed2:1", + "timestamp": 1738000020, + "blockheight": 122 + }, + { + "account": "a397dd9b3e44afcb67f3f3ce1d649b74a8ade63e35505985e4cc1828634f69a2", + "type": "chain", + "tag": "channel_close", + "credit_msat": 0, + "debit_msat": 510190102, + "currency": "bcrt", + "outpoint": "7cce7550c4b37924bb74fd4baf8f1946a4b14c050c42f2479b04fede08652aa9:0", + "txid": "40b4acd3759ac69b5160488d73a5890a46bf4f013381e52e9171ee038b3c96d6", + "timestamp": 1738000021, + "blockheight": 122 + }, + { + "account": "a397dd9b3e44afcb67f3f3ce1d649b74a8ade63e35505985e4cc1828634f69a2", + "type": "onchain_fee", + "tag": "onchain_fee", + "credit_msat": 102, + "debit_msat": 0, + "currency": "bcrt", + "timestamp": 1738000021, + "txid": "40b4acd3759ac69b5160488d73a5890a46bf4f013381e52e9171ee038b3c96d6" + }, + { + "account": "external", + "origin": "a397dd9b3e44afcb67f3f3ce1d649b74a8ade63e35505985e4cc1828634f69a2", + "type": "chain", + "tag": "to_them", + "credit_msat": 486914000, + "debit_msat": 0, + "currency": "bcrt", + "outpoint": "40b4acd3759ac69b5160488d73a5890a46bf4f013381e52e9171ee038b3c96d6:0", + "timestamp": 1738000022, + "blockheight": 122 + }, + { + "account": "ecabe6d86abdd57565b3fb7e7c5d724e60ca1a07633951769b5dbfa48dc884b3", + "type": "chain", + "tag": "channel_open", + "credit_msat": 0, + "debit_msat": 0, + "currency": "bcrt", + "outpoint": "148a366c9a72e40af01daca6acc24e0a5648d0efb7e01f4708f23412d9deba69:1", + "timestamp": 1738000023, + "blockheight": 124 }, { "account": "wallet", "type": "chain", "tag": "deposit", - "credit_msat": 200000000000, + "credit_msat": 2000000000, "debit_msat": 0, "currency": "bcrt", - "outpoint": "txidbk0101010101010101010101010101010101010101010101010101010101:1", - "timestamp": 1738510000, - "blockheight": 141, - "description": "edited utxo description" + "outpoint": "e72c5b057eb2944ade8a57c7d1143cc5eea12f0905287ce40c2716ed7032bd29:0", + "timestamp": 1738000024, + "blockheight": 125 }, { - "account": "channelid0230000230000230000230000230000230000230000230000230000", + "account": "wallet", "type": "chain", - "tag": "channel_open", + "tag": "withdrawal", + "credit_msat": 0, + "debit_msat": 2000000000, + "currency": "bcrt", + "outpoint": "e72c5b057eb2944ade8a57c7d1143cc5eea12f0905287ce40c2716ed7032bd29:0", + "txid": "a7875c7325031784771cf9468aae991f7cb178bd9472a701339a7a5eab234af2", + "timestamp": 1738000025, + "blockheight": 126 + }, + { + "account": "wallet", + "type": "onchain_fee", + "tag": "onchain_fee", + "credit_msat": 1004927000, + "debit_msat": 0, + "currency": "bcrt", + "timestamp": 1738000025, + "txid": "a7875c7325031784771cf9468aae991f7cb178bd9472a701339a7a5eab234af2" + }, + { + "account": "wallet", + "type": "onchain_fee", + "tag": "onchain_fee", "credit_msat": 0, + "debit_msat": 1004927000, + "currency": "bcrt", + "timestamp": 1738000025, + "txid": "a7875c7325031784771cf9468aae991f7cb178bd9472a701339a7a5eab234af2" + }, + { + "account": "wallet", + "type": "chain", + "tag": "deposit", + "credit_msat": 995073000, + "debit_msat": 0, + "currency": "bcrt", + "outpoint": "a7875c7325031784771cf9468aae991f7cb178bd9472a701339a7a5eab234af2:1", + "timestamp": 1738000026, + "blockheight": 126 + }, + { + "account": "7512083907c74ed3a045e9bf772b3d72948eb93daf84a1cee57108800451aaf2", + "type": "chain", + "tag": "channel_open", + "credit_msat": 1000000000, "debit_msat": 0, "currency": "bcrt", - "outpoint": "txidbk0303030303030303030303030303030303030303030303030303030303:1", - "timestamp": 1738530000, - "blockheight": 143 + "outpoint": "a7875c7325031784771cf9468aae991f7cb178bd9472a701339a7a5eab234af2:0", + "timestamp": 1738000027, + "blockheight": 126 + }, + { + "account": "7512083907c74ed3a045e9bf772b3d72948eb93daf84a1cee57108800451aaf2", + "type": "onchain_fee", + "tag": "onchain_fee", + "credit_msat": 4927000, + "debit_msat": 0, + "currency": "bcrt", + "timestamp": 1738000027, + "txid": "a7875c7325031784771cf9468aae991f7cb178bd9472a701339a7a5eab234af2" } ] } @@ -4367,21 +4728,12 @@ "response": { "accounts": [ { - "account": "wallet", - "balances": [ - { - "balance_msat": 202050000000, - "coin_type": "bcrt" - } - ] - }, - { - "account": "channelid0230000230000230000230000230000230000230000230000230000", - "peer_id": "nodeid020202020202020202020202020202020202020202020202020202020202", + "account": "a397dd9b3e44afcb67f3f3ce1d649b74a8ade63e35505985e4cc1828634f69a2", + "peer_id": "022d223620a359a47ff7f7ac447c85c46c923da53389221a0054c11c1e3ca31d59", "we_opened": false, "account_closed": true, "account_resolved": true, - "resolved_at_block": 121, + "resolved_at_block": 122, "balances": [ { "balance_msat": 0, @@ -4390,8 +4742,8 @@ ] }, { - "account": "channelid0340000340000340000340000340000340000340000340000340000", - "peer_id": "nodeid040404040404040404040404040404040404040404040404040404040404", + "account": "21bd30cac60f477f2c4267220b1702a6ec5780db34f9934fa94b8c0508bf3357", + "peer_id": "0382ce59ebf18be7d84677c2e35f23294b9992ceca95491fcf8a56c6cb2d9de199", "we_opened": true, "account_closed": true, "account_resolved": false, @@ -4403,8 +4755,8 @@ ] }, { - "account": "channelid0230200230200230200230200230200230200230200230200230200", - "peer_id": "nodeid020202020202020202020202020202020202020202020202020202020202", + "account": "ecabe6d86abdd57565b3fb7e7c5d724e60ca1a07633951769b5dbfa48dc884b3", + "peer_id": "022d223620a359a47ff7f7ac447c85c46c923da53389221a0054c11c1e3ca31d59", "we_opened": false, "account_closed": false, "account_resolved": false, @@ -4416,8 +4768,8 @@ ] }, { - "account": "channelid0340200340200340200340200340200340200340200340200340200", - "peer_id": "nodeid040404040404040404040404040404040404040404040404040404040404", + "account": "7512083907c74ed3a045e9bf772b3d72948eb93daf84a1cee57108800451aaf2", + "peer_id": "0382ce59ebf18be7d84677c2e35f23294b9992ceca95491fcf8a56c6cb2d9de199", "we_opened": true, "account_closed": false, "account_resolved": false, @@ -4427,6 +4779,15 @@ "coin_type": "bcrt" } ] + }, + { + "account": "wallet", + "balances": [ + { + "balance_msat": 202500336000, + "coin_type": "bcrt" + } + ] } ] } @@ -4582,9 +4943,142 @@ "credit_msat": 200000000000, "debit_msat": 0, "currency": "bcrt", - "timestamp": 1738500000, + "timestamp": 1738000001, "description": "edited utxo description", - "outpoint": "txidbk0000000000000000000000000000000000000000000000000000000000:1" + "outpoint": "0c609c5643e2f316985989417c48044311cf2c1fb2113a03af7d7d51b4874ac5:1" + }, + { + "account": "wallet", + "tag": "deposit", + "credit_msat": 2000000000, + "debit_msat": 0, + "currency": "bcrt", + "timestamp": 1738000003, + "outpoint": "c3f4a0f787b5ea11505afaba3e9599d6135943d0f562df3d6a7d3e7f372e2067:0" + }, + { + "account": "wallet", + "tag": "onchain_fee", + "credit_msat": 0, + "debit_msat": 1004927000, + "currency": "bcrt", + "timestamp": 1738000004, + "txid": "efa52a006f5909ed9cb8a098f2dec8ad7146a1384b6eaaf2fae7aac05077f7b6" + }, + { + "account": "wallet", + "tag": "onchain_fee", + "credit_msat": 1004927000, + "debit_msat": 0, + "currency": "bcrt", + "timestamp": 1738000004, + "txid": "efa52a006f5909ed9cb8a098f2dec8ad7146a1384b6eaaf2fae7aac05077f7b6" + }, + { + "account": "21bd30cac60f477f2c4267220b1702a6ec5780db34f9934fa94b8c0508bf3357", + "tag": "onchain_fee", + "credit_msat": 0, + "debit_msat": 4927000, + "currency": "bcrt", + "timestamp": 1738000006, + "txid": "efa52a006f5909ed9cb8a098f2dec8ad7146a1384b6eaaf2fae7aac05077f7b6" + }, + { + "account": "a397dd9b3e44afcb67f3f3ce1d649b74a8ade63e35505985e4cc1828634f69a2", + "tag": "invoice", + "credit_msat": 500000000, + "debit_msat": 0, + "currency": "bcrt", + "timestamp": 1738000007, + "description": "edited invoice description from description send some sats l2 to l3", + "payment_id": "f61aef012557d6496699642e71e2bacda5670b5377c6357fa40485813facc628" + }, + { + "account": "21bd30cac60f477f2c4267220b1702a6ec5780db34f9934fa94b8c0508bf3357", + "tag": "invoice", + "credit_msat": 0, + "debit_msat": 500000000, + "currency": "bcrt", + "timestamp": 1738000008, + "description": "description send some sats l3 to l4", + "payment_id": "864ef81f03c4eabf9e3087d55b18b53beedce221f9a1bcb91d4d69767a022805" + }, + { + "account": "a397dd9b3e44afcb67f3f3ce1d649b74a8ade63e35505985e4cc1828634f69a2", + "tag": "invoice", + "credit_msat": 10000, + "debit_msat": 0, + "currency": "bcrt", + "timestamp": 1738000009, + "description": "Invoice description l31", + "payment_id": "9562ee18e942b0eb2e36050c108efcb34cb07e5cdbe28d08d26bb71af1556c2f" + }, + { + "account": "a397dd9b3e44afcb67f3f3ce1d649b74a8ade63e35505985e4cc1828634f69a2", + "tag": "invoice", + "credit_msat": 10000, + "debit_msat": 0, + "currency": "bcrt", + "timestamp": 1738000010, + "description": "keysend", + "payment_id": "097dcfa3b0bc58d499908855dae7d442854a02d4f2ffcc625f9385ed74f3256e" + }, + { + "account": "21bd30cac60f477f2c4267220b1702a6ec5780db34f9934fa94b8c0508bf3357", + "tag": "routed", + "credit_msat": 101, + "debit_msat": 0, + "currency": "bcrt", + "timestamp": 1738000011, + "payment_id": "9bf787fe700121009e2ecdca290632c8bf2da853527c700aa5746173981ae584" + }, + { + "account": "a397dd9b3e44afcb67f3f3ce1d649b74a8ade63e35505985e4cc1828634f69a2", + "tag": "invoice", + "credit_msat": 10000, + "debit_msat": 0, + "currency": "bcrt", + "timestamp": 1738000013, + "description": "keysend", + "payment_id": "da6c0b6d30ac35f62762bc7114d64d323dc79fb858061902263eb72df6310caf" + }, + { + "account": "a397dd9b3e44afcb67f3f3ce1d649b74a8ade63e35505985e4cc1828634f69a2", + "tag": "invoice", + "credit_msat": 50000, + "debit_msat": 0, + "currency": "bcrt", + "timestamp": 1738000014, + "description": "l32 description", + "payment_id": "ab3a5a971aa3b21494f7ce646f077232c10c9917c33375935c1aebfa571fa1a1" + }, + { + "account": "a397dd9b3e44afcb67f3f3ce1d649b74a8ade63e35505985e4cc1828634f69a2", + "tag": "invoice", + "credit_msat": 100000, + "debit_msat": 0, + "currency": "bcrt", + "timestamp": 1738000015, + "description": "l33 description", + "payment_id": "2b1434d9e61da6c5f1252369f4a98e1ddce722b4db3bf15553b87a94d19d351d" + }, + { + "account": "21bd30cac60f477f2c4267220b1702a6ec5780db34f9934fa94b8c0508bf3357", + "tag": "routed", + "credit_msat": 1, + "debit_msat": 0, + "currency": "bcrt", + "timestamp": 1738000016, + "payment_id": "1bb513fb2fbde40592243877d9f404ba3668275e2eeacd9c7264f34f04d37fd1" + }, + { + "account": "a397dd9b3e44afcb67f3f3ce1d649b74a8ade63e35505985e4cc1828634f69a2", + "tag": "onchain_fee", + "credit_msat": 0, + "debit_msat": 102, + "currency": "bcrt", + "timestamp": 1738000021, + "txid": "40b4acd3759ac69b5160488d73a5890a46bf4f013381e52e9171ee038b3c96d6" }, { "account": "wallet", @@ -4592,8 +5086,8 @@ "credit_msat": 2000000000, "debit_msat": 0, "currency": "bcrt", - "timestamp": 1738510000, - "outpoint": "txidbk0101010101010101010101010101010101010101010101010101010101:1" + "timestamp": 1738000024, + "outpoint": "e72c5b057eb2944ade8a57c7d1143cc5eea12f0905287ce40c2716ed7032bd29:0" }, { "account": "wallet", @@ -4601,8 +5095,8 @@ "credit_msat": 0, "debit_msat": 1004927000, "currency": "bcrt", - "timestamp": 1738520000, - "txid": "channeltxid340000340000340000340000340000340000340000340000340000" + "timestamp": 1738000025, + "txid": "a7875c7325031784771cf9468aae991f7cb178bd9472a701339a7a5eab234af2" }, { "account": "wallet", @@ -4610,8 +5104,17 @@ "credit_msat": 1004927000, "debit_msat": 0, "currency": "bcrt", - "timestamp": 1738530000, - "txid": "channeltxid340000340000340000340000340000340000340000340000340000" + "timestamp": 1738000025, + "txid": "a7875c7325031784771cf9468aae991f7cb178bd9472a701339a7a5eab234af2" + }, + { + "account": "7512083907c74ed3a045e9bf772b3d72948eb93daf84a1cee57108800451aaf2", + "tag": "onchain_fee", + "credit_msat": 0, + "debit_msat": 4927000, + "currency": "bcrt", + "timestamp": 1738000027, + "txid": "a7875c7325031784771cf9468aae991f7cb178bd9472a701339a7a5eab234af2" } ] } @@ -4630,28 +5133,142 @@ "credit_msat": 200000000000, "debit_msat": 0, "currency": "bcrt", - "timestamp": 1738510000, + "timestamp": 1738000001, "description": "edited utxo description", - "outpoint": "txidbk0101010101010101010101010101010101010101010101010101010101:1" + "outpoint": "0c609c5643e2f316985989417c48044311cf2c1fb2113a03af7d7d51b4874ac5:1" }, { - "account": "channelid0230000230000230000230000230000230000230000230000230000", + "account": "wallet", + "tag": "deposit", + "credit_msat": 2000000000, + "debit_msat": 0, + "currency": "bcrt", + "timestamp": 1738000003, + "outpoint": "c3f4a0f787b5ea11505afaba3e9599d6135943d0f562df3d6a7d3e7f372e2067:0" + }, + { + "account": "21bd30cac60f477f2c4267220b1702a6ec5780db34f9934fa94b8c0508bf3357", + "tag": "onchain_fee", + "credit_msat": 0, + "debit_msat": 4927000, + "currency": "bcrt", + "timestamp": 1738000006, + "txid": "efa52a006f5909ed9cb8a098f2dec8ad7146a1384b6eaaf2fae7aac05077f7b6" + }, + { + "account": "a397dd9b3e44afcb67f3f3ce1d649b74a8ade63e35505985e4cc1828634f69a2", "tag": "invoice", "credit_msat": 500000000, "debit_msat": 0, "currency": "bcrt", - "timestamp": 1738520000, + "timestamp": 1738000007, "description": "edited invoice description from description send some sats l2 to l3", - "payment_id": "paymentid0000202020202020202020202020202020202020202020202020202" + "payment_id": "f61aef012557d6496699642e71e2bacda5670b5377c6357fa40485813facc628" + }, + { + "account": "21bd30cac60f477f2c4267220b1702a6ec5780db34f9934fa94b8c0508bf3357", + "tag": "invoice", + "credit_msat": 0, + "debit_msat": 500000000, + "currency": "bcrt", + "timestamp": 1738000008, + "description": "description send some sats l3 to l4", + "payment_id": "864ef81f03c4eabf9e3087d55b18b53beedce221f9a1bcb91d4d69767a022805" + }, + { + "account": "a397dd9b3e44afcb67f3f3ce1d649b74a8ade63e35505985e4cc1828634f69a2", + "tag": "invoice", + "credit_msat": 10000, + "debit_msat": 0, + "currency": "bcrt", + "timestamp": 1738000009, + "description": "Invoice description l31", + "payment_id": "9562ee18e942b0eb2e36050c108efcb34cb07e5cdbe28d08d26bb71af1556c2f" + }, + { + "account": "a397dd9b3e44afcb67f3f3ce1d649b74a8ade63e35505985e4cc1828634f69a2", + "tag": "invoice", + "credit_msat": 10000, + "debit_msat": 0, + "currency": "bcrt", + "timestamp": 1738000010, + "description": "keysend", + "payment_id": "097dcfa3b0bc58d499908855dae7d442854a02d4f2ffcc625f9385ed74f3256e" + }, + { + "account": "21bd30cac60f477f2c4267220b1702a6ec5780db34f9934fa94b8c0508bf3357", + "tag": "routed", + "credit_msat": 101, + "debit_msat": 0, + "currency": "bcrt", + "timestamp": 1738000011, + "payment_id": "9bf787fe700121009e2ecdca290632c8bf2da853527c700aa5746173981ae584" + }, + { + "account": "a397dd9b3e44afcb67f3f3ce1d649b74a8ade63e35505985e4cc1828634f69a2", + "tag": "invoice", + "credit_msat": 10000, + "debit_msat": 0, + "currency": "bcrt", + "timestamp": 1738000013, + "description": "keysend", + "payment_id": "da6c0b6d30ac35f62762bc7114d64d323dc79fb858061902263eb72df6310caf" }, { - "account": "channelid0340200340200340200340200340200340200340200340200340200", + "account": "a397dd9b3e44afcb67f3f3ce1d649b74a8ade63e35505985e4cc1828634f69a2", + "tag": "invoice", + "credit_msat": 50000, + "debit_msat": 0, + "currency": "bcrt", + "timestamp": 1738000014, + "description": "l32 description", + "payment_id": "ab3a5a971aa3b21494f7ce646f077232c10c9917c33375935c1aebfa571fa1a1" + }, + { + "account": "a397dd9b3e44afcb67f3f3ce1d649b74a8ade63e35505985e4cc1828634f69a2", + "tag": "invoice", + "credit_msat": 100000, + "debit_msat": 0, + "currency": "bcrt", + "timestamp": 1738000015, + "description": "l33 description", + "payment_id": "2b1434d9e61da6c5f1252369f4a98e1ddce722b4db3bf15553b87a94d19d351d" + }, + { + "account": "21bd30cac60f477f2c4267220b1702a6ec5780db34f9934fa94b8c0508bf3357", + "tag": "routed", + "credit_msat": 1, + "debit_msat": 0, + "currency": "bcrt", + "timestamp": 1738000016, + "payment_id": "1bb513fb2fbde40592243877d9f404ba3668275e2eeacd9c7264f34f04d37fd1" + }, + { + "account": "a397dd9b3e44afcb67f3f3ce1d649b74a8ade63e35505985e4cc1828634f69a2", + "tag": "onchain_fee", + "credit_msat": 0, + "debit_msat": 102, + "currency": "bcrt", + "timestamp": 1738000021, + "txid": "40b4acd3759ac69b5160488d73a5890a46bf4f013381e52e9171ee038b3c96d6" + }, + { + "account": "wallet", + "tag": "deposit", + "credit_msat": 2000000000, + "debit_msat": 0, + "currency": "bcrt", + "timestamp": 1738000024, + "outpoint": "e72c5b057eb2944ade8a57c7d1143cc5eea12f0905287ce40c2716ed7032bd29:0" + }, + { + "account": "7512083907c74ed3a045e9bf772b3d72948eb93daf84a1cee57108800451aaf2", "tag": "onchain_fee", "credit_msat": 0, - "debit_msat": 6960000, + "debit_msat": 4927000, "currency": "bcrt", - "timestamp": 1738530000, - "txid": "channeltxid340200340200340200340200340200340200340200340200340200" + "timestamp": 1738000027, + "txid": "a7875c7325031784771cf9468aae991f7cb178bd9472a701339a7a5eab234af2" } ] } @@ -4965,15 +5582,15 @@ "route": [ { "amount_msat": 1011, - "id": "nodeid030303030303030303030303030303030303030303030303030303030303", + "id": "035d2b1192dfba134e10e540875d366ebc8bc353d5aa766b80c090b39c3a5d885d", "delay": 20, - "channel": "123x1x1" + "channel": "124x1x1" }, { "amount_msat": 1000, - "id": "nodeid040404040404040404040404040404040404040404040404040404040404", + "id": "0382ce59ebf18be7d84677c2e35f23294b9992ceca95491fcf8a56c6cb2d9de199", "delay": 10, - "channel": "130x1x1" + "channel": "126x1x0" } ], "payment_hash": "0000000000000000000000000000000000000000000000000000000000000000" @@ -5114,7 +5731,7 @@ } }, "response": { - "pubkey": "nodeid010101010101010101010101010101010101010101010101010101010101", + "pubkey": "0266e4598d1d3c415f572a8488830b60f7e744ed9235eb0b1ba93283b315c03518", "verified": true } } @@ -5212,7 +5829,7 @@ "id": "example:checkrune#1", "method": "checkrune", "params": { - "nodeid": "nodeid020202020202020202020202020202020202020202020202020202020202", + "nodeid": "022d223620a359a47ff7f7ac447c85c46c923da53389221a0054c11c1e3ca31d59", "rune": "_RWaZZRI7wAYU2hqlFBmYgC_dFczcpAdI_9O87YbDpg9MCZtZXRob2RebGlzdHxtZXRob2ReZ2V0fG1ldGhvZD1zdW1tYXJ5Jm1ldGhvZC9saXN0ZGF0YXN0b3Jl", "method": "listpeers", "params": {} @@ -5227,7 +5844,7 @@ "id": "example:checkrune#2", "method": "checkrune", "params": { - "nodeid": "nodeid020202020202020202020202020202020202020202020202020202020202", + "nodeid": "022d223620a359a47ff7f7ac447c85c46c923da53389221a0054c11c1e3ca31d59", "rune": "QUJEYMLGgiaJvMDv_MhR2hiMKIBTbq-PrL-KxcIlirQ9MiZtZXRob2Q9cGF5JnBuYW1lYW1vdW50bXNhdDwxMDAwMA==", "method": "pay", "params": { @@ -5433,18 +6050,18 @@ "id": "example:close#1", "method": "close", "params": { - "id": "nodeid030303030303030303030303030303030303030303030303030303030303", + "id": "035d2b1192dfba134e10e540875d366ebc8bc353d5aa766b80c090b39c3a5d885d", "unilateraltimeout": 1 } }, "response": { - "tx": "02000000000101cls00101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101", - "txid": "txid010101010101010101010101010101010101010101010101010101010101", + "tx": "02000000000101a92a6508defe049b47f2420c054cb1a446198faf4bfd74bb2479b3c45075ce7c0000000000ffffffff02026e07000000000022512085d72025e78fd08bb61119f0987ab0041f50561ada6e130c645343db8c44c2afeec8070000000000225120a7583f0c421663b8ca76fa579018b40682ef8553d73fd061cd8f216ecdced6a30400473044022064d1a5480d76bc71d44ee440a47ec30e7433812292ca8d4876e5e59cd2950e4802201ece394b4bcbf6ba3f21152236822cfb2eeed8e5897d3bf3499e9d7d1a5d092e01473044022068cd05fe53fa71118b643e5340ea3cd169a3ca655c64c0b30f78d720d79a957502200f14d30de4251cf016a3db3475fe5472772335b76dfc268dc173e6541026b1830147522102d595ae92b3544c3250fb772f214ad8d4c51425033740a5bcc357190add6d7e7a2102d6063d022691b2490ab454dee73a57c6ff5d308352b461ece69f3c284f2c241252ae00000000", + "txid": "40b4acd3759ac69b5160488d73a5890a46bf4f013381e52e9171ee038b3c96d6", "txs": [ - "02000000000101cls00101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101" + "02000000000101a92a6508defe049b47f2420c054cb1a446198faf4bfd74bb2479b3c45075ce7c0000000000ffffffff02026e07000000000022512085d72025e78fd08bb61119f0987ab0041f50561ada6e130c645343db8c44c2afeec8070000000000225120a7583f0c421663b8ca76fa579018b40682ef8553d73fd061cd8f216ecdced6a30400473044022064d1a5480d76bc71d44ee440a47ec30e7433812292ca8d4876e5e59cd2950e4802201ece394b4bcbf6ba3f21152236822cfb2eeed8e5897d3bf3499e9d7d1a5d092e01473044022068cd05fe53fa71118b643e5340ea3cd169a3ca655c64c0b30f78d720d79a957502200f14d30de4251cf016a3db3475fe5472772335b76dfc268dc173e6541026b1830147522102d595ae92b3544c3250fb772f214ad8d4c51425033740a5bcc357190add6d7e7a2102d6063d022691b2490ab454dee73a57c6ff5d308352b461ece69f3c284f2c241252ae00000000" ], "txids": [ - "txid010101010101010101010101010101010101010101010101010101010101" + "40b4acd3759ac69b5160488d73a5890a46bf4f013381e52e9171ee038b3c96d6" ], "type": "mutual" } @@ -5454,18 +6071,18 @@ "id": "example:close#2", "method": "close", "params": { - "id": "nodeid040404040404040404040404040404040404040404040404040404040404", - "destination": "bcrt1p0004040404040404040404040404040404040404040404040404040404" + "id": "0382ce59ebf18be7d84677c2e35f23294b9992ceca95491fcf8a56c6cb2d9de199", + "destination": "bcrt1qwvp8fktkxp07v0fp9jyqe7yl6rcgyu585a7pzr" } }, "response": { - "tx": "02000000000101cls10202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202", - "txid": "txid020202020202020202020202020202020202020202020202020202020202", + "tx": "02000000000101b6f77750c0aae7faf2aa6e4b38a14671adc8def298a0b89ced09596f002aa5ef0000000000ffffffff026b6f070000000000160014730274d976305fe63d212c880cf89fd0f08272873ac80700000000002251202bdd81f95d64ed2cc37d2eae725de428c91bff072d7503d87446970eedc630300400473044022008dec4948db1c9e4db4dcf8c223f554117e48c6aa0aac471de67c03163a82e4a0220018bdb9889230e0048a378efad73d3bec83c330baa727323d95ca86fe36301b701473044022022cec9df9ece54e1ca89888bdc19ed84e5202a93070d05aa9b3236f9990b440d0220376f7fd6edb49ad13596cdfd51d929a92d45bc88da3f16ed0777014a28025a2801475221021c29746e4136ddff456483df3980c2d0d5f31c93ef5ded564f7294a10d7414aa2103c47b1b2afcfd68c7b86c0976adb9a4f0835bc78242fced745d78433497a867d652ae00000000", + "txid": "1aa6d7b0bb6c5d1dac62724caa4e26dc37ed8af5e747c836746987d28603fed2", "txs": [ - "02000000000101cls10202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202" + "02000000000101b6f77750c0aae7faf2aa6e4b38a14671adc8def298a0b89ced09596f002aa5ef0000000000ffffffff026b6f070000000000160014730274d976305fe63d212c880cf89fd0f08272873ac80700000000002251202bdd81f95d64ed2cc37d2eae725de428c91bff072d7503d87446970eedc630300400473044022008dec4948db1c9e4db4dcf8c223f554117e48c6aa0aac471de67c03163a82e4a0220018bdb9889230e0048a378efad73d3bec83c330baa727323d95ca86fe36301b701473044022022cec9df9ece54e1ca89888bdc19ed84e5202a93070d05aa9b3236f9990b440d0220376f7fd6edb49ad13596cdfd51d929a92d45bc88da3f16ed0777014a28025a2801475221021c29746e4136ddff456483df3980c2d0d5f31c93ef5ded564f7294a10d7414aa2103c47b1b2afcfd68c7b86c0976adb9a4f0835bc78242fced745d78433497a867d652ae00000000" ], "txids": [ - "txid020202020202020202020202020202020202020202020202020202020202" + "1aa6d7b0bb6c5d1dac62724caa4e26dc37ed8af5e747c836746987d28603fed2" ], "type": "mutual" } @@ -5564,7 +6181,7 @@ "id": "example:commando#1", "method": "commando", "params": { - "peer_id": "nodeid020202020202020202020202020202020202020202020202020202020202", + "peer_id": "022d223620a359a47ff7f7ac447c85c46c923da53389221a0054c11c1e3ca31d59", "rune": "zFMd1fjhrAYxUeFA54TjloZqOt8JrA_i_nYwIgXkag49MA==", "method": "newaddr", "params": { @@ -5573,7 +6190,7 @@ } }, "response": { - "p2tr": "bcrt1p338x07070707070707070707070707070707070707070707070707070707" + "p2tr": "bcrt1pccrx7fmmdg6ssww0su65umpyzrt0w8fs39hc0tu04zm88etleqsq8t2an5" } }, { @@ -5581,22 +6198,22 @@ "id": "example:commando#2", "method": "commando", "params": { - "peer_id": "nodeid020202020202020202020202020202020202020202020202020202020202", + "peer_id": "022d223620a359a47ff7f7ac447c85c46c923da53389221a0054c11c1e3ca31d59", "rune": "RXgu0DD_i0wSPEZkIDyZIWL0bSAGdhvJ_GHOQdTg04A9MSZpZF4wMjY2ZTQ1OThkMWQzYzQxNWY1NyZtZXRob2Q9bGlzdHBlZXJz", "method": "listpeers", "params": [ - "nodeid030303030303030303030303030303030303030303030303030303030303" + "035d2b1192dfba134e10e540875d366ebc8bc353d5aa766b80c090b39c3a5d885d" ] } }, "response": { "peers": [ { - "id": "nodeid030303030303030303030303030303030303030303030303030303030303", + "id": "035d2b1192dfba134e10e540875d366ebc8bc353d5aa766b80c090b39c3a5d885d", "connected": true, "num_channels": 2, "netaddr": [ - "127.0.0.1:19736" + "127.0.0.1:30005" ], "features": "0898882a8a59a1" } @@ -5608,23 +6225,23 @@ "id": "example:commando#3", "method": "commando", "params": { - "peer_id": "nodeid020202020202020202020202020202020202020202020202020202020202", + "peer_id": "022d223620a359a47ff7f7ac447c85c46c923da53389221a0054c11c1e3ca31d59", "rune": "QUJEYMLGgiaJvMDv_MhR2hiMKIBTbq-PrL-KxcIlirQ9MiZtZXRob2Q9cGF5JnBuYW1lYW1vdW50bXNhdDwxMDAwMA==", "method": "pay", "params": { - "bolt11": "lnbcrt100n1pnt2bolt11invl020300000000bolt11invl020300000000bolt11invl020300000000bolt11invl020300000000bolt11invl020300000000bolt11invl020300000000bolt11invl020300000000bolt11invl020300000000bolt11invl020300000000bolt11invl020300000000", + "bolt11": "lnbcrt1pne035qsp5hu0s83c7qg77lgtagcr58sf07fvrqf27j67s2ptguw9wk8ruexfqpp50ge88lv20ge4a9ny7xc7rg8p6vqvnuuzwllkk2zng6txu7sfz3cqdqcdserxgryv4ekxunfwp6xjmmwxqyjw5qcqp99qxpqysgqrwjd83fygx3zcnupx0ftnpewajss6n4vpsugju00w8hu5lu0neujqhgw8jygwmawz8jq8pp2xu6r78f3m9yld6ky7539x5g5ahvtmqqqmgfjaa", "amount_msat": 9900 } } }, "response": { - "destination": "nodeid020202020202020202020202020202020202020202020202020202020202", - "payment_hash": "paymenthashcmdpycp10cp10cp10cp10cp10cp10cp10cp10cp10cp10cp10cp10", - "created_at": 1738000000, + "destination": "022d223620a359a47ff7f7ac447c85c46c923da53389221a0054c11c1e3ca31d59", + "payment_hash": "7a3273fd8a7a335e9664f1b1e1a0e1d300c9f38277ff6b285346966e7a091470", + "created_at": 1738000000.0, "parts": 1, "amount_msat": 9900, "amount_sent_msat": 9900, - "payment_preimage": "paymentpreimagec010101010101010101010101010101010101010101010101", + "payment_preimage": "08377744ca985c1f08377744ca985c1f08377744ca985c1f08377744ca985c1f", "status": "complete" } } @@ -5824,19 +6441,19 @@ "id": "example:connect#1", "method": "connect", "params": { - "id": "nodeid020202020202020202020202020202020202020202020202020202020202", + "id": "022d223620a359a47ff7f7ac447c85c46c923da53389221a0054c11c1e3ca31d59", "host": "localhost", - "port": 19735 + "port": 30003 } }, "response": { - "id": "nodeid020202020202020202020202020202020202020202020202020202020202", + "id": "022d223620a359a47ff7f7ac447c85c46c923da53389221a0054c11c1e3ca31d59", "features": "0898882a8a59a1", "direction": "out", "address": { "type": "ipv4", "address": "127.0.0.1", - "port": 19735 + "port": 30003 } } }, @@ -5845,19 +6462,19 @@ "id": "example:connect#2", "method": "connect", "params": { - "id": "nodeid030303030303030303030303030303030303030303030303030303030303", + "id": "035d2b1192dfba134e10e540875d366ebc8bc353d5aa766b80c090b39c3a5d885d", "host": "localhost", - "port": 19736 + "port": 30005 } }, "response": { - "id": "nodeid030303030303030303030303030303030303030303030303030303030303", + "id": "035d2b1192dfba134e10e540875d366ebc8bc353d5aa766b80c090b39c3a5d885d", "features": "0898882a8a59a1", "direction": "out", "address": { "type": "ipv4", "address": "127.0.0.1", - "port": 19736 + "port": 30005 } } } @@ -6076,19 +6693,19 @@ "id": "example:createinvoice#1", "method": "createinvoice", "params": { - "invstring": "lnbcrt100n1pnt2bolt11invl010300000000bolt11invl010300000000bolt11invl010300000000bolt11invl010300000000bolt11invl010300000000bolt11invl010300000000bolt11invl010300000000bolt11invl010300000000bolt11invl010300000000bolt11invl010300000000", + "invstring": "lnbcrt1u1pne035qsp5j9w8t9p2y6an5se63n3vkpp8c20vdsthtn78sv5t2lmt57l742wqpp5wtxkappzcsrlkmgfs6g0zyct0hkhashh7hsaxz7e65slq9fkx7fsdqcdscnxgryv4ekxunfwp6xjmmwxqyjw5qcqp9rzjqgkjyd3q5dv6gllh77kygly9c3kfy0d9xwyjyxsq2nq3c83u5vw4jqqqdcqqqqgqqqqqqqqpqqqqqzsqqc9qxpqysgqckdjpyhc4cunmkllssef4lekdrf6dmg6pq4r45ftgcfyvyx3ag0k473jegm39nl9wal6ue7y8ue6xlf7wd8f0ql4xs7fx45jm47muzqq7cecak", "label": "lbl_l13", "preimage": "0101010101010101010101010101010101010101010101010101010101010101" } }, "response": { "label": "lbl_l13", - "bolt11": "lnbcrt100n1pnt2bolt11invl020100000000bolt11invl020100000000bolt11invl020100000000bolt11invl020100000000bolt11invl020100000000bolt11invl020100000000bolt11invl020100000000bolt11invl020100000000bolt11invl020100000000bolt11invl020100000000", - "payment_hash": "paymenthashinvl0210021002100210021002100210021002100210021002100", + "bolt11": "lnbcrt1u1pne035qsp5j9w8t9p2y6an5se63n3vkpp8c20vdsthtn78sv5t2lmt57l742wqpp5wtxkappzcsrlkmgfs6g0zyct0hkhashh7hsaxz7e65slq9fkx7fsdqcdscnxgryv4ekxunfwp6xjmmwxqyjw5qcqp9rzjqgkjyd3q5dv6gllh77kygly9c3kfy0d9xwyjyxsq2nq3c83u5vw4jqqqdcqqqqgqqqqqqqqpqqqqqzsqqc9qxpqysgq2dmxu8vh2mmklw3vrq0dy4a69v7ga4mauty4cswwga4j4ahx797sjtzpj0qty3qkxcvw3nndx8f9v9230y4sjyf298m6uwz8thz9rpcqz05u35", + "payment_hash": "72cd6e8422c407fb6d098690f1130b7ded7ec2f7f5e1d30bd9d521f015363793", "amount_msat": 100000, "status": "unpaid", "description": "l13 description", - "expires_at": 1739000000, + "expires_at": 1738604800, "created_index": 7 } } @@ -6204,27 +6821,27 @@ "params": { "hops": [ { - "pubkey": "nodeid020202020202020202020202020202020202020202020202020202020202", - "payload": "payload010101010101010101010101010" + "pubkey": "022d223620a359a47ff7f7ac447c85c46c923da53389221a0054c11c1e3ca31d59", + "payload": "11020203e804019106080000700000010000" }, { - "pubkey": "nodeid030303030303030303030303030303030303030303030303030303030303", - "payload": "payload020202020202020202020202020" + "pubkey": "035d2b1192dfba134e10e540875d366ebc8bc353d5aa766b80c090b39c3a5d885d", + "payload": "11020203e804019106080000720000010000" }, { - "pubkey": "nodeid040404040404040404040404040404040404040404040404040404040404", - "payload": "payload030303030303030303030303030" + "pubkey": "0382ce59ebf18be7d84677c2e35f23294b9992ceca95491fcf8a56c6cb2d9de199", + "payload": "2b020203e804018b0822d1d843a07ff04801a9c926cfef8fbd242a35d332fde5e255e6b4c92e2fc5030f03e8" } ], - "assocdata": "assocdata0010101010101010101010101010101010101010101010101010101" + "assocdata": "47c148c1746366e4c2c7496621c22002bc2711b4d9c52cbb9c7b1fdca59c8579" } }, "response": { - "onion": "onion10101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010", + "onion": "00021d5b7e75f56e8fb8c5dbbcfdf954b89d171b35fced6bf4ad929b3b6e081e16c93046493f6f0f4e6f983b424e799b9f60ae7c75fa260760393aad7958e04ec5ea5a06e11078daa9ff31a1aaeed8b04f5ce319118a4bdda9e90861829161dd4d44164816f566d0cc219da32fdd08249068cec2fd589fb216933b95adce045364fcb6d6905a4e4169346b75e6ccfecb0cfdfd74d0574eb684b952db7df8443541cc28296f42afeafbb7a34c3f8c64dce9c0ebb37f5485f66246cbf11b7a8cd4a45d64723b7e706b1ef3eff4ce6133aa86f6c044337716bd0c1173b92b13c4d11453ab850fd945c1af91d3ce41928600bbafbc81b56e3bc704a678a783e2232bc80bc4afa93f84498127123096af80ca5295bb02b6c6524720a0f4dc81075688632b9428f6f4399a0ecf6c17e5c3015c9715af5127000787cc8d7e023f96b6e0175d600911c1dffef6a0d2a8ea8059b287e9e941810de5190ce0c274d6452a8ecc06a0cb98a9550e7e80e8eebdb9c326ca2a3f25b3147daaa68b8d5f745344938645535f858f6a4484b17322b4076714994865ac1660c4f364309bb5147c55bf8458cf6aa7420896d2cb1ee0fe301c83109a102a42d41063c32732ef0366b9b9bd7516c3f7607a54eb3255fa6589bd3ea021cb9deee71b3ea33fa9e509c085216243ea6cea4acf038fee2a4e7418f4087c79423f8bc94fda1ea7de66cb06c131304e39b20634e70721f028427093e059065e6d157cbbdb1ea02476478033164cc90b7707c612897224099c8f3cae86cf0503a1fc1c21e86f4fa7c6332786cc0c44b379516032a93d1c4853453b819d30438814b28bbb14989dfb88819e3fd9b38267b84cc052637ca9c5ae2b149fb53831e4237036cde4b6dd0c0754c52551585692beba1b4228540255ad6fd6bd7912acd47816023332a52075db994decac8cc3611a0f222638084b71a3f8f4c019af28524d96a609fd7cf2e660414b8db54a2d77087087313dea24cab947c04a3ca191d3ba8ffd5ddef72fbc6ad1fc7c71e97cc3da1b677108b907c591c32cb3a41b5636292d9db891013c2d729d67162e4388bee98469f98871af9b5580768f0db885106b981274060f1b3bca8f7297287c6688f6c30054f727d7dd9baa097175fb198b3477c2f1545ea6425f0a6df732ea4be943dff9cece87a9751be426669b1f8b3cb3f7a39f2b72ee68c287e6db1c86405b782c774c22acad3a68bb377713958f6c89e7b8a3d17e52416ea9bdb959949b47af8dd6b380ebc0481873de65edf599f3c1f51c9e4abd388e4d6ad6cf48e5c279286ed7bc683523b9c016227af1cdcf856ec11b47d3f369ac4fde6cee8e19748ef6c365c5effdc81afe560e1597891256dad1b849f550ab681b0c8ba660f1172ac3f63069140c2180537d793f899ba897dae47a848b6e4b1ceac369c59257a3c1d4f2cefe0b64e84ac010397bc55d77a8f801b227ab6453770fc9775788c4a9ce7bdc5f40aa156d1b0c4f9ef41dfbb0518151809761d22e503b9b8725704bbe4f7aaaf4188f80106354743e3f605a1cee1d6d09226176a913a3f9fe9513a081377c820e582fffd534cb27146264972b9f5362dc37cacb821e64ef711eb39addbe1a747df2b1cc54f26dfc1a32ac26297b980e4a492e2242d6d745e508e65f6162ba6e28d4f1f2177c5896c9d82019a74cd6f136e04af3a01a2178e961c0d4e63235982807579ea34f306ec0ea3f0e58a8fee4dd28c2303fa9e09e45b8c9cbc6a69aba0b838473a33e2a287f0824936bfd427f72b7bb7362a40f77136ecfe53173b2acfbbdd49ec390078926d0a9a69114312fee5a9b5ad8f7b80711f76d5ffca8632593b2ea9b2caaebf219ec7586e9d6962353f98b2882fb804a34b16946453038127de73f4e827b190f6001b7a5560b7eb978f8", "shared_secrets": [ - "sharedsecret1010101010101010101010101010101010101010101010101010", - "sharedsecret1111111111111111111111111111111111111111111111111111", - "sharedsecret1212121212121212121212121212121212121212121212121212" + "f0652f245faf69100228c62e03a064bdbc7e3ac191e1c5bb094a94c1939d8b9b", + "b252680750e43ce4fdb2bc38c9b31f6b9b37d5d1bd9abf679dfcc33047154180", + "760e4382462d61429cf7ba5af877aa82516119dfc3d7172350234b5018f87626" ] } }, @@ -6235,28 +6852,28 @@ "params": { "hops": [ { - "pubkey": "nodeid020202020202020202020202020202020202020202020202020202020202", - "payload": "payload010101010101010101010101010" + "pubkey": "022d223620a359a47ff7f7ac447c85c46c923da53389221a0054c11c1e3ca31d59", + "payload": "11020203e804019106080000700000010000" }, { - "pubkey": "nodeid030303030303030303030303030303030303030303030303030303030303", - "payload": "payload020202020202020202020202020" + "pubkey": "035d2b1192dfba134e10e540875d366ebc8bc353d5aa766b80c090b39c3a5d885d", + "payload": "11020203e804019106080000720000010000" }, { - "pubkey": "nodeid040404040404040404040404040404040404040404040404040404040404", - "payload": "payload030303030303030303030303030" + "pubkey": "0382ce59ebf18be7d84677c2e35f23294b9992ceca95491fcf8a56c6cb2d9de199", + "payload": "2b020203e804018b0822d1d843a07ff04801a9c926cfef8fbd242a35d332fde5e255e6b4c92e2fc5030f03e8" } ], - "assocdata": "assocdata0010101010101010101010101010101010101010101010101010101", + "assocdata": "47c148c1746366e4c2c7496621c22002bc2711b4d9c52cbb9c7b1fdca59c8579", "session_key": "4141414141414141414141414141414141414141414141414141414141414141" } }, "response": { - "onion": "onion20202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020", + "onion": "0002eec7245d6b7d2ccb30380bfbe2a3648cd7a942653f5aa340edcea1f2836866191c78fd992adb6335814526c8f53ab57e22cd57b69c19115ac040a9b54cfee007a2aed47573c7939d15b1411605e9e0f03698d38499e802a15853122723857dbddb629cf2e16a1292a1c951ca4211efadc17b6e219e5dacfe19ee6288cc29ddd440c056ed1ea9fa2c0caea86d7b0de9338326e4f13bb1cda872a64a836a729350f2e79c3ac8618ddfacbd70d588759e8701901d74b64bf51f1c21cdc785b54dc5a6ba39fc75f956b60a372f6421a84f6001b294487baf1bb049b7bd901c5854c0999a82095874b02da90021a685f7c77f4b724a3d27489c091807b32bcdfb2c68f69b50c0b43c78288c333dbb007874f36fcf224fbc2ed89690f64a62b5ecfe6275750eb1a5575f689ca6d59c9a570689372db120cf6a29177caaace5ac671a3607d37a3048af18d1d736ac8a4dde8efc4884f8eab23cdc8cb15170471ee7b416b5cf089dee8ab8ac3eea6700a6040839c1e86f6d2b5acf9c7bac856cae96e9d1b7142f91ac4818cf0007a23100ae621470ac2552116f30948f21602237d12d29f58ca73f10f05b38f7b4b728fcfd8aafc1a82502aae3081c4bc8a77771aef16247bcf26d8569140441c405a3c21a649a8439797f45e7c37a2025318f4c88e3eba454fd4cc37e9978b59fa7b1e41af450523713fdad8070c7abdeea299474c99b2bde737e8c8ad79cb9fdd70a935ad29504d185bf100a339d203cd929030454a6450132255fea11ba0c6a520fa7cc3b8638f8032a61c492f7f9d1ec591a851f25df9238945ae467126b64019f21a71a2d3ef46cdd7b61773ad632dc77e0bda7d06b493efe940d9b975ebb85c423a83d24966f5e2ae2ec9c3b2257cc21a4989dd016d688865ba5245667c302e408dc56ffdf4282ad834f0c5af1ce49b3997fe397faf6874cac24ae346b4e72e468506c0e724efe6f805e0fd115de39b6fa29d05e11bbe2ec27548517f93ebd7b977b13237ab9c40ff5766f7263ea1f2eabba460600cd7da082fcf8d0a7bd37054abfd6040f886dde48cf600612b5b73a44026e79d46336de73f2ea5fbfc9603ccd89f6954e5093b6bfe556e6f67deb0878128049186f7ac6ef461a56c2bb4f24a9679fb386e06052c3da2f367f14bc41ec191f5b0b7b3ccad1f2cc58c863c49055c889b8b04b6b6cbaec50d0d103d4ea0da75952a730b07cea0da43914b5ab3f30b5104d9a75eb003da0b5b97bf9eb9081194cc5b50362041a972841bdafde31909929237ed5b94c88dd05126cdb3fd25add0c777c2ad021e1a0e7140d6c4c2005cb353a7a6a747ee75467c052f55faa485cbcf3758eafba7a8ef00d1481cc0f05af539116f443cb02a7b30a3de899dc66cb0781ccccf5c8d93b34be0665d11cbca55cd7a424b958124edf1289c7f4fc19c1be8fc7a861ce47c43a641bafdb195e1c74a1fbf69dbd518013f3dbf2860818b5a3e6f1dd36a5546bfd416e9714dec29818ecd1aeeb29c319b407c497621248d232680417486698a3e1262f03a8bc6441d1de40ae351dae4527a8efe25fc68a3f1571aa556edd6bfb9db7caba4d2c02bab003c43055f5d3ebf961735c3b1f4cd3e0a96038697a95cceac08c0aff084450cf571f81c95d468826aa4292997ccfeba32db77c4c22a9d3caa0a37a8a961ac2f2c8a6965687143bc93c620503839fd7bd7fc2e6d9c966586b713f824b8e9d3de55cb1b81f9204b92dfaa066920c0910e62e59650e904e05b94bde3e467d45719d6a3b85a71c8ff1dcca5a5f497928db5f64c55aad93513e87f4f0c93a6fa5a9afe929cf8223ea509f584913844044aa23a4afa4bc0ad975f4904aab5d77b5e51511460a3b7a3bfa335d623f0f5949b72174681526f075633af9234092fd1f7a5c6767292ef5", "shared_secrets": [ - "sharedsecret2020202020202020202020202020202020202020202020202020", - "sharedsecret2121212121212121212121212121212121212121212121212121", - "sharedsecret2222222222222222222222222222222222222222222222222222" + "2d7581974cde41b42da1d0a3147704aae5a71e8987fa30dc920c8cdf784b661d", + "bb599b824ce9e123c8cb27cd50a996e5035b8ae903356dcbff224496aab3a891", + "7bc4f97c2d18d5372ef572334e31590ec36b33220d7a71fa4e0fe841174eaccb" ] } } @@ -6975,7 +7592,7 @@ "response": { "datastoreusage": { "key": "[]", - "total_bytes": 2909 + "total_bytes": 2958 } } }, @@ -9442,7 +10059,7 @@ "id": "example:decode#2", "method": "decode", "params": [ - "lnbcrt100n1pnt2bolt11invl020200000000bolt11invl020200000000bolt11invl020200000000bolt11invl020200000000bolt11invl020200000000bolt11invl020200000000bolt11invl020200000000bolt11invl020200000000bolt11invl020200000000bolt11invl020200000000" + "lnbcrt2u1pne035qsp5u7glcpdagz8xcw9nw4t7xjhad5fjk9vu9h6s4da9tue6cj6x772spp52jyd84j7psgd4u2tp627hsrf9ntzptcjl3ywn03v4fdsehw4s2ysdqcdserygryv4ekxunfwp6xjmmwxqyjw5qcqp9rzjqdwjkyvjm7apxnssu4qgwhfkd67ghs6n6k48v6uqczgt88p6tky96qqqwqqqqqgqqqqqqqqpqqqqqzsqqc9qxpqysgqdyykau6tf258sy2g5q94ma8jqthrs7zszaj2y4wj23dznnz5rcvxvxvkkv76uj076mz5std62p3gf2kvycq29t69345667cvs0pmvzsq4lawhd" ] }, "response": { @@ -9450,25 +10067,25 @@ "currency": "bcrt", "created_at": 1738000000, "expiry": 604800, - "payee": "nodeid020202020202020202020202020202020202020202020202020202020202", + "payee": "022d223620a359a47ff7f7ac447c85c46c923da53389221a0054c11c1e3ca31d59", "amount_msat": 200000, "description": "l22 description", "min_final_cltv_expiry": 5, - "payment_secret": "paymentsecretinvl00220002200022000220002200022000220002200022000", + "payment_secret": "e791fc05bd408e6c38b37557e34afd6d132b159c2df50ab7a55f33ac4b46f795", "features": "02024100", "routes": [ [ { - "pubkey": "nodeid030303030303030303030303030303030303030303030303030303030303", - "short_channel_id": "111x1x1", + "pubkey": "035d2b1192dfba134e10e540875d366ebc8bc353d5aa766b80c090b39c3a5d885d", + "short_channel_id": "112x1x0", "fee_base_msat": 1, "fee_proportional_millionths": 10, "cltv_expiry_delta": 6 } ] ], - "payment_hash": "paymenthashinvl0220022002200220022002200220022002200220022002200", - "signature": "dcde30c4bb50bed221009d010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101", + "payment_hash": "5488d3d65e0c10daf14b0e95ebc0692cd620af12fc48e9be2caa5b0cddd58289", + "signature": "3044022069096ef34b4aa8781148a00b5df4f202ee3878501764a255d2545a29cc541e180220661996b33dae49fed6c5482dba506284aacc2600a2af458d69ad7b0c83c3b60a", "valid": true } } @@ -9749,32 +10366,32 @@ "id": "example:decodepay#1", "method": "decodepay", "params": { - "bolt11": "lnbcrt100n1pnt2bolt11invl010100000000bolt11invl010100000000bolt11invl010100000000bolt11invl010100000000bolt11invl010100000000bolt11invl010100000000bolt11invl010100000000bolt11invl010100000000bolt11invl010100000000bolt11invl010100000000" + "bolt11": "lnbcrt100n1pne035qsp57ygq6nedvja7wf8r0qlv8zfhyuk3knlhx4pcenp56z86nxcjgr8qpp5l5drs7dcy2vsh8a0u056vc0cqm0n6xkqxwk7mp6h4ptfmdt0lwsqdqcdscnzgryv4ekxunfwp6xjmmwxqyjw5qcqp9rzjqgkjyd3q5dv6gllh77kygly9c3kfy0d9xwyjyxsq2nq3c83u5vw4jqqqdcqqqqgqqqqqqqqpqqqqqzsqqc9qxpqysgql3cft8k3t9ztqvu27r0ek2j2a8hsas62rlsuyztyn3sayxtqppmxre3vsy780lrw0uylnyks7wwn54vnj3gqmyt5nywkc4w5paepzygqym8dle" } }, "response": { "currency": "bcrt", "created_at": 1738000000, "expiry": 604800, - "payee": "nodeid010101010101010101010101010101010101010101010101010101010101", + "payee": "0266e4598d1d3c415f572a8488830b60f7e744ed9235eb0b1ba93283b315c03518", "amount_msat": 10000, "description": "l11 description", "min_final_cltv_expiry": 5, - "payment_secret": "paymentsecretinvl00110001100011000110001100011000110001100011000", + "payment_secret": "f1100d4f2d64bbe724e3783ec38937272d1b4ff735438ccc34d08fa99b1240ce", "features": "02024100", "routes": [ [ { - "pubkey": "nodeid020202020202020202020202020202020202020202020202020202020202", - "short_channel_id": "109x1x1", + "pubkey": "022d223620a359a47ff7f7ac447c85c46c923da53389221a0054c11c1e3ca31d59", + "short_channel_id": "110x1x0", "fee_base_msat": 1, "fee_proportional_millionths": 10, "cltv_expiry_delta": 6 } ] ], - "payment_hash": "paymenthashinvl0110011001100110011001100110011001100110011001100", - "signature": "dcdepay30c4bb50bed209d020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202" + "payment_hash": "fd1a3879b822990b9fafe3e9a661f806df3d1ac033aded8757a8569db56ffba0", + "signature": "3045022100fc70959ed15944b0338af0df9b2a4ae9ef0ec34a1fe1c209649c61d219600876022061e62c813c77fc6e7f09f992d0f39d3a559394500d9174991d6c55d40f721111" } } ] @@ -9982,7 +10599,7 @@ "id": "example:delforward#1", "method": "delforward", "params": { - "in_channel": "109x1x1", + "in_channel": "110x1x0", "in_htlc_id": 4, "status": "local_failed" } @@ -9994,7 +10611,7 @@ "id": "example:delforward#2", "method": "delforward", "params": { - "in_channel": "109x1x1", + "in_channel": "110x1x0", "in_htlc_id": 21, "status": "failed" } @@ -10308,12 +10925,12 @@ }, "response": { "label": "lbl_l36", - "bolt11": "lnbcrt222n1pnt3005720bolt113000101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101", - "payment_hash": "paymenthashdelinv10101010101010101010101010101010101010101010101", + "bolt11": "lnbcrt500u1pne035qsp5m5fegjlm0t8c5hfk8mkr73sz64956chjunxgjar5can3jgdc0ptqpp59p68dl5sc9sdpxle29tyd8wrelyzudnvgemvndm57fs9r02xt2tqdqcdsenvgryv4ekxunfwp6xjmmwxqyjw5qcqp9rzjqgkjyd3q5dv6gllh77kygly9c3kfy0d9xwyjyxsq2nq3c83u5vw4jqqq0sqqqqgqqyqqqqqpqqqqqzsqqc9qxpqysgqx5puexlrq20ducnx5wky8y0vkmu798rxa4cg704ty55hwks60yjnyfc94kdwtanrk45sydh3zp992mpg0xfuk65kl8knaqkjfpv8hvcpfa27ne", + "payment_hash": "287476fe90c160d09bf95156469dc3cfc82e366c4676c9b774f26051bd465a96", "amount_msat": 50000000, "status": "unpaid", "description": "l36 description", - "expires_at": 1739000000, + "expires_at": 1738604800, "created_index": 9 } }, @@ -10329,15 +10946,15 @@ }, "response": { "label": "lbl_l37", - "bolt11": "lnbcrt222n1pnt3005720bolt113000101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101", - "payment_hash": "paymenthashdelinv20202020202020202020202020202020202020202020202", + "bolt11": "lnbcrt500u1pne035qsp50zcqdgkx0dwzlksvkntzmmuednc9mxdnnzrghatwffw5fycnkpcqpp58x5gmhrfe9e60ygy82rh5s27m2zq3zyynfwhzawfvessg5fljg6sdqcdsenwgryv4ekxunfwp6xjmmwxqyjw5qcqp9rzjqgkjyd3q5dv6gllh77kygly9c3kfy0d9xwyjyxsq2nq3c83u5vw4jqqq0sqqqqgqqyqqqqqpqqqqqzsqqc9qxpqysgqxdq9h7j2xkfjvm8ansypq8w2xvawhdu5wwzpkg9ar2al66d6uae8lxzx6maekk0pgae6fzeauglsxvqplc3lw30fzv430a7nmccv0lcq0du8d6", + "payment_hash": "39a88ddc69c973a791043a877a415eda840888849a5d7175c9666104513f9235", "amount_msat": 50000000, "status": "paid", "pay_index": 9, "amount_received_msat": 50000000, - "paid_at": 1738500000, - "payment_preimage": "paymentpreimagedelinv01010101010101010101010101010101010101010101", - "expires_at": 1739000000, + "paid_at": 1738000000, + "payment_preimage": "83ffe698292fbb6583ffe698292fbb6583ffe698292fbb6583ffe698292fbb65", + "expires_at": 1738604800, "created_index": 10, "updated_index": 9 } @@ -10559,7 +11176,7 @@ "id": "example:delpay#1", "method": "delpay", "params": { - "payment_hash": "paymenthashdelpay10101010101010101010101010101010101010101010101", + "payment_hash": "342cbb1cb564e8f32eb64fe8c254abf5ec5f6b87a0f8de7909caf8e658f3bd2a", "status": "complete" } }, @@ -10568,17 +11185,17 @@ { "created_index": 1, "id": 1, - "payment_hash": "paymenthashdelpay10101010101010101010101010101010101010101010101", + "payment_hash": "342cbb1cb564e8f32eb64fe8c254abf5ec5f6b87a0f8de7909caf8e658f3bd2a", "groupid": 1, "updated_index": 1, - "destination": "nodeid020202020202020202020202020202020202020202020202020202020202", + "destination": "022d223620a359a47ff7f7ac447c85c46c923da53389221a0054c11c1e3ca31d59", "amount_msat": 500000000, "amount_sent_msat": 500000000, "created_at": 1738000000, - "completed_at": 1738500000, + "completed_at": 1738000000, "status": "complete", - "payment_preimage": "paymentpreimgdp1010101010101010101010101010101010101010101010101", - "bolt11": "lnbcrt222n1pnt3005720bolt114000101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101" + "payment_preimage": "08377744ca985c1808377744ca985c1808377744ca985c1808377744ca985c18", + "bolt11": "lnbcrt5m1pne035qsp5y09we8jhy4ug66c945kzkqyqzrhhqsap22q07wnawlgntwa5ca2spp5xsktk894vn50xt4kfl5vy49t7hk976u85rudu7gfetuwvk8nh54qdpcv3jhxcmjd9c8g6t0dcs8xetwvss8xmmdv5s8xct5wvsxcvfqw3hjqmpjxqyjw5qcqp9rzjqdwjkyvjm7apxnssu4qgwhfkd67ghs6n6k48v6uqczgt88p6tky96qqqwqqqqqgqqqqqqqqpqqqqqzsqqc9qxpqysgqvsru69ylhpkda6980sl996q2fmld2zszepv79zf747la6zzt8mf8p0qw80w6j8d5evc72fls4d99sza23nnm6pahjqrs8kv3apdttjcq2mm2xw" } ] } @@ -10588,7 +11205,7 @@ "id": "example:delpay#2", "method": "delpay", "params": [ - "paymenthashdelpay20202020202020202020202020202020202020202020202", + "287476fe90c160d09bf95156469dc3cfc82e366c4676c9b774f26051bd465a96", "failed" ] }, @@ -10597,16 +11214,16 @@ { "created_index": 23, "id": 23, - "payment_hash": "paymenthashdelinv10101010101010101010101010101010101010101010101", + "payment_hash": "287476fe90c160d09bf95156469dc3cfc82e366c4676c9b774f26051bd465a96", "groupid": 1, "updated_index": 22, - "destination": "nodeid030303030303030303030303030303030303030303030303030303030303", + "destination": "035d2b1192dfba134e10e540875d366ebc8bc353d5aa766b80c090b39c3a5d885d", "amount_msat": 50000000, "amount_sent_msat": 50000501, "created_at": 1738000000, - "completed_at": 1738500000, + "completed_at": 1738000000, "status": "failed", - "bolt11": "lnbcrt222n1pnt3005720bolt113000101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101" + "bolt11": "lnbcrt500u1pne035qsp5m5fegjlm0t8c5hfk8mkr73sz64956chjunxgjar5can3jgdc0ptqpp59p68dl5sc9sdpxle29tyd8wrelyzudnvgemvndm57fs9r02xt2tqdqcdsenvgryv4ekxunfwp6xjmmwxqyjw5qcqp9rzjqgkjyd3q5dv6gllh77kygly9c3kfy0d9xwyjyxsq2nq3c83u5vw4jqqq0sqqqqgqqyqqqqqpqqqqqzsqqc9qxpqysgqx5puexlrq20ducnx5wky8y0vkmu798rxa4cg704ty55hwks60yjnyfc94kdwtanrk45sydh3zp992mpg0xfuk65kl8knaqkjfpv8hvcpfa27ne" } ] } @@ -10616,7 +11233,7 @@ "id": "example:delpay#3", "method": "delpay", "params": { - "payment_hash": "paymenthashdelpay30303030303030303030303030303030303030303030303", + "payment_hash": "2b924194d169a96d9cc35b66ae912507e18ace9ef679fcb5324636ff73be410a", "status": "failed", "groupid": 1, "partid": 2 @@ -10627,15 +11244,15 @@ { "created_index": 20, "id": 20, - "payment_hash": "paymenthashdelpay30303030303030303030303030303030303030303030303", + "payment_hash": "2b924194d169a96d9cc35b66ae912507e18ace9ef679fcb5324636ff73be410a", "groupid": 1, "updated_index": 19, "partid": 2, - "destination": "nodeid040404040404040404040404040404040404040404040404040404040404", + "destination": "0382ce59ebf18be7d84677c2e35f23294b9992ceca95491fcf8a56c6cb2d9de199", "amount_msat": 1000000, "amount_sent_msat": 1000000, "created_at": 1738000000, - "completed_at": 1738500000, + "completed_at": 1738000000, "status": "failed" } ] @@ -10809,13 +11426,13 @@ "id": "example:dev-forget-channel#1", "method": "dev-forget-channel", "params": { - "id": "nodeid050505050505050505050505050505050505050505050505050505050505" + "id": "032cf15d1ad9c4a08d26eab1918f732d8ef8fdc6abb9640bf3db174372c491304e" } }, "response": { "forced": false, "funding_unspent": false, - "funding_txid": "fundingtxid00101010101010101010101010101010101010101010101010101" + "funding_txid": "92dc0d9921d6c5beda83bddd3d1575fb673493f354c0a8cd91c6b139620c3155" } }, { @@ -10826,15 +11443,15 @@ "id": "example:dev-forget-channel#2", "method": "dev-forget-channel", "params": { - "id": "nodeid030303030303030303030303030303030303030303030303030303030303", - "short_channel_id": "111x1x1", + "id": "035d2b1192dfba134e10e540875d366ebc8bc353d5aa766b80c090b39c3a5d885d", + "short_channel_id": "112x1x0", "force": true } }, "response": { "forced": true, "funding_unspent": false, - "funding_txid": "fundingtxid00202020202020202020202020202020202020202020202020202" + "funding_txid": "7cce7550c4b37924bb74fd4baf8f1946a4b14c050c42f2479b04fede08652aa9" } } ] @@ -11366,14 +11983,14 @@ "id": "example:disableinvoicerequest#1", "method": "disableinvoicerequest", "params": { - "invreq_id": "invreqid02020202020202020202020202020202020202020202020202020202" + "invreq_id": "c5b8ebc06bdc246d7b852ce5637be459d3c053a5b3f8f68854f97af7371c9a50" } }, "response": { - "invreq_id": "invreqid02020202020202020202020202020202020202020202020202020202", + "invreq_id": "c5b8ebc06bdc246d7b852ce5637be459d3c053a5b3f8f68854f97af7371c9a50", "active": false, "single_use": true, - "bolt12": "lno1qgsq000bolt240002400024000240002400024000240002400024000240002400024000240002400024000240002400024000240002400024000240002400024000", + "bolt12": "lnr1qqg99gqg2990zl3j22sqs52279lryzsk2fjhzat9wd6xjmn8ypnx7u3qd9h8vmmfvdj3yyrrd35kw6r5de5kueeqwd6x7un92qsqvgnwgcg35z6ee2h3yczraddm72xrfua9uve2rlrm9deu7xyfzr6jqwvfdqzcyypz6g3kyz34nfrl7lm6c3rushzxey3a55ecjgs6qp2vz8q78j336k0sgr76j2yl0lrljzljjdz8ztcpryunwgfk4hzz3sle3mhaw8v2gc4dn9map7v6dlpya98jy2mcrwe27qcsywlfqp6dhh30l54sj0e8tqsk", "used": false } } @@ -11474,14 +12091,14 @@ "id": "example:disableoffer#1", "method": "disableoffer", "params": { - "offer_id": "offeridl23000002300000230000023000002300000230000023000002300000" + "offer_id": "b791f88cebf775853112c30828e116487f4d6c252d669372532b468bc7de8a24" } }, "response": { - "offer_id": "offeridl23000002300000230000023000002300000230000023000002300000", + "offer_id": "b791f88cebf775853112c30828e116487f4d6c252d669372532b468bc7de8a24", "active": false, "single_use": false, - "bolt12": "lno1qgsq000bolt230002300023000230002300023000230002300023000230002300023000230002300023000230002300023000230002300023000230002300023000", + "bolt12": "lno1qgsqvgnwgcg35z6ee2h3yczraddm72xrfua9uve2rlrm9deu7xyfzrcgqv0gfqq2zp8kven9wgs8gmeqg35hxctzd3j3vggz953rvg9rtxj8lalh43z8epwydjfrmffn3y3p5qz5cywpu09rr4vs", "used": false } } @@ -11541,7 +12158,7 @@ "id": "example:disconnect#1", "method": "disconnect", "params": { - "id": "nodeid040404040404040404040404040404040404040404040404040404040404", + "id": "0382ce59ebf18be7d84677c2e35f23294b9992ceca95491fcf8a56c6cb2d9de199", "force": false } }, @@ -11552,7 +12169,7 @@ "id": "example:disconnect#2", "method": "disconnect", "params": { - "id": "nodeid050505050505050505050505050505050505050505050505050505050505", + "id": "032cf15d1ad9c4a08d26eab1918f732d8ef8fdc6abb9640bf3db174372c491304e", "force": true } }, @@ -11727,14 +12344,14 @@ "id": "example:enableoffer#1", "method": "enableoffer", "params": { - "offer_id": "offeridl23000002300000230000023000002300000230000023000002300000" + "offer_id": "b791f88cebf775853112c30828e116487f4d6c252d669372532b468bc7de8a24" } }, "response": { - "offer_id": "offeridl23000002300000230000023000002300000230000023000002300000", + "offer_id": "b791f88cebf775853112c30828e116487f4d6c252d669372532b468bc7de8a24", "active": true, "single_use": false, - "bolt12": "lno1qgsq000bolt230002300023000230002300023000230002300023000230002300023000230002300023000230002300023000230002300023000230002300023000", + "bolt12": "lno1qgsqvgnwgcg35z6ee2h3yczraddm72xrfua9uve2rlrm9deu7xyfzrcgqv0gfqq2zp8kven9wgs8gmeqg35hxctzd3j3vggz953rvg9rtxj8lalh43z8epwydjfrmffn3y3p5qz5cywpu09rr4vs", "used": false } } @@ -12426,7 +13043,7 @@ "offer": "lno1zr5qyugqgskrk70kqmuq7v3dnr2fnmhukps9n8hut48vkqpqnskt2svsqwjakp7k6pyhtkuxw7y2kqmsxlwruhzqv0zsnhh9q3t9xhx39suc6qsr07ekm5esdyum0w66mnx8vdquwvp7dp5jp7j3v5cp6aj0w329fnkqqv60q96sz5nkrc5r95qffx002q53tqdk8x9m2tmt85jtpmcycvfnrpx3lr45h2g7na3sec7xguctfzzcm8jjqtj5ya27te60j03vpt0vq9tm2n9yxl2hngfnmygesa25s4u4zlxewqpvp94xt7rur4rhxunwkthk9vly3lm5hh0pqv4aymcqejlgssnlpzwlggykkajp7yjs5jvr2agkyypcdlj280cy46jpynsezrcj2kwa2lyr8xvd6lfkph4xrxtk2xc3lpq" } ], - "proof": "0473656e64proof00001proof00001proof00001proof00001proof00001proof00001proof00001proof00001proof00001proof00001" + "proof": "0473656e6404736f6d650475736572105f626974636f696e2d7061796d656e740673617473746f026d65000005000100000e10002c046d6174740475736572105f626974636f696e2d7061796d656e740b6d617474636f72616c6c6f03636f6d000473656e6404736f6d650475736572105f626974636f696e2d7061796d656e740673617473746f026d6500002e000100000e10005d00050d0600000e1068cbae9b68b92483d1730673617473746f026d6500791e02a2bcc49002f748cf633b058fabf9975dce37ae6383429819624a898a0e6c7f4931fd84ca7ba8120c00f220a9a71a799c8e91acd635a34281dc4bc33e0f046d6174740475736572105f626974636f696e2d7061796d656e740b6d617474636f72616c6c6f03636f6d000010000100000e1001ecff626974636f696e3a626331717a7477793678656e337a647474377a3076726761706d6a74667a3861636a6b6670356670376c3f6c6e6f3d6c6e6f317a7235717975677167736b726b37306b716d7571377633646e7232666e6d68756b7073396e386875743438766b7170716e736b743273767371776a616b70376b36707968746b7578773779326b716d73786c777275687a7176307a736e686839713374397868783339737563367173723037656b6d3565736479756d307736366d6e783876647175777670376470356a70376a337635637036616a3077333239666e6b7171763630713936737a356e6b726335723935716666783030327135337471646beb3878396d32746d7438356a74706d63796376666e727078336c723435683267376e6133736563377867756374667a7a636d386a6a71746a3579613237746536306a303376707430767139746d326e3979786c32686e67666e6d79676573613235733475347a6c78657771707670393478743772757234726878756e776b74686b39766c79336c6d356868307071763461796d6371656a6c6773736e6c707a776c6767796b6b616a7037796a73356a76723261676b79797063646c6a323830637934366a70796e73657a72636a326b7761326c797238787664366c666b706834787278746b327863336c7071046d6174740475736572105f626974636f696e2d7061796d656e740b6d617474636f72616c6c6f03636f6d00002e000100000e10006300100d0500000e1068ccc7d068ba3db826480b6d617474636f72616c6c6f03636f6d00f68a7e7a8f8643e433f854a733dd74db2a4ae01812ffaaed6d1243d7a665d518cf5b37c101d147329e5ba45d95fd1e8ca71e77894305e1081e7b0f442d20fdc90673617473746f026d6500002b000100000e1000245b360d022333b5ea25720720a8c54553c0641e8ccb8a917af20c694f10bf7ce3851e3f6e0673617473746f026d6500002b000100000e100024c4010d02a229c6d54c38b7bb723b48a6aceab1e7fdb6ae2a22b9b57c5ca6b942ed8ea2fe0673617473746f026d6500002e000100000e100096002b080200000e1068d1697c68b5abece2ad026d65006ed35281fc11d421c48a99a7c8b822442269ba75aa723517f93bd346c11ae9c23377a4d0ca9845a09fbed97fb3684219a197fb9bc9cbd7085fb7404c40a5d8bf6deacb0f6ab7036bf5ea979b0fd000a2da96da313b5d63bbe33efe58550af3ccccd1a107b87a6ee3e61abc92e6b87a300bcafd8f12e6c6197f3d4b82116749b0026d6500002b00010000bfd80024b12808027708c8a6d5d72b63214bbff50cb54553f7e07a1fa5e9074bd8d63c43102d8559026d6500002e00010000bfd80113002b08010001518068d0594068bf27b0b5690028415c2b258249314cf220c0631e898b98c786853de415c336421fbd0e2a4a50d64aeff8a369d0c0eb79b311b4c2732c1b902987986fe1ee230142fe2deccdc09647551f094e69a6ea8a813b0688b7cbbc846ecea7683c02ac45d0ff3cc2b6fda10233afdf963fa61c58a835684c7d708fab49efc38866675dec7787dbd8066492e2d77d70e6cd50893533ab80f2a2817a6476ad054ffad9c5dfdd68ecfece3c73eecc1fa0c2ac4c130014af201f11feef6788c8e91286a4279e06b491c55824a0718a2bf1775485c4f86ee834655e32be4a2f1b500d240008da68632c1134c21463151f5c5323944e2349536db8d822636eed2ec8fedb8c0f6692fcf066b59c000030000100005da101080101030803010001acffb409bcc939f831f7a1e5ec88f7a59255ec53040be432027390a4ce896d6f9086f3c5e177fbfe118163aaec7af1462c47945944c4e2c026be5e98bbcded25978272e1e3e079c5094d573f0e83c92f02b32d3513b1550b826929c80dd0f92cac966d17769fd5867b647c3f38029abdc48152eb8f207159ecc5d232c7c1537c79f4b7ac28ff11682f21681bf6d6aba555032bf6f9f036beb2aaa5b3778d6eebfba6bf9ea191be4ab0caea759e2f773a1f9029c73ecb8d5735b9321db085f1b8e2d8038fe2941992548cee0d67dd4547e11dd63af9c9fc1c5466fb684cf009d7197c2cf79e792ab501e6a8a1ca519af2cb9b5f6367e94c0d47502451357be1b5000030000100005da101080101030803010001af7a8deba49d995a792aefc80263e991efdbc86138a931deb2c65d5682eab5d3b03738e3dfdc89d96da64c86c0224d9ce02514d285da3068b19054e5e787b2969058e98e12566c8c808c40c0b769e1db1a24a1bd9b31e303184a31fc7bb56b85bbba8abc02cd5040a444a36d47695969849e16ad856bb58e8fac8855224400319bdab224d83fc0e66aab32ff74bfeaf0f91c454e6850a1295207bbd4cdde8f6ffb08faa9755c2e3284efa01f99393e18786cb132f1e66ebc6517318e1ce8a3b7337ebb54d035ab57d9706ecd9350d4afacd825e43c8668eece89819caf6817af62dc4fbd82f0e33f6647b2b6bda175f14607f59f4635451e6b27df282ef73d87000030000100005da101080100030803010001b11b182a464c3adc6535aa59613bda7a61cac86945c20b773095941194f4b9f516e8bd924b1e50e3fe83918b51e54529d4e5a1e45303df8462241d5e05979979ae5bf9c6c598c08a496e17f3bd3732d5aebe62667b61db1bbe178f27ac99408165a230d6aee78348e6c67789541f845b2ada96667f8dd16ae44f9e260c4a138b3bb1015965ebe609434a06464bd7d29bac47c3017e83c0f89bca1a9e3bdd0813715f3484292df589bc632e27d37efc02837cb85d770d5bd53a36edc99a8294771aa93cf22406f5506c8cf850ed85c1a475dee5c2d3700b3f5631d903524b849995c20cb407ed411f70b428ae3d642716fe239335aa961a752e67fb6dca0bf729000030000100005da101080100030803010001b6aec4b48567e2925a2d9c4fa4c96e6dddf86215a9bd8dd579c38ccb1199ed1be89946a7f72fc2633909a2792d0eed1b5afb2ee4c78d865a76d6cd9369d999c96af6be0a2274b8f2e9e0a0065bd20257570f08bc14c16f5616426881a83dbce6926e391c138a2ec317efa7349264de2e791c9b7d4a6048ee6eedf27bf1ece398ff0d229f18377cb1f6b98d1228ef217b8146c0c73851b89a6fc37c621ca187e16428a743ffea0072e185ef93e39525cee3ad01e0c94d2e511c8c313322c29ab91631e1856049a36898684c3056e5997473816fb547acb0be6e660bdfa89a5cb28b3669d8625f3f018c7b3b8a4860e774ee8261811ce7f96c461bc162c1a374f300002e000100005da10113003008000002a30068cdee8068b23f004f66001c5875f402770a5fe9251e7be7783b6d0545cb59ecad7d25cb5ce75ad583c47f809ecbe168ebfc57dee0e0eca8f6b92f32fb8cf3808c95640ae8e7fcd11b57d948b3b2749ae53b799fdd665d2b37a179401afda48534952859f22884a9cb9526e147fb867b7cd1463004a0385e9ad278aa41a9b63405d636733dc822f6a8b17d9eafc00e08717d558c6d3a3315c6c2ff3479b537290fe5ce9f1b280894951c5ec31305ebfa60260354cfc340ffe8d9b809a440ea9cdd8e4e14cbefec6c7f3967ab7776f7b1bc13589596b1f6d60176d3223126bac85abb2b55cb30a5d0615d6147a5dafb841a5b7ea1c1580b1a6b3dcf7607d12e19d2971aaf8747fdab1c42bb026d65000030000100000db900880100030803010001b36eee22bd8e610570cd88bfc3fedafa006a58b9714432aa3a6f9dd39a905c4e86aa1cdf5827119c81e1245d94ee4838ae22f05cc922ca30122aefa4da19d90a965b4317071b9331187f5cf4eb570dbd8e01987c2593a85b92e0440c635d15da13405f6ca7d78289ef0d6fe4716b8b62abd18dc07b0a9edd54182353ef836539026d65000030000100000db901080101030803010001c103be3a2aa47686ab01ba1b23799ff108d0c0530dfe35cebdd320b7abc851d1abf191378d155127e17fb029628385482b34ac3b042093d6097574b36ee277e31d20003272871bc76d1762dab33397eaae97d853932da5a96886a1b7c61bc52fcd1f1f23c7026a48fa1b190cb8b97d42b45b49948c45187efec3c7867812627a0220e5497c36ee4e92452fb5c1bda2dceaebf71c0e3909a61a5d6498dfc41c71cd0412dbbf442e43c378c9fb4043a1523cfd7ce320ce29fce606db73a8c78150b9808db8bb71898858d7a48ead8870f364b6e271ac642fe3160de3bc44b5a89ccf9e21e2ae5a877253db495f611a8a16a657f7ad9aeb906d5bc9c86f2883b5ed026d65000030000100000db900880100030803010001bfe96cdfe309deee4c579edbbfb50264719c35e25f64a525f81fe2479be4a907bfa9ce8b048ec167217690a145208507367cfec4ab4f9726cf55ecb79bf287836df0e0e946463a56e01b1a7d2e98681274f42ceb5817b1e253920b50f2e63f4be1a7c41f948a4a7235259a58eb0a9e4ccca370e2b3d363e4c289b897ffa329ab026d6500002e000100000db901160030080100000e1068d1697c68b5abecb128026d65005c91285cf473abf2c412efd0459436d9a291d1462928b3fcb8b30ea6d0d817e03dc8fe06994cfffad8ce447e08d85689e8c0966eac684716d98b4d116c08004b38bdbbec00b943f0afcf1c2b98fa4c8c36ded6823d99b61d96251b337037708ab2786ae66c48f08a70cc4d00b4dfbe44ac192c6c716470de238476913ae9574693514cf6ef3cd90b072127d42a2bf12ab871332a548a73bfd9d72479b90af179692389722fab448b23cd03ca8503a5e70857e644f8a29a4a15918a5a8cd317526b1d0ec0065b15da6a3021e6543f623887e5f099df3ddf8dd75bcaa355ed03d3e3de982359a6a93eca7def06797b12e63a0ffa6dc17e620dd13b6a0d2ac25df00673617473746f026d65000030000100000c8d00440100030dedcbe3954643072571e6c4c163cfe9ef330f5e430a3e6ca5eb76a9c97d1e3fcb9cba6a6a9ea371474b27c3d8ebb3a9ad9f1006be07d5155d669fdc7cc0db4d6a0673617473746f026d65000030000100000c8d00440101030d79bca014d652db03985a4edc2ada39c35f7daf8b86656ba6cd2df96f1da8c05f81d584aad62ee3c42ac7cbd29c5d35b9fa0b3d568a556ae9794d8cb02bae1bcb0673617473746f026d6500002e000100000c8d005d00300d0200093a8068cd0e3168ba8419c4010673617473746f026d65007a17319b99137fb51bb57a513cd9fd257130de52cc9279697e727e1e95a0301653a1ea782e2d8a43d9c69528491a2e088a184128409ed0e3078597fd3732d5a30b6d617474636f72616c6c6f03636f6d00002b0001000026610024e2f50d02f0e161567d468087ff27b051abc94476178a7cb635da1aa705e05c77ca81de520b6d617474636f72616c6c6f03636f6d00002e0001000026610057002b0d020001518068c67a0468bd2f1c504103636f6d0021c40cf90af28c2fb2fd35ce8632ed73edcf43bee374fb2b54944a9e8e845d08da67afb417d3014894ac2a92cf6a73be53d7df516a298d63447af8588ccee3e703636f6d00002b00010000506600244d060d028acbb0cd28f41250a80a491389424d341522d946b0da0c0291f2d3d771d7805a03636f6d00002e0001000050660113002b08010001518068cf865068be54c0b56900a9e8604de5bb97b53b31029218bd6dce5e68cdc0bd577fd3a3def5107e17b108679df22104a4f842ecfee4ab6ee14fbd7169b9e4fc9545dd00b21b920f41f40e8b5ece643975dd26f930acdc77e9495acd4507a7b22c02c4f048dadb3d2db607d46720ede2024be8a450ab98e2cae38a594603c73bce8617b9c0ca4f303de8d09606389530fb45ec20e9e6df775a72f1b76e47ba3c3780e1a5d7a27e77645f298efe1c397f31cc9f86151216627bc7bfbf265ac5a563805db62c5df2ede65ccf1c5c3f25054d73b5b9095238d38a39e30d9c2b0ae17d8d93ed6764d452d4a3141c0355d89f261d46e1f3a37857345e5220fadbeb10c9ed234cd03adfe55a04fc03636f6d00003000010000382100440100030df17b60fb56d522f8634153e785c0a978532ea76de39d34bb356d3d042e07f29f7b992176cc83acef7b78ea750425203b18f2b8228b3cdd2bc7eb13c3e3035a7e03636f6d00003000010000382100440101030db71f0465101ddbe2bf0c9455d12fa16c1cda44f4bf1ba2553418ad1f3aa9b06973f21b84eb532cf4035ee8d4832ca26d89306a7d32560c0cb0129d450ac1083503636f6d00002e000100003821005700300d010001518068c6cafb68b3034f4d0603636f6d0096cb2d4c67b93febc13dff1cdea2ab3d7669bc767127cb975f1d2ff4a94b9c15ca83d6ae9c93bde066d08095c2d0bffde30b4aea0a94ad9902693de313cb2b390b6d617474636f72616c6c6f03636f6d00003000010000546000440100030d27ac3c16d55694869003db8f7ee177d74690a6ca1e0d719e78fe9a6a2029bb2183205b6723ca5f4d63b6bb07c5d5a35fef5907eaa22accb0435d0151e13a01cf0b6d617474636f72616c6c6f03636f6d00003000010000546000440100030d8b1cf07c86f18c19c8c3146db093893648dcc1ab5fb79e99ccbab4aa06f98d52ac27b92e215d9da98d7535f3c2ce038fbb9d41b9c63d3845d444feffc1f71ed70b6d617474636f72616c6c6f03636f6d00003000010000546000440101030dec7c1fa1752495c42d2224eace96ed74144e9cb811608dd91594974bdc723fdc5b38a37c3340f1deca68a7ec82248822954b2994de5ac99ff6e9db95fd42c94b0b6d617474636f72616c6c6f03636f6d00002e000100005460006300300d0200093a8068cd0b5a68ba8142e2f50b6d617474636f72616c6c6f03636f6d004299251a06613ed7b0d6d65c41c2df2694730e81bc9f6d7266304cbfb6721ac4cc91ba71eb1eded7d351e996c0ffaaac566829474b5bd0d9e0a0c057928d47ef" } } ] @@ -12643,12 +13260,12 @@ "id": "example:fetchinvoice#1", "method": "fetchinvoice", "params": { - "offer": "lno1qgsq000bolt210002100021000210002100021000210002100021000210002100021000210002100021000210002100021000210002100021000210002100021000", + "offer": "lno1qgsqvgnwgcg35z6ee2h3yczraddm72xrfua9uve2rlrm9deu7xyfzrcgqgn3qzs2ge5hx6pqwdskcefpzcssytfzxcs2xkdy0lml0tzy0jzugmyj8kjn8zfzrgq9fsgurc72x82e", "payer_note": "Thanks for the fish!" } }, "response": { - "invoice": "lni1qqg0qe01010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101", + "invoice": "lni1qqgvq8khp6uam2tfcq0dwr4emk5kjq3qqc3xu3s3rg94nj40zfsy866mhu5vxne6tcej5878k2mneuvgjy8ssq38zq9q53nfwd5zqumpd3jjz93pqgkjyd3q5dv6gllh77kygly9c3kfy0d9xwyjyxsq2nq3c83u5vw4j5pqqc3xu3s3rg94nj40zfsy866mhu5vxne6tcej5878k2mneuvgjy84gqzcyyplllzjsfmquljkz4awm4wl8r9x6n4zjulzul8umgjr4jya6lxkgc2ez32xsctwddejqen0wgs8g6r9ypnxjumgyxsfsq3dygmzpg6e53ll0aavg37gt3rvjg762vufygdqq4xprs0regcatyp6swcycfh92s4s0p3wl6j0xj7pa7egpvvw2gq9z4sc376mekc9vacpqvzl0njg9k5sfn0pxlx4au5s95yhxczx2fah5zzmnfg9kvzdle5avqpj4l72lall4s8xrfvpu9f4xapfxl08j964jswavxw0exauk50zhw2l5alvyfucu82fx6qlszy7gett90z85gwqqqqqqqqqqqqqqqzsqqqqqqqqqqqqr5jt9hav2gqqqqqq5szx097xsz5zphg5v7yg8wedzgpk7h6dzc7vlw9h2wfa6dmzrey9m6fkeh89uz684gpzwy9wqvpqqq9syypz6g3kyz34nfrl7lm6c3rushzxey3a55ecjgs6qp2vz8q78j336k0sgzsvy6lf3le6zmjl4254r4xxf0urw8dky5d2dwtwjzt8ec7hg6jh88kx88fru0fhvxfjkje7ccg6qg5zv7dm64zxttg7epxx4yyw90c3", "changes": {} } }, @@ -12657,13 +13274,13 @@ "id": "example:fetchinvoice#2", "method": "fetchinvoice", "params": { - "offer": "lno1qgsq000bolt220002200022000220002200022000220002200022000220002200022000220002200022000220002200022000220002200022000220002200022000", + "offer": "lno1qgsqvgnwgcg35z6ee2h3yczraddm72xrfua9uve2rlrm9deu7xyfzrcgqv85ysq2qepk7enxv4j3gqg2zcssytfzxcs2xkdy0lml0tzy0jzugmyj8kjn8zfzrgq9fsgurc72x82e", "amount_msat": 2000000, "quantity": 2 } }, "response": { - "invoice": "lni1qqg0qe02020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202", + "invoice": "lni1qqgvq8khp6uam2ttcq0dwr4emk5kkq3qqc3xu3s3rg94nj40zfsy866mhu5vxne6tcej5878k2mneuvgjy8ssqc0gfqq5pjrdanxvet9zsqs593pqgkjyd3q5dv6gllh77kygly9c3kfy0d9xwyjyxsq2nq3c83u5vw4j5pqqc3xu3s3rg94nj40zfsy866mhu5vxne6tcej5878k2mneuvgjy84yqc7sjq9gqzkqyp9sggz49w9z7eh6nlfq34fk2k8n5f968ltz60us8usdtmzp7euxkqrc0h2pxqz953rvg9rtxj8lalh43z8epwydjfrmffn3y3p5qz5cywpu09rr4vs92azp4mahnnht95k3j5c8gegy3003d45pkz0gawdj82vt7eqvpk8qypn2rsgaytxvr0nnhkwhjgeq5u2vavm8hm6muxlpl7pe57v99fwm3qqxt472dkvvw27qy6992kvqc5ztgfv20w3uy5swlraheles4havnkg7nafrqr0ej8m4gakh9n338xa86784w3pcqqqqqqqqqqqqqqq2qqqqqqqqqqqqqwjfvkl43fqqqqqqzjqgeuhc6q2sg94wlwt9m7hlq7gljm764vv7dureaqxklvgmjzlq9hxe8jxlaa4064qx85yszhqxqsqqzczzq3dygmzpg6e53ll0aavg37gt3rvjg762vufygdqq4xprs0regcat8cyq8h97cpp3rznnvtvsmu0lzvfgu3c39z7t5m4f9t4w62kt0zqy4yxajhdrqh0g6th0rfhxk583zxllzukn4h3426dxp005n8mpwc6pl3s", "changes": {} } } @@ -12914,15 +13531,15 @@ "id": "example:fundchannel#1", "method": "fundchannel", "params": { - "id": "nodeid050505050505050505050505050505050505050505050505050505050505", + "id": "032cf15d1ad9c4a08d26eab1918f732d8ef8fdc6abb9640bf3db174372c491304e", "amount": 1000000, "announce": true } }, "response": { - "tx": "020000000000305fundchanneltx350003500035000350003500035000350003500035000350003500035000350003500035000350003500035000350003500035000350003500035000350003500035000350003500035000350003500035000350003500035000350003500035000350003500035000350003500035000350003500035000350003500035000350003500035000350003500035000350003500035000350003500035000350003500035000350003500035000350003500035000350003500035000350003500035000350003500035000350003500035000350003500035000350003500035000350003500035000350003500035000350003500035000", - "txid": "channeltxid350000350000350000350000350000350000350000350000350000", - "channel_id": "channelid0350000350000350000350000350000350000350000350000350000", + "tx": "02000000000102b6f77750c0aae7faf2aa6e4b38a14671adc8def298a0b89ced09596f002aa5ef0100000000fdffffffc54a87b4517d7daf033a11b21f2ccf114304487c4189599816f3e243569c600c0100000000fdffffff0240420f0000000000220020b41521751a8eb257315f73a531763071cc39b7cece470f630fd5149fe7b7057ac594eb0b00000000225120a5410daebf4fc3cba618a840af497fbec4c3a084534f2b7b6a7d30bf35f8f5660140528e20b424e1ac7f2ae067093552f424dade1321ec396a7d382866be7bba9ba5a3faf375dc9b39d676d8adab67c30df596bca1412c3871bb9538fc00265c35bf02473044022003304f0d559771fe9d4b06dccecacbef7eaef5a97c7618b567de1ba53e7146ef02207f7138b9cd7fca8ea13498e6fed96b225873131c45b5c46e4e78c7fe45d5b3e9012102c8a8f25ed135cd671c88bd4e407bb3746678cfacbcf65ce89f8efc2aa0abe5359b000000", + "txid": "f9e2ca6abf9450803ef6a1a75964277dd39b2f35f77acffc3a5978437b421aec", + "channel_id": "1267da6521b372d7c6407a74066f7a3a5bc3489bbda5eb9f0e990e1e913e2eb9", "channel_type": { "bits": [ 12, @@ -12933,7 +13550,7 @@ "anchors/even" ] }, - "outnum": 1 + "outnum": 0 } }, { @@ -12944,19 +13561,19 @@ "id": "example:fundchannel#2", "method": "fundchannel", "params": { - "id": "nodeid010101010101010101010101010101010101010101010101010101010101", + "id": "0266e4598d1d3c415f572a8488830b60f7e744ed9235eb0b1ba93283b315c03518", "amount": "all", "feerate": "normal", "push_msat": 100000, "utxos": [ - "channeltxid350000350000350000350000350000350000350000350000350000:1" + "0a6d0006bf4a5e5aa67504c5333a6017d1dc18820d2295aef0a89bd6f2c0f1f1:0" ] } }, "response": { - "tx": "020000000000401fundchanneltx410004100041000410004100041000410004100041000410004100041000410004100041000410004100041000410004100041000410004100041000410004100041000410004100041000410004100041000410004100041000410004100041000410004100041000410004100041000410004100041000410004100041000410004100041000410004100041000410004100041000410004100041000410004100041000410004100041000410004100041000410004100041000410004100041000410004100041000410004100041000410004100041000410004100041000410004100041000410004100041000410004100041000", - "txid": "channeltxid410000410000410000410000410000410000410000410000410000", - "channel_id": "channelid0410000410000410000410000410000410000410000410000410000", + "tx": "02000000000101f1f1c0f2d69ba8f0ae95220d8218dcd117603a33c50475a65a5e4abf06006d0a0000000000fdffffff01cbb3eb0b00000000220020752dd5af63b98ff64fedf94683b0306c43f6eec74fbfe917639735b305e1b6d9024730440220082e14f48e21020a18fa8076ede8d7fc459df2d13dafb55e84dfaeb53843cff30220342483bf1d343af8a5473383de0d128ea92f97ea48f86fc40c74061b106ed0ff0121024740cce0e548f4ffe80c9914e43444d8e66ee8991dc9d93ec56dff4c56b933159b000000", + "txid": "91b6b6b744662172cf8cb068923bb20311522a5afa08406f79b37cf3e6f4c370", + "channel_id": "222d999f537e32e9458c5db17a63e012dcced61340de06fda5bc30566270b0aa", "channel_type": { "bits": [ 12, @@ -12967,7 +13584,7 @@ "anchors/even" ] }, - "outnum": 1 + "outnum": 0 } } ] @@ -13043,7 +13660,7 @@ "id": "example:fundchannel_cancel#1", "method": "fundchannel_cancel", "params": [ - "nodeid101010101010101010101010101010101010101010101010101010101010" + "027ba5906fad81fcdbb774b4c806eb572b7fac3bee4720b12c44e7f70931d4b7cc" ] }, "response": { @@ -13055,7 +13672,7 @@ "id": "example:fundchannel_cancel#2", "method": "fundchannel_cancel", "params": { - "id": "nodeid101010101010101010101010101010101010101010101010101010101010" + "id": "027ba5906fad81fcdbb774b4c806eb572b7fac3bee4720b12c44e7f70931d4b7cc" } }, "response": { @@ -13152,12 +13769,12 @@ "id": "example:fundchannel_complete#1", "method": "fundchannel_complete", "params": [ - "nodeid101010101010101010101010101010101010101010101010101010101010", - "cHNidP8BAgQCAAAAAQMEbwAAAAEEAQpsbt201000201000201000201000201000201000201000201000201000201000201000201000201000201000201000201000201000201000201000201000201000201000201000201000201000201000201000201000201000201000201000201000201000201000201000201000201000201000201000201000" + "027ba5906fad81fcdbb774b4c806eb572b7fac3bee4720b12c44e7f70931d4b7cc", + "cHNidP8BAgQCAAAAAQMEmAAAAAEEAQEBBQECAQYBAwH7BAIAAAAAAQBxAgAAAAF7yWF0tZO3dCp0QAD5h74Q9TqzR+B+Pq5KWk3Kt6MldAAAAAAA/f///wKAlpgBAAAAABYAFP+FM+rwsTm8Bz0qImOObKCgg3zVXuPf3gAAAAAWABTdQ3+1uuxIN+FttkktoVc11r7FM5cAAAABAR+AlpgBAAAAABYAFP+FM+rwsTm8Bz0qImOObKCgg3zVAQ4g+wnUg4jUSt7ZSoGLTSFJkEiVi4BORL5XG9PScQI1uHoBDwQAAAAAARAE/f///wABAwgAAAABAAAAAAEEIgAgrcWu1QvOE7IcR/Pw6wFIFh6/TLwoeKjo5eUoi7suzsEAAQMIQYOYAAAAAAABBCJRIIHaDT4wURNaieL52F4urfZh+Vm/sF5nEJeFRnLP0Kx9AA==" ] }, "response": { - "channel_id": "channelid0910109101091010910109101091010910109101091010910109101", + "channel_id": "1e9779a9313702a91a6d48a813f3bdae967f61ae55f2409c83d6e822164fb1e8", "commitments_secured": true } }, @@ -13166,12 +13783,12 @@ "id": "example:fundchannel_complete#2", "method": "fundchannel_complete", "params": { - "id": "nodeid101010101010101010101010101010101010101010101010101010101010", - "psbt": "cHNidP8BAgQCAAAAAQMEbwAAAAEEAQpsbt401000401000401000401000401000401000401000401000401000401000401000401000401000401000401000401000401000401000401000401000401000401000401000401000401000401000401000401000401000401000401000401000401000401000401000401000401000401000401000401000" + "id": "027ba5906fad81fcdbb774b4c806eb572b7fac3bee4720b12c44e7f70931d4b7cc", + "psbt": "cHNidP8BAgQCAAAAAQMEmQAAAAEEAQEBBQECAQYBAwH7BAIAAAAAAQBeAgAAAAEel3mpMTcCqRptSKgT872uln9hrlXyQJyD1ugiFk+x6AAAAAAA/////wE29/8AAAAAACJRIBBn+sE76BrhkJwdcl10AW73v27fGwM4fUYbSSX4NuhVAAAAAAEBKzb3/wAAAAAAIlEgEGf6wTvoGuGQnB1yXXQBbve/bt8bAzh9RhtJJfg26FUBDiAICQ7H8zN5Qh9H/ScdBg0OKYab3l+sgjCzpH59ib1snwEPBAAAAAABEAT9////AAEDCEBCDwAAAAAAAQQiACDJ6ixlyozcJ7wTD+EfXlLhdUdeDjG2RbHcw4MtxPfnjQABAwjqovAAAAAAAAEEIlEgd0scKptLCp3OQ7RjlZQNogARFdQA+jZnkJ7Ial02UYsA" } }, "response": { - "channel_id": "channelid0910209102091020910209102091020910209102091020910209102", + "channel_id": "55d53486d003c5ba4b8eb9a3f5da04333acdb5d0023204d507e3e09127feeb90", "commitments_secured": true } } @@ -13391,13 +14008,13 @@ "id": "example:fundchannel_start#1", "method": "fundchannel_start", "params": [ - "nodeid101010101010101010101010101010101010101010101010101010101010", + "027ba5906fad81fcdbb774b4c806eb572b7fac3bee4720b12c44e7f70931d4b7cc", 16777216 ] }, "response": { - "funding_address": "bcrt1p0002020202020202020202020202020202020202020202020202020202", - "scriptpubkey": "scriptpubkey01010101010101010101010101010101010101010101010101010101", + "funding_address": "bcrt1q5ptrvwlgcldm2ygf3nzsl09zfpp7dmtduqlczer97xvc4x5z5zwsc2ulv4", + "scriptpubkey": "0020a056363be8c7dbb511098cc50fbca24843e6ed6de03f816465f1998a9a82a09d", "channel_type": { "bits": [ 12, @@ -13416,13 +14033,13 @@ "id": "example:fundchannel_start#2", "method": "fundchannel_start", "params": { - "id": "nodeid101010101010101010101010101010101010101010101010101010101010", + "id": "027ba5906fad81fcdbb774b4c806eb572b7fac3bee4720b12c44e7f70931d4b7cc", "amount": 16777216 } }, "response": { - "funding_address": "bcrt1p0003030303030303030303030303030303030303030303030303030303", - "scriptpubkey": "scriptpubkey02020202020202020202020202020202020202020202020202020202", + "funding_address": "bcrt1q4hz6a4gtecfmy8z870cwkq2gzc0t7n9u9pu23689u55ghwewemqsv4v2zs", + "scriptpubkey": "0020adc5aed50bce13b21c47f3f0eb0148161ebf4cbc2878a8e8e5e5288bbb2ecec1", "channel_type": { "bits": [ 12, @@ -13992,7 +14609,7 @@ } }, "response": { - "psbt": "cHNidP8BAgQCAAAAAQMEbwAAAAEEAQpsbt310000310000310000310000310000310000310000310000310000310000310000310000310000310000310000310000310000310000310000310000310000310000310000310000310000310000310000310000310000310000310000310000310000310000310000310000310000310000310000310000", + "psbt": "cHNidP8BAF4CAAAAARxvUMSNjH7EKMXzxKwycdOSZ64xHQfWS7JFe0pAwIPCAAAAAAD9////AahhAAAAAAAAIlEg+3d9jpNmK0getyg5W+Mp31CPIRDKcJg/mZs/uaVrQ+GbAAAAAAEAiQIAAAAB8XN4MRmL6kPpMsgk9fPi+WJWotGhushvL/SXVnKJnZ0AAAAAAP3///8CYg3NCwAAAAAiUSDJGD7ekSHzxv0UmIIsR6dgJzInZpyQlQiEO6xbvYE/aICEHgAAAAAAIgAgybxcBjyu+/emx4FEB7Vie0+BqLVuy+kyxoL5y6wNGd+aAAAAAQErYg3NCwAAAAAiUSDJGD7ekSHzxv0UmIIsR6dgJzInZpyQlQiEO6xbvYE/aAAA", "feerate_per_kw": 253, "estimated_final_weight": 652, "excess_msat": 196962518000, @@ -14013,7 +14630,7 @@ } }, "response": { - "psbt": "cHNidP8BAgQCAAAAAQMEbwAAAAEEAQpsbt410000410000410000410000410000410000410000410000410000410000410000410000410000410000410000410000410000410000410000410000410000410000410000410000410000410000410000410000410000410000410000410000410000410000410000410000410000410000410000410000", + "psbt": "cHNidP8BAF4CAAAAARxvUMSNjH7EKMXzxKwycdOSZ64xHQfWS7JFe0pAwIPCAAAAAAD9////AetRxQsAAAAAIlEg21kTTo7K2doCG6F2JqgaDjc1kRCrH7AL08oPVVJhuE+bAAAAAAEAiQIAAAAB8XN4MRmL6kPpMsgk9fPi+WJWotGhushvL/SXVnKJnZ0AAAAAAP3///8CYg3NCwAAAAAiUSDJGD7ekSHzxv0UmIIsR6dgJzInZpyQlQiEO6xbvYE/aICEHgAAAAAAIgAgybxcBjyu+/emx4FEB7Vie0+BqLVuy+kyxoL5y6wNGd+aAAAAAQErYg3NCwAAAAAiUSDJGD7ekSHzxv0UmIIsR6dgJzInZpyQlQiEO6xbvYE/aAAA", "feerate_per_kw": 11000, "estimated_final_weight": 613, "excess_msat": 0, @@ -14466,8 +15083,8 @@ "params": {} }, "response": { - "id": "nodeid020202020202020202020202020202020202020202020202020202020202", - "alias": "SILENTARTIST", + "id": "022d223620a359a47ff7f7ac447c85c46c923da53389221a0054c11c1e3ca31d59", + "alias": "SILENTARTIST-v25.12", "color": "022d22", "num_peers": 0, "num_pending_channels": 0, @@ -14478,14 +15095,14 @@ { "type": "ipv4", "address": "127.0.0.1", - "port": 19735 + "port": 30003 } ], - "version": "v25.05", - "blockheight": 110, + "version": "v25.12", + "blockheight": 108, "network": "regtest", "fees_collected_msat": 0, - "lightning-dir": "/tmp/.lightning/regtest", + "lightning-dir": "/home/rusty/.lightning/regtest", "our_features": { "init": "0898882a8a59a1", "node": "8898882a8a59a1", @@ -14739,36 +15356,37 @@ } }, "response": { - "created_at": 1738000000, - "bytes_used": 1630000, + "created_at": "1738000000.000000000", + "bytes_used": 3271748, "bytes_max": 10485760, "log": [ { "type": "SKIPPED", - "num_skipped": 144 + "num_skipped": 177 }, { "type": "UNUSUAL", - "time": "71.800000000", + "time": "0.000000000", "source": "plugin-bookkeeper", "log": "topic 'utxo_deposit' is not a known notification topic" }, { "type": "UNUSUAL", - "time": "72.800000000", + "time": "0.000000000", "source": "plugin-bookkeeper", - "log": "topic 'utxo_spend' is not a known notification topic" + "log": "topic 'utxo_spend' is not a known notification topic", + "num_skipped": 4562 }, { "type": "SKIPPED", - "num_skipped": 147 + "num_skipped": 4554 }, { "type": "UNUSUAL", - "time": "74.800000000", - "node_id": "nodeid010101010101010101010101010101010101010101010101010101010101", + "time": "0.000000000", + "node_id": "0266e4598d1d3c415f572a8488830b60f7e744ed9235eb0b1ba93283b315c03518", "source": "chan#1", - "log": "No peer channel with scid=228x1x1" + "log": "No peer channel with scid=9351983x2726118x65411" } ] } @@ -15149,7 +15767,7 @@ "id": "example:getroute#1", "method": "getroute", "params": { - "id": "nodeid030303030303030303030303030303030303030303030303030303030303", + "id": "035d2b1192dfba134e10e540875d366ebc8bc353d5aa766b80c090b39c3a5d885d", "amount_msat": 10000, "riskfactor": 1 } @@ -15157,16 +15775,16 @@ "response": { "route": [ { - "id": "nodeid020202020202020202020202020202020202020202020202020202020202", - "channel": "109x1x1", + "id": "022d223620a359a47ff7f7ac447c85c46c923da53389221a0054c11c1e3ca31d59", + "channel": "110x1x0", "direction": 1, "amount_msat": 10001, "delay": 15, "style": "tlv" }, { - "id": "nodeid030303030303030303030303030303030303030303030303030303030303", - "channel": "111x1x1", + "id": "035d2b1192dfba134e10e540875d366ebc8bc353d5aa766b80c090b39c3a5d885d", + "channel": "112x1x0", "direction": 0, "amount_msat": 10000, "delay": 9, @@ -15180,7 +15798,7 @@ "id": "example:getroute#2", "method": "getroute", "params": { - "id": "nodeid040404040404040404040404040404040404040404040404040404040404", + "id": "0382ce59ebf18be7d84677c2e35f23294b9992ceca95491fcf8a56c6cb2d9de199", "amount_msat": 500000, "riskfactor": 10, "cltv": 9 @@ -15189,16 +15807,16 @@ "response": { "route": [ { - "id": "nodeid030303030303030303030303030303030303030303030303030303030303", - "channel": "111x1x1", + "id": "035d2b1192dfba134e10e540875d366ebc8bc353d5aa766b80c090b39c3a5d885d", + "channel": "112x1x0", "direction": 0, "amount_msat": 500006, "delay": 15, "style": "tlv" }, { - "id": "nodeid040404040404040404040404040404040404040404040404040404040404", - "channel": "125x1x1", + "id": "0382ce59ebf18be7d84677c2e35f23294b9992ceca95491fcf8a56c6cb2d9de199", + "channel": "114x1x0", "direction": 0, "amount_msat": 500000, "delay": 9, @@ -15406,8 +16024,8 @@ "id": "example:getroutes#1", "method": "getroutes", "params": { - "source": "nodeid010101010101010101010101010101010101010101010101010101010101", - "destination": "nodeid030303030303030303030303030303030303030303030303030303030303", + "source": "0266e4598d1d3c415f572a8488830b60f7e744ed9235eb0b1ba93283b315c03518", + "destination": "035d2b1192dfba134e10e540875d366ebc8bc353d5aa766b80c090b39c3a5d885d", "amount_msat": 1250000, "layers": [], "maxfee_msat": 125000, @@ -15423,14 +16041,14 @@ "final_cltv": 0, "path": [ { - "short_channel_id_dir": "109x1x1/1", - "next_node_id": "nodeid020202020202020202020202020202020202020202020202020202020202", + "short_channel_id_dir": "110x1x0/1", + "next_node_id": "022d223620a359a47ff7f7ac447c85c46c923da53389221a0054c11c1e3ca31d59", "amount_msat": 1250026, "delay": 12 }, { - "short_channel_id_dir": "123x1x1/0", - "next_node_id": "nodeid030303030303030303030303030303030303030303030303030303030303", + "short_channel_id_dir": "124x1x1/0", + "next_node_id": "035d2b1192dfba134e10e540875d366ebc8bc353d5aa766b80c090b39c3a5d885d", "amount_msat": 1250013, "delay": 6 } @@ -15754,10 +16372,10 @@ "id": "example:injectpaymentonion#1", "method": "injectpaymentonion", "params": { - "onion": "onion30303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030", - "payment_hash": "paymenthashinvl0270027002700270027002700270027002700270027002700", + "onion": "0003e37337e2f488ed89a79030fb54f4f3bda09a28f80623adc2864fbf1aee71ff50c460e4e973dea414931035804e7ef03a4bdad4e3729bf85f16b6710a83fa2a3ae94332e0ba70e1d1b69100256a9e4b6144948e835c0738918afe33aac4714bc27c5c70a81e314428e8d17017c4cdc5df2ed3ec75d45cf7b5bb38547c5dd4a34134f390e516f82e97843754fd6ecbfeb1cf2e7d9ad520854592226c05210e2ddc3fb059bc6ed28e393b748be02572bd4bed4721cbc26219ad0714b4cbd329f21a727626545e9c5e9bf84cc7ed94729efdc47828560ace966b698b745d688605c390f62b67a1e0eaa84585bbb4440c442513128ff259729c9bc5dfb42c461afb5fa9f29bf04fbc04f479b0445be49f44bb15b29d79ff0bd38032f2df870dd6da61754202a1cb495df5609898c0a22582b53cb794d84a8d2931602d647b66d5b37bc122200c77b88000d7465fd51e12a825e7987844c0e36ec0c4f3a6a6b513039d4d4173e6fbea8ab68391eee74579c25b92f874e562666291997b36032f72a999bec029c99cf09941884594c32df37aa08c4bfa7ced0291251b49f9ff1814c48389da17800b8230f896d26fe1ca1d5ae7a06d195ba68fd6fdd7e92539d02107a7b72edb841fc27c526e8c5479066fd4bd8ccf955906372d4343e07f131bc9bdc2dfab65c9425e8522bcb2086e650f53d0fed6b3d24a8929a0e2420cf2239ea4bd0fb74a9fae6475d3a6a9efc70c24b0695231477d194bcedce540f763d749e075f63f8307f712e1c2e2705b43b2bed53dd928467ef2f1fd426b9a350981909cfdfd95fc2ba5a8ab90c3afb48a988ad0220716770e8bde7d21b89cbc1621cf6dc223cdfb74cdb5344526eaa72bd2ad1da482cb87f4ddae7f9f753b95a1a09b83478688b5f4a0eb7015ff469334e2491a9f50d7e265811f3776c7282cda704d99c343353a7955798f08dc30cf7e7fcb70c3901767e6e0db48b39f79ef65ddd0493bf40145a014b52dbf6eb7a5b51537580eeff790fe75f4fa9b9cbc5c9efa54561738b03aaa2ad07495f49552fcd26b1b1015e92d8fdbd22661d01215140a62416f6df1a33c0dbd55d46ee86a8e366f5ab2bd27ff7e12194784a3429ac5aa750c6084c379bd17b9e27ea1007a277ede2c9069daa0267f3cf9249284b456b4860fb7a3004943c06f644f1c5d60a46566812b3450450a484a2893eefccbbcc1c99258c727300000b7fa4f2d26e8895b3beee8a4fa98a1b96870d6ef81053b03632494d2a1face2d380711c20c74b2b3b040f18a765a0e8222e0b42f8358949d4645aa710a796ebce90669b5059584badc56d410476e67977f991fdc7b1ffce860407cbd73469b56af18cc00d0a38001f716b85a4b7225709195c8e1a6fdda5b6259700cc5cd29ac6ef0d2f091e0e07205adc604512ba288641516faa68c9f5bd65e2bc31c1a8ba478e60645837fde18339d606658d43fae0e99b9a39c4a8d517b0ed065e024617deb893b8d25f4e6feacca47fecedd07426e0194ec57b6011ea1f8ad0d528ad5db8f16c501b9fd15b3e9369cb9df5b1ef13500a9858e906b50ecbd9584190d3d9e971d539a4489201317acf4a6b1fa9caf281d40194955cfe3b6005ff1855d46de0a228509d241159a069a9e35a6d0b69033daa362096c8cfa2dbbf0ade2a91e0456f23314cbfe8f961d3703fbaf9e3928cea19b4a7d4a27188f633bdfa57fcecd8a4d793ff6f34cd3137f647a2edeaacac4bd493769c4d69f984d1c3aa8d5ee33956fe9abeef052170ca29c56233e1a8181af9364819c508bcea77aeb2d7cbe24a457c341e00dac875d7caf8898ff0c6c8679ebee963a454f92451da43308b2fbec5621521737f90b35c891c038f94e89ece44f53760ffa4e43b9abaf52070e4185c6e723041a947c536b8027608144", + "payment_hash": "ff498c3300881ea7a3c04193e43f123444c644662008108c23229da3511bedd1", "amount_msat": 1000, - "cltv_expiry": 144, + "cltv_expiry": 145, "partid": 1, "groupid": 0 } @@ -15765,8 +16383,8 @@ "response": { "created_index": 12, "created_at": 1738000000, - "completed_at": 1739000000, - "payment_preimage": "paymentpreimgio1030303030303030303030303030303030303030303030303" + "completed_at": 1738000000, + "payment_preimage": "08377744ca985c1e08377744ca985c1e08377744ca985c1e08377744ca985c1e" } } ] @@ -15985,10 +16603,10 @@ } }, "response": { - "payment_hash": "paymenthashinvl0310031003100310031003100310031003100310031003100", - "expires_at": 1739000000, - "bolt11": "lnbcrt100n1pnt2bolt11invl030100000000bolt11invl030100000000bolt11invl030100000000bolt11invl030100000000bolt11invl030100000000bolt11invl030100000000bolt11invl030100000000bolt11invl030100000000bolt11invl030100000000bolt11invl030100000000", - "payment_secret": "paymentsecretinvl00310003100031000310003100031000310003100031000", + "payment_hash": "9562ee18e942b0eb2e36050c108efcb34cb07e5cdbe28d08d26bb71af1556c2f", + "expires_at": 1738604800, + "bolt11": "lnbcrt100n1pne035qsp5ct5g9265vn4k2zn8ecuk6pxe0anszfl3uy4w5vukrvl4emm9w28qpp5j43wux8fg2cwkt3kq5xpprhukdxtqljum03g6zxjdwm34u24dshsdp9f9h8vmmfvdjjqer9wd3hy6tsw35k7m3qdsenzxqyjw5qcqp9rzjqgkjyd3q5dv6gllh77kygly9c3kfy0d9xwyjyxsq2nq3c83u5vw4jqqqwqqqqqgqqqqqqqqpqqqqqzsqqc9qxpqysgqflkpcezmaphptn08syzk9wh4rfkdzj3syan9ng9fzzv94htydujx6qut2tdgsmq2rg5utlmwcyce30fcqth7r68tc5mpqm7k4dfvy7gp0xletu", + "payment_secret": "c2e882ab5464eb650a67ce396d04d97f670127f1e12aea33961b3f5cef65728e", "created_index": 2 } }, @@ -16003,10 +16621,10 @@ } }, "response": { - "payment_hash": "paymenthashinvl0320032003200320032003200320032003200320032003200", - "expires_at": 1739000000, - "bolt11": "lnbcrt100n1pnt2bolt11invl032000000000bolt11invl032000000000bolt11invl032000000000bolt11invl032000000000bolt11invl032000000000bolt11invl032000000000bolt11invl032000000000bolt11invl032000000000bolt11invl032000000000bolt11invl032000000000", - "payment_secret": "paymentsecretinvl00032003200320032003200320032003200320032003200", + "payment_hash": "ab3a5a971aa3b21494f7ce646f077232c10c9917c33375935c1aebfa571fa1a1", + "expires_at": 1738604800, + "bolt11": "lnbcrt500n1pne035qsp5kk6w4wjl0wudssp0pze5lgkz9hcav6ql523hjxc92knt398y2csqpp54va949c65wepf98heejx7pmjxtqsexghcvehty6urt4l54cl5xssdqcdsenygryv4ekxunfwp6xjmmwxqyjw5qcqp9rzjqgkjyd3q5dv6gllh77kygly9c3kfy0d9xwyjyxsq2nq3c83u5vw4jqqqwqqqqqgqqqqqqqqpqqqqqzsqqc9qxpqysgqgrjzax5dyj6dqqhgrt7t53hrmw4xvjs56kdy450c8jdv53fzf3n4kmersmgydpyyam87jrnu9wrcn78zy6w53zx3lqv45js6sa6rspqqa07y46", + "payment_secret": "b5b4eaba5f7bb8d8402f08b34fa2c22df1d6681fa2a3791b0555a6b894e45620", "created_index": 3 } } @@ -16147,10 +16765,10 @@ } }, "response": { - "invreq_id": "invreqid01010101010101010101010101010101010101010101010101010101", + "invreq_id": "22c3d45d0a9640a827ed1fefb9a07c947e38fa4c086f1f16d94882848e264868", "active": true, "single_use": true, - "bolt12": "lno1qgsq000bolt210002100021000210002100021000210002100021000210002100021000210002100021000210002100021000210002100021000210002100021000", + "bolt12": "lnr1qqg99gqg2990zl3322sqs52279lrzzst2d5k6urvv5s8getnw3gzqp3zderpzxstt8927ynqg044h0egcd8n5h3n9g0u0v4h8ncc3yg02gps7sjqtqssytfzxcs2xkdy0lml0tzy0jzugmyj8kjn8zfzrgq9fsgurc72x82e7pqfylfzzhcux84v2552lt7p2ekunuamtsdgyk34a86m4zklkdjjdzt757t4sp0m8cp9tdj6hfe67mcuwl3q7zr4sr4z4gn2fvksykkn5g", "used": false } }, @@ -16165,10 +16783,10 @@ } }, "response": { - "invreq_id": "invreqid02020202020202020202020202020202020202020202020202020202", + "invreq_id": "c5b8ebc06bdc246d7b852ce5637be459d3c053a5b3f8f68854f97af7371c9a50", "active": true, "single_use": true, - "bolt12": "lno1qgsq000bolt240002400024000240002400024000240002400024000240002400024000240002400024000240002400024000240002400024000240002400024000", + "bolt12": "lnr1qqg99gqg2990zl3j22sqs52279lryzsk2fjhzat9wd6xjmn8ypnx7u3qd9h8vmmfvdj3yyrrd35kw6r5de5kueeqwd6x7un92qsqvgnwgcg35z6ee2h3yczraddm72xrfua9uve2rlrm9deu7xyfzr6jqwvfdqzcyypz6g3kyz34nfrl7lm6c3rushzxey3a55ecjgs6qp2vz8q78j336k0sgr76j2yl0lrljzljjdz8ztcpryunwgfk4hzz3sle3mhaw8v2gc4dn9map7v6dlpya98jy2mcrwe27qcsywlfqp6dhh30l54sj0e8tqsk", "used": false } } @@ -16413,18 +17031,18 @@ "id": "example:keysend#1", "method": "keysend", "params": { - "destination": "nodeid030303030303030303030303030303030303030303030303030303030303", + "destination": "035d2b1192dfba134e10e540875d366ebc8bc353d5aa766b80c090b39c3a5d885d", "amount_msat": 10000 } }, "response": { - "destination": "nodeid030303030303030303030303030303030303030303030303030303030303", - "payment_hash": "paymenthashkey01k101k101k101k101k101k101k101k101k101k101k101k101", - "created_at": 1738000000, + "destination": "035d2b1192dfba134e10e540875d366ebc8bc353d5aa766b80c090b39c3a5d885d", + "payment_hash": "097dcfa3b0bc58d499908855dae7d442854a02d4f2ffcc625f9385ed74f3256e", + "created_at": 1738000000.0, "parts": 1, "amount_msat": 10000, "amount_sent_msat": 10001, - "payment_preimage": "paymentpreimage1010101010101010101010101010101010101010101010101", + "payment_preimage": "0193052c8999a10f0193052c8999a10f0193052c8999a10f0193052c8999a10f", "status": "complete" } }, @@ -16433,7 +17051,7 @@ "id": "example:keysend#2", "method": "keysend", "params": { - "destination": "nodeid040404040404040404040404040404040404040404040404040404040404", + "destination": "0382ce59ebf18be7d84677c2e35f23294b9992ceca95491fcf8a56c6cb2d9de199", "amount_msat": 10000000, "extratlvs": { "133773310": "68656c6c6f776f726c64", @@ -16442,13 +17060,13 @@ } }, "response": { - "destination": "nodeid040404040404040404040404040404040404040404040404040404040404", - "payment_hash": "paymenthashkey02k201k201k201k201k201k201k201k201k201k201k201k201", - "created_at": 1738000000, + "destination": "0382ce59ebf18be7d84677c2e35f23294b9992ceca95491fcf8a56c6cb2d9de199", + "payment_hash": "9bf787fe700121009e2ecdca290632c8bf2da853527c700aa5746173981ae584", + "created_at": 1738000000.0, "parts": 1, "amount_msat": 10000000, "amount_sent_msat": 10000202, - "payment_preimage": "paymentpreimage2020202020202020202020202020202020202020202020202", + "payment_preimage": "0193052c8999a1110193052c8999a1110193052c8999a1110193052c8999a111", "status": "complete" } }, @@ -16457,13 +17075,13 @@ "id": "example:keysend#3", "method": "keysend", "params": { - "destination": "nodeid030303030303030303030303030303030303030303030303030303030303", + "destination": "035d2b1192dfba134e10e540875d366ebc8bc353d5aa766b80c090b39c3a5d885d", "amount_msat": 10000, "routehints": [ [ { - "scid": "111x1x1", - "id": "nodeid020202020202020202020202020202020202020202020202020202020202", + "scid": "9351983x2726118x65411", + "id": "022d223620a359a47ff7f7ac447c85c46c923da53389221a0054c11c1e3ca31d59", "feebase": "1msat", "feeprop": 10, "expirydelta": 9 @@ -16473,13 +17091,13 @@ } }, "response": { - "destination": "nodeid030303030303030303030303030303030303030303030303030303030303", - "payment_hash": "paymenthashkey03k301k301k301k301k301k301k301k301k301k301k301k301", - "created_at": 1738000000, + "destination": "035d2b1192dfba134e10e540875d366ebc8bc353d5aa766b80c090b39c3a5d885d", + "payment_hash": "da6c0b6d30ac35f62762bc7114d64d323dc79fb858061902263eb72df6310caf", + "created_at": 1738000000.0, "parts": 2, "amount_msat": 10000, "amount_sent_msat": 10001, - "payment_preimage": "paymentpreimage3030303030303030303030303030303030303030303030303", + "payment_preimage": "0193052c8999a1130193052c8999a1130193052c8999a1130193052c8999a113", "status": "complete" } } @@ -16812,6 +17430,385 @@ ], "resources": [ "Main web site: " + ], + "examples": [ + { + "request": { + "id": "example:listchainmoves#1", + "method": "listchainmoves", + "params": {} + }, + "response": { + "chainmoves": [ + { + "created_index": 1, + "account_id": "wallet", + "credit_msat": 200000000000, + "debit_msat": 0, + "timestamp": 1738000001, + "primary_tag": "deposit", + "extra_tags": [], + "utxo": "89126fb6a9c3b0cbddb31ee6501f3582a3f991f5cbcd07b895a4e31ac120d8b3:1", + "output_msat": 200000000000, + "blockheight": 105 + }, + { + "created_index": 2, + "account_id": "252d1b0a1e57895e84137f28cf19ab2c35847e284c112fefdecc7afeaa5c1de7", + "credit_msat": 0, + "debit_msat": 0, + "timestamp": 1738000002, + "primary_tag": "channel_open", + "extra_tags": [], + "utxo": "63f74346eda6b8620ec24f86e2f8982ef3dade95f8efd00b372a75b2893b6f0d:0", + "peer_id": "0266e4598d1d3c415f572a8488830b60f7e744ed9235eb0b1ba93283b315c03518", + "output_msat": 1000000000, + "blockheight": 110 + }, + { + "created_index": 3, + "account_id": "wallet", + "credit_msat": 2000000000, + "debit_msat": 0, + "timestamp": 1738000003, + "primary_tag": "deposit", + "extra_tags": [], + "utxo": "d84db03fd012a98de6776fb10ee1c1de23282c33518aa32fdd5a15600f535ace:0", + "output_msat": 2000000000, + "blockheight": 111 + }, + { + "created_index": 4, + "account_id": "wallet", + "credit_msat": 0, + "debit_msat": 200000000000, + "timestamp": 1738000004, + "primary_tag": "withdrawal", + "extra_tags": [], + "utxo": "89126fb6a9c3b0cbddb31ee6501f3582a3f991f5cbcd07b895a4e31ac120d8b3:1", + "spending_txid": "7cce7550c4b37924bb74fd4baf8f1946a4b14c050c42f2479b04fede08652aa9", + "output_msat": 200000000000, + "blockheight": 112 + }, + { + "created_index": 5, + "account_id": "wallet", + "credit_msat": 198995073000, + "debit_msat": 0, + "timestamp": 1738000005, + "primary_tag": "deposit", + "extra_tags": [], + "utxo": "7cce7550c4b37924bb74fd4baf8f1946a4b14c050c42f2479b04fede08652aa9:1", + "output_msat": 198995073000, + "blockheight": 112 + }, + { + "created_index": 6, + "account_id": "a397dd9b3e44afcb67f3f3ce1d649b74a8ade63e35505985e4cc1828634f69a2", + "credit_msat": 1000000000, + "debit_msat": 0, + "timestamp": 1738000006, + "primary_tag": "channel_open", + "extra_tags": [ + "opener" + ], + "utxo": "7cce7550c4b37924bb74fd4baf8f1946a4b14c050c42f2479b04fede08652aa9:0", + "peer_id": "035d2b1192dfba134e10e540875d366ebc8bc353d5aa766b80c090b39c3a5d885d", + "output_msat": 1000000000, + "blockheight": 112 + }, + { + "created_index": 7, + "account_id": "wallet", + "credit_msat": 2000000000, + "debit_msat": 0, + "timestamp": 1738000007, + "primary_tag": "deposit", + "extra_tags": [], + "utxo": "254dc18f69af1f3ee1ed64a81782b524455efe7f04cb9873059c667fbcffe56d:1", + "output_msat": 2000000000, + "blockheight": 115 + }, + { + "created_index": 8, + "account_id": "wallet", + "credit_msat": 0, + "debit_msat": 2000000000, + "timestamp": 1738000008, + "primary_tag": "withdrawal", + "extra_tags": [], + "utxo": "254dc18f69af1f3ee1ed64a81782b524455efe7f04cb9873059c667fbcffe56d:1", + "spending_txid": "92dc0d9921d6c5beda83bddd3d1575fb673493f354c0a8cd91c6b139620c3155", + "output_msat": 2000000000, + "blockheight": 116 + }, + { + "created_index": 9, + "account_id": "wallet", + "credit_msat": 995073000, + "debit_msat": 0, + "timestamp": 1738000009, + "primary_tag": "deposit", + "extra_tags": [], + "utxo": "92dc0d9921d6c5beda83bddd3d1575fb673493f354c0a8cd91c6b139620c3155:0", + "output_msat": 995073000, + "blockheight": 116 + }, + { + "created_index": 10, + "account_id": "f8fc83a432cbfb2fffe222cc06727fdd977b5dd10ebd6707158e799e6f522d9f", + "credit_msat": 1000000000, + "debit_msat": 0, + "timestamp": 1738000010, + "primary_tag": "channel_open", + "extra_tags": [ + "opener" + ], + "utxo": "92dc0d9921d6c5beda83bddd3d1575fb673493f354c0a8cd91c6b139620c3155:1", + "peer_id": "032cf15d1ad9c4a08d26eab1918f732d8ef8fdc6abb9640bf3db174372c491304e", + "output_msat": 1000000000, + "blockheight": 116 + }, + { + "created_index": 11, + "account_id": "wallet", + "credit_msat": 486914000, + "debit_msat": 0, + "timestamp": 1738000027, + "primary_tag": "deposit", + "extra_tags": [], + "utxo": "40b4acd3759ac69b5160488d73a5890a46bf4f013381e52e9171ee038b3c96d6:0", + "output_msat": 486914000, + "blockheight": 122 + }, + { + "created_index": 12, + "account_id": "a397dd9b3e44afcb67f3f3ce1d649b74a8ade63e35505985e4cc1828634f69a2", + "credit_msat": 0, + "debit_msat": 489809898, + "timestamp": 1738000028, + "primary_tag": "channel_close", + "extra_tags": [], + "utxo": "7cce7550c4b37924bb74fd4baf8f1946a4b14c050c42f2479b04fede08652aa9:0", + "spending_txid": "40b4acd3759ac69b5160488d73a5890a46bf4f013381e52e9171ee038b3c96d6", + "output_msat": 1000000000, + "output_count": 2, + "blockheight": 122 + }, + { + "created_index": 13, + "account_id": "external", + "credit_msat": 510190000, + "debit_msat": 0, + "timestamp": 1738000029, + "primary_tag": "to_them", + "extra_tags": [], + "utxo": "40b4acd3759ac69b5160488d73a5890a46bf4f013381e52e9171ee038b3c96d6:1", + "originating_account": "a397dd9b3e44afcb67f3f3ce1d649b74a8ade63e35505985e4cc1828634f69a2", + "output_msat": 510190000, + "blockheight": 122 + }, + { + "created_index": 14, + "account_id": "wallet", + "credit_msat": 2000000000, + "debit_msat": 0, + "timestamp": 1738000030, + "primary_tag": "deposit", + "extra_tags": [], + "utxo": "ed937e020220370aab16a6f2f54b8b2230681f3991e46c2dccb21fea510533a7:1", + "output_msat": 2000000000, + "blockheight": 123 + }, + { + "created_index": 15, + "account_id": "wallet", + "credit_msat": 0, + "debit_msat": 995073000, + "timestamp": 1738000031, + "primary_tag": "withdrawal", + "extra_tags": [], + "utxo": "92dc0d9921d6c5beda83bddd3d1575fb673493f354c0a8cd91c6b139620c3155:0", + "spending_txid": "148a366c9a72e40af01daca6acc24e0a5648d0efb7e01f4708f23412d9deba69", + "output_msat": 995073000, + "blockheight": 124 + }, + { + "created_index": 16, + "account_id": "wallet", + "credit_msat": 0, + "debit_msat": 2000000000, + "timestamp": 1738000032, + "primary_tag": "withdrawal", + "extra_tags": [], + "utxo": "ed937e020220370aab16a6f2f54b8b2230681f3991e46c2dccb21fea510533a7:1", + "spending_txid": "148a366c9a72e40af01daca6acc24e0a5648d0efb7e01f4708f23412d9deba69", + "output_msat": 2000000000, + "blockheight": 124 + }, + { + "created_index": 17, + "account_id": "wallet", + "credit_msat": 1988421000, + "debit_msat": 0, + "timestamp": 1738000033, + "primary_tag": "deposit", + "extra_tags": [], + "utxo": "148a366c9a72e40af01daca6acc24e0a5648d0efb7e01f4708f23412d9deba69:0", + "output_msat": 1988421000, + "blockheight": 124 + }, + { + "created_index": 18, + "account_id": "ecabe6d86abdd57565b3fb7e7c5d724e60ca1a07633951769b5dbfa48dc884b3", + "credit_msat": 1000000000, + "debit_msat": 0, + "timestamp": 1738000034, + "primary_tag": "channel_open", + "extra_tags": [ + "opener" + ], + "utxo": "148a366c9a72e40af01daca6acc24e0a5648d0efb7e01f4708f23412d9deba69:1", + "peer_id": "035d2b1192dfba134e10e540875d366ebc8bc353d5aa766b80c090b39c3a5d885d", + "output_msat": 1000000000, + "blockheight": 124 + } + ] + } + }, + { + "request": { + "id": "example:listchainmoves#2", + "method": "listchainmoves", + "params": { + "index": "created", + "start": 10 + } + }, + "response": { + "chainmoves": [ + { + "created_index": 10, + "account_id": "f8fc83a432cbfb2fffe222cc06727fdd977b5dd10ebd6707158e799e6f522d9f", + "credit_msat": 1000000000, + "debit_msat": 0, + "timestamp": 1738000010, + "primary_tag": "channel_open", + "extra_tags": [ + "opener" + ], + "utxo": "92dc0d9921d6c5beda83bddd3d1575fb673493f354c0a8cd91c6b139620c3155:1", + "peer_id": "032cf15d1ad9c4a08d26eab1918f732d8ef8fdc6abb9640bf3db174372c491304e", + "output_msat": 1000000000, + "blockheight": 116 + }, + { + "created_index": 11, + "account_id": "wallet", + "credit_msat": 486914000, + "debit_msat": 0, + "timestamp": 1738000027, + "primary_tag": "deposit", + "extra_tags": [], + "utxo": "40b4acd3759ac69b5160488d73a5890a46bf4f013381e52e9171ee038b3c96d6:0", + "output_msat": 486914000, + "blockheight": 122 + }, + { + "created_index": 12, + "account_id": "a397dd9b3e44afcb67f3f3ce1d649b74a8ade63e35505985e4cc1828634f69a2", + "credit_msat": 0, + "debit_msat": 489809898, + "timestamp": 1738000028, + "primary_tag": "channel_close", + "extra_tags": [], + "utxo": "7cce7550c4b37924bb74fd4baf8f1946a4b14c050c42f2479b04fede08652aa9:0", + "spending_txid": "40b4acd3759ac69b5160488d73a5890a46bf4f013381e52e9171ee038b3c96d6", + "output_msat": 1000000000, + "output_count": 2, + "blockheight": 122 + }, + { + "created_index": 13, + "account_id": "external", + "credit_msat": 510190000, + "debit_msat": 0, + "timestamp": 1738000029, + "primary_tag": "to_them", + "extra_tags": [], + "utxo": "40b4acd3759ac69b5160488d73a5890a46bf4f013381e52e9171ee038b3c96d6:1", + "originating_account": "a397dd9b3e44afcb67f3f3ce1d649b74a8ade63e35505985e4cc1828634f69a2", + "output_msat": 510190000, + "blockheight": 122 + }, + { + "created_index": 14, + "account_id": "wallet", + "credit_msat": 2000000000, + "debit_msat": 0, + "timestamp": 1738000030, + "primary_tag": "deposit", + "extra_tags": [], + "utxo": "ed937e020220370aab16a6f2f54b8b2230681f3991e46c2dccb21fea510533a7:1", + "output_msat": 2000000000, + "blockheight": 123 + }, + { + "created_index": 15, + "account_id": "wallet", + "credit_msat": 0, + "debit_msat": 995073000, + "timestamp": 1738000031, + "primary_tag": "withdrawal", + "extra_tags": [], + "utxo": "92dc0d9921d6c5beda83bddd3d1575fb673493f354c0a8cd91c6b139620c3155:0", + "spending_txid": "148a366c9a72e40af01daca6acc24e0a5648d0efb7e01f4708f23412d9deba69", + "output_msat": 995073000, + "blockheight": 124 + }, + { + "created_index": 16, + "account_id": "wallet", + "credit_msat": 0, + "debit_msat": 2000000000, + "timestamp": 1738000032, + "primary_tag": "withdrawal", + "extra_tags": [], + "utxo": "ed937e020220370aab16a6f2f54b8b2230681f3991e46c2dccb21fea510533a7:1", + "spending_txid": "148a366c9a72e40af01daca6acc24e0a5648d0efb7e01f4708f23412d9deba69", + "output_msat": 2000000000, + "blockheight": 124 + }, + { + "created_index": 17, + "account_id": "wallet", + "credit_msat": 1988421000, + "debit_msat": 0, + "timestamp": 1738000033, + "primary_tag": "deposit", + "extra_tags": [], + "utxo": "148a366c9a72e40af01daca6acc24e0a5648d0efb7e01f4708f23412d9deba69:0", + "output_msat": 1988421000, + "blockheight": 124 + }, + { + "created_index": 18, + "account_id": "ecabe6d86abdd57565b3fb7e7c5d724e60ca1a07633951769b5dbfa48dc884b3", + "credit_msat": 1000000000, + "debit_msat": 0, + "timestamp": 1738000034, + "primary_tag": "channel_open", + "extra_tags": [ + "opener" + ], + "utxo": "148a366c9a72e40af01daca6acc24e0a5648d0efb7e01f4708f23412d9deba69:1", + "peer_id": "035d2b1192dfba134e10e540875d366ebc8bc353d5aa766b80c090b39c3a5d885d", + "output_msat": 1000000000, + "blockheight": 124 + } + ] + } + } ] }, "listchannelmoves.json": { @@ -16961,6 +17958,242 @@ ], "resources": [ "Main web site: " + ], + "examples": [ + { + "request": { + "id": "example:listchannelmoves#1", + "method": "listchannelmoves", + "params": {} + }, + "response": { + "channelmoves": [ + { + "created_index": 1, + "account_id": "252d1b0a1e57895e84137f28cf19ab2c35847e284c112fefdecc7afeaa5c1de7", + "credit_msat": 500000000, + "debit_msat": 0, + "timestamp": 1738000011, + "primary_tag": "invoice", + "payment_hash": "342cbb1cb564e8f32eb64fe8c254abf5ec5f6b87a0f8de7909caf8e658f3bd2a", + "fees_msat": 0 + }, + { + "created_index": 2, + "account_id": "a397dd9b3e44afcb67f3f3ce1d649b74a8ade63e35505985e4cc1828634f69a2", + "credit_msat": 0, + "debit_msat": 500000000, + "timestamp": 1738000012, + "primary_tag": "invoice", + "payment_hash": "f61aef012557d6496699642e71e2bacda5670b5377c6357fa40485813facc628", + "part_id": 0, + "group_id": 1, + "fees_msat": 0 + }, + { + "created_index": 3, + "account_id": "f8fc83a432cbfb2fffe222cc06727fdd977b5dd10ebd6707158e799e6f522d9f", + "credit_msat": 0, + "debit_msat": 500000000, + "timestamp": 1738000013, + "primary_tag": "invoice", + "payment_hash": "f65a1de794267be304d915d60a9257d2e8f43f3e897e6894b619493e4c20d94e", + "part_id": 0, + "group_id": 1, + "fees_msat": 0 + }, + { + "created_index": 4, + "account_id": "a397dd9b3e44afcb67f3f3ce1d649b74a8ade63e35505985e4cc1828634f69a2", + "credit_msat": 0, + "debit_msat": 10000, + "timestamp": 1738000014, + "primary_tag": "routed", + "payment_hash": "9562ee18e942b0eb2e36050c108efcb34cb07e5cdbe28d08d26bb71af1556c2f", + "fees_msat": 1 + }, + { + "created_index": 5, + "account_id": "252d1b0a1e57895e84137f28cf19ab2c35847e284c112fefdecc7afeaa5c1de7", + "credit_msat": 10001, + "debit_msat": 0, + "timestamp": 1738000015, + "primary_tag": "routed", + "payment_hash": "9562ee18e942b0eb2e36050c108efcb34cb07e5cdbe28d08d26bb71af1556c2f", + "fees_msat": 1 + }, + { + "created_index": 6, + "account_id": "a397dd9b3e44afcb67f3f3ce1d649b74a8ade63e35505985e4cc1828634f69a2", + "credit_msat": 0, + "debit_msat": 10000, + "timestamp": 1738000016, + "primary_tag": "routed", + "payment_hash": "097dcfa3b0bc58d499908855dae7d442854a02d4f2ffcc625f9385ed74f3256e", + "fees_msat": 1 + }, + { + "created_index": 7, + "account_id": "252d1b0a1e57895e84137f28cf19ab2c35847e284c112fefdecc7afeaa5c1de7", + "credit_msat": 10001, + "debit_msat": 0, + "timestamp": 1738000017, + "primary_tag": "routed", + "payment_hash": "097dcfa3b0bc58d499908855dae7d442854a02d4f2ffcc625f9385ed74f3256e", + "fees_msat": 1 + }, + { + "created_index": 8, + "account_id": "a397dd9b3e44afcb67f3f3ce1d649b74a8ade63e35505985e4cc1828634f69a2", + "credit_msat": 0, + "debit_msat": 10000101, + "timestamp": 1738000018, + "primary_tag": "routed", + "payment_hash": "9bf787fe700121009e2ecdca290632c8bf2da853527c700aa5746173981ae584", + "fees_msat": 101 + }, + { + "created_index": 9, + "account_id": "252d1b0a1e57895e84137f28cf19ab2c35847e284c112fefdecc7afeaa5c1de7", + "credit_msat": 10000202, + "debit_msat": 0, + "timestamp": 1738000019, + "primary_tag": "routed", + "payment_hash": "9bf787fe700121009e2ecdca290632c8bf2da853527c700aa5746173981ae584", + "fees_msat": 101 + }, + { + "created_index": 10, + "account_id": "a397dd9b3e44afcb67f3f3ce1d649b74a8ade63e35505985e4cc1828634f69a2", + "credit_msat": 0, + "debit_msat": 10000, + "timestamp": 1738000020, + "primary_tag": "routed", + "payment_hash": "da6c0b6d30ac35f62762bc7114d64d323dc79fb858061902263eb72df6310caf", + "fees_msat": 1 + }, + { + "created_index": 11, + "account_id": "252d1b0a1e57895e84137f28cf19ab2c35847e284c112fefdecc7afeaa5c1de7", + "credit_msat": 10001, + "debit_msat": 0, + "timestamp": 1738000021, + "primary_tag": "routed", + "payment_hash": "da6c0b6d30ac35f62762bc7114d64d323dc79fb858061902263eb72df6310caf", + "fees_msat": 1 + }, + { + "created_index": 12, + "account_id": "a397dd9b3e44afcb67f3f3ce1d649b74a8ade63e35505985e4cc1828634f69a2", + "credit_msat": 0, + "debit_msat": 50000, + "timestamp": 1738000022, + "primary_tag": "routed", + "payment_hash": "ab3a5a971aa3b21494f7ce646f077232c10c9917c33375935c1aebfa571fa1a1", + "fees_msat": 1 + }, + { + "created_index": 13, + "account_id": "252d1b0a1e57895e84137f28cf19ab2c35847e284c112fefdecc7afeaa5c1de7", + "credit_msat": 50001, + "debit_msat": 0, + "timestamp": 1738000023, + "primary_tag": "routed", + "payment_hash": "ab3a5a971aa3b21494f7ce646f077232c10c9917c33375935c1aebfa571fa1a1", + "fees_msat": 1 + }, + { + "created_index": 14, + "account_id": "a397dd9b3e44afcb67f3f3ce1d649b74a8ade63e35505985e4cc1828634f69a2", + "credit_msat": 0, + "debit_msat": 100000, + "timestamp": 1738000024, + "primary_tag": "invoice", + "payment_hash": "2b1434d9e61da6c5f1252369f4a98e1ddce722b4db3bf15553b87a94d19d351d", + "part_id": 0, + "group_id": 1, + "fees_msat": 0 + }, + { + "created_index": 15, + "account_id": "a397dd9b3e44afcb67f3f3ce1d649b74a8ade63e35505985e4cc1828634f69a2", + "credit_msat": 0, + "debit_msat": 10001, + "timestamp": 1738000025, + "primary_tag": "routed", + "payment_hash": "1bb513fb2fbde40592243877d9f404ba3668275e2eeacd9c7264f34f04d37fd1", + "fees_msat": 1 + }, + { + "created_index": 16, + "account_id": "252d1b0a1e57895e84137f28cf19ab2c35847e284c112fefdecc7afeaa5c1de7", + "credit_msat": 10002, + "debit_msat": 0, + "timestamp": 1738000026, + "primary_tag": "routed", + "payment_hash": "1bb513fb2fbde40592243877d9f404ba3668275e2eeacd9c7264f34f04d37fd1", + "fees_msat": 1 + }, + { + "created_index": 17, + "account_id": "252d1b0a1e57895e84137f28cf19ab2c35847e284c112fefdecc7afeaa5c1de7", + "credit_msat": 0, + "debit_msat": 1000000, + "timestamp": 1738000035, + "primary_tag": "invoice", + "payment_hash": "cedc7bf0a9109bd3cd86c5a0c90faa812b8a0ca3d65671c8b4001aae2647349f", + "part_id": 0, + "group_id": 1, + "fees_msat": 0 + }, + { + "created_index": 18, + "account_id": "252d1b0a1e57895e84137f28cf19ab2c35847e284c112fefdecc7afeaa5c1de7", + "credit_msat": 1000, + "debit_msat": 0, + "timestamp": 1738000036, + "primary_tag": "invoice", + "payment_hash": "ff498c3300881ea7a3c04193e43f123444c644662008108c23229da3511bedd1", + "fees_msat": 0 + } + ] + } + }, + { + "request": { + "id": "example:listchannelmoves#2", + "method": "listchannelmoves", + "params": { + "index": "created", + "start": 10, + "limit": 2 + } + }, + "response": { + "channelmoves": [ + { + "created_index": 10, + "account_id": "a397dd9b3e44afcb67f3f3ce1d649b74a8ade63e35505985e4cc1828634f69a2", + "credit_msat": 0, + "debit_msat": 10000, + "timestamp": 1738000020, + "primary_tag": "routed", + "payment_hash": "da6c0b6d30ac35f62762bc7114d64d323dc79fb858061902263eb72df6310caf", + "fees_msat": 1 + }, + { + "created_index": 11, + "account_id": "252d1b0a1e57895e84137f28cf19ab2c35847e284c112fefdecc7afeaa5c1de7", + "credit_msat": 10001, + "debit_msat": 0, + "timestamp": 1738000021, + "primary_tag": "routed", + "payment_hash": "da6c0b6d30ac35f62762bc7114d64d323dc79fb858061902263eb72df6310caf", + "fees_msat": 1 + } + ] + } + } ] }, "listchannels.json": { @@ -17156,22 +18389,22 @@ "id": "example:listchannels#1", "method": "listchannels", "params": { - "short_channel_id": "109x1x1" + "short_channel_id": "110x1x0" } }, "response": { "channels": [ { - "source": "nodeid020202020202020202020202020202020202020202020202020202020202", - "destination": "nodeid010101010101010101010101010101010101010101010101010101010101", - "short_channel_id": "109x1x1", + "source": "022d223620a359a47ff7f7ac447c85c46c923da53389221a0054c11c1e3ca31d59", + "destination": "0266e4598d1d3c415f572a8488830b60f7e744ed9235eb0b1ba93283b315c03518", + "short_channel_id": "110x1x0", "direction": 0, "public": true, "amount_msat": 1000000000, "message_flags": 1, "channel_flags": 0, "active": true, - "last_update": 1738500000, + "last_update": 1738000001, "base_fee_millisatoshi": 1, "fee_per_millionth": 10, "delay": 6, @@ -17180,16 +18413,16 @@ "features": "" }, { - "source": "nodeid010101010101010101010101010101010101010101010101010101010101", - "destination": "nodeid020202020202020202020202020202020202020202020202020202020202", - "short_channel_id": "109x1x1", + "source": "0266e4598d1d3c415f572a8488830b60f7e744ed9235eb0b1ba93283b315c03518", + "destination": "022d223620a359a47ff7f7ac447c85c46c923da53389221a0054c11c1e3ca31d59", + "short_channel_id": "110x1x0", "direction": 1, "public": true, "amount_msat": 1000000000, "message_flags": 1, "channel_flags": 1, - "active": false, - "last_update": 1738510000, + "active": true, + "last_update": 1738000001, "base_fee_millisatoshi": 1, "fee_per_millionth": 10, "delay": 6, @@ -17209,16 +18442,16 @@ "response": { "channels": [ { - "source": "nodeid020202020202020202020202020202020202020202020202020202020202", - "destination": "nodeid010101010101010101010101010101010101010101010101010101010101", - "short_channel_id": "109x1x1", + "source": "022d223620a359a47ff7f7ac447c85c46c923da53389221a0054c11c1e3ca31d59", + "destination": "0266e4598d1d3c415f572a8488830b60f7e744ed9235eb0b1ba93283b315c03518", + "short_channel_id": "110x1x0", "direction": 0, "public": true, "amount_msat": 1000000000, "message_flags": 1, "channel_flags": 0, "active": true, - "last_update": 1738500000, + "last_update": 1738000001, "base_fee_millisatoshi": 1, "fee_per_millionth": 10, "delay": 6, @@ -17227,16 +18460,16 @@ "features": "" }, { - "source": "nodeid010101010101010101010101010101010101010101010101010101010101", - "destination": "nodeid020202020202020202020202020202020202020202020202020202020202", - "short_channel_id": "109x1x1", + "source": "0266e4598d1d3c415f572a8488830b60f7e744ed9235eb0b1ba93283b315c03518", + "destination": "022d223620a359a47ff7f7ac447c85c46c923da53389221a0054c11c1e3ca31d59", + "short_channel_id": "110x1x0", "direction": 1, "public": true, "amount_msat": 1000000000, "message_flags": 1, "channel_flags": 1, - "active": false, - "last_update": 1738510000, + "active": true, + "last_update": 1738000001, "base_fee_millisatoshi": 1, "fee_per_millionth": 10, "delay": 6, @@ -17245,16 +18478,16 @@ "features": "" }, { - "source": "nodeid020202020202020202020202020202020202020202020202020202020202", - "destination": "nodeid030303030303030303030303030303030303030303030303030303030303", - "short_channel_id": "123x1x1", + "source": "022d223620a359a47ff7f7ac447c85c46c923da53389221a0054c11c1e3ca31d59", + "destination": "035d2b1192dfba134e10e540875d366ebc8bc353d5aa766b80c090b39c3a5d885d", + "short_channel_id": "124x1x1", "direction": 0, "public": true, "amount_msat": 1000000000, "message_flags": 1, - "channel_flags": 2, + "channel_flags": 0, "active": true, - "last_update": 1738520000, + "last_update": 1738000001, "base_fee_millisatoshi": 1, "fee_per_millionth": 10, "delay": 6, @@ -17263,16 +18496,16 @@ "features": "" }, { - "source": "nodeid030303030303030303030303030303030303030303030303030303030303", - "destination": "nodeid020202020202020202020202020202020202020202020202020202020202", - "short_channel_id": "123x1x1", + "source": "035d2b1192dfba134e10e540875d366ebc8bc353d5aa766b80c090b39c3a5d885d", + "destination": "022d223620a359a47ff7f7ac447c85c46c923da53389221a0054c11c1e3ca31d59", + "short_channel_id": "124x1x1", "direction": 1, "public": true, "amount_msat": 1000000000, "message_flags": 1, - "channel_flags": 3, - "active": false, - "last_update": 1738530000, + "channel_flags": 1, + "active": true, + "last_update": 1738000001, "base_fee_millisatoshi": 1, "fee_per_millionth": 10, "delay": 6, @@ -17281,16 +18514,34 @@ "features": "" }, { - "source": "nodeid030303030303030303030303030303030303030303030303030303030303", - "destination": "nodeid040404040404040404040404040404040404040404040404040404040404", - "short_channel_id": "130x1x1", + "source": "035d2b1192dfba134e10e540875d366ebc8bc353d5aa766b80c090b39c3a5d885d", + "destination": "0382ce59ebf18be7d84677c2e35f23294b9992ceca95491fcf8a56c6cb2d9de199", + "short_channel_id": "126x1x0", "direction": 0, "public": true, "amount_msat": 1000000000, "message_flags": 1, "channel_flags": 2, + "active": false, + "last_update": 1738000002, + "base_fee_millisatoshi": 1, + "fee_per_millionth": 10, + "delay": 6, + "htlc_minimum_msat": 0, + "htlc_maximum_msat": 990000000, + "features": "" + }, + { + "source": "0382ce59ebf18be7d84677c2e35f23294b9992ceca95491fcf8a56c6cb2d9de199", + "destination": "035d2b1192dfba134e10e540875d366ebc8bc353d5aa766b80c090b39c3a5d885d", + "short_channel_id": "126x1x0", + "direction": 1, + "public": true, + "amount_msat": 1000000000, + "message_flags": 1, + "channel_flags": 1, "active": true, - "last_update": 1738540000, + "last_update": 1738000001, "base_fee_millisatoshi": 1, "fee_per_millionth": 10, "delay": 6, @@ -17603,16 +18854,16 @@ "response": { "closedchannels": [ { - "peer_id": "nodeid030303030303030303030303030303030303030303030303030303030303", - "channel_id": "channelid0230000230000230000230000230000230000230000230000230000", - "short_channel_id": "111x1x1", + "peer_id": "032cf15d1ad9c4a08d26eab1918f732d8ef8fdc6abb9640bf3db174372c491304e", + "channel_id": "f8fc83a432cbfb2fffe222cc06727fdd977b5dd10ebd6707158e799e6f522d9f", + "short_channel_id": "116x1x1", "alias": { - "local": "121x131x141", - "remote": "151x161x171" + "local": "6443160x13255799x14088", + "remote": "12585125x15062924x5208" }, "opener": "local", "closer": "local", - "private": false, + "private": true, "channel_type": { "bits": [ 12, @@ -17623,32 +18874,31 @@ "anchors/even" ] }, - "total_local_commitments": 16, - "total_remote_commitments": 16, - "total_htlcs_sent": 8, - "funding_txid": "fundingtxid00202020202020202020202020202020202020202020202020202", + "total_local_commitments": 2, + "total_remote_commitments": 2, + "total_htlcs_sent": 1, + "funding_txid": "92dc0d9921d6c5beda83bddd3d1575fb673493f354c0a8cd91c6b139620c3155", "funding_outnum": 1, "leased": false, "total_msat": 1000000000, - "final_to_us_msat": 489809898, - "min_to_us_msat": 489809898, + "final_to_us_msat": 500000000, + "min_to_us_msat": 500000000, "max_to_us_msat": 1000000000, - "last_commitment_txid": "txidcloselastcommitment00000100001000010000100001000010000100001", + "last_commitment_txid": "19fec0dedc91354817beacd4155a6303a5ceaad0be36219b3d6e77836c8092a0", "last_commitment_fee_msat": 2895000, - "close_cause": "user", - "last_stable_connection": 1738500000 + "close_cause": "user" }, { - "peer_id": "nodeid050505050505050505050505050505050505050505050505050505050505", - "channel_id": "channelid0250000250000250000250000250000250000250000250000250000", - "short_channel_id": "115x1x1", + "peer_id": "035d2b1192dfba134e10e540875d366ebc8bc353d5aa766b80c090b39c3a5d885d", + "channel_id": "a397dd9b3e44afcb67f3f3ce1d649b74a8ade63e35505985e4cc1828634f69a2", + "short_channel_id": "112x1x0", "alias": { - "local": "122x132x142", - "remote": "152x162x172" + "local": "6377624x13255799x14088", + "remote": "9351983x2726118x65411" }, "opener": "local", "closer": "local", - "private": true, + "private": false, "channel_type": { "bits": [ 12, @@ -17659,20 +18909,20 @@ "anchors/even" ] }, - "total_local_commitments": 2, - "total_remote_commitments": 2, - "total_htlcs_sent": 1, - "funding_txid": "fundingtxid00101010101010101010101010101010101010101010101010101", - "funding_outnum": 1, + "total_local_commitments": 16, + "total_remote_commitments": 16, + "total_htlcs_sent": 8, + "funding_txid": "7cce7550c4b37924bb74fd4baf8f1946a4b14c050c42f2479b04fede08652aa9", + "funding_outnum": 0, "leased": false, "total_msat": 1000000000, - "final_to_us_msat": 500000000, - "min_to_us_msat": 500000000, + "final_to_us_msat": 489809898, + "min_to_us_msat": 489809898, "max_to_us_msat": 1000000000, - "last_commitment_txid": "txidcloselastcommitment00000200002000020000200002000020000200002", + "last_commitment_txid": "40b4acd3759ac69b5160488d73a5890a46bf4f013381e52e9171ee038b3c96d6", "last_commitment_fee_msat": 2896000, "close_cause": "user", - "last_stable_connection": 1738500000 + "last_stable_connection": 1738000000 } ] } @@ -19403,7 +20653,15 @@ "id": "example:listconfigs#1", "method": "listconfigs", "params": { - "config": "network" + "config": "network", + "scb": [ + "0000000000000006f4e1de801de57374d5737da622611e3a1ad9f16d5df9c30fceecc11ce732eeeb022d223620a359a47ff7f7ac447c85c46c923da53389221a0054c11c1e3ca31d59017f000001a95cbe3270e5e0998af5eb0a67f7bf6e8d5b3d3d43059b3e4cfbd1e4fca6152c51320000000100000000000f42400003401000000000eb015c0000fffffffffffe000000020000ffffffffffff3283fc1863a9702a8e188ed55475324e55485a8758d2068cfea35851418c55740000fffffffffffed00ec892b1739b55ddc0cca2988d8731eb33f2295c1fcc13fdbdfff9d3f85d6d038402a6939f0f9d5c7a41464169eb692b4d2d73266b3c46345cd036ca577a15bdeeaa027662682a646ce7671c3a091bf639176e87d3379022126b209ebadadae19ffc0e02c59668c64362eaeabf44ee4f10b98fc92412cbea74b6f3a917423dfdf3ca282602773e6c29472ab708e5b127e8ae1ce2d8b7f56b457299f93bb72bb73fdbcf91770501010702a5f8", + "000000000000000121bd30cac60f477f2c4267220b1702a6ec5780db34f9934fa94b8c0508bf3357035d2b1192dfba134e10e540875d366ebc8bc353d5aa766b80c090b39c3a5d885d017f000001dcf8fdd5381f36008c3eac24cdde5ec0fea8f39240575ef0cb4406cb51ad419dd7810000000000000000000f424000034010000000011301840000fffffffffffa000000030000fffffffffffb8ff7d0df4eee78e558b4e07f82049aaa933f4f4932e13e1e7fee5cb103f7a0b50000fffffffffffa79176754ea338ffa080591b946a6ac1c47ff579ae7e45857bf01261ebe1c46ba0000fffffffffffcbdb924885293efdaa1ba8f556161f4fe525c19483def49b9af85c1623bc6d27b038402add69f29ad433cb7d4c9470f2d49d80245fd9e76a992197528a131e37711efac02c57de22185162001ffaf2e61b053b1d0e280d73ecec1b04916df2c65642d94a102cd4e1a07ee85714b6eada09d9cf81aeb15bfc72ddd003235530c58bbd0c0144902b10f36d2ebab3ce560abf15ceb1bef619491e0597a794fdafcfdf8708eec9e2d0501010702a5f8", + "00000000000000027512083907c74ed3a045e9bf772b3d72948eb93daf84a1cee57108800451aaf2035d2b1192dfba134e10e540875d366ebc8bc353d5aa766b80c090b39c3a5d885d017f000001dcf80239a9c9f2a91e69ba01800baf71f55efe457677b2e5cbd640b888dc1c9375b40000000000000000000f42400003401000000000c301340000ffffffffffff000000010000ffffffffffff0e07b6188dd51f15bb5cb9027950bf487a612dca57e2928de3f28f6ee796978b03840330b7ddf07e5bc779ea468875371ea25b560491c5feaeeb5e229ded3820d1d69103620748b3796c4988dd0fc63b92ae011dc989f15c433a55ed38e24318a43b4c93021bfe48bb1aded55878b00a3f00c5c1bffa1010510d8ba1c6372012ac9c3205d20201604aa7056ab8926038a846014bdbe4874ceef7ce45141b8009b0e2f49e7ec70501010702a5f8", + "0000000000000003222d999f537e32e9458c5db17a63e012dcced61340de06fda5bc30566270b0aa0266e4598d1d3c415f572a8488830b60f7e744ed9235eb0b1ba93283b315c03518017f0000017531932479f6d82ee59c7aa67b99568de0a31c202f6a3ff18a6bdd1ec22683cf026500000000000000000bebb3cb00034010000000009b010c0001000000000000000000000384021f90b5f38e0c0ea50bccfcf70a32cd4395c8c544e70636b7cc41831fe33fb4ce03bcfb0d457dfa07f508f434e6a2f040dd3dd233e7002dbe1c1b5d86ed5d3efd76030a4ce755504748f47401fc016578a52e104cbbd28251f10b11e4b3e55d0fe1d303986bdd0842662b8d0d18147630a720e952a2cda624c63ef4903357d27e54f7920501000702a5f8", + "0000000000000004a4a379248e49d207cc984646e632e1a31105a85708b9d6d961a5018fdd489f5a0266e4598d1d3c415f572a8488830b60f7e744ed9235eb0b1ba93283b315c03518017f000001970c7f07a15ce1fe1519d46536c4036f1c13527fa8bf52f6a5299b860f982ba2ed7e00000001000000000000753000034010000000009b010c000100000000000000000000038402c8aabcf1224df10e9d803dc3918797892fe0abec56d3e06f121bcebbe9ab0a2c03bd181375d57b8b1d15def9c5f9007b3c3ff98a140c0a44c9dc5f54ac7ea4baf30310952e08f9960711d8142dfa171c0fc2348762acea003f3897397f6ace8454130382da2a229450c4a8e8cea70bbd147eaaf981184bff8c1d70b70c30a494d848420501010702a5f8", + "000000000000000509eb55872cd9039ecd08281af756e23b15aad4129fd6a9bcd71b472114ebf43a0266e4598d1d3c415f572a8488830b60f7e744ed9235eb0b1ba93283b315c03518017f000001970c64ed91a21c10208d715b59801b12b4a6eff9ea9e4e7d45971c298b62d90ece8e00000000000000000000c35000034010000000009b010c000100000000000000000000038402e885f38e784050b386fb32d20935acc61059d8b02b6bec0ac2bfc8b2c5cf7f3103ae69dbfc6511ba0781c13113e16e1557a875b910cb1cb1fe1ef95a7edb36135a03758d5faa8515942873911e21869b1b90a4be72af14b394bc064da6ba518b087003750b588cd1fb8d60276c12c1c3eef7e302e3772414234404289db8c10f5731320501010702a5f8" + ] } }, "response": { @@ -19440,30 +20698,175 @@ }, "response": { "configs": { - "accept-htlc-tlv-type": { - "values_int": [], - "sources": [] + "developer": { + "set": true, + "source": "cmdline" }, - "addr": { - "values_str": [ - "127.0.0.1:19735" - ], - "sources": [ - "cmdline" - ] + "lightning-dir": { + "value_str": "/home/rusty/.lightning/regtest", + "source": "cmdline" }, - "alias": { - "value_str": "SILENTARTIST", + "network": { + "value_str": "regtest", + "source": "cmdline" + }, + "testnet": { + "set": false, + "source": "default" + }, + "testnet4": { + "set": false, + "source": "default" + }, + "signet": { + "set": false, + "source": "default" + }, + "mainnet": { + "set": false, + "source": "default" + }, + "regtest": { + "set": false, + "source": "default" + }, + "rpc-file": { + "value_str": "lightning-rpc", "source": "default" }, "allow-deprecated-apis": { "value_bool": true, "source": "cmdline" }, + "plugin": { + "values_str": [], + "sources": [] + }, + "plugin-dir": { + "values_str": [], + "sources": [] + }, + "clear-plugins": { + "set": false, + "source": "default" + }, + "disable-plugin": { + "values_str": [], + "sources": [] + }, + "important-plugin": { + "values_str": [], + "sources": [] + }, "always-use-proxy": { "value_bool": false, "source": "default" }, + "daemon": { + "set": false, + "source": "default" + }, + "experimental-dual-fund": { + "set": true, + "source": "cmdline" + }, + "experimental-splicing": { + "set": false, + "source": "default" + }, + "experimental-shutdown-wrong-funding": { + "set": false, + "source": "default" + }, + "experimental-quiesce": { + "set": false, + "source": "default" + }, + "rgb": { + "value_str": "022d22", + "source": "default" + }, + "alias": { + "value_str": "SILENTARTIST-v25.12", + "source": "default" + }, + "pid-file": { + "value_str": "/home/rusty/.lightning/lightningd-regtest.pid", + "source": "default" + }, + "ignore-fee-limits": { + "value_bool": false, + "source": "cmdline" + }, + "watchtime-blocks": { + "value_int": 5, + "source": "cmdline" + }, + "funding-confirms": { + "value_int": 1, + "source": "default" + }, + "require-confirmed-inputs": { + "value_bool": false, + "source": "default" + }, + "cltv-delta": { + "value_int": 6, + "source": "cmdline" + }, + "cltv-final": { + "value_int": 5, + "source": "cmdline" + }, + "commit-time": { + "value_int": 10, + "source": "default" + }, + "fee-base": { + "value_int": 1, + "source": "default" + }, + "rescan": { + "value_int": 1, + "source": "cmdline" + }, + "fee-per-satoshi": { + "value_int": 10, + "source": "default" + }, + "htlc-minimum-msat": { + "value_msat": 0, + "source": "default" + }, + "htlc-maximum-msat": { + "value_msat": 18446744073709551615, + "source": "default" + }, + "max-concurrent-htlcs": { + "value_int": 483, + "source": "default" + }, + "max-dust-htlc-exposure-msat": { + "value_msat": 50000000, + "source": "default" + }, + "min-capacity-sat": { + "value_int": 500000, + "source": "/home/rusty/.lightning/regtest/config.setconfig:3", + "dynamic": true + }, + "addr": { + "values_str": [ + "127.0.0.1:30003" + ], + "sources": [ + "cmdline" + ] + }, + "bind-addr": { + "values_str": [], + "sources": [] + }, "announce-addr": { "values_str": [], "sources": [] @@ -19476,407 +20879,266 @@ "value_int": 19846, "source": "default" }, + "offline": { + "set": false, + "source": "default" + }, + "autolisten": { + "value_bool": false, + "source": "default" + }, + "accept-htlc-tlv-type": { + "values_int": [], + "sources": [] + }, + "disable-dns": { + "set": true, + "source": "cmdline" + }, + "encrypted-hsm": { + "set": false, + "source": "default" + }, + "rpc-file-mode": { + "value_str": "0600", + "source": "default" + }, + "commit-fee": { + "value_int": 100, + "source": "default" + }, + "commit-feerate-offset": { + "value_int": 5, + "source": "default" + }, + "min-emergency-msat": { + "value_msat": 25000000, + "source": "default" + }, + "subdaemon": { + "values_str": [], + "sources": [] + }, + "invoices-onchain-fallback": { + "set": false, + "source": "default" + }, + "i-promise-to-fix-broken-api-user": { + "values_str": [], + "sources": [] + }, + "log-level": { + "value_str": "debug", + "source": "cmdline" + }, + "log-timestamps": { + "value_bool": true, + "source": "default" + }, + "log-prefix": { + "value_str": "lightningd-2 ", + "source": "cmdline" + }, + "log-file": { + "values_str": [ + "-", + "/home/rusty/.lightning/log" + ], + "sources": [ + "cmdline", + "cmdline" + ] + }, + "dev-no-plugin-checksum": { + "set": true, + "source": "cmdline" + }, + "dev-fail-on-subdaemon-fail": { + "set": true, + "source": "cmdline" + }, + "dev-bitcoind-poll": { + "value_int": 3, + "source": "cmdline" + }, + "dev-fast-gossip": { + "set": true, + "source": "cmdline" + }, + "dev-no-version-checks": { + "set": true, + "source": "cmdline" + }, + "dev-hsmd-no-preapprove-check": { + "set": true, + "source": "cmdline" + }, + "autoconnect-seeker-peers": { + "value_int": 0, + "source": "cmdline" + }, + "dev-crash-after": { + "value_str": "3600", + "source": "cmdline" + }, + "dev-save-plugin-io": { + "value_str": "/tmp/plugin-io", + "source": "cmdline" + }, "autoclean-cycle": { "value_int": 3600, "source": "default", - "plugin": "/root/lightning/plugins/autoclean", + "plugin": "/usr/local/libexec/plugins/autoclean", "dynamic": true }, "autoclean-expiredinvoices-age": { "value_int": 300, - "source": "/tmp/.lightning/regtest/config.setconfig:2", - "plugin": "/root/lightning/plugins/autoclean", + "source": "/home/rusty/.lightning/regtest/config.setconfig:2", + "plugin": "/usr/local/libexec/plugins/autoclean", "dynamic": true }, - "autoconnect-seeker-peers": { - "value_int": 0, - "source": "cmdline" - }, - "autolisten": { - "value_bool": false, - "source": "default" - }, - "bind-addr": { - "values_str": [], - "sources": [] + "dev-autoclean-max-batch": { + "value_int": 100, + "source": "default", + "plugin": "/usr/local/libexec/plugins/autoclean", + "dynamic": true }, "bitcoin-datadir": { - "value_str": "/tmp/.lightning/", + "value_str": "/var/lib/bitcoind", "source": "cmdline", - "plugin": "/root/lightning/plugins/bcli" + "plugin": "/usr/local/libexec/plugins/bcli" }, "bitcoin-retry-timeout": { "value_int": 60, "source": "default", - "plugin": "/root/lightning/plugins/bcli" + "plugin": "/usr/local/libexec/plugins/bcli" }, "bitcoin-rpcclienttimeout": { "value_int": 60, "source": "default", - "plugin": "/root/lightning/plugins/bcli" + "plugin": "/usr/local/libexec/plugins/bcli" }, "bitcoin-rpcpassword": { "value_str": "rpcpass", "source": "cmdline", - "plugin": "/root/lightning/plugins/bcli" + "plugin": "/usr/local/libexec/plugins/bcli" }, "bitcoin-rpcport": { - "value_int": 18332, + "value_int": 8332, "source": "cmdline", - "plugin": "/root/lightning/plugins/bcli" + "plugin": "/usr/local/libexec/plugins/bcli" }, "bitcoin-rpcuser": { "value_str": "rpcuser", "source": "cmdline", - "plugin": "/root/lightning/plugins/bcli" + "plugin": "/usr/local/libexec/plugins/bcli" }, - "clear-plugins": { - "set": false, - "source": "default" - }, - "cltv-delta": { - "value_int": 6, - "source": "cmdline" - }, - "cltv-final": { - "value_int": 5, - "source": "cmdline" - }, - "commit-fee": { - "value_int": 100, - "source": "default" - }, - "commit-feerate-offset": { - "value_int": 5, - "source": "default" - }, - "commit-time": { - "value_int": 10, - "source": "default" - }, - "daemon": { - "set": false, - "source": "default" - }, - "dev-autoclean-max-batch": { - "value_int": 100, + "grpc-host": { + "value_str": "127.0.0.1", "source": "default", - "plugin": "/root/lightning/plugins/autoclean", - "dynamic": true + "plugin": "/usr/local/libexec/plugins/cln-grpc" }, - "dev-bitcoind-poll": { - "value_int": 3, - "source": "cmdline" - }, - "dev-crash-after": { - "value_str": "3600", - "source": "cmdline" - }, - "dev-fail-on-subdaemon-fail": { - "set": true, - "source": "cmdline" - }, - "dev-fast-gossip": { - "set": true, - "source": "cmdline" - }, - "dev-hsmd-no-preapprove-check": { - "set": true, - "source": "cmdline" - }, - "dev-invoice-bpath-scid": { - "set": false, + "grpc-msg-buffer-size": { + "value_int": 1024, "source": "default", - "plugin": "/root/lightning/plugins/offers" - }, - "dev-no-plugin-checksum": { - "set": true, - "source": "cmdline" - }, - "dev-no-version-checks": { - "set": true, - "source": "cmdline" - }, - "developer": { - "set": true, - "source": "cmdline" + "plugin": "/usr/local/libexec/plugins/cln-grpc" }, - "disable-dns": { - "set": true, - "source": "cmdline" + "grpc-port": { + "value_int": 30004, + "source": "cmdline", + "plugin": "/usr/local/libexec/plugins/cln-grpc" }, - "disable-mpp": { + "renepay-debug-mcf": { "set": false, "source": "default", - "plugin": "/root/lightning/plugins/pay" - }, - "disable-plugin": { - "values_str": [], - "sources": [] + "plugin": "/usr/local/libexec/plugins/cln-renepay" }, - "encrypted-hsm": { - "set": false, - "source": "default" - }, - "experimental-dual-fund": { - "set": true, - "source": "cmdline" - }, - "experimental-quiesce": { + "renepay-debug-payflow": { "set": false, - "source": "default" + "source": "default", + "plugin": "/usr/local/libexec/plugins/cln-renepay" }, - "experimental-shutdown-wrong-funding": { - "set": false, - "source": "default" + "xpay-handle-pay": { + "value_bool": false, + "source": "default", + "plugin": "/usr/local/libexec/plugins/cln-xpay", + "dynamic": true }, - "experimental-splicing": { - "set": false, - "source": "default" + "xpay-slow-mode": { + "value_bool": false, + "source": "default", + "plugin": "/usr/local/libexec/plugins/cln-xpay", + "dynamic": true }, "exposesecret-passphrase": { "value_str": "...", "source": "default", - "plugin": "/root/lightning/plugins/exposesecret" - }, - "fee-base": { - "value_int": 1, - "source": "default" - }, - "fee-per-satoshi": { - "value_int": 10, - "source": "default" - }, - "fetchinvoice-noconnect": { - "set": false, - "source": "default", - "plugin": "/root/lightning/plugins/offers" + "plugin": "/usr/local/libexec/plugins/exposesecret" }, "funder-fund-probability": { "value_int": 100, "source": "default", - "plugin": "/root/lightning/plugins/funder" + "plugin": "/usr/local/libexec/plugins/funder" }, "funder-fuzz-percent": { "value_int": 0, "source": "default", - "plugin": "/root/lightning/plugins/funder" + "plugin": "/usr/local/libexec/plugins/funder" }, "funder-lease-requests-only": { "value_bool": true, "source": "default", - "plugin": "/root/lightning/plugins/funder" + "plugin": "/usr/local/libexec/plugins/funder" }, "funder-max-their-funding": { "value_str": "4294967295sat", "source": "default", - "plugin": "/root/lightning/plugins/funder" + "plugin": "/usr/local/libexec/plugins/funder" }, "funder-min-their-funding": { "value_str": "10000sat", "source": "default", - "plugin": "/root/lightning/plugins/funder" + "plugin": "/usr/local/libexec/plugins/funder" }, "funder-per-channel-max": { "value_str": "4294967295sat", "source": "default", - "plugin": "/root/lightning/plugins/funder" + "plugin": "/usr/local/libexec/plugins/funder" }, "funder-per-channel-min": { "value_str": "10000sat", "source": "default", - "plugin": "/root/lightning/plugins/funder" + "plugin": "/usr/local/libexec/plugins/funder" }, "funder-policy": { "value_str": "fixed", "source": "default", - "plugin": "/root/lightning/plugins/funder" + "plugin": "/usr/local/libexec/plugins/funder" }, "funder-policy-mod": { "value_str": "0", "source": "default", - "plugin": "/root/lightning/plugins/funder" + "plugin": "/usr/local/libexec/plugins/funder" }, "funder-reserve-tank": { "value_str": "0sat", "source": "default", - "plugin": "/root/lightning/plugins/funder" - }, - "funding-confirms": { - "value_int": 1, - "source": "default" - }, - "grpc-host": { - "value_str": "127.0.0.1", - "source": "default", - "plugin": "/root/lightning/plugins/cln-grpc" - }, - "grpc-msg-buffer-size": { - "value_int": 1024, - "source": "default", - "plugin": "/root/lightning/plugins/cln-grpc" + "plugin": "/usr/local/libexec/plugins/funder" }, - "grpc-port": { - "value_int": 9736, - "source": "cmdline", - "plugin": "/root/lightning/plugins/cln-grpc" - }, - "htlc-maximum-msat": { - "value_msat": 18446744073709552000, - "source": "default" - }, - "htlc-minimum-msat": { - "value_msat": 0, - "source": "default" - }, - "i-promise-to-fix-broken-api-user": { - "values_str": [], - "sources": [] - }, - "ignore-fee-limits": { - "value_bool": false, - "source": "cmdline" - }, - "important-plugin": { - "values_str": [], - "sources": [] - }, - "invoices-onchain-fallback": { - "set": false, - "source": "default" - }, - "lightning-dir": { - "value_str": "/tmp/.lightning/", - "source": "cmdline" - }, - "log-file": { - "values_str": [ - "-", - "/tmp/.lightning/log" - ], - "sources": [ - "cmdline", - "cmdline" - ] - }, - "log-level": { - "value_str": "debug", - "source": "cmdline" - }, - "log-prefix": { - "value_str": "lightningd-2 ", - "source": "cmdline" - }, - "log-timestamps": { - "value_bool": true, - "source": "default" - }, - "mainnet": { - "set": false, - "source": "default" - }, - "max-concurrent-htlcs": { - "value_int": 483, - "source": "default" - }, - "max-dust-htlc-exposure-msat": { - "value_msat": 50000000, - "source": "default" - }, - "min-capacity-sat": { - "value_int": 500000, - "source": "/tmp/.lightning/regtest/config.setconfig:3", - "dynamic": true - }, - "min-emergency-msat": { - "value_msat": 25000000, - "source": "default" - }, - "network": { - "value_str": "regtest", - "source": "cmdline" - }, - "offline": { - "set": false, - "source": "default" - }, - "pid-file": { - "value_str": "/tmp/.lightning/lightningd-regtest.pid", - "source": "default" - }, - "plugin": { - "values_str": [], - "sources": [] - }, - "plugin-dir": { - "values_str": [], - "sources": [] - }, - "regtest": { - "set": false, - "source": "default" - }, - "renepay-debug-mcf": { + "dev-invoice-bpath-scid": { "set": false, "source": "default", - "plugin": "/root/lightning/plugins/cln-renepay" + "plugin": "/usr/local/libexec/plugins/offers" }, - "renepay-debug-payflow": { + "fetchinvoice-noconnect": { "set": false, "source": "default", - "plugin": "/root/lightning/plugins/cln-renepay" - }, - "require-confirmed-inputs": { - "value_bool": false, - "source": "default" - }, - "rescan": { - "value_int": 1, - "source": "cmdline" - }, - "rgb": { - "value_str": "022d22", - "source": "default" - }, - "rpc-file": { - "value_str": "lightning-rpc", - "source": "default" - }, - "rpc-file-mode": { - "value_str": "0600", - "source": "default" - }, - "signet": { - "set": false, - "source": "default" - }, - "subdaemon": { - "values_str": [], - "sources": [] - }, - "testnet": { - "set": false, - "source": "default" + "plugin": "/usr/local/libexec/plugins/offers" }, - "testnet4": { + "disable-mpp": { "set": false, - "source": "default" - }, - "watchtime-blocks": { - "value_int": 5, - "source": "cmdline" - }, - "xpay-handle-pay": { - "value_bool": false, - "source": "default", - "plugin": "/root/lightning/plugins/cln-xpay", - "dynamic": true - }, - "xpay-slow-mode": { - "value_bool": false, "source": "default", - "plugin": "/root/lightning/plugins/cln-xpay", - "dynamic": true + "plugin": "/usr/local/libexec/plugins/pay" } } } @@ -20412,8 +21674,8 @@ "id": "example:listforwards#1", "method": "listforwards", "params": { - "in_channel": "109x1x1", - "out_channel": "123x1x1", + "in_channel": "110x1x0", + "out_channel": "124x1x1", "status": "settled" } }, @@ -20422,32 +21684,32 @@ { "created_index": 12, "updated_index": 7, - "in_channel": "109x1x1", + "in_channel": "110x1x0", "in_htlc_id": 19, - "out_channel": "123x1x1", + "out_channel": "124x1x1", "out_htlc_id": 2, "in_msat": 50000501, "out_msat": 50000000, "fee_msat": 501, "status": "settled", "style": "tlv", - "received_time": 1738000000, - "resolved_time": 1738500000 + "received_time": 1738000000.0, + "resolved_time": 1738000000.0 }, { "created_index": 13, "updated_index": 8, - "in_channel": "109x1x1", + "in_channel": "110x1x0", "in_htlc_id": 20, - "out_channel": "123x1x1", + "out_channel": "124x1x1", "out_htlc_id": 3, "in_msat": 50000501, "out_msat": 50000000, "fee_msat": 501, "status": "settled", "style": "tlv", - "received_time": 1738010000, - "resolved_time": 1738510000 + "received_time": 1738000000.0, + "resolved_time": 1738000000.0 } ] } @@ -20463,77 +21725,171 @@ { "created_index": 1, "updated_index": 1, - "in_channel": "109x1x1", + "in_channel": "110x1x0", "in_htlc_id": 1, - "out_channel": "111x1x1", + "out_channel": "112x1x0", "out_htlc_id": 1, "in_msat": 10001, "out_msat": 10000, "fee_msat": 1, "status": "settled", "style": "tlv", - "received_time": 1738000000, - "resolved_time": 1738500000 + "received_time": 1738000000.0, + "resolved_time": 1738000000.0 }, { "created_index": 2, "updated_index": 2, - "in_channel": "109x1x1", + "in_channel": "110x1x0", "in_htlc_id": 2, - "out_channel": "111x1x1", + "out_channel": "112x1x0", "out_htlc_id": 2, "in_msat": 10001, "out_msat": 10000, "fee_msat": 1, "status": "settled", "style": "tlv", - "received_time": 1738010000, - "resolved_time": 1738510000 + "received_time": 1738000000.0, + "resolved_time": 1738000000.0 }, { "created_index": 3, "updated_index": 3, - "in_channel": "109x1x1", + "in_channel": "110x1x0", "in_htlc_id": 3, - "out_channel": "111x1x1", + "out_channel": "112x1x0", "out_htlc_id": 3, "in_msat": 10000202, "out_msat": 10000101, "fee_msat": 101, "status": "settled", "style": "tlv", - "received_time": 1738020000, - "resolved_time": 1738520000 + "received_time": 1738000000.0, + "resolved_time": 1738000000.0 }, { "created_index": 5, "updated_index": 4, - "in_channel": "109x1x1", + "in_channel": "110x1x0", "in_htlc_id": 5, - "out_channel": "111x1x1", + "out_channel": "112x1x0", "out_htlc_id": 4, "in_msat": 10001, "out_msat": 10000, "fee_msat": 1, "status": "settled", "style": "tlv", - "received_time": 1738030000, - "resolved_time": 1738530000 + "received_time": 1738000000.0, + "resolved_time": 1738000000.0 }, { "created_index": 6, "updated_index": 5, - "in_channel": "109x1x1", + "in_channel": "110x1x0", "in_htlc_id": 6, - "out_channel": "111x1x1", + "out_channel": "112x1x0", "out_htlc_id": 5, "in_msat": 50001, "out_msat": 50000, "fee_msat": 1, "status": "settled", "style": "tlv", - "received_time": 1738040000, - "resolved_time": 1738540000 + "received_time": 1738000000.0, + "resolved_time": 1738000000.0 + }, + { + "created_index": 7, + "updated_index": 6, + "in_channel": "110x1x0", + "in_htlc_id": 7, + "out_channel": "112x1x0", + "out_htlc_id": 7, + "in_msat": 10002, + "out_msat": 10001, + "fee_msat": 1, + "status": "settled", + "style": "tlv", + "received_time": 1738000000.0, + "resolved_time": 1738000000.0 + }, + { + "created_index": 8, + "in_channel": "110x1x0", + "in_htlc_id": 8, + "out_channel": "112x1x0", + "in_msat": 1002, + "status": "local_failed", + "failcode": 16394, + "failreason": "WIRE_UNKNOWN_NEXT_PEER", + "style": "tlv", + "received_time": 1738000000.0 + }, + { + "created_index": 9, + "in_channel": "110x1x0", + "in_htlc_id": 9, + "out_channel": "112x1x0", + "in_msat": 10001, + "status": "local_failed", + "failcode": 16394, + "failreason": "WIRE_UNKNOWN_NEXT_PEER", + "style": "tlv", + "received_time": 1738000000.0 + }, + { + "created_index": 10, + "in_channel": "110x1x0", + "in_htlc_id": 18, + "out_channel": "160x1x1", + "in_msat": 1000000, + "status": "local_failed", + "failcode": 16394, + "failreason": "WIRE_UNKNOWN_NEXT_PEER", + "style": "tlv", + "received_time": 1738000000.0 + }, + { + "created_index": 11, + "in_channel": "110x1x0", + "in_htlc_id": 17, + "out_channel": "124x1x1", + "out_htlc_id": 1, + "in_msat": 4000082, + "out_msat": 4000041, + "fee_msat": 41, + "status": "offered", + "style": "tlv", + "received_time": 1738000000.0 + }, + { + "created_index": 12, + "updated_index": 7, + "in_channel": "110x1x0", + "in_htlc_id": 19, + "out_channel": "124x1x1", + "out_htlc_id": 2, + "in_msat": 50000501, + "out_msat": 50000000, + "fee_msat": 501, + "status": "settled", + "style": "tlv", + "received_time": 1738000000.0, + "resolved_time": 1738000000.0 + }, + { + "created_index": 13, + "updated_index": 8, + "in_channel": "110x1x0", + "in_htlc_id": 20, + "out_channel": "124x1x1", + "out_htlc_id": 3, + "in_msat": 50000501, + "out_msat": 50000000, + "fee_msat": 501, + "status": "settled", + "style": "tlv", + "received_time": 1738000000.0, + "resolved_time": 1738000000.0 } ] } @@ -20902,67 +22258,118 @@ "response": { "outputs": [ { - "txid": "txid000010000100001000010000100001000010000100001000010000100001", - "output": 2, - "amount_msat": 26000000, - "scriptpubkey": "scriptpubkey01010101010101010101010101010101010101010101010101010101", - "address": "bcrt1p0004040404040404040404040404040404040404040404040404040404", + "txid": "59d7273c7dde3b2786f7325da08a303779ee718443aaa25d03db19c9e909591b", + "output": 6, + "amount_msat": 1000000, + "scriptpubkey": "00146a1845bb0ea1f8efa63f00f325641db7350dcd5b", + "address": "bcrt1qdgvytwcw58uwlf3lqrej2eqaku6smn2mdvkycp", "status": "confirmed", - "blockheight": 160, + "blockheight": 141, "reserved": false }, { - "txid": "txid000020000200002000020000200002000020000200002000020000200002", - "output": 3, - "amount_msat": 27000000, - "scriptpubkey": "scriptpubkey02020202020202020202020202020202020202020202020202020202", - "address": "bcrt1p0004040404040404040404040404040404040404040404040404040404", + "txid": "1c863d8172c0a588a7d34426b7249d4a939f04d4ca4bad6c28d5913ed2dff12a", + "output": 0, + "amount_msat": 949204000, + "scriptpubkey": "5120ec722e1af72c414e9967d22b9809e96127fea27702c78dd7821b1c5aa9f08f59", + "address": "bcrt1pa3ezuxhh93q5axt86g4esz0fvynlagnhqtrcm4uzrvw9420s3avsck2pku", "status": "confirmed", "blockheight": 160, "reserved": false }, { - "txid": "txid000030000300003000030000300003000030000300003000030000300003", - "output": 4, - "amount_msat": 28000000, - "scriptpubkey": "scriptpubkey03030303030303030303030303030303030303030303030303030303", - "address": "bcrt1p0004040404040404040404040404040404040404040404040404040404", + "txid": "8ef1ed98891f7cf81b74c330a68de9fcff802870f91cf04a69c5db02118bc78e", + "output": 0, + "amount_msat": 497105000, + "scriptpubkey": "51205c063fe945e1a1e3a81072584a44d0c838919293953405f8e7ef9552788f94be", + "address": "bcrt1ptsrrl629uxs782qswfvy53xsequfry5nj56qt788a724y7y0jjlqxzv28f", + "status": "unconfirmed", + "reserved": false + }, + { + "txid": "19fec0dedc91354817beacd4155a6303a5ceaad0be36219b3d6e77836c8092a0", + "output": 0, + "amount_msat": 497105000, + "scriptpubkey": "5120370bae2303e8b17792a34ee04ada86a6b2b84fd76a01143babd899c7ed9e8372", + "address": "bcrt1pxu96ugcrazch0y4rfmsy4k5x56etsn7hdgq3gwatmzvu0mv7sdeql5x9qe", "status": "confirmed", - "blockheight": 160, + "blockheight": 159, + "reserved": false + }, + { + "txid": "4fc8702cec5b92e269cd5bf25f90559ee09f96b481e18cf7e2f5aca43394e7b7", + "output": 1, + "amount_msat": 2000000000, + "scriptpubkey": "00149edfbe21c9e3afb797debd0aeb518a9d97793ea8", + "address": "bcrt1qnm0mugwfuwhm0977h59wk5v2nkthj04gcw9vvh", + "status": "confirmed", + "blockheight": 159, + "reserved": false + }, + { + "txid": "d84db03fd012a98de6776fb10ee1c1de23282c33518aa32fdd5a15600f535ace", + "output": 0, + "amount_msat": 2000000000, + "scriptpubkey": "001461ed06c0632af284ec9e192e97758fc04692c829", + "address": "bcrt1qv8ksdsrr9tegfmy7ryhfwav0cprf9jpfqdfr4m", + "status": "confirmed", + "blockheight": 111, + "reserved": false + }, + { + "txid": "40b4acd3759ac69b5160488d73a5890a46bf4f013381e52e9171ee038b3c96d6", + "output": 0, + "amount_msat": 486914000, + "scriptpubkey": "512085d72025e78fd08bb61119f0987ab0041f50561ada6e130c645343db8c44c2af", + "address": "bcrt1pshtjqf083lgghds3r8cfs74sqs04q4s6mfhpxrry2dpahrzyc2hslyvm7n", + "status": "confirmed", + "blockheight": 122, + "reserved": false + }, + { + "txid": "6430642958a9aaa5c380bb9ea5048ae920557df4e8c8f959ee745f87f03662ed", + "output": 0, + "amount_msat": 198992853000, + "scriptpubkey": "512052021c61da23b2eda3d5000c6d812d0c9b088c237ed2a510abd94d8c3f7c421d", + "address": "bcrt1p2gppccw6ywewmg74qqxxmqfdpjds3rpr0mf22y9tm9xcc0muggwsea9nkf", + "status": "confirmed", + "blockheight": 137, "reserved": false } ], "channels": [ { - "peer_id": "nodeid020202020202020202020202020202020202020202020202020202020202", + "peer_id": "035d2b1192dfba134e10e540875d366ebc8bc353d5aa766b80c090b39c3a5d885d", "connected": true, "state": "CHANNELD_NORMAL", - "channel_id": "channelid0120000120000120000120000120000120000120000120000120000", - "short_channel_id": "109x1x1", - "our_amount_msat": 36000000, - "amount_msat": 11000000, - "funding_txid": "txid010010100101001010010100101001010010100101001010010100101001", + "channel_id": "ecabe6d86abdd57565b3fb7e7c5d724e60ca1a07633951769b5dbfa48dc884b3", + "short_channel_id": "124x1x1", + "our_amount_msat": 899996000, + "amount_msat": 1000000000, + "funding_txid": "148a366c9a72e40af01daca6acc24e0a5648d0efb7e01f4708f23412d9deba69", "funding_output": 1 }, { - "peer_id": "nodeid050505050505050505050505050505050505050505050505050505050505", - "connected": false, - "state": "ONCHAIN", - "channel_id": "channelid1300013000130001300013000130001300013000130001300013000", - "our_amount_msat": 37000000, - "amount_msat": 12000000, - "funding_txid": "txid010020100201002010020100201002010020100201002010020100201002", - "funding_output": 2 + "peer_id": "0266e4598d1d3c415f572a8488830b60f7e744ed9235eb0b1ba93283b315c03518", + "connected": true, + "state": "CHANNELD_NORMAL", + "channel_id": "252d1b0a1e57895e84137f28cf19ab2c35847e284c112fefdecc7afeaa5c1de7", + "short_channel_id": "110x1x0", + "our_amount_msat": 609507210, + "amount_msat": 1000000000, + "funding_txid": "63f74346eda6b8620ec24f86e2f8982ef3dade95f8efd00b372a75b2893b6f0d", + "funding_output": 0 }, { - "peer_id": "nodeid030303030303030303030303030303030303030303030303030303030303", + "peer_id": "0382ce59ebf18be7d84677c2e35f23294b9992ceca95491fcf8a56c6cb2d9de199", "connected": false, - "state": "ONCHAIN", - "channel_id": "channelid1100011000110001100011000110001100011000110001100011000", - "our_amount_msat": 38000000, - "amount_msat": 13000000, - "funding_txid": "txid010030100301003010030100301003010030100301003010030100301003", - "funding_output": 3 + "state": "CLOSINGD_COMPLETE", + "channel_id": "f4e1de801de57374d5737da622611e3a1ad9f16d5df9c30fceecc11ce732eeeb", + "short_channel_id": "160x1x1", + "our_amount_msat": 500000000, + "amount_msat": 1000000000, + "funding_txid": "1c863d8172c0a588a7d34426b7249d4a939f04d4ca4bad6c28d5913ed2dff12a", + "funding_output": 1 } ] } @@ -21142,7 +22549,7 @@ "id": "example:listhtlcs#1", "method": "listhtlcs", "params": [ - "109x1x1" + "110x1x0" ] }, "response": { @@ -21150,56 +22557,254 @@ { "created_index": 1, "updated_index": 9, - "short_channel_id": "109x1x1", + "short_channel_id": "110x1x0", "id": 0, - "expiry": 126, + "expiry": 127, "direction": "out", "amount_msat": 500000000, - "payment_hash": "paymenthashdelpay10101010101010101010101010101010101010101010101", + "payment_hash": "342cbb1cb564e8f32eb64fe8c254abf5ec5f6b87a0f8de7909caf8e658f3bd2a", "state": "RCVD_REMOVE_ACK_REVOCATION" }, { "created_index": 2, "updated_index": 18, - "short_channel_id": "109x1x1", + "short_channel_id": "110x1x0", "id": 1, - "expiry": 135, + "expiry": 137, "direction": "out", "amount_msat": 10001, - "payment_hash": "paymenthashinvl0310031003100310031003100310031003100310031003100", + "payment_hash": "9562ee18e942b0eb2e36050c108efcb34cb07e5cdbe28d08d26bb71af1556c2f", "state": "RCVD_REMOVE_ACK_REVOCATION" }, { "created_index": 3, "updated_index": 27, - "short_channel_id": "109x1x1", + "short_channel_id": "110x1x0", "id": 2, - "expiry": 149, + "expiry": 150, "direction": "out", "amount_msat": 10001, - "payment_hash": "paymenthashkey01k101k101k101k101k101k101k101k101k101k101k101k101", + "payment_hash": "097dcfa3b0bc58d499908855dae7d442854a02d4f2ffcc625f9385ed74f3256e", "state": "RCVD_REMOVE_ACK_REVOCATION" }, { "created_index": 4, "updated_index": 36, - "short_channel_id": "109x1x1", + "short_channel_id": "110x1x0", "id": 3, - "expiry": 155, + "expiry": 156, "direction": "out", "amount_msat": 10000202, - "payment_hash": "paymenthashkey02k201k201k201k201k201k201k201k201k201k201k201k201", + "payment_hash": "9bf787fe700121009e2ecdca290632c8bf2da853527c700aa5746173981ae584", "state": "RCVD_REMOVE_ACK_REVOCATION" }, { "created_index": 5, "updated_index": 44, - "short_channel_id": "109x1x1", + "short_channel_id": "110x1x0", "id": 4, - "expiry": 152, + "expiry": 153, + "direction": "out", + "amount_msat": 10001, + "payment_hash": "da6c0b6d30ac35f62762bc7114d64d323dc79fb858061902263eb72df6310caf", + "state": "RCVD_REMOVE_ACK_REVOCATION" + }, + { + "created_index": 6, + "updated_index": 53, + "short_channel_id": "110x1x0", + "id": 5, + "expiry": 150, + "direction": "out", + "amount_msat": 10001, + "payment_hash": "da6c0b6d30ac35f62762bc7114d64d323dc79fb858061902263eb72df6310caf", + "state": "RCVD_REMOVE_ACK_REVOCATION" + }, + { + "created_index": 7, + "updated_index": 62, + "short_channel_id": "110x1x0", + "id": 6, + "expiry": 133, + "direction": "out", + "amount_msat": 50001, + "payment_hash": "ab3a5a971aa3b21494f7ce646f077232c10c9917c33375935c1aebfa571fa1a1", + "state": "RCVD_REMOVE_ACK_REVOCATION" + }, + { + "created_index": 8, + "updated_index": 71, + "short_channel_id": "110x1x0", + "id": 7, + "expiry": 139, + "direction": "out", + "amount_msat": 10002, + "payment_hash": "1bb513fb2fbde40592243877d9f404ba3668275e2eeacd9c7264f34f04d37fd1", + "state": "RCVD_REMOVE_ACK_REVOCATION" + }, + { + "created_index": 9, + "updated_index": 79, + "short_channel_id": "110x1x0", + "id": 8, + "expiry": 143, + "direction": "out", + "amount_msat": 1002, + "payment_hash": "47c148c1746366e4c2c7496621c22002bc2711b4d9c52cbb9c7b1fdca59c8579", + "state": "RCVD_REMOVE_ACK_REVOCATION" + }, + { + "created_index": 10, + "updated_index": 87, + "short_channel_id": "110x1x0", + "id": 9, + "expiry": 138, "direction": "out", "amount_msat": 10001, - "payment_hash": "paymenthashkey03k301k301k301k301k301k301k301k301k301k301k301k301", + "payment_hash": "53a72d006c295bac2f2f81e6b82dd67193555a1859f7c90f84678b57ce6d10e2", + "state": "RCVD_REMOVE_ACK_REVOCATION" + }, + { + "created_index": 11, + "updated_index": 96, + "short_channel_id": "110x1x0", + "id": 0, + "expiry": 137, + "direction": "in", + "amount_msat": 1000000, + "payment_hash": "cedc7bf0a9109bd3cd86c5a0c90faa812b8a0ca3d65671c8b4001aae2647349f", + "state": "SENT_REMOVE_ACK_REVOCATION" + }, + { + "created_index": 12, + "updated_index": 104, + "short_channel_id": "110x1x0", + "id": 10, + "expiry": 145, + "direction": "out", + "amount_msat": 1000, + "payment_hash": "ff498c3300881ea7a3c04193e43f123444c644662008108c23229da3511bedd1", + "state": "RCVD_REMOVE_ACK_REVOCATION" + }, + { + "created_index": 13, + "updated_index": 113, + "short_channel_id": "110x1x0", + "id": 11, + "expiry": 269, + "direction": "out", + "amount_msat": 400000, + "payment_hash": "e0b5658ef8e23cab6546ea5f7794a8c760483abf3613b34f401df4128944afae", + "state": "RCVD_REMOVE_ACK_REVOCATION" + }, + { + "created_index": 14, + "updated_index": 122, + "short_channel_id": "110x1x0", + "id": 12, + "expiry": 137, + "direction": "out", + "amount_msat": 2000, + "payment_hash": "2a25861f15614825bdfd154d422342f159446f0d54dc24e8385d31520023f8cb", + "state": "RCVD_REMOVE_ACK_REVOCATION" + }, + { + "created_index": 15, + "updated_index": 131, + "short_channel_id": "110x1x0", + "id": 13, + "expiry": 137, + "direction": "out", + "amount_msat": 3000, + "payment_hash": "36a32c9d7ee7baf5c15d1b9b27d085dce9c697fb427d0ce68342acce00e1586f", + "state": "RCVD_REMOVE_ACK_REVOCATION" + }, + { + "created_index": 16, + "updated_index": 140, + "short_channel_id": "110x1x0", + "id": 14, + "expiry": 137, + "direction": "out", + "amount_msat": 5000, + "payment_hash": "8e3ea1fb26e3e5e8627064e68e424713e3393752457ffe19a565fea54f6307d6", + "state": "RCVD_REMOVE_ACK_REVOCATION" + }, + { + "created_index": 17, + "updated_index": 149, + "short_channel_id": "110x1x0", + "id": 15, + "expiry": 137, + "direction": "out", + "amount_msat": 4000, + "payment_hash": "09963074ab0fc38044f890c763c658e7ea4f8b31ccbcfc6a0191163f5cdc4360", + "state": "RCVD_REMOVE_ACK_REVOCATION" + }, + { + "created_index": 18, + "updated_index": 158, + "short_channel_id": "110x1x0", + "id": 16, + "expiry": 137, + "direction": "out", + "amount_msat": 1000, + "payment_hash": "9a33e433faddc3371f6a56a34146c82629d567520ddaf28244bd9f196288af71", + "state": "RCVD_REMOVE_ACK_REVOCATION" + }, + { + "created_index": 19, + "updated_index": 165, + "short_channel_id": "110x1x0", + "id": 17, + "expiry": 182, + "direction": "out", + "amount_msat": 4000082, + "payment_hash": "2b924194d169a96d9cc35b66ae912507e18ace9ef679fcb5324636ff73be410a", + "state": "SENT_ADD_ACK_REVOCATION" + }, + { + "created_index": 20, + "updated_index": 170, + "short_channel_id": "110x1x0", + "id": 18, + "expiry": 166, + "direction": "out", + "amount_msat": 1000000, + "payment_hash": "2b924194d169a96d9cc35b66ae912507e18ace9ef679fcb5324636ff73be410a", + "state": "RCVD_REMOVE_ACK_REVOCATION" + }, + { + "created_index": 21, + "updated_index": 179, + "short_channel_id": "110x1x0", + "id": 19, + "expiry": 172, + "direction": "out", + "amount_msat": 50000501, + "payment_hash": "1d3a502d4b52d3c22af20f93605cadec2194da2e077b9fbbd15fa379c6bfbbdd", + "state": "RCVD_REMOVE_ACK_REVOCATION" + }, + { + "created_index": 22, + "updated_index": 188, + "short_channel_id": "110x1x0", + "id": 20, + "expiry": 172, + "direction": "out", + "amount_msat": 50000501, + "payment_hash": "39a88ddc69c973a791043a877a415eda840888849a5d7175c9666104513f9235", + "state": "RCVD_REMOVE_ACK_REVOCATION" + }, + { + "created_index": 23, + "updated_index": 196, + "short_channel_id": "110x1x0", + "id": 21, + "expiry": 172, + "direction": "out", + "amount_msat": 50000501, + "payment_hash": "287476fe90c160d09bf95156469dc3cfc82e366c4676c9b774f26051bd465a96", "state": "RCVD_REMOVE_ACK_REVOCATION" } ] @@ -21220,12 +22825,12 @@ { "created_index": 4, "updated_index": 36, - "short_channel_id": "109x1x1", + "short_channel_id": "110x1x0", "id": 3, - "expiry": 155, + "expiry": 156, "direction": "out", "amount_msat": 10000202, - "payment_hash": "paymenthashkey02k201k201k201k201k201k201k201k201k201k201k201k201", + "payment_hash": "9bf787fe700121009e2ecdca290632c8bf2da853527c700aa5746173981ae584", "state": "RCVD_REMOVE_ACK_REVOCATION" } ] @@ -21340,16 +22945,16 @@ "id": "example:listinvoicerequests#1", "method": "listinvoicerequests", "params": [ - "invreqid03030303030303030303030303030303030303030303030303030303" + "c5b8ebc06bdc246d7b852ce5637be459d3c053a5b3f8f68854f97af7371c9a50" ] }, "response": { "invoicerequests": [ { - "invreq_id": "invreqid02020202020202020202020202020202020202020202020202020202", + "invreq_id": "c5b8ebc06bdc246d7b852ce5637be459d3c053a5b3f8f68854f97af7371c9a50", "active": false, "single_use": true, - "bolt12": "lno1qgsq000bolt240002400024000240002400024000240002400024000240002400024000240002400024000240002400024000240002400024000240002400024000", + "bolt12": "lnr1qqg99gqg2990zl3j22sqs52279lryzsk2fjhzat9wd6xjmn8ypnx7u3qd9h8vmmfvdj3yyrrd35kw6r5de5kueeqwd6x7un92qsqvgnwgcg35z6ee2h3yczraddm72xrfua9uve2rlrm9deu7xyfzr6jqwvfdqzcyypz6g3kyz34nfrl7lm6c3rushzxey3a55ecjgs6qp2vz8q78j336k0sgr76j2yl0lrljzljjdz8ztcpryunwgfk4hzz3sle3mhaw8v2gc4dn9map7v6dlpya98jy2mcrwe27qcsywlfqp6dhh30l54sj0e8tqsk", "used": false } ] @@ -21364,18 +22969,18 @@ "response": { "invoicerequests": [ { - "invreq_id": "invreqid02020202020202020202020202020202020202020202020202020202", + "invreq_id": "22c3d45d0a9640a827ed1fefb9a07c947e38fa4c086f1f16d94882848e264868", "active": false, "single_use": true, - "bolt12": "lno1qgsq000bolt240002400024000240002400024000240002400024000240002400024000240002400024000240002400024000240002400024000240002400024000", - "used": false + "bolt12": "lnr1qqg99gqg2990zl3322sqs52279lrzzst2d5k6urvv5s8getnw3gzqp3zderpzxstt8927ynqg044h0egcd8n5h3n9g0u0v4h8ncc3yg02gps7sjqtqssytfzxcs2xkdy0lml0tzy0jzugmyj8kjn8zfzrgq9fsgurc72x82e7pqfylfzzhcux84v2552lt7p2ekunuamtsdgyk34a86m4zklkdjjdzt757t4sp0m8cp9tdj6hfe67mcuwl3q7zr4sr4z4gn2fvksykkn5g", + "used": true }, { - "invreq_id": "invreqid01010101010101010101010101010101010101010101010101010101", + "invreq_id": "c5b8ebc06bdc246d7b852ce5637be459d3c053a5b3f8f68854f97af7371c9a50", "active": false, "single_use": true, - "bolt12": "lno1qgsq000bolt210002100021000210002100021000210002100021000210002100021000210002100021000210002100021000210002100021000210002100021000", - "used": true + "bolt12": "lnr1qqg99gqg2990zl3j22sqs52279lryzsk2fjhzat9wd6xjmn8ypnx7u3qd9h8vmmfvdj3yyrrd35kw6r5de5kueeqwd6x7un92qsqvgnwgcg35z6ee2h3yczraddm72xrfua9uve2rlrm9deu7xyfzr6jqwvfdqzcyypz6g3kyz34nfrl7lm6c3rushzxey3a55ecjgs6qp2vz8q78j336k0sgr76j2yl0lrljzljjdz8ztcpryunwgfk4hzz3sle3mhaw8v2gc4dn9map7v6dlpya98jy2mcrwe27qcsywlfqp6dhh30l54sj0e8tqsk", + "used": false } ] } @@ -21700,15 +23305,15 @@ "invoices": [ { "label": "lbl_l21", - "bolt11": "lnbcrt100n1pnt2bolt11invl020100000000bolt11invl020100000000bolt11invl020100000000bolt11invl020100000000bolt11invl020100000000bolt11invl020100000000bolt11invl020100000000bolt11invl020100000000bolt11invl020100000000bolt11invl020100000000", - "payment_hash": "paymenthashinvl0210021002100210021002100210021002100210021002100", + "bolt11": "lnbcrt1pne035qsp5j7czxfpnquxg9vcw9crqh87raxz0glv8n6gx88jwdsp28pmfk68qpp5uz6ktrhcug72ke2xaf0h099gcasysw4lxcfmxn6qrh6p9z2y47hqdqcdserzgryv4ekxunfwp6xjmmwxqyjw5qcqp9rzjqdwjkyvjm7apxnssu4qgwhfkd67ghs6n6k48v6uqczgt88p6tky96qqqwqqqqqgqqqqqqqqpqqqqqzsqqc9qxpqysgqn7ge40jwkslz0j0vhfzy743lathy2sqy2dfyyahalxszs979d9s5v89ten2zcrna3xlxhkerk7p9k7a6u5fdddx5dzzas4ye2yp6desq3zwkg2", + "payment_hash": "e0b5658ef8e23cab6546ea5f7794a8c760483abf3613b34f401df4128944afae", "status": "paid", "pay_index": 4, "amount_received_msat": 400000, - "paid_at": 1738500000, - "payment_preimage": "paymentpreimager010101010101010101010101010101010101010101010101", + "paid_at": 1738000000, + "payment_preimage": "08377744ca985c1908377744ca985c1908377744ca985c1908377744ca985c19", "description": "l21 description", - "expires_at": 1739000000, + "expires_at": 1738604800, "created_index": 2, "updated_index": 4 } @@ -21725,65 +23330,209 @@ "invoices": [ { "label": "lbl balance l1 to l2", - "bolt11": "lnbcrt222n1pnt3005720bolt114000101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101", - "payment_hash": "paymenthashdelpay10101010101010101010101010101010101010101010101", + "bolt11": "lnbcrt5m1pne035qsp5y09we8jhy4ug66c945kzkqyqzrhhqsap22q07wnawlgntwa5ca2spp5xsktk894vn50xt4kfl5vy49t7hk976u85rudu7gfetuwvk8nh54qdpcv3jhxcmjd9c8g6t0dcs8xetwvss8xmmdv5s8xct5wvsxcvfqw3hjqmpjxqyjw5qcqp9rzjqdwjkyvjm7apxnssu4qgwhfkd67ghs6n6k48v6uqczgt88p6tky96qqqwqqqqqgqqqqqqqqpqqqqqzsqqc9qxpqysgqvsru69ylhpkda6980sl996q2fmld2zszepv79zf747la6zzt8mf8p0qw80w6j8d5evc72fls4d99sza23nnm6pahjqrs8kv3apdttjcq2mm2xw", + "payment_hash": "342cbb1cb564e8f32eb64fe8c254abf5ec5f6b87a0f8de7909caf8e658f3bd2a", "amount_msat": 500000000, "status": "paid", "pay_index": 1, "amount_received_msat": 500000000, - "paid_at": 1738500000, - "payment_preimage": "paymentpreimgdp1010101010101010101010101010101010101010101010101", + "paid_at": 1738000000, + "payment_preimage": "08377744ca985c1808377744ca985c1808377744ca985c1808377744ca985c18", "description": "description send some sats l1 to l2", - "expires_at": 1739000000, + "expires_at": 1738604800, "created_index": 1, "updated_index": 1 }, { "label": "lbl_l21", - "bolt11": "lnbcrt100n1pnt2bolt11invl020100000000bolt11invl020100000000bolt11invl020100000000bolt11invl020100000000bolt11invl020100000000bolt11invl020100000000bolt11invl020100000000bolt11invl020100000000bolt11invl020100000000bolt11invl020100000000", - "payment_hash": "paymenthashinvl0210021002100210021002100210021002100210021002100", + "bolt11": "lnbcrt1pne035qsp5j7czxfpnquxg9vcw9crqh87raxz0glv8n6gx88jwdsp28pmfk68qpp5uz6ktrhcug72ke2xaf0h099gcasysw4lxcfmxn6qrh6p9z2y47hqdqcdserzgryv4ekxunfwp6xjmmwxqyjw5qcqp9rzjqdwjkyvjm7apxnssu4qgwhfkd67ghs6n6k48v6uqczgt88p6tky96qqqwqqqqqgqqqqqqqqpqqqqqzsqqc9qxpqysgqn7ge40jwkslz0j0vhfzy743lathy2sqy2dfyyahalxszs979d9s5v89ten2zcrna3xlxhkerk7p9k7a6u5fdddx5dzzas4ye2yp6desq3zwkg2", + "payment_hash": "e0b5658ef8e23cab6546ea5f7794a8c760483abf3613b34f401df4128944afae", "status": "paid", "pay_index": 4, "amount_received_msat": 400000, - "paid_at": 1738510000, - "payment_preimage": "paymentpreimager010101010101010101010101010101010101010101010101", + "paid_at": 1738000000, + "payment_preimage": "08377744ca985c1908377744ca985c1908377744ca985c1908377744ca985c19", "description": "l21 description", - "expires_at": 1739010000, + "expires_at": 1738604800, "created_index": 2, "updated_index": 4 }, { "label": "lbl_l22", - "bolt11": "lnbcrt100n1pnt2bolt11invl020200000000bolt11invl020200000000bolt11invl020200000000bolt11invl020200000000bolt11invl020200000000bolt11invl020200000000bolt11invl020200000000bolt11invl020200000000bolt11invl020200000000bolt11invl020200000000", - "payment_hash": "paymenthashinvl0220022002200220022002200220022002200220022002200", + "bolt11": "lnbcrt2u1pne035qsp5u7glcpdagz8xcw9nw4t7xjhad5fjk9vu9h6s4da9tue6cj6x772spp52jyd84j7psgd4u2tp627hsrf9ntzptcjl3ywn03v4fdsehw4s2ysdqcdserygryv4ekxunfwp6xjmmwxqyjw5qcqp9rzjqdwjkyvjm7apxnssu4qgwhfkd67ghs6n6k48v6uqczgt88p6tky96qqqwqqqqqgqqqqqqqqpqqqqqzsqqc9qxpqysgqdyykau6tf258sy2g5q94ma8jqthrs7zszaj2y4wj23dznnz5rcvxvxvkkv76uj076mz5std62p3gf2kvycq29t69345667cvs0pmvzsq4lawhd", + "payment_hash": "5488d3d65e0c10daf14b0e95ebc0692cd620af12fc48e9be2caa5b0cddd58289", "amount_msat": 200000, "status": "unpaid", "description": "l22 description", - "expires_at": 1739020000, - "created_index": 3, - "paid_at": 1738520000 + "expires_at": 1738604800, + "created_index": 3 }, { "label": "label inv_l24", - "bolt11": "lnbcrt100n1pnt2bolt11invl020400000000bolt11invl020400000000bolt11invl020400000000bolt11invl020400000000bolt11invl020400000000bolt11invl020400000000bolt11invl020400000000bolt11invl020400000000bolt11invl020400000000bolt11invl020400000000", - "payment_hash": "paymenthashinvl0240024002400240024002400240024002400240024002400", + "bolt11": "lnbcrt1230n1pne035qsp5s2tkvc25q0p9qu5ghf6pal04thl4kl9q9jggx0fetq5tx7szc0gspp5mmpxzxv7tkpxjhvwyztwky6qlsw3umd87h7x7dvn0hck5t0lc84sdqlv3jhxcmjd9c8g6t0dcsxjmnktakrydqcqp99qxpqysgqa9q3g64xjfq3wqpyxn378zzs3grvlvhmpvtcedvzf0rq0ycu4xgr0ly93ut0wjdyfgfaldteev97qqt6q539qy7ktng4ylfj85kzmkqp5lsp6u", + "payment_hash": "dec261199e5d82695d8e2096eb1340fc1d1e6da7f5fc6f35937df16a2dffc1eb", "amount_msat": 123000, "status": "unpaid", "description": "description inv_l24", - "expires_at": 1739030000, - "created_index": 4, - "paid_at": 1738530000 + "expires_at": 1738003600, + "created_index": 4 }, { "label": "label inv_l25", - "bolt11": "lnbcrt100n1pnt2bolt11invl020500000000bolt11invl020500000000bolt11invl020500000000bolt11invl020500000000bolt11invl020500000000bolt11invl020500000000bolt11invl020500000000bolt11invl020500000000bolt11invl020500000000bolt11invl020500000000", - "payment_hash": "paymenthashinvl0250025002500250025002500250025002500250025002500", + "bolt11": "lnbcrt1240n1pne035qsp590nuq4ek3zp48qm5rve22ye75jc6y564fh8qjrlr0j8at7egmtuqpp5ms3uy3duktelvxj02h6nrdzhge83uu5xumyrmxwu4akpezzv80hsdqlv3jhxcmjd9c8g6t0dcsxjmnktakrydgcqp99qxpqysgqad46gpve6njtqr9zsvrz8a56ndz953s88kedwuzge3d4tgv8gfk8u8al36nwmnchrkr7wwy7vc04fdvnewhusxcp457jucl5a5lt4dsqzr7sj8", + "payment_hash": "dc23c245bcb2f3f61a4f55f531b457464f1e7286e6c83d99dcaf6c1c884c3bef", "amount_msat": 124000, "status": "unpaid", "description": "description inv_l25", - "expires_at": 1739040000, - "created_index": 5, - "paid_at": 1738540000 + "expires_at": 1738003600, + "created_index": 5 + }, + { + "label": "label inv_l26", + "bolt11": "lnbcrt1250n1pne035qsp57thr33aj04aek8738nm42nntaydcaw4zswr047ja0gxy5sea8egqpp58veqg20enh8z5w8avz0jyznsfgnxdgs9km2mlugn62nvypjhwj5sdqlv3jhxcmjd9c8g6t0dcsxjmnktakrydscqp99qxpqysgq9569pf2lk3desk0xz8l90eeanhkz2j4e4yk8wlzwsy8efmm07mdn5n62ymlymt73yvxwyc4zuj45vwka2ta0rmntwxu4m2qp46h2yfcq5muart", + "payment_hash": "3b320429f99dce2a38fd609f220a704a2666a205b6d5bff113d2a6c2065774a9", + "amount_msat": 125000, + "status": "unpaid", + "description": "description inv_l26", + "expires_at": 1738003600, + "created_index": 6 + }, + { + "label": "lbl_l13", + "bolt11": "lnbcrt1u1pne035qsp5j9w8t9p2y6an5se63n3vkpp8c20vdsthtn78sv5t2lmt57l742wqpp5wtxkappzcsrlkmgfs6g0zyct0hkhashh7hsaxz7e65slq9fkx7fsdqcdscnxgryv4ekxunfwp6xjmmwxqyjw5qcqp9rzjqgkjyd3q5dv6gllh77kygly9c3kfy0d9xwyjyxsq2nq3c83u5vw4jqqqdcqqqqgqqqqqqqqpqqqqqzsqqc9qxpqysgq2dmxu8vh2mmklw3vrq0dy4a69v7ga4mauty4cswwga4j4ahx797sjtzpj0qty3qkxcvw3nndx8f9v9230y4sjyf298m6uwz8thz9rpcqz05u35", + "payment_hash": "72cd6e8422c407fb6d098690f1130b7ded7ec2f7f5e1d30bd9d521f015363793", + "amount_msat": 100000, + "status": "unpaid", + "description": "l13 description", + "expires_at": 1738604800, + "created_index": 7 + }, + { + "label": "test_injectpaymentonion1", + "bolt11": "lnbcrt10n1pne035qsp5qwyv8rs63ramlntxnjyqfyl3usj9fcvw2wcekvssera3c674p2aspp5layccvcq3q020g7qgxf7g0cjx3zvv3rxyqypprpry2w6x5gmahgsdp6w3jhxapqd9hx5etrw3cxz7tdv4h8gmmwd9hkuvfqv3jhxcmjd9c8g6t0dcxqyjw5qcqp99qxpqysgqanlwwp0fnysrz8wgx44kdupzfv4l9x0l8daxa9zyqcwwx4de5rv4s3udrmgc6w03dtn0h3kcvwhv602fpryz06wrnk9k5d5z6qtx4mqqyhqgf2", + "payment_hash": "ff498c3300881ea7a3c04193e43f123444c644662008108c23229da3511bedd1", + "amount_msat": 1000, + "status": "paid", + "pay_index": 2, + "amount_received_msat": 1000, + "paid_at": 1738000000, + "payment_preimage": "08377744ca985c1e08377744ca985c1e08377744ca985c1e08377744ca985c1e", + "description": "test injectpaymentonion1 description", + "expires_at": 1738604800, + "created_index": 8, + "updated_index": 2 + }, + { + "label": "lbl_l23", + "bolt11": "lnbcrt1pne035qsp5hu0s83c7qg77lgtagcr58sf07fvrqf27j67s2ptguw9wk8ruexfqpp50ge88lv20ge4a9ny7xc7rg8p6vqvnuuzwllkk2zng6txu7sfz3cqdqcdserxgryv4ekxunfwp6xjmmwxqyjw5qcqp99qxpqysgqrwjd83fygx3zcnupx0ftnpewajss6n4vpsugju00w8hu5lu0neujqhgw8jygwmawz8jq8pp2xu6r78f3m9yld6ky7539x5g5ahvtmqqqmgfjaa", + "payment_hash": "7a3273fd8a7a335e9664f1b1e1a0e1d300c9f38277ff6b285346966e7a091470", + "status": "paid", + "pay_index": 3, + "amount_received_msat": 9900, + "paid_at": 1738000000, + "payment_preimage": "08377744ca985c1f08377744ca985c1f08377744ca985c1f08377744ca985c1f", + "description": "l23 description", + "expires_at": 1738604800, + "created_index": 9, + "updated_index": 3 + }, + { + "label": "dca9774ba2925b48c42eb12e599c09389d9d80d44445c4d0c944556c7228746e-03fffc5282760e7e56157aedd5df38ca6d4ea2973e2e7cfcda243ac89dd7cd6461-0", + "bolt12": "lni1qqgvq8khp6uam2tfcq0dwr4emk5kjq3qqc3xu3s3rg94nj40zfsy866mhu5vxne6tcej5878k2mneuvgjy8ssq38zq9q53nfwd5zqumpd3jjz93pqgkjyd3q5dv6gllh77kygly9c3kfy0d9xwyjyxsq2nq3c83u5vw4j5pqqc3xu3s3rg94nj40zfsy866mhu5vxne6tcej5878k2mneuvgjy84gqzcyyplllzjsfmquljkz4awm4wl8r9x6n4zjulzul8umgjr4jya6lxkgc2ez32xsctwddejqen0wgs8g6r9ypnxjumgyxsfsq3dygmzpg6e53ll0aavg37gt3rvjg762vufygdqq4xprs0regcatyp6swcycfh92s4s0p3wl6j0xj7pa7egpvvw2gq9z4sc376mekc9vacpqvzl0njg9k5sfn0pxlx4au5s95yhxczx2fah5zzmnfg9kvzdle5avqpj4l72lall4s8xrfvpu9f4xapfxl08j964jswavxw0exauk50zhw2l5alvyfucu82fx6qlszy7gett90z85gwqqqqqqqqqqqqqqqzsqqqqqqqqqqqqr5jt9hav2gqqqqqq5szx097xsz5zphg5v7yg8wedzgpk7h6dzc7vlw9h2wfa6dmzrey9m6fkeh89uz684gpzwy9wqvpqqq9syypz6g3kyz34nfrl7lm6c3rushzxey3a55ecjgs6qp2vz8q78j336k0sgzsvy6lf3le6zmjl4254r4xxf0urw8dky5d2dwtwjzt8ec7hg6jh88kx88fru0fhvxfjkje7ccg6qg5zv7dm64zxttg7epxx4yyw90c3", + "payment_hash": "dd14678883bb2d12036f5f4d163ccfb8b75393dd37621e485de936cdce5e0b47", + "amount_msat": 10000, + "status": "unpaid", + "description": "Fish sale!", + "expires_at": 1738007200, + "local_offer_id": "dca9774ba2925b48c42eb12e599c09389d9d80d44445c4d0c944556c7228746e", + "invreq_payer_note": "Thanks for the fish!", + "created_index": 10 + }, + { + "label": "f901018768e13ea2da95f437749e24d22d47b2a6ea3030ef66ae0281df49d94b-02a95c517b37d4fe9046a9b2ac79d125d1feb169fc81f906af620fb3c35803c3ee-0", + "bolt12": "lni1qqgvq8khp6uam2ttcq0dwr4emk5kkq3qqc3xu3s3rg94nj40zfsy866mhu5vxne6tcej5878k2mneuvgjy8ssqc0gfqq5pjrdanxvet9zsqs593pqgkjyd3q5dv6gllh77kygly9c3kfy0d9xwyjyxsq2nq3c83u5vw4j5pqqc3xu3s3rg94nj40zfsy866mhu5vxne6tcej5878k2mneuvgjy84yqc7sjq9gqzkqyp9sggz49w9z7eh6nlfq34fk2k8n5f968ltz60us8usdtmzp7euxkqrc0h2pxqz953rvg9rtxj8lalh43z8epwydjfrmffn3y3p5qz5cywpu09rr4vs92azp4mahnnht95k3j5c8gegy3003d45pkz0gawdj82vt7eqvpk8qypn2rsgaytxvr0nnhkwhjgeq5u2vavm8hm6muxlpl7pe57v99fwm3qqxt472dkvvw27qy6992kvqc5ztgfv20w3uy5swlraheles4havnkg7nafrqr0ej8m4gakh9n338xa86784w3pcqqqqqqqqqqqqqqq2qqqqqqqqqqqqqwjfvkl43fqqqqqqzjqgeuhc6q2sg94wlwt9m7hlq7gljm764vv7dureaqxklvgmjzlq9hxe8jxlaa4064qx85yszhqxqsqqzczzq3dygmzpg6e53ll0aavg37gt3rvjg762vufygdqq4xprs0regcat8cyq8h97cpp3rznnvtvsmu0lzvfgu3c39z7t5m4f9t4w62kt0zqy4yxajhdrqh0g6th0rfhxk583zxllzukn4h3426dxp005n8mpwc6pl3s", + "payment_hash": "b577dcb2efd7f83c8fcb7ed558cf3783cf406b7d88dc85f016e6c9e46ff7b57e", + "amount_msat": 2000000, + "status": "unpaid", + "description": "Coffee", + "expires_at": 1738007200, + "local_offer_id": "f901018768e13ea2da95f437749e24d22d47b2a6ea3030ef66ae0281df49d94b", + "created_index": 11 + }, + { + "label": "inv1", + "bolt11": "lnbcrt10n1pne035qsp507am6rmsdfe5vsutmpt77ldp5r9k9pkreya4zuxquatt3vy3s5zqpp5nge7gvl6mhpnw8m22635z3kgyc5a2e6jphd09qjyhk03jc5g4acsdq8d9h8vvgxqyjw5qcqp99qxpqysgq6l4n2kmhhu3y78cmhwn8davtxlc9cd050hldsdk55p30nxav2xcsv0x5u8ccznpcq6akj5c2u7fnceuzg5rvnjcq4sfgc4n0ukklc7sq2e0gtf", + "payment_hash": "9a33e433faddc3371f6a56a34146c82629d567520ddaf28244bd9f196288af71", + "amount_msat": 1000, + "status": "paid", + "pay_index": 9, + "amount_received_msat": 1000, + "paid_at": 1738000000, + "payment_preimage": "08377744ca985c2008377744ca985c2008377744ca985c2008377744ca985c20", + "description": "inv1", + "expires_at": 1738604800, + "created_index": 12, + "updated_index": 9 + }, + { + "label": "inv2", + "bolt11": "lnbcrt20n1pne035qsp5793kaek9ahcmxn00ttvkmrhafa5v33wtju4dz5lvyjr0pwwgdd2qpp59gjcv8c4v9yzt00az4x5yg6z79v5gmcd2nwzf6pct5c4yqprlr9sdq8d9h8vvsxqyjw5qcqp99qxpqysgq7ygtu605e0yx749rczhlqaw4crl746rmzc3nkpxn5vrey34m2uxx0658c3e85gvvdcp8r5nlfdnxspl9tlj5xhckrx5vszxxa4zneggp8dynay", + "payment_hash": "2a25861f15614825bdfd154d422342f159446f0d54dc24e8385d31520023f8cb", + "amount_msat": 2000, + "status": "paid", + "pay_index": 5, + "amount_received_msat": 2000, + "paid_at": 1738000000, + "payment_preimage": "08377744ca985c2108377744ca985c2108377744ca985c2108377744ca985c21", + "description": "inv2", + "expires_at": 1738604800, + "created_index": 13, + "updated_index": 5 + }, + { + "label": "inv3", + "bolt11": "lnbcrt30n1pne035qsp588xrpk37hul6xfyr8u6lkyggh0mkvfzhyex8wwts7dpckxt2j2yspp5x63je8t7u7a0ts2arwdj05y9mn5ud9lmgf7see5rg2kvuq8ptphsdq8d9h8vvcxqyjw5qcqp99qxpqysgqw97pk464fhkxp6umgtzhh3njznhnw06cwun58szk06v7a2wvvppz6kg95ufarq443nrqgue6u3s59up4tqkmm943pfyp3hqutx6vgugqgd8jsu", + "payment_hash": "36a32c9d7ee7baf5c15d1b9b27d085dce9c697fb427d0ce68342acce00e1586f", + "amount_msat": 3000, + "status": "paid", + "pay_index": 6, + "amount_received_msat": 3000, + "paid_at": 1738000000, + "payment_preimage": "08377744ca985c2208377744ca985c2208377744ca985c2208377744ca985c22", + "description": "inv3", + "expires_at": 1738604800, + "created_index": 14, + "updated_index": 6 + }, + { + "label": "inv4", + "bolt11": "lnbcrt40n1pne035qsp5q4tjztd7kdgg22eewphyfcf3ew9ag6d53nsm3yfu8280ygsxnp3qpp5pxtrqa9tplpcq38cjrrk83jcul4ylze3ej70c6spjytr7hxugdsqdq8d9h8vdqxqyjw5qcqp99qxpqysgq0g9jk5lpfjyg6ryulnhav6qsfmua9uajgkpa8cl4k9mrds0wdavqd8sg26us9gr93uvnz8s9znmyk2g3sytgqgfl6ych0re7sujky3sq78nj5l", + "payment_hash": "09963074ab0fc38044f890c763c658e7ea4f8b31ccbcfc6a0191163f5cdc4360", + "amount_msat": 4000, + "status": "paid", + "pay_index": 8, + "amount_received_msat": 4000, + "paid_at": 1738000000, + "payment_preimage": "08377744ca985c2308377744ca985c2308377744ca985c2308377744ca985c23", + "description": "inv4", + "expires_at": 1738604800, + "created_index": 15, + "updated_index": 8 + }, + { + "label": "inv5", + "bolt11": "lnbcrt50n1pne035qsp59qq7k6yprpf2hw49aqqx6tcv4dhldr4jh8r45n8vk9deyff2q55spp53cl2r7exu0j7scnsvnngusj8z03njd6jg4lluxd9vhl22nmrqltqdq8d9h8vdgxqyjw5qcqp99qxpqysgqcrnpc3ms8p3nqzyvfp5y0l78nlgm3lexm0v5xty0yd9fudk5mk8ydzvkfuxuef74cytlajjj6ykjsannfdapna7xudpf4xwtauhvcrqqxkwwsq", + "payment_hash": "8e3ea1fb26e3e5e8627064e68e424713e3393752457ffe19a565fea54f6307d6", + "amount_msat": 5000, + "status": "paid", + "pay_index": 7, + "amount_received_msat": 5000, + "paid_at": 1738000000, + "payment_preimage": "08377744ca985c2408377744ca985c2408377744ca985c2408377744ca985c24", + "description": "inv5", + "expires_at": 1738604800, + "created_index": 16, + "updated_index": 7 } ] } @@ -22062,14 +23811,14 @@ "id": "example:listnodes#1", "method": "listnodes", "params": { - "id": "nodeid030303030303030303030303030303030303030303030303030303030303" + "id": "035d2b1192dfba134e10e540875d366ebc8bc353d5aa766b80c090b39c3a5d885d" } }, "response": { "nodes": [ { - "nodeid": "nodeid030303030303030303030303030303030303030303030303030303030303", - "alias": "HOPPINGFIRE", + "nodeid": "035d2b1192dfba134e10e540875d366ebc8bc353d5aa766b80c090b39c3a5d885d", + "alias": "HOPPINGFIRE-v25.12", "color": "035d2b", "last_timestamp": 1738000000, "features": "8898882a8a59a1", @@ -22087,34 +23836,34 @@ "response": { "nodes": [ { - "nodeid": "nodeid020202020202020202020202020202020202020202020202020202020202", - "alias": "SILENTARTIST", + "nodeid": "022d223620a359a47ff7f7ac447c85c46c923da53389221a0054c11c1e3ca31d59", + "alias": "SILENTARTIST-v25.12", "color": "022d22", "last_timestamp": 1738000000, "features": "8898882a8a59a1", "addresses": [] }, { - "nodeid": "nodeid010101010101010101010101010101010101010101010101010101010101", - "alias": "JUNIORBEAM", + "nodeid": "0266e4598d1d3c415f572a8488830b60f7e744ed9235eb0b1ba93283b315c03518", + "alias": "JUNIORBEAM-v25.12", "color": "0266e4", - "last_timestamp": 1738010000, + "last_timestamp": 1738000000, "features": "8898882a8a59a1", "addresses": [] }, { - "nodeid": "nodeid030303030303030303030303030303030303030303030303030303030303", - "alias": "HOPPINGFIRE", + "nodeid": "035d2b1192dfba134e10e540875d366ebc8bc353d5aa766b80c090b39c3a5d885d", + "alias": "HOPPINGFIRE-v25.12", "color": "035d2b", - "last_timestamp": 1738020000, + "last_timestamp": 1738000000, "features": "8898882a8a59a1", "addresses": [] }, { - "nodeid": "nodeid040404040404040404040404040404040404040404040404040404040404", - "alias": "JUNIORFELONY", + "nodeid": "0382ce59ebf18be7d84677c2e35f23294b9992ceca95491fcf8a56c6cb2d9de199", + "alias": "JUNIORFELONY-v25.12", "color": "0382ce", - "last_timestamp": 1738030000, + "last_timestamp": 1738000000, "features": "8898882a8a59a1", "addresses": [] } @@ -22234,24 +23983,24 @@ "response": { "offers": [ { - "offer_id": "offeridl21000002100000210000021000002100000210000021000002100000", + "offer_id": "b791f88cebf775853112c30828e116487f4d6c252d669372532b468bc7de8a24", "active": true, "single_use": false, - "bolt12": "lno1qgsq000bolt210002100021000210002100021000210002100021000210002100021000210002100021000210002100021000210002100021000210002100021000", + "bolt12": "lno1qgsqvgnwgcg35z6ee2h3yczraddm72xrfua9uve2rlrm9deu7xyfzrcgqv0gfqq2zp8kven9wgs8gmeqg35hxctzd3j3vggz953rvg9rtxj8lalh43z8epwydjfrmffn3y3p5qz5cywpu09rr4vs", "used": false }, { - "offer_id": "offeridl22000002200000220000022000002200000220000022000002200000", + "offer_id": "dca9774ba2925b48c42eb12e599c09389d9d80d44445c4d0c944556c7228746e", "active": true, "single_use": false, - "bolt12": "lno1qgsq000bolt220002200022000220002200022000220002200022000220002200022000220002200022000220002200022000220002200022000220002200022000", + "bolt12": "lno1qgsqvgnwgcg35z6ee2h3yczraddm72xrfua9uve2rlrm9deu7xyfzrcgqgn3qzs2ge5hx6pqwdskcefpzcssytfzxcs2xkdy0lml0tzy0jzugmyj8kjn8zfzrgq9fsgurc72x82e", "used": false }, { - "offer_id": "offeridl23000002300000230000023000002300000230000023000002300000", + "offer_id": "f901018768e13ea2da95f437749e24d22d47b2a6ea3030ef66ae0281df49d94b", "active": true, "single_use": false, - "bolt12": "lno1qgsq000bolt230002300023000230002300023000230002300023000230002300023000230002300023000230002300023000230002300023000230002300023000", + "bolt12": "lno1qgsqvgnwgcg35z6ee2h3yczraddm72xrfua9uve2rlrm9deu7xyfzrcgqv85ysq2qepk7enxv4j3gqg2zcssytfzxcs2xkdy0lml0tzy0jzugmyj8kjn8zfzrgq9fsgurc72x82e", "used": false } ] @@ -22262,16 +24011,16 @@ "id": "example:listoffers#2", "method": "listoffers", "params": [ - "offeridl23000002300000230000023000002300000230000023000002300000" + "b791f88cebf775853112c30828e116487f4d6c252d669372532b468bc7de8a24" ] }, "response": { "offers": [ { - "offer_id": "offeridl23000002300000230000023000002300000230000023000002300000", + "offer_id": "b791f88cebf775853112c30828e116487f4d6c252d669372532b468bc7de8a24", "active": true, "single_use": false, - "bolt12": "lno1qgsq000bolt230002300023000230002300023000230002300023000230002300023000230002300023000230002300023000230002300023000230002300023000", + "bolt12": "lno1qgsqvgnwgcg35z6ee2h3yczraddm72xrfua9uve2rlrm9deu7xyfzrcgqv0gfqq2zp8kven9wgs8gmeqg35hxctzd3j3vggz953rvg9rtxj8lalh43z8epwydjfrmffn3y3p5qz5cywpu09rr4vs", "used": false } ] @@ -22560,7 +24309,7 @@ "id": "example:listpays#1", "method": "listpays", "params": { - "bolt11": "lnbcrt100n1pnt2bolt11invl032000000000bolt11invl032000000000bolt11invl032000000000bolt11invl032000000000bolt11invl032000000000bolt11invl032000000000bolt11invl032000000000bolt11invl032000000000bolt11invl032000000000bolt11invl032000000000" + "bolt11": "lnbcrt500n1pne035qsp5kk6w4wjl0wudssp0pze5lgkz9hcav6ql523hjxc92knt398y2csqpp54va949c65wepf98heejx7pmjxtqsexghcvehty6urt4l54cl5xssdqcdsenygryv4ekxunfwp6xjmmwxqyjw5qcqp9rzjqgkjyd3q5dv6gllh77kygly9c3kfy0d9xwyjyxsq2nq3c83u5vw4jqqqwqqqqqgqqqqqqqqpqqqqqzsqqc9qxpqysgqgrjzax5dyj6dqqhgrt7t53hrmw4xvjs56kdy450c8jdv53fzf3n4kmersmgydpyyam87jrnu9wrcn78zy6w53zx3lqv45js6sa6rspqqa07y46" } }, "response": { @@ -22574,7 +24323,99 @@ "params": {} }, "response": { - "pays": [] + "pays": [ + { + "bolt11": "lnbcrt5m1pne035qsp53ecfkxsrle7hea7ckvd62cdjyvq3r9vp8dj88fwawl220ljmda3spp57cdw7qf92ltyje5evsh8rc46ekjkwz6nwlrr2layqjzcz0avcc5qdpcv3jhxcmjd9c8g6t0dcs8xetwvss8xmmdv5s8xct5wvsxcv3qw3hjqmpnxqyjw5qcqp9rzjqgkjyd3q5dv6gllh77kygly9c3kfy0d9xwyjyxsq2nq3c83u5vw4jqqqwqqqqqgqqqqqqqqpqqqqqzsqqc9qxpqysgq5ang73w7jamq8nwwceyutacvktrm59qclwnrdd54q4qcr8a5n9r9jnxvg4k3s80frd3lt4tcv4dxz4yhsewnp8ujjd50mgevtwz4wmcq7glcsk", + "destination": "035d2b1192dfba134e10e540875d366ebc8bc353d5aa766b80c090b39c3a5d885d", + "payment_hash": "f61aef012557d6496699642e71e2bacda5670b5377c6357fa40485813facc628", + "status": "complete", + "created_at": 1738000000, + "completed_at": 1738000000, + "preimage": "83ffe698292fbb5e83ffe698292fbb5e83ffe698292fbb5e83ffe698292fbb5e", + "amount_msat": 500000000, + "amount_sent_msat": 500000000, + "created_index": 1, + "updated_index": 1 + }, + { + "bolt11": "lnbcrt5m1pne035qsp5qu4w4mj43n9up0ze7cq39rrqd7aqygw82cyma64mnzne69kzphfqpp57edpmeu5yea7xpxezhtq4yjh6t50g0e739lx399kr9ynunpqm98qdpcv3jhxcmjd9c8g6t0dcs8xetwvss8xmmdv5s8xct5wvsxcv3qw3hjqmp4xqyjw5qcqp9rzjqgkjyd3q5dv6gllh77kygly9c3kfy0d9xwyjyxsq2nq3c83u5vw4jcjsnr9ygaehpqqqqqqpqqqqqzsqqc9qxpqysgqsm86gyada8m86wr0sz33tnclnyawtvtaegqhdwcwyrzu0p8hxuuxyh9teph87urkxu4g7x4ug4gjswahjwfjufl22msvlv7mv790z6gp9vrhs7", + "destination": "032cf15d1ad9c4a08d26eab1918f732d8ef8fdc6abb9640bf3db174372c491304e", + "payment_hash": "f65a1de794267be304d915d60a9257d2e8f43f3e897e6894b619493e4c20d94e", + "status": "complete", + "created_at": 1738000000, + "completed_at": 1738000000, + "preimage": "58148cd7e5a50ca858148cd7e5a50ca858148cd7e5a50ca858148cd7e5a50ca8", + "amount_msat": 500000000, + "amount_sent_msat": 500000000, + "created_index": 2, + "updated_index": 2 + }, + { + "bolt11": "lnbcrt1u1pne035qsp5xl6xj5nrlrwfadkw89p0htfcqlkt0qrnykpc4kh3vlyr69cglv5qpp59v2rfk0xrknvtuf9yd5lf2vwrhwwwg45mvalz42nhpaff5vax5wsdqcdsenxgryv4ekxunfwp6xjmmwxqyjw5qcqp9rzjqgkjyd3q5dv6gllh77kygly9c3kfy0d9xwyjyxsq2nq3c83u5vw4jqqqwqqqqqgqqqqqqqqpqqqqqzsqqc9qxpqysgq04xpv4pju07a2mt3d02rf5u8ptj8h8vy7qxtc74z6y609x8rwrkhvq2elv8v5mrwac42scc70c7nnyu4xrxu9c8wcsync9dd5dnqdfqqrngrdv", + "destination": "035d2b1192dfba134e10e540875d366ebc8bc353d5aa766b80c090b39c3a5d885d", + "payment_hash": "2b1434d9e61da6c5f1252369f4a98e1ddce722b4db3bf15553b87a94d19d351d", + "status": "complete", + "created_at": 1738000000, + "completed_at": 1738000000, + "preimage": "83ffe698292fbb6183ffe698292fbb6183ffe698292fbb6183ffe698292fbb61", + "amount_msat": 100000, + "amount_sent_msat": 100000, + "created_index": 3, + "updated_index": 3 + }, + { + "bolt12": "lni1qqg99gqg2990zl3322sqs52279lrzzst2d5k6urvv5s8getnw3gzqp3zderpzxstt8927ynqg044h0egcd8n5h3n9g0u0v4h8ncc3yg02gps7sjqtqssytfzxcs2xkdy0lml0tzy0jzugmyj8kjn8zfzrgq9fsgurc72x82e5zvqyehytxx360zptatj4pygsv9kpal8gnkeyd0tpvd6jv5rkv2uqdgcq204pv4whvd37qg3dg48n0nudvgfw0du46nveyle5q4a2tvru2g4gqgrstm06rld7qk9d5sjtajxztd0lua3zfujsv8lve3wg9px5f34c4wqqvh4pp0dfkr98pur2v55d6ae3cakhn6s9jxn8waf9l00g06g236ymyefu6engjwaqsj4w7cgpkg9naq6kf4zrsqqqqqqqqqqqqqqq5qqqqqqqqqqqqqayjedltzjqqqqqq9yq3ne035q5cq442pqemw8hu9fzzda8nvxcksvjra2sy4c5r9r6et8rj95qqd2ufj8xj065qc0gfq2uqczqqqtqggzvmj9nrga83q474e2sjygxzmq7ln5fmvjxh4skxafx2pmx9wqx5v0qsxsy7vmh0323083refvd9fwvm7r5klg8hjftuqqzygswxl9lfkvlcj72lhlw643qv2gwmfadfydpdwvhydnvgnxmhlgjaxd7nw06y7rx", + "destination": "0266e4598d1d3c415f572a8488830b60f7e744ed9235eb0b1ba93283b315c03518", + "payment_hash": "cedc7bf0a9109bd3cd86c5a0c90faa812b8a0ca3d65671c8b4001aae2647349f", + "status": "complete", + "created_at": 1738000000, + "completed_at": 1738000000, + "preimage": "c01ed70eb9ddb906c01ed70eb9ddb906c01ed70eb9ddb906c01ed70eb9ddb906", + "amount_msat": 1000000, + "amount_sent_msat": 1000000, + "created_index": 4, + "updated_index": 4 + }, + { + "bolt11": "lnbcrt1pne035qsp5hu0s83c7qg77lgtagcr58sf07fvrqf27j67s2ptguw9wk8ruexfqpp50ge88lv20ge4a9ny7xc7rg8p6vqvnuuzwllkk2zng6txu7sfz3cqdqcdserxgryv4ekxunfwp6xjmmwxqyjw5qcqp99qxpqysgqrwjd83fygx3zcnupx0ftnpewajss6n4vpsugju00w8hu5lu0neujqhgw8jygwmawz8jq8pp2xu6r78f3m9yld6ky7539x5g5ahvtmqqqmgfjaa", + "destination": "022d223620a359a47ff7f7ac447c85c46c923da53389221a0054c11c1e3ca31d59", + "payment_hash": "7a3273fd8a7a335e9664f1b1e1a0e1d300c9f38277ff6b285346966e7a091470", + "status": "complete", + "created_at": 1738000000, + "completed_at": 1738000000, + "preimage": "08377744ca985c1f08377744ca985c1f08377744ca985c1f08377744ca985c1f", + "amount_msat": 9900, + "amount_sent_msat": 9900, + "created_index": 5, + "updated_index": 5 + }, + { + "bolt11": "lnbcrt40n1pne035qsp5pwtnqs2trxfwwkl8vaycu6fmvud0edagevz4eahvy6ls30u7cfrqpp52wnj6qrv99d6cte0s8ntstwkwxf42ksct8mujruyv7940nndzr3qdqaveskjmr9vssxgetnvdexjur5d9hkuxqyjw5qcqp9rzjqgkjyd3q5dv6gllh77kygly9c3kfy0d9xwyjyxsq2nq3c83u5vw4jqqqwqqqqqgqqqqqqqqpqqqqqzsqqc9qxpqysgq6sh90jk5uuccyzrdlnd5xyd92hxre78kupcpmlg0uerm35855xlklh5zlsmahpad6x8cv4ky2u6p394p270vyetlzx2u6ypyg22xn0qq0z6fuh", + "destination": "035d2b1192dfba134e10e540875d366ebc8bc353d5aa766b80c090b39c3a5d885d", + "payment_hash": "53a72d006c295bac2f2f81e6b82dd67193555a1859f7c90f84678b57ce6d10e2", + "status": "complete", + "created_at": 1738000000, + "completed_at": 1738000000, + "preimage": "83ffe698292fbb6283ffe698292fbb6283ffe698292fbb6283ffe698292fbb62", + "amount_msat": 4000, + "amount_sent_msat": 4000, + "created_index": 6, + "updated_index": 6 + }, + { + "bolt11": "lnbcrt5m1pne035qsp5qv7vwr9zt8sq94wzqdy2sg2cdddqfgh93vvsvfuxk0rdse47layqpp5z8v4uystpd9mvgwxm4zzr9w0q3dqep398jpkn6fdr24f2umgxcvqdpcv3jhxcmjd9c8g6t0dcs8xetwvss8xmmdv5s8xct5wvsxcv3qw3hjqmp5xqyjw5qcqp9rzjqgkjyd3q5dv6gllh77kygly9c3kfy0d9xwyjyxsq2nq3c83u5vw4jqqq5qqqqqgqqyqqqqqpqqqqqzsqqc9qxpqysgq9rl64vhvye4p8er9mld6jhuw56e0uf62w2r69e93hdy7js8a8y59esgp5ze7r9lnpt26tyh437t9c9g3m02eulm9fjrxepkghvvwyncp7wn4n3", + "destination": "0382ce59ebf18be7d84677c2e35f23294b9992ceca95491fcf8a56c6cb2d9de199", + "payment_hash": "11d95e120b0b4bb621c6dd442195cf045a0c86253c8369e92d1aaa9573683618", + "status": "complete", + "created_at": 1738000000, + "completed_at": 1738000000, + "preimage": "a23af6838ba877f9a23af6838ba877f9a23af6838ba877f9a23af6838ba877f9", + "amount_msat": 500000000, + "amount_sent_msat": 500000000, + "created_index": 7, + "updated_index": 7 + } + ] } } ] @@ -24037,13 +25878,13 @@ "id": "example:listpeerchannels#1", "method": "listpeerchannels", "params": { - "id": "nodeid020202020202020202020202020202020202020202020202020202020202" + "id": "0266e4598d1d3c415f572a8488830b60f7e744ed9235eb0b1ba93283b315c03518" } }, "response": { "channels": [ { - "peer_id": "nodeid020202020202020202020202020202020202020202020202020202020202", + "peer_id": "0266e4598d1d3c415f572a8488830b60f7e744ed9235eb0b1ba93283b315c03518", "peer_connected": true, "reestablished": true, "channel_type": { @@ -24072,9 +25913,9 @@ "fee_proportional_millionths": 10 } }, - "last_stable_connection": 1738510000, + "last_stable_connection": 1738000000, "state": "CHANNELD_NORMAL", - "scratch_txid": "scratchid1010101010101010101010101010101010101010101010101010101", + "scratch_txid": "f8042b0e29badb6450d57a8065a9c05d1a86cb8cd43d775d23bd3c8e3d180bd7", "last_tx_fee_msat": 4867000, "lost_state": false, "feerate": { @@ -24082,43 +25923,42 @@ "perkb": 15020 }, "owner": "channeld", - "short_channel_id": "109x1x1", - "direction": 1, - "channel_id": "channelid0120000120000120000120000120000120000120000120000120000", - "funding_txid": "channeltxid120000120000120000120000120000120000120000120000120000", - "funding_outnum": 1, - "close_to_addr": "bcrt1p8c0ku4mpxq3443rss8e6rjwamztvv8yxvmxtetal5d0n6v39rlwqvfqy6n", - "close_to": "51203e1f6e576130235ac47081f3a1c9ddd896c61c8666ccbcafbfa35f3d32251fdc", + "short_channel_id": "110x1x0", + "direction": 0, + "channel_id": "252d1b0a1e57895e84137f28cf19ab2c35847e284c112fefdecc7afeaa5c1de7", + "funding_txid": "63f74346eda6b8620ec24f86e2f8982ef3dade95f8efd00b372a75b2893b6f0d", + "funding_outnum": 0, + "close_to_addr": "bcrt1pmeuewfgl24n06v9868kts5v92494zexrvg0hc0sdmgwwnxm6t9sqdwfqjx", + "close_to": "5120de7997251f5566fd30a7d1ecb85185554b5164c3621f7c3e0dda1ce99b7a5960", "private": false, - "opener": "local", + "opener": "remote", "alias": { - "local": "30000001x60000001x60001", - "remote": "10000001x20000001x30001" + "local": "6312088x13255799x14088", + "remote": "5597735x1767569x15541" }, "features": [ "option_static_remotekey", - "option_anchors_zero_fee_htlc_tx", "option_anchors" ], "funding": { - "local_funds_msat": 1000000000, - "remote_funds_msat": 0, + "local_funds_msat": 0, + "remote_funds_msat": 1000000000, "pushed_msat": 0 }, - "to_us_msat": 390492790, - "min_to_us_msat": 390492790, - "max_to_us_msat": 1000000000, + "to_us_msat": 609507210, + "min_to_us_msat": 0, + "max_to_us_msat": 609507210, "total_msat": 1000000000, "fee_base_msat": 1, "fee_proportional_millionths": 10, "dust_limit_msat": 546000, - "max_total_htlc_in_msat": 18446744073709552000, - "their_max_htlc_value_in_flight_msat": 18446744073709552000, - "our_max_htlc_value_in_flight_msat": 18446744073709552000, + "max_total_htlc_in_msat": 18446744073709551615, + "their_max_htlc_value_in_flight_msat": 18446744073709551615, + "our_max_htlc_value_in_flight_msat": 18446744073709551615, "their_reserve_msat": 10000000, "our_reserve_msat": 10000000, - "spendable_msat": 363951708, - "receivable_msat": 599507210, + "spendable_msat": 599507210, + "receivable_msat": 363951708, "minimum_htlc_in_msat": 0, "minimum_htlc_out_msat": 0, "maximum_htlc_out_msat": 990000000, @@ -24127,39 +25967,39 @@ "max_accepted_htlcs": 483, "state_changes": [ { - "timestamp": "2024-10-10T00:01:00.000Z", + "timestamp": "2025-01-27T17:46:40.000Z", "old_state": "DUALOPEND_OPEN_COMMITTED", "new_state": "DUALOPEND_AWAITING_LOCKIN", - "cause": "user", + "cause": "remote", "message": "Sigs exchanged, waiting for lock-in" }, { - "timestamp": "2024-10-10T00:02:00.000Z", + "timestamp": "2025-01-27T17:46:40.000Z", "old_state": "DUALOPEND_AWAITING_LOCKIN", "new_state": "CHANNELD_NORMAL", - "cause": "user", + "cause": "remote", "message": "Lockin complete" } ], "status": [ "CHANNELD_NORMAL:Channel ready for use." ], - "in_payments_offered": 1, - "in_offered_msat": 1000000, - "in_payments_fulfilled": 1, - "in_fulfilled_msat": 1000000, - "out_payments_offered": 22, - "out_offered_msat": 665528797, - "out_payments_fulfilled": 16, - "out_fulfilled_msat": 610507210, + "in_payments_offered": 22, + "in_offered_msat": 665528797, + "in_payments_fulfilled": 16, + "in_fulfilled_msat": 610507210, + "out_payments_offered": 1, + "out_offered_msat": 1000000, + "out_payments_fulfilled": 1, + "out_fulfilled_msat": 1000000, "htlcs": [ { - "direction": "out", + "direction": "in", "id": 17, "amount_msat": 4000082, - "expiry": 181, - "payment_hash": "paymenthashdelpay30303030303030303030303030303030303030303030303", - "state": "SENT_ADD_ACK_REVOCATION" + "expiry": 182, + "payment_hash": "2b924194d169a96d9cc35b66ae912507e18ace9ef679fcb5324636ff73be410a", + "state": "RCVD_ADD_ACK_REVOCATION" } ] } @@ -24175,7 +26015,7 @@ "response": { "channels": [ { - "peer_id": "nodeid020202020202020202020202020202020202020202020202020202020202", + "peer_id": "0266e4598d1d3c415f572a8488830b60f7e744ed9235eb0b1ba93283b315c03518", "peer_connected": true, "reestablished": true, "channel_type": { @@ -24204,9 +26044,9 @@ "fee_proportional_millionths": 10 } }, - "last_stable_connection": 1738520000, + "last_stable_connection": 1738000000, "state": "CHANNELD_NORMAL", - "scratch_txid": "scratchid2020202020202020202020202020202020202020202020202020202", + "scratch_txid": "f8042b0e29badb6450d57a8065a9c05d1a86cb8cd43d775d23bd3c8e3d180bd7", "last_tx_fee_msat": 4867000, "lost_state": false, "feerate": { @@ -24214,22 +26054,142 @@ "perkb": 15020 }, "owner": "channeld", - "short_channel_id": "109x1x1", - "direction": 1, - "channel_id": "channelid0120000120000120000120000120000120000120000120000120000", - "funding_txid": "channeltxid120000120000120000120000120000120000120000120000120000", + "short_channel_id": "110x1x0", + "direction": 0, + "channel_id": "252d1b0a1e57895e84137f28cf19ab2c35847e284c112fefdecc7afeaa5c1de7", + "funding_txid": "63f74346eda6b8620ec24f86e2f8982ef3dade95f8efd00b372a75b2893b6f0d", + "funding_outnum": 0, + "close_to_addr": "bcrt1pmeuewfgl24n06v9868kts5v92494zexrvg0hc0sdmgwwnxm6t9sqdwfqjx", + "close_to": "5120de7997251f5566fd30a7d1ecb85185554b5164c3621f7c3e0dda1ce99b7a5960", + "private": false, + "opener": "remote", + "alias": { + "local": "6312088x13255799x14088", + "remote": "5597735x1767569x15541" + }, + "features": [ + "option_static_remotekey", + "option_anchors" + ], + "funding": { + "local_funds_msat": 0, + "remote_funds_msat": 1000000000, + "pushed_msat": 0 + }, + "to_us_msat": 609507210, + "min_to_us_msat": 0, + "max_to_us_msat": 609507210, + "total_msat": 1000000000, + "fee_base_msat": 1, + "fee_proportional_millionths": 10, + "dust_limit_msat": 546000, + "max_total_htlc_in_msat": 18446744073709551615, + "their_max_htlc_value_in_flight_msat": 18446744073709551615, + "our_max_htlc_value_in_flight_msat": 18446744073709551615, + "their_reserve_msat": 10000000, + "our_reserve_msat": 10000000, + "spendable_msat": 599507210, + "receivable_msat": 363951708, + "minimum_htlc_in_msat": 0, + "minimum_htlc_out_msat": 0, + "maximum_htlc_out_msat": 990000000, + "their_to_self_delay": 5, + "our_to_self_delay": 5, + "max_accepted_htlcs": 483, + "state_changes": [ + { + "timestamp": "2025-01-27T17:46:40.000Z", + "old_state": "DUALOPEND_OPEN_COMMITTED", + "new_state": "DUALOPEND_AWAITING_LOCKIN", + "cause": "remote", + "message": "Sigs exchanged, waiting for lock-in" + }, + { + "timestamp": "2025-01-27T17:46:40.000Z", + "old_state": "DUALOPEND_AWAITING_LOCKIN", + "new_state": "CHANNELD_NORMAL", + "cause": "remote", + "message": "Lockin complete" + } + ], + "status": [ + "CHANNELD_NORMAL:Channel ready for use." + ], + "in_payments_offered": 22, + "in_offered_msat": 665528797, + "in_payments_fulfilled": 16, + "in_fulfilled_msat": 610507210, + "out_payments_offered": 1, + "out_offered_msat": 1000000, + "out_payments_fulfilled": 1, + "out_fulfilled_msat": 1000000, + "htlcs": [ + { + "direction": "in", + "id": 17, + "amount_msat": 4000082, + "expiry": 182, + "payment_hash": "2b924194d169a96d9cc35b66ae912507e18ace9ef679fcb5324636ff73be410a", + "state": "RCVD_ADD_ACK_REVOCATION" + } + ] + }, + { + "peer_id": "035d2b1192dfba134e10e540875d366ebc8bc353d5aa766b80c090b39c3a5d885d", + "peer_connected": true, + "reestablished": true, + "channel_type": { + "bits": [ + 12, + 22 + ], + "names": [ + "static_remotekey/even", + "anchors/even" + ] + }, + "ignore_fee_limits": true, + "updates": { + "local": { + "htlc_minimum_msat": 0, + "htlc_maximum_msat": 990000000, + "cltv_expiry_delta": 6, + "fee_base_msat": 1, + "fee_proportional_millionths": 10 + }, + "remote": { + "htlc_minimum_msat": 0, + "htlc_maximum_msat": 990000000, + "cltv_expiry_delta": 6, + "fee_base_msat": 1, + "fee_proportional_millionths": 10 + } + }, + "last_stable_connection": 1738000000, + "state": "CHANNELD_NORMAL", + "scratch_txid": "3112fa1a0797156ebc8861de490811659c0526d66554188ea22e8abca8d69778", + "last_tx_fee_msat": 4867000, + "lost_state": false, + "feerate": { + "perkw": 3755, + "perkb": 15020 + }, + "owner": "channeld", + "short_channel_id": "124x1x1", + "direction": 0, + "channel_id": "ecabe6d86abdd57565b3fb7e7c5d724e60ca1a07633951769b5dbfa48dc884b3", + "funding_txid": "148a366c9a72e40af01daca6acc24e0a5648d0efb7e01f4708f23412d9deba69", "funding_outnum": 1, - "close_to_addr": "bcrt1pcl00020002000200020002000200020002000200020002000200020002", - "close_to": "db2dec31020202020202020202020202020202020202020202020202020202020202", + "close_to_addr": "bcrt1pvn0zt2s8cv6shrtx8yd0zh90hwx4wpuqjrplfzpucnmde7kr4q3qx3fjfh", + "close_to": "512064de25aa07c3350b8d66391af15cafbb8d57078090c3f4883cc4f6dcfac3a822", "private": false, "opener": "local", "alias": { - "local": "30000002x60000002x60002", - "remote": "10000002x20000002x30002" + "local": "6508696x13255799x14088", + "remote": "9483055x2726118x65411" }, "features": [ "option_static_remotekey", - "option_anchors_zero_fee_htlc_tx", "option_anchors" ], "funding": { @@ -24237,20 +26197,20 @@ "remote_funds_msat": 0, "pushed_msat": 0 }, - "to_us_msat": 390492790, - "min_to_us_msat": 390492790, + "to_us_msat": 899996000, + "min_to_us_msat": 899996000, "max_to_us_msat": 1000000000, "total_msat": 1000000000, "fee_base_msat": 1, "fee_proportional_millionths": 10, "dust_limit_msat": 546000, - "max_total_htlc_in_msat": 18446744073709552000, - "their_max_htlc_value_in_flight_msat": 18446744073709552000, - "our_max_htlc_value_in_flight_msat": 18446744073709552000, + "max_total_htlc_in_msat": 18446744073709551615, + "their_max_htlc_value_in_flight_msat": 18446744073709551615, + "our_max_htlc_value_in_flight_msat": 18446744073709551615, "their_reserve_msat": 10000000, "our_reserve_msat": 10000000, - "spendable_msat": 363951708, - "receivable_msat": 599507210, + "spendable_msat": 873454959, + "receivable_msat": 90004000, "minimum_htlc_in_msat": 0, "minimum_htlc_out_msat": 0, "maximum_htlc_out_msat": 990000000, @@ -24259,14 +26219,14 @@ "max_accepted_htlcs": 483, "state_changes": [ { - "timestamp": "2024-10-10T00:01:00.000Z", + "timestamp": "2025-01-27T17:46:40.000Z", "old_state": "DUALOPEND_OPEN_COMMITTED", "new_state": "DUALOPEND_AWAITING_LOCKIN", "cause": "user", "message": "Sigs exchanged, waiting for lock-in" }, { - "timestamp": "2024-10-10T00:02:00.000Z", + "timestamp": "2025-01-27T17:46:40.000Z", "old_state": "DUALOPEND_AWAITING_LOCKIN", "new_state": "CHANNELD_NORMAL", "cause": "user", @@ -24276,27 +26236,27 @@ "status": [ "CHANNELD_NORMAL:Channel ready for use." ], - "in_payments_offered": 1, - "in_offered_msat": 1000000, - "in_payments_fulfilled": 1, - "in_fulfilled_msat": 1000000, - "out_payments_offered": 22, - "out_offered_msat": 665528797, - "out_payments_fulfilled": 16, - "out_fulfilled_msat": 610507210, + "in_payments_offered": 0, + "in_offered_msat": 0, + "in_payments_fulfilled": 0, + "in_fulfilled_msat": 0, + "out_payments_offered": 5, + "out_offered_msat": 154004041, + "out_payments_fulfilled": 3, + "out_fulfilled_msat": 100004000, "htlcs": [ { "direction": "out", - "id": 17, - "amount_msat": 4000082, - "expiry": 181, - "payment_hash": "paymenthashdelpay30303030303030303030303030303030303030303030303", + "id": 1, + "amount_msat": 4000041, + "expiry": 176, + "payment_hash": "2b924194d169a96d9cc35b66ae912507e18ace9ef679fcb5324636ff73be410a", "state": "SENT_ADD_ACK_REVOCATION" } ] }, { - "peer_id": "nodeid030303030303030303030303030303030303030303030303030303030303", + "peer_id": "0382ce59ebf18be7d84677c2e35f23294b9992ceca95491fcf8a56c6cb2d9de199", "peer_connected": false, "channel_type": { "bits": [ @@ -24311,137 +26271,119 @@ "updates": { "local": { "htlc_minimum_msat": 0, - "htlc_maximum_msat": 19454000, + "htlc_maximum_msat": 990000000, + "cltv_expiry_delta": 6, + "fee_base_msat": 1, + "fee_proportional_millionths": 10 + }, + "remote": { + "htlc_minimum_msat": 0, + "htlc_maximum_msat": 990000000, "cltv_expiry_delta": 6, "fee_base_msat": 1, "fee_proportional_millionths": 10 } }, - "state": "ONCHAIN", - "scratch_txid": "scratchid2030303030303030303030303030303030303030303030303030303", - "last_tx_fee_msat": 2250000, + "state": "CLOSINGD_COMPLETE", + "scratch_txid": "8ef1ed98891f7cf81b74c330a68de9fcff802870f91cf04a69c5db02118bc78e", + "last_tx_fee_msat": 2895000, "lost_state": false, "feerate": { - "perkw": 3750, - "perkb": 15000 + "perkw": 3755, + "perkb": 15020 }, - "owner": "onchaind", + "short_channel_id": "160x1x1", "direction": 0, - "channel_id": "channelid1100011000110001100011000110001100011000110001100011000", - "funding_txid": "channeltxid01050000500005000050000500005000050000500005000050000", + "channel_id": "f4e1de801de57374d5737da622611e3a1ad9f16d5df9c30fceecc11ce732eeeb", + "funding_txid": "1c863d8172c0a588a7d34426b7249d4a939f04d4ca4bad6c28d5913ed2dff12a", "funding_outnum": 1, - "initial_feerate": "10000perkw", - "last_feerate": "10000perkw", - "next_feerate": "10416perkw", - "inflight": [ - { - "funding_txid": "channeltxid01050000500005000050000500005000050000500005000050000", - "funding_outnum": 1, - "feerate": "10000perkw", - "total_funding_msat": 20000000, - "our_funding_msat": 20000000, - "splice_amount": 0, - "scratch_txid": "scratchid2030303030303030303030303030303030303030303030303030303" - } - ], - "close_to_addr": "bcrt1pcl00030003000300030003000300030003000300030003000300030003", - "close_to": "db2dec31030303030303030303030303030303030303030303030303030303030303", + "close_to_addr": "bcrt1ptsrrl629uxs782qswfvy53xsequfry5nj56qt788a724y7y0jjlqxzv28f", + "close_to": "51205c063fe945e1a1e3a81072584a44d0c838919293953405f8e7ef9552788f94be", "private": false, "opener": "local", "closer": "local", "alias": { - "local": "30000003x60000003x60003", - "remote": "10000003x20000003x30003" + "local": "6574232x13255799x14088", + "remote": "1209512x9143286x15010" }, "features": [ "option_static_remotekey", - "option_anchors_zero_fee_htlc_tx", "option_anchors" ], "funding": { - "local_funds_msat": 20000000, + "local_funds_msat": 1000000000, "remote_funds_msat": 0, "pushed_msat": 0 }, - "to_us_msat": 20000000, - "min_to_us_msat": 20000000, - "max_to_us_msat": 20000000, - "total_msat": 20000000, + "to_us_msat": 500000000, + "min_to_us_msat": 500000000, + "max_to_us_msat": 1000000000, + "total_msat": 1000000000, "fee_base_msat": 1, "fee_proportional_millionths": 10, "dust_limit_msat": 546000, - "max_total_htlc_in_msat": 18446744073709552000, - "their_max_htlc_value_in_flight_msat": 18446744073709552000, - "our_max_htlc_value_in_flight_msat": 18446744073709552000, - "their_reserve_msat": 546000, - "our_reserve_msat": 546000, - "spendable_msat": 8172000, - "receivable_msat": 0, + "max_total_htlc_in_msat": 18446744073709551615, + "their_max_htlc_value_in_flight_msat": 18446744073709551615, + "our_max_htlc_value_in_flight_msat": 18446744073709551615, + "their_reserve_msat": 10000000, + "our_reserve_msat": 10000000, + "spendable_msat": 478705000, + "receivable_msat": 490000000, "minimum_htlc_in_msat": 0, "minimum_htlc_out_msat": 0, - "maximum_htlc_out_msat": 19454000, + "maximum_htlc_out_msat": 990000000, "their_to_self_delay": 5, "our_to_self_delay": 5, "max_accepted_htlcs": 483, "state_changes": [ { - "timestamp": "2024-10-10T00:01:00.000Z", + "timestamp": "2025-01-27T17:46:40.000Z", "old_state": "DUALOPEND_OPEN_COMMITTED", "new_state": "DUALOPEND_AWAITING_LOCKIN", "cause": "user", "message": "Sigs exchanged, waiting for lock-in" }, { - "timestamp": "2024-10-10T00:02:00.000Z", + "timestamp": "2025-01-27T17:46:40.000Z", "old_state": "DUALOPEND_AWAITING_LOCKIN", + "new_state": "CHANNELD_NORMAL", + "cause": "user", + "message": "Lockin complete" + }, + { + "timestamp": "2025-01-27T17:46:40.000Z", + "old_state": "CHANNELD_NORMAL", "new_state": "CHANNELD_SHUTTING_DOWN", "cause": "user", "message": "User or plugin invoked close command" }, { - "timestamp": "2024-10-10T00:03:00.000Z", + "timestamp": "2025-01-27T17:46:40.000Z", "old_state": "CHANNELD_SHUTTING_DOWN", "new_state": "CLOSINGD_SIGEXCHANGE", "cause": "user", "message": "Start closingd" }, { - "timestamp": "2024-10-10T00:04:00.000Z", + "timestamp": "2025-01-27T17:46:40.000Z", "old_state": "CLOSINGD_SIGEXCHANGE", "new_state": "CLOSINGD_COMPLETE", "cause": "user", "message": "Closing complete" - }, - { - "timestamp": "2024-10-10T00:05:00.000Z", - "old_state": "CLOSINGD_COMPLETE", - "new_state": "FUNDING_SPEND_SEEN", - "cause": "user", - "message": "Onchain funding spend" - }, - { - "timestamp": "2024-10-10T00:06:00.000Z", - "old_state": "FUNDING_SPEND_SEEN", - "new_state": "ONCHAIN", - "cause": "user", - "message": "Onchain init reply" } ], "status": [ - "CLOSINGD_SIGEXCHANGE:We agreed on a closing fee of 2250 satoshi for tx:scratchid2030303030303030303030303030303030303030303030303030303", - "ONCHAIN:Tracking mutual close transaction", - "ONCHAIN:All outputs resolved: waiting 96 more blocks before forgetting channel" + "CLOSINGD_SIGEXCHANGE:We agreed on a closing fee of 2895 satoshi for tx:8ef1ed98891f7cf81b74c330a68de9fcff802870f91cf04a69c5db02118bc78e" ], "in_payments_offered": 0, "in_offered_msat": 0, "in_payments_fulfilled": 0, "in_fulfilled_msat": 0, - "out_payments_offered": 0, - "out_offered_msat": 0, - "out_payments_fulfilled": 0, - "out_fulfilled_msat": 0, - "htlcs": [], - "last_stable_connection": 1738530000 + "out_payments_offered": 1, + "out_offered_msat": 500000000, + "out_payments_fulfilled": 1, + "out_fulfilled_msat": 500000000, + "htlcs": [] } ] } @@ -24780,17 +26722,17 @@ "id": "example:listpeers#1", "method": "listpeers", "params": { - "id": "nodeid030303030303030303030303030303030303030303030303030303030303" + "id": "035d2b1192dfba134e10e540875d366ebc8bc353d5aa766b80c090b39c3a5d885d" } }, "response": { "peers": [ { - "id": "nodeid030303030303030303030303030303030303030303030303030303030303", + "id": "035d2b1192dfba134e10e540875d366ebc8bc353d5aa766b80c090b39c3a5d885d", "connected": true, "num_channels": 1, "netaddr": [ - "127.0.0.1:19736" + "127.0.0.1:30005" ], "features": "0898882a8a59a1" } @@ -24806,25 +26748,25 @@ "response": { "peers": [ { - "id": "nodeid010101010101010101010101010101010101010101010101010101010101", + "id": "035d2b1192dfba134e10e540875d366ebc8bc353d5aa766b80c090b39c3a5d885d", "connected": true, "num_channels": 1, "netaddr": [ - "127.0.0.1:19734" + "127.0.0.1:30005" ], "features": "0898882a8a59a1" }, { - "id": "nodeid030303030303030303030303030303030303030303030303030303030303", + "id": "0266e4598d1d3c415f572a8488830b60f7e744ed9235eb0b1ba93283b315c03518", "connected": true, "num_channels": 1, "netaddr": [ - "127.0.0.1:19736" + "127.0.0.1:54321" ], "features": "0898882a8a59a1" }, { - "id": "nodeid040404040404040404040404040404040404040404040404040404040404", + "id": "0382ce59ebf18be7d84677c2e35f23294b9992ceca95491fcf8a56c6cb2d9de199", "connected": false, "num_channels": 1, "features": "0898882a8a59a1" @@ -25182,7 +27124,7 @@ "id": "example:listsendpays#1", "method": "listsendpays", "params": { - "bolt11": "lnbcrt100n1pnt2bolt11invl030100000000bolt11invl030100000000bolt11invl030100000000bolt11invl030100000000bolt11invl030100000000bolt11invl030100000000bolt11invl030100000000bolt11invl030100000000bolt11invl030100000000bolt11invl030100000000" + "bolt11": "lnbcrt100n1pne035qsp5ct5g9265vn4k2zn8ecuk6pxe0anszfl3uy4w5vukrvl4emm9w28qpp5j43wux8fg2cwkt3kq5xpprhukdxtqljum03g6zxjdwm34u24dshsdp9f9h8vmmfvdjjqer9wd3hy6tsw35k7m3qdsenzxqyjw5qcqp9rzjqgkjyd3q5dv6gllh77kygly9c3kfy0d9xwyjyxsq2nq3c83u5vw4jqqqwqqqqqgqqqqqqqqpqqqqqzsqqc9qxpqysgqflkpcezmaphptn08syzk9wh4rfkdzj3syan9ng9fzzv94htydujx6qut2tdgsmq2rg5utlmwcyce30fcqth7r68tc5mpqm7k4dfvy7gp0xletu" } }, "response": { @@ -25190,16 +27132,16 @@ { "created_index": 2, "id": 2, - "payment_hash": "paymenthashinvl0310031003100310031003100310031003100310031003100", + "payment_hash": "9562ee18e942b0eb2e36050c108efcb34cb07e5cdbe28d08d26bb71af1556c2f", "groupid": 1, "updated_index": 2, - "destination": "nodeid030303030303030303030303030303030303030303030303030303030303", + "destination": "035d2b1192dfba134e10e540875d366ebc8bc353d5aa766b80c090b39c3a5d885d", "amount_msat": 10000, "amount_sent_msat": 10001, "created_at": 1738000000, - "completed_at": 1739000000, + "completed_at": 1738000000, "status": "complete", - "payment_preimage": "paymentpreimagew010101010101010101010101010101010101010101010101" + "payment_preimage": "83ffe698292fbb5f83ffe698292fbb5f83ffe698292fbb5f83ffe698292fbb5f" } ] } @@ -25215,72 +27157,289 @@ { "created_index": 2, "id": 2, - "payment_hash": "paymenthashinvl0310031003100310031003100310031003100310031003100", + "payment_hash": "9562ee18e942b0eb2e36050c108efcb34cb07e5cdbe28d08d26bb71af1556c2f", "groupid": 1, "updated_index": 2, - "destination": "nodeid030303030303030303030303030303030303030303030303030303030303", + "destination": "035d2b1192dfba134e10e540875d366ebc8bc353d5aa766b80c090b39c3a5d885d", "amount_msat": 10000, "amount_sent_msat": 10001, "created_at": 1738000000, - "completed_at": 1739000000, + "completed_at": 1738000000, "status": "complete", - "payment_preimage": "paymentpreimagew010101010101010101010101010101010101010101010101" + "payment_preimage": "83ffe698292fbb5f83ffe698292fbb5f83ffe698292fbb5f83ffe698292fbb5f" }, { "created_index": 3, "id": 3, - "payment_hash": "paymenthashkey01k101k101k101k101k101k101k101k101k101k101k101k101", + "payment_hash": "097dcfa3b0bc58d499908855dae7d442854a02d4f2ffcc625f9385ed74f3256e", "groupid": 0, "updated_index": 3, - "destination": "nodeid030303030303030303030303030303030303030303030303030303030303", + "destination": "035d2b1192dfba134e10e540875d366ebc8bc353d5aa766b80c090b39c3a5d885d", "amount_msat": 10000, "amount_sent_msat": 10001, - "created_at": 1738010000, - "completed_at": 1739010000, + "created_at": 1738000000, + "completed_at": 1738000000, "status": "complete", - "payment_preimage": "paymentpreimage1010101010101010101010101010101010101010101010101" + "payment_preimage": "0193052c8999a10f0193052c8999a10f0193052c8999a10f0193052c8999a10f" }, { "created_index": 4, "id": 4, - "payment_hash": "paymenthashkey02k201k201k201k201k201k201k201k201k201k201k201k201", + "payment_hash": "9bf787fe700121009e2ecdca290632c8bf2da853527c700aa5746173981ae584", "groupid": 0, "updated_index": 4, - "destination": "nodeid040404040404040404040404040404040404040404040404040404040404", + "destination": "0382ce59ebf18be7d84677c2e35f23294b9992ceca95491fcf8a56c6cb2d9de199", "amount_msat": 10000000, "amount_sent_msat": 10000202, - "created_at": 1738020000, - "completed_at": 1739020000, + "created_at": 1738000000, + "completed_at": 1738000000, "status": "complete", - "payment_preimage": "paymentpreimage2020202020202020202020202020202020202020202020202" + "payment_preimage": "0193052c8999a1110193052c8999a1110193052c8999a1110193052c8999a111" }, { "created_index": 5, "id": 5, - "payment_hash": "paymenthashkey03k301k301k301k301k301k301k301k301k301k301k301k301", + "payment_hash": "da6c0b6d30ac35f62762bc7114d64d323dc79fb858061902263eb72df6310caf", "groupid": 0, "updated_index": 5, - "destination": "nodeid030303030303030303030303030303030303030303030303030303030303", + "destination": "035d2b1192dfba134e10e540875d366ebc8bc353d5aa766b80c090b39c3a5d885d", "amount_msat": 10000, "amount_sent_msat": 10001, - "created_at": 1738030000, - "completed_at": 1739030000, + "created_at": 1738000000, + "completed_at": 1738000000, "status": "failed" }, { "created_index": 6, "id": 6, - "payment_hash": "paymenthashkey03k301k301k301k301k301k301k301k301k301k301k301k301", + "payment_hash": "da6c0b6d30ac35f62762bc7114d64d323dc79fb858061902263eb72df6310caf", "groupid": 0, "updated_index": 6, "partid": 1, - "destination": "nodeid030303030303030303030303030303030303030303030303030303030303", + "destination": "035d2b1192dfba134e10e540875d366ebc8bc353d5aa766b80c090b39c3a5d885d", "amount_msat": 10000, "amount_sent_msat": 10001, - "created_at": 1738040000, - "completed_at": 1739040000, + "created_at": 1738000000, + "completed_at": 1738000000, + "status": "complete", + "payment_preimage": "0193052c8999a1130193052c8999a1130193052c8999a1130193052c8999a113" + }, + { + "created_index": 7, + "id": 7, + "payment_hash": "ab3a5a971aa3b21494f7ce646f077232c10c9917c33375935c1aebfa571fa1a1", + "groupid": 1, + "updated_index": 7, + "destination": "035d2b1192dfba134e10e540875d366ebc8bc353d5aa766b80c090b39c3a5d885d", + "amount_msat": 50000, + "amount_sent_msat": 50001, + "created_at": 1738000000, + "completed_at": 1738000000, + "status": "complete", + "payment_preimage": "83ffe698292fbb6083ffe698292fbb6083ffe698292fbb6083ffe698292fbb60", + "bolt11": "lnbcrt500n1pne035qsp5kk6w4wjl0wudssp0pze5lgkz9hcav6ql523hjxc92knt398y2csqpp54va949c65wepf98heejx7pmjxtqsexghcvehty6urt4l54cl5xssdqcdsenygryv4ekxunfwp6xjmmwxqyjw5qcqp9rzjqgkjyd3q5dv6gllh77kygly9c3kfy0d9xwyjyxsq2nq3c83u5vw4jqqqwqqqqqgqqqqqqqqpqqqqqzsqqc9qxpqysgqgrjzax5dyj6dqqhgrt7t53hrmw4xvjs56kdy450c8jdv53fzf3n4kmersmgydpyyam87jrnu9wrcn78zy6w53zx3lqv45js6sa6rspqqa07y46" + }, + { + "created_index": 8, + "id": 8, + "payment_hash": "1bb513fb2fbde40592243877d9f404ba3668275e2eeacd9c7264f34f04d37fd1", + "groupid": 1607584456767009425, + "updated_index": 8, + "partid": 1, + "destination": "0382ce59ebf18be7d84677c2e35f23294b9992ceca95491fcf8a56c6cb2d9de199", + "amount_msat": 10000, + "amount_sent_msat": 10002, + "created_at": 1738000000, + "completed_at": 1738000000, + "status": "complete", + "payment_preimage": "a23af6838ba877f6a23af6838ba877f6a23af6838ba877f6a23af6838ba877f6", + "bolt11": "lnbcrt100n1pne035qsp572t5efk76vr3rdkt5zu2qcduqapdj40mhrs7pgpthufgw3tvtwrqpp5rw6387e0hhjqty3y8pmanaqyhgmxsf679m4vm8rjvne57pxn0lgsdp9w3jhxazl0pcxz72lwd5k6urvv5sxymmvwscnzxqyjw5qcqp9rzjqdwjkyvjm7apxnssu4qgwhfkd67ghs6n6k48v6uqczgt88p6tky96qqqwgqqqqgqqqqqqqqpqqqqqzsqqc9qxpqysgqh986ypquaysut7ed57nr8pum0x6u5hg3lnsf6j840l0cn6e28zcyqk76xpxkxjzlkhj8cx7zapyct6zdz2ff7nt3lym376k8ff0u9egq2wf5mk" + }, + { + "created_index": 9, + "id": 9, + "payment_hash": "f4a6597c41a3ae138fc1269e3bb0c28eb992a24e5eb007c5e65f39b1b89ed561", + "groupid": 1751699644842865297, + "updated_index": 9, + "partid": 1, + "destination": "0266e4598d1d3c415f572a8488830b60f7e744ed9235eb0b1ba93283b315c03518", + "amount_msat": 1000, + "amount_sent_msat": 1000, + "created_at": 1738000000, + "completed_at": 1738000000, + "status": "complete", + "payment_preimage": "c01ed70eb9ddb51ec01ed70eb9ddb51ec01ed70eb9ddb51ec01ed70eb9ddb51e", + "bolt12": "lni1qqgvq8khp6uam2t8cq0dwr4emk5kwq3qqc3xu3s3rg94nj40zfsy866mhu5vxne6tcej5878k2mneuvgjy83pmsz953rvg9rtxj8lalh43z8epwydjfrmffn3y3p5qz5cywpu09rr4vsyc4ltgrq50wep0hruykzdz8kjmlaymfx3gn3c0gcrcwn08fary4aqgplwhkgurkjc3rj42v0ntzhw0gr9dl4vwt2l3meh378fzjx5cc7mhgqxdva9ffx3l879amqjdk7np3nyfq6wjtp4weyzhdgq447vakcu0sh4dh0gxszhvffjfqcy8h77mjzguszhtfqy9glqvpm0sp32vgtlw2rh8mwuzedxn3z4d44zq7g8pkz6906ysj9qqe9eqccms4thz8tgy4vu7fdnqt0yaeky4a4pkdprcykm7vj4sz2pqeuguj820h2d6vwh0j7cdypzeg7ffnpvggzvmj9nrga83q474e2sjygxzmq7ln5fmvjxh4skxafx2pmx9wqx5v9qgqxyfhyvyg6pdvu4tcjvpp7kkal9rp57wj7xv4pl3ajku70rzy3pafqyqlg2sq9sggz3x54wmukps9ppjdvu9axg8l62dkkv5975l6zlt37ts4szjaem7c6pxqzvmj9nrga83q474e2sjygxzmq7ln5fmvjxh4skxafx2pmx9wqx5vqyhckl6y7ulcampu0ezz5qqx4cs3fwt6kyrfjc08dju8hc3lr30d7qyp5e6kp2jd30yr8husmmcfzxe797vler28r4hv6ehyy29lljue6ljqqxtxjzt8sw08wk4vx2j6wwv94myujhvzg09mx9xnh9fmvewnm0ex4mkal4sfm00gep0srey7pz6vt3cd82k3pcqqqqqqqqqqqqqqq2qqqqqqqqqqqqqwjfvkl43fqqqqqqzjqgeuhc6q2sg855evhcsdr4cfclsfxncamps5whxf2ynj7kqrutejl8xcm38k4vx4qyqlg4cpsyqqqkqssyehytxx360zptatj4pygsv9kpal8gnkeyd0tpvd6jv5rkv2uqdgc7pqzjd09ca3y6jytvgzva9jcyxavkyzvjujh4g4dz6qv5gjp95ld7sxy4yrpuc937lvmvrwm6qycexdzsmmtlzyskmzqm5e8uevw6d4nxc" + }, + { + "created_index": 10, + "id": 10, + "payment_hash": "47c148c1746366e4c2c7496621c22002bc2711b4d9c52cbb9c7b1fdca59c8579", + "groupid": 1, + "updated_index": 10, + "amount_sent_msat": 1002, + "created_at": 1738000000, + "completed_at": 1738000000, + "status": "failed", + "erroronion": "9bd15bb4312d17efe8130e67d2013e5baa83d46bc370883e1499e59299647d62cb6665189d7046467e6820a1f1248e0318805cf6e6d72e4b1da85492577e3606e81c8671a56493a6699eaf5e0d14c7bc2a23a23c5a0712e87faa51325a207f041e5e340e10ac9c61c77101345e527964d8aa7d5e953dfcef7a73dbf156738034d9c589f8592181132d6424112e7c991aa288da1bfa6da93d4c32572417d94c2956b95a4f5a0fc3d4e95019b24a87e890c7ef74444191de7428d979415b63d7de7a492e41be004cdfb7b567557dec95c4ac3e7ba3fb038dea146625551649d7991f0b4b5aa10c96b8a789cbfaaf8c1cc021cbb58516c7fd47644f4b2df9b5495a3e22f113a725e4b5315f1b7aff390d1f5b02ac37809e799bfbe8a078a1882d5f9d6f1d63" + }, + { + "created_index": 11, + "id": 11, + "payment_hash": "53a72d006c295bac2f2f81e6b82dd67193555a1859f7c90f84678b57ce6d10e2", + "groupid": 1, + "updated_index": 11, + "destination": "035d2b1192dfba134e10e540875d366ebc8bc353d5aa766b80c090b39c3a5d885d", + "amount_msat": 10000, + "amount_sent_msat": 10001, + "created_at": 1738000000, + "completed_at": 1738000000, + "status": "failed" + }, + { + "created_index": 12, + "id": 12, + "payment_hash": "ff498c3300881ea7a3c04193e43f123444c644662008108c23229da3511bedd1", + "groupid": 0, + "updated_index": 12, + "partid": 1, + "amount_sent_msat": 1000, + "created_at": 1738000000, + "completed_at": 1738000000, + "status": "complete", + "payment_preimage": "08377744ca985c1e08377744ca985c1e08377744ca985c1e08377744ca985c1e" + }, + { + "created_index": 13, + "id": 13, + "payment_hash": "e0b5658ef8e23cab6546ea5f7794a8c760483abf3613b34f401df4128944afae", + "groupid": 1, + "updated_index": 13, + "partid": 1, + "destination": "022d223620a359a47ff7f7ac447c85c46c923da53389221a0054c11c1e3ca31d59", + "amount_msat": 400000, + "amount_sent_msat": 400000, + "created_at": 1738000000, + "completed_at": 1738000000, + "status": "complete", + "payment_preimage": "08377744ca985c1908377744ca985c1908377744ca985c1908377744ca985c19", + "bolt11": "lnbcrt1pne035qsp5j7czxfpnquxg9vcw9crqh87raxz0glv8n6gx88jwdsp28pmfk68qpp5uz6ktrhcug72ke2xaf0h099gcasysw4lxcfmxn6qrh6p9z2y47hqdqcdserzgryv4ekxunfwp6xjmmwxqyjw5qcqp9rzjqdwjkyvjm7apxnssu4qgwhfkd67ghs6n6k48v6uqczgt88p6tky96qqqwqqqqqgqqqqqqqqpqqqqqzsqqc9qxpqysgqn7ge40jwkslz0j0vhfzy743lathy2sqy2dfyyahalxszs979d9s5v89ten2zcrna3xlxhkerk7p9k7a6u5fdddx5dzzas4ye2yp6desq3zwkg2" + }, + { + "created_index": 14, + "id": 14, + "payment_hash": "2a25861f15614825bdfd154d422342f159446f0d54dc24e8385d31520023f8cb", + "groupid": 1, + "updated_index": 14, + "destination": "022d223620a359a47ff7f7ac447c85c46c923da53389221a0054c11c1e3ca31d59", + "amount_msat": 2000, + "amount_sent_msat": 2000, + "created_at": 1738000000, + "completed_at": 1738000000, "status": "complete", - "payment_preimage": "paymentpreimage3030303030303030303030303030303030303030303030303" + "payment_preimage": "08377744ca985c2108377744ca985c2108377744ca985c2108377744ca985c21", + "bolt11": "lnbcrt20n1pne035qsp5793kaek9ahcmxn00ttvkmrhafa5v33wtju4dz5lvyjr0pwwgdd2qpp59gjcv8c4v9yzt00az4x5yg6z79v5gmcd2nwzf6pct5c4yqprlr9sdq8d9h8vvsxqyjw5qcqp99qxpqysgq7ygtu605e0yx749rczhlqaw4crl746rmzc3nkpxn5vrey34m2uxx0658c3e85gvvdcp8r5nlfdnxspl9tlj5xhckrx5vszxxa4zneggp8dynay" + }, + { + "created_index": 15, + "id": 15, + "payment_hash": "36a32c9d7ee7baf5c15d1b9b27d085dce9c697fb427d0ce68342acce00e1586f", + "groupid": 1, + "updated_index": 15, + "destination": "022d223620a359a47ff7f7ac447c85c46c923da53389221a0054c11c1e3ca31d59", + "amount_msat": 3000, + "amount_sent_msat": 3000, + "created_at": 1738000000, + "completed_at": 1738000000, + "status": "complete", + "payment_preimage": "08377744ca985c2208377744ca985c2208377744ca985c2208377744ca985c22", + "bolt11": "lnbcrt30n1pne035qsp588xrpk37hul6xfyr8u6lkyggh0mkvfzhyex8wwts7dpckxt2j2yspp5x63je8t7u7a0ts2arwdj05y9mn5ud9lmgf7see5rg2kvuq8ptphsdq8d9h8vvcxqyjw5qcqp99qxpqysgqw97pk464fhkxp6umgtzhh3njznhnw06cwun58szk06v7a2wvvppz6kg95ufarq443nrqgue6u3s59up4tqkmm943pfyp3hqutx6vgugqgd8jsu" + }, + { + "created_index": 16, + "id": 16, + "payment_hash": "8e3ea1fb26e3e5e8627064e68e424713e3393752457ffe19a565fea54f6307d6", + "groupid": 1, + "updated_index": 16, + "destination": "022d223620a359a47ff7f7ac447c85c46c923da53389221a0054c11c1e3ca31d59", + "amount_msat": 5000, + "amount_sent_msat": 5000, + "created_at": 1738000000, + "completed_at": 1738000000, + "status": "complete", + "payment_preimage": "08377744ca985c2408377744ca985c2408377744ca985c2408377744ca985c24", + "bolt11": "lnbcrt50n1pne035qsp59qq7k6yprpf2hw49aqqx6tcv4dhldr4jh8r45n8vk9deyff2q55spp53cl2r7exu0j7scnsvnngusj8z03njd6jg4lluxd9vhl22nmrqltqdq8d9h8vdgxqyjw5qcqp99qxpqysgqcrnpc3ms8p3nqzyvfp5y0l78nlgm3lexm0v5xty0yd9fudk5mk8ydzvkfuxuef74cytlajjj6ykjsannfdapna7xudpf4xwtauhvcrqqxkwwsq" + }, + { + "created_index": 17, + "id": 17, + "payment_hash": "09963074ab0fc38044f890c763c658e7ea4f8b31ccbcfc6a0191163f5cdc4360", + "groupid": 1, + "updated_index": 17, + "destination": "022d223620a359a47ff7f7ac447c85c46c923da53389221a0054c11c1e3ca31d59", + "amount_msat": 4000, + "amount_sent_msat": 4000, + "created_at": 1738000000, + "completed_at": 1738000000, + "status": "complete", + "payment_preimage": "08377744ca985c2308377744ca985c2308377744ca985c2308377744ca985c23", + "bolt11": "lnbcrt40n1pne035qsp5q4tjztd7kdgg22eewphyfcf3ew9ag6d53nsm3yfu8280ygsxnp3qpp5pxtrqa9tplpcq38cjrrk83jcul4ylze3ej70c6spjytr7hxugdsqdq8d9h8vdqxqyjw5qcqp99qxpqysgq0g9jk5lpfjyg6ryulnhav6qsfmua9uajgkpa8cl4k9mrds0wdavqd8sg26us9gr93uvnz8s9znmyk2g3sytgqgfl6ych0re7sujky3sq78nj5l" + }, + { + "created_index": 18, + "id": 18, + "payment_hash": "9a33e433faddc3371f6a56a34146c82629d567520ddaf28244bd9f196288af71", + "groupid": 1, + "updated_index": 18, + "destination": "022d223620a359a47ff7f7ac447c85c46c923da53389221a0054c11c1e3ca31d59", + "amount_msat": 1000, + "amount_sent_msat": 1000, + "created_at": 1738000000, + "completed_at": 1738000000, + "status": "complete", + "payment_preimage": "08377744ca985c2008377744ca985c2008377744ca985c2008377744ca985c20" + }, + { + "created_index": 19, + "id": 19, + "payment_hash": "2b924194d169a96d9cc35b66ae912507e18ace9ef679fcb5324636ff73be410a", + "groupid": 1, + "partid": 1, + "destination": "0382ce59ebf18be7d84677c2e35f23294b9992ceca95491fcf8a56c6cb2d9de199", + "amount_msat": 4000000, + "amount_sent_msat": 4000082, + "created_at": 1738000000, + "status": "pending" + }, + { + "created_index": 21, + "id": 21, + "payment_hash": "1d3a502d4b52d3c22af20f93605cadec2194da2e077b9fbbd15fa379c6bfbbdd", + "groupid": 1, + "updated_index": 20, + "destination": "035d2b1192dfba134e10e540875d366ebc8bc353d5aa766b80c090b39c3a5d885d", + "amount_msat": 50000000, + "amount_sent_msat": 50000501, + "created_at": 1738000000, + "completed_at": 1738000000, + "status": "complete", + "payment_preimage": "83ffe698292fbb6383ffe698292fbb6383ffe698292fbb6383ffe698292fbb63", + "bolt11": "lnbcrt500u1pne035qsp5pt69qwurs28wt0ttmlyhwnsuajc8sxf0at8vd83m98m3hhkcw9yspp5r5a9qt2t2tfuy2hjp7fkqh9dassefk3wqaaelw73t73hn34lh0wsdqcdsen2gryv4ekxunfwp6xjmmwxqyjw5qcqp9rzjqgkjyd3q5dv6gllh77kygly9c3kfy0d9xwyjyxsq2nq3c83u5vw4jqqq0sqqqqgqqyqqqqqpqqqqqzsqqc9qxpqysgqufkzp6k7jev4r0k95s4m3m0j3vcyg5z2zxpw98tm9fcml0xud0ws0q9g44g9cz56lnc97xxy9q6mt8h6xxh4h2fah8qypk7h7mmwd3gqsdtqr0" + }, + { + "created_index": 22, + "id": 22, + "payment_hash": "39a88ddc69c973a791043a877a415eda840888849a5d7175c9666104513f9235", + "groupid": 1, + "updated_index": 21, + "destination": "035d2b1192dfba134e10e540875d366ebc8bc353d5aa766b80c090b39c3a5d885d", + "amount_msat": 50000000, + "amount_sent_msat": 50000501, + "created_at": 1738000000, + "completed_at": 1738000000, + "status": "complete", + "payment_preimage": "83ffe698292fbb6583ffe698292fbb6583ffe698292fbb6583ffe698292fbb65", + "bolt11": "lnbcrt500u1pne035qsp50zcqdgkx0dwzlksvkntzmmuednc9mxdnnzrghatwffw5fycnkpcqpp58x5gmhrfe9e60ygy82rh5s27m2zq3zyynfwhzawfvessg5fljg6sdqcdsenwgryv4ekxunfwp6xjmmwxqyjw5qcqp9rzjqgkjyd3q5dv6gllh77kygly9c3kfy0d9xwyjyxsq2nq3c83u5vw4jqqq0sqqqqgqqyqqqqqpqqqqqzsqqc9qxpqysgqxdq9h7j2xkfjvm8ansypq8w2xvawhdu5wwzpkg9ar2al66d6uae8lxzx6maekk0pgae6fzeauglsxvqplc3lw30fzv430a7nmccv0lcq0du8d6" } ] } @@ -25749,51 +27908,492 @@ "response": { "transactions": [ { - "hash": "txid7000170001700017000170001700017000170001700017000170001", - "rawtx": "02000000000101lstx70001700017000170001700017000170001700017000170001700017000170001700017000170001700017000170001700017000170001700017000170001700017000170001700017000170001700017000170001", + "hash": "cb847df46f5e3ae4df631b2eca529264f0551c08497a23a8b36eab6a43752a19", + "rawtx": "02000000000101f24a23ab5e7a9a3301a77294bd78b17c1f99ae8a46f91c7784170325735c87a70000000000fce87280044a0100000000000022002021576c2f5f13ba292fdb27447b38f1a583a579f26d3f4de69949f399a68269e34a0100000000000022002084e64aa53fb1193cdd99b7892f2d2f1f1a472f2b1bb1b85c447beba739003b2ea00f0000000000002200208f5cc510822867e8c786438caacf26a796f0561a147b4cb4950e4ae5fd0f5b6a0a1d0f00000000002200200fc54c870d234c36914a970b066e35be3f70af615d521189922794127e5eda8f0400473044022065d513e52ad62ae187985ffdc063591ca4fd3122b64f93f8173804d71a4c4bf802200e2f6abd1e958930f5535af6d193ad50f48632e832952dde93d25b64d9e4a9ae01473044022016be9e3950d45956afea61824dc637dff6708789859ca8ab62d475849e8ea3af02204beec8cc69f1238866e0768770b64fe381b53badc64b8a6fde2cca49e0b1baf10147522102c4c58e0dd892bdc984a69d87a39e33a837926d8886282e27d0a6cdfab5a563742103ebc3fd1aeca86f47406b5c43daf43ce7337d0d59923891ad4e276e168c2bc11452ae1a77ae20", "blockheight": 0, "txindex": 0, - "locktime": 549000100, + "locktime": 548304666, "version": 2, "inputs": [ { - "txid": "txid600116001160011600116001160011600116001160011600116001160011", + "txid": "a7875c7325031784771cf9468aae991f7cb178bd9472a701339a7a5eab234af2", + "index": 0, + "sequence": 2155014396 + } + ], + "outputs": [ + { + "index": 0, + "amount_msat": 330000, + "scriptPubKey": "002021576c2f5f13ba292fdb27447b38f1a583a579f26d3f4de69949f399a68269e3" + }, + { "index": 1, - "sequence": 2158511000 + "amount_msat": 330000, + "scriptPubKey": "002084e64aa53fb1193cdd99b7892f2d2f1f1a472f2b1bb1b85c447beba739003b2e" + }, + { + "index": 2, + "amount_msat": 4000000, + "scriptPubKey": "00208f5cc510822867e8c786438caacf26a796f0561a147b4cb4950e4ae5fd0f5b6a" + }, + { + "index": 3, + "amount_msat": 990474000, + "scriptPubKey": "00200fc54c870d234c36914a970b066e35be3f70af615d521189922794127e5eda8f" + } + ] + }, + { + "hash": "0c609c5643e2f316985989417c48044311cf2c1fb2113a03af7d7d51b4874ac5", + "rawtx": "02000000000101b3d820c11ae3a495b807cdcbf591f9a382351f50e61eb3ddcbb0c3a9b66f12890000000000fdffffff02b37c110501000000160014d67d8942d0b25380051198e292a12c48369c94ca00c2eb0b00000000160014d0eac62fdcee2d1881259be9cda4c43de9050db802473044022042141044c5fa69877c5a6d641cd96693828c77b8593fbba4df3008c56c54c3c502202e743899c8469993e28011de683f68f2f66c64b23f1ac62be7167563f762f8a40121031552bdf1173629284565431fb75296ec15c49649f97bb418ce3f509601b9b77469000000", + "blockheight": 106, + "txindex": 1, + "locktime": 105, + "version": 2, + "inputs": [ + { + "txid": "89126fb6a9c3b0cbddb31ee6501f3582a3f991f5cbcd07b895a4e31ac120d8b3", + "index": 0, + "sequence": 4294967293 } ], "outputs": [ + { + "index": 0, + "amount_msat": 4379999411000, + "scriptPubKey": "0014d67d8942d0b25380051198e292a12c48369c94ca" + }, { "index": 1, - "amount_msat": 201998901100, - "scriptPubKey": "scriptpubkey01010101010101010101010101010101010101010101010101010101" + "amount_msat": 200000000000, + "scriptPubKey": "0014d0eac62fdcee2d1881259be9cda4c43de9050db8" } ] }, { - "hash": "txid7000270002700027000270002700027000270002700027000270002", - "rawtx": "02000000000101lstx70002700027000270002700027000270002700027000270002700027000270002700027000270002700027000270002700027000270002700027000270002700027000270002700027000270002700027000270002", - "blockheight": 102, + "hash": "7cce7550c4b37924bb74fd4baf8f1946a4b14c050c42f2479b04fede08652aa9", + "rawtx": "02000000000101b3d820c11ae3a495b807cdcbf591f9a382351f50e61eb3ddcbb0c3a9b66f12890100000000fdffffff0240420f00000000002200208698658a01efb001e1cc4df6a8b6f3adb461fa3e679385fdaae400bd73996b32816cdc0b000000002251208a73bb281433f2b5db5461c6778aa2afd28e011de6bd04799a5991662c61d7a80247304402204ae8e90efd38fe67b7dacd7b673c5de869a802feab60b17ce55c91c5bdffcfa60220100e9a1ee2e0f0a0e157feb12ee4e5e2b9ca4c78384097b085d476722f2dd9e101210207ec2b35534712d86ae030dd9bfaec08e2ddea1ec1cecffb9725ed7acb12ab6633000000", + "blockheight": 112, "txindex": 1, - "locktime": 549000200, + "locktime": 51, "version": 2, "inputs": [ { - "txid": "txid600126001260012600126001260012600126001260012600126001260012", + "txid": "89126fb6a9c3b0cbddb31ee6501f3582a3f991f5cbcd07b895a4e31ac120d8b3", "index": 1, - "sequence": 2158512000 + "sequence": 4294967293 } ], "outputs": [ + { + "index": 0, + "amount_msat": 1000000000, + "scriptPubKey": "00208698658a01efb001e1cc4df6a8b6f3adb461fa3e679385fdaae400bd73996b32" + }, { "index": 1, - "amount_msat": 201998902100, - "scriptPubKey": "scriptpubkey02010201020102010201020102010201020102010201020102010201" + "amount_msat": 198995073000, + "scriptPubKey": "51208a73bb281433f2b5db5461c6778aa2afd28e011de6bd04799a5991662c61d7a8" + } + ] + }, + { + "hash": "c3f4a0f787b5ea11505afaba3e9599d6135943d0f562df3d6a7d3e7f372e2067", + "rawtx": "02000000000101ce5a530f60155add2fa38a51332c2823dec1e10eb16f77e68da912d03fb04dd80100000000fdffffff0280841e0000000000160014774b1c651a1b409213057783547e2bd37a7173127268deec00000000160014dc1e0ee8ce8e59d06ff533cc79b1e3809b4eba99024730440220483a8cc01437562b2dc7e83397e145f427fcbdbe7afb6d83c63ad3c8d18cc31d0220502b2d3f36a6b6cc42bb1714c8907b1b9c9a80788784599c33d19242e29061330121022facafa438adcdc64818ac87168a8ff6cc0c1f986475f3edac935f037bcc962b15000000", + "blockheight": 113, + "txindex": 1, + "locktime": 21, + "version": 2, + "inputs": [ + { + "txid": "d84db03fd012a98de6776fb10ee1c1de23282c33518aa32fdd5a15600f535ace", + "index": 1, + "sequence": 4294967293 + } + ], + "outputs": [ + { + "index": 0, + "amount_msat": 2000000000, + "scriptPubKey": "0014774b1c651a1b409213057783547e2bd37a717312" + }, + { + "index": 1, + "amount_msat": 3973998706000, + "scriptPubKey": "0014dc1e0ee8ce8e59d06ff533cc79b1e3809b4eba99" + } + ] + }, + { + "hash": "efa52a006f5909ed9cb8a098f2dec8ad7146a1384b6eaaf2fae7aac05077f7b6", + "rawtx": "0200000000010167202e377f3e7d6a3ddf62f5d0435913d699953ebafa5a5011eab587f7a0f4c30000000000fdffffff0240420f00000000002200205f743123f9584a76058bac1142ec2bc6c60b4b2af1d3145e74418d41ae51009e012f0f0000000000225120974c19d5ed96a62a1bd10ad187fee5c2e3146f772228c5ae7a42b36e74cf24cf024730440220707db46964e57ba4767951d6f03491f75468fd263dc84868d02352d74b91b4f102200a06e7213acde73c8a89751a1d915cfd72a849c850093b53c0415759144740cd012103f1f9d3a06cf2ae9b87dc178b5f3717b6c9b56e539189f11dc0d9ad1b227cc97f71000000", + "blockheight": 114, + "txindex": 1, + "locktime": 113, + "version": 2, + "inputs": [ + { + "txid": "c3f4a0f787b5ea11505afaba3e9599d6135943d0f562df3d6a7d3e7f372e2067", + "index": 0, + "sequence": 4294967293 + } + ], + "outputs": [ + { + "index": 0, + "amount_msat": 1000000000, + "scriptPubKey": "00205f743123f9584a76058bac1142ec2bc6c60b4b2af1d3145e74418d41ae51009e" + }, + { + "index": 1, + "amount_msat": 995073000, + "scriptPubKey": "5120974c19d5ed96a62a1bd10ad187fee5c2e3146f772228c5ae7a42b36e74cf24cf" + } + ] + }, + { + "hash": "1aa6d7b0bb6c5d1dac62724caa4e26dc37ed8af5e747c836746987d28603fed2", + "rawtx": "02000000000101b6f77750c0aae7faf2aa6e4b38a14671adc8def298a0b89ced09596f002aa5ef0000000000ffffffff026b6f070000000000160014730274d976305fe63d212c880cf89fd0f08272873ac80700000000002251202bdd81f95d64ed2cc37d2eae725de428c91bff072d7503d87446970eedc630300400473044022008dec4948db1c9e4db4dcf8c223f554117e48c6aa0aac471de67c03163a82e4a0220018bdb9889230e0048a378efad73d3bec83c330baa727323d95ca86fe36301b701473044022022cec9df9ece54e1ca89888bdc19ed84e5202a93070d05aa9b3236f9990b440d0220376f7fd6edb49ad13596cdfd51d929a92d45bc88da3f16ed0777014a28025a2801475221021c29746e4136ddff456483df3980c2d0d5f31c93ef5ded564f7294a10d7414aa2103c47b1b2afcfd68c7b86c0976adb9a4f0835bc78242fced745d78433497a867d652ae00000000", + "blockheight": 122, + "txindex": 1, + "locktime": 0, + "version": 2, + "inputs": [ + { + "txid": "efa52a006f5909ed9cb8a098f2dec8ad7146a1384b6eaaf2fae7aac05077f7b6", + "index": 0, + "sequence": 4294967295 + } + ], + "outputs": [ + { + "index": 0, + "amount_msat": 487275000, + "scriptPubKey": "0014730274d976305fe63d212c880cf89fd0f0827287" + }, + { + "index": 1, + "amount_msat": 510010000, + "scriptPubKey": "51202bdd81f95d64ed2cc37d2eae725de428c91bff072d7503d87446970eedc63030" + } + ] + }, + { + "hash": "40b4acd3759ac69b5160488d73a5890a46bf4f013381e52e9171ee038b3c96d6", + "rawtx": "02000000000101a92a6508defe049b47f2420c054cb1a446198faf4bfd74bb2479b3c45075ce7c0000000000ffffffff02026e07000000000022512085d72025e78fd08bb61119f0987ab0041f50561ada6e130c645343db8c44c2afeec8070000000000225120a7583f0c421663b8ca76fa579018b40682ef8553d73fd061cd8f216ecdced6a30400473044022064d1a5480d76bc71d44ee440a47ec30e7433812292ca8d4876e5e59cd2950e4802201ece394b4bcbf6ba3f21152236822cfb2eeed8e5897d3bf3499e9d7d1a5d092e01473044022068cd05fe53fa71118b643e5340ea3cd169a3ca655c64c0b30f78d720d79a957502200f14d30de4251cf016a3db3475fe5472772335b76dfc268dc173e6541026b1830147522102d595ae92b3544c3250fb772f214ad8d4c51425033740a5bcc357190add6d7e7a2102d6063d022691b2490ab454dee73a57c6ff5d308352b461ece69f3c284f2c241252ae00000000", + "blockheight": 122, + "txindex": 2, + "locktime": 0, + "version": 2, + "inputs": [ + { + "txid": "7cce7550c4b37924bb74fd4baf8f1946a4b14c050c42f2479b04fede08652aa9", + "index": 0, + "sequence": 4294967295 + } + ], + "outputs": [ + { + "index": 0, + "amount_msat": 486914000, + "scriptPubKey": "512085d72025e78fd08bb61119f0987ab0041f50561ada6e130c645343db8c44c2af" + }, + { + "index": 1, + "amount_msat": 510190000, + "scriptPubKey": "5120a7583f0c421663b8ca76fa579018b40682ef8553d73fd061cd8f216ecdced6a3" + } + ] + }, + { + "hash": "148a366c9a72e40af01daca6acc24e0a5648d0efb7e01f4708f23412d9deba69", + "rawtx": "0200000000010255310c6239b1c691cda8c054f3933467fb75153dddbd83dabec5d621990ddc920000000000fdffffffa7330551ea1fb2cc2d6ce491391f6830228b4bf5f2a616ab0a372002027e93ed0100000000fdffffff0245571e0000000000225120fdab7c01fae70c08e0b1f9acacca110a53121e75dc54a25e7542416f342aeaf740420f00000000002200209655e2a7330cd86dc69f8ed1845af5580dd06b15a794034c9571e53d5639b397014051b8117b0f4726cb33d05a6289f25addc41f5cf4a572b1a00aa494e88c3d9771729e9473eb8bb3679eac5a13964260269e317924cbf0e55c5aba600dbbc4af1002473044022049960f9cc0d1c77c8b85614adb8ed91b2a0a55a3e4bdac12a3de90880485f5e2022012e7ccc5f87ca3e0f485b2b16a95cc026079b18358dcb20fb0cd44348105751a01210330a75acaed258be6bc02da9fab058abbe0e770caceb7c6496eaaea7014c3d39b7b000000", + "blockheight": 124, + "txindex": 1, + "locktime": 123, + "version": 2, + "inputs": [ + { + "txid": "92dc0d9921d6c5beda83bddd3d1575fb673493f354c0a8cd91c6b139620c3155", + "index": 0, + "sequence": 4294967293 + }, + { + "txid": "ed937e020220370aab16a6f2f54b8b2230681f3991e46c2dccb21fea510533a7", + "index": 1, + "sequence": 4294967293 + } + ], + "outputs": [ + { + "index": 0, + "amount_msat": 1988421000, + "scriptPubKey": "5120fdab7c01fae70c08e0b1f9acacca110a53121e75dc54a25e7542416f342aeaf7" + }, + { + "index": 1, + "amount_msat": 1000000000, + "scriptPubKey": "00209655e2a7330cd86dc69f8ed1845af5580dd06b15a794034c9571e53d5639b397" + } + ] + }, + { + "hash": "e72c5b057eb2944ade8a57c7d1143cc5eea12f0905287ce40c2716ed7032bd29", + "rawtx": "02000000000101a7330551ea1fb2cc2d6ce491391f6830228b4bf5f2a616ab0a372002027e93ed0000000000fdffffff0280841e000000000016001449acd7d82366c662bc8fef84bd3900b09bafbba54bd982ec0000000016001423c5939000b149132489269b028c1a596d96af480247304402204b0db0024b5141333d9e95410d91fcd3f8f3e60a2b26a7572694b0c094bae64e022062dad17af68f819b3463f57e75b3e93d257ed73b66f8045eed8d3bfd7252908501210387ee92224b3c95d3a3af78c32cec2b07b1c250e3bdb80a2e80dadc02e684040c7c000000", + "blockheight": 125, + "txindex": 1, + "locktime": 124, + "version": 2, + "inputs": [ + { + "txid": "ed937e020220370aab16a6f2f54b8b2230681f3991e46c2dccb21fea510533a7", + "index": 0, + "sequence": 4294967293 + } + ], + "outputs": [ + { + "index": 0, + "amount_msat": 2000000000, + "scriptPubKey": "001449acd7d82366c662bc8fef84bd3900b09bafbba5" + }, + { + "index": 1, + "amount_msat": 3967998283000, + "scriptPubKey": "001423c5939000b149132489269b028c1a596d96af48" + } + ] + }, + { + "hash": "a7875c7325031784771cf9468aae991f7cb178bd9472a701339a7a5eab234af2", + "rawtx": "0200000000010129bd3270ed16270ce47c2805092fa1eec53c14d1c7578ade4a94b27e055b2ce70000000000fdffffff0240420f0000000000220020dd2b22d7f86c0cb8edca4d979b316aa5a8a390a37440b3f387edfa6e3efb630d012f0f00000000002251207b8ca7b7f827d8f94a2846c4e5d84fbae1a5b7453ff03ca1859f25888325b80a02473044022038b791a95551665f80a79e75cd2b53035913a1e3314c8135d2e1e2d60ef253df02202a80e65020cd2c160830a8d93cde5fc9ec92299104df83a59c41420370daf20001210235953f2aa25835f70cc1da3418d935b88a9f95a134dd86636bf018f532d282fe7d000000", + "blockheight": 126, + "txindex": 1, + "locktime": 125, + "version": 2, + "inputs": [ + { + "txid": "e72c5b057eb2944ade8a57c7d1143cc5eea12f0905287ce40c2716ed7032bd29", + "index": 0, + "sequence": 4294967293 + } + ], + "outputs": [ + { + "index": 0, + "amount_msat": 1000000000, + "scriptPubKey": "0020dd2b22d7f86c0cb8edca4d979b316aa5a8a390a37440b3f387edfa6e3efb630d" + }, + { + "index": 1, + "amount_msat": 995073000, + "scriptPubKey": "51207b8ca7b7f827d8f94a2846c4e5d84fbae1a5b7453ff03ca1859f25888325b80a" + } + ] + }, + { + "hash": "59d7273c7dde3b2786f7325da08a303779ee718443aaa25d03db19c9e909591b", + "rawtx": "0200000000010190ee63cdc0e3f2b01c954abef709af77c0d966ca3f45b6b39ab9cfb6546c7a790100000000fdffffff08e803000000000000160014a43b821a9790f880e113a395b717a0f354b9d9c6e687150000000000225120327b99fbacbcc3bbcf9489bf7f3dac2642d933685754f558586afbacd17f9c26e8030000000000002251202f843ba0c8de9d0c41a63a25d4cab22032be4fabf24931dab82214316be218cae8030000000000002251200978ea47f31ad6561d96ceee14e85192726536c4e1e59d09f217f3b5762b0630e80300000000000016001407905c6189c1ae8aff12566b03f35ff516d17e84e803000000000000160014d1dc90a7bb3af91ed69e933dc38f555b580fad09e8030000000000001600146a1845bb0ea1f8efa63f00f325641db7350dcd5be803000000000000160014dfadaae18d57e4ef50e15b863d9e648bf9af67b10140eeb15b713763a95f40db82138b6f02a8ae8e49aad37ab3647d943a27713069f87376087de9ba49b7a477581f02cf4b4de25a468ee611b7a1ca2e71c3b1e179748c000000", + "blockheight": 141, + "txindex": 1, + "locktime": 140, + "version": 2, + "inputs": [ + { + "txid": "797a6c54b6cfb99ab3b6453fca66d9c077af09f7be4a951cb0f2e3c0cd63ee90", + "index": 1, + "sequence": 4294967293 + } + ], + "outputs": [ + { + "index": 0, + "amount_msat": 1000000, + "scriptPubKey": "0014a43b821a9790f880e113a395b717a0f354b9d9c6" + }, + { + "index": 1, + "amount_msat": 1411046000, + "scriptPubKey": "5120327b99fbacbcc3bbcf9489bf7f3dac2642d933685754f558586afbacd17f9c26" + }, + { + "index": 2, + "amount_msat": 1000000, + "scriptPubKey": "51202f843ba0c8de9d0c41a63a25d4cab22032be4fabf24931dab82214316be218ca" + }, + { + "index": 3, + "amount_msat": 1000000, + "scriptPubKey": "51200978ea47f31ad6561d96ceee14e85192726536c4e1e59d09f217f3b5762b0630" + }, + { + "index": 4, + "amount_msat": 1000000, + "scriptPubKey": "001407905c6189c1ae8aff12566b03f35ff516d17e84" + }, + { + "index": 5, + "amount_msat": 1000000, + "scriptPubKey": "0014d1dc90a7bb3af91ed69e933dc38f555b580fad09" + }, + { + "index": 6, + "amount_msat": 1000000, + "scriptPubKey": "00146a1845bb0ea1f8efa63f00f325641db7350dcd5b" + }, + { + "index": 7, + "amount_msat": 1000000, + "scriptPubKey": "0014dfadaae18d57e4ef50e15b863d9e648bf9af67b1" + } + ] + }, + { + "hash": "f9e2ca6abf9450803ef6a1a75964277dd39b2f35f77acffc3a5978437b421aec", + "rawtx": "02000000000102b6f77750c0aae7faf2aa6e4b38a14671adc8def298a0b89ced09596f002aa5ef0100000000fdffffffc54a87b4517d7daf033a11b21f2ccf114304487c4189599816f3e243569c600c0100000000fdffffff0240420f0000000000220020b41521751a8eb257315f73a531763071cc39b7cece470f630fd5149fe7b7057ac594eb0b00000000225120a5410daebf4fc3cba618a840af497fbec4c3a084534f2b7b6a7d30bf35f8f5660140528e20b424e1ac7f2ae067093552f424dade1321ec396a7d382866be7bba9ba5a3faf375dc9b39d676d8adab67c30df596bca1412c3871bb9538fc00265c35bf02473044022003304f0d559771fe9d4b06dccecacbef7eaef5a97c7618b567de1ba53e7146ef02207f7138b9cd7fca8ea13498e6fed96b225873131c45b5c46e4e78c7fe45d5b3e9012102c8a8f25ed135cd671c88bd4e407bb3746678cfacbcf65ce89f8efc2aa0abe5359b000000", + "blockheight": 156, + "txindex": 1, + "locktime": 155, + "version": 2, + "inputs": [ + { + "txid": "efa52a006f5909ed9cb8a098f2dec8ad7146a1384b6eaaf2fae7aac05077f7b6", + "index": 1, + "sequence": 4294967293 + }, + { + "txid": "0c609c5643e2f316985989417c48044311cf2c1fb2113a03af7d7d51b4874ac5", + "index": 1, + "sequence": 4294967293 + } + ], + "outputs": [ + { + "index": 0, + "amount_msat": 1000000000, + "scriptPubKey": "0020b41521751a8eb257315f73a531763071cc39b7cece470f630fd5149fe7b7057a" + }, + { + "index": 1, + "amount_msat": 199988421000, + "scriptPubKey": "5120a5410daebf4fc3cba618a840af497fbec4c3a084534f2b7b6a7d30bf35f8f566" + } + ] + }, + { + "hash": "a5e7471ae03d284673ac3189164522587568bf47179e94a90cc0f043cff39bb5", + "rawtx": "02000000000101ec1a427b4378593afccf7af7352f9bd37d276459a7a1f63e805094bf6acae2f90000000000ffffffff0176390f0000000000225120ebc29bf1526b5c18e4d14bdc0c2425e683d81ea0036c6834b98f5b04cdcb9d95040047304402206bb171775ea5334c9e604505eccd5010025e0bbfd65186e2e4f976a15dbce329022072d784a17bb46a4439b90a45d18f8cf2c28d80ff4388f4fe94740919cc6db2cf014730440220719782d4dba4b5024b5d35d7d590f84df275b1b921ec77e71cd98e55d677d702022042c25f4975c8eece9e5d0a820eed0a91a87fa063f9f584316c9838542a3f850001475221030c3fc0add8628ae8acc7befa2b833c455db3868be6de7add97b945a1e506f7fe21036c8bee77fa3632abc7a5df76cf029650eea826896024a70eaa64cac8a0131c1c52ae00000000", + "blockheight": 156, + "txindex": 5, + "locktime": 0, + "version": 2, + "inputs": [ + { + "txid": "f9e2ca6abf9450803ef6a1a75964277dd39b2f35f77acffc3a5978437b421aec", + "index": 0, + "sequence": 4294967295 + } + ], + "outputs": [ + { + "index": 0, + "amount_msat": 997750000, + "scriptPubKey": "5120ebc29bf1526b5c18e4d14bdc0c2425e683d81ea0036c6834b98f5b04cdcb9d95" + } + ] + }, + { + "hash": "34e8ce026401c205cf74556beb2c11b9d9243fd4d74902127e739c11d865021b", + "rawtx": "020000000001080ca195cdd7b29ead524961e05456441fa5e2c97c8262739ecdb6d2228b29353b0000000000fdffffff0ca195cdd7b29ead524961e05456441fa5e2c97c8262739ecdb6d2228b29353b0200000000fdffffff1b5909e9c919db035da2aa438471ee7937308aa05d32f786273bde7d3c27d7590000000000fdffffff1b5909e9c919db035da2aa438471ee7937308aa05d32f786273bde7d3c27d7590200000000fdffffff1b5909e9c919db035da2aa438471ee7937308aa05d32f786273bde7d3c27d7590700000000fdffffff9a8c6de235929d0b3850ec06560bf60d252718a1aadfe8e0718218af4878d1790100000000fdffffffb17766dac493e0b215e2255ae236477dd453cad94560d7f418face046fd6c3f80100000000fdffffffd7dbbaa1e20d2efed3c4241e554bd38be7b87b97dab1024d7880b72a862d584c0000000000fdffffff04204e000000000000220020369444aad3ac8c5452be625479f761587c42fbf66fecf644447daabc73c498223075000000000000220020d90c23ede7b77f89f4cae93da9326ba176d158a0b65faeaede5684c3c0f7c8392808440700000000220020f7bbe8f915381b4b9b1ca14cccbfd156eea19888550d01a5014f977e98c7fc8ca86100000000000022512018ece00b736f9ed77ed3a87426643c242223e3d6116a4cd6d90946f73de2ce71024730440220426dde8016515f8f897454cc37361219c5414f5e21cf91598047f12e3ad2fb8102202602d18876f20eb58a593b93e782b820cb68347d7beba839113a3a1d5b31a9400121028a599168d3c97debc71bc66e6270ecf054f300d888309ba05471a482175dd93002473044022069681451f9469ec6e7b4a62db78999e9ded9b2eb1682b0d90895f0fe67cedb8e02204d80c50638d043a9a8cdb34259774e7b9a474047c178b61ec4ded0ae186c1602012102272a9a25f1ffed52fab04a2cc88aeab135b53723856a8f1481c26417f88a922e0247304402204a2f0bb65bfafd85a6ffeaf9e75ec9dbe20f5d9bc50d8d98126942c00951aa2802203877c0326e64585cf4c767e57398eaff58a279542e9fd16a223d1f507d1bfdbb01210267f4468ffafe6f919ae871f57f09690467f494e83e0358dc64d10472f9072f4c01405cac3f8d65efa45a8e253c40cdfe97d8bc182e8ea04de2ecdd3fe488c6a9fe6508cf336ac742417a80ca805f069e088d4e8ad79575cf5d8dade454f69645ce6b0247304402206a5d75ef2bedb452594a97c52277b8532725cf5804b62669872d97c0cb499c03022011aff97f2c87ce8d99eda0f9a2f73f2668a82aea6e0acfe3b7b01893f05fc403012103d034f788f410c2ec2d89d161df3c3715f965248aa53eace463d10eca443eb1f20247304402203605a17cf717f57d125b999fac579064cb576c214a2204a4b8a106695607b4bd02201e41c14bcc19af1083d7a716a1aa33fe8b23b3b07eda3d30074146b4146834f60121029da47016812598be384212ce15793496c0ec2176a87e81c6432dae964f87c9870247304402201f4bb570df0095b4c5f1c35c5db787e9e2d289ae3cc9d0b75decbc7bb41e25c00220789c3d68621f25bf1fa30e72652591354c71aa8397fd1fa18442a0ffa037900f01210328cc8fc978e209f1695fa5b5655061db1aab2311b524176945bf1015ef2d4b89014024629ca4144d02f2f414e30644b1b7800d19d07ccf88e6c25cc3c5bd208f16c71c0deda1230d7df241f63a25b4e32a3036ff20168564e24b816693dda22b44d89c000000", + "blockheight": 157, + "txindex": 1, + "locktime": 156, + "version": 2, + "inputs": [ + { + "txid": "3b35298b22d2b6cd9e7362827cc9e2a51f445654e0614952ad9eb2d7cd95a10c", + "index": 0, + "sequence": 4294967293 + }, + { + "txid": "3b35298b22d2b6cd9e7362827cc9e2a51f445654e0614952ad9eb2d7cd95a10c", + "index": 2, + "sequence": 4294967293 + }, + { + "txid": "59d7273c7dde3b2786f7325da08a303779ee718443aaa25d03db19c9e909591b", + "index": 0, + "sequence": 4294967293 + }, + { + "txid": "59d7273c7dde3b2786f7325da08a303779ee718443aaa25d03db19c9e909591b", + "index": 2, + "sequence": 4294967293 + }, + { + "txid": "59d7273c7dde3b2786f7325da08a303779ee718443aaa25d03db19c9e909591b", + "index": 7, + "sequence": 4294967293 + }, + { + "txid": "79d17848af188271e0e8dfaaa11827250df60b5606ec50380b9d9235e26d8c9a", + "index": 1, + "sequence": 4294967293 + }, + { + "txid": "f8c3d66f04cefa18f4d76045d9ca53d47d4736e25a25e215b2e093c4da6677b1", + "index": 1, + "sequence": 4294967293 + }, + { + "txid": "4c582d862ab780784d02b1da977bb8e78bd34b551e24c4d3fe2e0de2a1badbd7", + "index": 0, + "sequence": 4294967293 + } + ], + "outputs": [ + { + "index": 0, + "amount_msat": 20000000, + "scriptPubKey": "0020369444aad3ac8c5452be625479f761587c42fbf66fecf644447daabc73c49822" + }, + { + "index": 1, + "amount_msat": 30000000, + "scriptPubKey": "0020d90c23ede7b77f89f4cae93da9326ba176d158a0b65faeaede5684c3c0f7c839" }, { "index": 2, - "amount_msat": 201998902200, - "scriptPubKey": "scriptpubkey02020202020202020202020202020202020202020202020202020202" + "amount_msat": 121899048000, + "scriptPubKey": "0020f7bbe8f915381b4b9b1ca14cccbfd156eea19888550d01a5014f977e98c7fc8c" + }, + { + "index": 3, + "amount_msat": 25000000, + "scriptPubKey": "512018ece00b736f9ed77ed3a87426643c242223e3d6116a4cd6d90946f73de2ce71" + } + ] + }, + { + "hash": "bb23aa273032a5f997312034dcc92b09ba6ff343ab8b1fa76796710db0177b79", + "rawtx": "020000000001011b0265d8119c737e120249d7d43f24d9b9112ceb6b5574cf05c2016402cee8340000000000ffffffff0156450000000000002251208de5a3aa566cb6dc9037206bc73530ce6d7d8ea2dd1c488aec5862cb8b8e860e04004730440220173a7f31ffc8ff5925c7b5248078acfcd484bb83ce0364ab18cca92dbe3be06202201516c8cb93e17d653c2bd66d02cb82635cb0ff12779c7062b5514f0ea65db3ea01473044022061f9b595763ffffd1c33e7fc3004fc8054031eedb45fe11941592d0f854dbfb5022043660a53fe00e56b93bd284e24337fff4501d06108b66cf07efd3cb13576dae30147522102f52c0210d5b05d38a0c01f316be27ad07fadb10015f497accfa78b7c3cdb5cb621038f2a5514a8fd540d306215ea47cded68140a4d1346f0b8dc35b4261701f7ec6952ae00000000", + "blockheight": 157, + "txindex": 4, + "locktime": 0, + "version": 2, + "inputs": [ + { + "txid": "34e8ce026401c205cf74556beb2c11b9d9243fd4d74902127e739c11d865021b", + "index": 0, + "sequence": 4294967295 + } + ], + "outputs": [ + { + "index": 0, + "amount_msat": 17750000, + "scriptPubKey": "51208de5a3aa566cb6dc9037206bc73530ce6d7d8ea2dd1c488aec5862cb8b8e860e" } ] } @@ -26226,15 +28826,15 @@ "params": { "destinations": [ { - "id": "nodeid030303030303030303030303030303030303030303030303030303030303@127.0.0.1:19736", + "id": "035d2b1192dfba134e10e540875d366ebc8bc353d5aa766b80c090b39c3a5d885d@127.0.0.1:30005", "amount": "20000sat" }, { - "id": "nodeid040404040404040404040404040404040404040404040404040404040404@127.0.0.1:19737", + "id": "0382ce59ebf18be7d84677c2e35f23294b9992ceca95491fcf8a56c6cb2d9de199@127.0.0.1:30007", "amount": "0.0003btc" }, { - "id": "nodeid050505050505050505050505050505050505050505050505050505050505@127.0.0.1:19738", + "id": "032cf15d1ad9c4a08d26eab1918f732d8ef8fdc6abb9640bf3db174372c491304e@127.0.0.1:30009", "amount": "all" } ], @@ -26243,12 +28843,12 @@ } }, "response": { - "tx": "02000000000101multif50000500005000050000500005000050000500005000050000500005000050000500005000050000500005000050000500005000050000500005000050000500005000050000500005000050000500005000050000500005000050000500005000050000500005000050000500005000050000500005000050000500005000050000500005000050000500005000050000500005000050000500005000050000500005000050000500005000050000500005000050000500005000050000500005000050000500005000050000500005000050000500005000050000500005000050000500005000050000500005000050000500005000050000", - "txid": "channeltxid01050000500005000050000500005000050000500005000050000", + "tx": "020000000001080ca195cdd7b29ead524961e05456441fa5e2c97c8262739ecdb6d2228b29353b0000000000fdffffff0ca195cdd7b29ead524961e05456441fa5e2c97c8262739ecdb6d2228b29353b0200000000fdffffff1b5909e9c919db035da2aa438471ee7937308aa05d32f786273bde7d3c27d7590000000000fdffffff1b5909e9c919db035da2aa438471ee7937308aa05d32f786273bde7d3c27d7590200000000fdffffff1b5909e9c919db035da2aa438471ee7937308aa05d32f786273bde7d3c27d7590700000000fdffffff9a8c6de235929d0b3850ec06560bf60d252718a1aadfe8e0718218af4878d1790100000000fdffffffb17766dac493e0b215e2255ae236477dd453cad94560d7f418face046fd6c3f80100000000fdffffffd7dbbaa1e20d2efed3c4241e554bd38be7b87b97dab1024d7880b72a862d584c0000000000fdffffff04204e000000000000220020369444aad3ac8c5452be625479f761587c42fbf66fecf644447daabc73c498223075000000000000220020d90c23ede7b77f89f4cae93da9326ba176d158a0b65faeaede5684c3c0f7c8392808440700000000220020f7bbe8f915381b4b9b1ca14cccbfd156eea19888550d01a5014f977e98c7fc8ca86100000000000022512018ece00b736f9ed77ed3a87426643c242223e3d6116a4cd6d90946f73de2ce71024730440220426dde8016515f8f897454cc37361219c5414f5e21cf91598047f12e3ad2fb8102202602d18876f20eb58a593b93e782b820cb68347d7beba839113a3a1d5b31a9400121028a599168d3c97debc71bc66e6270ecf054f300d888309ba05471a482175dd93002473044022069681451f9469ec6e7b4a62db78999e9ded9b2eb1682b0d90895f0fe67cedb8e02204d80c50638d043a9a8cdb34259774e7b9a474047c178b61ec4ded0ae186c1602012102272a9a25f1ffed52fab04a2cc88aeab135b53723856a8f1481c26417f88a922e0247304402204a2f0bb65bfafd85a6ffeaf9e75ec9dbe20f5d9bc50d8d98126942c00951aa2802203877c0326e64585cf4c767e57398eaff58a279542e9fd16a223d1f507d1bfdbb01210267f4468ffafe6f919ae871f57f09690467f494e83e0358dc64d10472f9072f4c01405cac3f8d65efa45a8e253c40cdfe97d8bc182e8ea04de2ecdd3fe488c6a9fe6508cf336ac742417a80ca805f069e088d4e8ad79575cf5d8dade454f69645ce6b0247304402206a5d75ef2bedb452594a97c52277b8532725cf5804b62669872d97c0cb499c03022011aff97f2c87ce8d99eda0f9a2f73f2668a82aea6e0acfe3b7b01893f05fc403012103d034f788f410c2ec2d89d161df3c3715f965248aa53eace463d10eca443eb1f20247304402203605a17cf717f57d125b999fac579064cb576c214a2204a4b8a106695607b4bd02201e41c14bcc19af1083d7a716a1aa33fe8b23b3b07eda3d30074146b4146834f60121029da47016812598be384212ce15793496c0ec2176a87e81c6432dae964f87c9870247304402201f4bb570df0095b4c5f1c35c5db787e9e2d289ae3cc9d0b75decbc7bb41e25c00220789c3d68621f25bf1fa30e72652591354c71aa8397fd1fa18442a0ffa037900f01210328cc8fc978e209f1695fa5b5655061db1aab2311b524176945bf1015ef2d4b89014024629ca4144d02f2f414e30644b1b7800d19d07ccf88e6c25cc3c5bd208f16c71c0deda1230d7df241f63a25b4e32a3036ff20168564e24b816693dda22b44d89c000000", + "txid": "34e8ce026401c205cf74556beb2c11b9d9243fd4d74902127e739c11d865021b", "channel_ids": [ { - "id": "nodeid030303030303030303030303030303030303030303030303030303030303", - "channel_id": "channelid1100011000110001100011000110001100011000110001100011000", + "id": "035d2b1192dfba134e10e540875d366ebc8bc353d5aa766b80c090b39c3a5d885d", + "channel_id": "a9c39915cfa357205e3597ec62d92c541a2be7f44b9c6292e126aeddb11bf97e", "channel_type": { "bits": [ 12, @@ -26259,11 +28859,11 @@ "anchors/even" ] }, - "outnum": 1 + "outnum": 0 }, { - "id": "nodeid040404040404040404040404040404040404040404040404040404040404", - "channel_id": "channelid1200012000120001200012000120001200012000120001200012000", + "id": "0382ce59ebf18be7d84677c2e35f23294b9992ceca95491fcf8a56c6cb2d9de199", + "channel_id": "a4a379248e49d207cc984646e632e1a31105a85708b9d6d961a5018fdd489f5a", "channel_type": { "bits": [ 12, @@ -26277,8 +28877,8 @@ "outnum": 1 }, { - "id": "nodeid050505050505050505050505050505050505050505050505050505050505", - "channel_id": "channelid1300013000130001300013000130001300013000130001300013000", + "id": "032cf15d1ad9c4a08d26eab1918f732d8ef8fdc6abb9640bf3db174372c491304e", + "channel_id": "e13472d6512413eb1bf03b9a0bb391d0e4152fd337fa6d1014e3de5e131918d9", "channel_type": { "bits": [ 12, @@ -26289,7 +28889,7 @@ "anchors/even" ] }, - "outnum": 1 + "outnum": 2 } ], "failed": [] @@ -26302,15 +28902,15 @@ "params": { "destinations": [ { - "id": "fakenodeid03030303030303030303030303030303030303030303030303030303@127.0.0.1:19736", + "id": "03a389b3a2f7aa6f9f4ccc19f2bd7a2eba83596699e86b715caaaa147fc37f3144@127.0.0.1:30005", "amount": 50000 }, { - "id": "nodeid040404040404040404040404040404040404040404040404040404040404@127.0.0.1:19737", + "id": "0382ce59ebf18be7d84677c2e35f23294b9992ceca95491fcf8a56c6cb2d9de199@127.0.0.1:30007", "amount": 50000 }, { - "id": "nodeid010101010101010101010101010101010101010101010101010101010101@127.0.0.1:19734", + "id": "0266e4598d1d3c415f572a8488830b60f7e744ed9235eb0b1ba93283b315c03518@127.0.0.1:30001", "amount": 50000 } ], @@ -26318,12 +28918,12 @@ } }, "response": { - "tx": "02000000000102multif60000600006000060000600006000060000600006000060000600006000060000600006000060000600006000060000600006000060000600006000060000600006000060000600006000060000600006000060000600006000060000600006000060000600006000060000600006000060000600006000060000600006000060000600006000060000600006000060000600006000060000600006000060000600006000060000600006000060000600006000060000600006000060000600006000060000600006000060000600006000060000600006000060000600006000060000600006000060000600006000060000600006000060000", - "txid": "channeltxid02060000600006000060000600006000060000600006000060000", + "tx": "020000000001021b0265d8119c737e120249d7d43f24d9b9112ceb6b5574cf05c2016402cee8340300000000fdffffff7375f9b47d75c6e3af621018a50fa2c8b9094f08f4aae0873c7f183eb7941ec10000000000fdffffff0250c30000000000002200209bd3269fda069b7ee0584622d458bb437635b3a179265dee3843ef18f42f35c6ed84430700000000225120def24e878a66b695c4d5b414b42b7ce94471dac985bb0afb0367e8bbb92c5a5201403801494402ede78cdce356dbcef09aec5e2f27284d899a7f580392c4af28ec6de04447e5cac3549b3648a3a55e2e5eefeba4fe98d23d3a84f1e7c61265bf5e5e01406ec83566298057fd8b0d18e0056148e33ea2846e83086bc1d409191b0820c51a9f3e6e144d4eac7f2e1bea9ba1f60ba2cc43b0e1b0de3dff293f6ad577275d709d000000", + "txid": "a19c811497b26bb270b9a80fb75ceda91c12049faf4b83facfb12e7738a1eadf", "channel_ids": [ { - "id": "nodeid040404040404040404040404040404040404040404040404040404040404", - "channel_id": "channelid1520015200152001520015200152001520015200152001520015200", + "id": "0382ce59ebf18be7d84677c2e35f23294b9992ceca95491fcf8a56c6cb2d9de199", + "channel_id": "09eb55872cd9039ecd08281af756e23b15aad4129fd6a9bcd71b472114ebf43a", "channel_type": { "bits": [ 12, @@ -26334,7 +28934,7 @@ "anchors/even" ] }, - "outnum": 1 + "outnum": 0 } ], "failed": [ @@ -26343,11 +28943,11 @@ "method": "connect", "error": { "code": 401, - "message": "All addresses failed: 127.0.0.1:19736: Cryptographic handshake: peer closed connection (wrong key?). " + "message": "All addresses failed: 127.0.0.1:30005: Cryptographic handshake: peer closed connection (wrong key?). " } }, { - "id": "nodeid010101010101010101010101010101010101010101010101010101010101", + "id": "0266e4598d1d3c415f572a8488830b60f7e744ed9235eb0b1ba93283b315c03518", "method": "connect", "error": { "code": 402, @@ -26465,8 +29065,8 @@ } }, "response": { - "tx": "02000000000155multiw55000550005500055000550005500055000550005500055000550005500055000550005500055000550005500055000550005500055000550005500055000550005500055000550005500055000550005500055000550005500055000550005500055000550005500055000550005500055000550005500055000550005500055000550005500055000550005500055000550005500055000550005500055000550005500055000550005500055000550005500055000550005500055000550005500055000550005500055000550005500055000550005500055000550005500055000550005500055000550005500055000550005500055000", - "txid": "txid5500055000550005500055000550005500055000550005500055000" + "tx": "0200000000010190ee63cdc0e3f2b01c954abef709af77c0d966ca3f45b6b39ab9cfb6546c7a790000000000fdffffff03ae080000000000001600143d43d226bcc27019ade52d7a3dc52a7ac1be28b8f74e080000000000225120875b3dfe08354212207c94733807164505835a44100738a9c27a62bd5deef480050d000000000000160014d55c493983db651e10477455b1d408c31e7e9e310247304402205fad492ec062feca17e59887dabbea8100f2e4ec7fcfe5abeb7f88457c4cf4a10220445a0b8813843f05c1c87571e25dfebe6c54cb91dd80560e383b0de90d78b788012103a26fcdff9cd9ce50aefbe3efcb26788cee5808e312d1d6d35603a368ded1d68c2c000000", + "txid": "3b35298b22d2b6cd9e7362827cc9e2a51f445654e0614952ad9eb2d7cd95a10c" } }, { @@ -26500,8 +29100,8 @@ } }, "response": { - "tx": "02000000000155multiw56000560005600056000560005600056000560005600056000560005600056000560005600056000560005600056000560005600056000560005600056000560005600056000560005600056000560005600056000560005600056000560005600056000560005600056000560005600056000560005600056000560005600056000560005600056000560005600056000560005600056000560005600056000560005600056000560005600056000560005600056000560005600056000560005600056000560005600056000560005600056000560005600056000560005600056000560005600056000560005600056000560005600056000", - "txid": "txid5600056000560005600056000560005600056000560005600056000" + "tx": "0200000000010190ee63cdc0e3f2b01c954abef709af77c0d966ca3f45b6b39ab9cfb6546c7a790100000000fdffffff08e803000000000000160014a43b821a9790f880e113a395b717a0f354b9d9c6e687150000000000225120327b99fbacbcc3bbcf9489bf7f3dac2642d933685754f558586afbacd17f9c26e8030000000000002251202f843ba0c8de9d0c41a63a25d4cab22032be4fabf24931dab82214316be218cae8030000000000002251200978ea47f31ad6561d96ceee14e85192726536c4e1e59d09f217f3b5762b0630e80300000000000016001407905c6189c1ae8aff12566b03f35ff516d17e84e803000000000000160014d1dc90a7bb3af91ed69e933dc38f555b580fad09e8030000000000001600146a1845bb0ea1f8efa63f00f325641db7350dcd5be803000000000000160014dfadaae18d57e4ef50e15b863d9e648bf9af67b10140eeb15b713763a95f40db82138b6f02a8ae8e49aad37ab3647d943a27713069f87376087de9ba49b7a477581f02cf4b4de25a468ee611b7a1ca2e71c3b1e179748c000000", + "txid": "59d7273c7dde3b2786f7325da08a303779ee718443aaa25d03db19c9e909591b" } } ] @@ -26889,10 +29489,10 @@ } }, "response": { - "offer_id": "offeridl21000002100000210000021000002100000210000021000002100000", + "offer_id": "dca9774ba2925b48c42eb12e599c09389d9d80d44445c4d0c944556c7228746e", "active": true, "single_use": false, - "bolt12": "lno1qgsq000bolt210002100021000210002100021000210002100021000210002100021000210002100021000210002100021000210002100021000210002100021000", + "bolt12": "lno1qgsqvgnwgcg35z6ee2h3yczraddm72xrfua9uve2rlrm9deu7xyfzrcgqgn3qzs2ge5hx6pqwdskcefpzcssytfzxcs2xkdy0lml0tzy0jzugmyj8kjn8zfzrgq9fsgurc72x82e", "used": false, "created": true } @@ -26908,10 +29508,10 @@ } }, "response": { - "offer_id": "offeridl22000002200000220000022000002200000220000022000002200000", + "offer_id": "f901018768e13ea2da95f437749e24d22d47b2a6ea3030ef66ae0281df49d94b", "active": true, "single_use": false, - "bolt12": "lno1qgsq000bolt220002200022000220002200022000220002200022000220002200022000220002200022000220002200022000220002200022000220002200022000", + "bolt12": "lno1qgsqvgnwgcg35z6ee2h3yczraddm72xrfua9uve2rlrm9deu7xyfzrcgqv85ysq2qepk7enxv4j3gqg2zcssytfzxcs2xkdy0lml0tzy0jzugmyj8kjn8zfzrgq9fsgurc72x82e", "used": false, "created": true } @@ -27001,11 +29601,11 @@ "id": "example:openchannel_abort#1", "method": "openchannel_abort", "params": { - "channel_id": "channelid0111200111200111200111200111200111200111200111200111200" + "channel_id": "b020c1c6818daf024954c9ee578caad058cbcae7dd75b2c4d38b8f6f81901ff5" } }, "response": { - "channel_id": "channelid0111200111200111200111200111200111200111200111200111200", + "channel_id": "b020c1c6818daf024954c9ee578caad058cbcae7dd75b2c4d38b8f6f81901ff5", "channel_canceled": false, "reason": "Abort requested" } @@ -27193,13 +29793,13 @@ "params": [ "b020c1c6818daf024954c9ee578caad058cbcae7dd75b2c4d38b8f6f81901ff5", 1000000, - "cHNidP8BAgQCAAAAAQMEbwAAAAEEAQpsbt510000510000510000510000510000510000510000510000510000510000510000510000510000510000510000510000510000510000510000510000510000510000510000510000510000510000510000510000510000510000510000510000510000510000510000510000510000510000510000510000", + "cHNidP8BAF4CAAAAAfFzeDEZi+pD6TLIJPXz4vliVqLRobrIby/0l1ZyiZ2dAAAAAAD9////AUFZ3AsAAAAAIlEgO+E35aPNS3YQRaiMByjTJDUYNvBO1Z39o3m42EZGUreaAAAAAAEAcQIAAAAB+wnUg4jUSt7ZSoGLTSFJkEiVi4BORL5XG9PScQI1uHoBAAAAAP3///8CAMLrCwAAAAAWABQDz+yHFeH0BKNuwBHkI4+GMp+QnAYT9NIAAAAAFgAUIowMzAOV9xHOQM4YHS2bZ5k6oe2HAAAAAQEfAMLrCwAAAAAWABQDz+yHFeH0BKNuwBHkI4+GMp+QnAAA", "15000perkw" ] }, "response": { - "channel_id": "channelid0111200111200111200111200111200111200111200111200111200", - "psbt": "cHNidP8BAgQCAAAAAQMEbwAAAAEEAQpsbt810000810000810000810000810000810000810000810000810000810000810000810000810000810000810000810000810000810000810000810000810000810000810000810000810000810000810000810000810000810000810000810000810000810000810000810000810000810000810000810000", + "channel_id": "b020c1c6818daf024954c9ee578caad058cbcae7dd75b2c4d38b8f6f81901ff5", + "psbt": "cHNidP8BAgQCAAAAAQMEmgAAAAEEAQEBBQECAQYBAwH7BAIAAAAAAQBxAgAAAAH7CdSDiNRK3tlKgYtNIUmQSJWLgE5Evlcb09JxAjW4egEAAAAA/f///wIAwusLAAAAABYAFAPP7IcV4fQEo27AEeQjj4Yyn5CcBhP00gAAAAAWABQijAzMA5X3Ec5AzhgdLZtnmTqh7YcAAAABAR8AwusLAAAAABYAFAPP7IcV4fQEo27AEeQjj4Yyn5CcAQ4g8XN4MRmL6kPpMsgk9fPi+WJWotGhushvL/SXVnKJnZ0BDwQAAAAAARAE/f///wz8CWxpZ2h0bmluZwEICu/Rzf4eie4AAQMIQVncCwAAAAABBCJRIDvhN+WjzUt2EEWojAco0yQ1GDbwTtWd/aN5uNhGRlK3DPwJbGlnaHRuaW5nAQgM79HN/h6J7gABAwhAQg8AAAAAAAEEIgAgybxcBjyu+/emx4FEB7Vie0+BqLVuy+kyxoL5y6wNGd8M/AlsaWdodG5pbmcBCHcug9YGu7NYAA==", "channel_type": { "bits": [ 12, @@ -27211,7 +29811,7 @@ ] }, "commitments_secured": false, - "funding_serial": 17725655605188030000, + "funding_serial": 8587946494701319000, "requires_confirmed_inputs": false } }, @@ -27220,15 +29820,15 @@ "id": "example:openchannel_bump#2", "method": "openchannel_bump", "params": { - "channel_id": "channelid0111200111200111200111200111200111200111200111200111200", + "channel_id": "b020c1c6818daf024954c9ee578caad058cbcae7dd75b2c4d38b8f6f81901ff5", "amount": 1000000, - "initialpsbt": "cHNidP8BAgQCAAAAAQMEbwAAAAEEAQpsbt510000510000510000510000510000510000510000510000510000510000510000510000510000510000510000510000510000510000510000510000510000510000510000510000510000510000510000510000510000510000510000510000510000510000510000510000510000510000510000510000", + "initialpsbt": "cHNidP8BAF4CAAAAAfFzeDEZi+pD6TLIJPXz4vliVqLRobrIby/0l1ZyiZ2dAAAAAAD9////AUFZ3AsAAAAAIlEgO+E35aPNS3YQRaiMByjTJDUYNvBO1Z39o3m42EZGUreaAAAAAAEAcQIAAAAB+wnUg4jUSt7ZSoGLTSFJkEiVi4BORL5XG9PScQI1uHoBAAAAAP3///8CAMLrCwAAAAAWABQDz+yHFeH0BKNuwBHkI4+GMp+QnAYT9NIAAAAAFgAUIowMzAOV9xHOQM4YHS2bZ5k6oe2HAAAAAQEfAMLrCwAAAAAWABQDz+yHFeH0BKNuwBHkI4+GMp+QnAAA", "funding_feerate": "15000perkw" } }, "response": { - "channel_id": "channelid0111200111200111200111200111200111200111200111200111200", - "psbt": "cHNidP8BAgQCAAAAAQMEbwAAAAEEAQpsbt910000910000910000910000910000910000910000910000910000910000910000910000910000910000910000910000910000910000910000910000910000910000910000910000910000910000910000910000910000910000910000910000910000910000910000910000910000910000910000910000", + "channel_id": "b020c1c6818daf024954c9ee578caad058cbcae7dd75b2c4d38b8f6f81901ff5", + "psbt": "cHNidP8BAgQCAAAAAQMEmgAAAAEEAQEBBQECAQYBAwH7BAIAAAAAAQBxAgAAAAH7CdSDiNRK3tlKgYtNIUmQSJWLgE5Evlcb09JxAjW4egEAAAAA/f///wIAwusLAAAAABYAFAPP7IcV4fQEo27AEeQjj4Yyn5CcBhP00gAAAAAWABQijAzMA5X3Ec5AzhgdLZtnmTqh7YcAAAABAR8AwusLAAAAABYAFAPP7IcV4fQEo27AEeQjj4Yyn5CcAQ4g8XN4MRmL6kPpMsgk9fPi+WJWotGhushvL/SXVnKJnZ0BDwQAAAAAARAE/f///wz8CWxpZ2h0bmluZwEIEu/Rzf4eie4AAQMIQVncCwAAAAABBCJRIDvhN+WjzUt2EEWojAco0yQ1GDbwTtWd/aN5uNhGRlK3DPwJbGlnaHRuaW5nAQgU79HN/h6J7gABAwhAQg8AAAAAAAEEIgAgybxcBjyu+/emx4FEB7Vie0+BqLVuy+kyxoL5y6wNGd8M/AlsaWdodG5pbmcBCJlh/FQRnSXyAA==", "channel_type": { "bits": [ 12, @@ -27240,7 +29840,7 @@ ] }, "commitments_secured": false, - "funding_serial": 17725655605188040000, + "funding_serial": 11052392398546871794, "requires_confirmed_inputs": false } }, @@ -27251,13 +29851,13 @@ "params": [ "b020c1c6818daf024954c9ee578caad058cbcae7dd75b2c4d38b8f6f81901ff5", 2000000, - "cHNidP8BAgQCAAAAAQMEbwAAAAEEAQpsbt520000520000520000520000520000520000520000520000520000520000520000520000520000520000520000520000520000520000520000520000520000520000520000520000520000520000520000520000520000520000520000520000520000520000520000520000520000520000520000520000", + "cHNidP8BAF4CAAAAAfFzeDEZi+pD6TLIJPXz4vliVqLRobrIby/0l1ZyiZ2dAAAAAAD9////AWINzQsAAAAAIlEgyRg+3pEh88b9FJiCLEenYCcyJ2ackJUIhDusW72BP2iaAAAAAAEAcQIAAAAB+wnUg4jUSt7ZSoGLTSFJkEiVi4BORL5XG9PScQI1uHoBAAAAAP3///8CAMLrCwAAAAAWABQDz+yHFeH0BKNuwBHkI4+GMp+QnAYT9NIAAAAAFgAUIowMzAOV9xHOQM4YHS2bZ5k6oe2HAAAAAQEfAMLrCwAAAAAWABQDz+yHFeH0BKNuwBHkI4+GMp+QnAAA", "18750perkw" ] }, "response": { - "channel_id": "channelid0111200111200111200111200111200111200111200111200111200", - "psbt": "cHNidP8BAgQCAAAAAQMEbwAAAAEEAQpsbt101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000", + "channel_id": "b020c1c6818daf024954c9ee578caad058cbcae7dd75b2c4d38b8f6f81901ff5", + "psbt": "cHNidP8BAgQCAAAAAQMEmgAAAAEEAQEBBQECAQYBAwH7BAIAAAAAAQBxAgAAAAH7CdSDiNRK3tlKgYtNIUmQSJWLgE5Evlcb09JxAjW4egEAAAAA/f///wIAwusLAAAAABYAFAPP7IcV4fQEo27AEeQjj4Yyn5CcBhP00gAAAAAWABQijAzMA5X3Ec5AzhgdLZtnmTqh7YcAAAABAR8AwusLAAAAABYAFAPP7IcV4fQEo27AEeQjj4Yyn5CcAQ4g8XN4MRmL6kPpMsgk9fPi+WJWotGhushvL/SXVnKJnZ0BDwQAAAAAARAE/f///wz8CWxpZ2h0bmluZwEIGu/Rzf4eie4AAQMIYg3NCwAAAAABBCJRIMkYPt6RIfPG/RSYgixHp2AnMidmnJCVCIQ7rFu9gT9oDPwJbGlnaHRuaW5nAQgc79HN/h6J7gABAwiAhB4AAAAAAAEEIgAgybxcBjyu+/emx4FEB7Vie0+BqLVuy+kyxoL5y6wNGd8M/AlsaWdodG5pbmcBCJth/FQRnSXyAA==", "channel_type": { "bits": [ 12, @@ -27269,7 +29869,7 @@ ] }, "commitments_secured": false, - "funding_serial": 17725655605188050000, + "funding_serial": 11196507586622727666, "requires_confirmed_inputs": false } } @@ -27496,14 +30096,14 @@ "id": "example:openchannel_init#1", "method": "openchannel_init", "params": { - "id": "nodeid121212121212121212121212121212121212121212121212121212121212", + "id": "03a00f49374e4bb876e766e9305e5fefa86e53dbc89a4f27d794b02f59ca316426", "amount": 1000000, - "initialpsbt": "cHNidP8BAgQCAAAAAQMEbwAAAAEEAQpsbt310000310000310000310000310000310000310000310000310000310000310000310000310000310000310000310000310000310000310000310000310000310000310000310000310000310000310000310000310000310000310000310000310000310000310000310000310000310000310000310000" + "initialpsbt": "cHNidP8BAF4CAAAAARxvUMSNjH7EKMXzxKwycdOSZ64xHQfWS7JFe0pAwIPCAAAAAAD9////AahhAAAAAAAAIlEg+3d9jpNmK0getyg5W+Mp31CPIRDKcJg/mZs/uaVrQ+GbAAAAAAEAiQIAAAAB8XN4MRmL6kPpMsgk9fPi+WJWotGhushvL/SXVnKJnZ0AAAAAAP3///8CYg3NCwAAAAAiUSDJGD7ekSHzxv0UmIIsR6dgJzInZpyQlQiEO6xbvYE/aICEHgAAAAAAIgAgybxcBjyu+/emx4FEB7Vie0+BqLVuy+kyxoL5y6wNGd+aAAAAAQErYg3NCwAAAAAiUSDJGD7ekSHzxv0UmIIsR6dgJzInZpyQlQiEO6xbvYE/aAAA" } }, "response": { "channel_id": "a5be438539f73c018a98a4b9dd557d62430881c56552025b5579d180cc3887ed", - "psbt": "cHNidP8BAgQCAAAAAQMEbwAAAAEEAQpsbt610000610000610000610000610000610000610000610000610000610000610000610000610000610000610000610000610000610000610000610000610000610000610000610000610000610000610000610000610000610000610000610000610000610000610000610000610000610000610000610000", + "psbt": "cHNidP8BAgQCAAAAAQMEmwAAAAEEAQEBBQECAQYBAwH7BAIAAAAAAQCJAgAAAAHxc3gxGYvqQ+kyyCT18+L5Ylai0aG6yG8v9JdWcomdnQAAAAAA/f///wJiDc0LAAAAACJRIMkYPt6RIfPG/RSYgixHp2AnMidmnJCVCIQ7rFu9gT9ogIQeAAAAAAAiACDJvFwGPK7796bHgUQHtWJ7T4GotW7L6TLGgvnLrA0Z35oAAAABAStiDc0LAAAAACJRIMkYPt6RIfPG/RSYgixHp2AnMidmnJCVCIQ7rFu9gT9oAQ4gHG9QxI2MfsQoxfPErDJx05JnrjEdB9ZLskV7SkDAg8IBDwQAAAAAARAE/f///wz8CWxpZ2h0bmluZwEIIu/Rzf4eie4AAQMIqGEAAAAAAAABBCJRIPt3fY6TZitIHrcoOVvjKd9QjyEQynCYP5mbP7mla0PhDPwJbGlnaHRuaW5nAQgk79HN/h6J7gABAwhAQg8AAAAAAAEEIgAgBkixRgS2irzkjzD4bs/Wm7V/PQFNNgUvPR5aBVpSJHoM/AlsaWdodG5pbmcBCJtVC0YlHyOoAA==", "channel_type": { "bits": [ 12, @@ -27515,7 +30115,7 @@ ] }, "commitments_secured": false, - "funding_serial": 17725655605188010000, + "funding_serial": 11192864844797649832, "requires_confirmed_inputs": false } }, @@ -27524,14 +30124,14 @@ "id": "example:openchannel_init#2", "method": "openchannel_init", "params": [ - "nodeid121212121212121212121212121212121212121212121212121212121212", + "03a00f49374e4bb876e766e9305e5fefa86e53dbc89a4f27d794b02f59ca316426", 500000, - "cHNidP8BAgQCAAAAAQMEbwAAAAEEAQpsbt410000410000410000410000410000410000410000410000410000410000410000410000410000410000410000410000410000410000410000410000410000410000410000410000410000410000410000410000410000410000410000410000410000410000410000410000410000410000410000410000" + "cHNidP8BAF4CAAAAARxvUMSNjH7EKMXzxKwycdOSZ64xHQfWS7JFe0pAwIPCAAAAAAD9////AetRxQsAAAAAIlEg21kTTo7K2doCG6F2JqgaDjc1kRCrH7AL08oPVVJhuE+bAAAAAAEAiQIAAAAB8XN4MRmL6kPpMsgk9fPi+WJWotGhushvL/SXVnKJnZ0AAAAAAP3///8CYg3NCwAAAAAiUSDJGD7ekSHzxv0UmIIsR6dgJzInZpyQlQiEO6xbvYE/aICEHgAAAAAAIgAgybxcBjyu+/emx4FEB7Vie0+BqLVuy+kyxoL5y6wNGd+aAAAAAQErYg3NCwAAAAAiUSDJGD7ekSHzxv0UmIIsR6dgJzInZpyQlQiEO6xbvYE/aAAA" ] }, "response": { "channel_id": "b3b2e46371876858784cd1b87ecf406e32d8f98b7a44b7f436d1dca317ce0f1b", - "psbt": "cHNidP8BAgQCAAAAAQMEbwAAAAEEAQpsbt710000710000710000710000710000710000710000710000710000710000710000710000710000710000710000710000710000710000710000710000710000710000710000710000710000710000710000710000710000710000710000710000710000710000710000710000710000710000710000710000", + "psbt": "cHNidP8BAgQCAAAAAQMEmwAAAAEEAQEBBQECAQYBAwH7BAIAAAAAAQCJAgAAAAHxc3gxGYvqQ+kyyCT18+L5Ylai0aG6yG8v9JdWcomdnQAAAAAA/f///wJiDc0LAAAAACJRIMkYPt6RIfPG/RSYgixHp2AnMidmnJCVCIQ7rFu9gT9ogIQeAAAAAAAiACDJvFwGPK7796bHgUQHtWJ7T4GotW7L6TLGgvnLrA0Z35oAAAABAStiDc0LAAAAACJRIMkYPt6RIfPG/RSYgixHp2AnMidmnJCVCIQ7rFu9gT9oAQ4gHG9QxI2MfsQoxfPErDJx05JnrjEdB9ZLskV7SkDAg8IBDwQAAAAAARAE/f///wz8CWxpZ2h0bmluZwEIKu/Rzf4eie4AAQMI61HFCwAAAAABBCJRINtZE06OytnaAhuhdiaoGg43NZEQqx+wC9PKD1VSYbhPDPwJbGlnaHRuaW5nAQgs79HN/h6J7gABAwggoQcAAAAAAAEEIgAgwbQfi9x464yTOq8b2y9CaCVPKAtJ32SfSqtAVGakS8gM/AlsaWdodG5pbmcBCEl4ogWzGZoyAA==", "channel_type": { "bits": [ 12, @@ -27543,7 +30143,7 @@ ] }, "commitments_secured": false, - "funding_serial": 17725655605188020000, + "funding_serial": 5294159507337353778, "requires_confirmed_inputs": false } } @@ -27645,14 +30245,14 @@ "id": "example:openchannel_signed#1", "method": "openchannel_signed", "params": { - "channel_id": "channelid0111200111200111200111200111200111200111200111200111200", - "signed_psbt": "cHNidP8BAgQCAAAAAQMEbwAAAAEEAQpsbt111000111000111000111000111000111000111000111000111000111000111000111000111000111000111000111000111000111000111000111000111000111000111000111000111000111000111000111000111000111000111000111000111000111000111000111000111000111000111000111000" + "channel_id": "b020c1c6818daf024954c9ee578caad058cbcae7dd75b2c4d38b8f6f81901ff5", + "signed_psbt": "cHNidP8BAgQCAAAAAQMEmgAAAAEEAQEBBQECAQYBAwH7BAIAAAAAAQBxAgAAAAH7CdSDiNRK3tlKgYtNIUmQSJWLgE5Evlcb09JxAjW4egEAAAAA/f///wIAwusLAAAAABYAFAPP7IcV4fQEo27AEeQjj4Yyn5CcBhP00gAAAAAWABQijAzMA5X3Ec5AzhgdLZtnmTqh7YcAAAABAR8AwusLAAAAABYAFAPP7IcV4fQEo27AEeQjj4Yyn5CcIgICRz15z0oQ57qDTAJqrEPqGLCn+3Xs2lGEv6+oxGYV9rdHMEQCID20o7OkdrA186bhtl5XxvomAgLw5qTckxZ94vSI8teaAiAIfpvcxym7FktDtx2ApNv/Tgz0EOxLEtpXp8HgO8/pqQEiBgJHPXnPShDnuoNMAmqsQ+oYsKf7dezaUYS/r6jEZhX2twgDz+yHAAAAAAEOIPFzeDEZi+pD6TLIJPXz4vliVqLRobrIby/0l1ZyiZ2dAQ8EAAAAAAEQBP3///8M/AlsaWdodG5pbmcBCBLv0c3+HonuAAEDCEFZ3AsAAAAAAQQiUSA74Tflo81LdhBFqIwHKNMkNRg28E7Vnf2jebjYRkZStyEHE0cioCqqq2UZ2npxQi9Q6DXNZheODM6F4GjHHS3XScEJAG/ctUwEAAAADPwJbGlnaHRuaW5nAQgU79HN/h6J7gABAwhAQg8AAAAAAAEEIgAgybxcBjyu+/emx4FEB7Vie0+BqLVuy+kyxoL5y6wNGd8M/AlsaWdodG5pbmcBCJlh/FQRnSXyAA==" } }, "response": { - "tx": "02000000000101sgpsbt11000110001100011000110001100011000110001100011000110001100011000110001100011000110001100011000110001100011000110001100011000110001100011000110001100011000110001100011000110001100011000110001100011000110001100011000110001100011000110001100011000110001100011000110001100011000110001100011000110001100011000110001100011000110001100011000110001100011000110001100011000110001100011000110001100011000110001100011000110001100011000110001100011000110001100011000110001100011000110001100011000110001100011000", - "txid": "txidocsigned1011000110001100011000110001100011000110001100011000", - "channel_id": "channelid0111200111200111200111200111200111200111200111200111200" + "tx": "02000000000101f1737831198bea43e932c824f5f3e2f96256a2d1a1bac86f2ff4975672899d9d0000000000fdffffff024159dc0b000000002251203be137e5a3cd4b761045a88c0728d324351836f04ed59dfda379b8d8464652b740420f0000000000220020c9bc5c063caefbf7a6c7814407b5627b4f81a8b56ecbe932c682f9cbac0d19df0247304402203db4a3b3a476b035f3a6e1b65e57c6fa260202f0e6a4dc93167de2f488f2d79a0220087e9bdcc729bb164b43b71d80a4dbff4e0cf410ec4b12da57a7c1e03bcfe9a9012102473d79cf4a10e7ba834c026aac43ea18b0a7fb75ecda5184bfafa8c46615f6b79a000000", + "txid": "96239136e3ac09f93976cc24142edb8f40139b1d5f50b19263649de5d8433962", + "channel_id": "b020c1c6818daf024954c9ee578caad058cbcae7dd75b2c4d38b8f6f81901ff5" } }, { @@ -27661,13 +30261,13 @@ "method": "openchannel_signed", "params": [ "b020c1c6818daf024954c9ee578caad058cbcae7dd75b2c4d38b8f6f81901ff5", - "cHNidP8BAgQCAAAAAQMEbwAAAAEEAQpsbt121000121000121000121000121000121000121000121000121000121000121000121000121000121000121000121000121000121000121000121000121000121000121000121000121000121000121000121000121000121000121000121000121000121000121000121000121000121000121000121000" + "cHNidP8BAgQCAAAAAQMEmgAAAAEEAQEBBQECAQYBAwH7BAIAAAAAAQBxAgAAAAH7CdSDiNRK3tlKgYtNIUmQSJWLgE5Evlcb09JxAjW4egEAAAAA/f///wIAwusLAAAAABYAFAPP7IcV4fQEo27AEeQjj4Yyn5CcBhP00gAAAAAWABQijAzMA5X3Ec5AzhgdLZtnmTqh7YcAAAABAR8AwusLAAAAABYAFAPP7IcV4fQEo27AEeQjj4Yyn5CcIgICRz15z0oQ57qDTAJqrEPqGLCn+3Xs2lGEv6+oxGYV9rdHMEQCIFl+CUBKJcswA/8DnqzPrYolo0k0uUfRJv60eB4niMmJAiA169wRBmliX5GL7+hqb2OHZ5i81V0lkIJylHfvkn933QEiBgJHPXnPShDnuoNMAmqsQ+oYsKf7dezaUYS/r6jEZhX2twgDz+yHAAAAAAEOIPFzeDEZi+pD6TLIJPXz4vliVqLRobrIby/0l1ZyiZ2dAQ8EAAAAAAEQBP3///8M/AlsaWdodG5pbmcBCBrv0c3+HonuAAEDCGINzQsAAAAAAQQiUSDJGD7ekSHzxv0UmIIsR6dgJzInZpyQlQiEO6xbvYE/aCEHn35PoCbJlSMQ2fFCjyoCQfQi72lK/cajhKIKcycdYWwJABIqDc8FAAAADPwJbGlnaHRuaW5nAQgc79HN/h6J7gABAwiAhB4AAAAAAAEEIgAgybxcBjyu+/emx4FEB7Vie0+BqLVuy+kyxoL5y6wNGd8M/AlsaWdodG5pbmcBCJth/FQRnSXyAA==" ] }, "response": { - "tx": "02000000000101sgpsbt12000120001200012000120001200012000120001200012000120001200012000120001200012000120001200012000120001200012000120001200012000120001200012000120001200012000120001200012000120001200012000120001200012000120001200012000120001200012000120001200012000120001200012000120001200012000120001200012000120001200012000120001200012000120001200012000120001200012000120001200012000120001200012000120001200012000120001200012000120001200012000120001200012000120001200012000120001200012000120001200012000120001200012000", - "txid": "txidocsigned1012000120001200012000120001200012000120001200012000", - "channel_id": "channelid0111200111200111200111200111200111200111200111200111200" + "tx": "02000000000101f1737831198bea43e932c824f5f3e2f96256a2d1a1bac86f2ff4975672899d9d0000000000fdffffff02620dcd0b00000000225120c9183ede9121f3c6fd1498822c47a760273227669c909508843bac5bbd813f6880841e0000000000220020c9bc5c063caefbf7a6c7814407b5627b4f81a8b56ecbe932c682f9cbac0d19df024730440220597e09404a25cb3003ff039eaccfad8a25a34934b947d126feb4781e2788c989022035ebdc110669625f918befe86a6f63876798bcd55d259082729477ef927f77dd012102473d79cf4a10e7ba834c026aac43ea18b0a7fb75ecda5184bfafa8c46615f6b79a000000", + "txid": "c283c0404a7b45b24bd6071d31ae6792d37132acc4f3c528c47e8c8dc4506f1c", + "channel_id": "b020c1c6818daf024954c9ee578caad058cbcae7dd75b2c4d38b8f6f81901ff5" } } ] @@ -27885,13 +30485,13 @@ "id": "example:openchannel_update#1", "method": "openchannel_update", "params": { - "channel_id": "channelid0111200111200111200111200111200111200111200111200111200", - "psbt": "cHNidP8BAgQCAAAAAQMEbwAAAAEEAQpsbt910000910000910000910000910000910000910000910000910000910000910000910000910000910000910000910000910000910000910000910000910000910000910000910000910000910000910000910000910000910000910000910000910000910000910000910000910000910000910000910000" + "channel_id": "b020c1c6818daf024954c9ee578caad058cbcae7dd75b2c4d38b8f6f81901ff5", + "psbt": "cHNidP8BAgQCAAAAAQMEmgAAAAEEAQEBBQECAQYBAwH7BAIAAAAAAQBxAgAAAAH7CdSDiNRK3tlKgYtNIUmQSJWLgE5Evlcb09JxAjW4egEAAAAA/f///wIAwusLAAAAABYAFAPP7IcV4fQEo27AEeQjj4Yyn5CcBhP00gAAAAAWABQijAzMA5X3Ec5AzhgdLZtnmTqh7YcAAAABAR8AwusLAAAAABYAFAPP7IcV4fQEo27AEeQjj4Yyn5CcAQ4g8XN4MRmL6kPpMsgk9fPi+WJWotGhushvL/SXVnKJnZ0BDwQAAAAAARAE/f///wz8CWxpZ2h0bmluZwEIEu/Rzf4eie4AAQMIQVncCwAAAAABBCJRIDvhN+WjzUt2EEWojAco0yQ1GDbwTtWd/aN5uNhGRlK3DPwJbGlnaHRuaW5nAQgU79HN/h6J7gABAwhAQg8AAAAAAAEEIgAgybxcBjyu+/emx4FEB7Vie0+BqLVuy+kyxoL5y6wNGd8M/AlsaWdodG5pbmcBCJlh/FQRnSXyAA==" } }, "response": { - "channel_id": "channelid0111200111200111200111200111200111200111200111200111200", - "psbt": "cHNidP8BAgQCAAAAAQMEbwAAAAEEAQpsbt910000910000910000910000910000910000910000910000910000910000910000910000910000910000910000910000910000910000910000910000910000910000910000910000910000910000910000910000910000910000910000910000910000910000910000910000910000910000910000910000", + "channel_id": "b020c1c6818daf024954c9ee578caad058cbcae7dd75b2c4d38b8f6f81901ff5", + "psbt": "cHNidP8BAgQCAAAAAQMEmgAAAAEEAQEBBQECAQYBAwH7BAIAAAAAAQBxAgAAAAH7CdSDiNRK3tlKgYtNIUmQSJWLgE5Evlcb09JxAjW4egEAAAAA/f///wIAwusLAAAAABYAFAPP7IcV4fQEo27AEeQjj4Yyn5CcBhP00gAAAAAWABQijAzMA5X3Ec5AzhgdLZtnmTqh7YcAAAABAR8AwusLAAAAABYAFAPP7IcV4fQEo27AEeQjj4Yyn5CcAQ4g8XN4MRmL6kPpMsgk9fPi+WJWotGhushvL/SXVnKJnZ0BDwQAAAAAARAE/f///wz8CWxpZ2h0bmluZwEIEu/Rzf4eie4AAQMIQVncCwAAAAABBCJRIDvhN+WjzUt2EEWojAco0yQ1GDbwTtWd/aN5uNhGRlK3DPwJbGlnaHRuaW5nAQgU79HN/h6J7gABAwhAQg8AAAAAAAEEIgAgybxcBjyu+/emx4FEB7Vie0+BqLVuy+kyxoL5y6wNGd8M/AlsaWdodG5pbmcBCJlh/FQRnSXyAA==", "channel_type": { "bits": [ 12, @@ -27913,12 +30513,12 @@ "method": "openchannel_update", "params": [ "b020c1c6818daf024954c9ee578caad058cbcae7dd75b2c4d38b8f6f81901ff5", - "cHNidP8BAgQCAAAAAQMEbwAAAAEEAQpsbt101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000" + "cHNidP8BAgQCAAAAAQMEmgAAAAEEAQEBBQECAQYBAwH7BAIAAAAAAQBxAgAAAAH7CdSDiNRK3tlKgYtNIUmQSJWLgE5Evlcb09JxAjW4egEAAAAA/f///wIAwusLAAAAABYAFAPP7IcV4fQEo27AEeQjj4Yyn5CcBhP00gAAAAAWABQijAzMA5X3Ec5AzhgdLZtnmTqh7YcAAAABAR8AwusLAAAAABYAFAPP7IcV4fQEo27AEeQjj4Yyn5CcAQ4g8XN4MRmL6kPpMsgk9fPi+WJWotGhushvL/SXVnKJnZ0BDwQAAAAAARAE/f///wz8CWxpZ2h0bmluZwEIGu/Rzf4eie4AAQMIYg3NCwAAAAABBCJRIMkYPt6RIfPG/RSYgixHp2AnMidmnJCVCIQ7rFu9gT9oDPwJbGlnaHRuaW5nAQgc79HN/h6J7gABAwiAhB4AAAAAAAEEIgAgybxcBjyu+/emx4FEB7Vie0+BqLVuy+kyxoL5y6wNGd8M/AlsaWdodG5pbmcBCJth/FQRnSXyAA==" ] }, "response": { - "channel_id": "channelid0111200111200111200111200111200111200111200111200111200", - "psbt": "cHNidP8BAgQCAAAAAQMEbwAAAAEEAQpsbt101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000", + "channel_id": "b020c1c6818daf024954c9ee578caad058cbcae7dd75b2c4d38b8f6f81901ff5", + "psbt": "cHNidP8BAgQCAAAAAQMEmgAAAAEEAQEBBQECAQYBAwH7BAIAAAAAAQBxAgAAAAH7CdSDiNRK3tlKgYtNIUmQSJWLgE5Evlcb09JxAjW4egEAAAAA/f///wIAwusLAAAAABYAFAPP7IcV4fQEo27AEeQjj4Yyn5CcBhP00gAAAAAWABQijAzMA5X3Ec5AzhgdLZtnmTqh7YcAAAABAR8AwusLAAAAABYAFAPP7IcV4fQEo27AEeQjj4Yyn5CcAQ4g8XN4MRmL6kPpMsgk9fPi+WJWotGhushvL/SXVnKJnZ0BDwQAAAAAARAE/f///wz8CWxpZ2h0bmluZwEIGu/Rzf4eie4AAQMIYg3NCwAAAAABBCJRIMkYPt6RIfPG/RSYgixHp2AnMidmnJCVCIQ7rFu9gT9oDPwJbGlnaHRuaW5nAQgc79HN/h6J7gABAwiAhB4AAAAAAAEEIgAgybxcBjyu+/emx4FEB7Vie0+BqLVuy+kyxoL5y6wNGd8M/AlsaWdodG5pbmcBCJth/FQRnSXyAA==", "channel_type": { "bits": [ 12, @@ -28279,17 +30879,17 @@ "id": "example:pay#1", "method": "pay", "params": [ - "lnbcrt100n1pnt2bolt11invl032000000000bolt11invl032000000000bolt11invl032000000000bolt11invl032000000000bolt11invl032000000000bolt11invl032000000000bolt11invl032000000000bolt11invl032000000000bolt11invl032000000000bolt11invl032000000000" + "lnbcrt500n1pne035qsp5kk6w4wjl0wudssp0pze5lgkz9hcav6ql523hjxc92knt398y2csqpp54va949c65wepf98heejx7pmjxtqsexghcvehty6urt4l54cl5xssdqcdsenygryv4ekxunfwp6xjmmwxqyjw5qcqp9rzjqgkjyd3q5dv6gllh77kygly9c3kfy0d9xwyjyxsq2nq3c83u5vw4jqqqwqqqqqgqqqqqqqqpqqqqqzsqqc9qxpqysgqgrjzax5dyj6dqqhgrt7t53hrmw4xvjs56kdy450c8jdv53fzf3n4kmersmgydpyyam87jrnu9wrcn78zy6w53zx3lqv45js6sa6rspqqa07y46" ] }, "response": { - "destination": "nodeid030303030303030303030303030303030303030303030303030303030303", - "payment_hash": "paymenthashinvl0320032003200320032003200320032003200320032003200", - "created_at": 1738000000, + "destination": "035d2b1192dfba134e10e540875d366ebc8bc353d5aa766b80c090b39c3a5d885d", + "payment_hash": "ab3a5a971aa3b21494f7ce646f077232c10c9917c33375935c1aebfa571fa1a1", + "created_at": 1738000000.0, "parts": 1, "amount_msat": 50000, "amount_sent_msat": 50001, - "payment_preimage": "paymentpreimagep010101010101010101010101010101010101010101010101", + "payment_preimage": "83ffe698292fbb6083ffe698292fbb6083ffe698292fbb6083ffe698292fbb60", "status": "complete" } }, @@ -28298,17 +30898,17 @@ "id": "example:pay#2", "method": "pay", "params": { - "bolt11": "lnbcrt100n1pnt2bolt11invl030300000000bolt11invl030300000000bolt11invl030300000000bolt11invl030300000000bolt11invl030300000000bolt11invl030300000000bolt11invl030300000000bolt11invl030300000000bolt11invl030300000000bolt11invl030300000000" + "bolt11": "lnbcrt1u1pne035qsp5xl6xj5nrlrwfadkw89p0htfcqlkt0qrnykpc4kh3vlyr69cglv5qpp59v2rfk0xrknvtuf9yd5lf2vwrhwwwg45mvalz42nhpaff5vax5wsdqcdsenxgryv4ekxunfwp6xjmmwxqyjw5qcqp9rzjqgkjyd3q5dv6gllh77kygly9c3kfy0d9xwyjyxsq2nq3c83u5vw4jqqqwqqqqqgqqqqqqqqpqqqqqzsqqc9qxpqysgq04xpv4pju07a2mt3d02rf5u8ptj8h8vy7qxtc74z6y609x8rwrkhvq2elv8v5mrwac42scc70c7nnyu4xrxu9c8wcsync9dd5dnqdfqqrngrdv" } }, "response": { - "destination": "nodeid030303030303030303030303030303030303030303030303030303030303", - "payment_hash": "paymenthashinvl0330033003300330033003300330033003300330033003300", - "created_at": 1738000000, + "destination": "035d2b1192dfba134e10e540875d366ebc8bc353d5aa766b80c090b39c3a5d885d", + "payment_hash": "2b1434d9e61da6c5f1252369f4a98e1ddce722b4db3bf15553b87a94d19d351d", + "created_at": 1738000000.0, "parts": 1, "amount_msat": 100000, "amount_sent_msat": 100000, - "payment_preimage": "paymentpreimagep020202020202020202020202020202020202020202020202", + "payment_preimage": "83ffe698292fbb6183ffe698292fbb6183ffe698292fbb6183ffe698292fbb61", "status": "complete" } } @@ -28385,7 +30985,7 @@ "id": "example:ping#1", "method": "ping", "params": { - "id": "nodeid010101010101010101010101010101010101010101010101010101010101", + "id": "0266e4598d1d3c415f572a8488830b60f7e744ed9235eb0b1ba93283b315c03518", "len": 128, "pongbytes": 128 } @@ -28399,7 +30999,7 @@ "id": "example:ping#2", "method": "ping", "params": { - "id": "nodeid030303030303030303030303030303030303030303030303030303030303", + "id": "035d2b1192dfba134e10e540875d366ebc8bc353d5aa766b80c090b39c3a5d885d", "len": 1000, "pongbytes": 65535 } @@ -28608,124 +31208,124 @@ "method": "plugin", "params": { "subcommand": "start", - "plugin": "/root/lightning/tests/plugins/allow_even_msgs.py" + "plugin": "/home/rusty/devel/cvs/lightning/tests/plugins/allow_even_msgs.py" } }, "response": { "command": "start", "plugins": [ { - "name": "/root/lightning/plugins/autoclean", + "name": "/home/rusty/devel/cvs/lightning/plugins/autoclean", "active": true, "dynamic": false }, { - "name": "/root/lightning/plugins/chanbackup", + "name": "/home/rusty/devel/cvs/lightning/plugins/chanbackup", "active": true, "dynamic": false }, { - "name": "/root/lightning/plugins/bcli", + "name": "/home/rusty/devel/cvs/lightning/plugins/bcli", "active": true, "dynamic": false }, { - "name": "/root/lightning/plugins/commando", + "name": "/home/rusty/devel/cvs/lightning/plugins/commando", "active": true, "dynamic": false }, { - "name": "/root/lightning/plugins/funder", + "name": "/home/rusty/devel/cvs/lightning/plugins/funder", "active": true, "dynamic": true }, { - "name": "/root/lightning/plugins/topology", + "name": "/home/rusty/devel/cvs/lightning/plugins/topology", "active": true, "dynamic": false }, { - "name": "/root/lightning/plugins/exposesecret", + "name": "/home/rusty/devel/cvs/lightning/plugins/exposesecret", "active": true, "dynamic": true }, { - "name": "/root/lightning/plugins/keysend", + "name": "/home/rusty/devel/cvs/lightning/plugins/keysend", "active": true, "dynamic": false }, { - "name": "/root/lightning/plugins/offers", + "name": "/home/rusty/devel/cvs/lightning/plugins/offers", "active": true, "dynamic": true }, { - "name": "/root/lightning/plugins/pay", + "name": "/home/rusty/devel/cvs/lightning/plugins/pay", "active": true, "dynamic": true }, { - "name": "/root/lightning/plugins/recklessrpc", + "name": "/home/rusty/devel/cvs/lightning/plugins/recklessrpc", "active": true, "dynamic": true }, { - "name": "/root/lightning/plugins/recover", + "name": "/home/rusty/devel/cvs/lightning/plugins/recover", "active": true, "dynamic": false }, { - "name": "/root/lightning/plugins/txprepare", + "name": "/home/rusty/devel/cvs/lightning/plugins/txprepare", "active": true, "dynamic": true }, { - "name": "/root/lightning/plugins/cln-renepay", + "name": "/home/rusty/devel/cvs/lightning/plugins/cln-renepay", "active": true, "dynamic": true }, { - "name": "/root/lightning/plugins/cln-xpay", + "name": "/home/rusty/devel/cvs/lightning/plugins/cln-xpay", "active": true, "dynamic": true }, { - "name": "/root/lightning/plugins/spenderp", + "name": "/home/rusty/devel/cvs/lightning/plugins/spenderp", "active": true, "dynamic": false }, { - "name": "/root/lightning/plugins/cln-askrene", + "name": "/home/rusty/devel/cvs/lightning/plugins/cln-askrene", "active": true, "dynamic": true }, { - "name": "/root/lightning/plugins/sql", + "name": "/home/rusty/devel/cvs/lightning/plugins/sql", "active": true, "dynamic": true }, { - "name": "/root/lightning/plugins/cln-grpc", + "name": "/home/rusty/devel/cvs/lightning/plugins/cln-grpc", "active": true, "dynamic": false }, { - "name": "/root/lightning/plugins/cln-lsps-client", + "name": "/home/rusty/devel/cvs/lightning/plugins/cln-lsps-client", "active": true, "dynamic": false }, { - "name": "/root/lightning/plugins/cln-bip353", + "name": "/home/rusty/devel/cvs/lightning/plugins/cln-bip353", "active": true, "dynamic": true }, { - "name": "/root/lightning/plugins/bookkeeper", + "name": "/home/rusty/devel/cvs/lightning/plugins/bookkeeper", "active": true, "dynamic": false }, { - "name": "/root/lightning/tests/plugins/allow_even_msgs.py", + "name": "/home/rusty/devel/cvs/lightning/tests/plugins/allow_even_msgs.py", "active": true, "dynamic": true } @@ -28738,7 +31338,7 @@ "method": "plugin", "params": { "subcommand": "stop", - "plugin": "/root/lightning/tests/plugins/allow_even_msgs.py" + "plugin": "/home/rusty/devel/cvs/lightning/tests/plugins/allow_even_msgs.py" } }, "response": { @@ -28758,112 +31358,112 @@ "command": "list", "plugins": [ { - "name": "/root/lightning/plugins/autoclean", + "name": "/home/rusty/devel/cvs/lightning/plugins/autoclean", "active": true, "dynamic": false }, { - "name": "/root/lightning/plugins/chanbackup", + "name": "/home/rusty/devel/cvs/lightning/plugins/chanbackup", "active": true, "dynamic": false }, { - "name": "/root/lightning/plugins/bcli", + "name": "/home/rusty/devel/cvs/lightning/plugins/bcli", "active": true, "dynamic": false }, { - "name": "/root/lightning/plugins/commando", + "name": "/home/rusty/devel/cvs/lightning/plugins/commando", "active": true, "dynamic": false }, { - "name": "/root/lightning/plugins/funder", + "name": "/home/rusty/devel/cvs/lightning/plugins/funder", "active": true, "dynamic": true }, { - "name": "/root/lightning/plugins/topology", + "name": "/home/rusty/devel/cvs/lightning/plugins/topology", "active": true, "dynamic": false }, { - "name": "/root/lightning/plugins/exposesecret", + "name": "/home/rusty/devel/cvs/lightning/plugins/exposesecret", "active": true, "dynamic": true }, { - "name": "/root/lightning/plugins/keysend", + "name": "/home/rusty/devel/cvs/lightning/plugins/keysend", "active": true, "dynamic": false }, { - "name": "/root/lightning/plugins/offers", + "name": "/home/rusty/devel/cvs/lightning/plugins/offers", "active": true, "dynamic": true }, { - "name": "/root/lightning/plugins/pay", + "name": "/home/rusty/devel/cvs/lightning/plugins/pay", "active": true, "dynamic": true }, { - "name": "/root/lightning/plugins/recklessrpc", + "name": "/home/rusty/devel/cvs/lightning/plugins/recklessrpc", "active": true, "dynamic": true }, { - "name": "/root/lightning/plugins/recover", + "name": "/home/rusty/devel/cvs/lightning/plugins/recover", "active": true, "dynamic": false }, { - "name": "/root/lightning/plugins/txprepare", + "name": "/home/rusty/devel/cvs/lightning/plugins/txprepare", "active": true, "dynamic": true }, { - "name": "/root/lightning/plugins/cln-renepay", + "name": "/home/rusty/devel/cvs/lightning/plugins/cln-renepay", "active": true, "dynamic": true }, { - "name": "/root/lightning/plugins/cln-xpay", + "name": "/home/rusty/devel/cvs/lightning/plugins/cln-xpay", "active": true, "dynamic": true }, { - "name": "/root/lightning/plugins/spenderp", + "name": "/home/rusty/devel/cvs/lightning/plugins/spenderp", "active": true, "dynamic": false }, { - "name": "/root/lightning/plugins/cln-askrene", + "name": "/home/rusty/devel/cvs/lightning/plugins/cln-askrene", "active": true, "dynamic": true }, { - "name": "/root/lightning/plugins/sql", + "name": "/home/rusty/devel/cvs/lightning/plugins/sql", "active": true, "dynamic": true }, { - "name": "/root/lightning/plugins/cln-grpc", + "name": "/home/rusty/devel/cvs/lightning/plugins/cln-grpc", "active": true, "dynamic": false }, { - "name": "/root/lightning/plugins/cln-lsps-client", + "name": "/home/rusty/devel/cvs/lightning/plugins/cln-lsps-client", "active": true, "dynamic": false }, { - "name": "/root/lightning/plugins/cln-bip353", + "name": "/home/rusty/devel/cvs/lightning/plugins/cln-bip353", "active": true, "dynamic": true }, { - "name": "/root/lightning/plugins/bookkeeper", + "name": "/home/rusty/devel/cvs/lightning/plugins/bookkeeper", "active": true, "dynamic": false } @@ -28923,7 +31523,7 @@ "id": "example:preapproveinvoice#1", "method": "preapproveinvoice", "params": { - "bolt11": "lnbcrt100n1pnt2bolt11invl020400000000bolt11invl020400000000bolt11invl020400000000bolt11invl020400000000bolt11invl020400000000bolt11invl020400000000bolt11invl020400000000bolt11invl020400000000bolt11invl020400000000bolt11invl020400000000" + "bolt11": "lnbcrt1230n1pne035qsp5s2tkvc25q0p9qu5ghf6pal04thl4kl9q9jggx0fetq5tx7szc0gspp5mmpxzxv7tkpxjhvwyztwky6qlsw3umd87h7x7dvn0hck5t0lc84sdqlv3jhxcmjd9c8g6t0dcsxjmnktakrydqcqp99qxpqysgqa9q3g64xjfq3wqpyxn378zzs3grvlvhmpvtcedvzf0rq0ycu4xgr0ly93ut0wjdyfgfaldteev97qqt6q539qy7ktng4ylfj85kzmkqp5lsp6u" } }, "response": {} @@ -28933,7 +31533,7 @@ "id": "example:preapproveinvoice#2", "method": "preapproveinvoice", "params": [ - "lnbcrt100n1pnt2bolt11invl020500000000bolt11invl020500000000bolt11invl020500000000bolt11invl020500000000bolt11invl020500000000bolt11invl020500000000bolt11invl020500000000bolt11invl020500000000bolt11invl020500000000bolt11invl020500000000" + "lnbcrt1240n1pne035qsp590nuq4ek3zp48qm5rve22ye75jc6y564fh8qjrlr0j8at7egmtuqpp5ms3uy3duktelvxj02h6nrdzhge83uu5xumyrmxwu4akpezzv80hsdqlv3jhxcmjd9c8g6t0dcsxjmnktakrydgcqp99qxpqysgqad46gpve6njtqr9zsvrz8a56ndz953s88kedwuzge3d4tgv8gfk8u8al36nwmnchrkr7wwy7vc04fdvnewhusxcp457jucl5a5lt4dsqzr7sj8" ] }, "response": {} @@ -29009,7 +31609,7 @@ "id": "example:preapprovekeysend#1", "method": "preapprovekeysend", "params": { - "destination": "nodeid020202020202020202020202020202020202020202020202020202020202", + "destination": "022d223620a359a47ff7f7ac447c85c46c923da53389221a0054c11c1e3ca31d59", "payment_hash": "0000000000000000000000000000000000000000000000000000000000000000", "amount_msat": 1000 } @@ -29021,7 +31621,7 @@ "id": "example:preapprovekeysend#2", "method": "preapprovekeysend", "params": [ - "nodeid050505050505050505050505050505050505050505050505050505050505", + "032cf15d1ad9c4a08d26eab1918f732d8ef8fdc6abb9640bf3db174372c491304e", "0101010101010101010101010101010101010101010101010101010101010101", 2000 ] @@ -29359,12 +31959,12 @@ "method": "recoverchannel", "params": { "scb": [ - "0000000000000001channelid0340000340000340000340000340000340000340000340000340000nodeid03030303030303030303030303030303030303030303030303030303030300017f000001034003400340034003400340034003400340034003400340034003400340034003400340034003400340034003400003401000", - "0000000000000002channelid0340200340200340200340200340200340200340200340200340200nodeid03030303030303030303030303030303030303030303030303030303030300017f000001034203420342034203420342034203420342034203420342034203420342034203420342034203420342034203420003401000", - "0000000000000003channelid0410000410000410000410000410000410000410000410000410000nodeid01010101010101010101010101010101010101010101010101010101010100017f000001041004100410041004100410041004100410041004100410041004100410041004100410041004100410041004100003401000", - "0000000000000004channelid0120000120000120000120000120000120000120000120000120000nodeid01010101010101010101010101010101010101010101010101010101010100017f000001012001200120012001200120012001200120012001200120012001200120012001200120012001200120012001200003401000", - "0000000000000005channelid1520015200152001520015200152001520015200152001520015200nodeid01010101010101010101010101010101010101010101010101010101010100017f000001015201520152015201520152015201520152015201520152015201520152015201520152015201520152015201520003401000", - "0000000000000006channelid1240012400124001240012400124001240012400124001240012400nodeid02020202020202020202020202020202020202020202020202020202020200017f000001012401240124012401240124012401240124012401240124012401240124012401240124012401240124012401240003401000" + "0000000000000006f4e1de801de57374d5737da622611e3a1ad9f16d5df9c30fceecc11ce732eeeb022d223620a359a47ff7f7ac447c85c46c923da53389221a0054c11c1e3ca31d59017f000001a95cbe3270e5e0998af5eb0a67f7bf6e8d5b3d3d43059b3e4cfbd1e4fca6152c51320000000100000000000f42400003401000000000eb015c0000fffffffffffe000000020000ffffffffffff3283fc1863a9702a8e188ed55475324e55485a8758d2068cfea35851418c55740000fffffffffffed00ec892b1739b55ddc0cca2988d8731eb33f2295c1fcc13fdbdfff9d3f85d6d038402a6939f0f9d5c7a41464169eb692b4d2d73266b3c46345cd036ca577a15bdeeaa027662682a646ce7671c3a091bf639176e87d3379022126b209ebadadae19ffc0e02c59668c64362eaeabf44ee4f10b98fc92412cbea74b6f3a917423dfdf3ca282602773e6c29472ab708e5b127e8ae1ce2d8b7f56b457299f93bb72bb73fdbcf91770501010702a5f8", + "000000000000000121bd30cac60f477f2c4267220b1702a6ec5780db34f9934fa94b8c0508bf3357035d2b1192dfba134e10e540875d366ebc8bc353d5aa766b80c090b39c3a5d885d017f000001dcf8fdd5381f36008c3eac24cdde5ec0fea8f39240575ef0cb4406cb51ad419dd7810000000000000000000f424000034010000000011301840000fffffffffffa000000030000fffffffffffb8ff7d0df4eee78e558b4e07f82049aaa933f4f4932e13e1e7fee5cb103f7a0b50000fffffffffffa79176754ea338ffa080591b946a6ac1c47ff579ae7e45857bf01261ebe1c46ba0000fffffffffffcbdb924885293efdaa1ba8f556161f4fe525c19483def49b9af85c1623bc6d27b038402add69f29ad433cb7d4c9470f2d49d80245fd9e76a992197528a131e37711efac02c57de22185162001ffaf2e61b053b1d0e280d73ecec1b04916df2c65642d94a102cd4e1a07ee85714b6eada09d9cf81aeb15bfc72ddd003235530c58bbd0c0144902b10f36d2ebab3ce560abf15ceb1bef619491e0597a794fdafcfdf8708eec9e2d0501010702a5f8", + "00000000000000027512083907c74ed3a045e9bf772b3d72948eb93daf84a1cee57108800451aaf2035d2b1192dfba134e10e540875d366ebc8bc353d5aa766b80c090b39c3a5d885d017f000001dcf80239a9c9f2a91e69ba01800baf71f55efe457677b2e5cbd640b888dc1c9375b40000000000000000000f42400003401000000000c301340000ffffffffffff000000010000ffffffffffff0e07b6188dd51f15bb5cb9027950bf487a612dca57e2928de3f28f6ee796978b03840330b7ddf07e5bc779ea468875371ea25b560491c5feaeeb5e229ded3820d1d69103620748b3796c4988dd0fc63b92ae011dc989f15c433a55ed38e24318a43b4c93021bfe48bb1aded55878b00a3f00c5c1bffa1010510d8ba1c6372012ac9c3205d20201604aa7056ab8926038a846014bdbe4874ceef7ce45141b8009b0e2f49e7ec70501010702a5f8", + "0000000000000003222d999f537e32e9458c5db17a63e012dcced61340de06fda5bc30566270b0aa0266e4598d1d3c415f572a8488830b60f7e744ed9235eb0b1ba93283b315c03518017f0000017531932479f6d82ee59c7aa67b99568de0a31c202f6a3ff18a6bdd1ec22683cf026500000000000000000bebb3cb00034010000000009b010c0001000000000000000000000384021f90b5f38e0c0ea50bccfcf70a32cd4395c8c544e70636b7cc41831fe33fb4ce03bcfb0d457dfa07f508f434e6a2f040dd3dd233e7002dbe1c1b5d86ed5d3efd76030a4ce755504748f47401fc016578a52e104cbbd28251f10b11e4b3e55d0fe1d303986bdd0842662b8d0d18147630a720e952a2cda624c63ef4903357d27e54f7920501000702a5f8", + "0000000000000004a4a379248e49d207cc984646e632e1a31105a85708b9d6d961a5018fdd489f5a0266e4598d1d3c415f572a8488830b60f7e744ed9235eb0b1ba93283b315c03518017f000001970c7f07a15ce1fe1519d46536c4036f1c13527fa8bf52f6a5299b860f982ba2ed7e00000001000000000000753000034010000000009b010c000100000000000000000000038402c8aabcf1224df10e9d803dc3918797892fe0abec56d3e06f121bcebbe9ab0a2c03bd181375d57b8b1d15def9c5f9007b3c3ff98a140c0a44c9dc5f54ac7ea4baf30310952e08f9960711d8142dfa171c0fc2348762acea003f3897397f6ace8454130382da2a229450c4a8e8cea70bbd147eaaf981184bff8c1d70b70c30a494d848420501010702a5f8", + "000000000000000509eb55872cd9039ecd08281af756e23b15aad4129fd6a9bcd71b472114ebf43a0266e4598d1d3c415f572a8488830b60f7e744ed9235eb0b1ba93283b315c03518017f000001970c64ed91a21c10208d715b59801b12b4a6eff9ea9e4e7d45971c298b62d90ece8e00000000000000000000c35000034010000000009b010c000100000000000000000000038402e885f38e784050b386fb32d20935acc61059d8b02b6bec0ac2bfc8b2c5cf7f3103ae69dbfc6511ba0781c13113e16e1557a875b910cb1cb1fe1ef95a7edb36135a03758d5faa8515942873911e21869b1b90a4be72af14b394bc064da6ba518b087003750b588cd1fb8d60276c12c1c3eef7e302e3772414234404289db8c10f5731320501010702a5f8" ] } }, @@ -29603,20 +32203,20 @@ "id": "example:renepay#1", "method": "renepay", "params": { - "invstring": "lnbcrt100n1pnt2bolt11invl020100000000bolt11invl020100000000bolt11invl020100000000bolt11invl020100000000bolt11invl020100000000bolt11invl020100000000bolt11invl020100000000bolt11invl020100000000bolt11invl020100000000bolt11invl020100000000", + "invstring": "lnbcrt1pne035qsp5j7czxfpnquxg9vcw9crqh87raxz0glv8n6gx88jwdsp28pmfk68qpp5uz6ktrhcug72ke2xaf0h099gcasysw4lxcfmxn6qrh6p9z2y47hqdqcdserzgryv4ekxunfwp6xjmmwxqyjw5qcqp9rzjqdwjkyvjm7apxnssu4qgwhfkd67ghs6n6k48v6uqczgt88p6tky96qqqwqqqqqgqqqqqqqqpqqqqqzsqqc9qxpqysgqn7ge40jwkslz0j0vhfzy743lathy2sqy2dfyyahalxszs979d9s5v89ten2zcrna3xlxhkerk7p9k7a6u5fdddx5dzzas4ye2yp6desq3zwkg2", "amount_msat": 400000 } }, "response": { - "bolt11": "lnbcrt100n1pnt2bolt11invl020100000000bolt11invl020100000000bolt11invl020100000000bolt11invl020100000000bolt11invl020100000000bolt11invl020100000000bolt11invl020100000000bolt11invl020100000000bolt11invl020100000000bolt11invl020100000000", + "bolt11": "lnbcrt1pne035qsp5j7czxfpnquxg9vcw9crqh87raxz0glv8n6gx88jwdsp28pmfk68qpp5uz6ktrhcug72ke2xaf0h099gcasysw4lxcfmxn6qrh6p9z2y47hqdqcdserzgryv4ekxunfwp6xjmmwxqyjw5qcqp9rzjqdwjkyvjm7apxnssu4qgwhfkd67ghs6n6k48v6uqczgt88p6tky96qqqwqqqqqgqqqqqqqqpqqqqqzsqqc9qxpqysgqn7ge40jwkslz0j0vhfzy743lathy2sqy2dfyyahalxszs979d9s5v89ten2zcrna3xlxhkerk7p9k7a6u5fdddx5dzzas4ye2yp6desq3zwkg2", "amount_msat": 400000, - "payment_hash": "paymenthashinvl0210021002100210021002100210021002100210021002100", - "destination": "nodeid020202020202020202020202020202020202020202020202020202020202", - "created_at": 1738000000, + "payment_hash": "e0b5658ef8e23cab6546ea5f7794a8c760483abf3613b34f401df4128944afae", + "destination": "022d223620a359a47ff7f7ac447c85c46c923da53389221a0054c11c1e3ca31d59", + "created_at": 1738000000.0, "groupid": 1, "parts": 2, "status": "complete", - "payment_preimage": "paymentpreimager010101010101010101010101010101010101010101010101", + "payment_preimage": "08377744ca985c1908377744ca985c1908377744ca985c1908377744ca985c19", "amount_sent_msat": 400000 } }, @@ -29625,19 +32225,19 @@ "id": "example:renepay#2", "method": "renepay", "params": { - "invstring": "lnbcrt100n1pnt2bolt11invl030400000000bolt11invl030400000000bolt11invl030400000000bolt11invl030400000000bolt11invl030400000000bolt11invl030400000000bolt11invl030400000000bolt11invl030400000000bolt11invl030400000000bolt11invl030400000000" + "invstring": "lnbcrt40n1pne035qsp5pwtnqs2trxfwwkl8vaycu6fmvud0edagevz4eahvy6ls30u7cfrqpp52wnj6qrv99d6cte0s8ntstwkwxf42ksct8mujruyv7940nndzr3qdqaveskjmr9vssxgetnvdexjur5d9hkuxqyjw5qcqp9rzjqgkjyd3q5dv6gllh77kygly9c3kfy0d9xwyjyxsq2nq3c83u5vw4jqqqwqqqqqgqqqqqqqqpqqqqqzsqqc9qxpqysgq6sh90jk5uuccyzrdlnd5xyd92hxre78kupcpmlg0uerm35855xlklh5zlsmahpad6x8cv4ky2u6p394p270vyetlzx2u6ypyg22xn0qq0z6fuh" } }, "response": { - "bolt11": "lnbcrt100n1pnt2bolt11invl030400000000bolt11invl030400000000bolt11invl030400000000bolt11invl030400000000bolt11invl030400000000bolt11invl030400000000bolt11invl030400000000bolt11invl030400000000bolt11invl030400000000bolt11invl030400000000", + "bolt11": "lnbcrt40n1pne035qsp5pwtnqs2trxfwwkl8vaycu6fmvud0edagevz4eahvy6ls30u7cfrqpp52wnj6qrv99d6cte0s8ntstwkwxf42ksct8mujruyv7940nndzr3qdqaveskjmr9vssxgetnvdexjur5d9hkuxqyjw5qcqp9rzjqgkjyd3q5dv6gllh77kygly9c3kfy0d9xwyjyxsq2nq3c83u5vw4jqqqwqqqqqgqqqqqqqqpqqqqqzsqqc9qxpqysgq6sh90jk5uuccyzrdlnd5xyd92hxre78kupcpmlg0uerm35855xlklh5zlsmahpad6x8cv4ky2u6p394p270vyetlzx2u6ypyg22xn0qq0z6fuh", "amount_msat": 4000, - "payment_hash": "paymenthashinvl0340034003400340034003400340034003400340034003400", - "destination": "nodeid030303030303030303030303030303030303030303030303030303030303", - "created_at": 1738000000, + "payment_hash": "53a72d006c295bac2f2f81e6b82dd67193555a1859f7c90f84678b57ce6d10e2", + "destination": "035d2b1192dfba134e10e540875d366ebc8bc353d5aa766b80c090b39c3a5d885d", + "created_at": 1738000000.0, "groupid": 1, "parts": 2, "status": "complete", - "payment_preimage": "paymentpreimager020202020202020202020202020202020202020202020202", + "payment_preimage": "83ffe698292fbb6283ffe698292fbb6283ffe698292fbb6283ffe698292fbb62", "amount_sent_msat": 4000 } } @@ -29787,21 +32387,21 @@ "id": "example:renepaystatus#1", "method": "renepaystatus", "params": { - "invstring": "lnbcrt100n1pnt2bolt11invl020100000000bolt11invl020100000000bolt11invl020100000000bolt11invl020100000000bolt11invl020100000000bolt11invl020100000000bolt11invl020100000000bolt11invl020100000000bolt11invl020100000000bolt11invl020100000000" + "invstring": "lnbcrt1pne035qsp5j7czxfpnquxg9vcw9crqh87raxz0glv8n6gx88jwdsp28pmfk68qpp5uz6ktrhcug72ke2xaf0h099gcasysw4lxcfmxn6qrh6p9z2y47hqdqcdserzgryv4ekxunfwp6xjmmwxqyjw5qcqp9rzjqdwjkyvjm7apxnssu4qgwhfkd67ghs6n6k48v6uqczgt88p6tky96qqqwqqqqqgqqqqqqqqpqqqqqzsqqc9qxpqysgqn7ge40jwkslz0j0vhfzy743lathy2sqy2dfyyahalxszs979d9s5v89ten2zcrna3xlxhkerk7p9k7a6u5fdddx5dzzas4ye2yp6desq3zwkg2" } }, "response": { "paystatus": [ { - "bolt11": "lnbcrt100n1pnt2bolt11invl020100000000bolt11invl020100000000bolt11invl020100000000bolt11invl020100000000bolt11invl020100000000bolt11invl020100000000bolt11invl020100000000bolt11invl020100000000bolt11invl020100000000bolt11invl020100000000", + "bolt11": "lnbcrt1pne035qsp5j7czxfpnquxg9vcw9crqh87raxz0glv8n6gx88jwdsp28pmfk68qpp5uz6ktrhcug72ke2xaf0h099gcasysw4lxcfmxn6qrh6p9z2y47hqdqcdserzgryv4ekxunfwp6xjmmwxqyjw5qcqp9rzjqdwjkyvjm7apxnssu4qgwhfkd67ghs6n6k48v6uqczgt88p6tky96qqqwqqqqqgqqqqqqqqpqqqqqzsqqc9qxpqysgqn7ge40jwkslz0j0vhfzy743lathy2sqy2dfyyahalxszs979d9s5v89ten2zcrna3xlxhkerk7p9k7a6u5fdddx5dzzas4ye2yp6desq3zwkg2", "amount_msat": 400000, - "payment_hash": "paymenthashinvl0210021002100210021002100210021002100210021002100", - "destination": "nodeid020202020202020202020202020202020202020202020202020202020202", - "created_at": 1738000000, + "payment_hash": "e0b5658ef8e23cab6546ea5f7794a8c760483abf3613b34f401df4128944afae", + "destination": "022d223620a359a47ff7f7ac447c85c46c923da53389221a0054c11c1e3ca31d59", + "created_at": 1738000000.0, "groupid": 1, "parts": 2, "status": "complete", - "payment_preimage": "paymentpreimager010101010101010101010101010101010101010101010101", + "payment_preimage": "08377744ca985c1908377744ca985c1908377744ca985c1908377744ca985c19", "amount_sent_msat": 400000 } ] @@ -29924,17 +32524,17 @@ "id": "example:reserveinputs#1", "method": "reserveinputs", "params": { - "psbt": "cHNidP8BAgQCAAAAAQMEbwAAAAEEAQpsbt011100011100011100011100011100011100011100011100011100011100011100011100011100011100011100011100011100011100011100011100011100011100011100011100011100011100011100011100011100011100011100011100011100011100011100011100011100011100011100011100" + "psbt": "cHNidP8BADMCAAAAARxvUMSNjH7EKMXzxKwycdOSZ64xHQfWS7JFe0pAwIPCAAAAAAD9////AAAAAAAAAA==" } }, "response": { "reservations": [ { - "txid": "channeltxid111200111200111200111200111200111200111200111200111200", - "vout": 1, + "txid": "c283c0404a7b45b24bd6071d31ae6792d37132acc4f3c528c47e8c8dc4506f1c", + "vout": 0, "was_reserved": false, "reserved": true, - "reserved_to_block": 226 + "reserved_to_block": 227 } ] } @@ -29944,17 +32544,17 @@ "id": "example:reserveinputs#2", "method": "reserveinputs", "params": { - "psbt": "cHNidP8BAgQCAAAAAQMEbwAAAAEEAQpsbt011200011200011200011200011200011200011200011200011200011200011200011200011200011200011200011200011200011200011200011200011200011200011200011200011200011200011200011200011200011200011200011200011200011200011200011200011200011200011200011200" + "psbt": "cHNidP8BADMCAAAAAWI5Q9jlnWRjkrFQXx2bE0CP2y4UJMx2OfkJrOM2kSOWAAAAAAD9////AAAAAAAAAA==" } }, "response": { "reservations": [ { - "txid": "txidocsigned1011000110001100011000110001100011000110001100011000", - "vout": 1, + "txid": "96239136e3ac09f93976cc24142edb8f40139b1d5f50b19263649de5d8433962", + "vout": 0, "was_reserved": false, "reserved": true, - "reserved_to_block": 226 + "reserved_to_block": 227 } ] } @@ -30028,7 +32628,7 @@ "id": "example:sendcustommsg#1", "method": "sendcustommsg", "params": { - "node_id": "nodeid030303030303030303030303030303030303030303030303030303030303", + "node_id": "035d2b1192dfba134e10e540875d366ebc8bc353d5aa766b80c090b39c3a5d885d", "msg": "77770012" } }, @@ -30251,22 +32851,22 @@ "id": "example:sendinvoice#1", "method": "sendinvoice", "params": { - "invreq": "lno1qgsq000bolt210002100021000210002100021000210002100021000210002100021000210002100021000210002100021000210002100021000210002100021000", + "invreq": "lnr1qqg99gqg2990zl3322sqs52279lrzzst2d5k6urvv5s8getnw3gzqp3zderpzxstt8927ynqg044h0egcd8n5h3n9g0u0v4h8ncc3yg02gps7sjqtqssytfzxcs2xkdy0lml0tzy0jzugmyj8kjn8zfzrgq9fsgurc72x82e7pqfylfzzhcux84v2552lt7p2ekunuamtsdgyk34a86m4zklkdjjdzt757t4sp0m8cp9tdj6hfe67mcuwl3q7zr4sr4z4gn2fvksykkn5g", "label": "test sendinvoice" } }, "response": { "label": "test sendinvoice", - "bolt12": "lno1qgsq000boltsi100si100si100si100si100si100si100si100si100si100si100si100si100si100si100si100si100si100si100si100si100si100si100si100", - "payment_hash": "paymenthashsdinvsi10si10si10si10si10si10si10si10si10si10si10si10", + "bolt12": "lni1qqg99gqg2990zl3322sqs52279lrzzst2d5k6urvv5s8getnw3gzqp3zderpzxstt8927ynqg044h0egcd8n5h3n9g0u0v4h8ncc3yg02gps7sjqtqssytfzxcs2xkdy0lml0tzy0jzugmyj8kjn8zfzrgq9fsgurc72x82e5zvqyehytxx360zptatj4pygsv9kpal8gnkeyd0tpvd6jv5rkv2uqdgcq204pv4whvd37qg3dg48n0nudvgfw0du46nveyle5q4a2tvru2g4gqgrstm06rld7qk9d5sjtajxztd0lua3zfujsv8lve3wg9px5f34c4wqqvh4pp0dfkr98pur2v55d6ae3cakhn6s9jxn8waf9l00g06g236ymyefu6engjwaqsj4w7cgpkg9naq6kf4zrsqqqqqqqqqqqqqqq5qqqqqqqqqqqqqayjedltzjqqqqqq9yq3ne035q5cq442pqemw8hu9fzzda8nvxcksvjra2sy4c5r9r6et8rj95qqd2ufj8xj065qc0gfq2uqczqqqtqggzvmj9nrga83q474e2sjygxzmq7ln5fmvjxh4skxafx2pmx9wqx5v0qsxsy7vmh0323083refvd9fwvm7r5klg8hjftuqqzygswxl9lfkvlcj72lhlw643qv2gwmfadfydpdwvhydnvgnxmhlgjaxd7nw06y7rx", + "payment_hash": "cedc7bf0a9109bd3cd86c5a0c90faa812b8a0ca3d65671c8b4001aae2647349f", "amount_msat": 1000000, "status": "paid", "pay_index": 2, "amount_received_msat": 1000000, - "paid_at": 1738500000, - "payment_preimage": "paymentpreimagei010101010101010101010101010101010101010101010101", + "paid_at": 1738000000, + "payment_preimage": "c01ed70eb9ddb906c01ed70eb9ddb906c01ed70eb9ddb906c01ed70eb9ddb906", "description": "Simple test", - "expires_at": 1739000000, + "expires_at": 1738000090, "created_index": 4, "updated_index": 2 } @@ -30621,23 +33221,23 @@ "id": "example:sendonion#1", "method": "sendonion", "params": { - "onion": "onion10101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010", + "onion": "00021d5b7e75f56e8fb8c5dbbcfdf954b89d171b35fced6bf4ad929b3b6e081e16c93046493f6f0f4e6f983b424e799b9f60ae7c75fa260760393aad7958e04ec5ea5a06e11078daa9ff31a1aaeed8b04f5ce319118a4bdda9e90861829161dd4d44164816f566d0cc219da32fdd08249068cec2fd589fb216933b95adce045364fcb6d6905a4e4169346b75e6ccfecb0cfdfd74d0574eb684b952db7df8443541cc28296f42afeafbb7a34c3f8c64dce9c0ebb37f5485f66246cbf11b7a8cd4a45d64723b7e706b1ef3eff4ce6133aa86f6c044337716bd0c1173b92b13c4d11453ab850fd945c1af91d3ce41928600bbafbc81b56e3bc704a678a783e2232bc80bc4afa93f84498127123096af80ca5295bb02b6c6524720a0f4dc81075688632b9428f6f4399a0ecf6c17e5c3015c9715af5127000787cc8d7e023f96b6e0175d600911c1dffef6a0d2a8ea8059b287e9e941810de5190ce0c274d6452a8ecc06a0cb98a9550e7e80e8eebdb9c326ca2a3f25b3147daaa68b8d5f745344938645535f858f6a4484b17322b4076714994865ac1660c4f364309bb5147c55bf8458cf6aa7420896d2cb1ee0fe301c83109a102a42d41063c32732ef0366b9b9bd7516c3f7607a54eb3255fa6589bd3ea021cb9deee71b3ea33fa9e509c085216243ea6cea4acf038fee2a4e7418f4087c79423f8bc94fda1ea7de66cb06c131304e39b20634e70721f028427093e059065e6d157cbbdb1ea02476478033164cc90b7707c612897224099c8f3cae86cf0503a1fc1c21e86f4fa7c6332786cc0c44b379516032a93d1c4853453b819d30438814b28bbb14989dfb88819e3fd9b38267b84cc052637ca9c5ae2b149fb53831e4237036cde4b6dd0c0754c52551585692beba1b4228540255ad6fd6bd7912acd47816023332a52075db994decac8cc3611a0f222638084b71a3f8f4c019af28524d96a609fd7cf2e660414b8db54a2d77087087313dea24cab947c04a3ca191d3ba8ffd5ddef72fbc6ad1fc7c71e97cc3da1b677108b907c591c32cb3a41b5636292d9db891013c2d729d67162e4388bee98469f98871af9b5580768f0db885106b981274060f1b3bca8f7297287c6688f6c30054f727d7dd9baa097175fb198b3477c2f1545ea6425f0a6df732ea4be943dff9cece87a9751be426669b1f8b3cb3f7a39f2b72ee68c287e6db1c86405b782c774c22acad3a68bb377713958f6c89e7b8a3d17e52416ea9bdb959949b47af8dd6b380ebc0481873de65edf599f3c1f51c9e4abd388e4d6ad6cf48e5c279286ed7bc683523b9c016227af1cdcf856ec11b47d3f369ac4fde6cee8e19748ef6c365c5effdc81afe560e1597891256dad1b849f550ab681b0c8ba660f1172ac3f63069140c2180537d793f899ba897dae47a848b6e4b1ceac369c59257a3c1d4f2cefe0b64e84ac010397bc55d77a8f801b227ab6453770fc9775788c4a9ce7bdc5f40aa156d1b0c4f9ef41dfbb0518151809761d22e503b9b8725704bbe4f7aaaf4188f80106354743e3f605a1cee1d6d09226176a913a3f9fe9513a081377c820e582fffd534cb27146264972b9f5362dc37cacb821e64ef711eb39addbe1a747df2b1cc54f26dfc1a32ac26297b980e4a492e2242d6d745e508e65f6162ba6e28d4f1f2177c5896c9d82019a74cd6f136e04af3a01a2178e961c0d4e63235982807579ea34f306ec0ea3f0e58a8fee4dd28c2303fa9e09e45b8c9cbc6a69aba0b838473a33e2a287f0824936bfd427f72b7bb7362a40f77136ecfe53173b2acfbbdd49ec390078926d0a9a69114312fee5a9b5ad8f7b80711f76d5ffca8632593b2ea9b2caaebf219ec7586e9d6962353f98b2882fb804a34b16946453038127de73f4e827b190f6001b7a5560b7eb978f8", "first_hop": { - "id": "nodeid020202020202020202020202020202020202020202020202020202020202", - "channel": "109x1x1", + "id": "022d223620a359a47ff7f7ac447c85c46c923da53389221a0054c11c1e3ca31d59", + "channel": "110x1x0", "direction": 1, "amount_msat": 1002, "delay": 21, "style": "tlv" }, - "payment_hash": "assocdata0010101010101010101010101010101010101010101010101010101" + "payment_hash": "47c148c1746366e4c2c7496621c22002bc2711b4d9c52cbb9c7b1fdca59c8579" } }, "response": { "message": "Monitor status with listpays or waitsendpay", "created_index": 10, "id": 10, - "payment_hash": "assocdata0010101010101010101010101010101010101010101010101010101", + "payment_hash": "47c148c1746366e4c2c7496621c22002bc2711b4d9c52cbb9c7b1fdca59c8579", "groupid": 1, "amount_sent_msat": 1002, "created_at": 1738000000, @@ -31015,33 +33615,33 @@ "params": { "route": [ { - "id": "nodeid020202020202020202020202020202020202020202020202020202020202", - "channel": "109x1x1", + "id": "022d223620a359a47ff7f7ac447c85c46c923da53389221a0054c11c1e3ca31d59", + "channel": "110x1x0", "direction": 1, "amount_msat": 10001, "delay": 15, "style": "tlv" }, { - "id": "nodeid030303030303030303030303030303030303030303030303030303030303", - "channel": "111x1x1", + "id": "035d2b1192dfba134e10e540875d366ebc8bc353d5aa766b80c090b39c3a5d885d", + "channel": "112x1x0", "direction": 0, "amount_msat": 10000, "delay": 9, "style": "tlv" } ], - "payment_hash": "paymenthashinvl0310031003100310031003100310031003100310031003100", - "payment_secret": "paymentsecretinvl00310003100031000310003100031000310003100031000" + "payment_hash": "9562ee18e942b0eb2e36050c108efcb34cb07e5cdbe28d08d26bb71af1556c2f", + "payment_secret": "c2e882ab5464eb650a67ce396d04d97f670127f1e12aea33961b3f5cef65728e" } }, "response": { "message": "Monitor status with listpays or waitsendpay", "created_index": 2, "id": 2, - "payment_hash": "paymenthashinvl0310031003100310031003100310031003100310031003100", + "payment_hash": "9562ee18e942b0eb2e36050c108efcb34cb07e5cdbe28d08d26bb71af1556c2f", "groupid": 1, - "destination": "nodeid030303030303030303030303030303030303030303030303030303030303", + "destination": "035d2b1192dfba134e10e540875d366ebc8bc353d5aa766b80c090b39c3a5d885d", "amount_msat": 10000, "amount_sent_msat": 10001, "created_at": 1738000000, @@ -31123,12 +33723,12 @@ "id": "example:sendpsbt#1", "method": "sendpsbt", "params": { - "psbt": "cHNidP8BAgQCAAAAAQMEbwAAAAEEAQpsbt711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000" + "psbt": "cHNidP8BAFICAAAAAQ1vO4mydSo3C9Dv+JXe2vMumPjihk/CDmK4pu1GQ/djAQAAAAD9////AYNq3AsAAAAAFgAUyQltQ/QI6lJgICYsza18hRa5KoEAAAAAAAEAiQIAAAABcQX3ZThhSZo4YV9hEj8LW7d9UHdclBO/07zDnLhKQ3cAAAAAAP3///8CQEIPAAAAAAAiACBbjNO5FM9nzdj6YnPJMDU902R2c0+9liECwt9TuQiAzYFs3AsAAAAAIlEgNfEYT2tHDJ3zR9pixLKOfsnuELIgusOszSIgne8ANuptAAAAAQErgWzcCwAAAAAiUSA18RhPa0cMnfNH2mLEso5+ye4QsiC6w6zNIiCd7wA26gETQBOuwDbikxRfXPyMoEFg8RBu/Cq3cA3e0BvaCpZh9KsZ/1MtTpOODzI+tQwEhSmssFh3TNMkYceyQM6fIQAC4eYhFp/BzQHy0ncLgoHiurwaTCRe3Te7ctEuIHI6ad9PXwH2CQDBIO1CAAAAAAAA" } }, "response": { - "tx": "02000000000155multiw61000610006100061000610006100061000610006100061000610006100061000610006100061000610006100061000610006100061000610006100061000610006100061000610006100061000610006100061000610006100061000610006100061000610006100061000610006100061000610006100061000610006100061000610006100061000610006100061000610006100061000610006100061000610006100061000610006100061000610006100061000610006100061000610006100061000610006100061000610006100061000610006100061000610006100061000610006100061000610006100061000610006100061000", - "txid": "txid6100061000610006100061000610006100061000610006100061000" + "tx": "020000000001010d6f3b89b2752a370bd0eff895dedaf32e98f8e2864fc20e62b8a6ed4643f7630100000000fdffffff01836adc0b00000000160014c9096d43f408ea526020262ccdad7c8516b92a81014013aec036e293145f5cfc8ca04160f1106efc2ab7700dded01bda0a9661f4ab19ff532d4e938e0f323eb50c048529acb058774cd32461c7b240ce9f210002e1e600000000", + "txid": "88a8ebd201ffda3ff8cfad1829ed8506656ef52298d91f5c06558748f56a6402" } } ] @@ -31311,16 +33911,16 @@ "id": "example:setchannel#1", "method": "setchannel", "params": { - "id": "123x1x1", + "id": "124x1x1", "ignorefeelimits": true } }, "response": { "channels": [ { - "peer_id": "nodeid030303030303030303030303030303030303030303030303030303030303", - "channel_id": "channelid0230200230200230200230200230200230200230200230200230200", - "short_channel_id": "123x1x1", + "peer_id": "035d2b1192dfba134e10e540875d366ebc8bc353d5aa766b80c090b39c3a5d885d", + "channel_id": "ecabe6d86abdd57565b3fb7e7c5d724e60ca1a07633951769b5dbfa48dc884b3", + "short_channel_id": "124x1x1", "fee_base_msat": 1, "fee_proportional_millionths": 10, "minimum_htlc_out_msat": 0, @@ -31335,7 +33935,7 @@ "id": "example:setchannel#2", "method": "setchannel", "params": { - "id": "115x1x1", + "id": "116x1x1", "feebase": 4000, "feeppm": 300, "enforcedelay": 0 @@ -31344,9 +33944,9 @@ "response": { "channels": [ { - "peer_id": "nodeid050505050505050505050505050505050505050505050505050505050505", - "channel_id": "channelid0250000250000250000250000250000250000250000250000250000", - "short_channel_id": "115x1x1", + "peer_id": "032cf15d1ad9c4a08d26eab1918f732d8ef8fdc6abb9640bf3db174372c491304e", + "channel_id": "f8fc83a432cbfb2fffe222cc06727fdd977b5dd10ebd6707158e799e6f522d9f", + "short_channel_id": "116x1x1", "fee_base_msat": 4000, "fee_proportional_millionths": 300, "minimum_htlc_out_msat": 0, @@ -31517,8 +34117,8 @@ "config": { "config": "autoclean-expiredinvoices-age", "value_int": 300, - "source": "/tmp/.lightning/regtest/config.setconfig:2", - "plugin": "/root/lightning/plugins/autoclean", + "source": "/home/rusty/.lightning/regtest/config.setconfig:2", + "plugin": "/usr/local/libexec/plugins/autoclean", "dynamic": true } } @@ -31536,7 +34136,7 @@ "config": { "config": "min-capacity-sat", "value_int": 500000, - "source": "/tmp/.lightning/regtest/config.setconfig:3", + "source": "/home/rusty/.lightning/regtest/config.setconfig:3", "dynamic": true } } @@ -31608,7 +34208,7 @@ "id": "example:setpsbtversion#1", "method": "setpsbtversion", "params": { - "psbt": "cHNidP8BAgpsbt1001010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101", + "psbt": "cHNidP8BAgQCAAAAAQMEbwAAAAEEAQABBQEBAQYBAwH7BAIAAAAAAQMIQEIPAAAAAAABBCJRIO7yw3zIUblRUcdhCLSjdFxJsYHu2s0Y29bT0bGAGdcbAA==", "version": 0 } }, @@ -31621,12 +34221,12 @@ "id": "example:setpsbtversion#2", "method": "setpsbtversion", "params": [ - "cHNidP8BAgpsbt20020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202", + "cHNidP8BAgQCAAAAAQMEbwAAAAEEAQABBQECAQYBAwH7BAIAAAAAAQMIQEIPAAAAAAABBCJRIO7yw3zIUblRUcdhCLSjdFxJsYHu2s0Y29bT0bGAGdcbAAEDCNXcMgAAAAAAAQQiUSA2cYCeVGcxdSZII2urHpalr5osmF2lPbYRaw1nKyPcmQA=", 2 ] }, "response": { - "psbt": "cHNidP8BAgpsbt20020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202" + "psbt": "cHNidP8BAgQCAAAAAQMEbwAAAAEEAQABBQECAQYBAwH7BAIAAAAAAQMIQEIPAAAAAAABBCJRIO7yw3zIUblRUcdhCLSjdFxJsYHu2s0Y29bT0bGAGdcbAAEDCNXcMgAAAAAAAQQiUSA2cYCeVGcxdSZII2urHpalr5osmF2lPbYRaw1nKyPcmQA=" } } ] @@ -31811,7 +34411,7 @@ "runes": [ { "rune": "zFMd1fjhrAYxUeFA54TjloZqOt8JrA_i_nYwIgXkag49MA==", - "last_used": 1738000000, + "last_used": 1738000000.0, "unique_id": "0", "restrictions": [], "restrictions_as_english": "" @@ -31829,14 +34429,14 @@ "runes": [ { "rune": "zFMd1fjhrAYxUeFA54TjloZqOt8JrA_i_nYwIgXkag49MA==", - "last_used": 1738000000, + "last_used": 1738000000.0, "unique_id": "0", "restrictions": [], "restrictions_as_english": "" }, { "rune": "RXgu0DD_i0wSPEZkIDyZIWL0bSAGdhvJ_GHOQdTg04A9MSZpZF4wMjY2ZTQ1OThkMWQzYzQxNWY1NyZtZXRob2Q9bGlzdHBlZXJz", - "last_used": 1738000000, + "last_used": 1738000000.0, "unique_id": "1", "restrictions": [ { @@ -31866,7 +34466,7 @@ }, { "rune": "QUJEYMLGgiaJvMDv_MhR2hiMKIBTbq-PrL-KxcIlirQ9MiZtZXRob2Q9cGF5JnBuYW1lYW1vdW50bXNhdDwxMDAwMA==", - "last_used": 1738000000, + "last_used": 1738000000.0, "unique_id": "2", "restrictions": [ { @@ -31902,7 +34502,7 @@ "alternatives": [ { "fieldname": "id", - "value": "nodeid010101010101010101010101010101010101010101010101010101010101", + "value": "0266e4598d1d3c415f572a8488830b60f7e744ed9235eb0b1ba93283b315c03518", "condition": "=", "english": "id equal to 0266e4598d1d3c415f572a8488830b60f7e744ed9235eb0b1ba93283b315c03518" } @@ -31935,13 +34535,13 @@ "alternatives": [ { "fieldname": "pnameid", - "value": "nodeid010101010101010101010101010101010101010101010101010101010101", + "value": "0266e4598d1d3c415f572a8488830b60f7e744ed9235eb0b1ba93283b315c03518", "condition": "=", "english": "pnameid equal to 0266e4598d1d3c415f572a8488830b60f7e744ed9235eb0b1ba93283b315c03518" }, { "fieldname": "parr0", - "value": "nodeid010101010101010101010101010101010101010101010101010101010101", + "value": "0266e4598d1d3c415f572a8488830b60f7e744ed9235eb0b1ba93283b315c03518", "condition": "=", "english": "parr0 equal to 0266e4598d1d3c415f572a8488830b60f7e744ed9235eb0b1ba93283b315c03518" } @@ -31959,7 +34559,7 @@ "alternatives": [ { "fieldname": "id", - "value": "nodeid010101010101010101010101010101010101010101010101010101010101", + "value": "0266e4598d1d3c415f572a8488830b60f7e744ed9235eb0b1ba93283b315c03518", "condition": "=", "english": "id equal to 0266e4598d1d3c415f572a8488830b60f7e744ed9235eb0b1ba93283b315c03518" } @@ -32197,11 +34797,11 @@ "id": "example:signinvoice#1", "method": "signinvoice", "params": { - "invstring": "lnbcrt100n1pnt2bolt11invl010200000000bolt11invl010200000000bolt11invl010200000000bolt11invl010200000000bolt11invl010200000000bolt11invl010200000000bolt11invl010200000000bolt11invl010200000000bolt11invl010200000000bolt11invl010200000000" + "invstring": "lnbcrt10n1pne035qsp5am7uy92zzz7drzwnfjuu2w74hw2s0qjutwtc3jnz778ufwn50cgspp5pmul004jv6lukkje3pg2qw607sf56v7leqvdk0gkn83z67u0q9aqdqlv3jhxcmjd9c8g6t0dcsxjmnktakrzvsxqyjw5qcqp9rzjqgkjyd3q5dv6gllh77kygly9c3kfy0d9xwyjyxsq2nq3c83u5vw4jqqqdcqqqqgqqqqqqqqpqqqqqzsqqc9qxpqysgqavy48snxm0pu3hp2eeszumfntnuuzmzsr67t94g9q2crgpp3n0t42q7lya6gja9246k5eluu0twg3n7qntxugqv8yuw99ckte32xvmspc9vnf0" } }, "response": { - "bolt11": "lnbcrt100n1pnt2bolt11invl060600000000bolt11invl060600000000bolt11invl060600000000bolt11invl060600000000bolt11invl060600000000bolt11invl060600000000bolt11invl060600000000bolt11invl060600000000bolt11invl060600000000bolt11invl060600000000" + "bolt11": "lnbcrt10n1pne035qsp5am7uy92zzz7drzwnfjuu2w74hw2s0qjutwtc3jnz778ufwn50cgspp5pmul004jv6lukkje3pg2qw607sf56v7leqvdk0gkn83z67u0q9aqdqlv3jhxcmjd9c8g6t0dcsxjmnktakrzvsxqyjw5qcqp9rzjqgkjyd3q5dv6gllh77kygly9c3kfy0d9xwyjyxsq2nq3c83u5vw4jqqqdcqqqqgqqqqqqqqpqqqqqzsqqc9qxpqysgq9vxe6l9fs0n0t3lzecwsmqmwuen2v0ugddya6ays98d7y3kcusvjfee5zcgf274wpm54ta8w6sa8tlkn5w4rckj4tv7qrv2j9dz2kyspj0776q" } }, { @@ -32209,11 +34809,11 @@ "id": "example:signinvoice#2", "method": "signinvoice", "params": [ - "lnbcrt100n1pnt2bolt11invl020600000000bolt11invl020600000000bolt11invl020600000000bolt11invl020600000000bolt11invl020600000000bolt11invl020600000000bolt11invl020600000000bolt11invl020600000000bolt11invl020600000000bolt11invl020600000000" + "lnbcrt1250n1pne035qsp57thr33aj04aek8738nm42nntaydcaw4zswr047ja0gxy5sea8egqpp58veqg20enh8z5w8avz0jyznsfgnxdgs9km2mlugn62nvypjhwj5sdqlv3jhxcmjd9c8g6t0dcsxjmnktakrydscqp99qxpqysgq9569pf2lk3desk0xz8l90eeanhkz2j4e4yk8wlzwsy8efmm07mdn5n62ymlymt73yvxwyc4zuj45vwka2ta0rmntwxu4m2qp46h2yfcq5muart" ] }, "response": { - "bolt11": "lnbcrt100n1pnt2bolt11invl060700000000bolt11invl060700000000bolt11invl060700000000bolt11invl060700000000bolt11invl060700000000bolt11invl060700000000bolt11invl060700000000bolt11invl060700000000bolt11invl060700000000bolt11invl060700000000" + "bolt11": "lnbcrt1250n1pne035qsp57thr33aj04aek8738nm42nntaydcaw4zswr047ja0gxy5sea8egqpp58veqg20enh8z5w8avz0jyznsfgnxdgs9km2mlugn62nvypjhwj5sdqlv3jhxcmjd9c8g6t0dcsxjmnktakrydscqp99qxpqysgq0m4mht376q42hx4m9jw5fkrjlhg0uan3rpcrnvz6lyanawfnaqd34d8g0g4x2rmfqcxezgaywj9h55te97g8x4umqr0y8p9j8r897xgq4cuq98" } } ] @@ -32478,11 +35078,11 @@ "id": "example:signpsbt#1", "method": "signpsbt", "params": { - "psbt": "cHNidP8BAgQCAAAAAQMEbwAAAAEEAQpsbt910000910000910000910000910000910000910000910000910000910000910000910000910000910000910000910000910000910000910000910000910000910000910000910000910000910000910000910000910000910000910000910000910000910000910000910000910000910000910000910000" + "psbt": "cHNidP8BAgQCAAAAAQMEmgAAAAEEAQEBBQECAQYBAwH7BAIAAAAAAQBxAgAAAAH7CdSDiNRK3tlKgYtNIUmQSJWLgE5Evlcb09JxAjW4egEAAAAA/f///wIAwusLAAAAABYAFAPP7IcV4fQEo27AEeQjj4Yyn5CcBhP00gAAAAAWABQijAzMA5X3Ec5AzhgdLZtnmTqh7YcAAAABAR8AwusLAAAAABYAFAPP7IcV4fQEo27AEeQjj4Yyn5CcAQ4g8XN4MRmL6kPpMsgk9fPi+WJWotGhushvL/SXVnKJnZ0BDwQAAAAAARAE/f///wz8CWxpZ2h0bmluZwEIEu/Rzf4eie4AAQMIQVncCwAAAAABBCJRIDvhN+WjzUt2EEWojAco0yQ1GDbwTtWd/aN5uNhGRlK3DPwJbGlnaHRuaW5nAQgU79HN/h6J7gABAwhAQg8AAAAAAAEEIgAgybxcBjyu+/emx4FEB7Vie0+BqLVuy+kyxoL5y6wNGd8M/AlsaWdodG5pbmcBCJlh/FQRnSXyAA==" } }, "response": { - "signed_psbt": "cHNidP8BAgQCAAAAAQMEbwAAAAEEAQpsbt111000111000111000111000111000111000111000111000111000111000111000111000111000111000111000111000111000111000111000111000111000111000111000111000111000111000111000111000111000111000111000111000111000111000111000111000111000111000111000111000" + "signed_psbt": "cHNidP8BAgQCAAAAAQMEmgAAAAEEAQEBBQECAQYBAwH7BAIAAAAAAQBxAgAAAAH7CdSDiNRK3tlKgYtNIUmQSJWLgE5Evlcb09JxAjW4egEAAAAA/f///wIAwusLAAAAABYAFAPP7IcV4fQEo27AEeQjj4Yyn5CcBhP00gAAAAAWABQijAzMA5X3Ec5AzhgdLZtnmTqh7YcAAAABAR8AwusLAAAAABYAFAPP7IcV4fQEo27AEeQjj4Yyn5CcIgICRz15z0oQ57qDTAJqrEPqGLCn+3Xs2lGEv6+oxGYV9rdHMEQCID20o7OkdrA186bhtl5XxvomAgLw5qTckxZ94vSI8teaAiAIfpvcxym7FktDtx2ApNv/Tgz0EOxLEtpXp8HgO8/pqQEiBgJHPXnPShDnuoNMAmqsQ+oYsKf7dezaUYS/r6jEZhX2twgDz+yHAAAAAAEOIPFzeDEZi+pD6TLIJPXz4vliVqLRobrIby/0l1ZyiZ2dAQ8EAAAAAAEQBP3///8M/AlsaWdodG5pbmcBCBLv0c3+HonuAAEDCEFZ3AsAAAAAAQQiUSA74Tflo81LdhBFqIwHKNMkNRg28E7Vnf2jebjYRkZStyEHE0cioCqqq2UZ2npxQi9Q6DXNZheODM6F4GjHHS3XScEJAG/ctUwEAAAADPwJbGlnaHRuaW5nAQgU79HN/h6J7gABAwhAQg8AAAAAAAEEIgAgybxcBjyu+/emx4FEB7Vie0+BqLVuy+kyxoL5y6wNGd8M/AlsaWdodG5pbmcBCJlh/FQRnSXyAA==" } }, { @@ -32490,11 +35090,11 @@ "id": "example:signpsbt#2", "method": "signpsbt", "params": [ - "cHNidP8BAgQCAAAAAQMEbwAAAAEEAQpsbt101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000" + "cHNidP8BAgQCAAAAAQMEmgAAAAEEAQEBBQECAQYBAwH7BAIAAAAAAQBxAgAAAAH7CdSDiNRK3tlKgYtNIUmQSJWLgE5Evlcb09JxAjW4egEAAAAA/f///wIAwusLAAAAABYAFAPP7IcV4fQEo27AEeQjj4Yyn5CcBhP00gAAAAAWABQijAzMA5X3Ec5AzhgdLZtnmTqh7YcAAAABAR8AwusLAAAAABYAFAPP7IcV4fQEo27AEeQjj4Yyn5CcAQ4g8XN4MRmL6kPpMsgk9fPi+WJWotGhushvL/SXVnKJnZ0BDwQAAAAAARAE/f///wz8CWxpZ2h0bmluZwEIGu/Rzf4eie4AAQMIYg3NCwAAAAABBCJRIMkYPt6RIfPG/RSYgixHp2AnMidmnJCVCIQ7rFu9gT9oDPwJbGlnaHRuaW5nAQgc79HN/h6J7gABAwiAhB4AAAAAAAEEIgAgybxcBjyu+/emx4FEB7Vie0+BqLVuy+kyxoL5y6wNGd8M/AlsaWdodG5pbmcBCJth/FQRnSXyAA==" ] }, "response": { - "signed_psbt": "cHNidP8BAgQCAAAAAQMEbwAAAAEEAQpsbt121000121000121000121000121000121000121000121000121000121000121000121000121000121000121000121000121000121000121000121000121000121000121000121000121000121000121000121000121000121000121000121000121000121000121000121000121000121000121000121000" + "signed_psbt": "cHNidP8BAgQCAAAAAQMEmgAAAAEEAQEBBQECAQYBAwH7BAIAAAAAAQBxAgAAAAH7CdSDiNRK3tlKgYtNIUmQSJWLgE5Evlcb09JxAjW4egEAAAAA/f///wIAwusLAAAAABYAFAPP7IcV4fQEo27AEeQjj4Yyn5CcBhP00gAAAAAWABQijAzMA5X3Ec5AzhgdLZtnmTqh7YcAAAABAR8AwusLAAAAABYAFAPP7IcV4fQEo27AEeQjj4Yyn5CcIgICRz15z0oQ57qDTAJqrEPqGLCn+3Xs2lGEv6+oxGYV9rdHMEQCIFl+CUBKJcswA/8DnqzPrYolo0k0uUfRJv60eB4niMmJAiA169wRBmliX5GL7+hqb2OHZ5i81V0lkIJylHfvkn933QEiBgJHPXnPShDnuoNMAmqsQ+oYsKf7dezaUYS/r6jEZhX2twgDz+yHAAAAAAEOIPFzeDEZi+pD6TLIJPXz4vliVqLRobrIby/0l1ZyiZ2dAQ8EAAAAAAEQBP3///8M/AlsaWdodG5pbmcBCBrv0c3+HonuAAEDCGINzQsAAAAAAQQiUSDJGD7ekSHzxv0UmIIsR6dgJzInZpyQlQiEO6xbvYE/aCEHn35PoCbJlSMQ2fFCjyoCQfQi72lK/cajhKIKcycdYWwJABIqDc8FAAAADPwJbGlnaHRuaW5nAQgc79HN/h6J7gABAwiAhB4AAAAAAAEEIgAgybxcBjyu+/emx4FEB7Vie0+BqLVuy+kyxoL5y6wNGd8M/AlsaWdodG5pbmcBCJth/FQRnSXyAA==" } } ] @@ -32617,13 +35217,13 @@ "id": "example:splice_init#1", "method": "splice_init", "params": { - "channel_id": "channelid0780000780000780000780000780000780000780000780000780000", + "channel_id": "8c69f1817bfe5402d7759cd829ae89ed7b16f0004fec1f3df9f5a5d3961f5f29", "relative_amount": 100000, - "initialpsbt": "cHNidP8BAgQCAAAAAQMEbwAAAAEEAQpsbt713000713000713000713000713000713000713000713000713000713000713000713000713000713000713000713000713000713000713000713000713000713000713000713000713000713000713000713000713000713000713000713000713000713000713000713000713000713000713000713000713000713000713000713000713000713000713000713000713000713000713000713000713000713000713000713000713000713000713000713000713000713000713000713000713000713000713000713000713000713000713000713000713000713000713000713000713000713000713000713000713000713000713000713000713000713000713000713000713000713000713000713000713000713000713000713000713000713000713000713000713000713000713000713000713000713000713000713000713000713000713000713000713000713000713000713000713000713000713000713000" + "initialpsbt": "cHNidP8BAF4CAAAAAYxp8YF7/lQC13Wc2Cmuie17FvAAT+wfPfn1pdOWH18pAQAAAAD9////Aed8DQAAAAAAIlEgj47URidVfbzMQq4BipxUdKmRKFeSxMqJHB9ZxWZdNGCVAAAAAAEAiQIAAAABe8lhdLWTt3QqdEAA+Ye+EPU6s0fgfj6uSlpNyrejJXQBAAAAAP3///8CQEIPAAAAAAAiACCT3t0MJlvKhoV20+4uWe67sg68KW5Y9+3Kk9XursCJlgEvDwAAAAAAIlEgW7Q7f9oXFdDdAUFoJaGFIqLX7LFkdbiHgOj6/Bxz74mPAAAAAQErAS8PAAAAAAAiUSBbtDt/2hcV0N0BQWgloYUiotfssWR1uIeA6Pr8HHPviQAA" } }, "response": { - "psbt": "cHNidP8BAgQCAAAAAQMEbwAAAAEEAQpsbt711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000" + "psbt": "cHNidP8BALICAAAAAoxp8YF7/lQC13Wc2Cmuie17FvAAT+wfPfn1pdOWH18pAQAAAAD9////jGnxgXv+VALXdZzYKa6J7XsW8ABP7B89+fWl05YfXykAAAAAAAAAAAAC53wNAAAAAAAiUSCPjtRGJ1V9vMxCrgGKnFR0qZEoV5LEyokcH1nFZl00YODIEAAAAAAAIgAgk97dDCZbyoaFdtPuLlnuu7IOvCluWPftypPV7q7AiZaVAAAAAAEAiQIAAAABe8lhdLWTt3QqdEAA+Ye+EPU6s0fgfj6uSlpNyrejJXQBAAAAAP3///8CQEIPAAAAAAAiACCT3t0MJlvKhoV20+4uWe67sg68KW5Y9+3Kk9XursCJlgEvDwAAAAAAIlEgW7Q7f9oXFdDdAUFoJaGFIqLX7LFkdbiHgOj6/Bxz74mPAAAAAQErAS8PAAAAAAAiUSBbtDt/2hcV0N0BQWgloYUiotfssWR1uIeA6Pr8HHPviQz8CWxpZ2h0bmluZwEI2+v9SbbITVQAAQCJAgAAAAF7yWF0tZO3dCp0QAD5h74Q9TqzR+B+Pq5KWk3Kt6MldAEAAAAA/f///wJAQg8AAAAAACIAIJPe3QwmW8qGhXbT7i5Z7ruyDrwpblj37cqT1e6uwImWAS8PAAAAAAAiUSBbtDt/2hcV0N0BQWgloYUiotfssWR1uIeA6Pr8HHPviY8AAAABAStAQg8AAAAAACIAIJPe3QwmW8qGhXbT7i5Z7ruyDrwpblj37cqT1e6uwImWAQVHUiECVw7AtutUVmMwIYOmLqx10I/e62TzE1IZIGXWAcjKUh0hAmaGfDQrglCra07axtuuL95TeCtpzRcTmUn71PIISH/yUq4M/AlsaWdodG5pbmcBCN3r/Um2yE1UAAz8CWxpZ2h0bmluZwEI3+v9SbbITVQADPwJbGlnaHRuaW5nAQjh6/1JtshNVAA=" } }, { @@ -32631,13 +35231,13 @@ "id": "example:splice_init#2", "method": "splice_init", "params": [ - "channelid0780000780000780000780000780000780000780000780000780000", + "8c69f1817bfe5402d7759cd829ae89ed7b16f0004fec1f3df9f5a5d3961f5f29", -105000, - "cHNidP8BAgQCAAAAAQMEbwAAAAEEAQpsbt714000714000714000714000714000714000714000714000714000714000714000714000714000714000714000714000714000714000714000714000714000714000714000714000714000714000714000714000714000714000714000714000714000714000714000714000714000714000714000714000714000714000714000714000714000714000714000714000714000714000714000714000714000714000714000714000714000714000714000714000714000714000714000714000714000714000714000714000714000714000714000714000714000714000714000714000714000714000714000714000714000714000714000714000714000714000714000714000714000714000714000714000714000714000714000714000714000714000714000714000714000714000714000714000714000714000714000714000714000714000714000714000714000714000714000714000714000714000714000714000" + "cHNidP8BAgQCAAAAAQMElgAAAAEEAQABBQEBAQYBAwH7BAIAAAAAAQMIoIYBAAAAAAABBCJRIMTSgkFfmoHRjgi2GaGdEWuGVssb9JPl9UC797egWEzaAA==" ] }, "response": { - "psbt": "cHNidP8BAgQCAAAAAQMEbwAAAAEEAQpsbt712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000" + "psbt": "cHNidP8BAgQCAAAAAQMElgAAAAEEAQEBBQECAQYBAwH7BAIAAAAAAQCyAgAAAAKMafGBe/5UAtd1nNgprontexbwAE/sHz359aXTlh9fKQEAAAAA/f///4xp8YF7/lQC13Wc2Cmuie17FvAAT+wfPfn1pdOWH18pAAAAAAAAAAAAAud8DQAAAAAAIlEgj47URidVfbzMQq4BipxUdKmRKFeSxMqJHB9ZxWZdNGDgyBAAAAAAACIAIJPe3QwmW8qGhXbT7i5Z7ruyDrwpblj37cqT1e6uwImWlQAAAAEBK+DIEAAAAAAAIgAgk97dDCZbyoaFdtPuLlnuu7IOvCluWPftypPV7q7AiZYBBUdSIQJXDsC261RWYzAhg6YurHXQj97rZPMTUhkgZdYByMpSHSECZoZ8NCuCUKtrTtrG264v3lN4K2nNFxOZSfvU8ghIf/JSrgEOIKKgpcI9Q+wEsS7RSRmjmYdS6mp201YJrWSI+o3lUYXdAQ8EAQAAAAEQBAAAAAAM/AlsaWdodG5pbmcBCOPr/Um2yE1UAAEDCKCGAQAAAAAAAQQiUSDE0oJBX5qB0Y4IthmhnRFrhlbLG/ST5fVAu/e3oFhM2gz8CWxpZ2h0bmluZwEI5ev9SbbITVQAAQMIuC4PAAAAAAABBCIAIJPe3QwmW8qGhXbT7i5Z7ruyDrwpblj37cqT1e6uwImWDPwJbGlnaHRuaW5nAQjn6/1JtshNVAA=" } } ] @@ -32781,15 +35381,15 @@ "id": "example:splice_signed#1", "method": "splice_signed", "params": { - "channel_id": "channelid0780000780000780000780000780000780000780000780000780000", - "psbt": "cHNidP8BAgQCAAAAAQMEbwAAAAEEAQpsbt718000718000718000718000718000718000718000718000718000718000718000718000718000718000718000718000718000718000718000718000718000718000718000718000718000718000718000718000718000718000718000718000718000718000718000718000718000718000718000718000718000718000718000718000718000718000718000718000718000718000718000718000718000718000718000718000718000718000718000718000718000718000718000718000718000718000718000718000718000718000718000718000718000718000718000718000718000718000718000718000718000718000718000718000718000718000718000718000718000718000718000718000718000718000718000718000718000718000718000718000718000718000718000718000718000718000718000718000718000718000718000718000718000718000718000718000718000718000718000718000" + "channel_id": "8c69f1817bfe5402d7759cd829ae89ed7b16f0004fec1f3df9f5a5d3961f5f29", + "psbt": "cHNidP8BALICAAAAAoxp8YF7/lQC13Wc2Cmuie17FvAAT+wfPfn1pdOWH18pAQAAAAD9////jGnxgXv+VALXdZzYKa6J7XsW8ABP7B89+fWl05YfXykAAAAAAAAAAAAC53wNAAAAAAAiUSCPjtRGJ1V9vMxCrgGKnFR0qZEoV5LEyokcH1nFZl00YODIEAAAAAAAIgAgk97dDCZbyoaFdtPuLlnuu7IOvCluWPftypPV7q7AiZaVAAAAAAEAiQIAAAABe8lhdLWTt3QqdEAA+Ye+EPU6s0fgfj6uSlpNyrejJXQBAAAAAP3///8CQEIPAAAAAAAiACCT3t0MJlvKhoV20+4uWe67sg68KW5Y9+3Kk9XursCJlgEvDwAAAAAAIlEgW7Q7f9oXFdDdAUFoJaGFIqLX7LFkdbiHgOj6/Bxz74mPAAAAAQErAS8PAAAAAAAiUSBbtDt/2hcV0N0BQWgloYUiotfssWR1uIeA6Pr8HHPviQETQLTBb3GLDHPmgJT+hDwc0lDwZiQ2XhntW4Utl0NU4wIUH17uYSeZn452jYgOtBefZzeh/10BLuF5nKig8JZ0afwhFvTEPeeTGXjlJSGiyNDqLm+lpUC+f31Q3j7YhyeyShxZCQD2T+TUAAAAAAz8CWxpZ2h0bmluZwEI2+v9SbbITVQAAQCJAgAAAAF7yWF0tZO3dCp0QAD5h74Q9TqzR+B+Pq5KWk3Kt6MldAEAAAAA/f///wJAQg8AAAAAACIAIJPe3QwmW8qGhXbT7i5Z7ruyDrwpblj37cqT1e6uwImWAS8PAAAAAAAiUSBbtDt/2hcV0N0BQWgloYUiotfssWR1uIeA6Pr8HHPviY8AAAABAStAQg8AAAAAACIAIJPe3QwmW8qGhXbT7i5Z7ruyDrwpblj37cqT1e6uwImWIgICVw7AtutUVmMwIYOmLqx10I/e62TzE1IZIGXWAcjKUh1HMEQCIB7dMSfLrXShtRe8zeHg+W1vLd8clWNtXWvLwOdeROcdAiADnsWDCAyq1tGn0qCOzzn5vnFDlLJHFj61W+YhPfQRHgEiAgJmhnw0K4JQq2tO2sbbri/eU3grac0XE5lJ+9TyCEh/8kcwRAIgNA4j/beg90ET4TwzJptoXqhtR7dr4/cgcShy6I4UpSACIDUY6E6eQvCmlMZ394cS1+fwijE94o2jS408fjuHRSPyAQEDBAEAAAABBUdSIQJXDsC261RWYzAhg6YurHXQj97rZPMTUhkgZdYByMpSHSECZoZ8NCuCUKtrTtrG264v3lN4K2nNFxOZSfvU8ghIf/JSrgz8CWxpZ2h0bmluZwEI3ev9SbbITVQAIQf4l/XsahrhZhlxJbtZN6e213tQQFKbPCTiBwSf3CvcvAkA9Hbq9AUAAAAM/AlsaWdodG5pbmcBCN/r/Um2yE1UAAz8CWxpZ2h0bmluZwEI4ev9SbbITVQA" } }, "response": { - "tx": "02000000000101sendpt64000640006400064000640006400064000640006400064000640006400064000640006400064000640006400064000640006400064000640006400064000640006400064000640006400064000640006400064000640006400064000640006400064000640006400064000640006400064000640006400064000640006400064000640006400064000640006400064000640006400064000640006400064000640006400064000640006400064000640006400064000640006400064000640006400064000640006400064000640006400064000640006400064000640006400064000640006400064000640006400064000640006400064000", - "txid": "txid6400064000640006400064000640006400064000640006400064000", + "tx": "020000000001028c69f1817bfe5402d7759cd829ae89ed7b16f0004fec1f3df9f5a5d3961f5f290100000000fdffffff8c69f1817bfe5402d7759cd829ae89ed7b16f0004fec1f3df9f5a5d3961f5f2900000000000000000002e77c0d00000000002251208f8ed44627557dbccc42ae018a9c5474a991285792c4ca891c1f59c5665d3460e0c810000000000022002093dedd0c265bca868576d3ee2e59eebbb20ebc296e58f7edca93d5eeaec089960140b4c16f718b0c73e68094fe843c1cd250f06624365e19ed5b852d974354e302141f5eee6127999f8e768d880eb4179f6737a1ff5d012ee1799ca8a0f0967469fc040047304402201edd3127cbad74a1b517bccde1e0f96d6f2ddf1c95636d5d6bcbc0e75e44e71d0220039ec583080caad6d1a7d2a08ecf39f9be714394b247163eb55be6213df4111e014730440220340e23fdb7a0f74113e13c33269b685ea86d47b76be3f720712872e88e14a52002203518e84e9e42f0a694c677f78712d7e7f08a313de28da34b8d3c7e3b874523f20147522102570ec0b6eb545663302183a62eac75d08fdeeb64f31352192065d601c8ca521d210266867c342b8250ab6b4edac6dbae2fde53782b69cd17139949fbd4f208487ff252ae95000000", + "txid": "dd8551e58dfa8864ad0956d3766aea528799a31949d12eb104ec433dc2a5a0a2", "outnum": 1, - "psbt": "cHNidP8BAgQCAAAAAQMEbwAAAAEEAQpsbt711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000" + "psbt": "cHNidP8BAgQCAAAAAQMElQAAAAEEAQIBBQECAQYBAwH7BAIAAAAAAQCJAgAAAAF7yWF0tZO3dCp0QAD5h74Q9TqzR+B+Pq5KWk3Kt6MldAEAAAAA/f///wJAQg8AAAAAACIAIJPe3QwmW8qGhXbT7i5Z7ruyDrwpblj37cqT1e6uwImWAS8PAAAAAAAiUSBbtDt/2hcV0N0BQWgloYUiotfssWR1uIeA6Pr8HHPviY8AAAABASsBLw8AAAAAACJRIFu0O3/aFxXQ3QFBaCWhhSKi1+yxZHW4h4Do+vwcc++JAQhCAUC0wW9xiwxz5oCU/oQ8HNJQ8GYkNl4Z7VuFLZdDVOMCFB9e7mEnmZ+Odo2IDrQXn2c3of9dAS7heZyooPCWdGn8AQ4gjGnxgXv+VALXdZzYKa6J7XsW8ABP7B89+fWl05YfXykBDwQBAAAAARAE/f///wz8CWxpZ2h0bmluZwEI2+v9SbbITVQAAQCJAgAAAAF7yWF0tZO3dCp0QAD5h74Q9TqzR+B+Pq5KWk3Kt6MldAEAAAAA/f///wJAQg8AAAAAACIAIJPe3QwmW8qGhXbT7i5Z7ruyDrwpblj37cqT1e6uwImWAS8PAAAAAAAiUSBbtDt/2hcV0N0BQWgloYUiotfssWR1uIeA6Pr8HHPviY8AAAABAStAQg8AAAAAACIAIJPe3QwmW8qGhXbT7i5Z7ruyDrwpblj37cqT1e6uwImWAQjaBABHMEQCIB7dMSfLrXShtRe8zeHg+W1vLd8clWNtXWvLwOdeROcdAiADnsWDCAyq1tGn0qCOzzn5vnFDlLJHFj61W+YhPfQRHgFHMEQCIDQOI/23oPdBE+E8MyabaF6obUe3a+P3IHEocuiOFKUgAiA1GOhOnkLwppTGd/eHEtfn8IoxPeKNo0uNPH47h0Uj8gFHUiECVw7AtutUVmMwIYOmLqx10I/e62TzE1IZIGXWAcjKUh0hAmaGfDQrglCra07axtuuL95TeCtpzRcTmUn71PIISH/yUq4BDiCMafGBe/5UAtd1nNgprontexbwAE/sHz359aXTlh9fKQEPBAAAAAABEAQAAAAADPwJbGlnaHRuaW5nAQjd6/1JtshNVAABAwjnfA0AAAAAAAEEIlEgj47URidVfbzMQq4BipxUdKmRKFeSxMqJHB9ZxWZdNGAhB/iX9exqGuFmGXElu1k3p7bXe1BAUps8JOIHBJ/cK9y8CQD0dur0BQAAAAz8CWxpZ2h0bmluZwEI3+v9SbbITVQAAQMI4MgQAAAAAAABBCIAIJPe3QwmW8qGhXbT7i5Z7ruyDrwpblj37cqT1e6uwImWDPwJbGlnaHRuaW5nAQjh6/1JtshNVAA=" } }, { @@ -32797,15 +35397,15 @@ "id": "example:splice_signed#2", "method": "splice_signed", "params": { - "channel_id": "channelid0780000780000780000780000780000780000780000780000780000", - "psbt": "cHNidP8BAgQCAAAAAQMEbwAAAAEEAQpsbt712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000" + "channel_id": "8c69f1817bfe5402d7759cd829ae89ed7b16f0004fec1f3df9f5a5d3961f5f29", + "psbt": "cHNidP8BAgQCAAAAAQMElgAAAAEEAQEBBQECAQYBAwH7BAIAAAAAAQCyAgAAAAKMafGBe/5UAtd1nNgprontexbwAE/sHz359aXTlh9fKQEAAAAA/f///4xp8YF7/lQC13Wc2Cmuie17FvAAT+wfPfn1pdOWH18pAAAAAAAAAAAAAud8DQAAAAAAIlEgj47URidVfbzMQq4BipxUdKmRKFeSxMqJHB9ZxWZdNGDgyBAAAAAAACIAIJPe3QwmW8qGhXbT7i5Z7ruyDrwpblj37cqT1e6uwImWlQAAAAEBK+DIEAAAAAAAIgAgk97dDCZbyoaFdtPuLlnuu7IOvCluWPftypPV7q7AiZYiAgJXDsC261RWYzAhg6YurHXQj97rZPMTUhkgZdYByMpSHUcwRAIgHbSqe2swZI4NmH8Cd/8gnOu1gpTvjTOm3DnFa8F0jqUCIA6TKkE+sHorpv9rFt1kaF8susqwjIwnSpviEfQj4EnpASICAmaGfDQrglCra07axtuuL95TeCtpzRcTmUn71PIISH/yRzBEAiAjs9cgsaoFzMWW7C34aGWMEEtzBSbkl2oNBqTbASGeHwIgWFJGWFWqUFMpe28YbhGBQHshcyD7LR3Rf3bM/q3Ty2IBAQMEAQAAAAEFR1IhAlcOwLbrVFZjMCGDpi6sddCP3utk8xNSGSBl1gHIylIdIQJmhnw0K4JQq2tO2sbbri/eU3grac0XE5lJ+9TyCEh/8lKuAQ4goqClwj1D7ASxLtFJGaOZh1LqanbTVgmtZIj6jeVRhd0BDwQBAAAAARAEAAAAAAz8CWxpZ2h0bmluZwEI4+v9SbbITVQAAQMIoIYBAAAAAAABBCJRIMTSgkFfmoHRjgi2GaGdEWuGVssb9JPl9UC797egWEzaDPwJbGlnaHRuaW5nAQjl6/1JtshNVAABAwi4Lg8AAAAAAAEEIgAgk97dDCZbyoaFdtPuLlnuu7IOvCluWPftypPV7q7AiZYM/AlsaWdodG5pbmcBCOfr/Um2yE1UAA==" } }, "response": { - "tx": "02000000000102sendpt65000650006500065000650006500065000650006500065000650006500065000650006500065000650006500065000650006500065000650006500065000650006500065000650006500065000650006500065000650006500065000650006500065000650006500065000650006500065000650006500065000650006500065000650006500065000650006500065000650006500065000650006500065000650006500065000650006500065000650006500065000650006500065000650006500065000650006500065000650006500065000650006500065000650006500065000650006500065000650006500065000650006500065000", - "txid": "txid6500065000650006500065000650006500065000650006500065000", + "tx": "02000000000101a2a0a5c23d43ec04b12ed14919a3998752ea6a76d35609ad6488fa8de55185dd01000000000000000002a086010000000000225120c4d282415f9a81d18e08b619a19d116b8656cb1bf493e5f540bbf7b7a0584cdab82e0f000000000022002093dedd0c265bca868576d3ee2e59eebbb20ebc296e58f7edca93d5eeaec08996040047304402201db4aa7b6b30648e0d987f0277ff209cebb58294ef8d33a6dc39c56bc1748ea502200e932a413eb07a2ba6ff6b16dd64685f2cbacab08c8c274a9be211f423e049e901473044022023b3d720b1aa05ccc596ec2df868658c104b730526e4976a0d06a4db01219e1f02205852465855aa5053297b6f186e1181407b217320fb2d1dd17f76ccfeadd3cb620147522102570ec0b6eb545663302183a62eac75d08fdeeb64f31352192065d601c8ca521d210266867c342b8250ab6b4edac6dbae2fde53782b69cd17139949fbd4f208487ff252ae96000000", + "txid": "738c9b7d3bb47dcfe6bed43c999d2e2f177c476d2bc7d3ffb49bd25ee21c68a7", "outnum": 1, - "psbt": "cHNidP8BAgQCAAAAAQMEbwAAAAEEAQpsbt712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000" + "psbt": "cHNidP8BAgQCAAAAAQMElgAAAAEEAQEBBQECAQYBAwH7BAIAAAAAAQCyAgAAAAKMafGBe/5UAtd1nNgprontexbwAE/sHz359aXTlh9fKQEAAAAA/f///4xp8YF7/lQC13Wc2Cmuie17FvAAT+wfPfn1pdOWH18pAAAAAAAAAAAAAud8DQAAAAAAIlEgj47URidVfbzMQq4BipxUdKmRKFeSxMqJHB9ZxWZdNGDgyBAAAAAAACIAIJPe3QwmW8qGhXbT7i5Z7ruyDrwpblj37cqT1e6uwImWlQAAAAEBK+DIEAAAAAAAIgAgk97dDCZbyoaFdtPuLlnuu7IOvCluWPftypPV7q7AiZYBCNoEAEcwRAIgHbSqe2swZI4NmH8Cd/8gnOu1gpTvjTOm3DnFa8F0jqUCIA6TKkE+sHorpv9rFt1kaF8susqwjIwnSpviEfQj4EnpAUcwRAIgI7PXILGqBczFluwt+GhljBBLcwUm5JdqDQak2wEhnh8CIFhSRlhVqlBTKXtvGG4RgUB7IXMg+y0d0X92zP6t08tiAUdSIQJXDsC261RWYzAhg6YurHXQj97rZPMTUhkgZdYByMpSHSECZoZ8NCuCUKtrTtrG264v3lN4K2nNFxOZSfvU8ghIf/JSrgEOIKKgpcI9Q+wEsS7RSRmjmYdS6mp201YJrWSI+o3lUYXdAQ8EAQAAAAEQBAAAAAAM/AlsaWdodG5pbmcBCOPr/Um2yE1UAAEDCKCGAQAAAAAAAQQiUSDE0oJBX5qB0Y4IthmhnRFrhlbLG/ST5fVAu/e3oFhM2gz8CWxpZ2h0bmluZwEI5ev9SbbITVQAAQMIuC4PAAAAAAABBCIAIJPe3QwmW8qGhXbT7i5Z7ruyDrwpblj37cqT1e6uwImWDPwJbGlnaHRuaW5nAQjn6/1JtshNVAA=" } } ] @@ -32949,12 +35549,12 @@ "id": "example:splice_update#1", "method": "splice_update", "params": { - "channel_id": "channelid0780000780000780000780000780000780000780000780000780000", - "psbt": "cHNidP8BAgQCAAAAAQMEbwAAAAEEAQpsbt711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000" + "channel_id": "8c69f1817bfe5402d7759cd829ae89ed7b16f0004fec1f3df9f5a5d3961f5f29", + "psbt": "cHNidP8BALICAAAAAoxp8YF7/lQC13Wc2Cmuie17FvAAT+wfPfn1pdOWH18pAQAAAAD9////jGnxgXv+VALXdZzYKa6J7XsW8ABP7B89+fWl05YfXykAAAAAAAAAAAAC53wNAAAAAAAiUSCPjtRGJ1V9vMxCrgGKnFR0qZEoV5LEyokcH1nFZl00YODIEAAAAAAAIgAgk97dDCZbyoaFdtPuLlnuu7IOvCluWPftypPV7q7AiZaVAAAAAAEAiQIAAAABe8lhdLWTt3QqdEAA+Ye+EPU6s0fgfj6uSlpNyrejJXQBAAAAAP3///8CQEIPAAAAAAAiACCT3t0MJlvKhoV20+4uWe67sg68KW5Y9+3Kk9XursCJlgEvDwAAAAAAIlEgW7Q7f9oXFdDdAUFoJaGFIqLX7LFkdbiHgOj6/Bxz74mPAAAAAQErAS8PAAAAAAAiUSBbtDt/2hcV0N0BQWgloYUiotfssWR1uIeA6Pr8HHPviQz8CWxpZ2h0bmluZwEI2+v9SbbITVQAAQCJAgAAAAF7yWF0tZO3dCp0QAD5h74Q9TqzR+B+Pq5KWk3Kt6MldAEAAAAA/f///wJAQg8AAAAAACIAIJPe3QwmW8qGhXbT7i5Z7ruyDrwpblj37cqT1e6uwImWAS8PAAAAAAAiUSBbtDt/2hcV0N0BQWgloYUiotfssWR1uIeA6Pr8HHPviY8AAAABAStAQg8AAAAAACIAIJPe3QwmW8qGhXbT7i5Z7ruyDrwpblj37cqT1e6uwImWAQVHUiECVw7AtutUVmMwIYOmLqx10I/e62TzE1IZIGXWAcjKUh0hAmaGfDQrglCra07axtuuL95TeCtpzRcTmUn71PIISH/yUq4M/AlsaWdodG5pbmcBCN3r/Um2yE1UAAz8CWxpZ2h0bmluZwEI3+v9SbbITVQADPwJbGlnaHRuaW5nAQjh6/1JtshNVAA=" } }, "response": { - "psbt": "cHNidP8BAgQCAAAAAQMEbwAAAAEEAQpsbt715200715200715200715200715200715200715200715200715200715200715200715200715200715200715200715200715200715200715200715200715200715200715200715200715200715200715200715200715200715200715200715200715200715200715200715200715200715200715200715200715200715200715200715200715200715200715200715200715200715200715200715200715200715200715200715200715200715200715200715200715200715200715200715200715200715200715200715200715200715200715200715200715200715200715200715200715200715200715200715200715200715200715200715200715200715200715200715200715200715200715200715200715200715200715200715200715200715200715200715200715200715200715200715200715200715200715200715200715200715200715200715200715200715200715200715200715200715200715200715200", + "psbt": "cHNidP8BALICAAAAAoxp8YF7/lQC13Wc2Cmuie17FvAAT+wfPfn1pdOWH18pAQAAAAD9////jGnxgXv+VALXdZzYKa6J7XsW8ABP7B89+fWl05YfXykAAAAAAAAAAAAC53wNAAAAAAAiUSCPjtRGJ1V9vMxCrgGKnFR0qZEoV5LEyokcH1nFZl00YODIEAAAAAAAIgAgk97dDCZbyoaFdtPuLlnuu7IOvCluWPftypPV7q7AiZaVAAAAAAEAiQIAAAABe8lhdLWTt3QqdEAA+Ye+EPU6s0fgfj6uSlpNyrejJXQBAAAAAP3///8CQEIPAAAAAAAiACCT3t0MJlvKhoV20+4uWe67sg68KW5Y9+3Kk9XursCJlgEvDwAAAAAAIlEgW7Q7f9oXFdDdAUFoJaGFIqLX7LFkdbiHgOj6/Bxz74mPAAAAAQErAS8PAAAAAAAiUSBbtDt/2hcV0N0BQWgloYUiotfssWR1uIeA6Pr8HHPviQz8CWxpZ2h0bmluZwEI2+v9SbbITVQAAQCJAgAAAAF7yWF0tZO3dCp0QAD5h74Q9TqzR+B+Pq5KWk3Kt6MldAEAAAAA/f///wJAQg8AAAAAACIAIJPe3QwmW8qGhXbT7i5Z7ruyDrwpblj37cqT1e6uwImWAS8PAAAAAAAiUSBbtDt/2hcV0N0BQWgloYUiotfssWR1uIeA6Pr8HHPviY8AAAABAStAQg8AAAAAACIAIJPe3QwmW8qGhXbT7i5Z7ruyDrwpblj37cqT1e6uwImWIgICVw7AtutUVmMwIYOmLqx10I/e62TzE1IZIGXWAcjKUh1HMEQCIB7dMSfLrXShtRe8zeHg+W1vLd8clWNtXWvLwOdeROcdAiADnsWDCAyq1tGn0qCOzzn5vnFDlLJHFj61W+YhPfQRHgEiAgJmhnw0K4JQq2tO2sbbri/eU3grac0XE5lJ+9TyCEh/8kcwRAIgNA4j/beg90ET4TwzJptoXqhtR7dr4/cgcShy6I4UpSACIDUY6E6eQvCmlMZ394cS1+fwijE94o2jS408fjuHRSPyAQEDBAEAAAABBUdSIQJXDsC261RWYzAhg6YurHXQj97rZPMTUhkgZdYByMpSHSECZoZ8NCuCUKtrTtrG264v3lN4K2nNFxOZSfvU8ghIf/JSrgz8CWxpZ2h0bmluZwEI3ev9SbbITVQADPwJbGlnaHRuaW5nAQjf6/1JtshNVAAM/AlsaWdodG5pbmcBCOHr/Um2yE1UAA==", "commitments_secured": true, "signatures_secured": true } @@ -32964,12 +35564,12 @@ "id": "example:splice_update#2", "method": "splice_update", "params": [ - "channelid0780000780000780000780000780000780000780000780000780000", - "cHNidP8BAgQCAAAAAQMEbwAAAAEEAQpsbt712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000" + "8c69f1817bfe5402d7759cd829ae89ed7b16f0004fec1f3df9f5a5d3961f5f29", + "cHNidP8BAgQCAAAAAQMElgAAAAEEAQEBBQECAQYBAwH7BAIAAAAAAQCyAgAAAAKMafGBe/5UAtd1nNgprontexbwAE/sHz359aXTlh9fKQEAAAAA/f///4xp8YF7/lQC13Wc2Cmuie17FvAAT+wfPfn1pdOWH18pAAAAAAAAAAAAAud8DQAAAAAAIlEgj47URidVfbzMQq4BipxUdKmRKFeSxMqJHB9ZxWZdNGDgyBAAAAAAACIAIJPe3QwmW8qGhXbT7i5Z7ruyDrwpblj37cqT1e6uwImWlQAAAAEBK+DIEAAAAAAAIgAgk97dDCZbyoaFdtPuLlnuu7IOvCluWPftypPV7q7AiZYBBUdSIQJXDsC261RWYzAhg6YurHXQj97rZPMTUhkgZdYByMpSHSECZoZ8NCuCUKtrTtrG264v3lN4K2nNFxOZSfvU8ghIf/JSrgEOIKKgpcI9Q+wEsS7RSRmjmYdS6mp201YJrWSI+o3lUYXdAQ8EAQAAAAEQBAAAAAAM/AlsaWdodG5pbmcBCOPr/Um2yE1UAAEDCKCGAQAAAAAAAQQiUSDE0oJBX5qB0Y4IthmhnRFrhlbLG/ST5fVAu/e3oFhM2gz8CWxpZ2h0bmluZwEI5ev9SbbITVQAAQMIuC4PAAAAAAABBCIAIJPe3QwmW8qGhXbT7i5Z7ruyDrwpblj37cqT1e6uwImWDPwJbGlnaHRuaW5nAQjn6/1JtshNVAA=" ] }, "response": { - "psbt": "cHNidP8BAgQCAAAAAQMEbwAAAAEEAQpsbt712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000", + "psbt": "cHNidP8BAgQCAAAAAQMElgAAAAEEAQEBBQECAQYBAwH7BAIAAAAAAQCyAgAAAAKMafGBe/5UAtd1nNgprontexbwAE/sHz359aXTlh9fKQEAAAAA/f///4xp8YF7/lQC13Wc2Cmuie17FvAAT+wfPfn1pdOWH18pAAAAAAAAAAAAAud8DQAAAAAAIlEgj47URidVfbzMQq4BipxUdKmRKFeSxMqJHB9ZxWZdNGDgyBAAAAAAACIAIJPe3QwmW8qGhXbT7i5Z7ruyDrwpblj37cqT1e6uwImWlQAAAAEBK+DIEAAAAAAAIgAgk97dDCZbyoaFdtPuLlnuu7IOvCluWPftypPV7q7AiZYiAgJXDsC261RWYzAhg6YurHXQj97rZPMTUhkgZdYByMpSHUcwRAIgHbSqe2swZI4NmH8Cd/8gnOu1gpTvjTOm3DnFa8F0jqUCIA6TKkE+sHorpv9rFt1kaF8susqwjIwnSpviEfQj4EnpASICAmaGfDQrglCra07axtuuL95TeCtpzRcTmUn71PIISH/yRzBEAiAjs9cgsaoFzMWW7C34aGWMEEtzBSbkl2oNBqTbASGeHwIgWFJGWFWqUFMpe28YbhGBQHshcyD7LR3Rf3bM/q3Ty2IBAQMEAQAAAAEFR1IhAlcOwLbrVFZjMCGDpi6sddCP3utk8xNSGSBl1gHIylIdIQJmhnw0K4JQq2tO2sbbri/eU3grac0XE5lJ+9TyCEh/8lKuAQ4goqClwj1D7ASxLtFJGaOZh1LqanbTVgmtZIj6jeVRhd0BDwQBAAAAARAEAAAAAAz8CWxpZ2h0bmluZwEI4+v9SbbITVQAAQMIoIYBAAAAAAABBCJRIMTSgkFfmoHRjgi2GaGdEWuGVssb9JPl9UC797egWEzaDPwJbGlnaHRuaW5nAQjl6/1JtshNVAABAwi4Lg8AAAAAAAEEIgAgk97dDCZbyoaFdtPuLlnuu7IOvCluWPftypPV7q7AiZYM/AlsaWdodG5pbmcBCOfr/Um2yE1UAA==", "commitments_secured": true, "signatures_secured": true } @@ -33133,7 +35733,7 @@ "response": { "rows": [ [ - "nodeid020202020202020202020202020202020202020202020202020202020202" + "022d223620a359a47ff7f7ac447c85c46c923da53389221a0054c11c1e3ca31d59" ] ] } @@ -33167,19 +35767,19 @@ "id": "example:sql#3", "method": "sql", "params": [ - "SELECT nodeid FROM nodes WHERE nodeid != x'nodeid030303030303030303030303030303030303030303030303030303030303'" + "SELECT nodeid FROM nodes WHERE nodeid != x'035d2b1192dfba134e10e540875d366ebc8bc353d5aa766b80c090b39c3a5d885d'" ] }, "response": { "rows": [ [ - "nodeid020202020202020202020202020202020202020202020202020202020202" + "022d223620a359a47ff7f7ac447c85c46c923da53389221a0054c11c1e3ca31d59" ], [ - "nodeid010101010101010101010101010101010101010101010101010101010101" + "0266e4598d1d3c415f572a8488830b60f7e744ed9235eb0b1ba93283b315c03518" ], [ - "nodeid040404040404040404040404040404040404040404040404040404040404" + "0382ce59ebf18be7d84677c2e35f23294b9992ceca95491fcf8a56c6cb2d9de199" ] ] } @@ -33192,16 +35792,16 @@ "id": "example:sql#4", "method": "sql", "params": [ - "SELECT nodeid FROM nodes WHERE nodeid IN (x'nodeid010101010101010101010101010101010101010101010101010101010101', x'nodeid030303030303030303030303030303030303030303030303030303030303')" + "SELECT nodeid FROM nodes WHERE nodeid IN (x'0266e4598d1d3c415f572a8488830b60f7e744ed9235eb0b1ba93283b315c03518', x'035d2b1192dfba134e10e540875d366ebc8bc353d5aa766b80c090b39c3a5d885d')" ] }, "response": { "rows": [ [ - "nodeid010101010101010101010101010101010101010101010101010101010101" + "0266e4598d1d3c415f572a8488830b60f7e744ed9235eb0b1ba93283b315c03518" ], [ - "nodeid030303030303030303030303030303030303030303030303030303030303" + "035d2b1192dfba134e10e540875d366ebc8bc353d5aa766b80c090b39c3a5d885d" ] ] } @@ -33220,7 +35820,7 @@ "response": { "rows": [ [ - "nodeid020202020202020202020202020202020202020202020202020202020202", + "022d223620a359a47ff7f7ac447c85c46c923da53389221a0054c11c1e3ca31d59", 490493792, 1000000000, "CHANNELD_NORMAL:Channel ready for use." @@ -33258,21 +35858,15 @@ "response": { "rows": [ [ - 28, - 23, + 22, + 17, 0, "option_static_remotekey" ], [ - 29, 23, + 17, 1, - "option_anchors_zero_fee_htlc_tx" - ], - [ - 30, - 23, - 2, "option_anchors" ] ] @@ -33328,12 +35922,12 @@ }, "response": { "scb": [ - "0000000000000001channelid0340000340000340000340000340000340000340000340000340000nodeid03030303030303030303030303030303030303030303030303030303030300017f000001034003400340034003400340034003400340034003400340034003400340034003400340034003400340034003400003401000", - "0000000000000002channelid0340200340200340200340200340200340200340200340200340200nodeid03030303030303030303030303030303030303030303030303030303030300017f000001034203420342034203420342034203420342034203420342034203420342034203420342034203420342034203420003401000", - "0000000000000003channelid0410000410000410000410000410000410000410000410000410000nodeid01010101010101010101010101010101010101010101010101010101010100017f000001041004100410041004100410041004100410041004100410041004100410041004100410041004100410041004100003401000", - "0000000000000004channelid0120000120000120000120000120000120000120000120000120000nodeid01010101010101010101010101010101010101010101010101010101010100017f000001012001200120012001200120012001200120012001200120012001200120012001200120012001200120012001200003401000", - "0000000000000005channelid1520015200152001520015200152001520015200152001520015200nodeid01010101010101010101010101010101010101010101010101010101010100017f000001015201520152015201520152015201520152015201520152015201520152015201520152015201520152015201520003401000", - "0000000000000006channelid1240012400124001240012400124001240012400124001240012400nodeid02020202020202020202020202020202020202020202020202020202020200017f000001012401240124012401240124012401240124012401240124012401240124012401240124012401240124012401240003401000" + "0000000000000006f4e1de801de57374d5737da622611e3a1ad9f16d5df9c30fceecc11ce732eeeb022d223620a359a47ff7f7ac447c85c46c923da53389221a0054c11c1e3ca31d59017f000001a95cbe3270e5e0998af5eb0a67f7bf6e8d5b3d3d43059b3e4cfbd1e4fca6152c51320000000100000000000f42400003401000000000eb015c0000fffffffffffe000000020000ffffffffffff3283fc1863a9702a8e188ed55475324e55485a8758d2068cfea35851418c55740000fffffffffffed00ec892b1739b55ddc0cca2988d8731eb33f2295c1fcc13fdbdfff9d3f85d6d038402a6939f0f9d5c7a41464169eb692b4d2d73266b3c46345cd036ca577a15bdeeaa027662682a646ce7671c3a091bf639176e87d3379022126b209ebadadae19ffc0e02c59668c64362eaeabf44ee4f10b98fc92412cbea74b6f3a917423dfdf3ca282602773e6c29472ab708e5b127e8ae1ce2d8b7f56b457299f93bb72bb73fdbcf91770501010702a5f8", + "000000000000000121bd30cac60f477f2c4267220b1702a6ec5780db34f9934fa94b8c0508bf3357035d2b1192dfba134e10e540875d366ebc8bc353d5aa766b80c090b39c3a5d885d017f000001dcf8fdd5381f36008c3eac24cdde5ec0fea8f39240575ef0cb4406cb51ad419dd7810000000000000000000f424000034010000000011301840000fffffffffffa000000030000fffffffffffb8ff7d0df4eee78e558b4e07f82049aaa933f4f4932e13e1e7fee5cb103f7a0b50000fffffffffffa79176754ea338ffa080591b946a6ac1c47ff579ae7e45857bf01261ebe1c46ba0000fffffffffffcbdb924885293efdaa1ba8f556161f4fe525c19483def49b9af85c1623bc6d27b038402add69f29ad433cb7d4c9470f2d49d80245fd9e76a992197528a131e37711efac02c57de22185162001ffaf2e61b053b1d0e280d73ecec1b04916df2c65642d94a102cd4e1a07ee85714b6eada09d9cf81aeb15bfc72ddd003235530c58bbd0c0144902b10f36d2ebab3ce560abf15ceb1bef619491e0597a794fdafcfdf8708eec9e2d0501010702a5f8", + "00000000000000027512083907c74ed3a045e9bf772b3d72948eb93daf84a1cee57108800451aaf2035d2b1192dfba134e10e540875d366ebc8bc353d5aa766b80c090b39c3a5d885d017f000001dcf80239a9c9f2a91e69ba01800baf71f55efe457677b2e5cbd640b888dc1c9375b40000000000000000000f42400003401000000000c301340000ffffffffffff000000010000ffffffffffff0e07b6188dd51f15bb5cb9027950bf487a612dca57e2928de3f28f6ee796978b03840330b7ddf07e5bc779ea468875371ea25b560491c5feaeeb5e229ded3820d1d69103620748b3796c4988dd0fc63b92ae011dc989f15c433a55ed38e24318a43b4c93021bfe48bb1aded55878b00a3f00c5c1bffa1010510d8ba1c6372012ac9c3205d20201604aa7056ab8926038a846014bdbe4874ceef7ce45141b8009b0e2f49e7ec70501010702a5f8", + "0000000000000003222d999f537e32e9458c5db17a63e012dcced61340de06fda5bc30566270b0aa0266e4598d1d3c415f572a8488830b60f7e744ed9235eb0b1ba93283b315c03518017f0000017531932479f6d82ee59c7aa67b99568de0a31c202f6a3ff18a6bdd1ec22683cf026500000000000000000bebb3cb00034010000000009b010c0001000000000000000000000384021f90b5f38e0c0ea50bccfcf70a32cd4395c8c544e70636b7cc41831fe33fb4ce03bcfb0d457dfa07f508f434e6a2f040dd3dd233e7002dbe1c1b5d86ed5d3efd76030a4ce755504748f47401fc016578a52e104cbbd28251f10b11e4b3e55d0fe1d303986bdd0842662b8d0d18147630a720e952a2cda624c63ef4903357d27e54f7920501000702a5f8", + "0000000000000004a4a379248e49d207cc984646e632e1a31105a85708b9d6d961a5018fdd489f5a0266e4598d1d3c415f572a8488830b60f7e744ed9235eb0b1ba93283b315c03518017f000001970c7f07a15ce1fe1519d46536c4036f1c13527fa8bf52f6a5299b860f982ba2ed7e00000001000000000000753000034010000000009b010c000100000000000000000000038402c8aabcf1224df10e9d803dc3918797892fe0abec56d3e06f121bcebbe9ab0a2c03bd181375d57b8b1d15def9c5f9007b3c3ff98a140c0a44c9dc5f54ac7ea4baf30310952e08f9960711d8142dfa171c0fc2348762acea003f3897397f6ace8454130382da2a229450c4a8e8cea70bbd147eaaf981184bff8c1d70b70c30a494d848420501010702a5f8", + "000000000000000509eb55872cd9039ecd08281af756e23b15aad4129fd6a9bcd71b472114ebf43a0266e4598d1d3c415f572a8488830b60f7e744ed9235eb0b1ba93283b315c03518017f000001970c64ed91a21c10208d715b59801b12b4a6eff9ea9e4e7d45971c298b62d90ece8e00000000000000000000c35000034010000000009b010c000100000000000000000000038402e885f38e784050b386fb32d20935acc61059d8b02b6bec0ac2bfc8b2c5cf7f3103ae69dbfc6511ba0781c13113e16e1557a875b910cb1cb1fe1ef95a7edb36135a03758d5faa8515942873911e21869b1b90a4be72af14b394bc064da6ba518b087003750b588cd1fb8d60276c12c1c3eef7e302e3772414234404289db8c10f5731320501010702a5f8" ] } } @@ -33454,12 +36048,12 @@ "id": "example:txdiscard#1", "method": "txdiscard", "params": [ - "txidtxprep000100001000010000100001000010000100001000010000100001" + "2b52249cc84f3698d6b324dab40f97d7b11812cf9bad3384ff775621e86df856" ] }, "response": { - "unsigned_tx": "0200000000000600060006000600060006000600060006000600060006000600060006000600060006000600060006000600060006000600060006000600060006000600060006000600060006000600060006000600060006000600060006000600060006000600060006000600060006000600060006000600060006000600060006000600060006", - "txid": "txidtxprep000100001000010000100001000010000100001000010000100001" + "unsigned_tx": "0200000001fb09d48388d44aded94a818b4d21499048958b804e44be571bd3d2710235b87a0000000000fdffffff020000000100000000220020a056363be8c7dbb511098cc50fbca24843e6ed6de03f816465f1998a9a82a09d4183980000000000225120f1393467c717cd50de2760167d4311141a8f750c89f54fd2c900601a7da8434c98000000", + "txid": "2b52249cc84f3698d6b324dab40f97d7b11812cf9bad3384ff775621e86df856" } }, { @@ -33467,12 +36061,12 @@ "id": "example:txdiscard#2", "method": "txdiscard", "params": { - "txid": "txidtxprep000300003000030000300003000030000300003000030000300003" + "txid": "215dcab7a090082d977159212a49895a7951789b71869e6f09e13b7923c7a393" } }, "response": { - "unsigned_tx": "0200000000000800080008000800080008000800080008000800080008000800080008000800080008000800080008000800080008000800080008000800080008000800080008000800080008000800080008000800080008000800080008000800080008000800080008000800080008000800080008000800080008000800080008000800080008", - "txid": "txidtxprep000300003000030000300003000030000300003000030000300003" + "unsigned_tx": "020000000108090ec7f33379421f47fd271d060d0e29869bde5fac8230b3a47e7d89bd6c9f0000000000fdffffff0240420f00000000002200200fefd5034808bec0c94b857b7a3ddeeece7cae1b2101b2f23f1c114b14073f31eaa2f000000000002251205c54c6ff7b25c08e66a91d4256a5ca2c374ab1faf56377e8d65466cf997614ce99000000", + "txid": "215dcab7a090082d977159212a49895a7951789b71869e6f09e13b7923c7a393" } } ] @@ -33582,15 +36176,15 @@ "params": [ [ { - "bcrt1p0002020202020202020202020202020202020202020202020202020202": 16777216 + "bcrt1q5ptrvwlgcldm2ygf3nzsl09zfpp7dmtduqlczer97xvc4x5z5zwsc2ulv4": 16777216 } ] ] }, "response": { - "unsigned_tx": "0200000000000600060006000600060006000600060006000600060006000600060006000600060006000600060006000600060006000600060006000600060006000600060006000600060006000600060006000600060006000600060006000600060006000600060006000600060006000600060006000600060006000600060006000600060006", - "txid": "txidtxprep000100001000010000100001000010000100001000010000100001", - "psbt": "cHNidP8BAgQCAAAAAQMEbwAAAAEEAQpsbt101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000" + "unsigned_tx": "0200000001fb09d48388d44aded94a818b4d21499048958b804e44be571bd3d2710235b87a0000000000fdffffff020000000100000000220020a056363be8c7dbb511098cc50fbca24843e6ed6de03f816465f1998a9a82a09d4183980000000000225120f1393467c717cd50de2760167d4311141a8f750c89f54fd2c900601a7da8434c98000000", + "txid": "2b52249cc84f3698d6b324dab40f97d7b11812cf9bad3384ff775621e86df856", + "psbt": "cHNidP8BAgQCAAAAAQMEmAAAAAEEAQEBBQECAQYBAwH7BAIAAAAAAQBxAgAAAAF7yWF0tZO3dCp0QAD5h74Q9TqzR+B+Pq5KWk3Kt6MldAAAAAAA/f///wKAlpgBAAAAABYAFP+FM+rwsTm8Bz0qImOObKCgg3zVXuPf3gAAAAAWABTdQ3+1uuxIN+FttkktoVc11r7FM5cAAAABAR+AlpgBAAAAABYAFP+FM+rwsTm8Bz0qImOObKCgg3zVAQ4g+wnUg4jUSt7ZSoGLTSFJkEiVi4BORL5XG9PScQI1uHoBDwQAAAAAARAE/f///wABAwgAAAABAAAAAAEEIgAgoFY2O+jH27URCYzFD7yiSEPm7W3gP4FkZfGZipqCoJ0AAQMIQYOYAAAAAAABBCJRIPE5NGfHF81Q3idgFn1DERQaj3UMifVP0skAYBp9qENMAA==" } }, { @@ -33600,15 +36194,15 @@ "params": { "outputs": [ { - "bcrt1p0003030303030303030303030303030303030303030303030303030303": 16777216 + "bcrt1q4hz6a4gtecfmy8z870cwkq2gzc0t7n9u9pu23689u55ghwewemqsv4v2zs": 16777216 } ] } }, "response": { - "unsigned_tx": "0200000000000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002", - "txid": "txidtxprep000200002000020000200002000020000200002000020000200002", - "psbt": "cHNidP8BAgQCAAAAAQMEbwAAAAEEAQpsbt201000201000201000201000201000201000201000201000201000201000201000201000201000201000201000201000201000201000201000201000201000201000201000201000201000201000201000201000201000201000201000201000201000201000201000201000201000201000201000201000" + "unsigned_tx": "0200000001fb09d48388d44aded94a818b4d21499048958b804e44be571bd3d2710235b87a0000000000fdffffff020000000100000000220020adc5aed50bce13b21c47f3f0eb0148161ebf4cbc2878a8e8e5e5288bbb2ecec1418398000000000022512081da0d3e3051135a89e2f9d85e2eadf661f959bfb05e671097854672cfd0ac7d98000000", + "txid": "e8b14f1622e8d6839c40f255ae617f96aebdf313a8486d1aa9023731a979971e", + "psbt": "cHNidP8BAgQCAAAAAQMEmAAAAAEEAQEBBQECAQYBAwH7BAIAAAAAAQBxAgAAAAF7yWF0tZO3dCp0QAD5h74Q9TqzR+B+Pq5KWk3Kt6MldAAAAAAA/f///wKAlpgBAAAAABYAFP+FM+rwsTm8Bz0qImOObKCgg3zVXuPf3gAAAAAWABTdQ3+1uuxIN+FttkktoVc11r7FM5cAAAABAR+AlpgBAAAAABYAFP+FM+rwsTm8Bz0qImOObKCgg3zVAQ4g+wnUg4jUSt7ZSoGLTSFJkEiVi4BORL5XG9PScQI1uHoBDwQAAAAAARAE/f///wABAwgAAAABAAAAAAEEIgAgrcWu1QvOE7IcR/Pw6wFIFh6/TLwoeKjo5eUoi7suzsEAAQMIQYOYAAAAAAABBCJRIIHaDT4wURNaieL52F4urfZh+Vm/sF5nEJeFRnLP0Kx9AA==" } } ] @@ -33684,13 +36278,13 @@ "id": "example:txsend#1", "method": "txsend", "params": [ - "txidtxprep000200002000020000200002000020000200002000020000200002" + "e8b14f1622e8d6839c40f255ae617f96aebdf313a8486d1aa9023731a979971e" ] }, "response": { - "tx": "02000000000101txsend00011000110001100011000110001100011000110001100011000110001100011000110001100011000110001100011000110001100011000110001100011000110001100011000110001100011000110001100011000110001100011000110001100011000110001100011000110001100011000110001100011000110001100011000110001100011000110001100011000110001100011000110001100011000110001100011000110001100011000110001100011000110001100011000110001100011000110001100011000110001100011000110001100011000110001100011000110001100011000110001100011000110001100011", - "txid": "txidtxprep000200002000020000200002000020000200002000020000200002", - "psbt": "cHNidP8BAgQCAAAAAQMEbwAAAAEEAQpsbt011100011100011100011100011100011100011100011100011100011100011100011100011100011100011100011100011100011100011100011100011100011100011100011100011100011100011100011100011100011100011100011100011100011100011100011100011100011100011100011100" + "tx": "0200000001fb09d48388d44aded94a818b4d21499048958b804e44be571bd3d2710235b87a0000000000fdffffff020000000100000000220020adc5aed50bce13b21c47f3f0eb0148161ebf4cbc2878a8e8e5e5288bbb2ecec1418398000000000022512081da0d3e3051135a89e2f9d85e2eadf661f959bfb05e671097854672cfd0ac7d98000000", + "txid": "e8b14f1622e8d6839c40f255ae617f96aebdf313a8486d1aa9023731a979971e", + "psbt": "cHNidP8BAgQCAAAAAQMEmAAAAAEEAQEBBQECAQYBAwH7BAIAAAAAAQBxAgAAAAF7yWF0tZO3dCp0QAD5h74Q9TqzR+B+Pq5KWk3Kt6MldAAAAAAA/f///wKAlpgBAAAAABYAFP+FM+rwsTm8Bz0qImOObKCgg3zVXuPf3gAAAAAWABTdQ3+1uuxIN+FttkktoVc11r7FM5cAAAABAR+AlpgBAAAAABYAFP+FM+rwsTm8Bz0qImOObKCgg3zVIgICrdS+fDe+nFDye7Mp6i6PaAV6YeEglyQM1Lypkk6qiU5HMEQCIGJjEwHrdV/d8Js4XmPT9eMXGes2vodTrV2KtnjUqREkAiBAt68NmL8o32UfDR+YX2yiGZd5DRUF++ppU4YnCE+7WQEiBgKt1L58N76cUPJ7synqLo9oBXph4SCXJAzUvKmSTqqJTgj/hTPqAAAAAAEOIPsJ1IOI1Ere2UqBi00hSZBIlYuATkS+VxvT0nECNbh6AQ8EAAAAAAEQBP3///8AAQMIAAAAAQAAAAABBCIAIK3FrtULzhOyHEfz8OsBSBYev0y8KHio6OXlKIu7Ls7BAAEDCEGDmAAAAAAAAQQiUSCB2g0+MFETWoni+dheLq32YflZv7BeZxCXhUZyz9CsfSEHPXxCgubxwYgC9mDabmKYMY13V5d4yQepeZJ7VCvUFqIJAEDR+iMDAAAAAA==" } }, { @@ -33698,13 +36292,13 @@ "id": "example:txsend#2", "method": "txsend", "params": { - "txid": "txidtxprep000400004000040000400004000040000400004000040000400004" + "txid": "90ebfe2791e0e307d5043202d0b5cd3a3304daf5a3b98e4bbac503d08634d555" } }, "response": { - "tx": "02000000000101txsend00022000220002200022000220002200022000220002200022000220002200022000220002200022000220002200022000220002200022000220002200022000220002200022000220002200022000220002200022000220002200022000220002200022000220002200022000220002200022000220002200022000220002200022000220002200022000220002200022000220002200022000220002200022000220002200022000220002200022000220002200022000220002200022000220002200022000220002200022000220002200022000220002200022000220002200022000220002200022000220002200022000220002200022", - "txid": "txidtxprep000400004000040000400004000040000400004000040000400004", - "psbt": "cHNidP8BAgQCAAAAAQMEbwAAAAEEAQpsbt022200022200022200022200022200022200022200022200022200022200022200022200022200022200022200022200022200022200022200022200022200022200022200022200022200022200022200022200022200022200022200022200022200022200022200022200022200022200022200022200" + "tx": "020000000108090ec7f33379421f47fd271d060d0e29869bde5fac8230b3a47e7d89bd6c9f0000000000fdffffff0240420f0000000000220020c9ea2c65ca8cdc27bc130fe11f5e52e175475e0e31b645b1dcc3832dc4f7e78deaa2f00000000000225120774b1c2a9b4b0a9dce43b46395940da2001115d400fa3667909ec86a5d36518b99000000", + "txid": "90ebfe2791e0e307d5043202d0b5cd3a3304daf5a3b98e4bbac503d08634d555", + "psbt": "cHNidP8BAgQCAAAAAQMEmQAAAAEEAQEBBQECAQYBAwH7BAIAAAAAAQBeAgAAAAEel3mpMTcCqRptSKgT872uln9hrlXyQJyD1ugiFk+x6AAAAAAA/////wE29/8AAAAAACJRIBBn+sE76BrhkJwdcl10AW73v27fGwM4fUYbSSX4NuhVAAAAAAEBKzb3/wAAAAAAIlEgEGf6wTvoGuGQnB1yXXQBbve/bt8bAzh9RhtJJfg26FUBDiAICQ7H8zN5Qh9H/ScdBg0OKYab3l+sgjCzpH59ib1snwEPBAAAAAABEAT9////ARNA7qgVSILWVeJ3iVq2cHwuHp28MdIw4CbgJKilEaXgaFJuhJFdQaJzeJ3YOgvOpRA+ENj9RHXIv/24sYuKIr62gyEWSGn5H1BOLW1cQuaAXwZz7OyTu4UYInxyYnJzwKCebrUJAJcA1qsAAAAAAAEDCEBCDwAAAAAAAQQiACDJ6ixlyozcJ7wTD+EfXlLhdUdeDjG2RbHcw4MtxPfnjQABAwjqovAAAAAAAAEEIlEgd0scKptLCp3OQ7RjlZQNogARFdQA+jZnkJ7Ial02UYshB4QxwPeJGASKpKclGmF+KkCt89LyZ37UONUy9HdStTzDCQDVZoJDBgAAAAA=" } } ] @@ -33839,7 +36433,7 @@ "id": "example:unreserveinputs#1", "method": "unreserveinputs", "params": { - "psbt": "cHNidP8BAgQCAAAAAQMEbwAAAAEEAQpsbt310000310000310000310000310000310000310000310000310000310000310000310000310000310000310000310000310000310000310000310000310000310000310000310000310000310000310000310000310000310000310000310000310000310000310000310000310000310000310000310000", + "psbt": "cHNidP8BAF4CAAAAARxvUMSNjH7EKMXzxKwycdOSZ64xHQfWS7JFe0pAwIPCAAAAAAD9////AahhAAAAAAAAIlEg+3d9jpNmK0getyg5W+Mp31CPIRDKcJg/mZs/uaVrQ+GbAAAAAAEAiQIAAAAB8XN4MRmL6kPpMsgk9fPi+WJWotGhushvL/SXVnKJnZ0AAAAAAP3///8CYg3NCwAAAAAiUSDJGD7ekSHzxv0UmIIsR6dgJzInZpyQlQiEO6xbvYE/aICEHgAAAAAAIgAgybxcBjyu+/emx4FEB7Vie0+BqLVuy+kyxoL5y6wNGd+aAAAAAQErYg3NCwAAAAAiUSDJGD7ekSHzxv0UmIIsR6dgJzInZpyQlQiEO6xbvYE/aAAA", "reserve": 200 } }, @@ -33852,7 +36446,7 @@ "id": "example:unreserveinputs#2", "method": "unreserveinputs", "params": [ - "cHNidP8BAgQCAAAAAQMEbwAAAAEEAQpsbt410000410000410000410000410000410000410000410000410000410000410000410000410000410000410000410000410000410000410000410000410000410000410000410000410000410000410000410000410000410000410000410000410000410000410000410000410000410000410000410000" + "cHNidP8BAF4CAAAAARxvUMSNjH7EKMXzxKwycdOSZ64xHQfWS7JFe0pAwIPCAAAAAAD9////AetRxQsAAAAAIlEg21kTTo7K2doCG6F2JqgaDjc1kRCrH7AL08oPVVJhuE+bAAAAAAEAiQIAAAAB8XN4MRmL6kPpMsgk9fPi+WJWotGhushvL/SXVnKJnZ0AAAAAAP3///8CYg3NCwAAAAAiUSDJGD7ekSHzxv0UmIIsR6dgJzInZpyQlQiEO6xbvYE/aICEHgAAAAAAIgAgybxcBjyu+/emx4FEB7Vie0+BqLVuy+kyxoL5y6wNGd+aAAAAAQErYg3NCwAAAAAiUSDJGD7ekSHzxv0UmIIsR6dgJzInZpyQlQiEO6xbvYE/aAAA" ] }, "response": { @@ -33963,9 +36557,9 @@ } }, "response": { - "tx": "02000000000101upgd20000200002000020000200002000020000200002000020000200002000020000200002000020000200002000020000200002000020000200002000020000200002000020000200002000020000200002000020000", - "txid": "txidupgrade200000200000200000200000200000200000200000200000200000", - "psbt": "cHNidP8BAgQCAAAAAQMEbwAAAAEEAQpsbt110000110000110000110000110000110000110000110000110000110000110000110000110000110000110000110000110000110000110000110000110000110000110000110000110000110000110000110000110000110000110000110000110000110000110000110000110000110000110000110000110000110000110000110000110000110000110000110000110000110000110000110000110000110000110000110000110000110000110000110000110000110000110000110000110000110000110000110000110000110000110000110000110000110000110000110000110000110000110000110000110000110000110000110000110000110000110000110000110000110000110000110000110000110000110000110000110000110000110000110000", + "tx": "0200000001f74032b51c3aeec264de1e41228db610127098f70d31e28d91569b13a2eda1090100000000fdffffff0135143101000000002251206c27e1956acfa61e68292c80908880e813450f754132e8a2ac471a86bf1326b567000000", + "txid": "58d7e19cd533038fefb7085822fa42f78fac7b7bbdad5439cc748eb2a37f53cb", + "psbt": "cHNidP8BAgQCAAAAAQMEZwAAAAEEAQEBBQEBAQYBAwH7BAIAAAAAAQBzAgAAAAGnLEWbriFxVrxyaD9GGIXPwYs7lkx3nIQmKKzZx1ONvAAAAAAA/f///wJxxNQoAQAAABepFIIMEhvBkPKuK79E5Hw+MqTQP5ubhwAtMQEAAAAAF6kUZVco82z+NtAapQ0yNnBEafhKVUCHZgAAAAEBIAAtMQEAAAAAF6kUZVco82z+NtAapQ0yNnBEafhKVUCHIgICucDGhE4SpTHJaOVcVQeOwW2b92vpKQ/YfRzKcrSDmhdHMEQCIHUzolkCb3kn5oFBsprLwfRU0r2TMuUqVlKHAVeEzwZhAiAJoUyO3JIEy76Le2UdvCjNd5uQ4VO2pTSJC0kv8CHfTAEBBBYAFNa5adNt/9rZhpGT9mPuSA39xzSIIgYCucDGhE4SpTHJaOVcVQeOwW2b92vpKQ/YfRzKcrSDmhcI1rlp0wAAAAABDiD3QDK1HDruwmTeHkEijbYQEnCY9w0x4o2RVpsTou2hCQEPBAEAAAABEAT9////AAEDCDUUMQEAAAAAAQQiUSBsJ+GVas+mHmgpLICQiIDoE0UPdUEy6KKsRxqGvxMmtSEHWnm7u0BtS8KN8F+mqHMoz7AqfhN0O+zc0d/P4HHC4BAJAH0I2ZcFAAAAAA==", "upgraded_outs": 1 } } @@ -34185,7 +36779,7 @@ "15000perkw", 214, [ - "utxo010101010101010101010101010101010101010101010101010101010101:1" + "9d9d89725697f42f6fc8baa1d1a25662f9e2f3f524c832e943ea8b19317873f1:0" ], null, true, @@ -34195,18 +36789,18 @@ ] }, "response": { - "psbt": "cHNidP8BAgQCAAAAAQMEbwAAAAEEAQpsbt510000510000510000510000510000510000510000510000510000510000510000510000510000510000510000510000510000510000510000510000510000510000510000510000510000510000510000510000510000510000510000510000510000510000510000510000510000510000510000510000", + "psbt": "cHNidP8BAF4CAAAAAfFzeDEZi+pD6TLIJPXz4vliVqLRobrIby/0l1ZyiZ2dAAAAAAD9////AUFZ3AsAAAAAIlEgO+E35aPNS3YQRaiMByjTJDUYNvBO1Z39o3m42EZGUreaAAAAAAEAcQIAAAAB+wnUg4jUSt7ZSoGLTSFJkEiVi4BORL5XG9PScQI1uHoBAAAAAP3///8CAMLrCwAAAAAWABQDz+yHFeH0BKNuwBHkI4+GMp+QnAYT9NIAAAAAFgAUIowMzAOV9xHOQM4YHS2bZ5k6oe2HAAAAAQEfAMLrCwAAAAAWABQDz+yHFeH0BKNuwBHkI4+GMp+QnAAA", "feerate_per_kw": 15000, "estimated_final_weight": 657, "excess_msat": 0, "change_outnum": 0, "reservations": [ { - "txid": "utxo010101010101010101010101010101010101010101010101010101010101", - "vout": 1, + "txid": "9d9d89725697f42f6fc8baa1d1a25662f9e2f3f524c832e943ea8b19317873f1", + "vout": 0, "was_reserved": true, "reserved": true, - "reserved_to_block": 2240 + "reserved_to_block": 2242 } ] } @@ -34220,25 +36814,25 @@ "feerate": "18750perkw", "startweight": 214, "utxos": [ - "utxo010101010101010101010101010101010101010101010101010101010101:1" + "9d9d89725697f42f6fc8baa1d1a25662f9e2f3f524c832e943ea8b19317873f1:0" ], "reservedok": true, "excess_as_change": true } }, "response": { - "psbt": "cHNidP8BAgQCAAAAAQMEbwAAAAEEAQpsbt520000520000520000520000520000520000520000520000520000520000520000520000520000520000520000520000520000520000520000520000520000520000520000520000520000520000520000520000520000520000520000520000520000520000520000520000520000520000520000520000", + "psbt": "cHNidP8BAF4CAAAAAfFzeDEZi+pD6TLIJPXz4vliVqLRobrIby/0l1ZyiZ2dAAAAAAD9////AWINzQsAAAAAIlEgyRg+3pEh88b9FJiCLEenYCcyJ2ackJUIhDusW72BP2iaAAAAAAEAcQIAAAAB+wnUg4jUSt7ZSoGLTSFJkEiVi4BORL5XG9PScQI1uHoBAAAAAP3///8CAMLrCwAAAAAWABQDz+yHFeH0BKNuwBHkI4+GMp+QnAYT9NIAAAAAFgAUIowMzAOV9xHOQM4YHS2bZ5k6oe2HAAAAAQEfAMLrCwAAAAAWABQDz+yHFeH0BKNuwBHkI4+GMp+QnAAA", "feerate_per_kw": 18750, "estimated_final_weight": 657, "excess_msat": 0, "change_outnum": 0, "reservations": [ { - "txid": "utxo010101010101010101010101010101010101010101010101010101010101", - "vout": 1, + "txid": "9d9d89725697f42f6fc8baa1d1a25662f9e2f3f524c832e943ea8b19317873f1", + "vout": 0, "was_reserved": true, "reserved": true, - "reserved_to_block": 2312 + "reserved_to_block": 2314 } ] } @@ -34971,13 +37565,13 @@ "status": "pending", "partid": 0, "groupid": 1, - "payment_hash": "paymenthashwtspct20101010101010101010101010101010101010101010101" + "payment_hash": "9a33e433faddc3371f6a56a34146c82629d567520ddaf28244bd9f196288af71" }, "sendpays": { "status": "pending", "partid": 0, "groupid": 1, - "payment_hash": "paymenthashwtspct20101010101010101010101010101010101010101010101" + "payment_hash": "9a33e433faddc3371f6a56a34146c82629d567520ddaf28244bd9f196288af71" } } }, @@ -34998,13 +37592,13 @@ "status": "complete", "partid": 0, "groupid": 1, - "payment_hash": "paymenthashwtspct20101010101010101010101010101010101010101010101" + "payment_hash": "9a33e433faddc3371f6a56a34146c82629d567520ddaf28244bd9f196288af71" }, "sendpays": { "status": "complete", "partid": 0, "groupid": 1, - "payment_hash": "paymenthashwtspct20101010101010101010101010101010101010101010101" + "payment_hash": "9a33e433faddc3371f6a56a34146c82629d567520ddaf28244bd9f196288af71" } } } @@ -35247,16 +37841,16 @@ }, "response": { "label": "lbl balance l1 to l2", - "bolt11": "lnbcrt222n1pnt3005720bolt114000101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101", - "payment_hash": "paymenthashdelpay10101010101010101010101010101010101010101010101", + "bolt11": "lnbcrt5m1pne035qsp5y09we8jhy4ug66c945kzkqyqzrhhqsap22q07wnawlgntwa5ca2spp5xsktk894vn50xt4kfl5vy49t7hk976u85rudu7gfetuwvk8nh54qdpcv3jhxcmjd9c8g6t0dcs8xetwvss8xmmdv5s8xct5wvsxcvfqw3hjqmpjxqyjw5qcqp9rzjqdwjkyvjm7apxnssu4qgwhfkd67ghs6n6k48v6uqczgt88p6tky96qqqwqqqqqgqqqqqqqqpqqqqqzsqqc9qxpqysgqvsru69ylhpkda6980sl996q2fmld2zszepv79zf747la6zzt8mf8p0qw80w6j8d5evc72fls4d99sza23nnm6pahjqrs8kv3apdttjcq2mm2xw", + "payment_hash": "342cbb1cb564e8f32eb64fe8c254abf5ec5f6b87a0f8de7909caf8e658f3bd2a", "amount_msat": 500000000, "status": "paid", "pay_index": 1, "amount_received_msat": 500000000, - "paid_at": 1738500000, - "payment_preimage": "paymentpreimgdp1010101010101010101010101010101010101010101010101", + "paid_at": 1738000000, + "payment_preimage": "08377744ca985c1808377744ca985c1808377744ca985c1808377744ca985c18", "description": "description send some sats l1 to l2", - "expires_at": 1739000000, + "expires_at": 1738604800, "created_index": 1, "updated_index": 1 } @@ -35272,16 +37866,16 @@ }, "response": { "label": "test_injectpaymentonion1", - "bolt11": "lnbcrt100n1pnt2bolt11invl020700000000bolt11invl020700000000bolt11invl020700000000bolt11invl020700000000bolt11invl020700000000bolt11invl020700000000bolt11invl020700000000bolt11invl020700000000bolt11invl020700000000bolt11invl020700000000", - "payment_hash": "paymenthashinvl0270027002700270027002700270027002700270027002700", + "bolt11": "lnbcrt10n1pne035qsp5qwyv8rs63ramlntxnjyqfyl3usj9fcvw2wcekvssera3c674p2aspp5layccvcq3q020g7qgxf7g0cjx3zvv3rxyqypprpry2w6x5gmahgsdp6w3jhxapqd9hx5etrw3cxz7tdv4h8gmmwd9hkuvfqv3jhxcmjd9c8g6t0dcxqyjw5qcqp99qxpqysgqanlwwp0fnysrz8wgx44kdupzfv4l9x0l8daxa9zyqcwwx4de5rv4s3udrmgc6w03dtn0h3kcvwhv602fpryz06wrnk9k5d5z6qtx4mqqyhqgf2", + "payment_hash": "ff498c3300881ea7a3c04193e43f123444c644662008108c23229da3511bedd1", "amount_msat": 1000, "status": "paid", "pay_index": 2, "amount_received_msat": 1000, - "paid_at": 1738500000, - "payment_preimage": "paymentpreimgio1030303030303030303030303030303030303030303030303", + "paid_at": 1738000000, + "payment_preimage": "08377744ca985c1e08377744ca985c1e08377744ca985c1e08377744ca985c1e", "description": "test injectpaymentonion1 description", - "expires_at": 1739000000, + "expires_at": 1738604800, "created_index": 8, "updated_index": 2 } @@ -35358,7 +37952,7 @@ } }, "response": { - "blockheight": 130 + "blockheight": 131 } }, { @@ -35369,12 +37963,12 @@ "id": "example:waitblockheight#2", "method": "waitblockheight", "params": { - "blockheight": 131, + "blockheight": 132, "timeout": 600 } }, "response": { - "blockheight": 131 + "blockheight": 132 } } ] @@ -35621,16 +38215,16 @@ }, "response": { "label": "inv2", - "bolt11": "lnbcrt222n1pnt3005720bolt11wtinv01010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101", - "payment_hash": "paymenthashwaitinv0101010101010101010101010101010101010101010101", + "bolt11": "lnbcrt20n1pne035qsp5793kaek9ahcmxn00ttvkmrhafa5v33wtju4dz5lvyjr0pwwgdd2qpp59gjcv8c4v9yzt00az4x5yg6z79v5gmcd2nwzf6pct5c4yqprlr9sdq8d9h8vvsxqyjw5qcqp99qxpqysgq7ygtu605e0yx749rczhlqaw4crl746rmzc3nkpxn5vrey34m2uxx0658c3e85gvvdcp8r5nlfdnxspl9tlj5xhckrx5vszxxa4zneggp8dynay", + "payment_hash": "2a25861f15614825bdfd154d422342f159446f0d54dc24e8385d31520023f8cb", "amount_msat": 2000, "status": "paid", "pay_index": 5, "amount_received_msat": 2000, - "paid_at": 1738500000, - "payment_preimage": "paymentpreimagewaitinv0010101010101010101010101010101010101010101", + "paid_at": 1738000000, + "payment_preimage": "08377744ca985c2108377744ca985c2108377744ca985c2108377744ca985c21", "description": "inv2", - "expires_at": 1739000000, + "expires_at": 1738604800, "created_index": 13, "updated_index": 5 } @@ -35645,16 +38239,16 @@ }, "response": { "label": "inv3", - "bolt11": "lnbcrt222n1pnt3005720bolt11wtinv02020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202", - "payment_hash": "paymenthashwaitinv0202020202020202020202020202020202020202020202", + "bolt11": "lnbcrt30n1pne035qsp588xrpk37hul6xfyr8u6lkyggh0mkvfzhyex8wwts7dpckxt2j2yspp5x63je8t7u7a0ts2arwdj05y9mn5ud9lmgf7see5rg2kvuq8ptphsdq8d9h8vvcxqyjw5qcqp99qxpqysgqw97pk464fhkxp6umgtzhh3njznhnw06cwun58szk06v7a2wvvppz6kg95ufarq443nrqgue6u3s59up4tqkmm943pfyp3hqutx6vgugqgd8jsu", + "payment_hash": "36a32c9d7ee7baf5c15d1b9b27d085dce9c697fb427d0ce68342acce00e1586f", "amount_msat": 3000, "status": "paid", "pay_index": 6, "amount_received_msat": 3000, - "paid_at": 1738500000, - "payment_preimage": "paymentpreimagewaitinv0020202020202020202020202020202020202020202", + "paid_at": 1738000000, + "payment_preimage": "08377744ca985c2208377744ca985c2208377744ca985c2208377744ca985c22", "description": "inv3", - "expires_at": 1739000000, + "expires_at": 1738604800, "created_index": 14, "updated_index": 6 } @@ -35901,22 +38495,22 @@ "id": "example:waitsendpay#1", "method": "waitsendpay", "params": { - "payment_hash": "paymenthashinvl0310031003100310031003100310031003100310031003100" + "payment_hash": "9562ee18e942b0eb2e36050c108efcb34cb07e5cdbe28d08d26bb71af1556c2f" } }, "response": { "created_index": 2, "id": 2, - "payment_hash": "paymenthashinvl0310031003100310031003100310031003100310031003100", + "payment_hash": "9562ee18e942b0eb2e36050c108efcb34cb07e5cdbe28d08d26bb71af1556c2f", "groupid": 1, "updated_index": 2, - "destination": "nodeid030303030303030303030303030303030303030303030303030303030303", + "destination": "035d2b1192dfba134e10e540875d366ebc8bc353d5aa766b80c090b39c3a5d885d", "amount_msat": 10000, "amount_sent_msat": 10001, "created_at": 1738000000, - "completed_at": 1739000000, + "completed_at": 1738000000, "status": "complete", - "payment_preimage": "paymentpreimagew010101010101010101010101010101010101010101010101" + "payment_preimage": "83ffe698292fbb5f83ffe698292fbb5f83ffe698292fbb5f83ffe698292fbb5f" } } ] @@ -36028,14 +38622,14 @@ "id": "example:withdraw#1", "method": "withdraw", "params": { - "destination": "bcrt1qcqqv0101010101010101010101010101010101", + "destination": "bcrt1qwx6am26cuw38y4863pd6swrce2g8mzhaxr9xp8", "satoshi": 555555 } }, "response": { - "tx": "020000000001wthdrw91000910009100091000910009100091000910009100091000910009100091000910009100091000910009100091000910009100091000910009100091000910009100091000910009100091000910009100091000910009100091000910009100091000910009100091000910009100091000910009100091000910009100091000910009100091000910009100091000910009100091000910009100091000910009100091000910009100091000910009100091000910009100091000910009100091000910009100091000910009100091000910009100091000910009100091000910009100091000910009100091000910009100091000", - "txid": "txidwithdraw2191000910009100091000910009100091000910009100091000", - "psbt": "cHNidP8BAgQCAAAAAQMEbwAAAAEEAQpsbt911000911000911000911000911000911000911000911000911000911000911000911000911000911000911000911000911000911000911000911000911000911000911000911000911000911000911000911000911000911000911000911000911000911000911000911000911000911000911000911000" + "tx": "020000000169baded91234f208471fe0b7efd048560a4ec2aca6ac1df00ae4729a6c368a140000000000fdffffff02237a08000000000016001471b5ddab58e3a27254fa885ba83878ca907d8afd7ecc1500000000002251202b5dd0613b6e534f572dbcf4311b66e6cc8bb07e285928ddb6fa5791e473787484000000", + "txid": "797a6c54b6cfb99ab3b6453fca66d9c077af09f7be4a951cb0f2e3c0cd63ee90", + "psbt": "cHNidP8BAgQCAAAAAQMEhAAAAAEEAQEBBQECAQYBAwH7BAIAAAAAAQCyAgAAAAJVMQxiObHGkc2owFTzkzRn+3UVPd29g9q+xdYhmQ3ckgAAAAAA/f///6czBVHqH7LMLWzkkTkfaDAii0v18qYWqwo3IAICfpPtAQAAAAD9////AkVXHgAAAAAAIlEg/at8AfrnDAjgsfmsrMoRClMSHnXcVKJedUJBbzQq6vdAQg8AAAAAACIAIJZV4qczDNhtxp+O0YRa9VgN0GsVp5QDTJVx5T1WObOXewAAAAEBK0VXHgAAAAAAIlEg/at8AfrnDAjgsfmsrMoRClMSHnXcVKJedUJBbzQq6vcBDiBput7ZEjTyCEcf4Lfv0EhWCk7CrKasHfAK5HKabDaKFAEPBAAAAAABEAT9////ARNAHO2bgSAdOnELjVnpbsTz7m7rgxRnyUQ9cRVtMF7bR2ZbWWuexz11UjfIoiQsBhK3rp+KkxJLGo8xXnRN0hK72iEWvZI/zJ5gMwIKRWhwvhoONSpzuE+hMin+5LvMB/uiSToJAMrfGCgAAAAAACICA6Jvzf+c2c5Qrvvj78smeIzuWAjjEtHW01YDo2je0daMCHG13asNAAAAAQMII3oIAAAAAAABBBYAFHG13atY46JyVPqIW6g4eMqQfYr9DPwJbGlnaHRuaW5nBAIAAQABAwh+zBUAAAAAAAEEIlEgK13QYTtuU09XLbz0MRtm5syLsH4oWSjdtvpXkeRzeHQhB/ezBtxauw6UTQFvjhaT8ztqh+dAYi+W2/WHIEQ/e965CQBPad/3DwAAAAA=" } }, { @@ -36043,19 +38637,19 @@ "id": "example:withdraw#2", "method": "withdraw", "params": { - "destination": "bcrt1phtprcvhz02020202020202020202020202020202020202020202020202", + "destination": "bcrt1p2gppccw6ywewmg74qqxxmqfdpjds3rpr0mf22y9tm9xcc0muggwsea9nkf", "satoshi": "all", "feerate": "20000perkb", "minconf": 0, "utxos": [ - "utxo020202020202020202020202020202020202020202020202020202020202:1" + "7cce7550c4b37924bb74fd4baf8f1946a4b14c050c42f2479b04fede08652aa9:1" ] } }, "response": { - "tx": "020000000002wthdrw92000920009200092000920009200092000920009200092000920009200092000920009200092000920009200092000920009200092000920009200092000920009200092000920009200092000920009200092000920009200092000920009200092000920009200092000920009200092000920009200092000920009200092000920009200092000920009200092000920009200092000920009200092000920009200092000920009200092000920009200092000920009200092000920009200092000920009200092000920009200092000920009200092000920009200092000920009200092000920009200092000920009200092000", - "txid": "txidwithdraw2292000920009200092000920009200092000920009200092000", - "psbt": "cHNidP8BAgQCAAAAAQMEbwAAAAEEAQpsbt922000922000922000922000922000922000922000922000922000922000922000922000922000922000922000922000922000922000922000922000922000922000922000922000922000922000922000922000922000922000922000922000922000922000922000922000922000922000922000922000" + "tx": "0200000001a92a6508defe049b47f2420c054cb1a446198faf4bfd74bb2479b3c45075ce7c0100000000fdffffff01d563dc0b0000000022512052021c61da23b2eda3d5000c6d812d0c9b088c237ed2a510abd94d8c3f7c421d88000000", + "txid": "6430642958a9aaa5c380bb9ea5048ae920557df4e8c8f959ee745f87f03662ed", + "psbt": "cHNidP8BAgQCAAAAAQMEiAAAAAEEAQEBBQEBAQYBAwH7BAIAAAAAAQCJAgAAAAGz2CDBGuOklbgHzcv1kfmjgjUfUOYes93LsMOptm8SiQEAAAAA/f///wJAQg8AAAAAACIAIIaYZYoB77AB4cxN9qi28620Yfo+Z5OF/arkAL1zmWsygWzcCwAAAAAiUSCKc7soFDPytdtUYcZ3iqKv0o4BHea9BHmaWZFmLGHXqDMAAAABASuBbNwLAAAAACJRIIpzuygUM/K121RhxneKoq/SjgEd5r0EeZpZkWYsYdeoAQ4gqSplCN7+BJtH8kIMBUyxpEYZj69L/XS7JHmzxFB1znwBDwQBAAAAARAE/f///wETQGrLBJ5XFyUx9B4SItbcP7L5MdB2XyQHymoi/1innyYnSSmUVvkqQYn/wckxggReFS6+BydfZ2/aB/1TRMJyl70hFi55mhYqTXiAV2eIrXh1Nrfu0+eScntk4eo0QWenuG5SCQC6dkxmAAAAAAABAwjVY9wLAAAAAAEEIlEgUgIcYdojsu2j1QAMbYEtDJsIjCN+0qUQq9lNjD98Qh0hB8SkNSQBiTs1cYIq8kWiODRmmFlnt+VkoODlBh1PjXFxCQCLx6pcDgAAAAz8CWxpZ2h0bmluZwQCAAEA" } } ] @@ -36197,11 +38791,11 @@ "id": "example:xpay#1", "method": "xpay", "params": [ - "lnbcrt100n1pnt2bolt11invl040100000000bolt11invl040100000000bolt11invl040100000000bolt11invl040100000000bolt11invl040100000000bolt11invl040100000000bolt11invl040100000000bolt11invl040100000000bolt11invl040100000000bolt11invl040100000000" + "lnbcrt100n1pne035qsp572t5efk76vr3rdkt5zu2qcduqapdj40mhrs7pgpthufgw3tvtwrqpp5rw6387e0hhjqty3y8pmanaqyhgmxsf679m4vm8rjvne57pxn0lgsdp9w3jhxazl0pcxz72lwd5k6urvv5sxymmvwscnzxqyjw5qcqp9rzjqdwjkyvjm7apxnssu4qgwhfkd67ghs6n6k48v6uqczgt88p6tky96qqqwgqqqqgqqqqqqqqpqqqqqzsqqc9qxpqysgqh986ypquaysut7ed57nr8pum0x6u5hg3lnsf6j840l0cn6e28zcyqk76xpxkxjzlkhj8cx7zapyct6zdz2ff7nt3lym376k8ff0u9egq2wf5mk" ] }, "response": { - "payment_preimage": "paymentpreimgxp1010101010101010101010101010101010101010101010101", + "payment_preimage": "a23af6838ba877f6a23af6838ba877f6a23af6838ba877f6a23af6838ba877f6", "amount_msat": 10000, "amount_sent_msat": 10002, "failed_parts": 0, @@ -36213,11 +38807,11 @@ "id": "example:xpay#2", "method": "xpay", "params": { - "invstring": "lni1qqg0qe03030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303" + "invstring": "lni1qqgvq8khp6uam2t8cq0dwr4emk5kwq3qqc3xu3s3rg94nj40zfsy866mhu5vxne6tcej5878k2mneuvgjy83pmsz953rvg9rtxj8lalh43z8epwydjfrmffn3y3p5qz5cywpu09rr4vsyc4ltgrq50wep0hruykzdz8kjmlaymfx3gn3c0gcrcwn08fary4aqgplwhkgurkjc3rj42v0ntzhw0gr9dl4vwt2l3meh378fzjx5cc7mhgqxdva9ffx3l879amqjdk7np3nyfq6wjtp4weyzhdgq447vakcu0sh4dh0gxszhvffjfqcy8h77mjzguszhtfqy9glqvpm0sp32vgtlw2rh8mwuzedxn3z4d44zq7g8pkz6906ysj9qqe9eqccms4thz8tgy4vu7fdnqt0yaeky4a4pkdprcykm7vj4sz2pqeuguj820h2d6vwh0j7cdypzeg7ffnpvggzvmj9nrga83q474e2sjygxzmq7ln5fmvjxh4skxafx2pmx9wqx5v9qgqxyfhyvyg6pdvu4tcjvpp7kkal9rp57wj7xv4pl3ajku70rzy3pafqyqlg2sq9sggz3x54wmukps9ppjdvu9axg8l62dkkv5975l6zlt37ts4szjaem7c6pxqzvmj9nrga83q474e2sjygxzmq7ln5fmvjxh4skxafx2pmx9wqx5vqyhckl6y7ulcampu0ezz5qqx4cs3fwt6kyrfjc08dju8hc3lr30d7qyp5e6kp2jd30yr8husmmcfzxe797vler28r4hv6ehyy29lljue6ljqqxtxjzt8sw08wk4vx2j6wwv94myujhvzg09mx9xnh9fmvewnm0ex4mkal4sfm00gep0srey7pz6vt3cd82k3pcqqqqqqqqqqqqqqq2qqqqqqqqqqqqqwjfvkl43fqqqqqqzjqgeuhc6q2sg855evhcsdr4cfclsfxncamps5whxf2ynj7kqrutejl8xcm38k4vx4qyqlg4cpsyqqqkqssyehytxx360zptatj4pygsv9kpal8gnkeyd0tpvd6jv5rkv2uqdgc7pqzjd09ca3y6jytvgzva9jcyxavkyzvjujh4g4dz6qv5gjp95ld7sxy4yrpuc937lvmvrwm6qycexdzsmmtlzyskmzqm5e8uevw6d4nxc" } }, "response": { - "payment_preimage": "paymentpreimgxp2020202020202020202020202020202020202020202020202", + "payment_preimage": "c01ed70eb9ddb51ec01ed70eb9ddb51ec01ed70eb9ddb51ec01ed70eb9ddb51e", "amount_msat": 1000, "amount_sent_msat": 1000, "failed_parts": 0, diff --git a/contrib/pyln-testing/pyln/testing/fixtures.py b/contrib/pyln-testing/pyln/testing/fixtures.py index 694189bc8abd..db4206a1279c 100644 --- a/contrib/pyln-testing/pyln/testing/fixtures.py +++ b/contrib/pyln-testing/pyln/testing/fixtures.py @@ -125,36 +125,40 @@ def node_cls(): @pytest.fixture -def bitcoind(directory, teardown_checks): +def bitcoind(request, directory, teardown_checks): chaind = network_daemons[env('TEST_NETWORK', 'regtest')] bitcoind = chaind(bitcoin_dir=directory) - try: - bitcoind.start() - except Exception: - bitcoind.stop() - raise - - info = bitcoind.rpc.getnetworkinfo() - - # FIXME: include liquid-regtest in this check after elementsd has been - # updated - if info['version'] < 200100 and env('TEST_NETWORK') != 'liquid-regtest': - bitcoind.rpc.stop() - raise ValueError("bitcoind is too old. At least version 20100 (v0.20.1)" - " is needed, current version is {}".format(info['version'])) - elif info['version'] < 160000: - bitcoind.rpc.stop() - raise ValueError("elementsd is too old. At least version 160000 (v0.16.0)" - " is needed, current version is {}".format(info['version'])) - - info = bitcoind.rpc.getblockchaininfo() - # Make sure we have some spendable funds - if info['blocks'] < 101: - bitcoind.generate_block(101 - info['blocks']) - elif bitcoind.rpc.getwalletinfo()['balance'] < 1: - logging.debug("Insufficient balance, generating 1 block") - bitcoind.generate_block(1) + # @pytest.mark.parametrize('bitcoind', [False], indirect=True) if you don't + # want bitcoind started! + if getattr(request, 'param', True): + try: + bitcoind.start() + except Exception: + bitcoind.stop() + raise + + info = bitcoind.rpc.getnetworkinfo() + + # FIXME: include liquid-regtest in this check after elementsd has been + # updated + if info['version'] < 200100 and env('TEST_NETWORK') != 'liquid-regtest': + bitcoind.rpc.stop() + raise ValueError("bitcoind is too old. At least version 20100 (v0.20.1)" + " is needed, current version is {}".format(info['version'])) + elif info['version'] < 160000: + bitcoind.rpc.stop() + raise ValueError("elementsd is too old. At least version 160000 (v0.16.0)" + " is needed, current version is {}".format(info['version'])) + + info = bitcoind.rpc.getblockchaininfo() + + # Make sure we have some spendable funds + if info['blocks'] < 101: + bitcoind.generate_block(101 - info['blocks']) + elif bitcoind.rpc.getwalletinfo()['balance'] < 1: + logging.debug("Insufficient balance, generating 1 block") + bitcoind.generate_block(1) yield bitcoind diff --git a/contrib/pyln-testing/pyln/testing/utils.py b/contrib/pyln-testing/pyln/testing/utils.py index 918b90716236..01b66b63bc66 100644 --- a/contrib/pyln-testing/pyln/testing/utils.py +++ b/contrib/pyln-testing/pyln/testing/utils.py @@ -402,15 +402,12 @@ class BitcoinD(TailableProc): def __init__(self, bitcoin_dir="/tmp/bitcoind-test", rpcport=None): TailableProc.__init__(self, bitcoin_dir, verbose=False) - if rpcport is None: - self.reserved_rpcport = reserve_unused_port() - rpcport = self.reserved_rpcport - else: - self.reserved_rpcport = None - self.bitcoin_dir = bitcoin_dir self.rpcport = rpcport + self.reserved_rpcport = None + self.port_setup = False self.prefix = 'bitcoind' + self.canned_blocks = None regtestdir = os.path.join(bitcoin_dir, 'regtest') if not os.path.exists(regtestdir): @@ -432,29 +429,40 @@ def __init__(self, bitcoin_dir="/tmp/bitcoind-test", rpcport=None): '-debug=validation', '-rpcthreads=20', ] - # For up to and including 0.16.1, this needs to be in main section. - BITCOIND_CONFIG['rpcport'] = rpcport - # For after 0.16.1 (eg. 3f398d7a17f136cd4a67998406ca41a124ae2966), this - # needs its own [regtest] section. - BITCOIND_REGTEST = {'rpcport': rpcport} self.conf_file = os.path.join(bitcoin_dir, 'bitcoin.conf') + + def set_port(self, rpcport): + assert self.port_setup is False + + BITCOIND_REGTEST = {'rpcport': rpcport} write_config(self.conf_file, BITCOIND_CONFIG, BITCOIND_REGTEST) - self.rpc = SimpleBitcoinProxy(btc_conf_file=self.conf_file) - self.proxies = [] + self.port_setup = True def __del__(self): if self.reserved_rpcport is not None: drop_unused_port(self.reserved_rpcport) - def start(self): + def start(self, wallet_file=None): + if not self.port_setup: + if self.rpcport is None: + self.reserved_rpcport = reserve_unused_port() + self.rpcport = self.reserved_rpcport + self.set_port(self.rpcport) + + self.rpc = SimpleBitcoinProxy(btc_conf_file=self.conf_file) + self.proxies = [] + TailableProc.start(self) self.wait_for_log("Done loading", timeout=TIMEOUT) logging.info("BitcoinD started") - try: - self.rpc.createwallet("lightningd-tests") - except JSONRPCError: - self.rpc.loadwallet("lightningd-tests") + if wallet_file: + self.rpc.restorewallet("lightningd-tests", wallet_file) + else: + try: + self.rpc.createwallet("lightningd-tests") + except JSONRPCError: + self.rpc.loadwallet("lightningd-tests") def stop(self): for p in self.proxies: @@ -468,6 +476,10 @@ def get_proxy(self): proxy.start() return proxy + def set_canned_blocks(self, blocks): + """Set blocks as an array of blocks to "generate", or None to reset""" + self.canned_blocks = blocks + # wait_for_mempool can be used to wait for the mempool before generating blocks: # True := wait for at least 1 transation # int > 0 := wait for at least N transactions @@ -482,6 +494,16 @@ def generate_block(self, numblocks=1, wait_for_mempool=0, to_addr=None, needfeer else: wait_for(lambda: len(self.rpc.getrawmempool()) >= wait_for_mempool) + # Use canned blocks if we have them (fails if we run out!). + if self.canned_blocks is not None: + ret = [] + while numblocks > 0: + self.rpc.submitblock(self.canned_blocks[0]) + ret.append(self.rpc.getbestblockhash()) + numblocks -= 1 + del self.canned_blocks[0] + return ret + mempool = self.rpc.getrawmempool(True) logging.debug("Generating {numblocks}, confirming {lenmempool} transactions: {mempool}".format( numblocks=numblocks, @@ -509,6 +531,21 @@ def generate_block(self, numblocks=1, wait_for_mempool=0, to_addr=None, needfeer return self.rpc.generatetoaddress(numblocks, to_addr) + def send_and_mine_block(self, addr, sats): + """Sometimes we want the txid. We assume it's the first tx for canned blocks""" + if self.canned_blocks: + self.generate_block(1) + # Find which non-coinbase txs sent to this address: return txid + for txid in self.rpc.getblock(self.rpc.getbestblockhash())['tx'][1:]: + for out in self.rpc.getrawtransaction(txid, 1)['vout']: + if out['scriptPubKey'].get('address') == addr: + return txid + assert False, f"No address {addr} in block {self.rpc.getblock(self.rpc.getbestblockhash())}" + + txid = self.rpc.sendtoaddress(addr, sats / 10**8) + self.generate_block(1) + return txid + def simple_reorg(self, height, shift=0): """ Reorganize chain by creating a fork at height=[height] and re-mine all mempool @@ -526,6 +563,7 @@ def simple_reorg(self, height, shift=0): forward to h1. 2. Set [height]=h2 and [shift]= h1-h2 """ + assert self.canned_blocks is None hashes = [] fee_delta = 1000000 orig_len = self.rpc.getblockcount() @@ -559,7 +597,7 @@ def save_blocks(self): """Bundle up blocks into an array, for restore_blocks""" blocks = [] numblocks = self.rpc.getblockcount() - for bnum in range(1, numblocks): + for bnum in range(1, numblocks + 1): bhash = self.rpc.getblockhash(bnum) blocks.append(self.rpc.getblock(bhash, False)) return blocks @@ -794,6 +832,7 @@ def __init__(self, node_id, lightning_dir, bitcoind, executor, valgrind, may_fai valgrind_plugins=True, executable=None, bad_notifications=False, + no_entropy=False, **kwargs): self.bitcoin = bitcoind self.executor = executor @@ -805,6 +844,7 @@ def __init__(self, node_id, lightning_dir, bitcoind, executor, valgrind, may_fai self.allow_warning = allow_warning self.db = db self.lightning_dir = Path(lightning_dir) + self.no_entropy = no_entropy # Assume successful exit self.rc = 0 @@ -858,6 +898,8 @@ def __init__(self, node_id, lightning_dir, bitcoind, executor, valgrind, may_fai # Avoid test flakes cause by this option unless explicitly set. if self.cln_version >= "v24.11": self.daemon.opts.update({"autoconnect-seeker-peers": 0}) + if no_entropy: + self.daemon.env["CLN_DEV_ENTROPY_SEED"] = str(node_id) jsondir = Path(lightning_dir) / "plugin-io" jsondir.mkdir() @@ -892,6 +934,10 @@ def __init__(self, node_id, lightning_dir, bitcoind, executor, valgrind, may_fai self.daemon.opts['grpc-port'] = grpc_port self.grpc_port = grpc_port or 9736 + # If bitcoind is serving canned blocks, it will keep initialblockdownload on true! + if self.bitcoin.canned_blocks is not None: + self.daemon.opts['dev-ignore-ibd'] = True + def _create_rpc(self, jsonschemas): """Prepares anything related to the RPC. """ @@ -987,10 +1033,12 @@ def openchannel(self, remote_node, capacity=FUNDAMOUNT, addrtype="bech32", confi def fundwallet(self, sats, addrtype="bech32", mine_block=True): addr = self.rpc.newaddr(addrtype)[addrtype] - txid = self.bitcoin.rpc.sendtoaddress(addr, sats / 10**8) if mine_block: - self.bitcoin.generate_block(1) + txid = self.bitcoin.send_and_mine_block(addr, sats) self.daemon.wait_for_log('Owning output .* txid {} CONFIRMED'.format(txid)) + else: + txid = self.bitcoin.rpc.sendtoaddress(addr, sats / 10**8) + return addr, txid def fundbalancedchannel(self, remote_node, total_capacity=FUNDAMOUNT, announce=True): @@ -1118,8 +1166,7 @@ def has_funds_on_addr(addr): # We should not have funds on that address yet, we just generated it. assert not has_funds_on_addr(addr) - self.bitcoin.rpc.sendtoaddress(addr, (amount + 1000000) / 10**8) - self.bitcoin.generate_block(1) + self.bitcoin.send_and_mine_block(addr, amount + 1000000) # Now we should. wait_for(lambda: has_funds_on_addr(addr)) @@ -1134,10 +1181,18 @@ def has_funds_on_addr(addr): **kwargs) blockid = self.bitcoin.generate_block(1, wait_for_mempool=res['txid'])[0] + txnum = None for i, txid in enumerate(self.bitcoin.rpc.getblock(blockid)['tx']): if txid == res['txid']: txnum = i + if txnum is None: + print(f"mempool = {self.bitcoin.rpc.getrawmempool()}") + print(f"txs:") + for txid in self.bitcoin.rpc.getblock(blockid)['tx'][1:]: + print(f"txid {txid}: {self.bitcoin.rpc.getrawtransaction(txid)} {self.bitcoin.rpc.getrawtransaction(txid, 1)}") + assert False, f"txid {res['txid']} not found" + scid = "{}x{}x{}".format(self.bitcoin.rpc.getblockcount(), txnum, res['outnum']) @@ -1619,6 +1674,8 @@ def split_options(self, opts): 'allow_bad_gossip', 'start', 'gossip_store_file', + 'no_entropy', + 'base_port', ] node_opts = {k: v for k, v in opts.items() if k in node_opt_keys} cli_opts = {k: v for k, v in opts.items() if k not in node_opt_keys} @@ -1665,10 +1722,14 @@ def get_nodes(self, num_nodes, opts=None): def get_node(self, node_id=None, options=None, dbfile=None, bkpr_dbfile=None, feerates=(15000, 11000, 7500, 3750), start=True, wait_for_bitcoind_sync=True, may_fail=False, - expect_fail=False, cleandir=True, gossip_store_file=None, unused_grpc_port=True, **kwargs): + expect_fail=False, cleandir=True, gossip_store_file=None, unused_grpc_port=True, base_port=None, **kwargs): node_id = self.get_node_id() if not node_id else node_id - port = reserve_unused_port() - grpc_port = self.get_unused_port() if unused_grpc_port else None + if base_port: + port = base_port + node_id * 2 - 1 + grpc_port = base_port + node_id * 2 + else: + port = reserve_unused_port() + grpc_port = self.get_unused_port() if unused_grpc_port else None lightning_dir = os.path.join( self.directory, "lightning-{}/".format(node_id)) @@ -1692,7 +1753,8 @@ def get_node(self, node_id=None, options=None, dbfile=None, node.set_feerates(feerates, False) self.nodes.append(node) - self.reserved_ports.append(port) + if not base_port: + self.reserved_ports.append(port) if dbfile: with open(os.path.join(node.daemon.lightning_dir, TEST_NETWORK, 'lightningd.sqlite3'), 'xb') as out: diff --git a/devtools/Makefile b/devtools/Makefile index 606279146942..b47a71c6c95d 100644 --- a/devtools/Makefile +++ b/devtools/Makefile @@ -29,6 +29,7 @@ DEVTOOLS_COMMON_OBJS := \ common/bolt11.o \ common/blockheight_states.o \ common/channel_id.o \ + common/clock_time.o \ common/decode_array.o \ common/features.o \ common/fee_states.o \ @@ -42,6 +43,7 @@ DEVTOOLS_COMMON_OBJS := \ common/per_peer_state.o \ common/psbt_open.o \ common/pseudorand.o \ + common/randbytes.o \ common/sciddir_or_pubkey.o \ common/setup.o \ common/utils.o \ @@ -86,7 +88,7 @@ devtools/gossipwith: $(DEVTOOLS_COMMON_OBJS) $(JSMN_OBJS) $(BITCOIN_OBJS) wire/f $(DEVTOOLS_OBJS) $(DEVTOOLS_TOOL_OBJS): wire/wire.h -devtools/mkcommit: $(DEVTOOLS_COMMON_OBJS) $(BITCOIN_OBJS) common/derive_basepoints.o common/channel_type.o common/keyset.o common/key_derive.o common/initial_commit_tx.o common/permute_tx.o wire/fromwire.o wire/towire.o devtools/mkcommit.o channeld/full_channel.o common/initial_channel.o common/htlc_state.o common/pseudorand.o common/htlc_tx.o channeld/commit_tx.o common/htlc_trim.o +devtools/mkcommit: $(DEVTOOLS_COMMON_OBJS) $(BITCOIN_OBJS) common/derive_basepoints.o common/channel_type.o common/keyset.o common/key_derive.o common/initial_commit_tx.o common/permute_tx.o wire/fromwire.o wire/towire.o devtools/mkcommit.o channeld/full_channel.o common/initial_channel.o common/htlc_state.o common/pseudorand.o common/randbytes.o common/htlc_tx.o channeld/commit_tx.o common/htlc_trim.o devtools/mkfunding: $(DEVTOOLS_COMMON_OBJS) $(BITCOIN_OBJS) wire/fromwire.o wire/towire.o common/key_derive.o devtools/mkfunding.o diff --git a/devtools/bolt11-cli.c b/devtools/bolt11-cli.c index 5553822c6738..cc11e9dbe08b 100644 --- a/devtools/bolt11-cli.c +++ b/devtools/bolt11-cli.c @@ -10,6 +10,7 @@ #include #include #include +#include #include #include #include @@ -108,7 +109,7 @@ static void encode(const tal_t *ctx, struct pubkey me; bool explicit_n = false; - b11->timestamp = time_now().ts.tv_sec; + b11->timestamp = clock_time().ts.tv_sec; b11->chain = chainparams_for_network("regtest"); b11->expiry = 3600; b11->min_final_cltv_expiry = DEFAULT_FINAL_CLTV_DELTA; diff --git a/devtools/gossipwith.c b/devtools/gossipwith.c index f506787cd4e3..316787e5127d 100644 --- a/devtools/gossipwith.c +++ b/devtools/gossipwith.c @@ -9,6 +9,7 @@ #include #include #include +#include #include #include #include @@ -214,7 +215,7 @@ static struct io_plan *handshake_success(struct io_conn *conn, msg = towire_gossip_timestamp_filter(NULL, &chainparams->genesis_blockhash, all_gossip ? 0 - : no_gossip ? 0xFFFFFFFF : time_now().ts.tv_sec, + : no_gossip ? 0xFFFFFFFF : clock_time().ts.tv_sec, 0xFFFFFFFF); sync_crypto_write(peer_fd, cs, take(msg)); } diff --git a/doc/schemas/addpsbtoutput.json b/doc/schemas/addpsbtoutput.json index 27117b05c259..dd56156fbd2d 100644 --- a/doc/schemas/addpsbtoutput.json +++ b/doc/schemas/addpsbtoutput.json @@ -93,9 +93,9 @@ } }, "response": { - "psbt": "cHNidP8BAgpsbt1001010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101", + "psbt": "cHNidP8BAgQCAAAAAQMEbwAAAAEEAQABBQEBAQYBAwH7BAIAAAAAAQMIQEIPAAAAAAABBCJRIO7yw3zIUblRUcdhCLSjdFxJsYHu2s0Y29bT0bGAGdcbAA==", "estimated_added_weight": 172, - "outnum": 1 + "outnum": 0 } }, { @@ -104,11 +104,11 @@ "method": "addpsbtoutput", "params": [ 3333333, - "cHNidP8BAgpsbt20020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202" + "cHNidP8BAgQCAAAAAQMEbwAAAAEEAQABBQECAQYBAwH7BAIAAAAAAQMIQEIPAAAAAAABBCJRIO7yw3zIUblRUcdhCLSjdFxJsYHu2s0Y29bT0bGAGdcbAAEDCNXcMgAAAAAAAQQiUSA2cYCeVGcxdSZII2urHpalr5osmF2lPbYRaw1nKyPcmQA=" ] }, "response": { - "psbt": "cHNidP8BAgpsbt20020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202", + "psbt": "cHNidP8BAgQCAAAAAQMEbwAAAAEEAQABBQECAQYBAwH7BAIAAAAAAQMIQEIPAAAAAAABBCJRIO7yw3zIUblRUcdhCLSjdFxJsYHu2s0Y29bT0bGAGdcbAAEDCNXcMgAAAAAAAQQiUSA2cYCeVGcxdSZII2urHpalr5osmF2lPbYRaw1nKyPcmQA=", "estimated_added_weight": 172, "outnum": 1 } @@ -119,14 +119,14 @@ "method": "addpsbtoutput", "params": { "satoshi": 3333333, - "initialpsbt": "cHNidP8BAgpsbt20020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202", - "destination": "bcrt1p5201010101010101010101010101010101010101010101010101010101" + "initialpsbt": "cHNidP8BAgQCAAAAAQMEbwAAAAEEAQABBQECAQYBAwH7BAIAAAAAAQMIQEIPAAAAAAABBCJRIO7yw3zIUblRUcdhCLSjdFxJsYHu2s0Y29bT0bGAGdcbAAEDCNXcMgAAAAAAAQQiUSA2cYCeVGcxdSZII2urHpalr5osmF2lPbYRaw1nKyPcmQA=", + "destination": "bcrt1p52spc7t99z0wu444elxahxzkcu86gakzvnfp7ugudf567am2uspsuneuq9" } }, "response": { - "psbt": "cHNidP8BAgpsbt300303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303", + "psbt": "cHNidP8BAgQCAAAAAQMEbwAAAAEEAQABBQEDAQYBAwH7BAIAAAAAAQMIQEIPAAAAAAABBCJRIO7yw3zIUblRUcdhCLSjdFxJsYHu2s0Y29bT0bGAGdcbAAEDCNXcMgAAAAAAAQQiUSA2cYCeVGcxdSZII2urHpalr5osmF2lPbYRaw1nKyPcmQABAwjV3DIAAAAAAAEEIlEgoqAceWUonu5Wtc/N25hWxw+kdsJk0h9xHGppr3dq5AMA", "estimated_added_weight": 172, - "outnum": 1 + "outnum": 2 } } ] diff --git a/doc/schemas/askrene-age.json b/doc/schemas/askrene-age.json index a274673c40fa..655910b0802b 100644 --- a/doc/schemas/askrene-age.json +++ b/doc/schemas/askrene-age.json @@ -67,7 +67,7 @@ "method": "askrene-age", "params": { "layer": "test_layers", - "cutoff": 1738000000 + "cutoff": 1738000001 } }, "response": { diff --git a/doc/schemas/askrene-bias-channel.json b/doc/schemas/askrene-bias-channel.json index 73eddb5bf952..563bf2527936 100644 --- a/doc/schemas/askrene-bias-channel.json +++ b/doc/schemas/askrene-bias-channel.json @@ -115,7 +115,7 @@ "method": "askrene-bias-channel", "params": { "layer": "test_layers", - "short_channel_id_dir": "109x1x1/1", + "short_channel_id_dir": "110x1x0/1", "bias": 1 } }, @@ -123,7 +123,7 @@ "biases": [ { "layer": "test_layers", - "short_channel_id_dir": "109x1x1/1", + "short_channel_id_dir": "110x1x0/1", "bias": 1 } ] @@ -135,7 +135,7 @@ "method": "askrene-bias-channel", "params": [ "test_layers", - "109x1x1/1", + "110x1x0/1", -5, "bigger bias" ] @@ -144,7 +144,7 @@ "biases": [ { "layer": "test_layers", - "short_channel_id_dir": "109x1x1/1", + "short_channel_id_dir": "110x1x0/1", "description": "bigger bias", "bias": -5 } diff --git a/doc/schemas/askrene-create-channel.json b/doc/schemas/askrene-create-channel.json index deb1376361a1..62efedecd552 100644 --- a/doc/schemas/askrene-create-channel.json +++ b/doc/schemas/askrene-create-channel.json @@ -76,8 +76,8 @@ "method": "askrene-create-channel", "params": { "layer": "test_layers", - "source": "nodeid030303030303030303030303030303030303030303030303030303030303", - "destination": "nodeid010101010101010101010101010101010101010101010101010101010101", + "source": "035d2b1192dfba134e10e540875d366ebc8bc353d5aa766b80c090b39c3a5d885d", + "destination": "0266e4598d1d3c415f572a8488830b60f7e744ed9235eb0b1ba93283b315c03518", "short_channel_id": "0x0x1", "capacity_msat": "1000000sat" } diff --git a/doc/schemas/askrene-disable-node.json b/doc/schemas/askrene-disable-node.json index 2dc13f06a9e6..e71a838cb595 100644 --- a/doc/schemas/askrene-disable-node.json +++ b/doc/schemas/askrene-disable-node.json @@ -53,7 +53,7 @@ "method": "askrene-disable-node", "params": { "layer": "test_layers", - "node": "nodeid010101010101010101010101010101010101010101010101010101010101" + "node": "0266e4598d1d3c415f572a8488830b60f7e744ed9235eb0b1ba93283b315c03518" } }, "response": {} diff --git a/doc/schemas/askrene-listlayers.json b/doc/schemas/askrene-listlayers.json index c20a0d090524..417148f6cad5 100644 --- a/doc/schemas/askrene-listlayers.json +++ b/doc/schemas/askrene-listlayers.json @@ -263,12 +263,12 @@ "layer": "test_layers", "persistent": false, "disabled_nodes": [ - "nodeid010101010101010101010101010101010101010101010101010101010101" + "0266e4598d1d3c415f572a8488830b60f7e744ed9235eb0b1ba93283b315c03518" ], "created_channels": [ { - "source": "nodeid010101010101010101010101010101010101010101010101010101010101", - "destination": "nodeid030303030303030303030303030303030303030303030303030303030303", + "source": "0266e4598d1d3c415f572a8488830b60f7e744ed9235eb0b1ba93283b315c03518", + "destination": "035d2b1192dfba134e10e540875d366ebc8bc353d5aa766b80c090b39c3a5d885d", "short_channel_id": "0x0x1", "capacity_msat": 1000000000 } @@ -292,7 +292,7 @@ ], "biases": [ { - "short_channel_id_dir": "109x1x1/1", + "short_channel_id_dir": "110x1x0/1", "description": "bigger bias", "bias": -5 } @@ -313,12 +313,12 @@ "layer": "test_layers", "persistent": false, "disabled_nodes": [ - "nodeid010101010101010101010101010101010101010101010101010101010101" + "0266e4598d1d3c415f572a8488830b60f7e744ed9235eb0b1ba93283b315c03518" ], "created_channels": [ { - "source": "nodeid010101010101010101010101010101010101010101010101010101010101", - "destination": "nodeid030303030303030303030303030303030303030303030303030303030303", + "source": "0266e4598d1d3c415f572a8488830b60f7e744ed9235eb0b1ba93283b315c03518", + "destination": "035d2b1192dfba134e10e540875d366ebc8bc353d5aa766b80c090b39c3a5d885d", "short_channel_id": "0x0x1", "capacity_msat": 1000000000 } @@ -342,7 +342,7 @@ ], "biases": [ { - "short_channel_id_dir": "109x1x1/1", + "short_channel_id_dir": "110x1x0/1", "description": "bigger bias", "bias": -5 } diff --git a/doc/schemas/askrene-listreservations.json b/doc/schemas/askrene-listreservations.json index f72a1ee8e620..721da35369c8 100644 --- a/doc/schemas/askrene-listreservations.json +++ b/doc/schemas/askrene-listreservations.json @@ -79,28 +79,28 @@ "response": { "reservations": [ { - "short_channel_id_dir": "109x1x1/1", + "short_channel_id_dir": "110x1x0/1", "amount_msat": 1250000, "age_in_seconds": 2, - "command_id": "\"-c:askrene-reserve#62/cln:askrene-reserve#122\"" + "command_id": "examples.py:askrene-reserve#1/cln:askrene-reserve#2" }, { - "short_channel_id_dir": "123x1x1/0", - "amount_msat": 1250001, + "short_channel_id_dir": "110x1x0/1", + "amount_msat": 1250000000000, "age_in_seconds": 2, - "command_id": "\"-c:askrene-reserve#62/cln:askrene-reserve#122\"" + "command_id": "examples.py:askrene-reserve#2/cln:askrene-reserve#3" }, { - "short_channel_id_dir": "109x1x1/1", - "amount_msat": 1250000000000, + "short_channel_id_dir": "124x1x1/0", + "amount_msat": 1250001, "age_in_seconds": 2, - "command_id": "\"-c:askrene-reserve#66/cln:askrene-reserve#126\"" + "command_id": "examples.py:askrene-reserve#3/cln:askrene-reserve#4" }, { - "short_channel_id_dir": "123x1x1/0", + "short_channel_id_dir": "124x1x1/0", "amount_msat": 1250000000000, "age_in_seconds": 2, - "command_id": "\"-c:askrene-reserve#66/cln:askrene-reserve#126\"" + "command_id": "examples.py:askrene-reserve#4/cln:askrene-reserve#5" } ] } diff --git a/doc/schemas/askrene-reserve.json b/doc/schemas/askrene-reserve.json index f73e41867561..b2a0e30a1c0e 100644 --- a/doc/schemas/askrene-reserve.json +++ b/doc/schemas/askrene-reserve.json @@ -66,11 +66,11 @@ "params": { "path": [ { - "short_channel_id_dir": "109x1x1/1", + "short_channel_id_dir": "110x1x0/1", "amount_msat": 1250000 }, { - "short_channel_id_dir": "123x1x1/0", + "short_channel_id_dir": "124x1x1/0", "amount_msat": 1250001 } ] @@ -85,11 +85,11 @@ "params": { "path": [ { - "short_channel_id_dir": "109x1x1/1", + "short_channel_id_dir": "110x1x0/1", "amount_msat": 1250000000000 }, { - "short_channel_id_dir": "123x1x1/0", + "short_channel_id_dir": "124x1x1/0", "amount_msat": 1250000000000 } ] diff --git a/doc/schemas/askrene-unreserve.json b/doc/schemas/askrene-unreserve.json index 982db753f871..bcad60fd4418 100644 --- a/doc/schemas/askrene-unreserve.json +++ b/doc/schemas/askrene-unreserve.json @@ -66,11 +66,11 @@ "params": { "path": [ { - "short_channel_id_dir": "109x1x1/1", + "short_channel_id_dir": "110x1x0/1", "amount_msat": 1250000 }, { - "short_channel_id_dir": "123x1x1/0", + "short_channel_id_dir": "124x1x1/0", "amount_msat": 1250001 } ] @@ -85,11 +85,11 @@ "params": { "path": [ { - "short_channel_id_dir": "109x1x1/1", + "short_channel_id_dir": "110x1x0/1", "amount_msat": 1250000000000 }, { - "short_channel_id_dir": "123x1x1/0", + "short_channel_id_dir": "124x1x1/0", "amount_msat": 1250000000000 } ] diff --git a/doc/schemas/autoclean-once.json b/doc/schemas/autoclean-once.json index ecb6476c5fee..f2de4b069dab 100644 --- a/doc/schemas/autoclean-once.json +++ b/doc/schemas/autoclean-once.json @@ -228,8 +228,8 @@ "response": { "autoclean": { "succeededpays": { - "cleaned": 7, - "uncleaned": 0 + "cleaned": 0, + "uncleaned": 7 } } } diff --git a/doc/schemas/autoclean-status.json b/doc/schemas/autoclean-status.json index b29d250d5bb6..844a6fc884fd 100644 --- a/doc/schemas/autoclean-status.json +++ b/doc/schemas/autoclean-status.json @@ -470,7 +470,7 @@ }, "succeededpays": { "enabled": false, - "cleaned": 7 + "cleaned": 0 }, "failedpays": { "enabled": false, diff --git a/doc/schemas/bkpr-channelsapy.json b/doc/schemas/bkpr-channelsapy.json index a1644ebee518..6e125aca21c5 100644 --- a/doc/schemas/bkpr-channelsapy.json +++ b/doc/schemas/bkpr-channelsapy.json @@ -215,7 +215,7 @@ "response": { "channels_apy": [ { - "account": "channelid0120000120000120000120000120000120000120000120000120000", + "account": "252d1b0a1e57895e84137f28cf19ab2c35847e284c112fefdecc7afeaa5c1de7", "routed_out_msat": 1000000, "routed_in_msat": 510091208, "lease_fee_paid_msat": 0, @@ -235,7 +235,7 @@ "apy_total": "0.0160%" }, { - "account": "channelid0230000230000230000230000230000230000230000230000230000", + "account": "a397dd9b3e44afcb67f3f3ce1d649b74a8ade63e35505985e4cc1828634f69a2", "routed_out_msat": 510190102, "routed_in_msat": 0, "lease_fee_paid_msat": 0, @@ -256,7 +256,7 @@ "apy_total_initial": "0.0161%" }, { - "account": "channelid0250000250000250000250000250000250000250000250000250000", + "account": "f8fc83a432cbfb2fffe222cc06727fdd977b5dd10ebd6707158e799e6f522d9f", "routed_out_msat": 500000000, "routed_in_msat": 0, "lease_fee_paid_msat": 0, diff --git a/doc/schemas/bkpr-editdescriptionbyoutpoint.json b/doc/schemas/bkpr-editdescriptionbyoutpoint.json index 256a50b7ea38..153a8ed6a5f8 100644 --- a/doc/schemas/bkpr-editdescriptionbyoutpoint.json +++ b/doc/schemas/bkpr-editdescriptionbyoutpoint.json @@ -271,7 +271,7 @@ "id": "example:bkpr-editdescriptionbyoutpoint#1", "method": "bkpr-editdescriptionbyoutpoint", "params": { - "outpoint": "txidbk0101010101010101010101010101010101010101010101010101010101:1", + "outpoint": "0c609c5643e2f316985989417c48044311cf2c1fb2113a03af7d7d51b4874ac5:1", "description": "edited utxo description" } }, @@ -284,9 +284,9 @@ "credit_msat": 200000000000, "debit_msat": 0, "currency": "bcrt", - "outpoint": "txidbk0101010101010101010101010101010101010101010101010101010101:1", - "timestamp": 1738510000, - "blockheight": 110, + "outpoint": "0c609c5643e2f316985989417c48044311cf2c1fb2113a03af7d7d51b4874ac5:1", + "timestamp": 1738000001, + "blockheight": 106, "description": "edited utxo description" } ] diff --git a/doc/schemas/bkpr-editdescriptionbypaymentid.json b/doc/schemas/bkpr-editdescriptionbypaymentid.json index 4578c0b40fe2..4becee4cb0d7 100644 --- a/doc/schemas/bkpr-editdescriptionbypaymentid.json +++ b/doc/schemas/bkpr-editdescriptionbypaymentid.json @@ -265,23 +265,23 @@ "id": "example:bkpr-editdescriptionbypaymentid#1", "method": "bkpr-editdescriptionbypaymentid", "params": { - "payment_id": "paymentid0000202020202020202020202020202020202020202020202020202", + "payment_id": "f61aef012557d6496699642e71e2bacda5670b5377c6357fa40485813facc628", "description": "edited invoice description from description send some sats l2 to l3" } }, "response": { "updated": [ { - "account": "channelid0230000230000230000230000230000230000230000230000230000", + "account": "a397dd9b3e44afcb67f3f3ce1d649b74a8ade63e35505985e4cc1828634f69a2", "type": "channel", "tag": "invoice", "credit_msat": 500000000, "debit_msat": 0, "currency": "bcrt", - "payment_id": "paymentid0000202020202020202020202020202020202020202020202020202", + "payment_id": "f61aef012557d6496699642e71e2bacda5670b5377c6357fa40485813facc628", "part_id": 0, - "timestamp": 1738520000, "description": "edited invoice description from description send some sats l2 to l3", + "timestamp": 1738000007, "is_rebalance": false } ] diff --git a/doc/schemas/bkpr-inspect.json b/doc/schemas/bkpr-inspect.json index dc731b389f80..698b8003498d 100644 --- a/doc/schemas/bkpr-inspect.json +++ b/doc/schemas/bkpr-inspect.json @@ -213,18 +213,18 @@ "id": "example:bkpr-inspect#1", "method": "bkpr-inspect", "params": { - "account": "channelid0230200230200230200230200230200230200230200230200230200" + "account": "ecabe6d86abdd57565b3fb7e7c5d724e60ca1a07633951769b5dbfa48dc884b3" } }, "response": { "txs": [ { - "txid": "channeltxid230200230200230200230200230200230200230200230200230200", - "blockheight": 123, - "fees_paid_msat": 5020000, + "txid": "148a366c9a72e40af01daca6acc24e0a5648d0efb7e01f4708f23412d9deba69", + "blockheight": 124, + "fees_paid_msat": 6652000, "outputs": [ { - "account": "channelid0230200230200230200230200230200230200230200230200230200", + "account": "ecabe6d86abdd57565b3fb7e7c5d724e60ca1a07633951769b5dbfa48dc884b3", "outnum": 1, "output_tag": "channel_open", "output_value_msat": 1000000000, diff --git a/doc/schemas/bkpr-listaccountevents.json b/doc/schemas/bkpr-listaccountevents.json index d66499437171..8a2e59ca17e6 100644 --- a/doc/schemas/bkpr-listaccountevents.json +++ b/doc/schemas/bkpr-listaccountevents.json @@ -276,21 +276,21 @@ "id": "example:bkpr-listaccountevents#1", "method": "bkpr-listaccountevents", "params": [ - "channelid0230200230200230200230200230200230200230200230200230200" + "ecabe6d86abdd57565b3fb7e7c5d724e60ca1a07633951769b5dbfa48dc884b3" ] }, "response": { "events": [ { - "account": "channelid0230200230200230200230200230200230200230200230200230200", + "account": "ecabe6d86abdd57565b3fb7e7c5d724e60ca1a07633951769b5dbfa48dc884b3", "type": "chain", "tag": "channel_open", "credit_msat": 0, "debit_msat": 0, "currency": "bcrt", - "outpoint": "txidbk0101010101010101010101010101010101010101010101010101010101:1", - "timestamp": 1738500000, - "blockheight": 123 + "outpoint": "148a366c9a72e40af01daca6acc24e0a5648d0efb7e01f4708f23412d9deba69:1", + "timestamp": 1738000023, + "blockheight": 124 } ] } @@ -303,40 +303,401 @@ }, "response": { "events": [ + { + "account": "wallet", + "type": "chain", + "tag": "deposit", + "credit_msat": 200000000000, + "debit_msat": 0, + "currency": "bcrt", + "outpoint": "0c609c5643e2f316985989417c48044311cf2c1fb2113a03af7d7d51b4874ac5:1", + "timestamp": 1738000001, + "blockheight": 106, + "description": "edited utxo description" + }, + { + "account": "a397dd9b3e44afcb67f3f3ce1d649b74a8ade63e35505985e4cc1828634f69a2", + "type": "chain", + "tag": "channel_open", + "credit_msat": 0, + "debit_msat": 0, + "currency": "bcrt", + "outpoint": "7cce7550c4b37924bb74fd4baf8f1946a4b14c050c42f2479b04fede08652aa9:0", + "timestamp": 1738000002, + "blockheight": 112 + }, + { + "account": "wallet", + "type": "chain", + "tag": "deposit", + "credit_msat": 2000000000, + "debit_msat": 0, + "currency": "bcrt", + "outpoint": "c3f4a0f787b5ea11505afaba3e9599d6135943d0f562df3d6a7d3e7f372e2067:0", + "timestamp": 1738000003, + "blockheight": 113 + }, + { + "account": "wallet", + "type": "chain", + "tag": "withdrawal", + "credit_msat": 0, + "debit_msat": 2000000000, + "currency": "bcrt", + "outpoint": "c3f4a0f787b5ea11505afaba3e9599d6135943d0f562df3d6a7d3e7f372e2067:0", + "txid": "efa52a006f5909ed9cb8a098f2dec8ad7146a1384b6eaaf2fae7aac05077f7b6", + "timestamp": 1738000004, + "blockheight": 114 + }, + { + "account": "wallet", + "type": "onchain_fee", + "tag": "onchain_fee", + "credit_msat": 1004927000, + "debit_msat": 0, + "currency": "bcrt", + "timestamp": 1738000004, + "txid": "efa52a006f5909ed9cb8a098f2dec8ad7146a1384b6eaaf2fae7aac05077f7b6" + }, + { + "account": "wallet", + "type": "onchain_fee", + "tag": "onchain_fee", + "credit_msat": 0, + "debit_msat": 1004927000, + "currency": "bcrt", + "timestamp": 1738000004, + "txid": "efa52a006f5909ed9cb8a098f2dec8ad7146a1384b6eaaf2fae7aac05077f7b6" + }, + { + "account": "wallet", + "type": "chain", + "tag": "deposit", + "credit_msat": 995073000, + "debit_msat": 0, + "currency": "bcrt", + "outpoint": "efa52a006f5909ed9cb8a098f2dec8ad7146a1384b6eaaf2fae7aac05077f7b6:1", + "timestamp": 1738000005, + "blockheight": 114 + }, + { + "account": "21bd30cac60f477f2c4267220b1702a6ec5780db34f9934fa94b8c0508bf3357", + "type": "chain", + "tag": "channel_open", + "credit_msat": 1000000000, + "debit_msat": 0, + "currency": "bcrt", + "outpoint": "efa52a006f5909ed9cb8a098f2dec8ad7146a1384b6eaaf2fae7aac05077f7b6:0", + "timestamp": 1738000006, + "blockheight": 114 + }, + { + "account": "21bd30cac60f477f2c4267220b1702a6ec5780db34f9934fa94b8c0508bf3357", + "type": "onchain_fee", + "tag": "onchain_fee", + "credit_msat": 4927000, + "debit_msat": 0, + "currency": "bcrt", + "timestamp": 1738000006, + "txid": "efa52a006f5909ed9cb8a098f2dec8ad7146a1384b6eaaf2fae7aac05077f7b6" + }, + { + "account": "a397dd9b3e44afcb67f3f3ce1d649b74a8ade63e35505985e4cc1828634f69a2", + "type": "channel", + "tag": "invoice", + "credit_msat": 500000000, + "debit_msat": 0, + "currency": "bcrt", + "payment_id": "f61aef012557d6496699642e71e2bacda5670b5377c6357fa40485813facc628", + "part_id": 0, + "description": "edited invoice description from description send some sats l2 to l3", + "timestamp": 1738000007, + "is_rebalance": false + }, + { + "account": "21bd30cac60f477f2c4267220b1702a6ec5780db34f9934fa94b8c0508bf3357", + "type": "channel", + "tag": "invoice", + "credit_msat": 0, + "debit_msat": 500000000, + "currency": "bcrt", + "payment_id": "864ef81f03c4eabf9e3087d55b18b53beedce221f9a1bcb91d4d69767a022805", + "part_id": 0, + "description": "description send some sats l3 to l4", + "timestamp": 1738000008, + "is_rebalance": false + }, + { + "account": "a397dd9b3e44afcb67f3f3ce1d649b74a8ade63e35505985e4cc1828634f69a2", + "type": "channel", + "tag": "invoice", + "credit_msat": 10000, + "debit_msat": 0, + "currency": "bcrt", + "payment_id": "9562ee18e942b0eb2e36050c108efcb34cb07e5cdbe28d08d26bb71af1556c2f", + "part_id": 0, + "description": "Invoice description l31", + "timestamp": 1738000009, + "is_rebalance": false + }, + { + "account": "a397dd9b3e44afcb67f3f3ce1d649b74a8ade63e35505985e4cc1828634f69a2", + "type": "channel", + "tag": "invoice", + "credit_msat": 10000, + "debit_msat": 0, + "currency": "bcrt", + "payment_id": "097dcfa3b0bc58d499908855dae7d442854a02d4f2ffcc625f9385ed74f3256e", + "part_id": 0, + "description": "keysend", + "timestamp": 1738000010, + "is_rebalance": false + }, + { + "account": "21bd30cac60f477f2c4267220b1702a6ec5780db34f9934fa94b8c0508bf3357", + "type": "channel", + "tag": "routed", + "credit_msat": 0, + "debit_msat": 10000000, + "fees_msat": 101, + "currency": "bcrt", + "payment_id": "9bf787fe700121009e2ecdca290632c8bf2da853527c700aa5746173981ae584", + "part_id": 0, + "timestamp": 1738000011, + "is_rebalance": false + }, + { + "account": "a397dd9b3e44afcb67f3f3ce1d649b74a8ade63e35505985e4cc1828634f69a2", + "type": "channel", + "tag": "routed", + "credit_msat": 10000101, + "debit_msat": 0, + "fees_msat": 101, + "currency": "bcrt", + "payment_id": "9bf787fe700121009e2ecdca290632c8bf2da853527c700aa5746173981ae584", + "part_id": 0, + "timestamp": 1738000012, + "is_rebalance": false + }, + { + "account": "a397dd9b3e44afcb67f3f3ce1d649b74a8ade63e35505985e4cc1828634f69a2", + "type": "channel", + "tag": "invoice", + "credit_msat": 10000, + "debit_msat": 0, + "currency": "bcrt", + "payment_id": "da6c0b6d30ac35f62762bc7114d64d323dc79fb858061902263eb72df6310caf", + "part_id": 0, + "description": "keysend", + "timestamp": 1738000013, + "is_rebalance": false + }, + { + "account": "a397dd9b3e44afcb67f3f3ce1d649b74a8ade63e35505985e4cc1828634f69a2", + "type": "channel", + "tag": "invoice", + "credit_msat": 50000, + "debit_msat": 0, + "currency": "bcrt", + "payment_id": "ab3a5a971aa3b21494f7ce646f077232c10c9917c33375935c1aebfa571fa1a1", + "part_id": 0, + "description": "l32 description", + "timestamp": 1738000014, + "is_rebalance": false + }, + { + "account": "a397dd9b3e44afcb67f3f3ce1d649b74a8ade63e35505985e4cc1828634f69a2", + "type": "channel", + "tag": "invoice", + "credit_msat": 100000, + "debit_msat": 0, + "currency": "bcrt", + "payment_id": "2b1434d9e61da6c5f1252369f4a98e1ddce722b4db3bf15553b87a94d19d351d", + "part_id": 0, + "description": "l33 description", + "timestamp": 1738000015, + "is_rebalance": false + }, + { + "account": "21bd30cac60f477f2c4267220b1702a6ec5780db34f9934fa94b8c0508bf3357", + "type": "channel", + "tag": "routed", + "credit_msat": 0, + "debit_msat": 10000, + "fees_msat": 1, + "currency": "bcrt", + "payment_id": "1bb513fb2fbde40592243877d9f404ba3668275e2eeacd9c7264f34f04d37fd1", + "part_id": 0, + "timestamp": 1738000016, + "is_rebalance": false + }, + { + "account": "a397dd9b3e44afcb67f3f3ce1d649b74a8ade63e35505985e4cc1828634f69a2", + "type": "channel", + "tag": "routed", + "credit_msat": 10001, + "debit_msat": 0, + "fees_msat": 1, + "currency": "bcrt", + "payment_id": "1bb513fb2fbde40592243877d9f404ba3668275e2eeacd9c7264f34f04d37fd1", + "part_id": 0, + "timestamp": 1738000017, + "is_rebalance": false + }, + { + "account": "wallet", + "type": "chain", + "tag": "deposit", + "credit_msat": 510190000, + "debit_msat": 0, + "currency": "bcrt", + "outpoint": "40b4acd3759ac69b5160488d73a5890a46bf4f013381e52e9171ee038b3c96d6:1", + "timestamp": 1738000018, + "blockheight": 122 + }, + { + "account": "21bd30cac60f477f2c4267220b1702a6ec5780db34f9934fa94b8c0508bf3357", + "type": "chain", + "tag": "channel_close", + "credit_msat": 0, + "debit_msat": 489990000, + "currency": "bcrt", + "outpoint": "efa52a006f5909ed9cb8a098f2dec8ad7146a1384b6eaaf2fae7aac05077f7b6:0", + "txid": "1aa6d7b0bb6c5d1dac62724caa4e26dc37ed8af5e747c836746987d28603fed2", + "timestamp": 1738000019, + "blockheight": 122 + }, { "account": "external", - "origin": "channelid0340000340000340000340000340000340000340000340000340000", + "origin": "21bd30cac60f477f2c4267220b1702a6ec5780db34f9934fa94b8c0508bf3357", "type": "chain", "tag": "to_them", "credit_msat": 510010000, "debit_msat": 0, "currency": "bcrt", - "outpoint": "txidbk0202020202020202020202020202020202020202020202020202020202:1", - "timestamp": 1738520000, - "blockheight": 142 + "outpoint": "1aa6d7b0bb6c5d1dac62724caa4e26dc37ed8af5e747c836746987d28603fed2:1", + "timestamp": 1738000020, + "blockheight": 122 + }, + { + "account": "a397dd9b3e44afcb67f3f3ce1d649b74a8ade63e35505985e4cc1828634f69a2", + "type": "chain", + "tag": "channel_close", + "credit_msat": 0, + "debit_msat": 510190102, + "currency": "bcrt", + "outpoint": "7cce7550c4b37924bb74fd4baf8f1946a4b14c050c42f2479b04fede08652aa9:0", + "txid": "40b4acd3759ac69b5160488d73a5890a46bf4f013381e52e9171ee038b3c96d6", + "timestamp": 1738000021, + "blockheight": 122 + }, + { + "account": "a397dd9b3e44afcb67f3f3ce1d649b74a8ade63e35505985e4cc1828634f69a2", + "type": "onchain_fee", + "tag": "onchain_fee", + "credit_msat": 102, + "debit_msat": 0, + "currency": "bcrt", + "timestamp": 1738000021, + "txid": "40b4acd3759ac69b5160488d73a5890a46bf4f013381e52e9171ee038b3c96d6" + }, + { + "account": "external", + "origin": "a397dd9b3e44afcb67f3f3ce1d649b74a8ade63e35505985e4cc1828634f69a2", + "type": "chain", + "tag": "to_them", + "credit_msat": 486914000, + "debit_msat": 0, + "currency": "bcrt", + "outpoint": "40b4acd3759ac69b5160488d73a5890a46bf4f013381e52e9171ee038b3c96d6:0", + "timestamp": 1738000022, + "blockheight": 122 + }, + { + "account": "ecabe6d86abdd57565b3fb7e7c5d724e60ca1a07633951769b5dbfa48dc884b3", + "type": "chain", + "tag": "channel_open", + "credit_msat": 0, + "debit_msat": 0, + "currency": "bcrt", + "outpoint": "148a366c9a72e40af01daca6acc24e0a5648d0efb7e01f4708f23412d9deba69:1", + "timestamp": 1738000023, + "blockheight": 124 }, { "account": "wallet", "type": "chain", "tag": "deposit", - "credit_msat": 200000000000, + "credit_msat": 2000000000, "debit_msat": 0, "currency": "bcrt", - "outpoint": "txidbk0101010101010101010101010101010101010101010101010101010101:1", - "timestamp": 1738510000, - "blockheight": 141, - "description": "edited utxo description" + "outpoint": "e72c5b057eb2944ade8a57c7d1143cc5eea12f0905287ce40c2716ed7032bd29:0", + "timestamp": 1738000024, + "blockheight": 125 }, { - "account": "channelid0230000230000230000230000230000230000230000230000230000", + "account": "wallet", "type": "chain", - "tag": "channel_open", + "tag": "withdrawal", "credit_msat": 0, + "debit_msat": 2000000000, + "currency": "bcrt", + "outpoint": "e72c5b057eb2944ade8a57c7d1143cc5eea12f0905287ce40c2716ed7032bd29:0", + "txid": "a7875c7325031784771cf9468aae991f7cb178bd9472a701339a7a5eab234af2", + "timestamp": 1738000025, + "blockheight": 126 + }, + { + "account": "wallet", + "type": "onchain_fee", + "tag": "onchain_fee", + "credit_msat": 1004927000, + "debit_msat": 0, + "currency": "bcrt", + "timestamp": 1738000025, + "txid": "a7875c7325031784771cf9468aae991f7cb178bd9472a701339a7a5eab234af2" + }, + { + "account": "wallet", + "type": "onchain_fee", + "tag": "onchain_fee", + "credit_msat": 0, + "debit_msat": 1004927000, + "currency": "bcrt", + "timestamp": 1738000025, + "txid": "a7875c7325031784771cf9468aae991f7cb178bd9472a701339a7a5eab234af2" + }, + { + "account": "wallet", + "type": "chain", + "tag": "deposit", + "credit_msat": 995073000, + "debit_msat": 0, + "currency": "bcrt", + "outpoint": "a7875c7325031784771cf9468aae991f7cb178bd9472a701339a7a5eab234af2:1", + "timestamp": 1738000026, + "blockheight": 126 + }, + { + "account": "7512083907c74ed3a045e9bf772b3d72948eb93daf84a1cee57108800451aaf2", + "type": "chain", + "tag": "channel_open", + "credit_msat": 1000000000, + "debit_msat": 0, + "currency": "bcrt", + "outpoint": "a7875c7325031784771cf9468aae991f7cb178bd9472a701339a7a5eab234af2:0", + "timestamp": 1738000027, + "blockheight": 126 + }, + { + "account": "7512083907c74ed3a045e9bf772b3d72948eb93daf84a1cee57108800451aaf2", + "type": "onchain_fee", + "tag": "onchain_fee", + "credit_msat": 4927000, "debit_msat": 0, "currency": "bcrt", - "outpoint": "txidbk0303030303030303030303030303030303030303030303030303030303:1", - "timestamp": 1738530000, - "blockheight": 143 + "timestamp": 1738000027, + "txid": "a7875c7325031784771cf9468aae991f7cb178bd9472a701339a7a5eab234af2" } ] } diff --git a/doc/schemas/bkpr-listbalances.json b/doc/schemas/bkpr-listbalances.json index ee81c2f5f1e6..5ee751768b7e 100644 --- a/doc/schemas/bkpr-listbalances.json +++ b/doc/schemas/bkpr-listbalances.json @@ -146,21 +146,12 @@ "response": { "accounts": [ { - "account": "wallet", - "balances": [ - { - "balance_msat": 202050000000, - "coin_type": "bcrt" - } - ] - }, - { - "account": "channelid0230000230000230000230000230000230000230000230000230000", - "peer_id": "nodeid020202020202020202020202020202020202020202020202020202020202", + "account": "a397dd9b3e44afcb67f3f3ce1d649b74a8ade63e35505985e4cc1828634f69a2", + "peer_id": "022d223620a359a47ff7f7ac447c85c46c923da53389221a0054c11c1e3ca31d59", "we_opened": false, "account_closed": true, "account_resolved": true, - "resolved_at_block": 121, + "resolved_at_block": 122, "balances": [ { "balance_msat": 0, @@ -169,8 +160,8 @@ ] }, { - "account": "channelid0340000340000340000340000340000340000340000340000340000", - "peer_id": "nodeid040404040404040404040404040404040404040404040404040404040404", + "account": "21bd30cac60f477f2c4267220b1702a6ec5780db34f9934fa94b8c0508bf3357", + "peer_id": "0382ce59ebf18be7d84677c2e35f23294b9992ceca95491fcf8a56c6cb2d9de199", "we_opened": true, "account_closed": true, "account_resolved": false, @@ -182,8 +173,8 @@ ] }, { - "account": "channelid0230200230200230200230200230200230200230200230200230200", - "peer_id": "nodeid020202020202020202020202020202020202020202020202020202020202", + "account": "ecabe6d86abdd57565b3fb7e7c5d724e60ca1a07633951769b5dbfa48dc884b3", + "peer_id": "022d223620a359a47ff7f7ac447c85c46c923da53389221a0054c11c1e3ca31d59", "we_opened": false, "account_closed": false, "account_resolved": false, @@ -195,8 +186,8 @@ ] }, { - "account": "channelid0340200340200340200340200340200340200340200340200340200", - "peer_id": "nodeid040404040404040404040404040404040404040404040404040404040404", + "account": "7512083907c74ed3a045e9bf772b3d72948eb93daf84a1cee57108800451aaf2", + "peer_id": "0382ce59ebf18be7d84677c2e35f23294b9992ceca95491fcf8a56c6cb2d9de199", "we_opened": true, "account_closed": false, "account_resolved": false, @@ -206,6 +197,15 @@ "coin_type": "bcrt" } ] + }, + { + "account": "wallet", + "balances": [ + { + "balance_msat": 202500336000, + "coin_type": "bcrt" + } + ] } ] } diff --git a/doc/schemas/bkpr-listincome.json b/doc/schemas/bkpr-listincome.json index 180a210a509d..b51bfbc6b0af 100644 --- a/doc/schemas/bkpr-listincome.json +++ b/doc/schemas/bkpr-listincome.json @@ -147,9 +147,9 @@ "credit_msat": 200000000000, "debit_msat": 0, "currency": "bcrt", - "timestamp": 1738500000, + "timestamp": 1738000001, "description": "edited utxo description", - "outpoint": "txidbk0000000000000000000000000000000000000000000000000000000000:1" + "outpoint": "0c609c5643e2f316985989417c48044311cf2c1fb2113a03af7d7d51b4874ac5:1" }, { "account": "wallet", @@ -157,8 +157,8 @@ "credit_msat": 2000000000, "debit_msat": 0, "currency": "bcrt", - "timestamp": 1738510000, - "outpoint": "txidbk0101010101010101010101010101010101010101010101010101010101:1" + "timestamp": 1738000003, + "outpoint": "c3f4a0f787b5ea11505afaba3e9599d6135943d0f562df3d6a7d3e7f372e2067:0" }, { "account": "wallet", @@ -166,8 +166,8 @@ "credit_msat": 0, "debit_msat": 1004927000, "currency": "bcrt", - "timestamp": 1738520000, - "txid": "channeltxid340000340000340000340000340000340000340000340000340000" + "timestamp": 1738000004, + "txid": "efa52a006f5909ed9cb8a098f2dec8ad7146a1384b6eaaf2fae7aac05077f7b6" }, { "account": "wallet", @@ -175,8 +175,150 @@ "credit_msat": 1004927000, "debit_msat": 0, "currency": "bcrt", - "timestamp": 1738530000, - "txid": "channeltxid340000340000340000340000340000340000340000340000340000" + "timestamp": 1738000004, + "txid": "efa52a006f5909ed9cb8a098f2dec8ad7146a1384b6eaaf2fae7aac05077f7b6" + }, + { + "account": "21bd30cac60f477f2c4267220b1702a6ec5780db34f9934fa94b8c0508bf3357", + "tag": "onchain_fee", + "credit_msat": 0, + "debit_msat": 4927000, + "currency": "bcrt", + "timestamp": 1738000006, + "txid": "efa52a006f5909ed9cb8a098f2dec8ad7146a1384b6eaaf2fae7aac05077f7b6" + }, + { + "account": "a397dd9b3e44afcb67f3f3ce1d649b74a8ade63e35505985e4cc1828634f69a2", + "tag": "invoice", + "credit_msat": 500000000, + "debit_msat": 0, + "currency": "bcrt", + "timestamp": 1738000007, + "description": "edited invoice description from description send some sats l2 to l3", + "payment_id": "f61aef012557d6496699642e71e2bacda5670b5377c6357fa40485813facc628" + }, + { + "account": "21bd30cac60f477f2c4267220b1702a6ec5780db34f9934fa94b8c0508bf3357", + "tag": "invoice", + "credit_msat": 0, + "debit_msat": 500000000, + "currency": "bcrt", + "timestamp": 1738000008, + "description": "description send some sats l3 to l4", + "payment_id": "864ef81f03c4eabf9e3087d55b18b53beedce221f9a1bcb91d4d69767a022805" + }, + { + "account": "a397dd9b3e44afcb67f3f3ce1d649b74a8ade63e35505985e4cc1828634f69a2", + "tag": "invoice", + "credit_msat": 10000, + "debit_msat": 0, + "currency": "bcrt", + "timestamp": 1738000009, + "description": "Invoice description l31", + "payment_id": "9562ee18e942b0eb2e36050c108efcb34cb07e5cdbe28d08d26bb71af1556c2f" + }, + { + "account": "a397dd9b3e44afcb67f3f3ce1d649b74a8ade63e35505985e4cc1828634f69a2", + "tag": "invoice", + "credit_msat": 10000, + "debit_msat": 0, + "currency": "bcrt", + "timestamp": 1738000010, + "description": "keysend", + "payment_id": "097dcfa3b0bc58d499908855dae7d442854a02d4f2ffcc625f9385ed74f3256e" + }, + { + "account": "21bd30cac60f477f2c4267220b1702a6ec5780db34f9934fa94b8c0508bf3357", + "tag": "routed", + "credit_msat": 101, + "debit_msat": 0, + "currency": "bcrt", + "timestamp": 1738000011, + "payment_id": "9bf787fe700121009e2ecdca290632c8bf2da853527c700aa5746173981ae584" + }, + { + "account": "a397dd9b3e44afcb67f3f3ce1d649b74a8ade63e35505985e4cc1828634f69a2", + "tag": "invoice", + "credit_msat": 10000, + "debit_msat": 0, + "currency": "bcrt", + "timestamp": 1738000013, + "description": "keysend", + "payment_id": "da6c0b6d30ac35f62762bc7114d64d323dc79fb858061902263eb72df6310caf" + }, + { + "account": "a397dd9b3e44afcb67f3f3ce1d649b74a8ade63e35505985e4cc1828634f69a2", + "tag": "invoice", + "credit_msat": 50000, + "debit_msat": 0, + "currency": "bcrt", + "timestamp": 1738000014, + "description": "l32 description", + "payment_id": "ab3a5a971aa3b21494f7ce646f077232c10c9917c33375935c1aebfa571fa1a1" + }, + { + "account": "a397dd9b3e44afcb67f3f3ce1d649b74a8ade63e35505985e4cc1828634f69a2", + "tag": "invoice", + "credit_msat": 100000, + "debit_msat": 0, + "currency": "bcrt", + "timestamp": 1738000015, + "description": "l33 description", + "payment_id": "2b1434d9e61da6c5f1252369f4a98e1ddce722b4db3bf15553b87a94d19d351d" + }, + { + "account": "21bd30cac60f477f2c4267220b1702a6ec5780db34f9934fa94b8c0508bf3357", + "tag": "routed", + "credit_msat": 1, + "debit_msat": 0, + "currency": "bcrt", + "timestamp": 1738000016, + "payment_id": "1bb513fb2fbde40592243877d9f404ba3668275e2eeacd9c7264f34f04d37fd1" + }, + { + "account": "a397dd9b3e44afcb67f3f3ce1d649b74a8ade63e35505985e4cc1828634f69a2", + "tag": "onchain_fee", + "credit_msat": 0, + "debit_msat": 102, + "currency": "bcrt", + "timestamp": 1738000021, + "txid": "40b4acd3759ac69b5160488d73a5890a46bf4f013381e52e9171ee038b3c96d6" + }, + { + "account": "wallet", + "tag": "deposit", + "credit_msat": 2000000000, + "debit_msat": 0, + "currency": "bcrt", + "timestamp": 1738000024, + "outpoint": "e72c5b057eb2944ade8a57c7d1143cc5eea12f0905287ce40c2716ed7032bd29:0" + }, + { + "account": "wallet", + "tag": "onchain_fee", + "credit_msat": 0, + "debit_msat": 1004927000, + "currency": "bcrt", + "timestamp": 1738000025, + "txid": "a7875c7325031784771cf9468aae991f7cb178bd9472a701339a7a5eab234af2" + }, + { + "account": "wallet", + "tag": "onchain_fee", + "credit_msat": 1004927000, + "debit_msat": 0, + "currency": "bcrt", + "timestamp": 1738000025, + "txid": "a7875c7325031784771cf9468aae991f7cb178bd9472a701339a7a5eab234af2" + }, + { + "account": "7512083907c74ed3a045e9bf772b3d72948eb93daf84a1cee57108800451aaf2", + "tag": "onchain_fee", + "credit_msat": 0, + "debit_msat": 4927000, + "currency": "bcrt", + "timestamp": 1738000027, + "txid": "a7875c7325031784771cf9468aae991f7cb178bd9472a701339a7a5eab234af2" } ] } @@ -195,28 +337,142 @@ "credit_msat": 200000000000, "debit_msat": 0, "currency": "bcrt", - "timestamp": 1738510000, + "timestamp": 1738000001, "description": "edited utxo description", - "outpoint": "txidbk0101010101010101010101010101010101010101010101010101010101:1" + "outpoint": "0c609c5643e2f316985989417c48044311cf2c1fb2113a03af7d7d51b4874ac5:1" + }, + { + "account": "wallet", + "tag": "deposit", + "credit_msat": 2000000000, + "debit_msat": 0, + "currency": "bcrt", + "timestamp": 1738000003, + "outpoint": "c3f4a0f787b5ea11505afaba3e9599d6135943d0f562df3d6a7d3e7f372e2067:0" + }, + { + "account": "21bd30cac60f477f2c4267220b1702a6ec5780db34f9934fa94b8c0508bf3357", + "tag": "onchain_fee", + "credit_msat": 0, + "debit_msat": 4927000, + "currency": "bcrt", + "timestamp": 1738000006, + "txid": "efa52a006f5909ed9cb8a098f2dec8ad7146a1384b6eaaf2fae7aac05077f7b6" }, { - "account": "channelid0230000230000230000230000230000230000230000230000230000", + "account": "a397dd9b3e44afcb67f3f3ce1d649b74a8ade63e35505985e4cc1828634f69a2", "tag": "invoice", "credit_msat": 500000000, "debit_msat": 0, "currency": "bcrt", - "timestamp": 1738520000, + "timestamp": 1738000007, "description": "edited invoice description from description send some sats l2 to l3", - "payment_id": "paymentid0000202020202020202020202020202020202020202020202020202" + "payment_id": "f61aef012557d6496699642e71e2bacda5670b5377c6357fa40485813facc628" + }, + { + "account": "21bd30cac60f477f2c4267220b1702a6ec5780db34f9934fa94b8c0508bf3357", + "tag": "invoice", + "credit_msat": 0, + "debit_msat": 500000000, + "currency": "bcrt", + "timestamp": 1738000008, + "description": "description send some sats l3 to l4", + "payment_id": "864ef81f03c4eabf9e3087d55b18b53beedce221f9a1bcb91d4d69767a022805" + }, + { + "account": "a397dd9b3e44afcb67f3f3ce1d649b74a8ade63e35505985e4cc1828634f69a2", + "tag": "invoice", + "credit_msat": 10000, + "debit_msat": 0, + "currency": "bcrt", + "timestamp": 1738000009, + "description": "Invoice description l31", + "payment_id": "9562ee18e942b0eb2e36050c108efcb34cb07e5cdbe28d08d26bb71af1556c2f" + }, + { + "account": "a397dd9b3e44afcb67f3f3ce1d649b74a8ade63e35505985e4cc1828634f69a2", + "tag": "invoice", + "credit_msat": 10000, + "debit_msat": 0, + "currency": "bcrt", + "timestamp": 1738000010, + "description": "keysend", + "payment_id": "097dcfa3b0bc58d499908855dae7d442854a02d4f2ffcc625f9385ed74f3256e" + }, + { + "account": "21bd30cac60f477f2c4267220b1702a6ec5780db34f9934fa94b8c0508bf3357", + "tag": "routed", + "credit_msat": 101, + "debit_msat": 0, + "currency": "bcrt", + "timestamp": 1738000011, + "payment_id": "9bf787fe700121009e2ecdca290632c8bf2da853527c700aa5746173981ae584" + }, + { + "account": "a397dd9b3e44afcb67f3f3ce1d649b74a8ade63e35505985e4cc1828634f69a2", + "tag": "invoice", + "credit_msat": 10000, + "debit_msat": 0, + "currency": "bcrt", + "timestamp": 1738000013, + "description": "keysend", + "payment_id": "da6c0b6d30ac35f62762bc7114d64d323dc79fb858061902263eb72df6310caf" + }, + { + "account": "a397dd9b3e44afcb67f3f3ce1d649b74a8ade63e35505985e4cc1828634f69a2", + "tag": "invoice", + "credit_msat": 50000, + "debit_msat": 0, + "currency": "bcrt", + "timestamp": 1738000014, + "description": "l32 description", + "payment_id": "ab3a5a971aa3b21494f7ce646f077232c10c9917c33375935c1aebfa571fa1a1" + }, + { + "account": "a397dd9b3e44afcb67f3f3ce1d649b74a8ade63e35505985e4cc1828634f69a2", + "tag": "invoice", + "credit_msat": 100000, + "debit_msat": 0, + "currency": "bcrt", + "timestamp": 1738000015, + "description": "l33 description", + "payment_id": "2b1434d9e61da6c5f1252369f4a98e1ddce722b4db3bf15553b87a94d19d351d" + }, + { + "account": "21bd30cac60f477f2c4267220b1702a6ec5780db34f9934fa94b8c0508bf3357", + "tag": "routed", + "credit_msat": 1, + "debit_msat": 0, + "currency": "bcrt", + "timestamp": 1738000016, + "payment_id": "1bb513fb2fbde40592243877d9f404ba3668275e2eeacd9c7264f34f04d37fd1" + }, + { + "account": "a397dd9b3e44afcb67f3f3ce1d649b74a8ade63e35505985e4cc1828634f69a2", + "tag": "onchain_fee", + "credit_msat": 0, + "debit_msat": 102, + "currency": "bcrt", + "timestamp": 1738000021, + "txid": "40b4acd3759ac69b5160488d73a5890a46bf4f013381e52e9171ee038b3c96d6" + }, + { + "account": "wallet", + "tag": "deposit", + "credit_msat": 2000000000, + "debit_msat": 0, + "currency": "bcrt", + "timestamp": 1738000024, + "outpoint": "e72c5b057eb2944ade8a57c7d1143cc5eea12f0905287ce40c2716ed7032bd29:0" }, { - "account": "channelid0340200340200340200340200340200340200340200340200340200", + "account": "7512083907c74ed3a045e9bf772b3d72948eb93daf84a1cee57108800451aaf2", "tag": "onchain_fee", "credit_msat": 0, - "debit_msat": 6960000, + "debit_msat": 4927000, "currency": "bcrt", - "timestamp": 1738530000, - "txid": "channeltxid340200340200340200340200340200340200340200340200340200" + "timestamp": 1738000027, + "txid": "a7875c7325031784771cf9468aae991f7cb178bd9472a701339a7a5eab234af2" } ] } diff --git a/doc/schemas/check.json b/doc/schemas/check.json index cb787b6cf0f7..c461ad059eac 100644 --- a/doc/schemas/check.json +++ b/doc/schemas/check.json @@ -54,15 +54,15 @@ "route": [ { "amount_msat": 1011, - "id": "nodeid030303030303030303030303030303030303030303030303030303030303", + "id": "035d2b1192dfba134e10e540875d366ebc8bc353d5aa766b80c090b39c3a5d885d", "delay": 20, - "channel": "123x1x1" + "channel": "124x1x1" }, { "amount_msat": 1000, - "id": "nodeid040404040404040404040404040404040404040404040404040404040404", + "id": "0382ce59ebf18be7d84677c2e35f23294b9992ceca95491fcf8a56c6cb2d9de199", "delay": 10, - "channel": "130x1x1" + "channel": "126x1x0" } ], "payment_hash": "0000000000000000000000000000000000000000000000000000000000000000" diff --git a/doc/schemas/checkmessage.json b/doc/schemas/checkmessage.json index fb744735d6cd..1c583d2eb56a 100644 --- a/doc/schemas/checkmessage.json +++ b/doc/schemas/checkmessage.json @@ -100,7 +100,7 @@ } }, "response": { - "pubkey": "nodeid010101010101010101010101010101010101010101010101010101010101", + "pubkey": "0266e4598d1d3c415f572a8488830b60f7e744ed9235eb0b1ba93283b315c03518", "verified": true } } diff --git a/doc/schemas/checkrune.json b/doc/schemas/checkrune.json index 643e29826948..973b72b78078 100644 --- a/doc/schemas/checkrune.json +++ b/doc/schemas/checkrune.json @@ -90,7 +90,7 @@ "id": "example:checkrune#1", "method": "checkrune", "params": { - "nodeid": "nodeid020202020202020202020202020202020202020202020202020202020202", + "nodeid": "022d223620a359a47ff7f7ac447c85c46c923da53389221a0054c11c1e3ca31d59", "rune": "_RWaZZRI7wAYU2hqlFBmYgC_dFczcpAdI_9O87YbDpg9MCZtZXRob2RebGlzdHxtZXRob2ReZ2V0fG1ldGhvZD1zdW1tYXJ5Jm1ldGhvZC9saXN0ZGF0YXN0b3Jl", "method": "listpeers", "params": {} @@ -105,7 +105,7 @@ "id": "example:checkrune#2", "method": "checkrune", "params": { - "nodeid": "nodeid020202020202020202020202020202020202020202020202020202020202", + "nodeid": "022d223620a359a47ff7f7ac447c85c46c923da53389221a0054c11c1e3ca31d59", "rune": "QUJEYMLGgiaJvMDv_MhR2hiMKIBTbq-PrL-KxcIlirQ9MiZtZXRob2Q9cGF5JnBuYW1lYW1vdW50bXNhdDwxMDAwMA==", "method": "pay", "params": { diff --git a/doc/schemas/close.json b/doc/schemas/close.json index 2b30fa463a32..2b19109d288f 100644 --- a/doc/schemas/close.json +++ b/doc/schemas/close.json @@ -190,18 +190,18 @@ "id": "example:close#1", "method": "close", "params": { - "id": "nodeid030303030303030303030303030303030303030303030303030303030303", + "id": "035d2b1192dfba134e10e540875d366ebc8bc353d5aa766b80c090b39c3a5d885d", "unilateraltimeout": 1 } }, "response": { - "tx": "02000000000101cls00101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101", - "txid": "txid010101010101010101010101010101010101010101010101010101010101", + "tx": "02000000000101a92a6508defe049b47f2420c054cb1a446198faf4bfd74bb2479b3c45075ce7c0000000000ffffffff02026e07000000000022512085d72025e78fd08bb61119f0987ab0041f50561ada6e130c645343db8c44c2afeec8070000000000225120a7583f0c421663b8ca76fa579018b40682ef8553d73fd061cd8f216ecdced6a30400473044022064d1a5480d76bc71d44ee440a47ec30e7433812292ca8d4876e5e59cd2950e4802201ece394b4bcbf6ba3f21152236822cfb2eeed8e5897d3bf3499e9d7d1a5d092e01473044022068cd05fe53fa71118b643e5340ea3cd169a3ca655c64c0b30f78d720d79a957502200f14d30de4251cf016a3db3475fe5472772335b76dfc268dc173e6541026b1830147522102d595ae92b3544c3250fb772f214ad8d4c51425033740a5bcc357190add6d7e7a2102d6063d022691b2490ab454dee73a57c6ff5d308352b461ece69f3c284f2c241252ae00000000", + "txid": "40b4acd3759ac69b5160488d73a5890a46bf4f013381e52e9171ee038b3c96d6", "txs": [ - "02000000000101cls00101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101" + "02000000000101a92a6508defe049b47f2420c054cb1a446198faf4bfd74bb2479b3c45075ce7c0000000000ffffffff02026e07000000000022512085d72025e78fd08bb61119f0987ab0041f50561ada6e130c645343db8c44c2afeec8070000000000225120a7583f0c421663b8ca76fa579018b40682ef8553d73fd061cd8f216ecdced6a30400473044022064d1a5480d76bc71d44ee440a47ec30e7433812292ca8d4876e5e59cd2950e4802201ece394b4bcbf6ba3f21152236822cfb2eeed8e5897d3bf3499e9d7d1a5d092e01473044022068cd05fe53fa71118b643e5340ea3cd169a3ca655c64c0b30f78d720d79a957502200f14d30de4251cf016a3db3475fe5472772335b76dfc268dc173e6541026b1830147522102d595ae92b3544c3250fb772f214ad8d4c51425033740a5bcc357190add6d7e7a2102d6063d022691b2490ab454dee73a57c6ff5d308352b461ece69f3c284f2c241252ae00000000" ], "txids": [ - "txid010101010101010101010101010101010101010101010101010101010101" + "40b4acd3759ac69b5160488d73a5890a46bf4f013381e52e9171ee038b3c96d6" ], "type": "mutual" } @@ -211,18 +211,18 @@ "id": "example:close#2", "method": "close", "params": { - "id": "nodeid040404040404040404040404040404040404040404040404040404040404", - "destination": "bcrt1p0004040404040404040404040404040404040404040404040404040404" + "id": "0382ce59ebf18be7d84677c2e35f23294b9992ceca95491fcf8a56c6cb2d9de199", + "destination": "bcrt1qwvp8fktkxp07v0fp9jyqe7yl6rcgyu585a7pzr" } }, "response": { - "tx": "02000000000101cls10202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202", - "txid": "txid020202020202020202020202020202020202020202020202020202020202", + "tx": "02000000000101b6f77750c0aae7faf2aa6e4b38a14671adc8def298a0b89ced09596f002aa5ef0000000000ffffffff026b6f070000000000160014730274d976305fe63d212c880cf89fd0f08272873ac80700000000002251202bdd81f95d64ed2cc37d2eae725de428c91bff072d7503d87446970eedc630300400473044022008dec4948db1c9e4db4dcf8c223f554117e48c6aa0aac471de67c03163a82e4a0220018bdb9889230e0048a378efad73d3bec83c330baa727323d95ca86fe36301b701473044022022cec9df9ece54e1ca89888bdc19ed84e5202a93070d05aa9b3236f9990b440d0220376f7fd6edb49ad13596cdfd51d929a92d45bc88da3f16ed0777014a28025a2801475221021c29746e4136ddff456483df3980c2d0d5f31c93ef5ded564f7294a10d7414aa2103c47b1b2afcfd68c7b86c0976adb9a4f0835bc78242fced745d78433497a867d652ae00000000", + "txid": "1aa6d7b0bb6c5d1dac62724caa4e26dc37ed8af5e747c836746987d28603fed2", "txs": [ - "02000000000101cls10202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202" + "02000000000101b6f77750c0aae7faf2aa6e4b38a14671adc8def298a0b89ced09596f002aa5ef0000000000ffffffff026b6f070000000000160014730274d976305fe63d212c880cf89fd0f08272873ac80700000000002251202bdd81f95d64ed2cc37d2eae725de428c91bff072d7503d87446970eedc630300400473044022008dec4948db1c9e4db4dcf8c223f554117e48c6aa0aac471de67c03163a82e4a0220018bdb9889230e0048a378efad73d3bec83c330baa727323d95ca86fe36301b701473044022022cec9df9ece54e1ca89888bdc19ed84e5202a93070d05aa9b3236f9990b440d0220376f7fd6edb49ad13596cdfd51d929a92d45bc88da3f16ed0777014a28025a2801475221021c29746e4136ddff456483df3980c2d0d5f31c93ef5ded564f7294a10d7414aa2103c47b1b2afcfd68c7b86c0976adb9a4f0835bc78242fced745d78433497a867d652ae00000000" ], "txids": [ - "txid020202020202020202020202020202020202020202020202020202020202" + "1aa6d7b0bb6c5d1dac62724caa4e26dc37ed8af5e747c836746987d28603fed2" ], "type": "mutual" } diff --git a/doc/schemas/commando.json b/doc/schemas/commando.json index 6919d344337c..13d1df4f4737 100644 --- a/doc/schemas/commando.json +++ b/doc/schemas/commando.json @@ -90,7 +90,7 @@ "id": "example:commando#1", "method": "commando", "params": { - "peer_id": "nodeid020202020202020202020202020202020202020202020202020202020202", + "peer_id": "022d223620a359a47ff7f7ac447c85c46c923da53389221a0054c11c1e3ca31d59", "rune": "zFMd1fjhrAYxUeFA54TjloZqOt8JrA_i_nYwIgXkag49MA==", "method": "newaddr", "params": { @@ -99,7 +99,7 @@ } }, "response": { - "p2tr": "bcrt1p338x07070707070707070707070707070707070707070707070707070707" + "p2tr": "bcrt1pccrx7fmmdg6ssww0su65umpyzrt0w8fs39hc0tu04zm88etleqsq8t2an5" } }, { @@ -107,22 +107,22 @@ "id": "example:commando#2", "method": "commando", "params": { - "peer_id": "nodeid020202020202020202020202020202020202020202020202020202020202", + "peer_id": "022d223620a359a47ff7f7ac447c85c46c923da53389221a0054c11c1e3ca31d59", "rune": "RXgu0DD_i0wSPEZkIDyZIWL0bSAGdhvJ_GHOQdTg04A9MSZpZF4wMjY2ZTQ1OThkMWQzYzQxNWY1NyZtZXRob2Q9bGlzdHBlZXJz", "method": "listpeers", "params": [ - "nodeid030303030303030303030303030303030303030303030303030303030303" + "035d2b1192dfba134e10e540875d366ebc8bc353d5aa766b80c090b39c3a5d885d" ] } }, "response": { "peers": [ { - "id": "nodeid030303030303030303030303030303030303030303030303030303030303", + "id": "035d2b1192dfba134e10e540875d366ebc8bc353d5aa766b80c090b39c3a5d885d", "connected": true, "num_channels": 2, "netaddr": [ - "127.0.0.1:19736" + "127.0.0.1:30005" ], "features": "0898882a8a59a1" } @@ -134,23 +134,23 @@ "id": "example:commando#3", "method": "commando", "params": { - "peer_id": "nodeid020202020202020202020202020202020202020202020202020202020202", + "peer_id": "022d223620a359a47ff7f7ac447c85c46c923da53389221a0054c11c1e3ca31d59", "rune": "QUJEYMLGgiaJvMDv_MhR2hiMKIBTbq-PrL-KxcIlirQ9MiZtZXRob2Q9cGF5JnBuYW1lYW1vdW50bXNhdDwxMDAwMA==", "method": "pay", "params": { - "bolt11": "lnbcrt100n1pnt2bolt11invl020300000000bolt11invl020300000000bolt11invl020300000000bolt11invl020300000000bolt11invl020300000000bolt11invl020300000000bolt11invl020300000000bolt11invl020300000000bolt11invl020300000000bolt11invl020300000000", + "bolt11": "lnbcrt1pne035qsp5hu0s83c7qg77lgtagcr58sf07fvrqf27j67s2ptguw9wk8ruexfqpp50ge88lv20ge4a9ny7xc7rg8p6vqvnuuzwllkk2zng6txu7sfz3cqdqcdserxgryv4ekxunfwp6xjmmwxqyjw5qcqp99qxpqysgqrwjd83fygx3zcnupx0ftnpewajss6n4vpsugju00w8hu5lu0neujqhgw8jygwmawz8jq8pp2xu6r78f3m9yld6ky7539x5g5ahvtmqqqmgfjaa", "amount_msat": 9900 } } }, "response": { - "destination": "nodeid020202020202020202020202020202020202020202020202020202020202", - "payment_hash": "paymenthashcmdpycp10cp10cp10cp10cp10cp10cp10cp10cp10cp10cp10cp10", - "created_at": 1738000000, + "destination": "022d223620a359a47ff7f7ac447c85c46c923da53389221a0054c11c1e3ca31d59", + "payment_hash": "7a3273fd8a7a335e9664f1b1e1a0e1d300c9f38277ff6b285346966e7a091470", + "created_at": 1738000000.0, "parts": 1, "amount_msat": 9900, "amount_sent_msat": 9900, - "payment_preimage": "paymentpreimagec010101010101010101010101010101010101010101010101", + "payment_preimage": "08377744ca985c1f08377744ca985c1f08377744ca985c1f08377744ca985c1f", "status": "complete" } } diff --git a/doc/schemas/connect.json b/doc/schemas/connect.json index 0587d90f3790..6079bf9e2699 100644 --- a/doc/schemas/connect.json +++ b/doc/schemas/connect.json @@ -192,19 +192,19 @@ "id": "example:connect#1", "method": "connect", "params": { - "id": "nodeid020202020202020202020202020202020202020202020202020202020202", + "id": "022d223620a359a47ff7f7ac447c85c46c923da53389221a0054c11c1e3ca31d59", "host": "localhost", - "port": 19735 + "port": 30003 } }, "response": { - "id": "nodeid020202020202020202020202020202020202020202020202020202020202", + "id": "022d223620a359a47ff7f7ac447c85c46c923da53389221a0054c11c1e3ca31d59", "features": "0898882a8a59a1", "direction": "out", "address": { "type": "ipv4", "address": "127.0.0.1", - "port": 19735 + "port": 30003 } } }, @@ -213,19 +213,19 @@ "id": "example:connect#2", "method": "connect", "params": { - "id": "nodeid030303030303030303030303030303030303030303030303030303030303", + "id": "035d2b1192dfba134e10e540875d366ebc8bc353d5aa766b80c090b39c3a5d885d", "host": "localhost", - "port": 19736 + "port": 30005 } }, "response": { - "id": "nodeid030303030303030303030303030303030303030303030303030303030303", + "id": "035d2b1192dfba134e10e540875d366ebc8bc353d5aa766b80c090b39c3a5d885d", "features": "0898882a8a59a1", "direction": "out", "address": { "type": "ipv4", "address": "127.0.0.1", - "port": 19736 + "port": 30005 } } } diff --git a/doc/schemas/createinvoice.json b/doc/schemas/createinvoice.json index 3ca4e9ec545a..75ef871005ef 100644 --- a/doc/schemas/createinvoice.json +++ b/doc/schemas/createinvoice.json @@ -211,19 +211,19 @@ "id": "example:createinvoice#1", "method": "createinvoice", "params": { - "invstring": "lnbcrt100n1pnt2bolt11invl010300000000bolt11invl010300000000bolt11invl010300000000bolt11invl010300000000bolt11invl010300000000bolt11invl010300000000bolt11invl010300000000bolt11invl010300000000bolt11invl010300000000bolt11invl010300000000", + "invstring": "lnbcrt1u1pne035qsp5j9w8t9p2y6an5se63n3vkpp8c20vdsthtn78sv5t2lmt57l742wqpp5wtxkappzcsrlkmgfs6g0zyct0hkhashh7hsaxz7e65slq9fkx7fsdqcdscnxgryv4ekxunfwp6xjmmwxqyjw5qcqp9rzjqgkjyd3q5dv6gllh77kygly9c3kfy0d9xwyjyxsq2nq3c83u5vw4jqqqdcqqqqgqqqqqqqqpqqqqqzsqqc9qxpqysgqckdjpyhc4cunmkllssef4lekdrf6dmg6pq4r45ftgcfyvyx3ag0k473jegm39nl9wal6ue7y8ue6xlf7wd8f0ql4xs7fx45jm47muzqq7cecak", "label": "lbl_l13", "preimage": "0101010101010101010101010101010101010101010101010101010101010101" } }, "response": { "label": "lbl_l13", - "bolt11": "lnbcrt100n1pnt2bolt11invl020100000000bolt11invl020100000000bolt11invl020100000000bolt11invl020100000000bolt11invl020100000000bolt11invl020100000000bolt11invl020100000000bolt11invl020100000000bolt11invl020100000000bolt11invl020100000000", - "payment_hash": "paymenthashinvl0210021002100210021002100210021002100210021002100", + "bolt11": "lnbcrt1u1pne035qsp5j9w8t9p2y6an5se63n3vkpp8c20vdsthtn78sv5t2lmt57l742wqpp5wtxkappzcsrlkmgfs6g0zyct0hkhashh7hsaxz7e65slq9fkx7fsdqcdscnxgryv4ekxunfwp6xjmmwxqyjw5qcqp9rzjqgkjyd3q5dv6gllh77kygly9c3kfy0d9xwyjyxsq2nq3c83u5vw4jqqqdcqqqqgqqqqqqqqpqqqqqzsqqc9qxpqysgq2dmxu8vh2mmklw3vrq0dy4a69v7ga4mauty4cswwga4j4ahx797sjtzpj0qty3qkxcvw3nndx8f9v9230y4sjyf298m6uwz8thz9rpcqz05u35", + "payment_hash": "72cd6e8422c407fb6d098690f1130b7ded7ec2f7f5e1d30bd9d521f015363793", "amount_msat": 100000, "status": "unpaid", "description": "l13 description", - "expires_at": 1739000000, + "expires_at": 1738604800, "created_index": 7 } } diff --git a/doc/schemas/createonion.json b/doc/schemas/createonion.json index d6c2d22ce941..79c06c1fa1e7 100644 --- a/doc/schemas/createonion.json +++ b/doc/schemas/createonion.json @@ -108,27 +108,27 @@ "params": { "hops": [ { - "pubkey": "nodeid020202020202020202020202020202020202020202020202020202020202", - "payload": "payload010101010101010101010101010" + "pubkey": "022d223620a359a47ff7f7ac447c85c46c923da53389221a0054c11c1e3ca31d59", + "payload": "11020203e804019106080000700000010000" }, { - "pubkey": "nodeid030303030303030303030303030303030303030303030303030303030303", - "payload": "payload020202020202020202020202020" + "pubkey": "035d2b1192dfba134e10e540875d366ebc8bc353d5aa766b80c090b39c3a5d885d", + "payload": "11020203e804019106080000720000010000" }, { - "pubkey": "nodeid040404040404040404040404040404040404040404040404040404040404", - "payload": "payload030303030303030303030303030" + "pubkey": "0382ce59ebf18be7d84677c2e35f23294b9992ceca95491fcf8a56c6cb2d9de199", + "payload": "2b020203e804018b0822d1d843a07ff04801a9c926cfef8fbd242a35d332fde5e255e6b4c92e2fc5030f03e8" } ], - "assocdata": "assocdata0010101010101010101010101010101010101010101010101010101" + "assocdata": "47c148c1746366e4c2c7496621c22002bc2711b4d9c52cbb9c7b1fdca59c8579" } }, "response": { - "onion": "onion10101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010", + "onion": "00021d5b7e75f56e8fb8c5dbbcfdf954b89d171b35fced6bf4ad929b3b6e081e16c93046493f6f0f4e6f983b424e799b9f60ae7c75fa260760393aad7958e04ec5ea5a06e11078daa9ff31a1aaeed8b04f5ce319118a4bdda9e90861829161dd4d44164816f566d0cc219da32fdd08249068cec2fd589fb216933b95adce045364fcb6d6905a4e4169346b75e6ccfecb0cfdfd74d0574eb684b952db7df8443541cc28296f42afeafbb7a34c3f8c64dce9c0ebb37f5485f66246cbf11b7a8cd4a45d64723b7e706b1ef3eff4ce6133aa86f6c044337716bd0c1173b92b13c4d11453ab850fd945c1af91d3ce41928600bbafbc81b56e3bc704a678a783e2232bc80bc4afa93f84498127123096af80ca5295bb02b6c6524720a0f4dc81075688632b9428f6f4399a0ecf6c17e5c3015c9715af5127000787cc8d7e023f96b6e0175d600911c1dffef6a0d2a8ea8059b287e9e941810de5190ce0c274d6452a8ecc06a0cb98a9550e7e80e8eebdb9c326ca2a3f25b3147daaa68b8d5f745344938645535f858f6a4484b17322b4076714994865ac1660c4f364309bb5147c55bf8458cf6aa7420896d2cb1ee0fe301c83109a102a42d41063c32732ef0366b9b9bd7516c3f7607a54eb3255fa6589bd3ea021cb9deee71b3ea33fa9e509c085216243ea6cea4acf038fee2a4e7418f4087c79423f8bc94fda1ea7de66cb06c131304e39b20634e70721f028427093e059065e6d157cbbdb1ea02476478033164cc90b7707c612897224099c8f3cae86cf0503a1fc1c21e86f4fa7c6332786cc0c44b379516032a93d1c4853453b819d30438814b28bbb14989dfb88819e3fd9b38267b84cc052637ca9c5ae2b149fb53831e4237036cde4b6dd0c0754c52551585692beba1b4228540255ad6fd6bd7912acd47816023332a52075db994decac8cc3611a0f222638084b71a3f8f4c019af28524d96a609fd7cf2e660414b8db54a2d77087087313dea24cab947c04a3ca191d3ba8ffd5ddef72fbc6ad1fc7c71e97cc3da1b677108b907c591c32cb3a41b5636292d9db891013c2d729d67162e4388bee98469f98871af9b5580768f0db885106b981274060f1b3bca8f7297287c6688f6c30054f727d7dd9baa097175fb198b3477c2f1545ea6425f0a6df732ea4be943dff9cece87a9751be426669b1f8b3cb3f7a39f2b72ee68c287e6db1c86405b782c774c22acad3a68bb377713958f6c89e7b8a3d17e52416ea9bdb959949b47af8dd6b380ebc0481873de65edf599f3c1f51c9e4abd388e4d6ad6cf48e5c279286ed7bc683523b9c016227af1cdcf856ec11b47d3f369ac4fde6cee8e19748ef6c365c5effdc81afe560e1597891256dad1b849f550ab681b0c8ba660f1172ac3f63069140c2180537d793f899ba897dae47a848b6e4b1ceac369c59257a3c1d4f2cefe0b64e84ac010397bc55d77a8f801b227ab6453770fc9775788c4a9ce7bdc5f40aa156d1b0c4f9ef41dfbb0518151809761d22e503b9b8725704bbe4f7aaaf4188f80106354743e3f605a1cee1d6d09226176a913a3f9fe9513a081377c820e582fffd534cb27146264972b9f5362dc37cacb821e64ef711eb39addbe1a747df2b1cc54f26dfc1a32ac26297b980e4a492e2242d6d745e508e65f6162ba6e28d4f1f2177c5896c9d82019a74cd6f136e04af3a01a2178e961c0d4e63235982807579ea34f306ec0ea3f0e58a8fee4dd28c2303fa9e09e45b8c9cbc6a69aba0b838473a33e2a287f0824936bfd427f72b7bb7362a40f77136ecfe53173b2acfbbdd49ec390078926d0a9a69114312fee5a9b5ad8f7b80711f76d5ffca8632593b2ea9b2caaebf219ec7586e9d6962353f98b2882fb804a34b16946453038127de73f4e827b190f6001b7a5560b7eb978f8", "shared_secrets": [ - "sharedsecret1010101010101010101010101010101010101010101010101010", - "sharedsecret1111111111111111111111111111111111111111111111111111", - "sharedsecret1212121212121212121212121212121212121212121212121212" + "f0652f245faf69100228c62e03a064bdbc7e3ac191e1c5bb094a94c1939d8b9b", + "b252680750e43ce4fdb2bc38c9b31f6b9b37d5d1bd9abf679dfcc33047154180", + "760e4382462d61429cf7ba5af877aa82516119dfc3d7172350234b5018f87626" ] } }, @@ -139,28 +139,28 @@ "params": { "hops": [ { - "pubkey": "nodeid020202020202020202020202020202020202020202020202020202020202", - "payload": "payload010101010101010101010101010" + "pubkey": "022d223620a359a47ff7f7ac447c85c46c923da53389221a0054c11c1e3ca31d59", + "payload": "11020203e804019106080000700000010000" }, { - "pubkey": "nodeid030303030303030303030303030303030303030303030303030303030303", - "payload": "payload020202020202020202020202020" + "pubkey": "035d2b1192dfba134e10e540875d366ebc8bc353d5aa766b80c090b39c3a5d885d", + "payload": "11020203e804019106080000720000010000" }, { - "pubkey": "nodeid040404040404040404040404040404040404040404040404040404040404", - "payload": "payload030303030303030303030303030" + "pubkey": "0382ce59ebf18be7d84677c2e35f23294b9992ceca95491fcf8a56c6cb2d9de199", + "payload": "2b020203e804018b0822d1d843a07ff04801a9c926cfef8fbd242a35d332fde5e255e6b4c92e2fc5030f03e8" } ], - "assocdata": "assocdata0010101010101010101010101010101010101010101010101010101", + "assocdata": "47c148c1746366e4c2c7496621c22002bc2711b4d9c52cbb9c7b1fdca59c8579", "session_key": "4141414141414141414141414141414141414141414141414141414141414141" } }, "response": { - "onion": "onion20202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020", + "onion": "0002eec7245d6b7d2ccb30380bfbe2a3648cd7a942653f5aa340edcea1f2836866191c78fd992adb6335814526c8f53ab57e22cd57b69c19115ac040a9b54cfee007a2aed47573c7939d15b1411605e9e0f03698d38499e802a15853122723857dbddb629cf2e16a1292a1c951ca4211efadc17b6e219e5dacfe19ee6288cc29ddd440c056ed1ea9fa2c0caea86d7b0de9338326e4f13bb1cda872a64a836a729350f2e79c3ac8618ddfacbd70d588759e8701901d74b64bf51f1c21cdc785b54dc5a6ba39fc75f956b60a372f6421a84f6001b294487baf1bb049b7bd901c5854c0999a82095874b02da90021a685f7c77f4b724a3d27489c091807b32bcdfb2c68f69b50c0b43c78288c333dbb007874f36fcf224fbc2ed89690f64a62b5ecfe6275750eb1a5575f689ca6d59c9a570689372db120cf6a29177caaace5ac671a3607d37a3048af18d1d736ac8a4dde8efc4884f8eab23cdc8cb15170471ee7b416b5cf089dee8ab8ac3eea6700a6040839c1e86f6d2b5acf9c7bac856cae96e9d1b7142f91ac4818cf0007a23100ae621470ac2552116f30948f21602237d12d29f58ca73f10f05b38f7b4b728fcfd8aafc1a82502aae3081c4bc8a77771aef16247bcf26d8569140441c405a3c21a649a8439797f45e7c37a2025318f4c88e3eba454fd4cc37e9978b59fa7b1e41af450523713fdad8070c7abdeea299474c99b2bde737e8c8ad79cb9fdd70a935ad29504d185bf100a339d203cd929030454a6450132255fea11ba0c6a520fa7cc3b8638f8032a61c492f7f9d1ec591a851f25df9238945ae467126b64019f21a71a2d3ef46cdd7b61773ad632dc77e0bda7d06b493efe940d9b975ebb85c423a83d24966f5e2ae2ec9c3b2257cc21a4989dd016d688865ba5245667c302e408dc56ffdf4282ad834f0c5af1ce49b3997fe397faf6874cac24ae346b4e72e468506c0e724efe6f805e0fd115de39b6fa29d05e11bbe2ec27548517f93ebd7b977b13237ab9c40ff5766f7263ea1f2eabba460600cd7da082fcf8d0a7bd37054abfd6040f886dde48cf600612b5b73a44026e79d46336de73f2ea5fbfc9603ccd89f6954e5093b6bfe556e6f67deb0878128049186f7ac6ef461a56c2bb4f24a9679fb386e06052c3da2f367f14bc41ec191f5b0b7b3ccad1f2cc58c863c49055c889b8b04b6b6cbaec50d0d103d4ea0da75952a730b07cea0da43914b5ab3f30b5104d9a75eb003da0b5b97bf9eb9081194cc5b50362041a972841bdafde31909929237ed5b94c88dd05126cdb3fd25add0c777c2ad021e1a0e7140d6c4c2005cb353a7a6a747ee75467c052f55faa485cbcf3758eafba7a8ef00d1481cc0f05af539116f443cb02a7b30a3de899dc66cb0781ccccf5c8d93b34be0665d11cbca55cd7a424b958124edf1289c7f4fc19c1be8fc7a861ce47c43a641bafdb195e1c74a1fbf69dbd518013f3dbf2860818b5a3e6f1dd36a5546bfd416e9714dec29818ecd1aeeb29c319b407c497621248d232680417486698a3e1262f03a8bc6441d1de40ae351dae4527a8efe25fc68a3f1571aa556edd6bfb9db7caba4d2c02bab003c43055f5d3ebf961735c3b1f4cd3e0a96038697a95cceac08c0aff084450cf571f81c95d468826aa4292997ccfeba32db77c4c22a9d3caa0a37a8a961ac2f2c8a6965687143bc93c620503839fd7bd7fc2e6d9c966586b713f824b8e9d3de55cb1b81f9204b92dfaa066920c0910e62e59650e904e05b94bde3e467d45719d6a3b85a71c8ff1dcca5a5f497928db5f64c55aad93513e87f4f0c93a6fa5a9afe929cf8223ea509f584913844044aa23a4afa4bc0ad975f4904aab5d77b5e51511460a3b7a3bfa335d623f0f5949b72174681526f075633af9234092fd1f7a5c6767292ef5", "shared_secrets": [ - "sharedsecret2020202020202020202020202020202020202020202020202020", - "sharedsecret2121212121212121212121212121212121212121212121212121", - "sharedsecret2222222222222222222222222222222222222222222222222222" + "2d7581974cde41b42da1d0a3147704aae5a71e8987fa30dc920c8cdf784b661d", + "bb599b824ce9e123c8cb27cd50a996e5035b8ae903356dcbff224496aab3a891", + "7bc4f97c2d18d5372ef572334e31590ec36b33220d7a71fa4e0fe841174eaccb" ] } } diff --git a/doc/schemas/datastoreusage.json b/doc/schemas/datastoreusage.json index c86f10326785..d71b0ba57aa5 100644 --- a/doc/schemas/datastoreusage.json +++ b/doc/schemas/datastoreusage.json @@ -84,7 +84,7 @@ "response": { "datastoreusage": { "key": "[]", - "total_bytes": 2909 + "total_bytes": 2958 } } }, diff --git a/doc/schemas/decode.json b/doc/schemas/decode.json index 4a7ed03dc460..5ed696b869c3 100644 --- a/doc/schemas/decode.json +++ b/doc/schemas/decode.json @@ -2426,7 +2426,7 @@ "id": "example:decode#2", "method": "decode", "params": [ - "lnbcrt100n1pnt2bolt11invl020200000000bolt11invl020200000000bolt11invl020200000000bolt11invl020200000000bolt11invl020200000000bolt11invl020200000000bolt11invl020200000000bolt11invl020200000000bolt11invl020200000000bolt11invl020200000000" + "lnbcrt2u1pne035qsp5u7glcpdagz8xcw9nw4t7xjhad5fjk9vu9h6s4da9tue6cj6x772spp52jyd84j7psgd4u2tp627hsrf9ntzptcjl3ywn03v4fdsehw4s2ysdqcdserygryv4ekxunfwp6xjmmwxqyjw5qcqp9rzjqdwjkyvjm7apxnssu4qgwhfkd67ghs6n6k48v6uqczgt88p6tky96qqqwqqqqqgqqqqqqqqpqqqqqzsqqc9qxpqysgqdyykau6tf258sy2g5q94ma8jqthrs7zszaj2y4wj23dznnz5rcvxvxvkkv76uj076mz5std62p3gf2kvycq29t69345667cvs0pmvzsq4lawhd" ] }, "response": { @@ -2434,25 +2434,25 @@ "currency": "bcrt", "created_at": 1738000000, "expiry": 604800, - "payee": "nodeid020202020202020202020202020202020202020202020202020202020202", + "payee": "022d223620a359a47ff7f7ac447c85c46c923da53389221a0054c11c1e3ca31d59", "amount_msat": 200000, "description": "l22 description", "min_final_cltv_expiry": 5, - "payment_secret": "paymentsecretinvl00220002200022000220002200022000220002200022000", + "payment_secret": "e791fc05bd408e6c38b37557e34afd6d132b159c2df50ab7a55f33ac4b46f795", "features": "02024100", "routes": [ [ { - "pubkey": "nodeid030303030303030303030303030303030303030303030303030303030303", - "short_channel_id": "111x1x1", + "pubkey": "035d2b1192dfba134e10e540875d366ebc8bc353d5aa766b80c090b39c3a5d885d", + "short_channel_id": "112x1x0", "fee_base_msat": 1, "fee_proportional_millionths": 10, "cltv_expiry_delta": 6 } ] ], - "payment_hash": "paymenthashinvl0220022002200220022002200220022002200220022002200", - "signature": "dcde30c4bb50bed221009d010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101", + "payment_hash": "5488d3d65e0c10daf14b0e95ebc0692cd620af12fc48e9be2caa5b0cddd58289", + "signature": "3044022069096ef34b4aa8781148a00b5df4f202ee3878501764a255d2545a29cc541e180220661996b33dae49fed6c5482dba506284aacc2600a2af458d69ad7b0c83c3b60a", "valid": true } } diff --git a/doc/schemas/decodepay.json b/doc/schemas/decodepay.json index 5ebcd289f727..2ae28c0fadbb 100644 --- a/doc/schemas/decodepay.json +++ b/doc/schemas/decodepay.json @@ -273,32 +273,32 @@ "id": "example:decodepay#1", "method": "decodepay", "params": { - "bolt11": "lnbcrt100n1pnt2bolt11invl010100000000bolt11invl010100000000bolt11invl010100000000bolt11invl010100000000bolt11invl010100000000bolt11invl010100000000bolt11invl010100000000bolt11invl010100000000bolt11invl010100000000bolt11invl010100000000" + "bolt11": "lnbcrt100n1pne035qsp57ygq6nedvja7wf8r0qlv8zfhyuk3knlhx4pcenp56z86nxcjgr8qpp5l5drs7dcy2vsh8a0u056vc0cqm0n6xkqxwk7mp6h4ptfmdt0lwsqdqcdscnzgryv4ekxunfwp6xjmmwxqyjw5qcqp9rzjqgkjyd3q5dv6gllh77kygly9c3kfy0d9xwyjyxsq2nq3c83u5vw4jqqqdcqqqqgqqqqqqqqpqqqqqzsqqc9qxpqysgql3cft8k3t9ztqvu27r0ek2j2a8hsas62rlsuyztyn3sayxtqppmxre3vsy780lrw0uylnyks7wwn54vnj3gqmyt5nywkc4w5paepzygqym8dle" } }, "response": { "currency": "bcrt", "created_at": 1738000000, "expiry": 604800, - "payee": "nodeid010101010101010101010101010101010101010101010101010101010101", + "payee": "0266e4598d1d3c415f572a8488830b60f7e744ed9235eb0b1ba93283b315c03518", "amount_msat": 10000, "description": "l11 description", "min_final_cltv_expiry": 5, - "payment_secret": "paymentsecretinvl00110001100011000110001100011000110001100011000", + "payment_secret": "f1100d4f2d64bbe724e3783ec38937272d1b4ff735438ccc34d08fa99b1240ce", "features": "02024100", "routes": [ [ { - "pubkey": "nodeid020202020202020202020202020202020202020202020202020202020202", - "short_channel_id": "109x1x1", + "pubkey": "022d223620a359a47ff7f7ac447c85c46c923da53389221a0054c11c1e3ca31d59", + "short_channel_id": "110x1x0", "fee_base_msat": 1, "fee_proportional_millionths": 10, "cltv_expiry_delta": 6 } ] ], - "payment_hash": "paymenthashinvl0110011001100110011001100110011001100110011001100", - "signature": "dcdepay30c4bb50bed209d020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202" + "payment_hash": "fd1a3879b822990b9fafe3e9a661f806df3d1ac033aded8757a8569db56ffba0", + "signature": "3045022100fc70959ed15944b0338af0df9b2a4ae9ef0ec34a1fe1c209649c61d219600876022061e62c813c77fc6e7f09f992d0f39d3a559394500d9174991d6c55d40f721111" } } ] diff --git a/doc/schemas/delforward.json b/doc/schemas/delforward.json index 9f9b24169922..60d473742e55 100644 --- a/doc/schemas/delforward.json +++ b/doc/schemas/delforward.json @@ -66,7 +66,7 @@ "id": "example:delforward#1", "method": "delforward", "params": { - "in_channel": "109x1x1", + "in_channel": "110x1x0", "in_htlc_id": 4, "status": "local_failed" } @@ -78,7 +78,7 @@ "id": "example:delforward#2", "method": "delforward", "params": { - "in_channel": "109x1x1", + "in_channel": "110x1x0", "in_htlc_id": 21, "status": "failed" } diff --git a/doc/schemas/delinvoice.json b/doc/schemas/delinvoice.json index f564d4890851..6e2e855451a8 100644 --- a/doc/schemas/delinvoice.json +++ b/doc/schemas/delinvoice.json @@ -303,12 +303,12 @@ }, "response": { "label": "lbl_l36", - "bolt11": "lnbcrt222n1pnt3005720bolt113000101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101", - "payment_hash": "paymenthashdelinv10101010101010101010101010101010101010101010101", + "bolt11": "lnbcrt500u1pne035qsp5m5fegjlm0t8c5hfk8mkr73sz64956chjunxgjar5can3jgdc0ptqpp59p68dl5sc9sdpxle29tyd8wrelyzudnvgemvndm57fs9r02xt2tqdqcdsenvgryv4ekxunfwp6xjmmwxqyjw5qcqp9rzjqgkjyd3q5dv6gllh77kygly9c3kfy0d9xwyjyxsq2nq3c83u5vw4jqqq0sqqqqgqqyqqqqqpqqqqqzsqqc9qxpqysgqx5puexlrq20ducnx5wky8y0vkmu798rxa4cg704ty55hwks60yjnyfc94kdwtanrk45sydh3zp992mpg0xfuk65kl8knaqkjfpv8hvcpfa27ne", + "payment_hash": "287476fe90c160d09bf95156469dc3cfc82e366c4676c9b774f26051bd465a96", "amount_msat": 50000000, "status": "unpaid", "description": "l36 description", - "expires_at": 1739000000, + "expires_at": 1738604800, "created_index": 9 } }, @@ -324,15 +324,15 @@ }, "response": { "label": "lbl_l37", - "bolt11": "lnbcrt222n1pnt3005720bolt113000101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101", - "payment_hash": "paymenthashdelinv20202020202020202020202020202020202020202020202", + "bolt11": "lnbcrt500u1pne035qsp50zcqdgkx0dwzlksvkntzmmuednc9mxdnnzrghatwffw5fycnkpcqpp58x5gmhrfe9e60ygy82rh5s27m2zq3zyynfwhzawfvessg5fljg6sdqcdsenwgryv4ekxunfwp6xjmmwxqyjw5qcqp9rzjqgkjyd3q5dv6gllh77kygly9c3kfy0d9xwyjyxsq2nq3c83u5vw4jqqq0sqqqqgqqyqqqqqpqqqqqzsqqc9qxpqysgqxdq9h7j2xkfjvm8ansypq8w2xvawhdu5wwzpkg9ar2al66d6uae8lxzx6maekk0pgae6fzeauglsxvqplc3lw30fzv430a7nmccv0lcq0du8d6", + "payment_hash": "39a88ddc69c973a791043a877a415eda840888849a5d7175c9666104513f9235", "amount_msat": 50000000, "status": "paid", "pay_index": 9, "amount_received_msat": 50000000, - "paid_at": 1738500000, - "payment_preimage": "paymentpreimagedelinv01010101010101010101010101010101010101010101", - "expires_at": 1739000000, + "paid_at": 1738000000, + "payment_preimage": "83ffe698292fbb6583ffe698292fbb6583ffe698292fbb6583ffe698292fbb65", + "expires_at": 1738604800, "created_index": 10, "updated_index": 9 } diff --git a/doc/schemas/delpay.json b/doc/schemas/delpay.json index 4966a9190edd..f2d22a68bff4 100644 --- a/doc/schemas/delpay.json +++ b/doc/schemas/delpay.json @@ -213,7 +213,7 @@ "id": "example:delpay#1", "method": "delpay", "params": { - "payment_hash": "paymenthashdelpay10101010101010101010101010101010101010101010101", + "payment_hash": "342cbb1cb564e8f32eb64fe8c254abf5ec5f6b87a0f8de7909caf8e658f3bd2a", "status": "complete" } }, @@ -222,17 +222,17 @@ { "created_index": 1, "id": 1, - "payment_hash": "paymenthashdelpay10101010101010101010101010101010101010101010101", + "payment_hash": "342cbb1cb564e8f32eb64fe8c254abf5ec5f6b87a0f8de7909caf8e658f3bd2a", "groupid": 1, "updated_index": 1, - "destination": "nodeid020202020202020202020202020202020202020202020202020202020202", + "destination": "022d223620a359a47ff7f7ac447c85c46c923da53389221a0054c11c1e3ca31d59", "amount_msat": 500000000, "amount_sent_msat": 500000000, "created_at": 1738000000, - "completed_at": 1738500000, + "completed_at": 1738000000, "status": "complete", - "payment_preimage": "paymentpreimgdp1010101010101010101010101010101010101010101010101", - "bolt11": "lnbcrt222n1pnt3005720bolt114000101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101" + "payment_preimage": "08377744ca985c1808377744ca985c1808377744ca985c1808377744ca985c18", + "bolt11": "lnbcrt5m1pne035qsp5y09we8jhy4ug66c945kzkqyqzrhhqsap22q07wnawlgntwa5ca2spp5xsktk894vn50xt4kfl5vy49t7hk976u85rudu7gfetuwvk8nh54qdpcv3jhxcmjd9c8g6t0dcs8xetwvss8xmmdv5s8xct5wvsxcvfqw3hjqmpjxqyjw5qcqp9rzjqdwjkyvjm7apxnssu4qgwhfkd67ghs6n6k48v6uqczgt88p6tky96qqqwqqqqqgqqqqqqqqpqqqqqzsqqc9qxpqysgqvsru69ylhpkda6980sl996q2fmld2zszepv79zf747la6zzt8mf8p0qw80w6j8d5evc72fls4d99sza23nnm6pahjqrs8kv3apdttjcq2mm2xw" } ] } @@ -242,7 +242,7 @@ "id": "example:delpay#2", "method": "delpay", "params": [ - "paymenthashdelpay20202020202020202020202020202020202020202020202", + "287476fe90c160d09bf95156469dc3cfc82e366c4676c9b774f26051bd465a96", "failed" ] }, @@ -251,16 +251,16 @@ { "created_index": 23, "id": 23, - "payment_hash": "paymenthashdelinv10101010101010101010101010101010101010101010101", + "payment_hash": "287476fe90c160d09bf95156469dc3cfc82e366c4676c9b774f26051bd465a96", "groupid": 1, "updated_index": 22, - "destination": "nodeid030303030303030303030303030303030303030303030303030303030303", + "destination": "035d2b1192dfba134e10e540875d366ebc8bc353d5aa766b80c090b39c3a5d885d", "amount_msat": 50000000, "amount_sent_msat": 50000501, "created_at": 1738000000, - "completed_at": 1738500000, + "completed_at": 1738000000, "status": "failed", - "bolt11": "lnbcrt222n1pnt3005720bolt113000101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101" + "bolt11": "lnbcrt500u1pne035qsp5m5fegjlm0t8c5hfk8mkr73sz64956chjunxgjar5can3jgdc0ptqpp59p68dl5sc9sdpxle29tyd8wrelyzudnvgemvndm57fs9r02xt2tqdqcdsenvgryv4ekxunfwp6xjmmwxqyjw5qcqp9rzjqgkjyd3q5dv6gllh77kygly9c3kfy0d9xwyjyxsq2nq3c83u5vw4jqqq0sqqqqgqqyqqqqqpqqqqqzsqqc9qxpqysgqx5puexlrq20ducnx5wky8y0vkmu798rxa4cg704ty55hwks60yjnyfc94kdwtanrk45sydh3zp992mpg0xfuk65kl8knaqkjfpv8hvcpfa27ne" } ] } @@ -270,7 +270,7 @@ "id": "example:delpay#3", "method": "delpay", "params": { - "payment_hash": "paymenthashdelpay30303030303030303030303030303030303030303030303", + "payment_hash": "2b924194d169a96d9cc35b66ae912507e18ace9ef679fcb5324636ff73be410a", "status": "failed", "groupid": 1, "partid": 2 @@ -281,15 +281,15 @@ { "created_index": 20, "id": 20, - "payment_hash": "paymenthashdelpay30303030303030303030303030303030303030303030303", + "payment_hash": "2b924194d169a96d9cc35b66ae912507e18ace9ef679fcb5324636ff73be410a", "groupid": 1, "updated_index": 19, "partid": 2, - "destination": "nodeid040404040404040404040404040404040404040404040404040404040404", + "destination": "0382ce59ebf18be7d84677c2e35f23294b9992ceca95491fcf8a56c6cb2d9de199", "amount_msat": 1000000, "amount_sent_msat": 1000000, "created_at": 1738000000, - "completed_at": 1738500000, + "completed_at": 1738000000, "status": "failed" } ] diff --git a/doc/schemas/dev-forget-channel.json b/doc/schemas/dev-forget-channel.json index 3421e79b59a9..6b51ebf39c4a 100644 --- a/doc/schemas/dev-forget-channel.json +++ b/doc/schemas/dev-forget-channel.json @@ -99,13 +99,13 @@ "id": "example:dev-forget-channel#1", "method": "dev-forget-channel", "params": { - "id": "nodeid050505050505050505050505050505050505050505050505050505050505" + "id": "032cf15d1ad9c4a08d26eab1918f732d8ef8fdc6abb9640bf3db174372c491304e" } }, "response": { "forced": false, "funding_unspent": false, - "funding_txid": "fundingtxid00101010101010101010101010101010101010101010101010101" + "funding_txid": "92dc0d9921d6c5beda83bddd3d1575fb673493f354c0a8cd91c6b139620c3155" } }, { @@ -116,15 +116,15 @@ "id": "example:dev-forget-channel#2", "method": "dev-forget-channel", "params": { - "id": "nodeid030303030303030303030303030303030303030303030303030303030303", - "short_channel_id": "111x1x1", + "id": "035d2b1192dfba134e10e540875d366ebc8bc353d5aa766b80c090b39c3a5d885d", + "short_channel_id": "112x1x0", "force": true } }, "response": { "forced": true, "funding_unspent": false, - "funding_txid": "fundingtxid00202020202020202020202020202020202020202020202020202" + "funding_txid": "7cce7550c4b37924bb74fd4baf8f1946a4b14c050c42f2479b04fede08652aa9" } } ] diff --git a/doc/schemas/disableinvoicerequest.json b/doc/schemas/disableinvoicerequest.json index 3ff2bda21548..ef58df75fe90 100644 --- a/doc/schemas/disableinvoicerequest.json +++ b/doc/schemas/disableinvoicerequest.json @@ -93,14 +93,14 @@ "id": "example:disableinvoicerequest#1", "method": "disableinvoicerequest", "params": { - "invreq_id": "invreqid02020202020202020202020202020202020202020202020202020202" + "invreq_id": "c5b8ebc06bdc246d7b852ce5637be459d3c053a5b3f8f68854f97af7371c9a50" } }, "response": { - "invreq_id": "invreqid02020202020202020202020202020202020202020202020202020202", + "invreq_id": "c5b8ebc06bdc246d7b852ce5637be459d3c053a5b3f8f68854f97af7371c9a50", "active": false, "single_use": true, - "bolt12": "lno1qgsq000bolt240002400024000240002400024000240002400024000240002400024000240002400024000240002400024000240002400024000240002400024000", + "bolt12": "lnr1qqg99gqg2990zl3j22sqs52279lryzsk2fjhzat9wd6xjmn8ypnx7u3qd9h8vmmfvdj3yyrrd35kw6r5de5kueeqwd6x7un92qsqvgnwgcg35z6ee2h3yczraddm72xrfua9uve2rlrm9deu7xyfzr6jqwvfdqzcyypz6g3kyz34nfrl7lm6c3rushzxey3a55ecjgs6qp2vz8q78j336k0sgr76j2yl0lrljzljjdz8ztcpryunwgfk4hzz3sle3mhaw8v2gc4dn9map7v6dlpya98jy2mcrwe27qcsywlfqp6dhh30l54sj0e8tqsk", "used": false } } diff --git a/doc/schemas/disableoffer.json b/doc/schemas/disableoffer.json index 8274e097ffcf..78168474b153 100644 --- a/doc/schemas/disableoffer.json +++ b/doc/schemas/disableoffer.json @@ -93,14 +93,14 @@ "id": "example:disableoffer#1", "method": "disableoffer", "params": { - "offer_id": "offeridl23000002300000230000023000002300000230000023000002300000" + "offer_id": "b791f88cebf775853112c30828e116487f4d6c252d669372532b468bc7de8a24" } }, "response": { - "offer_id": "offeridl23000002300000230000023000002300000230000023000002300000", + "offer_id": "b791f88cebf775853112c30828e116487f4d6c252d669372532b468bc7de8a24", "active": false, "single_use": false, - "bolt12": "lno1qgsq000bolt230002300023000230002300023000230002300023000230002300023000230002300023000230002300023000230002300023000230002300023000", + "bolt12": "lno1qgsqvgnwgcg35z6ee2h3yczraddm72xrfua9uve2rlrm9deu7xyfzrcgqv0gfqq2zp8kven9wgs8gmeqg35hxctzd3j3vggz953rvg9rtxj8lalh43z8epwydjfrmffn3y3p5qz5cywpu09rr4vs", "used": false } } diff --git a/doc/schemas/disconnect.json b/doc/schemas/disconnect.json index 3331d599978b..e2f7e10844e8 100644 --- a/doc/schemas/disconnect.json +++ b/doc/schemas/disconnect.json @@ -52,7 +52,7 @@ "id": "example:disconnect#1", "method": "disconnect", "params": { - "id": "nodeid040404040404040404040404040404040404040404040404040404040404", + "id": "0382ce59ebf18be7d84677c2e35f23294b9992ceca95491fcf8a56c6cb2d9de199", "force": false } }, @@ -63,7 +63,7 @@ "id": "example:disconnect#2", "method": "disconnect", "params": { - "id": "nodeid050505050505050505050505050505050505050505050505050505050505", + "id": "032cf15d1ad9c4a08d26eab1918f732d8ef8fdc6abb9640bf3db174372c491304e", "force": true } }, diff --git a/doc/schemas/enableoffer.json b/doc/schemas/enableoffer.json index 0d83766a4266..bd759c3313a3 100644 --- a/doc/schemas/enableoffer.json +++ b/doc/schemas/enableoffer.json @@ -97,14 +97,14 @@ "id": "example:enableoffer#1", "method": "enableoffer", "params": { - "offer_id": "offeridl23000002300000230000023000002300000230000023000002300000" + "offer_id": "b791f88cebf775853112c30828e116487f4d6c252d669372532b468bc7de8a24" } }, "response": { - "offer_id": "offeridl23000002300000230000023000002300000230000023000002300000", + "offer_id": "b791f88cebf775853112c30828e116487f4d6c252d669372532b468bc7de8a24", "active": true, "single_use": false, - "bolt12": "lno1qgsq000bolt230002300023000230002300023000230002300023000230002300023000230002300023000230002300023000230002300023000230002300023000", + "bolt12": "lno1qgsqvgnwgcg35z6ee2h3yczraddm72xrfua9uve2rlrm9deu7xyfzrcgqv0gfqq2zp8kven9wgs8gmeqg35hxctzd3j3vggz953rvg9rtxj8lalh43z8epwydjfrmffn3y3p5qz5cywpu09rr4vs", "used": false } } diff --git a/doc/schemas/fetchbip353.json b/doc/schemas/fetchbip353.json index aca65232428d..58df1d98fe9c 100644 --- a/doc/schemas/fetchbip353.json +++ b/doc/schemas/fetchbip353.json @@ -107,7 +107,7 @@ "offer": "lno1zr5qyugqgskrk70kqmuq7v3dnr2fnmhukps9n8hut48vkqpqnskt2svsqwjakp7k6pyhtkuxw7y2kqmsxlwruhzqv0zsnhh9q3t9xhx39suc6qsr07ekm5esdyum0w66mnx8vdquwvp7dp5jp7j3v5cp6aj0w329fnkqqv60q96sz5nkrc5r95qffx002q53tqdk8x9m2tmt85jtpmcycvfnrpx3lr45h2g7na3sec7xguctfzzcm8jjqtj5ya27te60j03vpt0vq9tm2n9yxl2hngfnmygesa25s4u4zlxewqpvp94xt7rur4rhxunwkthk9vly3lm5hh0pqv4aymcqejlgssnlpzwlggykkajp7yjs5jvr2agkyypcdlj280cy46jpynsezrcj2kwa2lyr8xvd6lfkph4xrxtk2xc3lpq" } ], - "proof": "0473656e64proof00001proof00001proof00001proof00001proof00001proof00001proof00001proof00001proof00001proof00001" + "proof": "0473656e6404736f6d650475736572105f626974636f696e2d7061796d656e740673617473746f026d65000005000100000e10002c046d6174740475736572105f626974636f696e2d7061796d656e740b6d617474636f72616c6c6f03636f6d000473656e6404736f6d650475736572105f626974636f696e2d7061796d656e740673617473746f026d6500002e000100000e10005d00050d0600000e1068cbae9b68b92483d1730673617473746f026d6500791e02a2bcc49002f748cf633b058fabf9975dce37ae6383429819624a898a0e6c7f4931fd84ca7ba8120c00f220a9a71a799c8e91acd635a34281dc4bc33e0f046d6174740475736572105f626974636f696e2d7061796d656e740b6d617474636f72616c6c6f03636f6d000010000100000e1001ecff626974636f696e3a626331717a7477793678656e337a647474377a3076726761706d6a74667a3861636a6b6670356670376c3f6c6e6f3d6c6e6f317a7235717975677167736b726b37306b716d7571377633646e7232666e6d68756b7073396e386875743438766b7170716e736b743273767371776a616b70376b36707968746b7578773779326b716d73786c777275687a7176307a736e686839713374397868783339737563367173723037656b6d3565736479756d307736366d6e783876647175777670376470356a70376a337635637036616a3077333239666e6b7171763630713936737a356e6b726335723935716666783030327135337471646beb3878396d32746d7438356a74706d63796376666e727078336c723435683267376e6133736563377867756374667a7a636d386a6a71746a3579613237746536306a303376707430767139746d326e3979786c32686e67666e6d79676573613235733475347a6c78657771707670393478743772757234726878756e776b74686b39766c79336c6d356868307071763461796d6371656a6c6773736e6c707a776c6767796b6b616a7037796a73356a76723261676b79797063646c6a323830637934366a70796e73657a72636a326b7761326c797238787664366c666b706834787278746b327863336c7071046d6174740475736572105f626974636f696e2d7061796d656e740b6d617474636f72616c6c6f03636f6d00002e000100000e10006300100d0500000e1068ccc7d068ba3db826480b6d617474636f72616c6c6f03636f6d00f68a7e7a8f8643e433f854a733dd74db2a4ae01812ffaaed6d1243d7a665d518cf5b37c101d147329e5ba45d95fd1e8ca71e77894305e1081e7b0f442d20fdc90673617473746f026d6500002b000100000e1000245b360d022333b5ea25720720a8c54553c0641e8ccb8a917af20c694f10bf7ce3851e3f6e0673617473746f026d6500002b000100000e100024c4010d02a229c6d54c38b7bb723b48a6aceab1e7fdb6ae2a22b9b57c5ca6b942ed8ea2fe0673617473746f026d6500002e000100000e100096002b080200000e1068d1697c68b5abece2ad026d65006ed35281fc11d421c48a99a7c8b822442269ba75aa723517f93bd346c11ae9c23377a4d0ca9845a09fbed97fb3684219a197fb9bc9cbd7085fb7404c40a5d8bf6deacb0f6ab7036bf5ea979b0fd000a2da96da313b5d63bbe33efe58550af3ccccd1a107b87a6ee3e61abc92e6b87a300bcafd8f12e6c6197f3d4b82116749b0026d6500002b00010000bfd80024b12808027708c8a6d5d72b63214bbff50cb54553f7e07a1fa5e9074bd8d63c43102d8559026d6500002e00010000bfd80113002b08010001518068d0594068bf27b0b5690028415c2b258249314cf220c0631e898b98c786853de415c336421fbd0e2a4a50d64aeff8a369d0c0eb79b311b4c2732c1b902987986fe1ee230142fe2deccdc09647551f094e69a6ea8a813b0688b7cbbc846ecea7683c02ac45d0ff3cc2b6fda10233afdf963fa61c58a835684c7d708fab49efc38866675dec7787dbd8066492e2d77d70e6cd50893533ab80f2a2817a6476ad054ffad9c5dfdd68ecfece3c73eecc1fa0c2ac4c130014af201f11feef6788c8e91286a4279e06b491c55824a0718a2bf1775485c4f86ee834655e32be4a2f1b500d240008da68632c1134c21463151f5c5323944e2349536db8d822636eed2ec8fedb8c0f6692fcf066b59c000030000100005da101080101030803010001acffb409bcc939f831f7a1e5ec88f7a59255ec53040be432027390a4ce896d6f9086f3c5e177fbfe118163aaec7af1462c47945944c4e2c026be5e98bbcded25978272e1e3e079c5094d573f0e83c92f02b32d3513b1550b826929c80dd0f92cac966d17769fd5867b647c3f38029abdc48152eb8f207159ecc5d232c7c1537c79f4b7ac28ff11682f21681bf6d6aba555032bf6f9f036beb2aaa5b3778d6eebfba6bf9ea191be4ab0caea759e2f773a1f9029c73ecb8d5735b9321db085f1b8e2d8038fe2941992548cee0d67dd4547e11dd63af9c9fc1c5466fb684cf009d7197c2cf79e792ab501e6a8a1ca519af2cb9b5f6367e94c0d47502451357be1b5000030000100005da101080101030803010001af7a8deba49d995a792aefc80263e991efdbc86138a931deb2c65d5682eab5d3b03738e3dfdc89d96da64c86c0224d9ce02514d285da3068b19054e5e787b2969058e98e12566c8c808c40c0b769e1db1a24a1bd9b31e303184a31fc7bb56b85bbba8abc02cd5040a444a36d47695969849e16ad856bb58e8fac8855224400319bdab224d83fc0e66aab32ff74bfeaf0f91c454e6850a1295207bbd4cdde8f6ffb08faa9755c2e3284efa01f99393e18786cb132f1e66ebc6517318e1ce8a3b7337ebb54d035ab57d9706ecd9350d4afacd825e43c8668eece89819caf6817af62dc4fbd82f0e33f6647b2b6bda175f14607f59f4635451e6b27df282ef73d87000030000100005da101080100030803010001b11b182a464c3adc6535aa59613bda7a61cac86945c20b773095941194f4b9f516e8bd924b1e50e3fe83918b51e54529d4e5a1e45303df8462241d5e05979979ae5bf9c6c598c08a496e17f3bd3732d5aebe62667b61db1bbe178f27ac99408165a230d6aee78348e6c67789541f845b2ada96667f8dd16ae44f9e260c4a138b3bb1015965ebe609434a06464bd7d29bac47c3017e83c0f89bca1a9e3bdd0813715f3484292df589bc632e27d37efc02837cb85d770d5bd53a36edc99a8294771aa93cf22406f5506c8cf850ed85c1a475dee5c2d3700b3f5631d903524b849995c20cb407ed411f70b428ae3d642716fe239335aa961a752e67fb6dca0bf729000030000100005da101080100030803010001b6aec4b48567e2925a2d9c4fa4c96e6dddf86215a9bd8dd579c38ccb1199ed1be89946a7f72fc2633909a2792d0eed1b5afb2ee4c78d865a76d6cd9369d999c96af6be0a2274b8f2e9e0a0065bd20257570f08bc14c16f5616426881a83dbce6926e391c138a2ec317efa7349264de2e791c9b7d4a6048ee6eedf27bf1ece398ff0d229f18377cb1f6b98d1228ef217b8146c0c73851b89a6fc37c621ca187e16428a743ffea0072e185ef93e39525cee3ad01e0c94d2e511c8c313322c29ab91631e1856049a36898684c3056e5997473816fb547acb0be6e660bdfa89a5cb28b3669d8625f3f018c7b3b8a4860e774ee8261811ce7f96c461bc162c1a374f300002e000100005da10113003008000002a30068cdee8068b23f004f66001c5875f402770a5fe9251e7be7783b6d0545cb59ecad7d25cb5ce75ad583c47f809ecbe168ebfc57dee0e0eca8f6b92f32fb8cf3808c95640ae8e7fcd11b57d948b3b2749ae53b799fdd665d2b37a179401afda48534952859f22884a9cb9526e147fb867b7cd1463004a0385e9ad278aa41a9b63405d636733dc822f6a8b17d9eafc00e08717d558c6d3a3315c6c2ff3479b537290fe5ce9f1b280894951c5ec31305ebfa60260354cfc340ffe8d9b809a440ea9cdd8e4e14cbefec6c7f3967ab7776f7b1bc13589596b1f6d60176d3223126bac85abb2b55cb30a5d0615d6147a5dafb841a5b7ea1c1580b1a6b3dcf7607d12e19d2971aaf8747fdab1c42bb026d65000030000100000db900880100030803010001b36eee22bd8e610570cd88bfc3fedafa006a58b9714432aa3a6f9dd39a905c4e86aa1cdf5827119c81e1245d94ee4838ae22f05cc922ca30122aefa4da19d90a965b4317071b9331187f5cf4eb570dbd8e01987c2593a85b92e0440c635d15da13405f6ca7d78289ef0d6fe4716b8b62abd18dc07b0a9edd54182353ef836539026d65000030000100000db901080101030803010001c103be3a2aa47686ab01ba1b23799ff108d0c0530dfe35cebdd320b7abc851d1abf191378d155127e17fb029628385482b34ac3b042093d6097574b36ee277e31d20003272871bc76d1762dab33397eaae97d853932da5a96886a1b7c61bc52fcd1f1f23c7026a48fa1b190cb8b97d42b45b49948c45187efec3c7867812627a0220e5497c36ee4e92452fb5c1bda2dceaebf71c0e3909a61a5d6498dfc41c71cd0412dbbf442e43c378c9fb4043a1523cfd7ce320ce29fce606db73a8c78150b9808db8bb71898858d7a48ead8870f364b6e271ac642fe3160de3bc44b5a89ccf9e21e2ae5a877253db495f611a8a16a657f7ad9aeb906d5bc9c86f2883b5ed026d65000030000100000db900880100030803010001bfe96cdfe309deee4c579edbbfb50264719c35e25f64a525f81fe2479be4a907bfa9ce8b048ec167217690a145208507367cfec4ab4f9726cf55ecb79bf287836df0e0e946463a56e01b1a7d2e98681274f42ceb5817b1e253920b50f2e63f4be1a7c41f948a4a7235259a58eb0a9e4ccca370e2b3d363e4c289b897ffa329ab026d6500002e000100000db901160030080100000e1068d1697c68b5abecb128026d65005c91285cf473abf2c412efd0459436d9a291d1462928b3fcb8b30ea6d0d817e03dc8fe06994cfffad8ce447e08d85689e8c0966eac684716d98b4d116c08004b38bdbbec00b943f0afcf1c2b98fa4c8c36ded6823d99b61d96251b337037708ab2786ae66c48f08a70cc4d00b4dfbe44ac192c6c716470de238476913ae9574693514cf6ef3cd90b072127d42a2bf12ab871332a548a73bfd9d72479b90af179692389722fab448b23cd03ca8503a5e70857e644f8a29a4a15918a5a8cd317526b1d0ec0065b15da6a3021e6543f623887e5f099df3ddf8dd75bcaa355ed03d3e3de982359a6a93eca7def06797b12e63a0ffa6dc17e620dd13b6a0d2ac25df00673617473746f026d65000030000100000c8d00440100030dedcbe3954643072571e6c4c163cfe9ef330f5e430a3e6ca5eb76a9c97d1e3fcb9cba6a6a9ea371474b27c3d8ebb3a9ad9f1006be07d5155d669fdc7cc0db4d6a0673617473746f026d65000030000100000c8d00440101030d79bca014d652db03985a4edc2ada39c35f7daf8b86656ba6cd2df96f1da8c05f81d584aad62ee3c42ac7cbd29c5d35b9fa0b3d568a556ae9794d8cb02bae1bcb0673617473746f026d6500002e000100000c8d005d00300d0200093a8068cd0e3168ba8419c4010673617473746f026d65007a17319b99137fb51bb57a513cd9fd257130de52cc9279697e727e1e95a0301653a1ea782e2d8a43d9c69528491a2e088a184128409ed0e3078597fd3732d5a30b6d617474636f72616c6c6f03636f6d00002b0001000026610024e2f50d02f0e161567d468087ff27b051abc94476178a7cb635da1aa705e05c77ca81de520b6d617474636f72616c6c6f03636f6d00002e0001000026610057002b0d020001518068c67a0468bd2f1c504103636f6d0021c40cf90af28c2fb2fd35ce8632ed73edcf43bee374fb2b54944a9e8e845d08da67afb417d3014894ac2a92cf6a73be53d7df516a298d63447af8588ccee3e703636f6d00002b00010000506600244d060d028acbb0cd28f41250a80a491389424d341522d946b0da0c0291f2d3d771d7805a03636f6d00002e0001000050660113002b08010001518068cf865068be54c0b56900a9e8604de5bb97b53b31029218bd6dce5e68cdc0bd577fd3a3def5107e17b108679df22104a4f842ecfee4ab6ee14fbd7169b9e4fc9545dd00b21b920f41f40e8b5ece643975dd26f930acdc77e9495acd4507a7b22c02c4f048dadb3d2db607d46720ede2024be8a450ab98e2cae38a594603c73bce8617b9c0ca4f303de8d09606389530fb45ec20e9e6df775a72f1b76e47ba3c3780e1a5d7a27e77645f298efe1c397f31cc9f86151216627bc7bfbf265ac5a563805db62c5df2ede65ccf1c5c3f25054d73b5b9095238d38a39e30d9c2b0ae17d8d93ed6764d452d4a3141c0355d89f261d46e1f3a37857345e5220fadbeb10c9ed234cd03adfe55a04fc03636f6d00003000010000382100440100030df17b60fb56d522f8634153e785c0a978532ea76de39d34bb356d3d042e07f29f7b992176cc83acef7b78ea750425203b18f2b8228b3cdd2bc7eb13c3e3035a7e03636f6d00003000010000382100440101030db71f0465101ddbe2bf0c9455d12fa16c1cda44f4bf1ba2553418ad1f3aa9b06973f21b84eb532cf4035ee8d4832ca26d89306a7d32560c0cb0129d450ac1083503636f6d00002e000100003821005700300d010001518068c6cafb68b3034f4d0603636f6d0096cb2d4c67b93febc13dff1cdea2ab3d7669bc767127cb975f1d2ff4a94b9c15ca83d6ae9c93bde066d08095c2d0bffde30b4aea0a94ad9902693de313cb2b390b6d617474636f72616c6c6f03636f6d00003000010000546000440100030d27ac3c16d55694869003db8f7ee177d74690a6ca1e0d719e78fe9a6a2029bb2183205b6723ca5f4d63b6bb07c5d5a35fef5907eaa22accb0435d0151e13a01cf0b6d617474636f72616c6c6f03636f6d00003000010000546000440100030d8b1cf07c86f18c19c8c3146db093893648dcc1ab5fb79e99ccbab4aa06f98d52ac27b92e215d9da98d7535f3c2ce038fbb9d41b9c63d3845d444feffc1f71ed70b6d617474636f72616c6c6f03636f6d00003000010000546000440101030dec7c1fa1752495c42d2224eace96ed74144e9cb811608dd91594974bdc723fdc5b38a37c3340f1deca68a7ec82248822954b2994de5ac99ff6e9db95fd42c94b0b6d617474636f72616c6c6f03636f6d00002e000100005460006300300d0200093a8068cd0b5a68ba8142e2f50b6d617474636f72616c6c6f03636f6d004299251a06613ed7b0d6d65c41c2df2694730e81bc9f6d7266304cbfb6721ac4cc91ba71eb1eded7d351e996c0ffaaac566829474b5bd0d9e0a0c057928d47ef" } } ] diff --git a/doc/schemas/fetchinvoice.json b/doc/schemas/fetchinvoice.json index 0a68a3712420..eec782136ad2 100644 --- a/doc/schemas/fetchinvoice.json +++ b/doc/schemas/fetchinvoice.json @@ -210,12 +210,12 @@ "id": "example:fetchinvoice#1", "method": "fetchinvoice", "params": { - "offer": "lno1qgsq000bolt210002100021000210002100021000210002100021000210002100021000210002100021000210002100021000210002100021000210002100021000", + "offer": "lno1qgsqvgnwgcg35z6ee2h3yczraddm72xrfua9uve2rlrm9deu7xyfzrcgqgn3qzs2ge5hx6pqwdskcefpzcssytfzxcs2xkdy0lml0tzy0jzugmyj8kjn8zfzrgq9fsgurc72x82e", "payer_note": "Thanks for the fish!" } }, "response": { - "invoice": "lni1qqg0qe01010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101", + "invoice": "lni1qqgvq8khp6uam2tfcq0dwr4emk5kjq3qqc3xu3s3rg94nj40zfsy866mhu5vxne6tcej5878k2mneuvgjy8ssq38zq9q53nfwd5zqumpd3jjz93pqgkjyd3q5dv6gllh77kygly9c3kfy0d9xwyjyxsq2nq3c83u5vw4j5pqqc3xu3s3rg94nj40zfsy866mhu5vxne6tcej5878k2mneuvgjy84gqzcyyplllzjsfmquljkz4awm4wl8r9x6n4zjulzul8umgjr4jya6lxkgc2ez32xsctwddejqen0wgs8g6r9ypnxjumgyxsfsq3dygmzpg6e53ll0aavg37gt3rvjg762vufygdqq4xprs0regcatyp6swcycfh92s4s0p3wl6j0xj7pa7egpvvw2gq9z4sc376mekc9vacpqvzl0njg9k5sfn0pxlx4au5s95yhxczx2fah5zzmnfg9kvzdle5avqpj4l72lall4s8xrfvpu9f4xapfxl08j964jswavxw0exauk50zhw2l5alvyfucu82fx6qlszy7gett90z85gwqqqqqqqqqqqqqqqzsqqqqqqqqqqqqr5jt9hav2gqqqqqq5szx097xsz5zphg5v7yg8wedzgpk7h6dzc7vlw9h2wfa6dmzrey9m6fkeh89uz684gpzwy9wqvpqqq9syypz6g3kyz34nfrl7lm6c3rushzxey3a55ecjgs6qp2vz8q78j336k0sgzsvy6lf3le6zmjl4254r4xxf0urw8dky5d2dwtwjzt8ec7hg6jh88kx88fru0fhvxfjkje7ccg6qg5zv7dm64zxttg7epxx4yyw90c3", "changes": {} } }, @@ -224,13 +224,13 @@ "id": "example:fetchinvoice#2", "method": "fetchinvoice", "params": { - "offer": "lno1qgsq000bolt220002200022000220002200022000220002200022000220002200022000220002200022000220002200022000220002200022000220002200022000", + "offer": "lno1qgsqvgnwgcg35z6ee2h3yczraddm72xrfua9uve2rlrm9deu7xyfzrcgqv85ysq2qepk7enxv4j3gqg2zcssytfzxcs2xkdy0lml0tzy0jzugmyj8kjn8zfzrgq9fsgurc72x82e", "amount_msat": 2000000, "quantity": 2 } }, "response": { - "invoice": "lni1qqg0qe02020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202", + "invoice": "lni1qqgvq8khp6uam2ttcq0dwr4emk5kkq3qqc3xu3s3rg94nj40zfsy866mhu5vxne6tcej5878k2mneuvgjy8ssqc0gfqq5pjrdanxvet9zsqs593pqgkjyd3q5dv6gllh77kygly9c3kfy0d9xwyjyxsq2nq3c83u5vw4j5pqqc3xu3s3rg94nj40zfsy866mhu5vxne6tcej5878k2mneuvgjy84yqc7sjq9gqzkqyp9sggz49w9z7eh6nlfq34fk2k8n5f968ltz60us8usdtmzp7euxkqrc0h2pxqz953rvg9rtxj8lalh43z8epwydjfrmffn3y3p5qz5cywpu09rr4vs92azp4mahnnht95k3j5c8gegy3003d45pkz0gawdj82vt7eqvpk8qypn2rsgaytxvr0nnhkwhjgeq5u2vavm8hm6muxlpl7pe57v99fwm3qqxt472dkvvw27qy6992kvqc5ztgfv20w3uy5swlraheles4havnkg7nafrqr0ej8m4gakh9n338xa86784w3pcqqqqqqqqqqqqqqq2qqqqqqqqqqqqqwjfvkl43fqqqqqqzjqgeuhc6q2sg94wlwt9m7hlq7gljm764vv7dureaqxklvgmjzlq9hxe8jxlaa4064qx85yszhqxqsqqzczzq3dygmzpg6e53ll0aavg37gt3rvjg762vufygdqq4xprs0regcat8cyq8h97cpp3rznnvtvsmu0lzvfgu3c39z7t5m4f9t4w62kt0zqy4yxajhdrqh0g6th0rfhxk583zxllzukn4h3426dxp005n8mpwc6pl3s", "changes": {} } } diff --git a/doc/schemas/fundchannel.json b/doc/schemas/fundchannel.json index 51ef8301ddda..391600e7533d 100644 --- a/doc/schemas/fundchannel.json +++ b/doc/schemas/fundchannel.json @@ -243,15 +243,15 @@ "id": "example:fundchannel#1", "method": "fundchannel", "params": { - "id": "nodeid050505050505050505050505050505050505050505050505050505050505", + "id": "032cf15d1ad9c4a08d26eab1918f732d8ef8fdc6abb9640bf3db174372c491304e", "amount": 1000000, "announce": true } }, "response": { - "tx": "020000000000305fundchanneltx350003500035000350003500035000350003500035000350003500035000350003500035000350003500035000350003500035000350003500035000350003500035000350003500035000350003500035000350003500035000350003500035000350003500035000350003500035000350003500035000350003500035000350003500035000350003500035000350003500035000350003500035000350003500035000350003500035000350003500035000350003500035000350003500035000350003500035000350003500035000350003500035000350003500035000350003500035000350003500035000350003500035000", - "txid": "channeltxid350000350000350000350000350000350000350000350000350000", - "channel_id": "channelid0350000350000350000350000350000350000350000350000350000", + "tx": "02000000000102b6f77750c0aae7faf2aa6e4b38a14671adc8def298a0b89ced09596f002aa5ef0100000000fdffffffc54a87b4517d7daf033a11b21f2ccf114304487c4189599816f3e243569c600c0100000000fdffffff0240420f0000000000220020b41521751a8eb257315f73a531763071cc39b7cece470f630fd5149fe7b7057ac594eb0b00000000225120a5410daebf4fc3cba618a840af497fbec4c3a084534f2b7b6a7d30bf35f8f5660140528e20b424e1ac7f2ae067093552f424dade1321ec396a7d382866be7bba9ba5a3faf375dc9b39d676d8adab67c30df596bca1412c3871bb9538fc00265c35bf02473044022003304f0d559771fe9d4b06dccecacbef7eaef5a97c7618b567de1ba53e7146ef02207f7138b9cd7fca8ea13498e6fed96b225873131c45b5c46e4e78c7fe45d5b3e9012102c8a8f25ed135cd671c88bd4e407bb3746678cfacbcf65ce89f8efc2aa0abe5359b000000", + "txid": "f9e2ca6abf9450803ef6a1a75964277dd39b2f35f77acffc3a5978437b421aec", + "channel_id": "1267da6521b372d7c6407a74066f7a3a5bc3489bbda5eb9f0e990e1e913e2eb9", "channel_type": { "bits": [ 12, @@ -262,7 +262,7 @@ "anchors/even" ] }, - "outnum": 1 + "outnum": 0 } }, { @@ -273,19 +273,19 @@ "id": "example:fundchannel#2", "method": "fundchannel", "params": { - "id": "nodeid010101010101010101010101010101010101010101010101010101010101", + "id": "0266e4598d1d3c415f572a8488830b60f7e744ed9235eb0b1ba93283b315c03518", "amount": "all", "feerate": "normal", "push_msat": 100000, "utxos": [ - "channeltxid350000350000350000350000350000350000350000350000350000:1" + "0a6d0006bf4a5e5aa67504c5333a6017d1dc18820d2295aef0a89bd6f2c0f1f1:0" ] } }, "response": { - "tx": "020000000000401fundchanneltx410004100041000410004100041000410004100041000410004100041000410004100041000410004100041000410004100041000410004100041000410004100041000410004100041000410004100041000410004100041000410004100041000410004100041000410004100041000410004100041000410004100041000410004100041000410004100041000410004100041000410004100041000410004100041000410004100041000410004100041000410004100041000410004100041000410004100041000410004100041000410004100041000410004100041000410004100041000410004100041000410004100041000", - "txid": "channeltxid410000410000410000410000410000410000410000410000410000", - "channel_id": "channelid0410000410000410000410000410000410000410000410000410000", + "tx": "02000000000101f1f1c0f2d69ba8f0ae95220d8218dcd117603a33c50475a65a5e4abf06006d0a0000000000fdffffff01cbb3eb0b00000000220020752dd5af63b98ff64fedf94683b0306c43f6eec74fbfe917639735b305e1b6d9024730440220082e14f48e21020a18fa8076ede8d7fc459df2d13dafb55e84dfaeb53843cff30220342483bf1d343af8a5473383de0d128ea92f97ea48f86fc40c74061b106ed0ff0121024740cce0e548f4ffe80c9914e43444d8e66ee8991dc9d93ec56dff4c56b933159b000000", + "txid": "91b6b6b744662172cf8cb068923bb20311522a5afa08406f79b37cf3e6f4c370", + "channel_id": "222d999f537e32e9458c5db17a63e012dcced61340de06fda5bc30566270b0aa", "channel_type": { "bits": [ 12, @@ -296,7 +296,7 @@ "anchors/even" ] }, - "outnum": 1 + "outnum": 0 } } ] diff --git a/doc/schemas/fundchannel_cancel.json b/doc/schemas/fundchannel_cancel.json index fd18ad11e7e7..1e8c7eb7e54c 100644 --- a/doc/schemas/fundchannel_cancel.json +++ b/doc/schemas/fundchannel_cancel.json @@ -69,7 +69,7 @@ "id": "example:fundchannel_cancel#1", "method": "fundchannel_cancel", "params": [ - "nodeid101010101010101010101010101010101010101010101010101010101010" + "027ba5906fad81fcdbb774b4c806eb572b7fac3bee4720b12c44e7f70931d4b7cc" ] }, "response": { @@ -81,7 +81,7 @@ "id": "example:fundchannel_cancel#2", "method": "fundchannel_cancel", "params": { - "id": "nodeid101010101010101010101010101010101010101010101010101010101010" + "id": "027ba5906fad81fcdbb774b4c806eb572b7fac3bee4720b12c44e7f70931d4b7cc" } }, "response": { diff --git a/doc/schemas/fundchannel_complete.json b/doc/schemas/fundchannel_complete.json index d064026b1d6c..2aac485a3014 100644 --- a/doc/schemas/fundchannel_complete.json +++ b/doc/schemas/fundchannel_complete.json @@ -86,12 +86,12 @@ "id": "example:fundchannel_complete#1", "method": "fundchannel_complete", "params": [ - "nodeid101010101010101010101010101010101010101010101010101010101010", - "cHNidP8BAgQCAAAAAQMEbwAAAAEEAQpsbt201000201000201000201000201000201000201000201000201000201000201000201000201000201000201000201000201000201000201000201000201000201000201000201000201000201000201000201000201000201000201000201000201000201000201000201000201000201000201000201000" + "027ba5906fad81fcdbb774b4c806eb572b7fac3bee4720b12c44e7f70931d4b7cc", + "cHNidP8BAgQCAAAAAQMEmAAAAAEEAQEBBQECAQYBAwH7BAIAAAAAAQBxAgAAAAF7yWF0tZO3dCp0QAD5h74Q9TqzR+B+Pq5KWk3Kt6MldAAAAAAA/f///wKAlpgBAAAAABYAFP+FM+rwsTm8Bz0qImOObKCgg3zVXuPf3gAAAAAWABTdQ3+1uuxIN+FttkktoVc11r7FM5cAAAABAR+AlpgBAAAAABYAFP+FM+rwsTm8Bz0qImOObKCgg3zVAQ4g+wnUg4jUSt7ZSoGLTSFJkEiVi4BORL5XG9PScQI1uHoBDwQAAAAAARAE/f///wABAwgAAAABAAAAAAEEIgAgrcWu1QvOE7IcR/Pw6wFIFh6/TLwoeKjo5eUoi7suzsEAAQMIQYOYAAAAAAABBCJRIIHaDT4wURNaieL52F4urfZh+Vm/sF5nEJeFRnLP0Kx9AA==" ] }, "response": { - "channel_id": "channelid0910109101091010910109101091010910109101091010910109101", + "channel_id": "1e9779a9313702a91a6d48a813f3bdae967f61ae55f2409c83d6e822164fb1e8", "commitments_secured": true } }, @@ -100,12 +100,12 @@ "id": "example:fundchannel_complete#2", "method": "fundchannel_complete", "params": { - "id": "nodeid101010101010101010101010101010101010101010101010101010101010", - "psbt": "cHNidP8BAgQCAAAAAQMEbwAAAAEEAQpsbt401000401000401000401000401000401000401000401000401000401000401000401000401000401000401000401000401000401000401000401000401000401000401000401000401000401000401000401000401000401000401000401000401000401000401000401000401000401000401000401000" + "id": "027ba5906fad81fcdbb774b4c806eb572b7fac3bee4720b12c44e7f70931d4b7cc", + "psbt": "cHNidP8BAgQCAAAAAQMEmQAAAAEEAQEBBQECAQYBAwH7BAIAAAAAAQBeAgAAAAEel3mpMTcCqRptSKgT872uln9hrlXyQJyD1ugiFk+x6AAAAAAA/////wE29/8AAAAAACJRIBBn+sE76BrhkJwdcl10AW73v27fGwM4fUYbSSX4NuhVAAAAAAEBKzb3/wAAAAAAIlEgEGf6wTvoGuGQnB1yXXQBbve/bt8bAzh9RhtJJfg26FUBDiAICQ7H8zN5Qh9H/ScdBg0OKYab3l+sgjCzpH59ib1snwEPBAAAAAABEAT9////AAEDCEBCDwAAAAAAAQQiACDJ6ixlyozcJ7wTD+EfXlLhdUdeDjG2RbHcw4MtxPfnjQABAwjqovAAAAAAAAEEIlEgd0scKptLCp3OQ7RjlZQNogARFdQA+jZnkJ7Ial02UYsA" } }, "response": { - "channel_id": "channelid0910209102091020910209102091020910209102091020910209102", + "channel_id": "55d53486d003c5ba4b8eb9a3f5da04333acdb5d0023204d507e3e09127feeb90", "commitments_secured": true } } diff --git a/doc/schemas/fundchannel_start.json b/doc/schemas/fundchannel_start.json index 3dde937df0b3..1fa8e8a73ec9 100644 --- a/doc/schemas/fundchannel_start.json +++ b/doc/schemas/fundchannel_start.json @@ -212,13 +212,13 @@ "id": "example:fundchannel_start#1", "method": "fundchannel_start", "params": [ - "nodeid101010101010101010101010101010101010101010101010101010101010", + "027ba5906fad81fcdbb774b4c806eb572b7fac3bee4720b12c44e7f70931d4b7cc", 16777216 ] }, "response": { - "funding_address": "bcrt1p0002020202020202020202020202020202020202020202020202020202", - "scriptpubkey": "scriptpubkey01010101010101010101010101010101010101010101010101010101", + "funding_address": "bcrt1q5ptrvwlgcldm2ygf3nzsl09zfpp7dmtduqlczer97xvc4x5z5zwsc2ulv4", + "scriptpubkey": "0020a056363be8c7dbb511098cc50fbca24843e6ed6de03f816465f1998a9a82a09d", "channel_type": { "bits": [ 12, @@ -237,13 +237,13 @@ "id": "example:fundchannel_start#2", "method": "fundchannel_start", "params": { - "id": "nodeid101010101010101010101010101010101010101010101010101010101010", + "id": "027ba5906fad81fcdbb774b4c806eb572b7fac3bee4720b12c44e7f70931d4b7cc", "amount": 16777216 } }, "response": { - "funding_address": "bcrt1p0003030303030303030303030303030303030303030303030303030303", - "scriptpubkey": "scriptpubkey02020202020202020202020202020202020202020202020202020202", + "funding_address": "bcrt1q4hz6a4gtecfmy8z870cwkq2gzc0t7n9u9pu23689u55ghwewemqsv4v2zs", + "scriptpubkey": "0020adc5aed50bce13b21c47f3f0eb0148161ebf4cbc2878a8e8e5e5288bbb2ecec1", "channel_type": { "bits": [ 12, diff --git a/doc/schemas/fundpsbt.json b/doc/schemas/fundpsbt.json index 5416ba46fee3..e93d12052879 100644 --- a/doc/schemas/fundpsbt.json +++ b/doc/schemas/fundpsbt.json @@ -220,7 +220,7 @@ } }, "response": { - "psbt": "cHNidP8BAgQCAAAAAQMEbwAAAAEEAQpsbt310000310000310000310000310000310000310000310000310000310000310000310000310000310000310000310000310000310000310000310000310000310000310000310000310000310000310000310000310000310000310000310000310000310000310000310000310000310000310000310000", + "psbt": "cHNidP8BAF4CAAAAARxvUMSNjH7EKMXzxKwycdOSZ64xHQfWS7JFe0pAwIPCAAAAAAD9////AahhAAAAAAAAIlEg+3d9jpNmK0getyg5W+Mp31CPIRDKcJg/mZs/uaVrQ+GbAAAAAAEAiQIAAAAB8XN4MRmL6kPpMsgk9fPi+WJWotGhushvL/SXVnKJnZ0AAAAAAP3///8CYg3NCwAAAAAiUSDJGD7ekSHzxv0UmIIsR6dgJzInZpyQlQiEO6xbvYE/aICEHgAAAAAAIgAgybxcBjyu+/emx4FEB7Vie0+BqLVuy+kyxoL5y6wNGd+aAAAAAQErYg3NCwAAAAAiUSDJGD7ekSHzxv0UmIIsR6dgJzInZpyQlQiEO6xbvYE/aAAA", "feerate_per_kw": 253, "estimated_final_weight": 652, "excess_msat": 196962518000, @@ -241,7 +241,7 @@ } }, "response": { - "psbt": "cHNidP8BAgQCAAAAAQMEbwAAAAEEAQpsbt410000410000410000410000410000410000410000410000410000410000410000410000410000410000410000410000410000410000410000410000410000410000410000410000410000410000410000410000410000410000410000410000410000410000410000410000410000410000410000410000", + "psbt": "cHNidP8BAF4CAAAAARxvUMSNjH7EKMXzxKwycdOSZ64xHQfWS7JFe0pAwIPCAAAAAAD9////AetRxQsAAAAAIlEg21kTTo7K2doCG6F2JqgaDjc1kRCrH7AL08oPVVJhuE+bAAAAAAEAiQIAAAAB8XN4MRmL6kPpMsgk9fPi+WJWotGhushvL/SXVnKJnZ0AAAAAAP3///8CYg3NCwAAAAAiUSDJGD7ekSHzxv0UmIIsR6dgJzInZpyQlQiEO6xbvYE/aICEHgAAAAAAIgAgybxcBjyu+/emx4FEB7Vie0+BqLVuy+kyxoL5y6wNGd+aAAAAAQErYg3NCwAAAAAiUSDJGD7ekSHzxv0UmIIsR6dgJzInZpyQlQiEO6xbvYE/aAAA", "feerate_per_kw": 11000, "estimated_final_weight": 613, "excess_msat": 0, diff --git a/doc/schemas/getinfo.json b/doc/schemas/getinfo.json index 74218970753b..cf59ffd294ee 100644 --- a/doc/schemas/getinfo.json +++ b/doc/schemas/getinfo.json @@ -395,8 +395,8 @@ "params": {} }, "response": { - "id": "nodeid020202020202020202020202020202020202020202020202020202020202", - "alias": "SILENTARTIST", + "id": "022d223620a359a47ff7f7ac447c85c46c923da53389221a0054c11c1e3ca31d59", + "alias": "SILENTARTIST-v25.12", "color": "022d22", "num_peers": 0, "num_pending_channels": 0, @@ -407,14 +407,14 @@ { "type": "ipv4", "address": "127.0.0.1", - "port": 19735 + "port": 30003 } ], - "version": "v25.05", - "blockheight": 110, + "version": "v25.12", + "blockheight": 108, "network": "regtest", "fees_collected_msat": 0, - "lightning-dir": "/tmp/.lightning/regtest", + "lightning-dir": "/home/rusty/.lightning/regtest", "our_features": { "init": "0898882a8a59a1", "node": "8898882a8a59a1", diff --git a/doc/schemas/getlog.json b/doc/schemas/getlog.json index 7a81024091ce..e694db08b9e9 100644 --- a/doc/schemas/getlog.json +++ b/doc/schemas/getlog.json @@ -241,36 +241,37 @@ } }, "response": { - "created_at": 1738000000, - "bytes_used": 1630000, + "created_at": "1738000000.000000000", + "bytes_used": 3271748, "bytes_max": 10485760, "log": [ { "type": "SKIPPED", - "num_skipped": 144 + "num_skipped": 177 }, { "type": "UNUSUAL", - "time": "71.800000000", + "time": "0.000000000", "source": "plugin-bookkeeper", "log": "topic 'utxo_deposit' is not a known notification topic" }, { "type": "UNUSUAL", - "time": "72.800000000", + "time": "0.000000000", "source": "plugin-bookkeeper", - "log": "topic 'utxo_spend' is not a known notification topic" + "log": "topic 'utxo_spend' is not a known notification topic", + "num_skipped": 4562 }, { "type": "SKIPPED", - "num_skipped": 147 + "num_skipped": 4554 }, { "type": "UNUSUAL", - "time": "74.800000000", - "node_id": "nodeid010101010101010101010101010101010101010101010101010101010101", + "time": "0.000000000", + "node_id": "0266e4598d1d3c415f572a8488830b60f7e744ed9235eb0b1ba93283b315c03518", "source": "chan#1", - "log": "No peer channel with scid=228x1x1" + "log": "No peer channel with scid=9351983x2726118x65411" } ] } diff --git a/doc/schemas/getroute.json b/doc/schemas/getroute.json index abf28601b9ca..3e16e4d60eed 100644 --- a/doc/schemas/getroute.json +++ b/doc/schemas/getroute.json @@ -372,7 +372,7 @@ "id": "example:getroute#1", "method": "getroute", "params": { - "id": "nodeid030303030303030303030303030303030303030303030303030303030303", + "id": "035d2b1192dfba134e10e540875d366ebc8bc353d5aa766b80c090b39c3a5d885d", "amount_msat": 10000, "riskfactor": 1 } @@ -380,16 +380,16 @@ "response": { "route": [ { - "id": "nodeid020202020202020202020202020202020202020202020202020202020202", - "channel": "109x1x1", + "id": "022d223620a359a47ff7f7ac447c85c46c923da53389221a0054c11c1e3ca31d59", + "channel": "110x1x0", "direction": 1, "amount_msat": 10001, "delay": 15, "style": "tlv" }, { - "id": "nodeid030303030303030303030303030303030303030303030303030303030303", - "channel": "111x1x1", + "id": "035d2b1192dfba134e10e540875d366ebc8bc353d5aa766b80c090b39c3a5d885d", + "channel": "112x1x0", "direction": 0, "amount_msat": 10000, "delay": 9, @@ -403,7 +403,7 @@ "id": "example:getroute#2", "method": "getroute", "params": { - "id": "nodeid040404040404040404040404040404040404040404040404040404040404", + "id": "0382ce59ebf18be7d84677c2e35f23294b9992ceca95491fcf8a56c6cb2d9de199", "amount_msat": 500000, "riskfactor": 10, "cltv": 9 @@ -412,16 +412,16 @@ "response": { "route": [ { - "id": "nodeid030303030303030303030303030303030303030303030303030303030303", - "channel": "111x1x1", + "id": "035d2b1192dfba134e10e540875d366ebc8bc353d5aa766b80c090b39c3a5d885d", + "channel": "112x1x0", "direction": 0, "amount_msat": 500006, "delay": 15, "style": "tlv" }, { - "id": "nodeid040404040404040404040404040404040404040404040404040404040404", - "channel": "125x1x1", + "id": "0382ce59ebf18be7d84677c2e35f23294b9992ceca95491fcf8a56c6cb2d9de199", + "channel": "114x1x0", "direction": 0, "amount_msat": 500000, "delay": 9, diff --git a/doc/schemas/getroutes.json b/doc/schemas/getroutes.json index 13099ad787e9..532cd129357b 100644 --- a/doc/schemas/getroutes.json +++ b/doc/schemas/getroutes.json @@ -195,8 +195,8 @@ "id": "example:getroutes#1", "method": "getroutes", "params": { - "source": "nodeid010101010101010101010101010101010101010101010101010101010101", - "destination": "nodeid030303030303030303030303030303030303030303030303030303030303", + "source": "0266e4598d1d3c415f572a8488830b60f7e744ed9235eb0b1ba93283b315c03518", + "destination": "035d2b1192dfba134e10e540875d366ebc8bc353d5aa766b80c090b39c3a5d885d", "amount_msat": 1250000, "layers": [], "maxfee_msat": 125000, @@ -212,14 +212,14 @@ "final_cltv": 0, "path": [ { - "short_channel_id_dir": "109x1x1/1", - "next_node_id": "nodeid020202020202020202020202020202020202020202020202020202020202", + "short_channel_id_dir": "110x1x0/1", + "next_node_id": "022d223620a359a47ff7f7ac447c85c46c923da53389221a0054c11c1e3ca31d59", "amount_msat": 1250026, "delay": 12 }, { - "short_channel_id_dir": "123x1x1/0", - "next_node_id": "nodeid030303030303030303030303030303030303030303030303030303030303", + "short_channel_id_dir": "124x1x1/0", + "next_node_id": "035d2b1192dfba134e10e540875d366ebc8bc353d5aa766b80c090b39c3a5d885d", "amount_msat": 1250013, "delay": 6 } diff --git a/doc/schemas/injectpaymentonion.json b/doc/schemas/injectpaymentonion.json index ca515ea7ed41..3834ba1ebfa2 100644 --- a/doc/schemas/injectpaymentonion.json +++ b/doc/schemas/injectpaymentonion.json @@ -147,10 +147,10 @@ "id": "example:injectpaymentonion#1", "method": "injectpaymentonion", "params": { - "onion": "onion30303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030", - "payment_hash": "paymenthashinvl0270027002700270027002700270027002700270027002700", + "onion": "0003e37337e2f488ed89a79030fb54f4f3bda09a28f80623adc2864fbf1aee71ff50c460e4e973dea414931035804e7ef03a4bdad4e3729bf85f16b6710a83fa2a3ae94332e0ba70e1d1b69100256a9e4b6144948e835c0738918afe33aac4714bc27c5c70a81e314428e8d17017c4cdc5df2ed3ec75d45cf7b5bb38547c5dd4a34134f390e516f82e97843754fd6ecbfeb1cf2e7d9ad520854592226c05210e2ddc3fb059bc6ed28e393b748be02572bd4bed4721cbc26219ad0714b4cbd329f21a727626545e9c5e9bf84cc7ed94729efdc47828560ace966b698b745d688605c390f62b67a1e0eaa84585bbb4440c442513128ff259729c9bc5dfb42c461afb5fa9f29bf04fbc04f479b0445be49f44bb15b29d79ff0bd38032f2df870dd6da61754202a1cb495df5609898c0a22582b53cb794d84a8d2931602d647b66d5b37bc122200c77b88000d7465fd51e12a825e7987844c0e36ec0c4f3a6a6b513039d4d4173e6fbea8ab68391eee74579c25b92f874e562666291997b36032f72a999bec029c99cf09941884594c32df37aa08c4bfa7ced0291251b49f9ff1814c48389da17800b8230f896d26fe1ca1d5ae7a06d195ba68fd6fdd7e92539d02107a7b72edb841fc27c526e8c5479066fd4bd8ccf955906372d4343e07f131bc9bdc2dfab65c9425e8522bcb2086e650f53d0fed6b3d24a8929a0e2420cf2239ea4bd0fb74a9fae6475d3a6a9efc70c24b0695231477d194bcedce540f763d749e075f63f8307f712e1c2e2705b43b2bed53dd928467ef2f1fd426b9a350981909cfdfd95fc2ba5a8ab90c3afb48a988ad0220716770e8bde7d21b89cbc1621cf6dc223cdfb74cdb5344526eaa72bd2ad1da482cb87f4ddae7f9f753b95a1a09b83478688b5f4a0eb7015ff469334e2491a9f50d7e265811f3776c7282cda704d99c343353a7955798f08dc30cf7e7fcb70c3901767e6e0db48b39f79ef65ddd0493bf40145a014b52dbf6eb7a5b51537580eeff790fe75f4fa9b9cbc5c9efa54561738b03aaa2ad07495f49552fcd26b1b1015e92d8fdbd22661d01215140a62416f6df1a33c0dbd55d46ee86a8e366f5ab2bd27ff7e12194784a3429ac5aa750c6084c379bd17b9e27ea1007a277ede2c9069daa0267f3cf9249284b456b4860fb7a3004943c06f644f1c5d60a46566812b3450450a484a2893eefccbbcc1c99258c727300000b7fa4f2d26e8895b3beee8a4fa98a1b96870d6ef81053b03632494d2a1face2d380711c20c74b2b3b040f18a765a0e8222e0b42f8358949d4645aa710a796ebce90669b5059584badc56d410476e67977f991fdc7b1ffce860407cbd73469b56af18cc00d0a38001f716b85a4b7225709195c8e1a6fdda5b6259700cc5cd29ac6ef0d2f091e0e07205adc604512ba288641516faa68c9f5bd65e2bc31c1a8ba478e60645837fde18339d606658d43fae0e99b9a39c4a8d517b0ed065e024617deb893b8d25f4e6feacca47fecedd07426e0194ec57b6011ea1f8ad0d528ad5db8f16c501b9fd15b3e9369cb9df5b1ef13500a9858e906b50ecbd9584190d3d9e971d539a4489201317acf4a6b1fa9caf281d40194955cfe3b6005ff1855d46de0a228509d241159a069a9e35a6d0b69033daa362096c8cfa2dbbf0ade2a91e0456f23314cbfe8f961d3703fbaf9e3928cea19b4a7d4a27188f633bdfa57fcecd8a4d793ff6f34cd3137f647a2edeaacac4bd493769c4d69f984d1c3aa8d5ee33956fe9abeef052170ca29c56233e1a8181af9364819c508bcea77aeb2d7cbe24a457c341e00dac875d7caf8898ff0c6c8679ebee963a454f92451da43308b2fbec5621521737f90b35c891c038f94e89ece44f53760ffa4e43b9abaf52070e4185c6e723041a947c536b8027608144", + "payment_hash": "ff498c3300881ea7a3c04193e43f123444c644662008108c23229da3511bedd1", "amount_msat": 1000, - "cltv_expiry": 144, + "cltv_expiry": 145, "partid": 1, "groupid": 0 } @@ -158,8 +158,8 @@ "response": { "created_index": 12, "created_at": 1738000000, - "completed_at": 1739000000, - "payment_preimage": "paymentpreimgio1030303030303030303030303030303030303030303030303" + "completed_at": 1738000000, + "payment_preimage": "08377744ca985c1e08377744ca985c1e08377744ca985c1e08377744ca985c1e" } } ] diff --git a/doc/schemas/invoice.json b/doc/schemas/invoice.json index 3aa08c139b9a..a1629fac81c7 100644 --- a/doc/schemas/invoice.json +++ b/doc/schemas/invoice.json @@ -212,10 +212,10 @@ } }, "response": { - "payment_hash": "paymenthashinvl0310031003100310031003100310031003100310031003100", - "expires_at": 1739000000, - "bolt11": "lnbcrt100n1pnt2bolt11invl030100000000bolt11invl030100000000bolt11invl030100000000bolt11invl030100000000bolt11invl030100000000bolt11invl030100000000bolt11invl030100000000bolt11invl030100000000bolt11invl030100000000bolt11invl030100000000", - "payment_secret": "paymentsecretinvl00310003100031000310003100031000310003100031000", + "payment_hash": "9562ee18e942b0eb2e36050c108efcb34cb07e5cdbe28d08d26bb71af1556c2f", + "expires_at": 1738604800, + "bolt11": "lnbcrt100n1pne035qsp5ct5g9265vn4k2zn8ecuk6pxe0anszfl3uy4w5vukrvl4emm9w28qpp5j43wux8fg2cwkt3kq5xpprhukdxtqljum03g6zxjdwm34u24dshsdp9f9h8vmmfvdjjqer9wd3hy6tsw35k7m3qdsenzxqyjw5qcqp9rzjqgkjyd3q5dv6gllh77kygly9c3kfy0d9xwyjyxsq2nq3c83u5vw4jqqqwqqqqqgqqqqqqqqpqqqqqzsqqc9qxpqysgqflkpcezmaphptn08syzk9wh4rfkdzj3syan9ng9fzzv94htydujx6qut2tdgsmq2rg5utlmwcyce30fcqth7r68tc5mpqm7k4dfvy7gp0xletu", + "payment_secret": "c2e882ab5464eb650a67ce396d04d97f670127f1e12aea33961b3f5cef65728e", "created_index": 2 } }, @@ -230,10 +230,10 @@ } }, "response": { - "payment_hash": "paymenthashinvl0320032003200320032003200320032003200320032003200", - "expires_at": 1739000000, - "bolt11": "lnbcrt100n1pnt2bolt11invl032000000000bolt11invl032000000000bolt11invl032000000000bolt11invl032000000000bolt11invl032000000000bolt11invl032000000000bolt11invl032000000000bolt11invl032000000000bolt11invl032000000000bolt11invl032000000000", - "payment_secret": "paymentsecretinvl00032003200320032003200320032003200320032003200", + "payment_hash": "ab3a5a971aa3b21494f7ce646f077232c10c9917c33375935c1aebfa571fa1a1", + "expires_at": 1738604800, + "bolt11": "lnbcrt500n1pne035qsp5kk6w4wjl0wudssp0pze5lgkz9hcav6ql523hjxc92knt398y2csqpp54va949c65wepf98heejx7pmjxtqsexghcvehty6urt4l54cl5xssdqcdsenygryv4ekxunfwp6xjmmwxqyjw5qcqp9rzjqgkjyd3q5dv6gllh77kygly9c3kfy0d9xwyjyxsq2nq3c83u5vw4jqqqwqqqqqgqqqqqqqqpqqqqqzsqqc9qxpqysgqgrjzax5dyj6dqqhgrt7t53hrmw4xvjs56kdy450c8jdv53fzf3n4kmersmgydpyyam87jrnu9wrcn78zy6w53zx3lqv45js6sa6rspqqa07y46", + "payment_secret": "b5b4eaba5f7bb8d8402f08b34fa2c22df1d6681fa2a3791b0555a6b894e45620", "created_index": 3 } } diff --git a/doc/schemas/invoicerequest.json b/doc/schemas/invoicerequest.json index f4d57b139fbf..0764c712c679 100644 --- a/doc/schemas/invoicerequest.json +++ b/doc/schemas/invoicerequest.json @@ -133,10 +133,10 @@ } }, "response": { - "invreq_id": "invreqid01010101010101010101010101010101010101010101010101010101", + "invreq_id": "22c3d45d0a9640a827ed1fefb9a07c947e38fa4c086f1f16d94882848e264868", "active": true, "single_use": true, - "bolt12": "lno1qgsq000bolt210002100021000210002100021000210002100021000210002100021000210002100021000210002100021000210002100021000210002100021000", + "bolt12": "lnr1qqg99gqg2990zl3322sqs52279lrzzst2d5k6urvv5s8getnw3gzqp3zderpzxstt8927ynqg044h0egcd8n5h3n9g0u0v4h8ncc3yg02gps7sjqtqssytfzxcs2xkdy0lml0tzy0jzugmyj8kjn8zfzrgq9fsgurc72x82e7pqfylfzzhcux84v2552lt7p2ekunuamtsdgyk34a86m4zklkdjjdzt757t4sp0m8cp9tdj6hfe67mcuwl3q7zr4sr4z4gn2fvksykkn5g", "used": false } }, @@ -151,10 +151,10 @@ } }, "response": { - "invreq_id": "invreqid02020202020202020202020202020202020202020202020202020202", + "invreq_id": "c5b8ebc06bdc246d7b852ce5637be459d3c053a5b3f8f68854f97af7371c9a50", "active": true, "single_use": true, - "bolt12": "lno1qgsq000bolt240002400024000240002400024000240002400024000240002400024000240002400024000240002400024000240002400024000240002400024000", + "bolt12": "lnr1qqg99gqg2990zl3j22sqs52279lryzsk2fjhzat9wd6xjmn8ypnx7u3qd9h8vmmfvdj3yyrrd35kw6r5de5kueeqwd6x7un92qsqvgnwgcg35z6ee2h3yczraddm72xrfua9uve2rlrm9deu7xyfzr6jqwvfdqzcyypz6g3kyz34nfrl7lm6c3rushzxey3a55ecjgs6qp2vz8q78j336k0sgr76j2yl0lrljzljjdz8ztcpryunwgfk4hzz3sle3mhaw8v2gc4dn9map7v6dlpya98jy2mcrwe27qcsywlfqp6dhh30l54sj0e8tqsk", "used": false } } diff --git a/doc/schemas/keysend.json b/doc/schemas/keysend.json index a5c92b8b2289..fae9353c5e84 100644 --- a/doc/schemas/keysend.json +++ b/doc/schemas/keysend.json @@ -237,18 +237,18 @@ "id": "example:keysend#1", "method": "keysend", "params": { - "destination": "nodeid030303030303030303030303030303030303030303030303030303030303", + "destination": "035d2b1192dfba134e10e540875d366ebc8bc353d5aa766b80c090b39c3a5d885d", "amount_msat": 10000 } }, "response": { - "destination": "nodeid030303030303030303030303030303030303030303030303030303030303", - "payment_hash": "paymenthashkey01k101k101k101k101k101k101k101k101k101k101k101k101", - "created_at": 1738000000, + "destination": "035d2b1192dfba134e10e540875d366ebc8bc353d5aa766b80c090b39c3a5d885d", + "payment_hash": "097dcfa3b0bc58d499908855dae7d442854a02d4f2ffcc625f9385ed74f3256e", + "created_at": 1738000000.0, "parts": 1, "amount_msat": 10000, "amount_sent_msat": 10001, - "payment_preimage": "paymentpreimage1010101010101010101010101010101010101010101010101", + "payment_preimage": "0193052c8999a10f0193052c8999a10f0193052c8999a10f0193052c8999a10f", "status": "complete" } }, @@ -257,7 +257,7 @@ "id": "example:keysend#2", "method": "keysend", "params": { - "destination": "nodeid040404040404040404040404040404040404040404040404040404040404", + "destination": "0382ce59ebf18be7d84677c2e35f23294b9992ceca95491fcf8a56c6cb2d9de199", "amount_msat": 10000000, "extratlvs": { "133773310": "68656c6c6f776f726c64", @@ -266,13 +266,13 @@ } }, "response": { - "destination": "nodeid040404040404040404040404040404040404040404040404040404040404", - "payment_hash": "paymenthashkey02k201k201k201k201k201k201k201k201k201k201k201k201", - "created_at": 1738000000, + "destination": "0382ce59ebf18be7d84677c2e35f23294b9992ceca95491fcf8a56c6cb2d9de199", + "payment_hash": "9bf787fe700121009e2ecdca290632c8bf2da853527c700aa5746173981ae584", + "created_at": 1738000000.0, "parts": 1, "amount_msat": 10000000, "amount_sent_msat": 10000202, - "payment_preimage": "paymentpreimage2020202020202020202020202020202020202020202020202", + "payment_preimage": "0193052c8999a1110193052c8999a1110193052c8999a1110193052c8999a111", "status": "complete" } }, @@ -281,13 +281,13 @@ "id": "example:keysend#3", "method": "keysend", "params": { - "destination": "nodeid030303030303030303030303030303030303030303030303030303030303", + "destination": "035d2b1192dfba134e10e540875d366ebc8bc353d5aa766b80c090b39c3a5d885d", "amount_msat": 10000, "routehints": [ [ { - "scid": "111x1x1", - "id": "nodeid020202020202020202020202020202020202020202020202020202020202", + "scid": "9351983x2726118x65411", + "id": "022d223620a359a47ff7f7ac447c85c46c923da53389221a0054c11c1e3ca31d59", "feebase": "1msat", "feeprop": 10, "expirydelta": 9 @@ -297,13 +297,13 @@ } }, "response": { - "destination": "nodeid030303030303030303030303030303030303030303030303030303030303", - "payment_hash": "paymenthashkey03k301k301k301k301k301k301k301k301k301k301k301k301", - "created_at": 1738000000, + "destination": "035d2b1192dfba134e10e540875d366ebc8bc353d5aa766b80c090b39c3a5d885d", + "payment_hash": "da6c0b6d30ac35f62762bc7114d64d323dc79fb858061902263eb72df6310caf", + "created_at": 1738000000.0, "parts": 2, "amount_msat": 10000, "amount_sent_msat": 10001, - "payment_preimage": "paymentpreimage3030303030303030303030303030303030303030303030303", + "payment_preimage": "0193052c8999a1130193052c8999a1130193052c8999a1130193052c8999a113", "status": "complete" } } diff --git a/doc/schemas/listchainmoves.json b/doc/schemas/listchainmoves.json index 985105e93a55..b13b2b1273ae 100644 --- a/doc/schemas/listchainmoves.json +++ b/doc/schemas/listchainmoves.json @@ -197,5 +197,384 @@ ], "resources": [ "Main web site: " + ], + "examples": [ + { + "request": { + "id": "example:listchainmoves#1", + "method": "listchainmoves", + "params": {} + }, + "response": { + "chainmoves": [ + { + "created_index": 1, + "account_id": "wallet", + "credit_msat": 200000000000, + "debit_msat": 0, + "timestamp": 1738000001, + "primary_tag": "deposit", + "extra_tags": [], + "utxo": "89126fb6a9c3b0cbddb31ee6501f3582a3f991f5cbcd07b895a4e31ac120d8b3:1", + "output_msat": 200000000000, + "blockheight": 105 + }, + { + "created_index": 2, + "account_id": "252d1b0a1e57895e84137f28cf19ab2c35847e284c112fefdecc7afeaa5c1de7", + "credit_msat": 0, + "debit_msat": 0, + "timestamp": 1738000002, + "primary_tag": "channel_open", + "extra_tags": [], + "utxo": "63f74346eda6b8620ec24f86e2f8982ef3dade95f8efd00b372a75b2893b6f0d:0", + "peer_id": "0266e4598d1d3c415f572a8488830b60f7e744ed9235eb0b1ba93283b315c03518", + "output_msat": 1000000000, + "blockheight": 110 + }, + { + "created_index": 3, + "account_id": "wallet", + "credit_msat": 2000000000, + "debit_msat": 0, + "timestamp": 1738000003, + "primary_tag": "deposit", + "extra_tags": [], + "utxo": "d84db03fd012a98de6776fb10ee1c1de23282c33518aa32fdd5a15600f535ace:0", + "output_msat": 2000000000, + "blockheight": 111 + }, + { + "created_index": 4, + "account_id": "wallet", + "credit_msat": 0, + "debit_msat": 200000000000, + "timestamp": 1738000004, + "primary_tag": "withdrawal", + "extra_tags": [], + "utxo": "89126fb6a9c3b0cbddb31ee6501f3582a3f991f5cbcd07b895a4e31ac120d8b3:1", + "spending_txid": "7cce7550c4b37924bb74fd4baf8f1946a4b14c050c42f2479b04fede08652aa9", + "output_msat": 200000000000, + "blockheight": 112 + }, + { + "created_index": 5, + "account_id": "wallet", + "credit_msat": 198995073000, + "debit_msat": 0, + "timestamp": 1738000005, + "primary_tag": "deposit", + "extra_tags": [], + "utxo": "7cce7550c4b37924bb74fd4baf8f1946a4b14c050c42f2479b04fede08652aa9:1", + "output_msat": 198995073000, + "blockheight": 112 + }, + { + "created_index": 6, + "account_id": "a397dd9b3e44afcb67f3f3ce1d649b74a8ade63e35505985e4cc1828634f69a2", + "credit_msat": 1000000000, + "debit_msat": 0, + "timestamp": 1738000006, + "primary_tag": "channel_open", + "extra_tags": [ + "opener" + ], + "utxo": "7cce7550c4b37924bb74fd4baf8f1946a4b14c050c42f2479b04fede08652aa9:0", + "peer_id": "035d2b1192dfba134e10e540875d366ebc8bc353d5aa766b80c090b39c3a5d885d", + "output_msat": 1000000000, + "blockheight": 112 + }, + { + "created_index": 7, + "account_id": "wallet", + "credit_msat": 2000000000, + "debit_msat": 0, + "timestamp": 1738000007, + "primary_tag": "deposit", + "extra_tags": [], + "utxo": "254dc18f69af1f3ee1ed64a81782b524455efe7f04cb9873059c667fbcffe56d:1", + "output_msat": 2000000000, + "blockheight": 115 + }, + { + "created_index": 8, + "account_id": "wallet", + "credit_msat": 0, + "debit_msat": 2000000000, + "timestamp": 1738000008, + "primary_tag": "withdrawal", + "extra_tags": [], + "utxo": "254dc18f69af1f3ee1ed64a81782b524455efe7f04cb9873059c667fbcffe56d:1", + "spending_txid": "92dc0d9921d6c5beda83bddd3d1575fb673493f354c0a8cd91c6b139620c3155", + "output_msat": 2000000000, + "blockheight": 116 + }, + { + "created_index": 9, + "account_id": "wallet", + "credit_msat": 995073000, + "debit_msat": 0, + "timestamp": 1738000009, + "primary_tag": "deposit", + "extra_tags": [], + "utxo": "92dc0d9921d6c5beda83bddd3d1575fb673493f354c0a8cd91c6b139620c3155:0", + "output_msat": 995073000, + "blockheight": 116 + }, + { + "created_index": 10, + "account_id": "f8fc83a432cbfb2fffe222cc06727fdd977b5dd10ebd6707158e799e6f522d9f", + "credit_msat": 1000000000, + "debit_msat": 0, + "timestamp": 1738000010, + "primary_tag": "channel_open", + "extra_tags": [ + "opener" + ], + "utxo": "92dc0d9921d6c5beda83bddd3d1575fb673493f354c0a8cd91c6b139620c3155:1", + "peer_id": "032cf15d1ad9c4a08d26eab1918f732d8ef8fdc6abb9640bf3db174372c491304e", + "output_msat": 1000000000, + "blockheight": 116 + }, + { + "created_index": 11, + "account_id": "wallet", + "credit_msat": 486914000, + "debit_msat": 0, + "timestamp": 1738000027, + "primary_tag": "deposit", + "extra_tags": [], + "utxo": "40b4acd3759ac69b5160488d73a5890a46bf4f013381e52e9171ee038b3c96d6:0", + "output_msat": 486914000, + "blockheight": 122 + }, + { + "created_index": 12, + "account_id": "a397dd9b3e44afcb67f3f3ce1d649b74a8ade63e35505985e4cc1828634f69a2", + "credit_msat": 0, + "debit_msat": 489809898, + "timestamp": 1738000028, + "primary_tag": "channel_close", + "extra_tags": [], + "utxo": "7cce7550c4b37924bb74fd4baf8f1946a4b14c050c42f2479b04fede08652aa9:0", + "spending_txid": "40b4acd3759ac69b5160488d73a5890a46bf4f013381e52e9171ee038b3c96d6", + "output_msat": 1000000000, + "output_count": 2, + "blockheight": 122 + }, + { + "created_index": 13, + "account_id": "external", + "credit_msat": 510190000, + "debit_msat": 0, + "timestamp": 1738000029, + "primary_tag": "to_them", + "extra_tags": [], + "utxo": "40b4acd3759ac69b5160488d73a5890a46bf4f013381e52e9171ee038b3c96d6:1", + "originating_account": "a397dd9b3e44afcb67f3f3ce1d649b74a8ade63e35505985e4cc1828634f69a2", + "output_msat": 510190000, + "blockheight": 122 + }, + { + "created_index": 14, + "account_id": "wallet", + "credit_msat": 2000000000, + "debit_msat": 0, + "timestamp": 1738000030, + "primary_tag": "deposit", + "extra_tags": [], + "utxo": "ed937e020220370aab16a6f2f54b8b2230681f3991e46c2dccb21fea510533a7:1", + "output_msat": 2000000000, + "blockheight": 123 + }, + { + "created_index": 15, + "account_id": "wallet", + "credit_msat": 0, + "debit_msat": 995073000, + "timestamp": 1738000031, + "primary_tag": "withdrawal", + "extra_tags": [], + "utxo": "92dc0d9921d6c5beda83bddd3d1575fb673493f354c0a8cd91c6b139620c3155:0", + "spending_txid": "148a366c9a72e40af01daca6acc24e0a5648d0efb7e01f4708f23412d9deba69", + "output_msat": 995073000, + "blockheight": 124 + }, + { + "created_index": 16, + "account_id": "wallet", + "credit_msat": 0, + "debit_msat": 2000000000, + "timestamp": 1738000032, + "primary_tag": "withdrawal", + "extra_tags": [], + "utxo": "ed937e020220370aab16a6f2f54b8b2230681f3991e46c2dccb21fea510533a7:1", + "spending_txid": "148a366c9a72e40af01daca6acc24e0a5648d0efb7e01f4708f23412d9deba69", + "output_msat": 2000000000, + "blockheight": 124 + }, + { + "created_index": 17, + "account_id": "wallet", + "credit_msat": 1988421000, + "debit_msat": 0, + "timestamp": 1738000033, + "primary_tag": "deposit", + "extra_tags": [], + "utxo": "148a366c9a72e40af01daca6acc24e0a5648d0efb7e01f4708f23412d9deba69:0", + "output_msat": 1988421000, + "blockheight": 124 + }, + { + "created_index": 18, + "account_id": "ecabe6d86abdd57565b3fb7e7c5d724e60ca1a07633951769b5dbfa48dc884b3", + "credit_msat": 1000000000, + "debit_msat": 0, + "timestamp": 1738000034, + "primary_tag": "channel_open", + "extra_tags": [ + "opener" + ], + "utxo": "148a366c9a72e40af01daca6acc24e0a5648d0efb7e01f4708f23412d9deba69:1", + "peer_id": "035d2b1192dfba134e10e540875d366ebc8bc353d5aa766b80c090b39c3a5d885d", + "output_msat": 1000000000, + "blockheight": 124 + } + ] + } + }, + { + "request": { + "id": "example:listchainmoves#2", + "method": "listchainmoves", + "params": { + "index": "created", + "start": 10 + } + }, + "response": { + "chainmoves": [ + { + "created_index": 10, + "account_id": "f8fc83a432cbfb2fffe222cc06727fdd977b5dd10ebd6707158e799e6f522d9f", + "credit_msat": 1000000000, + "debit_msat": 0, + "timestamp": 1738000010, + "primary_tag": "channel_open", + "extra_tags": [ + "opener" + ], + "utxo": "92dc0d9921d6c5beda83bddd3d1575fb673493f354c0a8cd91c6b139620c3155:1", + "peer_id": "032cf15d1ad9c4a08d26eab1918f732d8ef8fdc6abb9640bf3db174372c491304e", + "output_msat": 1000000000, + "blockheight": 116 + }, + { + "created_index": 11, + "account_id": "wallet", + "credit_msat": 486914000, + "debit_msat": 0, + "timestamp": 1738000027, + "primary_tag": "deposit", + "extra_tags": [], + "utxo": "40b4acd3759ac69b5160488d73a5890a46bf4f013381e52e9171ee038b3c96d6:0", + "output_msat": 486914000, + "blockheight": 122 + }, + { + "created_index": 12, + "account_id": "a397dd9b3e44afcb67f3f3ce1d649b74a8ade63e35505985e4cc1828634f69a2", + "credit_msat": 0, + "debit_msat": 489809898, + "timestamp": 1738000028, + "primary_tag": "channel_close", + "extra_tags": [], + "utxo": "7cce7550c4b37924bb74fd4baf8f1946a4b14c050c42f2479b04fede08652aa9:0", + "spending_txid": "40b4acd3759ac69b5160488d73a5890a46bf4f013381e52e9171ee038b3c96d6", + "output_msat": 1000000000, + "output_count": 2, + "blockheight": 122 + }, + { + "created_index": 13, + "account_id": "external", + "credit_msat": 510190000, + "debit_msat": 0, + "timestamp": 1738000029, + "primary_tag": "to_them", + "extra_tags": [], + "utxo": "40b4acd3759ac69b5160488d73a5890a46bf4f013381e52e9171ee038b3c96d6:1", + "originating_account": "a397dd9b3e44afcb67f3f3ce1d649b74a8ade63e35505985e4cc1828634f69a2", + "output_msat": 510190000, + "blockheight": 122 + }, + { + "created_index": 14, + "account_id": "wallet", + "credit_msat": 2000000000, + "debit_msat": 0, + "timestamp": 1738000030, + "primary_tag": "deposit", + "extra_tags": [], + "utxo": "ed937e020220370aab16a6f2f54b8b2230681f3991e46c2dccb21fea510533a7:1", + "output_msat": 2000000000, + "blockheight": 123 + }, + { + "created_index": 15, + "account_id": "wallet", + "credit_msat": 0, + "debit_msat": 995073000, + "timestamp": 1738000031, + "primary_tag": "withdrawal", + "extra_tags": [], + "utxo": "92dc0d9921d6c5beda83bddd3d1575fb673493f354c0a8cd91c6b139620c3155:0", + "spending_txid": "148a366c9a72e40af01daca6acc24e0a5648d0efb7e01f4708f23412d9deba69", + "output_msat": 995073000, + "blockheight": 124 + }, + { + "created_index": 16, + "account_id": "wallet", + "credit_msat": 0, + "debit_msat": 2000000000, + "timestamp": 1738000032, + "primary_tag": "withdrawal", + "extra_tags": [], + "utxo": "ed937e020220370aab16a6f2f54b8b2230681f3991e46c2dccb21fea510533a7:1", + "spending_txid": "148a366c9a72e40af01daca6acc24e0a5648d0efb7e01f4708f23412d9deba69", + "output_msat": 2000000000, + "blockheight": 124 + }, + { + "created_index": 17, + "account_id": "wallet", + "credit_msat": 1988421000, + "debit_msat": 0, + "timestamp": 1738000033, + "primary_tag": "deposit", + "extra_tags": [], + "utxo": "148a366c9a72e40af01daca6acc24e0a5648d0efb7e01f4708f23412d9deba69:0", + "output_msat": 1988421000, + "blockheight": 124 + }, + { + "created_index": 18, + "account_id": "ecabe6d86abdd57565b3fb7e7c5d724e60ca1a07633951769b5dbfa48dc884b3", + "credit_msat": 1000000000, + "debit_msat": 0, + "timestamp": 1738000034, + "primary_tag": "channel_open", + "extra_tags": [ + "opener" + ], + "utxo": "148a366c9a72e40af01daca6acc24e0a5648d0efb7e01f4708f23412d9deba69:1", + "peer_id": "035d2b1192dfba134e10e540875d366ebc8bc353d5aa766b80c090b39c3a5d885d", + "output_msat": 1000000000, + "blockheight": 124 + } + ] + } + } ] } diff --git a/doc/schemas/listchannelmoves.json b/doc/schemas/listchannelmoves.json index d98a72b777a8..efe64dedda19 100644 --- a/doc/schemas/listchannelmoves.json +++ b/doc/schemas/listchannelmoves.json @@ -145,5 +145,241 @@ ], "resources": [ "Main web site: " + ], + "examples": [ + { + "request": { + "id": "example:listchannelmoves#1", + "method": "listchannelmoves", + "params": {} + }, + "response": { + "channelmoves": [ + { + "created_index": 1, + "account_id": "252d1b0a1e57895e84137f28cf19ab2c35847e284c112fefdecc7afeaa5c1de7", + "credit_msat": 500000000, + "debit_msat": 0, + "timestamp": 1738000011, + "primary_tag": "invoice", + "payment_hash": "342cbb1cb564e8f32eb64fe8c254abf5ec5f6b87a0f8de7909caf8e658f3bd2a", + "fees_msat": 0 + }, + { + "created_index": 2, + "account_id": "a397dd9b3e44afcb67f3f3ce1d649b74a8ade63e35505985e4cc1828634f69a2", + "credit_msat": 0, + "debit_msat": 500000000, + "timestamp": 1738000012, + "primary_tag": "invoice", + "payment_hash": "f61aef012557d6496699642e71e2bacda5670b5377c6357fa40485813facc628", + "part_id": 0, + "group_id": 1, + "fees_msat": 0 + }, + { + "created_index": 3, + "account_id": "f8fc83a432cbfb2fffe222cc06727fdd977b5dd10ebd6707158e799e6f522d9f", + "credit_msat": 0, + "debit_msat": 500000000, + "timestamp": 1738000013, + "primary_tag": "invoice", + "payment_hash": "f65a1de794267be304d915d60a9257d2e8f43f3e897e6894b619493e4c20d94e", + "part_id": 0, + "group_id": 1, + "fees_msat": 0 + }, + { + "created_index": 4, + "account_id": "a397dd9b3e44afcb67f3f3ce1d649b74a8ade63e35505985e4cc1828634f69a2", + "credit_msat": 0, + "debit_msat": 10000, + "timestamp": 1738000014, + "primary_tag": "routed", + "payment_hash": "9562ee18e942b0eb2e36050c108efcb34cb07e5cdbe28d08d26bb71af1556c2f", + "fees_msat": 1 + }, + { + "created_index": 5, + "account_id": "252d1b0a1e57895e84137f28cf19ab2c35847e284c112fefdecc7afeaa5c1de7", + "credit_msat": 10001, + "debit_msat": 0, + "timestamp": 1738000015, + "primary_tag": "routed", + "payment_hash": "9562ee18e942b0eb2e36050c108efcb34cb07e5cdbe28d08d26bb71af1556c2f", + "fees_msat": 1 + }, + { + "created_index": 6, + "account_id": "a397dd9b3e44afcb67f3f3ce1d649b74a8ade63e35505985e4cc1828634f69a2", + "credit_msat": 0, + "debit_msat": 10000, + "timestamp": 1738000016, + "primary_tag": "routed", + "payment_hash": "097dcfa3b0bc58d499908855dae7d442854a02d4f2ffcc625f9385ed74f3256e", + "fees_msat": 1 + }, + { + "created_index": 7, + "account_id": "252d1b0a1e57895e84137f28cf19ab2c35847e284c112fefdecc7afeaa5c1de7", + "credit_msat": 10001, + "debit_msat": 0, + "timestamp": 1738000017, + "primary_tag": "routed", + "payment_hash": "097dcfa3b0bc58d499908855dae7d442854a02d4f2ffcc625f9385ed74f3256e", + "fees_msat": 1 + }, + { + "created_index": 8, + "account_id": "a397dd9b3e44afcb67f3f3ce1d649b74a8ade63e35505985e4cc1828634f69a2", + "credit_msat": 0, + "debit_msat": 10000101, + "timestamp": 1738000018, + "primary_tag": "routed", + "payment_hash": "9bf787fe700121009e2ecdca290632c8bf2da853527c700aa5746173981ae584", + "fees_msat": 101 + }, + { + "created_index": 9, + "account_id": "252d1b0a1e57895e84137f28cf19ab2c35847e284c112fefdecc7afeaa5c1de7", + "credit_msat": 10000202, + "debit_msat": 0, + "timestamp": 1738000019, + "primary_tag": "routed", + "payment_hash": "9bf787fe700121009e2ecdca290632c8bf2da853527c700aa5746173981ae584", + "fees_msat": 101 + }, + { + "created_index": 10, + "account_id": "a397dd9b3e44afcb67f3f3ce1d649b74a8ade63e35505985e4cc1828634f69a2", + "credit_msat": 0, + "debit_msat": 10000, + "timestamp": 1738000020, + "primary_tag": "routed", + "payment_hash": "da6c0b6d30ac35f62762bc7114d64d323dc79fb858061902263eb72df6310caf", + "fees_msat": 1 + }, + { + "created_index": 11, + "account_id": "252d1b0a1e57895e84137f28cf19ab2c35847e284c112fefdecc7afeaa5c1de7", + "credit_msat": 10001, + "debit_msat": 0, + "timestamp": 1738000021, + "primary_tag": "routed", + "payment_hash": "da6c0b6d30ac35f62762bc7114d64d323dc79fb858061902263eb72df6310caf", + "fees_msat": 1 + }, + { + "created_index": 12, + "account_id": "a397dd9b3e44afcb67f3f3ce1d649b74a8ade63e35505985e4cc1828634f69a2", + "credit_msat": 0, + "debit_msat": 50000, + "timestamp": 1738000022, + "primary_tag": "routed", + "payment_hash": "ab3a5a971aa3b21494f7ce646f077232c10c9917c33375935c1aebfa571fa1a1", + "fees_msat": 1 + }, + { + "created_index": 13, + "account_id": "252d1b0a1e57895e84137f28cf19ab2c35847e284c112fefdecc7afeaa5c1de7", + "credit_msat": 50001, + "debit_msat": 0, + "timestamp": 1738000023, + "primary_tag": "routed", + "payment_hash": "ab3a5a971aa3b21494f7ce646f077232c10c9917c33375935c1aebfa571fa1a1", + "fees_msat": 1 + }, + { + "created_index": 14, + "account_id": "a397dd9b3e44afcb67f3f3ce1d649b74a8ade63e35505985e4cc1828634f69a2", + "credit_msat": 0, + "debit_msat": 100000, + "timestamp": 1738000024, + "primary_tag": "invoice", + "payment_hash": "2b1434d9e61da6c5f1252369f4a98e1ddce722b4db3bf15553b87a94d19d351d", + "part_id": 0, + "group_id": 1, + "fees_msat": 0 + }, + { + "created_index": 15, + "account_id": "a397dd9b3e44afcb67f3f3ce1d649b74a8ade63e35505985e4cc1828634f69a2", + "credit_msat": 0, + "debit_msat": 10001, + "timestamp": 1738000025, + "primary_tag": "routed", + "payment_hash": "1bb513fb2fbde40592243877d9f404ba3668275e2eeacd9c7264f34f04d37fd1", + "fees_msat": 1 + }, + { + "created_index": 16, + "account_id": "252d1b0a1e57895e84137f28cf19ab2c35847e284c112fefdecc7afeaa5c1de7", + "credit_msat": 10002, + "debit_msat": 0, + "timestamp": 1738000026, + "primary_tag": "routed", + "payment_hash": "1bb513fb2fbde40592243877d9f404ba3668275e2eeacd9c7264f34f04d37fd1", + "fees_msat": 1 + }, + { + "created_index": 17, + "account_id": "252d1b0a1e57895e84137f28cf19ab2c35847e284c112fefdecc7afeaa5c1de7", + "credit_msat": 0, + "debit_msat": 1000000, + "timestamp": 1738000035, + "primary_tag": "invoice", + "payment_hash": "cedc7bf0a9109bd3cd86c5a0c90faa812b8a0ca3d65671c8b4001aae2647349f", + "part_id": 0, + "group_id": 1, + "fees_msat": 0 + }, + { + "created_index": 18, + "account_id": "252d1b0a1e57895e84137f28cf19ab2c35847e284c112fefdecc7afeaa5c1de7", + "credit_msat": 1000, + "debit_msat": 0, + "timestamp": 1738000036, + "primary_tag": "invoice", + "payment_hash": "ff498c3300881ea7a3c04193e43f123444c644662008108c23229da3511bedd1", + "fees_msat": 0 + } + ] + } + }, + { + "request": { + "id": "example:listchannelmoves#2", + "method": "listchannelmoves", + "params": { + "index": "created", + "start": 10, + "limit": 2 + } + }, + "response": { + "channelmoves": [ + { + "created_index": 10, + "account_id": "a397dd9b3e44afcb67f3f3ce1d649b74a8ade63e35505985e4cc1828634f69a2", + "credit_msat": 0, + "debit_msat": 10000, + "timestamp": 1738000020, + "primary_tag": "routed", + "payment_hash": "da6c0b6d30ac35f62762bc7114d64d323dc79fb858061902263eb72df6310caf", + "fees_msat": 1 + }, + { + "created_index": 11, + "account_id": "252d1b0a1e57895e84137f28cf19ab2c35847e284c112fefdecc7afeaa5c1de7", + "credit_msat": 10001, + "debit_msat": 0, + "timestamp": 1738000021, + "primary_tag": "routed", + "payment_hash": "da6c0b6d30ac35f62762bc7114d64d323dc79fb858061902263eb72df6310caf", + "fees_msat": 1 + } + ] + } + } ] } diff --git a/doc/schemas/listchannels.json b/doc/schemas/listchannels.json index f21e1f80f4af..d1e03f9e3824 100644 --- a/doc/schemas/listchannels.json +++ b/doc/schemas/listchannels.json @@ -191,22 +191,22 @@ "id": "example:listchannels#1", "method": "listchannels", "params": { - "short_channel_id": "109x1x1" + "short_channel_id": "110x1x0" } }, "response": { "channels": [ { - "source": "nodeid020202020202020202020202020202020202020202020202020202020202", - "destination": "nodeid010101010101010101010101010101010101010101010101010101010101", - "short_channel_id": "109x1x1", + "source": "022d223620a359a47ff7f7ac447c85c46c923da53389221a0054c11c1e3ca31d59", + "destination": "0266e4598d1d3c415f572a8488830b60f7e744ed9235eb0b1ba93283b315c03518", + "short_channel_id": "110x1x0", "direction": 0, "public": true, "amount_msat": 1000000000, "message_flags": 1, "channel_flags": 0, "active": true, - "last_update": 1738500000, + "last_update": 1738000001, "base_fee_millisatoshi": 1, "fee_per_millionth": 10, "delay": 6, @@ -215,16 +215,16 @@ "features": "" }, { - "source": "nodeid010101010101010101010101010101010101010101010101010101010101", - "destination": "nodeid020202020202020202020202020202020202020202020202020202020202", - "short_channel_id": "109x1x1", + "source": "0266e4598d1d3c415f572a8488830b60f7e744ed9235eb0b1ba93283b315c03518", + "destination": "022d223620a359a47ff7f7ac447c85c46c923da53389221a0054c11c1e3ca31d59", + "short_channel_id": "110x1x0", "direction": 1, "public": true, "amount_msat": 1000000000, "message_flags": 1, "channel_flags": 1, - "active": false, - "last_update": 1738510000, + "active": true, + "last_update": 1738000001, "base_fee_millisatoshi": 1, "fee_per_millionth": 10, "delay": 6, @@ -244,16 +244,16 @@ "response": { "channels": [ { - "source": "nodeid020202020202020202020202020202020202020202020202020202020202", - "destination": "nodeid010101010101010101010101010101010101010101010101010101010101", - "short_channel_id": "109x1x1", + "source": "022d223620a359a47ff7f7ac447c85c46c923da53389221a0054c11c1e3ca31d59", + "destination": "0266e4598d1d3c415f572a8488830b60f7e744ed9235eb0b1ba93283b315c03518", + "short_channel_id": "110x1x0", "direction": 0, "public": true, "amount_msat": 1000000000, "message_flags": 1, "channel_flags": 0, "active": true, - "last_update": 1738500000, + "last_update": 1738000001, "base_fee_millisatoshi": 1, "fee_per_millionth": 10, "delay": 6, @@ -262,16 +262,16 @@ "features": "" }, { - "source": "nodeid010101010101010101010101010101010101010101010101010101010101", - "destination": "nodeid020202020202020202020202020202020202020202020202020202020202", - "short_channel_id": "109x1x1", + "source": "0266e4598d1d3c415f572a8488830b60f7e744ed9235eb0b1ba93283b315c03518", + "destination": "022d223620a359a47ff7f7ac447c85c46c923da53389221a0054c11c1e3ca31d59", + "short_channel_id": "110x1x0", "direction": 1, "public": true, "amount_msat": 1000000000, "message_flags": 1, "channel_flags": 1, - "active": false, - "last_update": 1738510000, + "active": true, + "last_update": 1738000001, "base_fee_millisatoshi": 1, "fee_per_millionth": 10, "delay": 6, @@ -280,16 +280,16 @@ "features": "" }, { - "source": "nodeid020202020202020202020202020202020202020202020202020202020202", - "destination": "nodeid030303030303030303030303030303030303030303030303030303030303", - "short_channel_id": "123x1x1", + "source": "022d223620a359a47ff7f7ac447c85c46c923da53389221a0054c11c1e3ca31d59", + "destination": "035d2b1192dfba134e10e540875d366ebc8bc353d5aa766b80c090b39c3a5d885d", + "short_channel_id": "124x1x1", "direction": 0, "public": true, "amount_msat": 1000000000, "message_flags": 1, - "channel_flags": 2, + "channel_flags": 0, "active": true, - "last_update": 1738520000, + "last_update": 1738000001, "base_fee_millisatoshi": 1, "fee_per_millionth": 10, "delay": 6, @@ -298,16 +298,16 @@ "features": "" }, { - "source": "nodeid030303030303030303030303030303030303030303030303030303030303", - "destination": "nodeid020202020202020202020202020202020202020202020202020202020202", - "short_channel_id": "123x1x1", + "source": "035d2b1192dfba134e10e540875d366ebc8bc353d5aa766b80c090b39c3a5d885d", + "destination": "022d223620a359a47ff7f7ac447c85c46c923da53389221a0054c11c1e3ca31d59", + "short_channel_id": "124x1x1", "direction": 1, "public": true, "amount_msat": 1000000000, "message_flags": 1, - "channel_flags": 3, - "active": false, - "last_update": 1738530000, + "channel_flags": 1, + "active": true, + "last_update": 1738000001, "base_fee_millisatoshi": 1, "fee_per_millionth": 10, "delay": 6, @@ -316,16 +316,34 @@ "features": "" }, { - "source": "nodeid030303030303030303030303030303030303030303030303030303030303", - "destination": "nodeid040404040404040404040404040404040404040404040404040404040404", - "short_channel_id": "130x1x1", + "source": "035d2b1192dfba134e10e540875d366ebc8bc353d5aa766b80c090b39c3a5d885d", + "destination": "0382ce59ebf18be7d84677c2e35f23294b9992ceca95491fcf8a56c6cb2d9de199", + "short_channel_id": "126x1x0", "direction": 0, "public": true, "amount_msat": 1000000000, "message_flags": 1, "channel_flags": 2, + "active": false, + "last_update": 1738000002, + "base_fee_millisatoshi": 1, + "fee_per_millionth": 10, + "delay": 6, + "htlc_minimum_msat": 0, + "htlc_maximum_msat": 990000000, + "features": "" + }, + { + "source": "0382ce59ebf18be7d84677c2e35f23294b9992ceca95491fcf8a56c6cb2d9de199", + "destination": "035d2b1192dfba134e10e540875d366ebc8bc353d5aa766b80c090b39c3a5d885d", + "short_channel_id": "126x1x0", + "direction": 1, + "public": true, + "amount_msat": 1000000000, + "message_flags": 1, + "channel_flags": 1, "active": true, - "last_update": 1738540000, + "last_update": 1738000001, "base_fee_millisatoshi": 1, "fee_per_millionth": 10, "delay": 6, diff --git a/doc/schemas/listclosedchannels.json b/doc/schemas/listclosedchannels.json index becf033e692d..9bb7a5cbe18b 100644 --- a/doc/schemas/listclosedchannels.json +++ b/doc/schemas/listclosedchannels.json @@ -298,16 +298,16 @@ "response": { "closedchannels": [ { - "peer_id": "nodeid030303030303030303030303030303030303030303030303030303030303", - "channel_id": "channelid0230000230000230000230000230000230000230000230000230000", - "short_channel_id": "111x1x1", + "peer_id": "032cf15d1ad9c4a08d26eab1918f732d8ef8fdc6abb9640bf3db174372c491304e", + "channel_id": "f8fc83a432cbfb2fffe222cc06727fdd977b5dd10ebd6707158e799e6f522d9f", + "short_channel_id": "116x1x1", "alias": { - "local": "121x131x141", - "remote": "151x161x171" + "local": "6443160x13255799x14088", + "remote": "12585125x15062924x5208" }, "opener": "local", "closer": "local", - "private": false, + "private": true, "channel_type": { "bits": [ 12, @@ -318,32 +318,31 @@ "anchors/even" ] }, - "total_local_commitments": 16, - "total_remote_commitments": 16, - "total_htlcs_sent": 8, - "funding_txid": "fundingtxid00202020202020202020202020202020202020202020202020202", + "total_local_commitments": 2, + "total_remote_commitments": 2, + "total_htlcs_sent": 1, + "funding_txid": "92dc0d9921d6c5beda83bddd3d1575fb673493f354c0a8cd91c6b139620c3155", "funding_outnum": 1, "leased": false, "total_msat": 1000000000, - "final_to_us_msat": 489809898, - "min_to_us_msat": 489809898, + "final_to_us_msat": 500000000, + "min_to_us_msat": 500000000, "max_to_us_msat": 1000000000, - "last_commitment_txid": "txidcloselastcommitment00000100001000010000100001000010000100001", + "last_commitment_txid": "19fec0dedc91354817beacd4155a6303a5ceaad0be36219b3d6e77836c8092a0", "last_commitment_fee_msat": 2895000, - "close_cause": "user", - "last_stable_connection": 1738500000 + "close_cause": "user" }, { - "peer_id": "nodeid050505050505050505050505050505050505050505050505050505050505", - "channel_id": "channelid0250000250000250000250000250000250000250000250000250000", - "short_channel_id": "115x1x1", + "peer_id": "035d2b1192dfba134e10e540875d366ebc8bc353d5aa766b80c090b39c3a5d885d", + "channel_id": "a397dd9b3e44afcb67f3f3ce1d649b74a8ade63e35505985e4cc1828634f69a2", + "short_channel_id": "112x1x0", "alias": { - "local": "122x132x142", - "remote": "152x162x172" + "local": "6377624x13255799x14088", + "remote": "9351983x2726118x65411" }, "opener": "local", "closer": "local", - "private": true, + "private": false, "channel_type": { "bits": [ 12, @@ -354,20 +353,20 @@ "anchors/even" ] }, - "total_local_commitments": 2, - "total_remote_commitments": 2, - "total_htlcs_sent": 1, - "funding_txid": "fundingtxid00101010101010101010101010101010101010101010101010101", - "funding_outnum": 1, + "total_local_commitments": 16, + "total_remote_commitments": 16, + "total_htlcs_sent": 8, + "funding_txid": "7cce7550c4b37924bb74fd4baf8f1946a4b14c050c42f2479b04fede08652aa9", + "funding_outnum": 0, "leased": false, "total_msat": 1000000000, - "final_to_us_msat": 500000000, - "min_to_us_msat": 500000000, + "final_to_us_msat": 489809898, + "min_to_us_msat": 489809898, "max_to_us_msat": 1000000000, - "last_commitment_txid": "txidcloselastcommitment00000200002000020000200002000020000200002", + "last_commitment_txid": "40b4acd3759ac69b5160488d73a5890a46bf4f013381e52e9171ee038b3c96d6", "last_commitment_fee_msat": 2896000, "close_cause": "user", - "last_stable_connection": 1738500000 + "last_stable_connection": 1738000000 } ] } diff --git a/doc/schemas/listconfigs.json b/doc/schemas/listconfigs.json index dc750b5808d1..f5d863cdb858 100644 --- a/doc/schemas/listconfigs.json +++ b/doc/schemas/listconfigs.json @@ -1722,7 +1722,15 @@ "id": "example:listconfigs#1", "method": "listconfigs", "params": { - "config": "network" + "config": "network", + "scb": [ + "0000000000000006f4e1de801de57374d5737da622611e3a1ad9f16d5df9c30fceecc11ce732eeeb022d223620a359a47ff7f7ac447c85c46c923da53389221a0054c11c1e3ca31d59017f000001a95cbe3270e5e0998af5eb0a67f7bf6e8d5b3d3d43059b3e4cfbd1e4fca6152c51320000000100000000000f42400003401000000000eb015c0000fffffffffffe000000020000ffffffffffff3283fc1863a9702a8e188ed55475324e55485a8758d2068cfea35851418c55740000fffffffffffed00ec892b1739b55ddc0cca2988d8731eb33f2295c1fcc13fdbdfff9d3f85d6d038402a6939f0f9d5c7a41464169eb692b4d2d73266b3c46345cd036ca577a15bdeeaa027662682a646ce7671c3a091bf639176e87d3379022126b209ebadadae19ffc0e02c59668c64362eaeabf44ee4f10b98fc92412cbea74b6f3a917423dfdf3ca282602773e6c29472ab708e5b127e8ae1ce2d8b7f56b457299f93bb72bb73fdbcf91770501010702a5f8", + "000000000000000121bd30cac60f477f2c4267220b1702a6ec5780db34f9934fa94b8c0508bf3357035d2b1192dfba134e10e540875d366ebc8bc353d5aa766b80c090b39c3a5d885d017f000001dcf8fdd5381f36008c3eac24cdde5ec0fea8f39240575ef0cb4406cb51ad419dd7810000000000000000000f424000034010000000011301840000fffffffffffa000000030000fffffffffffb8ff7d0df4eee78e558b4e07f82049aaa933f4f4932e13e1e7fee5cb103f7a0b50000fffffffffffa79176754ea338ffa080591b946a6ac1c47ff579ae7e45857bf01261ebe1c46ba0000fffffffffffcbdb924885293efdaa1ba8f556161f4fe525c19483def49b9af85c1623bc6d27b038402add69f29ad433cb7d4c9470f2d49d80245fd9e76a992197528a131e37711efac02c57de22185162001ffaf2e61b053b1d0e280d73ecec1b04916df2c65642d94a102cd4e1a07ee85714b6eada09d9cf81aeb15bfc72ddd003235530c58bbd0c0144902b10f36d2ebab3ce560abf15ceb1bef619491e0597a794fdafcfdf8708eec9e2d0501010702a5f8", + "00000000000000027512083907c74ed3a045e9bf772b3d72948eb93daf84a1cee57108800451aaf2035d2b1192dfba134e10e540875d366ebc8bc353d5aa766b80c090b39c3a5d885d017f000001dcf80239a9c9f2a91e69ba01800baf71f55efe457677b2e5cbd640b888dc1c9375b40000000000000000000f42400003401000000000c301340000ffffffffffff000000010000ffffffffffff0e07b6188dd51f15bb5cb9027950bf487a612dca57e2928de3f28f6ee796978b03840330b7ddf07e5bc779ea468875371ea25b560491c5feaeeb5e229ded3820d1d69103620748b3796c4988dd0fc63b92ae011dc989f15c433a55ed38e24318a43b4c93021bfe48bb1aded55878b00a3f00c5c1bffa1010510d8ba1c6372012ac9c3205d20201604aa7056ab8926038a846014bdbe4874ceef7ce45141b8009b0e2f49e7ec70501010702a5f8", + "0000000000000003222d999f537e32e9458c5db17a63e012dcced61340de06fda5bc30566270b0aa0266e4598d1d3c415f572a8488830b60f7e744ed9235eb0b1ba93283b315c03518017f0000017531932479f6d82ee59c7aa67b99568de0a31c202f6a3ff18a6bdd1ec22683cf026500000000000000000bebb3cb00034010000000009b010c0001000000000000000000000384021f90b5f38e0c0ea50bccfcf70a32cd4395c8c544e70636b7cc41831fe33fb4ce03bcfb0d457dfa07f508f434e6a2f040dd3dd233e7002dbe1c1b5d86ed5d3efd76030a4ce755504748f47401fc016578a52e104cbbd28251f10b11e4b3e55d0fe1d303986bdd0842662b8d0d18147630a720e952a2cda624c63ef4903357d27e54f7920501000702a5f8", + "0000000000000004a4a379248e49d207cc984646e632e1a31105a85708b9d6d961a5018fdd489f5a0266e4598d1d3c415f572a8488830b60f7e744ed9235eb0b1ba93283b315c03518017f000001970c7f07a15ce1fe1519d46536c4036f1c13527fa8bf52f6a5299b860f982ba2ed7e00000001000000000000753000034010000000009b010c000100000000000000000000038402c8aabcf1224df10e9d803dc3918797892fe0abec56d3e06f121bcebbe9ab0a2c03bd181375d57b8b1d15def9c5f9007b3c3ff98a140c0a44c9dc5f54ac7ea4baf30310952e08f9960711d8142dfa171c0fc2348762acea003f3897397f6ace8454130382da2a229450c4a8e8cea70bbd147eaaf981184bff8c1d70b70c30a494d848420501010702a5f8", + "000000000000000509eb55872cd9039ecd08281af756e23b15aad4129fd6a9bcd71b472114ebf43a0266e4598d1d3c415f572a8488830b60f7e744ed9235eb0b1ba93283b315c03518017f000001970c64ed91a21c10208d715b59801b12b4a6eff9ea9e4e7d45971c298b62d90ece8e00000000000000000000c35000034010000000009b010c000100000000000000000000038402e885f38e784050b386fb32d20935acc61059d8b02b6bec0ac2bfc8b2c5cf7f3103ae69dbfc6511ba0781c13113e16e1557a875b910cb1cb1fe1ef95a7edb36135a03758d5faa8515942873911e21869b1b90a4be72af14b394bc064da6ba518b087003750b588cd1fb8d60276c12c1c3eef7e302e3772414234404289db8c10f5731320501010702a5f8" + ] } }, "response": { @@ -1759,98 +1767,116 @@ }, "response": { "configs": { - "accept-htlc-tlv-type": { - "values_int": [], - "sources": [] + "developer": { + "set": true, + "source": "cmdline" }, - "addr": { - "values_str": [ - "127.0.0.1:19735" - ], - "sources": [ - "cmdline" - ] + "lightning-dir": { + "value_str": "/home/rusty/.lightning/regtest", + "source": "cmdline" }, - "alias": { - "value_str": "SILENTARTIST", + "network": { + "value_str": "regtest", + "source": "cmdline" + }, + "testnet": { + "set": false, + "source": "default" + }, + "testnet4": { + "set": false, + "source": "default" + }, + "signet": { + "set": false, + "source": "default" + }, + "mainnet": { + "set": false, + "source": "default" + }, + "regtest": { + "set": false, + "source": "default" + }, + "rpc-file": { + "value_str": "lightning-rpc", "source": "default" }, "allow-deprecated-apis": { "value_bool": true, "source": "cmdline" }, - "always-use-proxy": { - "value_bool": false, - "source": "default" + "plugin": { + "values_str": [], + "sources": [] }, - "announce-addr": { + "plugin-dir": { "values_str": [], "sources": [] }, - "announce-addr-discovered": { - "value_str": "auto", + "clear-plugins": { + "set": false, "source": "default" }, - "announce-addr-discovered-port": { - "value_int": 19846, - "source": "default" + "disable-plugin": { + "values_str": [], + "sources": [] }, - "autoclean-cycle": { - "value_int": 3600, - "source": "default", - "plugin": "/root/lightning/plugins/autoclean", - "dynamic": true + "important-plugin": { + "values_str": [], + "sources": [] }, - "autoclean-expiredinvoices-age": { - "value_int": 300, - "source": "/tmp/.lightning/regtest/config.setconfig:2", - "plugin": "/root/lightning/plugins/autoclean", - "dynamic": true + "always-use-proxy": { + "value_bool": false, + "source": "default" }, - "autoconnect-seeker-peers": { - "value_int": 0, + "daemon": { + "set": false, + "source": "default" + }, + "experimental-dual-fund": { + "set": true, "source": "cmdline" }, - "autolisten": { - "value_bool": false, + "experimental-splicing": { + "set": false, "source": "default" }, - "bind-addr": { - "values_str": [], - "sources": [] + "experimental-shutdown-wrong-funding": { + "set": false, + "source": "default" }, - "bitcoin-datadir": { - "value_str": "/tmp/.lightning/", - "source": "cmdline", - "plugin": "/root/lightning/plugins/bcli" + "experimental-quiesce": { + "set": false, + "source": "default" }, - "bitcoin-retry-timeout": { - "value_int": 60, - "source": "default", - "plugin": "/root/lightning/plugins/bcli" + "rgb": { + "value_str": "022d22", + "source": "default" }, - "bitcoin-rpcclienttimeout": { - "value_int": 60, - "source": "default", - "plugin": "/root/lightning/plugins/bcli" + "alias": { + "value_str": "SILENTARTIST-v25.12", + "source": "default" }, - "bitcoin-rpcpassword": { - "value_str": "rpcpass", - "source": "cmdline", - "plugin": "/root/lightning/plugins/bcli" + "pid-file": { + "value_str": "/home/rusty/.lightning/lightningd-regtest.pid", + "source": "default" }, - "bitcoin-rpcport": { - "value_int": 18332, - "source": "cmdline", - "plugin": "/root/lightning/plugins/bcli" + "ignore-fee-limits": { + "value_bool": false, + "source": "cmdline" }, - "bitcoin-rpcuser": { - "value_str": "rpcuser", - "source": "cmdline", - "plugin": "/root/lightning/plugins/bcli" + "watchtime-blocks": { + "value_int": 5, + "source": "cmdline" }, - "clear-plugins": { - "set": false, + "funding-confirms": { + "value_int": 1, + "source": "default" + }, + "require-confirmed-inputs": { + "value_bool": false, "source": "default" }, "cltv-delta": { @@ -1861,6 +1887,91 @@ "value_int": 5, "source": "cmdline" }, + "commit-time": { + "value_int": 10, + "source": "default" + }, + "fee-base": { + "value_int": 1, + "source": "default" + }, + "rescan": { + "value_int": 1, + "source": "cmdline" + }, + "fee-per-satoshi": { + "value_int": 10, + "source": "default" + }, + "htlc-minimum-msat": { + "value_msat": 0, + "source": "default" + }, + "htlc-maximum-msat": { + "value_msat": 18446744073709551615, + "source": "default" + }, + "max-concurrent-htlcs": { + "value_int": 483, + "source": "default" + }, + "max-dust-htlc-exposure-msat": { + "value_msat": 50000000, + "source": "default" + }, + "min-capacity-sat": { + "value_int": 500000, + "source": "/home/rusty/.lightning/regtest/config.setconfig:3", + "dynamic": true + }, + "addr": { + "values_str": [ + "127.0.0.1:30003" + ], + "sources": [ + "cmdline" + ] + }, + "bind-addr": { + "values_str": [], + "sources": [] + }, + "announce-addr": { + "values_str": [], + "sources": [] + }, + "announce-addr-discovered": { + "value_str": "auto", + "source": "default" + }, + "announce-addr-discovered-port": { + "value_int": 19846, + "source": "default" + }, + "offline": { + "set": false, + "source": "default" + }, + "autolisten": { + "value_bool": false, + "source": "default" + }, + "accept-htlc-tlv-type": { + "values_int": [], + "sources": [] + }, + "disable-dns": { + "set": true, + "source": "cmdline" + }, + "encrypted-hsm": { + "set": false, + "source": "default" + }, + "rpc-file-mode": { + "value_str": "0600", + "source": "default" + }, "commit-fee": { "value_int": 100, "source": "default" @@ -1869,333 +1980,234 @@ "value_int": 5, "source": "default" }, - "commit-time": { - "value_int": 10, + "min-emergency-msat": { + "value_msat": 25000000, "source": "default" }, - "daemon": { + "subdaemon": { + "values_str": [], + "sources": [] + }, + "invoices-onchain-fallback": { "set": false, "source": "default" }, - "dev-autoclean-max-batch": { - "value_int": 100, - "source": "default", - "plugin": "/root/lightning/plugins/autoclean", - "dynamic": true + "i-promise-to-fix-broken-api-user": { + "values_str": [], + "sources": [] + }, + "log-level": { + "value_str": "debug", + "source": "cmdline" + }, + "log-timestamps": { + "value_bool": true, + "source": "default" + }, + "log-prefix": { + "value_str": "lightningd-2 ", + "source": "cmdline" + }, + "log-file": { + "values_str": [ + "-", + "/home/rusty/.lightning/log" + ], + "sources": [ + "cmdline", + "cmdline" + ] + }, + "dev-no-plugin-checksum": { + "set": true, + "source": "cmdline" + }, + "dev-fail-on-subdaemon-fail": { + "set": true, + "source": "cmdline" }, "dev-bitcoind-poll": { "value_int": 3, "source": "cmdline" }, + "dev-fast-gossip": { + "set": true, + "source": "cmdline" + }, + "dev-no-version-checks": { + "set": true, + "source": "cmdline" + }, + "dev-hsmd-no-preapprove-check": { + "set": true, + "source": "cmdline" + }, + "autoconnect-seeker-peers": { + "value_int": 0, + "source": "cmdline" + }, "dev-crash-after": { "value_str": "3600", "source": "cmdline" }, - "dev-fail-on-subdaemon-fail": { - "set": true, + "dev-save-plugin-io": { + "value_str": "/tmp/plugin-io", "source": "cmdline" }, - "dev-fast-gossip": { - "set": true, - "source": "cmdline" + "autoclean-cycle": { + "value_int": 3600, + "source": "default", + "plugin": "/usr/local/libexec/plugins/autoclean", + "dynamic": true }, - "dev-hsmd-no-preapprove-check": { - "set": true, - "source": "cmdline" + "autoclean-expiredinvoices-age": { + "value_int": 300, + "source": "/home/rusty/.lightning/regtest/config.setconfig:2", + "plugin": "/usr/local/libexec/plugins/autoclean", + "dynamic": true }, - "dev-invoice-bpath-scid": { - "set": false, + "dev-autoclean-max-batch": { + "value_int": 100, "source": "default", - "plugin": "/root/lightning/plugins/offers" + "plugin": "/usr/local/libexec/plugins/autoclean", + "dynamic": true }, - "dev-no-plugin-checksum": { - "set": true, - "source": "cmdline" + "bitcoin-datadir": { + "value_str": "/var/lib/bitcoind", + "source": "cmdline", + "plugin": "/usr/local/libexec/plugins/bcli" }, - "dev-no-version-checks": { - "set": true, - "source": "cmdline" + "bitcoin-retry-timeout": { + "value_int": 60, + "source": "default", + "plugin": "/usr/local/libexec/plugins/bcli" }, - "developer": { - "set": true, - "source": "cmdline" + "bitcoin-rpcclienttimeout": { + "value_int": 60, + "source": "default", + "plugin": "/usr/local/libexec/plugins/bcli" }, - "disable-dns": { - "set": true, - "source": "cmdline" + "bitcoin-rpcpassword": { + "value_str": "rpcpass", + "source": "cmdline", + "plugin": "/usr/local/libexec/plugins/bcli" }, - "disable-mpp": { - "set": false, - "source": "default", - "plugin": "/root/lightning/plugins/pay" + "bitcoin-rpcport": { + "value_int": 8332, + "source": "cmdline", + "plugin": "/usr/local/libexec/plugins/bcli" }, - "disable-plugin": { - "values_str": [], - "sources": [] + "bitcoin-rpcuser": { + "value_str": "rpcuser", + "source": "cmdline", + "plugin": "/usr/local/libexec/plugins/bcli" }, - "encrypted-hsm": { - "set": false, - "source": "default" + "grpc-host": { + "value_str": "127.0.0.1", + "source": "default", + "plugin": "/usr/local/libexec/plugins/cln-grpc" }, - "experimental-dual-fund": { - "set": true, - "source": "cmdline" + "grpc-msg-buffer-size": { + "value_int": 1024, + "source": "default", + "plugin": "/usr/local/libexec/plugins/cln-grpc" }, - "experimental-quiesce": { - "set": false, - "source": "default" + "grpc-port": { + "value_int": 30004, + "source": "cmdline", + "plugin": "/usr/local/libexec/plugins/cln-grpc" }, - "experimental-shutdown-wrong-funding": { + "renepay-debug-mcf": { "set": false, - "source": "default" + "source": "default", + "plugin": "/usr/local/libexec/plugins/cln-renepay" }, - "experimental-splicing": { + "renepay-debug-payflow": { "set": false, - "source": "default" - }, - "exposesecret-passphrase": { - "value_str": "...", "source": "default", - "plugin": "/root/lightning/plugins/exposesecret" + "plugin": "/usr/local/libexec/plugins/cln-renepay" }, - "fee-base": { - "value_int": 1, - "source": "default" + "xpay-handle-pay": { + "value_bool": false, + "source": "default", + "plugin": "/usr/local/libexec/plugins/cln-xpay", + "dynamic": true }, - "fee-per-satoshi": { - "value_int": 10, - "source": "default" + "xpay-slow-mode": { + "value_bool": false, + "source": "default", + "plugin": "/usr/local/libexec/plugins/cln-xpay", + "dynamic": true }, - "fetchinvoice-noconnect": { - "set": false, + "exposesecret-passphrase": { + "value_str": "...", "source": "default", - "plugin": "/root/lightning/plugins/offers" + "plugin": "/usr/local/libexec/plugins/exposesecret" }, "funder-fund-probability": { "value_int": 100, "source": "default", - "plugin": "/root/lightning/plugins/funder" + "plugin": "/usr/local/libexec/plugins/funder" }, "funder-fuzz-percent": { "value_int": 0, "source": "default", - "plugin": "/root/lightning/plugins/funder" + "plugin": "/usr/local/libexec/plugins/funder" }, "funder-lease-requests-only": { "value_bool": true, "source": "default", - "plugin": "/root/lightning/plugins/funder" + "plugin": "/usr/local/libexec/plugins/funder" }, "funder-max-their-funding": { "value_str": "4294967295sat", "source": "default", - "plugin": "/root/lightning/plugins/funder" + "plugin": "/usr/local/libexec/plugins/funder" }, "funder-min-their-funding": { "value_str": "10000sat", "source": "default", - "plugin": "/root/lightning/plugins/funder" + "plugin": "/usr/local/libexec/plugins/funder" }, "funder-per-channel-max": { "value_str": "4294967295sat", "source": "default", - "plugin": "/root/lightning/plugins/funder" + "plugin": "/usr/local/libexec/plugins/funder" }, "funder-per-channel-min": { "value_str": "10000sat", "source": "default", - "plugin": "/root/lightning/plugins/funder" + "plugin": "/usr/local/libexec/plugins/funder" }, "funder-policy": { "value_str": "fixed", "source": "default", - "plugin": "/root/lightning/plugins/funder" + "plugin": "/usr/local/libexec/plugins/funder" }, "funder-policy-mod": { "value_str": "0", "source": "default", - "plugin": "/root/lightning/plugins/funder" + "plugin": "/usr/local/libexec/plugins/funder" }, "funder-reserve-tank": { "value_str": "0sat", "source": "default", - "plugin": "/root/lightning/plugins/funder" - }, - "funding-confirms": { - "value_int": 1, - "source": "default" - }, - "grpc-host": { - "value_str": "127.0.0.1", - "source": "default", - "plugin": "/root/lightning/plugins/cln-grpc" - }, - "grpc-msg-buffer-size": { - "value_int": 1024, - "source": "default", - "plugin": "/root/lightning/plugins/cln-grpc" - }, - "grpc-port": { - "value_int": 9736, - "source": "cmdline", - "plugin": "/root/lightning/plugins/cln-grpc" - }, - "htlc-maximum-msat": { - "value_msat": 18446744073709552000, - "source": "default" - }, - "htlc-minimum-msat": { - "value_msat": 0, - "source": "default" - }, - "i-promise-to-fix-broken-api-user": { - "values_str": [], - "sources": [] - }, - "ignore-fee-limits": { - "value_bool": false, - "source": "cmdline" - }, - "important-plugin": { - "values_str": [], - "sources": [] - }, - "invoices-onchain-fallback": { - "set": false, - "source": "default" - }, - "lightning-dir": { - "value_str": "/tmp/.lightning/", - "source": "cmdline" - }, - "log-file": { - "values_str": [ - "-", - "/tmp/.lightning/log" - ], - "sources": [ - "cmdline", - "cmdline" - ] - }, - "log-level": { - "value_str": "debug", - "source": "cmdline" - }, - "log-prefix": { - "value_str": "lightningd-2 ", - "source": "cmdline" - }, - "log-timestamps": { - "value_bool": true, - "source": "default" - }, - "mainnet": { - "set": false, - "source": "default" - }, - "max-concurrent-htlcs": { - "value_int": 483, - "source": "default" - }, - "max-dust-htlc-exposure-msat": { - "value_msat": 50000000, - "source": "default" - }, - "min-capacity-sat": { - "value_int": 500000, - "source": "/tmp/.lightning/regtest/config.setconfig:3", - "dynamic": true - }, - "min-emergency-msat": { - "value_msat": 25000000, - "source": "default" - }, - "network": { - "value_str": "regtest", - "source": "cmdline" - }, - "offline": { - "set": false, - "source": "default" - }, - "pid-file": { - "value_str": "/tmp/.lightning/lightningd-regtest.pid", - "source": "default" + "plugin": "/usr/local/libexec/plugins/funder" }, - "plugin": { - "values_str": [], - "sources": [] - }, - "plugin-dir": { - "values_str": [], - "sources": [] - }, - "regtest": { - "set": false, - "source": "default" - }, - "renepay-debug-mcf": { + "dev-invoice-bpath-scid": { "set": false, "source": "default", - "plugin": "/root/lightning/plugins/cln-renepay" + "plugin": "/usr/local/libexec/plugins/offers" }, - "renepay-debug-payflow": { + "fetchinvoice-noconnect": { "set": false, "source": "default", - "plugin": "/root/lightning/plugins/cln-renepay" - }, - "require-confirmed-inputs": { - "value_bool": false, - "source": "default" - }, - "rescan": { - "value_int": 1, - "source": "cmdline" - }, - "rgb": { - "value_str": "022d22", - "source": "default" - }, - "rpc-file": { - "value_str": "lightning-rpc", - "source": "default" + "plugin": "/usr/local/libexec/plugins/offers" }, - "rpc-file-mode": { - "value_str": "0600", - "source": "default" - }, - "signet": { - "set": false, - "source": "default" - }, - "subdaemon": { - "values_str": [], - "sources": [] - }, - "testnet": { - "set": false, - "source": "default" - }, - "testnet4": { + "disable-mpp": { "set": false, - "source": "default" - }, - "watchtime-blocks": { - "value_int": 5, - "source": "cmdline" - }, - "xpay-handle-pay": { - "value_bool": false, - "source": "default", - "plugin": "/root/lightning/plugins/cln-xpay", - "dynamic": true - }, - "xpay-slow-mode": { - "value_bool": false, "source": "default", - "plugin": "/root/lightning/plugins/cln-xpay", - "dynamic": true + "plugin": "/usr/local/libexec/plugins/pay" } } } diff --git a/doc/schemas/listforwards.json b/doc/schemas/listforwards.json index 337cbe86f822..c7025a12cc67 100644 --- a/doc/schemas/listforwards.json +++ b/doc/schemas/listforwards.json @@ -384,8 +384,8 @@ "id": "example:listforwards#1", "method": "listforwards", "params": { - "in_channel": "109x1x1", - "out_channel": "123x1x1", + "in_channel": "110x1x0", + "out_channel": "124x1x1", "status": "settled" } }, @@ -394,32 +394,32 @@ { "created_index": 12, "updated_index": 7, - "in_channel": "109x1x1", + "in_channel": "110x1x0", "in_htlc_id": 19, - "out_channel": "123x1x1", + "out_channel": "124x1x1", "out_htlc_id": 2, "in_msat": 50000501, "out_msat": 50000000, "fee_msat": 501, "status": "settled", "style": "tlv", - "received_time": 1738000000, - "resolved_time": 1738500000 + "received_time": 1738000000.0, + "resolved_time": 1738000000.0 }, { "created_index": 13, "updated_index": 8, - "in_channel": "109x1x1", + "in_channel": "110x1x0", "in_htlc_id": 20, - "out_channel": "123x1x1", + "out_channel": "124x1x1", "out_htlc_id": 3, "in_msat": 50000501, "out_msat": 50000000, "fee_msat": 501, "status": "settled", "style": "tlv", - "received_time": 1738010000, - "resolved_time": 1738510000 + "received_time": 1738000000.0, + "resolved_time": 1738000000.0 } ] } @@ -435,77 +435,171 @@ { "created_index": 1, "updated_index": 1, - "in_channel": "109x1x1", + "in_channel": "110x1x0", "in_htlc_id": 1, - "out_channel": "111x1x1", + "out_channel": "112x1x0", "out_htlc_id": 1, "in_msat": 10001, "out_msat": 10000, "fee_msat": 1, "status": "settled", "style": "tlv", - "received_time": 1738000000, - "resolved_time": 1738500000 + "received_time": 1738000000.0, + "resolved_time": 1738000000.0 }, { "created_index": 2, "updated_index": 2, - "in_channel": "109x1x1", + "in_channel": "110x1x0", "in_htlc_id": 2, - "out_channel": "111x1x1", + "out_channel": "112x1x0", "out_htlc_id": 2, "in_msat": 10001, "out_msat": 10000, "fee_msat": 1, "status": "settled", "style": "tlv", - "received_time": 1738010000, - "resolved_time": 1738510000 + "received_time": 1738000000.0, + "resolved_time": 1738000000.0 }, { "created_index": 3, "updated_index": 3, - "in_channel": "109x1x1", + "in_channel": "110x1x0", "in_htlc_id": 3, - "out_channel": "111x1x1", + "out_channel": "112x1x0", "out_htlc_id": 3, "in_msat": 10000202, "out_msat": 10000101, "fee_msat": 101, "status": "settled", "style": "tlv", - "received_time": 1738020000, - "resolved_time": 1738520000 + "received_time": 1738000000.0, + "resolved_time": 1738000000.0 }, { "created_index": 5, "updated_index": 4, - "in_channel": "109x1x1", + "in_channel": "110x1x0", "in_htlc_id": 5, - "out_channel": "111x1x1", + "out_channel": "112x1x0", "out_htlc_id": 4, "in_msat": 10001, "out_msat": 10000, "fee_msat": 1, "status": "settled", "style": "tlv", - "received_time": 1738030000, - "resolved_time": 1738530000 + "received_time": 1738000000.0, + "resolved_time": 1738000000.0 }, { "created_index": 6, "updated_index": 5, - "in_channel": "109x1x1", + "in_channel": "110x1x0", "in_htlc_id": 6, - "out_channel": "111x1x1", + "out_channel": "112x1x0", "out_htlc_id": 5, "in_msat": 50001, "out_msat": 50000, "fee_msat": 1, "status": "settled", "style": "tlv", - "received_time": 1738040000, - "resolved_time": 1738540000 + "received_time": 1738000000.0, + "resolved_time": 1738000000.0 + }, + { + "created_index": 7, + "updated_index": 6, + "in_channel": "110x1x0", + "in_htlc_id": 7, + "out_channel": "112x1x0", + "out_htlc_id": 7, + "in_msat": 10002, + "out_msat": 10001, + "fee_msat": 1, + "status": "settled", + "style": "tlv", + "received_time": 1738000000.0, + "resolved_time": 1738000000.0 + }, + { + "created_index": 8, + "in_channel": "110x1x0", + "in_htlc_id": 8, + "out_channel": "112x1x0", + "in_msat": 1002, + "status": "local_failed", + "failcode": 16394, + "failreason": "WIRE_UNKNOWN_NEXT_PEER", + "style": "tlv", + "received_time": 1738000000.0 + }, + { + "created_index": 9, + "in_channel": "110x1x0", + "in_htlc_id": 9, + "out_channel": "112x1x0", + "in_msat": 10001, + "status": "local_failed", + "failcode": 16394, + "failreason": "WIRE_UNKNOWN_NEXT_PEER", + "style": "tlv", + "received_time": 1738000000.0 + }, + { + "created_index": 10, + "in_channel": "110x1x0", + "in_htlc_id": 18, + "out_channel": "160x1x1", + "in_msat": 1000000, + "status": "local_failed", + "failcode": 16394, + "failreason": "WIRE_UNKNOWN_NEXT_PEER", + "style": "tlv", + "received_time": 1738000000.0 + }, + { + "created_index": 11, + "in_channel": "110x1x0", + "in_htlc_id": 17, + "out_channel": "124x1x1", + "out_htlc_id": 1, + "in_msat": 4000082, + "out_msat": 4000041, + "fee_msat": 41, + "status": "offered", + "style": "tlv", + "received_time": 1738000000.0 + }, + { + "created_index": 12, + "updated_index": 7, + "in_channel": "110x1x0", + "in_htlc_id": 19, + "out_channel": "124x1x1", + "out_htlc_id": 2, + "in_msat": 50000501, + "out_msat": 50000000, + "fee_msat": 501, + "status": "settled", + "style": "tlv", + "received_time": 1738000000.0, + "resolved_time": 1738000000.0 + }, + { + "created_index": 13, + "updated_index": 8, + "in_channel": "110x1x0", + "in_htlc_id": 20, + "out_channel": "124x1x1", + "out_htlc_id": 3, + "in_msat": 50000501, + "out_msat": 50000000, + "fee_msat": 501, + "status": "settled", + "style": "tlv", + "received_time": 1738000000.0, + "resolved_time": 1738000000.0 } ] } diff --git a/doc/schemas/listfunds.json b/doc/schemas/listfunds.json index d83f491e5fb0..2200c8bb6e87 100644 --- a/doc/schemas/listfunds.json +++ b/doc/schemas/listfunds.json @@ -360,67 +360,118 @@ "response": { "outputs": [ { - "txid": "txid000010000100001000010000100001000010000100001000010000100001", - "output": 2, - "amount_msat": 26000000, - "scriptpubkey": "scriptpubkey01010101010101010101010101010101010101010101010101010101", - "address": "bcrt1p0004040404040404040404040404040404040404040404040404040404", + "txid": "59d7273c7dde3b2786f7325da08a303779ee718443aaa25d03db19c9e909591b", + "output": 6, + "amount_msat": 1000000, + "scriptpubkey": "00146a1845bb0ea1f8efa63f00f325641db7350dcd5b", + "address": "bcrt1qdgvytwcw58uwlf3lqrej2eqaku6smn2mdvkycp", "status": "confirmed", - "blockheight": 160, + "blockheight": 141, "reserved": false }, { - "txid": "txid000020000200002000020000200002000020000200002000020000200002", - "output": 3, - "amount_msat": 27000000, - "scriptpubkey": "scriptpubkey02020202020202020202020202020202020202020202020202020202", - "address": "bcrt1p0004040404040404040404040404040404040404040404040404040404", + "txid": "1c863d8172c0a588a7d34426b7249d4a939f04d4ca4bad6c28d5913ed2dff12a", + "output": 0, + "amount_msat": 949204000, + "scriptpubkey": "5120ec722e1af72c414e9967d22b9809e96127fea27702c78dd7821b1c5aa9f08f59", + "address": "bcrt1pa3ezuxhh93q5axt86g4esz0fvynlagnhqtrcm4uzrvw9420s3avsck2pku", "status": "confirmed", "blockheight": 160, "reserved": false }, { - "txid": "txid000030000300003000030000300003000030000300003000030000300003", - "output": 4, - "amount_msat": 28000000, - "scriptpubkey": "scriptpubkey03030303030303030303030303030303030303030303030303030303", - "address": "bcrt1p0004040404040404040404040404040404040404040404040404040404", + "txid": "8ef1ed98891f7cf81b74c330a68de9fcff802870f91cf04a69c5db02118bc78e", + "output": 0, + "amount_msat": 497105000, + "scriptpubkey": "51205c063fe945e1a1e3a81072584a44d0c838919293953405f8e7ef9552788f94be", + "address": "bcrt1ptsrrl629uxs782qswfvy53xsequfry5nj56qt788a724y7y0jjlqxzv28f", + "status": "unconfirmed", + "reserved": false + }, + { + "txid": "19fec0dedc91354817beacd4155a6303a5ceaad0be36219b3d6e77836c8092a0", + "output": 0, + "amount_msat": 497105000, + "scriptpubkey": "5120370bae2303e8b17792a34ee04ada86a6b2b84fd76a01143babd899c7ed9e8372", + "address": "bcrt1pxu96ugcrazch0y4rfmsy4k5x56etsn7hdgq3gwatmzvu0mv7sdeql5x9qe", "status": "confirmed", - "blockheight": 160, + "blockheight": 159, + "reserved": false + }, + { + "txid": "4fc8702cec5b92e269cd5bf25f90559ee09f96b481e18cf7e2f5aca43394e7b7", + "output": 1, + "amount_msat": 2000000000, + "scriptpubkey": "00149edfbe21c9e3afb797debd0aeb518a9d97793ea8", + "address": "bcrt1qnm0mugwfuwhm0977h59wk5v2nkthj04gcw9vvh", + "status": "confirmed", + "blockheight": 159, + "reserved": false + }, + { + "txid": "d84db03fd012a98de6776fb10ee1c1de23282c33518aa32fdd5a15600f535ace", + "output": 0, + "amount_msat": 2000000000, + "scriptpubkey": "001461ed06c0632af284ec9e192e97758fc04692c829", + "address": "bcrt1qv8ksdsrr9tegfmy7ryhfwav0cprf9jpfqdfr4m", + "status": "confirmed", + "blockheight": 111, + "reserved": false + }, + { + "txid": "40b4acd3759ac69b5160488d73a5890a46bf4f013381e52e9171ee038b3c96d6", + "output": 0, + "amount_msat": 486914000, + "scriptpubkey": "512085d72025e78fd08bb61119f0987ab0041f50561ada6e130c645343db8c44c2af", + "address": "bcrt1pshtjqf083lgghds3r8cfs74sqs04q4s6mfhpxrry2dpahrzyc2hslyvm7n", + "status": "confirmed", + "blockheight": 122, + "reserved": false + }, + { + "txid": "6430642958a9aaa5c380bb9ea5048ae920557df4e8c8f959ee745f87f03662ed", + "output": 0, + "amount_msat": 198992853000, + "scriptpubkey": "512052021c61da23b2eda3d5000c6d812d0c9b088c237ed2a510abd94d8c3f7c421d", + "address": "bcrt1p2gppccw6ywewmg74qqxxmqfdpjds3rpr0mf22y9tm9xcc0muggwsea9nkf", + "status": "confirmed", + "blockheight": 137, "reserved": false } ], "channels": [ { - "peer_id": "nodeid020202020202020202020202020202020202020202020202020202020202", + "peer_id": "035d2b1192dfba134e10e540875d366ebc8bc353d5aa766b80c090b39c3a5d885d", "connected": true, "state": "CHANNELD_NORMAL", - "channel_id": "channelid0120000120000120000120000120000120000120000120000120000", - "short_channel_id": "109x1x1", - "our_amount_msat": 36000000, - "amount_msat": 11000000, - "funding_txid": "txid010010100101001010010100101001010010100101001010010100101001", + "channel_id": "ecabe6d86abdd57565b3fb7e7c5d724e60ca1a07633951769b5dbfa48dc884b3", + "short_channel_id": "124x1x1", + "our_amount_msat": 899996000, + "amount_msat": 1000000000, + "funding_txid": "148a366c9a72e40af01daca6acc24e0a5648d0efb7e01f4708f23412d9deba69", "funding_output": 1 }, { - "peer_id": "nodeid050505050505050505050505050505050505050505050505050505050505", - "connected": false, - "state": "ONCHAIN", - "channel_id": "channelid1300013000130001300013000130001300013000130001300013000", - "our_amount_msat": 37000000, - "amount_msat": 12000000, - "funding_txid": "txid010020100201002010020100201002010020100201002010020100201002", - "funding_output": 2 + "peer_id": "0266e4598d1d3c415f572a8488830b60f7e744ed9235eb0b1ba93283b315c03518", + "connected": true, + "state": "CHANNELD_NORMAL", + "channel_id": "252d1b0a1e57895e84137f28cf19ab2c35847e284c112fefdecc7afeaa5c1de7", + "short_channel_id": "110x1x0", + "our_amount_msat": 609507210, + "amount_msat": 1000000000, + "funding_txid": "63f74346eda6b8620ec24f86e2f8982ef3dade95f8efd00b372a75b2893b6f0d", + "funding_output": 0 }, { - "peer_id": "nodeid030303030303030303030303030303030303030303030303030303030303", + "peer_id": "0382ce59ebf18be7d84677c2e35f23294b9992ceca95491fcf8a56c6cb2d9de199", "connected": false, - "state": "ONCHAIN", - "channel_id": "channelid1100011000110001100011000110001100011000110001100011000", - "our_amount_msat": 38000000, - "amount_msat": 13000000, - "funding_txid": "txid010030100301003010030100301003010030100301003010030100301003", - "funding_output": 3 + "state": "CLOSINGD_COMPLETE", + "channel_id": "f4e1de801de57374d5737da622611e3a1ad9f16d5df9c30fceecc11ce732eeeb", + "short_channel_id": "160x1x1", + "our_amount_msat": 500000000, + "amount_msat": 1000000000, + "funding_txid": "1c863d8172c0a588a7d34426b7249d4a939f04d4ca4bad6c28d5913ed2dff12a", + "funding_output": 1 } ] } diff --git a/doc/schemas/listhtlcs.json b/doc/schemas/listhtlcs.json index 6507dc4c7341..0e25d38796f3 100644 --- a/doc/schemas/listhtlcs.json +++ b/doc/schemas/listhtlcs.json @@ -171,7 +171,7 @@ "id": "example:listhtlcs#1", "method": "listhtlcs", "params": [ - "109x1x1" + "110x1x0" ] }, "response": { @@ -179,56 +179,254 @@ { "created_index": 1, "updated_index": 9, - "short_channel_id": "109x1x1", + "short_channel_id": "110x1x0", "id": 0, - "expiry": 126, + "expiry": 127, "direction": "out", "amount_msat": 500000000, - "payment_hash": "paymenthashdelpay10101010101010101010101010101010101010101010101", + "payment_hash": "342cbb1cb564e8f32eb64fe8c254abf5ec5f6b87a0f8de7909caf8e658f3bd2a", "state": "RCVD_REMOVE_ACK_REVOCATION" }, { "created_index": 2, "updated_index": 18, - "short_channel_id": "109x1x1", + "short_channel_id": "110x1x0", "id": 1, - "expiry": 135, + "expiry": 137, "direction": "out", "amount_msat": 10001, - "payment_hash": "paymenthashinvl0310031003100310031003100310031003100310031003100", + "payment_hash": "9562ee18e942b0eb2e36050c108efcb34cb07e5cdbe28d08d26bb71af1556c2f", "state": "RCVD_REMOVE_ACK_REVOCATION" }, { "created_index": 3, "updated_index": 27, - "short_channel_id": "109x1x1", + "short_channel_id": "110x1x0", "id": 2, - "expiry": 149, + "expiry": 150, "direction": "out", "amount_msat": 10001, - "payment_hash": "paymenthashkey01k101k101k101k101k101k101k101k101k101k101k101k101", + "payment_hash": "097dcfa3b0bc58d499908855dae7d442854a02d4f2ffcc625f9385ed74f3256e", "state": "RCVD_REMOVE_ACK_REVOCATION" }, { "created_index": 4, "updated_index": 36, - "short_channel_id": "109x1x1", + "short_channel_id": "110x1x0", "id": 3, - "expiry": 155, + "expiry": 156, "direction": "out", "amount_msat": 10000202, - "payment_hash": "paymenthashkey02k201k201k201k201k201k201k201k201k201k201k201k201", + "payment_hash": "9bf787fe700121009e2ecdca290632c8bf2da853527c700aa5746173981ae584", "state": "RCVD_REMOVE_ACK_REVOCATION" }, { "created_index": 5, "updated_index": 44, - "short_channel_id": "109x1x1", + "short_channel_id": "110x1x0", "id": 4, - "expiry": 152, + "expiry": 153, "direction": "out", "amount_msat": 10001, - "payment_hash": "paymenthashkey03k301k301k301k301k301k301k301k301k301k301k301k301", + "payment_hash": "da6c0b6d30ac35f62762bc7114d64d323dc79fb858061902263eb72df6310caf", + "state": "RCVD_REMOVE_ACK_REVOCATION" + }, + { + "created_index": 6, + "updated_index": 53, + "short_channel_id": "110x1x0", + "id": 5, + "expiry": 150, + "direction": "out", + "amount_msat": 10001, + "payment_hash": "da6c0b6d30ac35f62762bc7114d64d323dc79fb858061902263eb72df6310caf", + "state": "RCVD_REMOVE_ACK_REVOCATION" + }, + { + "created_index": 7, + "updated_index": 62, + "short_channel_id": "110x1x0", + "id": 6, + "expiry": 133, + "direction": "out", + "amount_msat": 50001, + "payment_hash": "ab3a5a971aa3b21494f7ce646f077232c10c9917c33375935c1aebfa571fa1a1", + "state": "RCVD_REMOVE_ACK_REVOCATION" + }, + { + "created_index": 8, + "updated_index": 71, + "short_channel_id": "110x1x0", + "id": 7, + "expiry": 139, + "direction": "out", + "amount_msat": 10002, + "payment_hash": "1bb513fb2fbde40592243877d9f404ba3668275e2eeacd9c7264f34f04d37fd1", + "state": "RCVD_REMOVE_ACK_REVOCATION" + }, + { + "created_index": 9, + "updated_index": 79, + "short_channel_id": "110x1x0", + "id": 8, + "expiry": 143, + "direction": "out", + "amount_msat": 1002, + "payment_hash": "47c148c1746366e4c2c7496621c22002bc2711b4d9c52cbb9c7b1fdca59c8579", + "state": "RCVD_REMOVE_ACK_REVOCATION" + }, + { + "created_index": 10, + "updated_index": 87, + "short_channel_id": "110x1x0", + "id": 9, + "expiry": 138, + "direction": "out", + "amount_msat": 10001, + "payment_hash": "53a72d006c295bac2f2f81e6b82dd67193555a1859f7c90f84678b57ce6d10e2", + "state": "RCVD_REMOVE_ACK_REVOCATION" + }, + { + "created_index": 11, + "updated_index": 96, + "short_channel_id": "110x1x0", + "id": 0, + "expiry": 137, + "direction": "in", + "amount_msat": 1000000, + "payment_hash": "cedc7bf0a9109bd3cd86c5a0c90faa812b8a0ca3d65671c8b4001aae2647349f", + "state": "SENT_REMOVE_ACK_REVOCATION" + }, + { + "created_index": 12, + "updated_index": 104, + "short_channel_id": "110x1x0", + "id": 10, + "expiry": 145, + "direction": "out", + "amount_msat": 1000, + "payment_hash": "ff498c3300881ea7a3c04193e43f123444c644662008108c23229da3511bedd1", + "state": "RCVD_REMOVE_ACK_REVOCATION" + }, + { + "created_index": 13, + "updated_index": 113, + "short_channel_id": "110x1x0", + "id": 11, + "expiry": 269, + "direction": "out", + "amount_msat": 400000, + "payment_hash": "e0b5658ef8e23cab6546ea5f7794a8c760483abf3613b34f401df4128944afae", + "state": "RCVD_REMOVE_ACK_REVOCATION" + }, + { + "created_index": 14, + "updated_index": 122, + "short_channel_id": "110x1x0", + "id": 12, + "expiry": 137, + "direction": "out", + "amount_msat": 2000, + "payment_hash": "2a25861f15614825bdfd154d422342f159446f0d54dc24e8385d31520023f8cb", + "state": "RCVD_REMOVE_ACK_REVOCATION" + }, + { + "created_index": 15, + "updated_index": 131, + "short_channel_id": "110x1x0", + "id": 13, + "expiry": 137, + "direction": "out", + "amount_msat": 3000, + "payment_hash": "36a32c9d7ee7baf5c15d1b9b27d085dce9c697fb427d0ce68342acce00e1586f", + "state": "RCVD_REMOVE_ACK_REVOCATION" + }, + { + "created_index": 16, + "updated_index": 140, + "short_channel_id": "110x1x0", + "id": 14, + "expiry": 137, + "direction": "out", + "amount_msat": 5000, + "payment_hash": "8e3ea1fb26e3e5e8627064e68e424713e3393752457ffe19a565fea54f6307d6", + "state": "RCVD_REMOVE_ACK_REVOCATION" + }, + { + "created_index": 17, + "updated_index": 149, + "short_channel_id": "110x1x0", + "id": 15, + "expiry": 137, + "direction": "out", + "amount_msat": 4000, + "payment_hash": "09963074ab0fc38044f890c763c658e7ea4f8b31ccbcfc6a0191163f5cdc4360", + "state": "RCVD_REMOVE_ACK_REVOCATION" + }, + { + "created_index": 18, + "updated_index": 158, + "short_channel_id": "110x1x0", + "id": 16, + "expiry": 137, + "direction": "out", + "amount_msat": 1000, + "payment_hash": "9a33e433faddc3371f6a56a34146c82629d567520ddaf28244bd9f196288af71", + "state": "RCVD_REMOVE_ACK_REVOCATION" + }, + { + "created_index": 19, + "updated_index": 165, + "short_channel_id": "110x1x0", + "id": 17, + "expiry": 182, + "direction": "out", + "amount_msat": 4000082, + "payment_hash": "2b924194d169a96d9cc35b66ae912507e18ace9ef679fcb5324636ff73be410a", + "state": "SENT_ADD_ACK_REVOCATION" + }, + { + "created_index": 20, + "updated_index": 170, + "short_channel_id": "110x1x0", + "id": 18, + "expiry": 166, + "direction": "out", + "amount_msat": 1000000, + "payment_hash": "2b924194d169a96d9cc35b66ae912507e18ace9ef679fcb5324636ff73be410a", + "state": "RCVD_REMOVE_ACK_REVOCATION" + }, + { + "created_index": 21, + "updated_index": 179, + "short_channel_id": "110x1x0", + "id": 19, + "expiry": 172, + "direction": "out", + "amount_msat": 50000501, + "payment_hash": "1d3a502d4b52d3c22af20f93605cadec2194da2e077b9fbbd15fa379c6bfbbdd", + "state": "RCVD_REMOVE_ACK_REVOCATION" + }, + { + "created_index": 22, + "updated_index": 188, + "short_channel_id": "110x1x0", + "id": 20, + "expiry": 172, + "direction": "out", + "amount_msat": 50000501, + "payment_hash": "39a88ddc69c973a791043a877a415eda840888849a5d7175c9666104513f9235", + "state": "RCVD_REMOVE_ACK_REVOCATION" + }, + { + "created_index": 23, + "updated_index": 196, + "short_channel_id": "110x1x0", + "id": 21, + "expiry": 172, + "direction": "out", + "amount_msat": 50000501, + "payment_hash": "287476fe90c160d09bf95156469dc3cfc82e366c4676c9b774f26051bd465a96", "state": "RCVD_REMOVE_ACK_REVOCATION" } ] @@ -249,12 +447,12 @@ { "created_index": 4, "updated_index": 36, - "short_channel_id": "109x1x1", + "short_channel_id": "110x1x0", "id": 3, - "expiry": 155, + "expiry": 156, "direction": "out", "amount_msat": 10000202, - "payment_hash": "paymenthashkey02k201k201k201k201k201k201k201k201k201k201k201k201", + "payment_hash": "9bf787fe700121009e2ecdca290632c8bf2da853527c700aa5746173981ae584", "state": "RCVD_REMOVE_ACK_REVOCATION" } ] diff --git a/doc/schemas/listinvoicerequests.json b/doc/schemas/listinvoicerequests.json index f3bdaf9dde4d..cce3572342a1 100644 --- a/doc/schemas/listinvoicerequests.json +++ b/doc/schemas/listinvoicerequests.json @@ -105,16 +105,16 @@ "id": "example:listinvoicerequests#1", "method": "listinvoicerequests", "params": [ - "invreqid03030303030303030303030303030303030303030303030303030303" + "c5b8ebc06bdc246d7b852ce5637be459d3c053a5b3f8f68854f97af7371c9a50" ] }, "response": { "invoicerequests": [ { - "invreq_id": "invreqid02020202020202020202020202020202020202020202020202020202", + "invreq_id": "c5b8ebc06bdc246d7b852ce5637be459d3c053a5b3f8f68854f97af7371c9a50", "active": false, "single_use": true, - "bolt12": "lno1qgsq000bolt240002400024000240002400024000240002400024000240002400024000240002400024000240002400024000240002400024000240002400024000", + "bolt12": "lnr1qqg99gqg2990zl3j22sqs52279lryzsk2fjhzat9wd6xjmn8ypnx7u3qd9h8vmmfvdj3yyrrd35kw6r5de5kueeqwd6x7un92qsqvgnwgcg35z6ee2h3yczraddm72xrfua9uve2rlrm9deu7xyfzr6jqwvfdqzcyypz6g3kyz34nfrl7lm6c3rushzxey3a55ecjgs6qp2vz8q78j336k0sgr76j2yl0lrljzljjdz8ztcpryunwgfk4hzz3sle3mhaw8v2gc4dn9map7v6dlpya98jy2mcrwe27qcsywlfqp6dhh30l54sj0e8tqsk", "used": false } ] @@ -129,18 +129,18 @@ "response": { "invoicerequests": [ { - "invreq_id": "invreqid02020202020202020202020202020202020202020202020202020202", + "invreq_id": "22c3d45d0a9640a827ed1fefb9a07c947e38fa4c086f1f16d94882848e264868", "active": false, "single_use": true, - "bolt12": "lno1qgsq000bolt240002400024000240002400024000240002400024000240002400024000240002400024000240002400024000240002400024000240002400024000", - "used": false + "bolt12": "lnr1qqg99gqg2990zl3322sqs52279lrzzst2d5k6urvv5s8getnw3gzqp3zderpzxstt8927ynqg044h0egcd8n5h3n9g0u0v4h8ncc3yg02gps7sjqtqssytfzxcs2xkdy0lml0tzy0jzugmyj8kjn8zfzrgq9fsgurc72x82e7pqfylfzzhcux84v2552lt7p2ekunuamtsdgyk34a86m4zklkdjjdzt757t4sp0m8cp9tdj6hfe67mcuwl3q7zr4sr4z4gn2fvksykkn5g", + "used": true }, { - "invreq_id": "invreqid01010101010101010101010101010101010101010101010101010101", + "invreq_id": "c5b8ebc06bdc246d7b852ce5637be459d3c053a5b3f8f68854f97af7371c9a50", "active": false, "single_use": true, - "bolt12": "lno1qgsq000bolt210002100021000210002100021000210002100021000210002100021000210002100021000210002100021000210002100021000210002100021000", - "used": true + "bolt12": "lnr1qqg99gqg2990zl3j22sqs52279lryzsk2fjhzat9wd6xjmn8ypnx7u3qd9h8vmmfvdj3yyrrd35kw6r5de5kueeqwd6x7un92qsqvgnwgcg35z6ee2h3yczraddm72xrfua9uve2rlrm9deu7xyfzr6jqwvfdqzcyypz6g3kyz34nfrl7lm6c3rushzxey3a55ecjgs6qp2vz8q78j336k0sgr76j2yl0lrljzljjdz8ztcpryunwgfk4hzz3sle3mhaw8v2gc4dn9map7v6dlpya98jy2mcrwe27qcsywlfqp6dhh30l54sj0e8tqsk", + "used": false } ] } diff --git a/doc/schemas/listinvoices.json b/doc/schemas/listinvoices.json index c90a72ce79c3..9eb3876ff7a8 100644 --- a/doc/schemas/listinvoices.json +++ b/doc/schemas/listinvoices.json @@ -316,15 +316,15 @@ "invoices": [ { "label": "lbl_l21", - "bolt11": "lnbcrt100n1pnt2bolt11invl020100000000bolt11invl020100000000bolt11invl020100000000bolt11invl020100000000bolt11invl020100000000bolt11invl020100000000bolt11invl020100000000bolt11invl020100000000bolt11invl020100000000bolt11invl020100000000", - "payment_hash": "paymenthashinvl0210021002100210021002100210021002100210021002100", + "bolt11": "lnbcrt1pne035qsp5j7czxfpnquxg9vcw9crqh87raxz0glv8n6gx88jwdsp28pmfk68qpp5uz6ktrhcug72ke2xaf0h099gcasysw4lxcfmxn6qrh6p9z2y47hqdqcdserzgryv4ekxunfwp6xjmmwxqyjw5qcqp9rzjqdwjkyvjm7apxnssu4qgwhfkd67ghs6n6k48v6uqczgt88p6tky96qqqwqqqqqgqqqqqqqqpqqqqqzsqqc9qxpqysgqn7ge40jwkslz0j0vhfzy743lathy2sqy2dfyyahalxszs979d9s5v89ten2zcrna3xlxhkerk7p9k7a6u5fdddx5dzzas4ye2yp6desq3zwkg2", + "payment_hash": "e0b5658ef8e23cab6546ea5f7794a8c760483abf3613b34f401df4128944afae", "status": "paid", "pay_index": 4, "amount_received_msat": 400000, - "paid_at": 1738500000, - "payment_preimage": "paymentpreimager010101010101010101010101010101010101010101010101", + "paid_at": 1738000000, + "payment_preimage": "08377744ca985c1908377744ca985c1908377744ca985c1908377744ca985c19", "description": "l21 description", - "expires_at": 1739000000, + "expires_at": 1738604800, "created_index": 2, "updated_index": 4 } @@ -341,65 +341,209 @@ "invoices": [ { "label": "lbl balance l1 to l2", - "bolt11": "lnbcrt222n1pnt3005720bolt114000101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101", - "payment_hash": "paymenthashdelpay10101010101010101010101010101010101010101010101", + "bolt11": "lnbcrt5m1pne035qsp5y09we8jhy4ug66c945kzkqyqzrhhqsap22q07wnawlgntwa5ca2spp5xsktk894vn50xt4kfl5vy49t7hk976u85rudu7gfetuwvk8nh54qdpcv3jhxcmjd9c8g6t0dcs8xetwvss8xmmdv5s8xct5wvsxcvfqw3hjqmpjxqyjw5qcqp9rzjqdwjkyvjm7apxnssu4qgwhfkd67ghs6n6k48v6uqczgt88p6tky96qqqwqqqqqgqqqqqqqqpqqqqqzsqqc9qxpqysgqvsru69ylhpkda6980sl996q2fmld2zszepv79zf747la6zzt8mf8p0qw80w6j8d5evc72fls4d99sza23nnm6pahjqrs8kv3apdttjcq2mm2xw", + "payment_hash": "342cbb1cb564e8f32eb64fe8c254abf5ec5f6b87a0f8de7909caf8e658f3bd2a", "amount_msat": 500000000, "status": "paid", "pay_index": 1, "amount_received_msat": 500000000, - "paid_at": 1738500000, - "payment_preimage": "paymentpreimgdp1010101010101010101010101010101010101010101010101", + "paid_at": 1738000000, + "payment_preimage": "08377744ca985c1808377744ca985c1808377744ca985c1808377744ca985c18", "description": "description send some sats l1 to l2", - "expires_at": 1739000000, + "expires_at": 1738604800, "created_index": 1, "updated_index": 1 }, { "label": "lbl_l21", - "bolt11": "lnbcrt100n1pnt2bolt11invl020100000000bolt11invl020100000000bolt11invl020100000000bolt11invl020100000000bolt11invl020100000000bolt11invl020100000000bolt11invl020100000000bolt11invl020100000000bolt11invl020100000000bolt11invl020100000000", - "payment_hash": "paymenthashinvl0210021002100210021002100210021002100210021002100", + "bolt11": "lnbcrt1pne035qsp5j7czxfpnquxg9vcw9crqh87raxz0glv8n6gx88jwdsp28pmfk68qpp5uz6ktrhcug72ke2xaf0h099gcasysw4lxcfmxn6qrh6p9z2y47hqdqcdserzgryv4ekxunfwp6xjmmwxqyjw5qcqp9rzjqdwjkyvjm7apxnssu4qgwhfkd67ghs6n6k48v6uqczgt88p6tky96qqqwqqqqqgqqqqqqqqpqqqqqzsqqc9qxpqysgqn7ge40jwkslz0j0vhfzy743lathy2sqy2dfyyahalxszs979d9s5v89ten2zcrna3xlxhkerk7p9k7a6u5fdddx5dzzas4ye2yp6desq3zwkg2", + "payment_hash": "e0b5658ef8e23cab6546ea5f7794a8c760483abf3613b34f401df4128944afae", "status": "paid", "pay_index": 4, "amount_received_msat": 400000, - "paid_at": 1738510000, - "payment_preimage": "paymentpreimager010101010101010101010101010101010101010101010101", + "paid_at": 1738000000, + "payment_preimage": "08377744ca985c1908377744ca985c1908377744ca985c1908377744ca985c19", "description": "l21 description", - "expires_at": 1739010000, + "expires_at": 1738604800, "created_index": 2, "updated_index": 4 }, { "label": "lbl_l22", - "bolt11": "lnbcrt100n1pnt2bolt11invl020200000000bolt11invl020200000000bolt11invl020200000000bolt11invl020200000000bolt11invl020200000000bolt11invl020200000000bolt11invl020200000000bolt11invl020200000000bolt11invl020200000000bolt11invl020200000000", - "payment_hash": "paymenthashinvl0220022002200220022002200220022002200220022002200", + "bolt11": "lnbcrt2u1pne035qsp5u7glcpdagz8xcw9nw4t7xjhad5fjk9vu9h6s4da9tue6cj6x772spp52jyd84j7psgd4u2tp627hsrf9ntzptcjl3ywn03v4fdsehw4s2ysdqcdserygryv4ekxunfwp6xjmmwxqyjw5qcqp9rzjqdwjkyvjm7apxnssu4qgwhfkd67ghs6n6k48v6uqczgt88p6tky96qqqwqqqqqgqqqqqqqqpqqqqqzsqqc9qxpqysgqdyykau6tf258sy2g5q94ma8jqthrs7zszaj2y4wj23dznnz5rcvxvxvkkv76uj076mz5std62p3gf2kvycq29t69345667cvs0pmvzsq4lawhd", + "payment_hash": "5488d3d65e0c10daf14b0e95ebc0692cd620af12fc48e9be2caa5b0cddd58289", "amount_msat": 200000, "status": "unpaid", "description": "l22 description", - "expires_at": 1739020000, - "created_index": 3, - "paid_at": 1738520000 + "expires_at": 1738604800, + "created_index": 3 }, { "label": "label inv_l24", - "bolt11": "lnbcrt100n1pnt2bolt11invl020400000000bolt11invl020400000000bolt11invl020400000000bolt11invl020400000000bolt11invl020400000000bolt11invl020400000000bolt11invl020400000000bolt11invl020400000000bolt11invl020400000000bolt11invl020400000000", - "payment_hash": "paymenthashinvl0240024002400240024002400240024002400240024002400", + "bolt11": "lnbcrt1230n1pne035qsp5s2tkvc25q0p9qu5ghf6pal04thl4kl9q9jggx0fetq5tx7szc0gspp5mmpxzxv7tkpxjhvwyztwky6qlsw3umd87h7x7dvn0hck5t0lc84sdqlv3jhxcmjd9c8g6t0dcsxjmnktakrydqcqp99qxpqysgqa9q3g64xjfq3wqpyxn378zzs3grvlvhmpvtcedvzf0rq0ycu4xgr0ly93ut0wjdyfgfaldteev97qqt6q539qy7ktng4ylfj85kzmkqp5lsp6u", + "payment_hash": "dec261199e5d82695d8e2096eb1340fc1d1e6da7f5fc6f35937df16a2dffc1eb", "amount_msat": 123000, "status": "unpaid", "description": "description inv_l24", - "expires_at": 1739030000, - "created_index": 4, - "paid_at": 1738530000 + "expires_at": 1738003600, + "created_index": 4 }, { "label": "label inv_l25", - "bolt11": "lnbcrt100n1pnt2bolt11invl020500000000bolt11invl020500000000bolt11invl020500000000bolt11invl020500000000bolt11invl020500000000bolt11invl020500000000bolt11invl020500000000bolt11invl020500000000bolt11invl020500000000bolt11invl020500000000", - "payment_hash": "paymenthashinvl0250025002500250025002500250025002500250025002500", + "bolt11": "lnbcrt1240n1pne035qsp590nuq4ek3zp48qm5rve22ye75jc6y564fh8qjrlr0j8at7egmtuqpp5ms3uy3duktelvxj02h6nrdzhge83uu5xumyrmxwu4akpezzv80hsdqlv3jhxcmjd9c8g6t0dcsxjmnktakrydgcqp99qxpqysgqad46gpve6njtqr9zsvrz8a56ndz953s88kedwuzge3d4tgv8gfk8u8al36nwmnchrkr7wwy7vc04fdvnewhusxcp457jucl5a5lt4dsqzr7sj8", + "payment_hash": "dc23c245bcb2f3f61a4f55f531b457464f1e7286e6c83d99dcaf6c1c884c3bef", "amount_msat": 124000, "status": "unpaid", "description": "description inv_l25", - "expires_at": 1739040000, - "created_index": 5, - "paid_at": 1738540000 + "expires_at": 1738003600, + "created_index": 5 + }, + { + "label": "label inv_l26", + "bolt11": "lnbcrt1250n1pne035qsp57thr33aj04aek8738nm42nntaydcaw4zswr047ja0gxy5sea8egqpp58veqg20enh8z5w8avz0jyznsfgnxdgs9km2mlugn62nvypjhwj5sdqlv3jhxcmjd9c8g6t0dcsxjmnktakrydscqp99qxpqysgq9569pf2lk3desk0xz8l90eeanhkz2j4e4yk8wlzwsy8efmm07mdn5n62ymlymt73yvxwyc4zuj45vwka2ta0rmntwxu4m2qp46h2yfcq5muart", + "payment_hash": "3b320429f99dce2a38fd609f220a704a2666a205b6d5bff113d2a6c2065774a9", + "amount_msat": 125000, + "status": "unpaid", + "description": "description inv_l26", + "expires_at": 1738003600, + "created_index": 6 + }, + { + "label": "lbl_l13", + "bolt11": "lnbcrt1u1pne035qsp5j9w8t9p2y6an5se63n3vkpp8c20vdsthtn78sv5t2lmt57l742wqpp5wtxkappzcsrlkmgfs6g0zyct0hkhashh7hsaxz7e65slq9fkx7fsdqcdscnxgryv4ekxunfwp6xjmmwxqyjw5qcqp9rzjqgkjyd3q5dv6gllh77kygly9c3kfy0d9xwyjyxsq2nq3c83u5vw4jqqqdcqqqqgqqqqqqqqpqqqqqzsqqc9qxpqysgq2dmxu8vh2mmklw3vrq0dy4a69v7ga4mauty4cswwga4j4ahx797sjtzpj0qty3qkxcvw3nndx8f9v9230y4sjyf298m6uwz8thz9rpcqz05u35", + "payment_hash": "72cd6e8422c407fb6d098690f1130b7ded7ec2f7f5e1d30bd9d521f015363793", + "amount_msat": 100000, + "status": "unpaid", + "description": "l13 description", + "expires_at": 1738604800, + "created_index": 7 + }, + { + "label": "test_injectpaymentonion1", + "bolt11": "lnbcrt10n1pne035qsp5qwyv8rs63ramlntxnjyqfyl3usj9fcvw2wcekvssera3c674p2aspp5layccvcq3q020g7qgxf7g0cjx3zvv3rxyqypprpry2w6x5gmahgsdp6w3jhxapqd9hx5etrw3cxz7tdv4h8gmmwd9hkuvfqv3jhxcmjd9c8g6t0dcxqyjw5qcqp99qxpqysgqanlwwp0fnysrz8wgx44kdupzfv4l9x0l8daxa9zyqcwwx4de5rv4s3udrmgc6w03dtn0h3kcvwhv602fpryz06wrnk9k5d5z6qtx4mqqyhqgf2", + "payment_hash": "ff498c3300881ea7a3c04193e43f123444c644662008108c23229da3511bedd1", + "amount_msat": 1000, + "status": "paid", + "pay_index": 2, + "amount_received_msat": 1000, + "paid_at": 1738000000, + "payment_preimage": "08377744ca985c1e08377744ca985c1e08377744ca985c1e08377744ca985c1e", + "description": "test injectpaymentonion1 description", + "expires_at": 1738604800, + "created_index": 8, + "updated_index": 2 + }, + { + "label": "lbl_l23", + "bolt11": "lnbcrt1pne035qsp5hu0s83c7qg77lgtagcr58sf07fvrqf27j67s2ptguw9wk8ruexfqpp50ge88lv20ge4a9ny7xc7rg8p6vqvnuuzwllkk2zng6txu7sfz3cqdqcdserxgryv4ekxunfwp6xjmmwxqyjw5qcqp99qxpqysgqrwjd83fygx3zcnupx0ftnpewajss6n4vpsugju00w8hu5lu0neujqhgw8jygwmawz8jq8pp2xu6r78f3m9yld6ky7539x5g5ahvtmqqqmgfjaa", + "payment_hash": "7a3273fd8a7a335e9664f1b1e1a0e1d300c9f38277ff6b285346966e7a091470", + "status": "paid", + "pay_index": 3, + "amount_received_msat": 9900, + "paid_at": 1738000000, + "payment_preimage": "08377744ca985c1f08377744ca985c1f08377744ca985c1f08377744ca985c1f", + "description": "l23 description", + "expires_at": 1738604800, + "created_index": 9, + "updated_index": 3 + }, + { + "label": "dca9774ba2925b48c42eb12e599c09389d9d80d44445c4d0c944556c7228746e-03fffc5282760e7e56157aedd5df38ca6d4ea2973e2e7cfcda243ac89dd7cd6461-0", + "bolt12": "lni1qqgvq8khp6uam2tfcq0dwr4emk5kjq3qqc3xu3s3rg94nj40zfsy866mhu5vxne6tcej5878k2mneuvgjy8ssq38zq9q53nfwd5zqumpd3jjz93pqgkjyd3q5dv6gllh77kygly9c3kfy0d9xwyjyxsq2nq3c83u5vw4j5pqqc3xu3s3rg94nj40zfsy866mhu5vxne6tcej5878k2mneuvgjy84gqzcyyplllzjsfmquljkz4awm4wl8r9x6n4zjulzul8umgjr4jya6lxkgc2ez32xsctwddejqen0wgs8g6r9ypnxjumgyxsfsq3dygmzpg6e53ll0aavg37gt3rvjg762vufygdqq4xprs0regcatyp6swcycfh92s4s0p3wl6j0xj7pa7egpvvw2gq9z4sc376mekc9vacpqvzl0njg9k5sfn0pxlx4au5s95yhxczx2fah5zzmnfg9kvzdle5avqpj4l72lall4s8xrfvpu9f4xapfxl08j964jswavxw0exauk50zhw2l5alvyfucu82fx6qlszy7gett90z85gwqqqqqqqqqqqqqqqzsqqqqqqqqqqqqr5jt9hav2gqqqqqq5szx097xsz5zphg5v7yg8wedzgpk7h6dzc7vlw9h2wfa6dmzrey9m6fkeh89uz684gpzwy9wqvpqqq9syypz6g3kyz34nfrl7lm6c3rushzxey3a55ecjgs6qp2vz8q78j336k0sgzsvy6lf3le6zmjl4254r4xxf0urw8dky5d2dwtwjzt8ec7hg6jh88kx88fru0fhvxfjkje7ccg6qg5zv7dm64zxttg7epxx4yyw90c3", + "payment_hash": "dd14678883bb2d12036f5f4d163ccfb8b75393dd37621e485de936cdce5e0b47", + "amount_msat": 10000, + "status": "unpaid", + "description": "Fish sale!", + "expires_at": 1738007200, + "local_offer_id": "dca9774ba2925b48c42eb12e599c09389d9d80d44445c4d0c944556c7228746e", + "invreq_payer_note": "Thanks for the fish!", + "created_index": 10 + }, + { + "label": "f901018768e13ea2da95f437749e24d22d47b2a6ea3030ef66ae0281df49d94b-02a95c517b37d4fe9046a9b2ac79d125d1feb169fc81f906af620fb3c35803c3ee-0", + "bolt12": "lni1qqgvq8khp6uam2ttcq0dwr4emk5kkq3qqc3xu3s3rg94nj40zfsy866mhu5vxne6tcej5878k2mneuvgjy8ssqc0gfqq5pjrdanxvet9zsqs593pqgkjyd3q5dv6gllh77kygly9c3kfy0d9xwyjyxsq2nq3c83u5vw4j5pqqc3xu3s3rg94nj40zfsy866mhu5vxne6tcej5878k2mneuvgjy84yqc7sjq9gqzkqyp9sggz49w9z7eh6nlfq34fk2k8n5f968ltz60us8usdtmzp7euxkqrc0h2pxqz953rvg9rtxj8lalh43z8epwydjfrmffn3y3p5qz5cywpu09rr4vs92azp4mahnnht95k3j5c8gegy3003d45pkz0gawdj82vt7eqvpk8qypn2rsgaytxvr0nnhkwhjgeq5u2vavm8hm6muxlpl7pe57v99fwm3qqxt472dkvvw27qy6992kvqc5ztgfv20w3uy5swlraheles4havnkg7nafrqr0ej8m4gakh9n338xa86784w3pcqqqqqqqqqqqqqqq2qqqqqqqqqqqqqwjfvkl43fqqqqqqzjqgeuhc6q2sg94wlwt9m7hlq7gljm764vv7dureaqxklvgmjzlq9hxe8jxlaa4064qx85yszhqxqsqqzczzq3dygmzpg6e53ll0aavg37gt3rvjg762vufygdqq4xprs0regcat8cyq8h97cpp3rznnvtvsmu0lzvfgu3c39z7t5m4f9t4w62kt0zqy4yxajhdrqh0g6th0rfhxk583zxllzukn4h3426dxp005n8mpwc6pl3s", + "payment_hash": "b577dcb2efd7f83c8fcb7ed558cf3783cf406b7d88dc85f016e6c9e46ff7b57e", + "amount_msat": 2000000, + "status": "unpaid", + "description": "Coffee", + "expires_at": 1738007200, + "local_offer_id": "f901018768e13ea2da95f437749e24d22d47b2a6ea3030ef66ae0281df49d94b", + "created_index": 11 + }, + { + "label": "inv1", + "bolt11": "lnbcrt10n1pne035qsp507am6rmsdfe5vsutmpt77ldp5r9k9pkreya4zuxquatt3vy3s5zqpp5nge7gvl6mhpnw8m22635z3kgyc5a2e6jphd09qjyhk03jc5g4acsdq8d9h8vvgxqyjw5qcqp99qxpqysgq6l4n2kmhhu3y78cmhwn8davtxlc9cd050hldsdk55p30nxav2xcsv0x5u8ccznpcq6akj5c2u7fnceuzg5rvnjcq4sfgc4n0ukklc7sq2e0gtf", + "payment_hash": "9a33e433faddc3371f6a56a34146c82629d567520ddaf28244bd9f196288af71", + "amount_msat": 1000, + "status": "paid", + "pay_index": 9, + "amount_received_msat": 1000, + "paid_at": 1738000000, + "payment_preimage": "08377744ca985c2008377744ca985c2008377744ca985c2008377744ca985c20", + "description": "inv1", + "expires_at": 1738604800, + "created_index": 12, + "updated_index": 9 + }, + { + "label": "inv2", + "bolt11": "lnbcrt20n1pne035qsp5793kaek9ahcmxn00ttvkmrhafa5v33wtju4dz5lvyjr0pwwgdd2qpp59gjcv8c4v9yzt00az4x5yg6z79v5gmcd2nwzf6pct5c4yqprlr9sdq8d9h8vvsxqyjw5qcqp99qxpqysgq7ygtu605e0yx749rczhlqaw4crl746rmzc3nkpxn5vrey34m2uxx0658c3e85gvvdcp8r5nlfdnxspl9tlj5xhckrx5vszxxa4zneggp8dynay", + "payment_hash": "2a25861f15614825bdfd154d422342f159446f0d54dc24e8385d31520023f8cb", + "amount_msat": 2000, + "status": "paid", + "pay_index": 5, + "amount_received_msat": 2000, + "paid_at": 1738000000, + "payment_preimage": "08377744ca985c2108377744ca985c2108377744ca985c2108377744ca985c21", + "description": "inv2", + "expires_at": 1738604800, + "created_index": 13, + "updated_index": 5 + }, + { + "label": "inv3", + "bolt11": "lnbcrt30n1pne035qsp588xrpk37hul6xfyr8u6lkyggh0mkvfzhyex8wwts7dpckxt2j2yspp5x63je8t7u7a0ts2arwdj05y9mn5ud9lmgf7see5rg2kvuq8ptphsdq8d9h8vvcxqyjw5qcqp99qxpqysgqw97pk464fhkxp6umgtzhh3njznhnw06cwun58szk06v7a2wvvppz6kg95ufarq443nrqgue6u3s59up4tqkmm943pfyp3hqutx6vgugqgd8jsu", + "payment_hash": "36a32c9d7ee7baf5c15d1b9b27d085dce9c697fb427d0ce68342acce00e1586f", + "amount_msat": 3000, + "status": "paid", + "pay_index": 6, + "amount_received_msat": 3000, + "paid_at": 1738000000, + "payment_preimage": "08377744ca985c2208377744ca985c2208377744ca985c2208377744ca985c22", + "description": "inv3", + "expires_at": 1738604800, + "created_index": 14, + "updated_index": 6 + }, + { + "label": "inv4", + "bolt11": "lnbcrt40n1pne035qsp5q4tjztd7kdgg22eewphyfcf3ew9ag6d53nsm3yfu8280ygsxnp3qpp5pxtrqa9tplpcq38cjrrk83jcul4ylze3ej70c6spjytr7hxugdsqdq8d9h8vdqxqyjw5qcqp99qxpqysgq0g9jk5lpfjyg6ryulnhav6qsfmua9uajgkpa8cl4k9mrds0wdavqd8sg26us9gr93uvnz8s9znmyk2g3sytgqgfl6ych0re7sujky3sq78nj5l", + "payment_hash": "09963074ab0fc38044f890c763c658e7ea4f8b31ccbcfc6a0191163f5cdc4360", + "amount_msat": 4000, + "status": "paid", + "pay_index": 8, + "amount_received_msat": 4000, + "paid_at": 1738000000, + "payment_preimage": "08377744ca985c2308377744ca985c2308377744ca985c2308377744ca985c23", + "description": "inv4", + "expires_at": 1738604800, + "created_index": 15, + "updated_index": 8 + }, + { + "label": "inv5", + "bolt11": "lnbcrt50n1pne035qsp59qq7k6yprpf2hw49aqqx6tcv4dhldr4jh8r45n8vk9deyff2q55spp53cl2r7exu0j7scnsvnngusj8z03njd6jg4lluxd9vhl22nmrqltqdq8d9h8vdgxqyjw5qcqp99qxpqysgqcrnpc3ms8p3nqzyvfp5y0l78nlgm3lexm0v5xty0yd9fudk5mk8ydzvkfuxuef74cytlajjj6ykjsannfdapna7xudpf4xwtauhvcrqqxkwwsq", + "payment_hash": "8e3ea1fb26e3e5e8627064e68e424713e3393752457ffe19a565fea54f6307d6", + "amount_msat": 5000, + "status": "paid", + "pay_index": 7, + "amount_received_msat": 5000, + "paid_at": 1738000000, + "payment_preimage": "08377744ca985c2408377744ca985c2408377744ca985c2408377744ca985c24", + "description": "inv5", + "expires_at": 1738604800, + "created_index": 16, + "updated_index": 7 } ] } diff --git a/doc/schemas/listnodes.json b/doc/schemas/listnodes.json index f62310ffe26b..702fd7c819d8 100644 --- a/doc/schemas/listnodes.json +++ b/doc/schemas/listnodes.json @@ -270,14 +270,14 @@ "id": "example:listnodes#1", "method": "listnodes", "params": { - "id": "nodeid030303030303030303030303030303030303030303030303030303030303" + "id": "035d2b1192dfba134e10e540875d366ebc8bc353d5aa766b80c090b39c3a5d885d" } }, "response": { "nodes": [ { - "nodeid": "nodeid030303030303030303030303030303030303030303030303030303030303", - "alias": "HOPPINGFIRE", + "nodeid": "035d2b1192dfba134e10e540875d366ebc8bc353d5aa766b80c090b39c3a5d885d", + "alias": "HOPPINGFIRE-v25.12", "color": "035d2b", "last_timestamp": 1738000000, "features": "8898882a8a59a1", @@ -295,34 +295,34 @@ "response": { "nodes": [ { - "nodeid": "nodeid020202020202020202020202020202020202020202020202020202020202", - "alias": "SILENTARTIST", + "nodeid": "022d223620a359a47ff7f7ac447c85c46c923da53389221a0054c11c1e3ca31d59", + "alias": "SILENTARTIST-v25.12", "color": "022d22", "last_timestamp": 1738000000, "features": "8898882a8a59a1", "addresses": [] }, { - "nodeid": "nodeid010101010101010101010101010101010101010101010101010101010101", - "alias": "JUNIORBEAM", + "nodeid": "0266e4598d1d3c415f572a8488830b60f7e744ed9235eb0b1ba93283b315c03518", + "alias": "JUNIORBEAM-v25.12", "color": "0266e4", - "last_timestamp": 1738010000, + "last_timestamp": 1738000000, "features": "8898882a8a59a1", "addresses": [] }, { - "nodeid": "nodeid030303030303030303030303030303030303030303030303030303030303", - "alias": "HOPPINGFIRE", + "nodeid": "035d2b1192dfba134e10e540875d366ebc8bc353d5aa766b80c090b39c3a5d885d", + "alias": "HOPPINGFIRE-v25.12", "color": "035d2b", - "last_timestamp": 1738020000, + "last_timestamp": 1738000000, "features": "8898882a8a59a1", "addresses": [] }, { - "nodeid": "nodeid040404040404040404040404040404040404040404040404040404040404", - "alias": "JUNIORFELONY", + "nodeid": "0382ce59ebf18be7d84677c2e35f23294b9992ceca95491fcf8a56c6cb2d9de199", + "alias": "JUNIORFELONY-v25.12", "color": "0382ce", - "last_timestamp": 1738030000, + "last_timestamp": 1738000000, "features": "8898882a8a59a1", "addresses": [] } diff --git a/doc/schemas/listoffers.json b/doc/schemas/listoffers.json index 4da3991a146d..6ab90a44edc5 100644 --- a/doc/schemas/listoffers.json +++ b/doc/schemas/listoffers.json @@ -109,24 +109,24 @@ "response": { "offers": [ { - "offer_id": "offeridl21000002100000210000021000002100000210000021000002100000", + "offer_id": "b791f88cebf775853112c30828e116487f4d6c252d669372532b468bc7de8a24", "active": true, "single_use": false, - "bolt12": "lno1qgsq000bolt210002100021000210002100021000210002100021000210002100021000210002100021000210002100021000210002100021000210002100021000", + "bolt12": "lno1qgsqvgnwgcg35z6ee2h3yczraddm72xrfua9uve2rlrm9deu7xyfzrcgqv0gfqq2zp8kven9wgs8gmeqg35hxctzd3j3vggz953rvg9rtxj8lalh43z8epwydjfrmffn3y3p5qz5cywpu09rr4vs", "used": false }, { - "offer_id": "offeridl22000002200000220000022000002200000220000022000002200000", + "offer_id": "dca9774ba2925b48c42eb12e599c09389d9d80d44445c4d0c944556c7228746e", "active": true, "single_use": false, - "bolt12": "lno1qgsq000bolt220002200022000220002200022000220002200022000220002200022000220002200022000220002200022000220002200022000220002200022000", + "bolt12": "lno1qgsqvgnwgcg35z6ee2h3yczraddm72xrfua9uve2rlrm9deu7xyfzrcgqgn3qzs2ge5hx6pqwdskcefpzcssytfzxcs2xkdy0lml0tzy0jzugmyj8kjn8zfzrgq9fsgurc72x82e", "used": false }, { - "offer_id": "offeridl23000002300000230000023000002300000230000023000002300000", + "offer_id": "f901018768e13ea2da95f437749e24d22d47b2a6ea3030ef66ae0281df49d94b", "active": true, "single_use": false, - "bolt12": "lno1qgsq000bolt230002300023000230002300023000230002300023000230002300023000230002300023000230002300023000230002300023000230002300023000", + "bolt12": "lno1qgsqvgnwgcg35z6ee2h3yczraddm72xrfua9uve2rlrm9deu7xyfzrcgqv85ysq2qepk7enxv4j3gqg2zcssytfzxcs2xkdy0lml0tzy0jzugmyj8kjn8zfzrgq9fsgurc72x82e", "used": false } ] @@ -137,16 +137,16 @@ "id": "example:listoffers#2", "method": "listoffers", "params": [ - "offeridl23000002300000230000023000002300000230000023000002300000" + "b791f88cebf775853112c30828e116487f4d6c252d669372532b468bc7de8a24" ] }, "response": { "offers": [ { - "offer_id": "offeridl23000002300000230000023000002300000230000023000002300000", + "offer_id": "b791f88cebf775853112c30828e116487f4d6c252d669372532b468bc7de8a24", "active": true, "single_use": false, - "bolt12": "lno1qgsq000bolt230002300023000230002300023000230002300023000230002300023000230002300023000230002300023000230002300023000230002300023000", + "bolt12": "lno1qgsqvgnwgcg35z6ee2h3yczraddm72xrfua9uve2rlrm9deu7xyfzrcgqv0gfqq2zp8kven9wgs8gmeqg35hxctzd3j3vggz953rvg9rtxj8lalh43z8epwydjfrmffn3y3p5qz5cywpu09rr4vs", "used": false } ] diff --git a/doc/schemas/listpays.json b/doc/schemas/listpays.json index eaa78aa0b0c5..129bd0be3e55 100644 --- a/doc/schemas/listpays.json +++ b/doc/schemas/listpays.json @@ -279,7 +279,7 @@ "id": "example:listpays#1", "method": "listpays", "params": { - "bolt11": "lnbcrt100n1pnt2bolt11invl032000000000bolt11invl032000000000bolt11invl032000000000bolt11invl032000000000bolt11invl032000000000bolt11invl032000000000bolt11invl032000000000bolt11invl032000000000bolt11invl032000000000bolt11invl032000000000" + "bolt11": "lnbcrt500n1pne035qsp5kk6w4wjl0wudssp0pze5lgkz9hcav6ql523hjxc92knt398y2csqpp54va949c65wepf98heejx7pmjxtqsexghcvehty6urt4l54cl5xssdqcdsenygryv4ekxunfwp6xjmmwxqyjw5qcqp9rzjqgkjyd3q5dv6gllh77kygly9c3kfy0d9xwyjyxsq2nq3c83u5vw4jqqqwqqqqqgqqqqqqqqpqqqqqzsqqc9qxpqysgqgrjzax5dyj6dqqhgrt7t53hrmw4xvjs56kdy450c8jdv53fzf3n4kmersmgydpyyam87jrnu9wrcn78zy6w53zx3lqv45js6sa6rspqqa07y46" } }, "response": { @@ -293,7 +293,99 @@ "params": {} }, "response": { - "pays": [] + "pays": [ + { + "bolt11": "lnbcrt5m1pne035qsp53ecfkxsrle7hea7ckvd62cdjyvq3r9vp8dj88fwawl220ljmda3spp57cdw7qf92ltyje5evsh8rc46ekjkwz6nwlrr2layqjzcz0avcc5qdpcv3jhxcmjd9c8g6t0dcs8xetwvss8xmmdv5s8xct5wvsxcv3qw3hjqmpnxqyjw5qcqp9rzjqgkjyd3q5dv6gllh77kygly9c3kfy0d9xwyjyxsq2nq3c83u5vw4jqqqwqqqqqgqqqqqqqqpqqqqqzsqqc9qxpqysgq5ang73w7jamq8nwwceyutacvktrm59qclwnrdd54q4qcr8a5n9r9jnxvg4k3s80frd3lt4tcv4dxz4yhsewnp8ujjd50mgevtwz4wmcq7glcsk", + "destination": "035d2b1192dfba134e10e540875d366ebc8bc353d5aa766b80c090b39c3a5d885d", + "payment_hash": "f61aef012557d6496699642e71e2bacda5670b5377c6357fa40485813facc628", + "status": "complete", + "created_at": 1738000000, + "completed_at": 1738000000, + "preimage": "83ffe698292fbb5e83ffe698292fbb5e83ffe698292fbb5e83ffe698292fbb5e", + "amount_msat": 500000000, + "amount_sent_msat": 500000000, + "created_index": 1, + "updated_index": 1 + }, + { + "bolt11": "lnbcrt5m1pne035qsp5qu4w4mj43n9up0ze7cq39rrqd7aqygw82cyma64mnzne69kzphfqpp57edpmeu5yea7xpxezhtq4yjh6t50g0e739lx399kr9ynunpqm98qdpcv3jhxcmjd9c8g6t0dcs8xetwvss8xmmdv5s8xct5wvsxcv3qw3hjqmp4xqyjw5qcqp9rzjqgkjyd3q5dv6gllh77kygly9c3kfy0d9xwyjyxsq2nq3c83u5vw4jcjsnr9ygaehpqqqqqqpqqqqqzsqqc9qxpqysgqsm86gyada8m86wr0sz33tnclnyawtvtaegqhdwcwyrzu0p8hxuuxyh9teph87urkxu4g7x4ug4gjswahjwfjufl22msvlv7mv790z6gp9vrhs7", + "destination": "032cf15d1ad9c4a08d26eab1918f732d8ef8fdc6abb9640bf3db174372c491304e", + "payment_hash": "f65a1de794267be304d915d60a9257d2e8f43f3e897e6894b619493e4c20d94e", + "status": "complete", + "created_at": 1738000000, + "completed_at": 1738000000, + "preimage": "58148cd7e5a50ca858148cd7e5a50ca858148cd7e5a50ca858148cd7e5a50ca8", + "amount_msat": 500000000, + "amount_sent_msat": 500000000, + "created_index": 2, + "updated_index": 2 + }, + { + "bolt11": "lnbcrt1u1pne035qsp5xl6xj5nrlrwfadkw89p0htfcqlkt0qrnykpc4kh3vlyr69cglv5qpp59v2rfk0xrknvtuf9yd5lf2vwrhwwwg45mvalz42nhpaff5vax5wsdqcdsenxgryv4ekxunfwp6xjmmwxqyjw5qcqp9rzjqgkjyd3q5dv6gllh77kygly9c3kfy0d9xwyjyxsq2nq3c83u5vw4jqqqwqqqqqgqqqqqqqqpqqqqqzsqqc9qxpqysgq04xpv4pju07a2mt3d02rf5u8ptj8h8vy7qxtc74z6y609x8rwrkhvq2elv8v5mrwac42scc70c7nnyu4xrxu9c8wcsync9dd5dnqdfqqrngrdv", + "destination": "035d2b1192dfba134e10e540875d366ebc8bc353d5aa766b80c090b39c3a5d885d", + "payment_hash": "2b1434d9e61da6c5f1252369f4a98e1ddce722b4db3bf15553b87a94d19d351d", + "status": "complete", + "created_at": 1738000000, + "completed_at": 1738000000, + "preimage": "83ffe698292fbb6183ffe698292fbb6183ffe698292fbb6183ffe698292fbb61", + "amount_msat": 100000, + "amount_sent_msat": 100000, + "created_index": 3, + "updated_index": 3 + }, + { + "bolt12": "lni1qqg99gqg2990zl3322sqs52279lrzzst2d5k6urvv5s8getnw3gzqp3zderpzxstt8927ynqg044h0egcd8n5h3n9g0u0v4h8ncc3yg02gps7sjqtqssytfzxcs2xkdy0lml0tzy0jzugmyj8kjn8zfzrgq9fsgurc72x82e5zvqyehytxx360zptatj4pygsv9kpal8gnkeyd0tpvd6jv5rkv2uqdgcq204pv4whvd37qg3dg48n0nudvgfw0du46nveyle5q4a2tvru2g4gqgrstm06rld7qk9d5sjtajxztd0lua3zfujsv8lve3wg9px5f34c4wqqvh4pp0dfkr98pur2v55d6ae3cakhn6s9jxn8waf9l00g06g236ymyefu6engjwaqsj4w7cgpkg9naq6kf4zrsqqqqqqqqqqqqqqq5qqqqqqqqqqqqqayjedltzjqqqqqq9yq3ne035q5cq442pqemw8hu9fzzda8nvxcksvjra2sy4c5r9r6et8rj95qqd2ufj8xj065qc0gfq2uqczqqqtqggzvmj9nrga83q474e2sjygxzmq7ln5fmvjxh4skxafx2pmx9wqx5v0qsxsy7vmh0323083refvd9fwvm7r5klg8hjftuqqzygswxl9lfkvlcj72lhlw643qv2gwmfadfydpdwvhydnvgnxmhlgjaxd7nw06y7rx", + "destination": "0266e4598d1d3c415f572a8488830b60f7e744ed9235eb0b1ba93283b315c03518", + "payment_hash": "cedc7bf0a9109bd3cd86c5a0c90faa812b8a0ca3d65671c8b4001aae2647349f", + "status": "complete", + "created_at": 1738000000, + "completed_at": 1738000000, + "preimage": "c01ed70eb9ddb906c01ed70eb9ddb906c01ed70eb9ddb906c01ed70eb9ddb906", + "amount_msat": 1000000, + "amount_sent_msat": 1000000, + "created_index": 4, + "updated_index": 4 + }, + { + "bolt11": "lnbcrt1pne035qsp5hu0s83c7qg77lgtagcr58sf07fvrqf27j67s2ptguw9wk8ruexfqpp50ge88lv20ge4a9ny7xc7rg8p6vqvnuuzwllkk2zng6txu7sfz3cqdqcdserxgryv4ekxunfwp6xjmmwxqyjw5qcqp99qxpqysgqrwjd83fygx3zcnupx0ftnpewajss6n4vpsugju00w8hu5lu0neujqhgw8jygwmawz8jq8pp2xu6r78f3m9yld6ky7539x5g5ahvtmqqqmgfjaa", + "destination": "022d223620a359a47ff7f7ac447c85c46c923da53389221a0054c11c1e3ca31d59", + "payment_hash": "7a3273fd8a7a335e9664f1b1e1a0e1d300c9f38277ff6b285346966e7a091470", + "status": "complete", + "created_at": 1738000000, + "completed_at": 1738000000, + "preimage": "08377744ca985c1f08377744ca985c1f08377744ca985c1f08377744ca985c1f", + "amount_msat": 9900, + "amount_sent_msat": 9900, + "created_index": 5, + "updated_index": 5 + }, + { + "bolt11": "lnbcrt40n1pne035qsp5pwtnqs2trxfwwkl8vaycu6fmvud0edagevz4eahvy6ls30u7cfrqpp52wnj6qrv99d6cte0s8ntstwkwxf42ksct8mujruyv7940nndzr3qdqaveskjmr9vssxgetnvdexjur5d9hkuxqyjw5qcqp9rzjqgkjyd3q5dv6gllh77kygly9c3kfy0d9xwyjyxsq2nq3c83u5vw4jqqqwqqqqqgqqqqqqqqpqqqqqzsqqc9qxpqysgq6sh90jk5uuccyzrdlnd5xyd92hxre78kupcpmlg0uerm35855xlklh5zlsmahpad6x8cv4ky2u6p394p270vyetlzx2u6ypyg22xn0qq0z6fuh", + "destination": "035d2b1192dfba134e10e540875d366ebc8bc353d5aa766b80c090b39c3a5d885d", + "payment_hash": "53a72d006c295bac2f2f81e6b82dd67193555a1859f7c90f84678b57ce6d10e2", + "status": "complete", + "created_at": 1738000000, + "completed_at": 1738000000, + "preimage": "83ffe698292fbb6283ffe698292fbb6283ffe698292fbb6283ffe698292fbb62", + "amount_msat": 4000, + "amount_sent_msat": 4000, + "created_index": 6, + "updated_index": 6 + }, + { + "bolt11": "lnbcrt5m1pne035qsp5qv7vwr9zt8sq94wzqdy2sg2cdddqfgh93vvsvfuxk0rdse47layqpp5z8v4uystpd9mvgwxm4zzr9w0q3dqep398jpkn6fdr24f2umgxcvqdpcv3jhxcmjd9c8g6t0dcs8xetwvss8xmmdv5s8xct5wvsxcv3qw3hjqmp5xqyjw5qcqp9rzjqgkjyd3q5dv6gllh77kygly9c3kfy0d9xwyjyxsq2nq3c83u5vw4jqqq5qqqqqgqqyqqqqqpqqqqqzsqqc9qxpqysgq9rl64vhvye4p8er9mld6jhuw56e0uf62w2r69e93hdy7js8a8y59esgp5ze7r9lnpt26tyh437t9c9g3m02eulm9fjrxepkghvvwyncp7wn4n3", + "destination": "0382ce59ebf18be7d84677c2e35f23294b9992ceca95491fcf8a56c6cb2d9de199", + "payment_hash": "11d95e120b0b4bb621c6dd442195cf045a0c86253c8369e92d1aaa9573683618", + "status": "complete", + "created_at": 1738000000, + "completed_at": 1738000000, + "preimage": "a23af6838ba877f9a23af6838ba877f9a23af6838ba877f9a23af6838ba877f9", + "amount_msat": 500000000, + "amount_sent_msat": 500000000, + "created_index": 7, + "updated_index": 7 + } + ] } } ] diff --git a/doc/schemas/listpeerchannels.json b/doc/schemas/listpeerchannels.json index 16844c0e7665..9c1882f1493a 100644 --- a/doc/schemas/listpeerchannels.json +++ b/doc/schemas/listpeerchannels.json @@ -1456,13 +1456,13 @@ "id": "example:listpeerchannels#1", "method": "listpeerchannels", "params": { - "id": "nodeid020202020202020202020202020202020202020202020202020202020202" + "id": "0266e4598d1d3c415f572a8488830b60f7e744ed9235eb0b1ba93283b315c03518" } }, "response": { "channels": [ { - "peer_id": "nodeid020202020202020202020202020202020202020202020202020202020202", + "peer_id": "0266e4598d1d3c415f572a8488830b60f7e744ed9235eb0b1ba93283b315c03518", "peer_connected": true, "reestablished": true, "channel_type": { @@ -1491,9 +1491,9 @@ "fee_proportional_millionths": 10 } }, - "last_stable_connection": 1738510000, + "last_stable_connection": 1738000000, "state": "CHANNELD_NORMAL", - "scratch_txid": "scratchid1010101010101010101010101010101010101010101010101010101", + "scratch_txid": "f8042b0e29badb6450d57a8065a9c05d1a86cb8cd43d775d23bd3c8e3d180bd7", "last_tx_fee_msat": 4867000, "lost_state": false, "feerate": { @@ -1501,43 +1501,42 @@ "perkb": 15020 }, "owner": "channeld", - "short_channel_id": "109x1x1", - "direction": 1, - "channel_id": "channelid0120000120000120000120000120000120000120000120000120000", - "funding_txid": "channeltxid120000120000120000120000120000120000120000120000120000", - "funding_outnum": 1, - "close_to_addr": "bcrt1p8c0ku4mpxq3443rss8e6rjwamztvv8yxvmxtetal5d0n6v39rlwqvfqy6n", - "close_to": "51203e1f6e576130235ac47081f3a1c9ddd896c61c8666ccbcafbfa35f3d32251fdc", + "short_channel_id": "110x1x0", + "direction": 0, + "channel_id": "252d1b0a1e57895e84137f28cf19ab2c35847e284c112fefdecc7afeaa5c1de7", + "funding_txid": "63f74346eda6b8620ec24f86e2f8982ef3dade95f8efd00b372a75b2893b6f0d", + "funding_outnum": 0, + "close_to_addr": "bcrt1pmeuewfgl24n06v9868kts5v92494zexrvg0hc0sdmgwwnxm6t9sqdwfqjx", + "close_to": "5120de7997251f5566fd30a7d1ecb85185554b5164c3621f7c3e0dda1ce99b7a5960", "private": false, - "opener": "local", + "opener": "remote", "alias": { - "local": "30000001x60000001x60001", - "remote": "10000001x20000001x30001" + "local": "6312088x13255799x14088", + "remote": "5597735x1767569x15541" }, "features": [ "option_static_remotekey", - "option_anchors_zero_fee_htlc_tx", "option_anchors" ], "funding": { - "local_funds_msat": 1000000000, - "remote_funds_msat": 0, + "local_funds_msat": 0, + "remote_funds_msat": 1000000000, "pushed_msat": 0 }, - "to_us_msat": 390492790, - "min_to_us_msat": 390492790, - "max_to_us_msat": 1000000000, + "to_us_msat": 609507210, + "min_to_us_msat": 0, + "max_to_us_msat": 609507210, "total_msat": 1000000000, "fee_base_msat": 1, "fee_proportional_millionths": 10, "dust_limit_msat": 546000, - "max_total_htlc_in_msat": 18446744073709552000, - "their_max_htlc_value_in_flight_msat": 18446744073709552000, - "our_max_htlc_value_in_flight_msat": 18446744073709552000, + "max_total_htlc_in_msat": 18446744073709551615, + "their_max_htlc_value_in_flight_msat": 18446744073709551615, + "our_max_htlc_value_in_flight_msat": 18446744073709551615, "their_reserve_msat": 10000000, "our_reserve_msat": 10000000, - "spendable_msat": 363951708, - "receivable_msat": 599507210, + "spendable_msat": 599507210, + "receivable_msat": 363951708, "minimum_htlc_in_msat": 0, "minimum_htlc_out_msat": 0, "maximum_htlc_out_msat": 990000000, @@ -1546,39 +1545,39 @@ "max_accepted_htlcs": 483, "state_changes": [ { - "timestamp": "2024-10-10T00:01:00.000Z", + "timestamp": "2025-01-27T17:46:40.000Z", "old_state": "DUALOPEND_OPEN_COMMITTED", "new_state": "DUALOPEND_AWAITING_LOCKIN", - "cause": "user", + "cause": "remote", "message": "Sigs exchanged, waiting for lock-in" }, { - "timestamp": "2024-10-10T00:02:00.000Z", + "timestamp": "2025-01-27T17:46:40.000Z", "old_state": "DUALOPEND_AWAITING_LOCKIN", "new_state": "CHANNELD_NORMAL", - "cause": "user", + "cause": "remote", "message": "Lockin complete" } ], "status": [ "CHANNELD_NORMAL:Channel ready for use." ], - "in_payments_offered": 1, - "in_offered_msat": 1000000, - "in_payments_fulfilled": 1, - "in_fulfilled_msat": 1000000, - "out_payments_offered": 22, - "out_offered_msat": 665528797, - "out_payments_fulfilled": 16, - "out_fulfilled_msat": 610507210, + "in_payments_offered": 22, + "in_offered_msat": 665528797, + "in_payments_fulfilled": 16, + "in_fulfilled_msat": 610507210, + "out_payments_offered": 1, + "out_offered_msat": 1000000, + "out_payments_fulfilled": 1, + "out_fulfilled_msat": 1000000, "htlcs": [ { - "direction": "out", + "direction": "in", "id": 17, "amount_msat": 4000082, - "expiry": 181, - "payment_hash": "paymenthashdelpay30303030303030303030303030303030303030303030303", - "state": "SENT_ADD_ACK_REVOCATION" + "expiry": 182, + "payment_hash": "2b924194d169a96d9cc35b66ae912507e18ace9ef679fcb5324636ff73be410a", + "state": "RCVD_ADD_ACK_REVOCATION" } ] } @@ -1594,7 +1593,7 @@ "response": { "channels": [ { - "peer_id": "nodeid020202020202020202020202020202020202020202020202020202020202", + "peer_id": "0266e4598d1d3c415f572a8488830b60f7e744ed9235eb0b1ba93283b315c03518", "peer_connected": true, "reestablished": true, "channel_type": { @@ -1623,9 +1622,9 @@ "fee_proportional_millionths": 10 } }, - "last_stable_connection": 1738520000, + "last_stable_connection": 1738000000, "state": "CHANNELD_NORMAL", - "scratch_txid": "scratchid2020202020202020202020202020202020202020202020202020202", + "scratch_txid": "f8042b0e29badb6450d57a8065a9c05d1a86cb8cd43d775d23bd3c8e3d180bd7", "last_tx_fee_msat": 4867000, "lost_state": false, "feerate": { @@ -1633,22 +1632,142 @@ "perkb": 15020 }, "owner": "channeld", - "short_channel_id": "109x1x1", - "direction": 1, - "channel_id": "channelid0120000120000120000120000120000120000120000120000120000", - "funding_txid": "channeltxid120000120000120000120000120000120000120000120000120000", + "short_channel_id": "110x1x0", + "direction": 0, + "channel_id": "252d1b0a1e57895e84137f28cf19ab2c35847e284c112fefdecc7afeaa5c1de7", + "funding_txid": "63f74346eda6b8620ec24f86e2f8982ef3dade95f8efd00b372a75b2893b6f0d", + "funding_outnum": 0, + "close_to_addr": "bcrt1pmeuewfgl24n06v9868kts5v92494zexrvg0hc0sdmgwwnxm6t9sqdwfqjx", + "close_to": "5120de7997251f5566fd30a7d1ecb85185554b5164c3621f7c3e0dda1ce99b7a5960", + "private": false, + "opener": "remote", + "alias": { + "local": "6312088x13255799x14088", + "remote": "5597735x1767569x15541" + }, + "features": [ + "option_static_remotekey", + "option_anchors" + ], + "funding": { + "local_funds_msat": 0, + "remote_funds_msat": 1000000000, + "pushed_msat": 0 + }, + "to_us_msat": 609507210, + "min_to_us_msat": 0, + "max_to_us_msat": 609507210, + "total_msat": 1000000000, + "fee_base_msat": 1, + "fee_proportional_millionths": 10, + "dust_limit_msat": 546000, + "max_total_htlc_in_msat": 18446744073709551615, + "their_max_htlc_value_in_flight_msat": 18446744073709551615, + "our_max_htlc_value_in_flight_msat": 18446744073709551615, + "their_reserve_msat": 10000000, + "our_reserve_msat": 10000000, + "spendable_msat": 599507210, + "receivable_msat": 363951708, + "minimum_htlc_in_msat": 0, + "minimum_htlc_out_msat": 0, + "maximum_htlc_out_msat": 990000000, + "their_to_self_delay": 5, + "our_to_self_delay": 5, + "max_accepted_htlcs": 483, + "state_changes": [ + { + "timestamp": "2025-01-27T17:46:40.000Z", + "old_state": "DUALOPEND_OPEN_COMMITTED", + "new_state": "DUALOPEND_AWAITING_LOCKIN", + "cause": "remote", + "message": "Sigs exchanged, waiting for lock-in" + }, + { + "timestamp": "2025-01-27T17:46:40.000Z", + "old_state": "DUALOPEND_AWAITING_LOCKIN", + "new_state": "CHANNELD_NORMAL", + "cause": "remote", + "message": "Lockin complete" + } + ], + "status": [ + "CHANNELD_NORMAL:Channel ready for use." + ], + "in_payments_offered": 22, + "in_offered_msat": 665528797, + "in_payments_fulfilled": 16, + "in_fulfilled_msat": 610507210, + "out_payments_offered": 1, + "out_offered_msat": 1000000, + "out_payments_fulfilled": 1, + "out_fulfilled_msat": 1000000, + "htlcs": [ + { + "direction": "in", + "id": 17, + "amount_msat": 4000082, + "expiry": 182, + "payment_hash": "2b924194d169a96d9cc35b66ae912507e18ace9ef679fcb5324636ff73be410a", + "state": "RCVD_ADD_ACK_REVOCATION" + } + ] + }, + { + "peer_id": "035d2b1192dfba134e10e540875d366ebc8bc353d5aa766b80c090b39c3a5d885d", + "peer_connected": true, + "reestablished": true, + "channel_type": { + "bits": [ + 12, + 22 + ], + "names": [ + "static_remotekey/even", + "anchors/even" + ] + }, + "ignore_fee_limits": true, + "updates": { + "local": { + "htlc_minimum_msat": 0, + "htlc_maximum_msat": 990000000, + "cltv_expiry_delta": 6, + "fee_base_msat": 1, + "fee_proportional_millionths": 10 + }, + "remote": { + "htlc_minimum_msat": 0, + "htlc_maximum_msat": 990000000, + "cltv_expiry_delta": 6, + "fee_base_msat": 1, + "fee_proportional_millionths": 10 + } + }, + "last_stable_connection": 1738000000, + "state": "CHANNELD_NORMAL", + "scratch_txid": "3112fa1a0797156ebc8861de490811659c0526d66554188ea22e8abca8d69778", + "last_tx_fee_msat": 4867000, + "lost_state": false, + "feerate": { + "perkw": 3755, + "perkb": 15020 + }, + "owner": "channeld", + "short_channel_id": "124x1x1", + "direction": 0, + "channel_id": "ecabe6d86abdd57565b3fb7e7c5d724e60ca1a07633951769b5dbfa48dc884b3", + "funding_txid": "148a366c9a72e40af01daca6acc24e0a5648d0efb7e01f4708f23412d9deba69", "funding_outnum": 1, - "close_to_addr": "bcrt1pcl00020002000200020002000200020002000200020002000200020002", - "close_to": "db2dec31020202020202020202020202020202020202020202020202020202020202", + "close_to_addr": "bcrt1pvn0zt2s8cv6shrtx8yd0zh90hwx4wpuqjrplfzpucnmde7kr4q3qx3fjfh", + "close_to": "512064de25aa07c3350b8d66391af15cafbb8d57078090c3f4883cc4f6dcfac3a822", "private": false, "opener": "local", "alias": { - "local": "30000002x60000002x60002", - "remote": "10000002x20000002x30002" + "local": "6508696x13255799x14088", + "remote": "9483055x2726118x65411" }, "features": [ "option_static_remotekey", - "option_anchors_zero_fee_htlc_tx", "option_anchors" ], "funding": { @@ -1656,20 +1775,20 @@ "remote_funds_msat": 0, "pushed_msat": 0 }, - "to_us_msat": 390492790, - "min_to_us_msat": 390492790, + "to_us_msat": 899996000, + "min_to_us_msat": 899996000, "max_to_us_msat": 1000000000, "total_msat": 1000000000, "fee_base_msat": 1, "fee_proportional_millionths": 10, "dust_limit_msat": 546000, - "max_total_htlc_in_msat": 18446744073709552000, - "their_max_htlc_value_in_flight_msat": 18446744073709552000, - "our_max_htlc_value_in_flight_msat": 18446744073709552000, + "max_total_htlc_in_msat": 18446744073709551615, + "their_max_htlc_value_in_flight_msat": 18446744073709551615, + "our_max_htlc_value_in_flight_msat": 18446744073709551615, "their_reserve_msat": 10000000, "our_reserve_msat": 10000000, - "spendable_msat": 363951708, - "receivable_msat": 599507210, + "spendable_msat": 873454959, + "receivable_msat": 90004000, "minimum_htlc_in_msat": 0, "minimum_htlc_out_msat": 0, "maximum_htlc_out_msat": 990000000, @@ -1678,14 +1797,14 @@ "max_accepted_htlcs": 483, "state_changes": [ { - "timestamp": "2024-10-10T00:01:00.000Z", + "timestamp": "2025-01-27T17:46:40.000Z", "old_state": "DUALOPEND_OPEN_COMMITTED", "new_state": "DUALOPEND_AWAITING_LOCKIN", "cause": "user", "message": "Sigs exchanged, waiting for lock-in" }, { - "timestamp": "2024-10-10T00:02:00.000Z", + "timestamp": "2025-01-27T17:46:40.000Z", "old_state": "DUALOPEND_AWAITING_LOCKIN", "new_state": "CHANNELD_NORMAL", "cause": "user", @@ -1695,27 +1814,27 @@ "status": [ "CHANNELD_NORMAL:Channel ready for use." ], - "in_payments_offered": 1, - "in_offered_msat": 1000000, - "in_payments_fulfilled": 1, - "in_fulfilled_msat": 1000000, - "out_payments_offered": 22, - "out_offered_msat": 665528797, - "out_payments_fulfilled": 16, - "out_fulfilled_msat": 610507210, + "in_payments_offered": 0, + "in_offered_msat": 0, + "in_payments_fulfilled": 0, + "in_fulfilled_msat": 0, + "out_payments_offered": 5, + "out_offered_msat": 154004041, + "out_payments_fulfilled": 3, + "out_fulfilled_msat": 100004000, "htlcs": [ { "direction": "out", - "id": 17, - "amount_msat": 4000082, - "expiry": 181, - "payment_hash": "paymenthashdelpay30303030303030303030303030303030303030303030303", + "id": 1, + "amount_msat": 4000041, + "expiry": 176, + "payment_hash": "2b924194d169a96d9cc35b66ae912507e18ace9ef679fcb5324636ff73be410a", "state": "SENT_ADD_ACK_REVOCATION" } ] }, { - "peer_id": "nodeid030303030303030303030303030303030303030303030303030303030303", + "peer_id": "0382ce59ebf18be7d84677c2e35f23294b9992ceca95491fcf8a56c6cb2d9de199", "peer_connected": false, "channel_type": { "bits": [ @@ -1730,137 +1849,119 @@ "updates": { "local": { "htlc_minimum_msat": 0, - "htlc_maximum_msat": 19454000, + "htlc_maximum_msat": 990000000, + "cltv_expiry_delta": 6, + "fee_base_msat": 1, + "fee_proportional_millionths": 10 + }, + "remote": { + "htlc_minimum_msat": 0, + "htlc_maximum_msat": 990000000, "cltv_expiry_delta": 6, "fee_base_msat": 1, "fee_proportional_millionths": 10 } }, - "state": "ONCHAIN", - "scratch_txid": "scratchid2030303030303030303030303030303030303030303030303030303", - "last_tx_fee_msat": 2250000, + "state": "CLOSINGD_COMPLETE", + "scratch_txid": "8ef1ed98891f7cf81b74c330a68de9fcff802870f91cf04a69c5db02118bc78e", + "last_tx_fee_msat": 2895000, "lost_state": false, "feerate": { - "perkw": 3750, - "perkb": 15000 + "perkw": 3755, + "perkb": 15020 }, - "owner": "onchaind", + "short_channel_id": "160x1x1", "direction": 0, - "channel_id": "channelid1100011000110001100011000110001100011000110001100011000", - "funding_txid": "channeltxid01050000500005000050000500005000050000500005000050000", + "channel_id": "f4e1de801de57374d5737da622611e3a1ad9f16d5df9c30fceecc11ce732eeeb", + "funding_txid": "1c863d8172c0a588a7d34426b7249d4a939f04d4ca4bad6c28d5913ed2dff12a", "funding_outnum": 1, - "initial_feerate": "10000perkw", - "last_feerate": "10000perkw", - "next_feerate": "10416perkw", - "inflight": [ - { - "funding_txid": "channeltxid01050000500005000050000500005000050000500005000050000", - "funding_outnum": 1, - "feerate": "10000perkw", - "total_funding_msat": 20000000, - "our_funding_msat": 20000000, - "splice_amount": 0, - "scratch_txid": "scratchid2030303030303030303030303030303030303030303030303030303" - } - ], - "close_to_addr": "bcrt1pcl00030003000300030003000300030003000300030003000300030003", - "close_to": "db2dec31030303030303030303030303030303030303030303030303030303030303", + "close_to_addr": "bcrt1ptsrrl629uxs782qswfvy53xsequfry5nj56qt788a724y7y0jjlqxzv28f", + "close_to": "51205c063fe945e1a1e3a81072584a44d0c838919293953405f8e7ef9552788f94be", "private": false, "opener": "local", "closer": "local", "alias": { - "local": "30000003x60000003x60003", - "remote": "10000003x20000003x30003" + "local": "6574232x13255799x14088", + "remote": "1209512x9143286x15010" }, "features": [ "option_static_remotekey", - "option_anchors_zero_fee_htlc_tx", "option_anchors" ], "funding": { - "local_funds_msat": 20000000, + "local_funds_msat": 1000000000, "remote_funds_msat": 0, "pushed_msat": 0 }, - "to_us_msat": 20000000, - "min_to_us_msat": 20000000, - "max_to_us_msat": 20000000, - "total_msat": 20000000, + "to_us_msat": 500000000, + "min_to_us_msat": 500000000, + "max_to_us_msat": 1000000000, + "total_msat": 1000000000, "fee_base_msat": 1, "fee_proportional_millionths": 10, "dust_limit_msat": 546000, - "max_total_htlc_in_msat": 18446744073709552000, - "their_max_htlc_value_in_flight_msat": 18446744073709552000, - "our_max_htlc_value_in_flight_msat": 18446744073709552000, - "their_reserve_msat": 546000, - "our_reserve_msat": 546000, - "spendable_msat": 8172000, - "receivable_msat": 0, + "max_total_htlc_in_msat": 18446744073709551615, + "their_max_htlc_value_in_flight_msat": 18446744073709551615, + "our_max_htlc_value_in_flight_msat": 18446744073709551615, + "their_reserve_msat": 10000000, + "our_reserve_msat": 10000000, + "spendable_msat": 478705000, + "receivable_msat": 490000000, "minimum_htlc_in_msat": 0, "minimum_htlc_out_msat": 0, - "maximum_htlc_out_msat": 19454000, + "maximum_htlc_out_msat": 990000000, "their_to_self_delay": 5, "our_to_self_delay": 5, "max_accepted_htlcs": 483, "state_changes": [ { - "timestamp": "2024-10-10T00:01:00.000Z", + "timestamp": "2025-01-27T17:46:40.000Z", "old_state": "DUALOPEND_OPEN_COMMITTED", "new_state": "DUALOPEND_AWAITING_LOCKIN", "cause": "user", "message": "Sigs exchanged, waiting for lock-in" }, { - "timestamp": "2024-10-10T00:02:00.000Z", + "timestamp": "2025-01-27T17:46:40.000Z", "old_state": "DUALOPEND_AWAITING_LOCKIN", + "new_state": "CHANNELD_NORMAL", + "cause": "user", + "message": "Lockin complete" + }, + { + "timestamp": "2025-01-27T17:46:40.000Z", + "old_state": "CHANNELD_NORMAL", "new_state": "CHANNELD_SHUTTING_DOWN", "cause": "user", "message": "User or plugin invoked close command" }, { - "timestamp": "2024-10-10T00:03:00.000Z", + "timestamp": "2025-01-27T17:46:40.000Z", "old_state": "CHANNELD_SHUTTING_DOWN", "new_state": "CLOSINGD_SIGEXCHANGE", "cause": "user", "message": "Start closingd" }, { - "timestamp": "2024-10-10T00:04:00.000Z", + "timestamp": "2025-01-27T17:46:40.000Z", "old_state": "CLOSINGD_SIGEXCHANGE", "new_state": "CLOSINGD_COMPLETE", "cause": "user", "message": "Closing complete" - }, - { - "timestamp": "2024-10-10T00:05:00.000Z", - "old_state": "CLOSINGD_COMPLETE", - "new_state": "FUNDING_SPEND_SEEN", - "cause": "user", - "message": "Onchain funding spend" - }, - { - "timestamp": "2024-10-10T00:06:00.000Z", - "old_state": "FUNDING_SPEND_SEEN", - "new_state": "ONCHAIN", - "cause": "user", - "message": "Onchain init reply" } ], "status": [ - "CLOSINGD_SIGEXCHANGE:We agreed on a closing fee of 2250 satoshi for tx:scratchid2030303030303030303030303030303030303030303030303030303", - "ONCHAIN:Tracking mutual close transaction", - "ONCHAIN:All outputs resolved: waiting 96 more blocks before forgetting channel" + "CLOSINGD_SIGEXCHANGE:We agreed on a closing fee of 2895 satoshi for tx:8ef1ed98891f7cf81b74c330a68de9fcff802870f91cf04a69c5db02118bc78e" ], "in_payments_offered": 0, "in_offered_msat": 0, "in_payments_fulfilled": 0, "in_fulfilled_msat": 0, - "out_payments_offered": 0, - "out_offered_msat": 0, - "out_payments_fulfilled": 0, - "out_fulfilled_msat": 0, - "htlcs": [], - "last_stable_connection": 1738530000 + "out_payments_offered": 1, + "out_offered_msat": 500000000, + "out_payments_fulfilled": 1, + "out_fulfilled_msat": 500000000, + "htlcs": [] } ] } diff --git a/doc/schemas/listpeers.json b/doc/schemas/listpeers.json index b4e3b46fdf74..3bd06a68b2d9 100644 --- a/doc/schemas/listpeers.json +++ b/doc/schemas/listpeers.json @@ -330,17 +330,17 @@ "id": "example:listpeers#1", "method": "listpeers", "params": { - "id": "nodeid030303030303030303030303030303030303030303030303030303030303" + "id": "035d2b1192dfba134e10e540875d366ebc8bc353d5aa766b80c090b39c3a5d885d" } }, "response": { "peers": [ { - "id": "nodeid030303030303030303030303030303030303030303030303030303030303", + "id": "035d2b1192dfba134e10e540875d366ebc8bc353d5aa766b80c090b39c3a5d885d", "connected": true, "num_channels": 1, "netaddr": [ - "127.0.0.1:19736" + "127.0.0.1:30005" ], "features": "0898882a8a59a1" } @@ -356,25 +356,25 @@ "response": { "peers": [ { - "id": "nodeid010101010101010101010101010101010101010101010101010101010101", + "id": "035d2b1192dfba134e10e540875d366ebc8bc353d5aa766b80c090b39c3a5d885d", "connected": true, "num_channels": 1, "netaddr": [ - "127.0.0.1:19734" + "127.0.0.1:30005" ], "features": "0898882a8a59a1" }, { - "id": "nodeid030303030303030303030303030303030303030303030303030303030303", + "id": "0266e4598d1d3c415f572a8488830b60f7e744ed9235eb0b1ba93283b315c03518", "connected": true, "num_channels": 1, "netaddr": [ - "127.0.0.1:19736" + "127.0.0.1:54321" ], "features": "0898882a8a59a1" }, { - "id": "nodeid040404040404040404040404040404040404040404040404040404040404", + "id": "0382ce59ebf18be7d84677c2e35f23294b9992ceca95491fcf8a56c6cb2d9de199", "connected": false, "num_channels": 1, "features": "0898882a8a59a1" diff --git a/doc/schemas/listsendpays.json b/doc/schemas/listsendpays.json index 49d8ee5b4f11..1377c5f7d1fd 100644 --- a/doc/schemas/listsendpays.json +++ b/doc/schemas/listsendpays.json @@ -346,7 +346,7 @@ "id": "example:listsendpays#1", "method": "listsendpays", "params": { - "bolt11": "lnbcrt100n1pnt2bolt11invl030100000000bolt11invl030100000000bolt11invl030100000000bolt11invl030100000000bolt11invl030100000000bolt11invl030100000000bolt11invl030100000000bolt11invl030100000000bolt11invl030100000000bolt11invl030100000000" + "bolt11": "lnbcrt100n1pne035qsp5ct5g9265vn4k2zn8ecuk6pxe0anszfl3uy4w5vukrvl4emm9w28qpp5j43wux8fg2cwkt3kq5xpprhukdxtqljum03g6zxjdwm34u24dshsdp9f9h8vmmfvdjjqer9wd3hy6tsw35k7m3qdsenzxqyjw5qcqp9rzjqgkjyd3q5dv6gllh77kygly9c3kfy0d9xwyjyxsq2nq3c83u5vw4jqqqwqqqqqgqqqqqqqqpqqqqqzsqqc9qxpqysgqflkpcezmaphptn08syzk9wh4rfkdzj3syan9ng9fzzv94htydujx6qut2tdgsmq2rg5utlmwcyce30fcqth7r68tc5mpqm7k4dfvy7gp0xletu" } }, "response": { @@ -354,16 +354,16 @@ { "created_index": 2, "id": 2, - "payment_hash": "paymenthashinvl0310031003100310031003100310031003100310031003100", + "payment_hash": "9562ee18e942b0eb2e36050c108efcb34cb07e5cdbe28d08d26bb71af1556c2f", "groupid": 1, "updated_index": 2, - "destination": "nodeid030303030303030303030303030303030303030303030303030303030303", + "destination": "035d2b1192dfba134e10e540875d366ebc8bc353d5aa766b80c090b39c3a5d885d", "amount_msat": 10000, "amount_sent_msat": 10001, "created_at": 1738000000, - "completed_at": 1739000000, + "completed_at": 1738000000, "status": "complete", - "payment_preimage": "paymentpreimagew010101010101010101010101010101010101010101010101" + "payment_preimage": "83ffe698292fbb5f83ffe698292fbb5f83ffe698292fbb5f83ffe698292fbb5f" } ] } @@ -379,72 +379,289 @@ { "created_index": 2, "id": 2, - "payment_hash": "paymenthashinvl0310031003100310031003100310031003100310031003100", + "payment_hash": "9562ee18e942b0eb2e36050c108efcb34cb07e5cdbe28d08d26bb71af1556c2f", "groupid": 1, "updated_index": 2, - "destination": "nodeid030303030303030303030303030303030303030303030303030303030303", + "destination": "035d2b1192dfba134e10e540875d366ebc8bc353d5aa766b80c090b39c3a5d885d", "amount_msat": 10000, "amount_sent_msat": 10001, "created_at": 1738000000, - "completed_at": 1739000000, + "completed_at": 1738000000, "status": "complete", - "payment_preimage": "paymentpreimagew010101010101010101010101010101010101010101010101" + "payment_preimage": "83ffe698292fbb5f83ffe698292fbb5f83ffe698292fbb5f83ffe698292fbb5f" }, { "created_index": 3, "id": 3, - "payment_hash": "paymenthashkey01k101k101k101k101k101k101k101k101k101k101k101k101", + "payment_hash": "097dcfa3b0bc58d499908855dae7d442854a02d4f2ffcc625f9385ed74f3256e", "groupid": 0, "updated_index": 3, - "destination": "nodeid030303030303030303030303030303030303030303030303030303030303", + "destination": "035d2b1192dfba134e10e540875d366ebc8bc353d5aa766b80c090b39c3a5d885d", "amount_msat": 10000, "amount_sent_msat": 10001, - "created_at": 1738010000, - "completed_at": 1739010000, + "created_at": 1738000000, + "completed_at": 1738000000, "status": "complete", - "payment_preimage": "paymentpreimage1010101010101010101010101010101010101010101010101" + "payment_preimage": "0193052c8999a10f0193052c8999a10f0193052c8999a10f0193052c8999a10f" }, { "created_index": 4, "id": 4, - "payment_hash": "paymenthashkey02k201k201k201k201k201k201k201k201k201k201k201k201", + "payment_hash": "9bf787fe700121009e2ecdca290632c8bf2da853527c700aa5746173981ae584", "groupid": 0, "updated_index": 4, - "destination": "nodeid040404040404040404040404040404040404040404040404040404040404", + "destination": "0382ce59ebf18be7d84677c2e35f23294b9992ceca95491fcf8a56c6cb2d9de199", "amount_msat": 10000000, "amount_sent_msat": 10000202, - "created_at": 1738020000, - "completed_at": 1739020000, + "created_at": 1738000000, + "completed_at": 1738000000, "status": "complete", - "payment_preimage": "paymentpreimage2020202020202020202020202020202020202020202020202" + "payment_preimage": "0193052c8999a1110193052c8999a1110193052c8999a1110193052c8999a111" }, { "created_index": 5, "id": 5, - "payment_hash": "paymenthashkey03k301k301k301k301k301k301k301k301k301k301k301k301", + "payment_hash": "da6c0b6d30ac35f62762bc7114d64d323dc79fb858061902263eb72df6310caf", "groupid": 0, "updated_index": 5, - "destination": "nodeid030303030303030303030303030303030303030303030303030303030303", + "destination": "035d2b1192dfba134e10e540875d366ebc8bc353d5aa766b80c090b39c3a5d885d", "amount_msat": 10000, "amount_sent_msat": 10001, - "created_at": 1738030000, - "completed_at": 1739030000, + "created_at": 1738000000, + "completed_at": 1738000000, "status": "failed" }, { "created_index": 6, "id": 6, - "payment_hash": "paymenthashkey03k301k301k301k301k301k301k301k301k301k301k301k301", + "payment_hash": "da6c0b6d30ac35f62762bc7114d64d323dc79fb858061902263eb72df6310caf", "groupid": 0, "updated_index": 6, "partid": 1, - "destination": "nodeid030303030303030303030303030303030303030303030303030303030303", + "destination": "035d2b1192dfba134e10e540875d366ebc8bc353d5aa766b80c090b39c3a5d885d", + "amount_msat": 10000, + "amount_sent_msat": 10001, + "created_at": 1738000000, + "completed_at": 1738000000, + "status": "complete", + "payment_preimage": "0193052c8999a1130193052c8999a1130193052c8999a1130193052c8999a113" + }, + { + "created_index": 7, + "id": 7, + "payment_hash": "ab3a5a971aa3b21494f7ce646f077232c10c9917c33375935c1aebfa571fa1a1", + "groupid": 1, + "updated_index": 7, + "destination": "035d2b1192dfba134e10e540875d366ebc8bc353d5aa766b80c090b39c3a5d885d", + "amount_msat": 50000, + "amount_sent_msat": 50001, + "created_at": 1738000000, + "completed_at": 1738000000, + "status": "complete", + "payment_preimage": "83ffe698292fbb6083ffe698292fbb6083ffe698292fbb6083ffe698292fbb60", + "bolt11": "lnbcrt500n1pne035qsp5kk6w4wjl0wudssp0pze5lgkz9hcav6ql523hjxc92knt398y2csqpp54va949c65wepf98heejx7pmjxtqsexghcvehty6urt4l54cl5xssdqcdsenygryv4ekxunfwp6xjmmwxqyjw5qcqp9rzjqgkjyd3q5dv6gllh77kygly9c3kfy0d9xwyjyxsq2nq3c83u5vw4jqqqwqqqqqgqqqqqqqqpqqqqqzsqqc9qxpqysgqgrjzax5dyj6dqqhgrt7t53hrmw4xvjs56kdy450c8jdv53fzf3n4kmersmgydpyyam87jrnu9wrcn78zy6w53zx3lqv45js6sa6rspqqa07y46" + }, + { + "created_index": 8, + "id": 8, + "payment_hash": "1bb513fb2fbde40592243877d9f404ba3668275e2eeacd9c7264f34f04d37fd1", + "groupid": 1607584456767009425, + "updated_index": 8, + "partid": 1, + "destination": "0382ce59ebf18be7d84677c2e35f23294b9992ceca95491fcf8a56c6cb2d9de199", + "amount_msat": 10000, + "amount_sent_msat": 10002, + "created_at": 1738000000, + "completed_at": 1738000000, + "status": "complete", + "payment_preimage": "a23af6838ba877f6a23af6838ba877f6a23af6838ba877f6a23af6838ba877f6", + "bolt11": "lnbcrt100n1pne035qsp572t5efk76vr3rdkt5zu2qcduqapdj40mhrs7pgpthufgw3tvtwrqpp5rw6387e0hhjqty3y8pmanaqyhgmxsf679m4vm8rjvne57pxn0lgsdp9w3jhxazl0pcxz72lwd5k6urvv5sxymmvwscnzxqyjw5qcqp9rzjqdwjkyvjm7apxnssu4qgwhfkd67ghs6n6k48v6uqczgt88p6tky96qqqwgqqqqgqqqqqqqqpqqqqqzsqqc9qxpqysgqh986ypquaysut7ed57nr8pum0x6u5hg3lnsf6j840l0cn6e28zcyqk76xpxkxjzlkhj8cx7zapyct6zdz2ff7nt3lym376k8ff0u9egq2wf5mk" + }, + { + "created_index": 9, + "id": 9, + "payment_hash": "f4a6597c41a3ae138fc1269e3bb0c28eb992a24e5eb007c5e65f39b1b89ed561", + "groupid": 1751699644842865297, + "updated_index": 9, + "partid": 1, + "destination": "0266e4598d1d3c415f572a8488830b60f7e744ed9235eb0b1ba93283b315c03518", + "amount_msat": 1000, + "amount_sent_msat": 1000, + "created_at": 1738000000, + "completed_at": 1738000000, + "status": "complete", + "payment_preimage": "c01ed70eb9ddb51ec01ed70eb9ddb51ec01ed70eb9ddb51ec01ed70eb9ddb51e", + "bolt12": "lni1qqgvq8khp6uam2t8cq0dwr4emk5kwq3qqc3xu3s3rg94nj40zfsy866mhu5vxne6tcej5878k2mneuvgjy83pmsz953rvg9rtxj8lalh43z8epwydjfrmffn3y3p5qz5cywpu09rr4vsyc4ltgrq50wep0hruykzdz8kjmlaymfx3gn3c0gcrcwn08fary4aqgplwhkgurkjc3rj42v0ntzhw0gr9dl4vwt2l3meh378fzjx5cc7mhgqxdva9ffx3l879amqjdk7np3nyfq6wjtp4weyzhdgq447vakcu0sh4dh0gxszhvffjfqcy8h77mjzguszhtfqy9glqvpm0sp32vgtlw2rh8mwuzedxn3z4d44zq7g8pkz6906ysj9qqe9eqccms4thz8tgy4vu7fdnqt0yaeky4a4pkdprcykm7vj4sz2pqeuguj820h2d6vwh0j7cdypzeg7ffnpvggzvmj9nrga83q474e2sjygxzmq7ln5fmvjxh4skxafx2pmx9wqx5v9qgqxyfhyvyg6pdvu4tcjvpp7kkal9rp57wj7xv4pl3ajku70rzy3pafqyqlg2sq9sggz3x54wmukps9ppjdvu9axg8l62dkkv5975l6zlt37ts4szjaem7c6pxqzvmj9nrga83q474e2sjygxzmq7ln5fmvjxh4skxafx2pmx9wqx5vqyhckl6y7ulcampu0ezz5qqx4cs3fwt6kyrfjc08dju8hc3lr30d7qyp5e6kp2jd30yr8husmmcfzxe797vler28r4hv6ehyy29lljue6ljqqxtxjzt8sw08wk4vx2j6wwv94myujhvzg09mx9xnh9fmvewnm0ex4mkal4sfm00gep0srey7pz6vt3cd82k3pcqqqqqqqqqqqqqqq2qqqqqqqqqqqqqwjfvkl43fqqqqqqzjqgeuhc6q2sg855evhcsdr4cfclsfxncamps5whxf2ynj7kqrutejl8xcm38k4vx4qyqlg4cpsyqqqkqssyehytxx360zptatj4pygsv9kpal8gnkeyd0tpvd6jv5rkv2uqdgc7pqzjd09ca3y6jytvgzva9jcyxavkyzvjujh4g4dz6qv5gjp95ld7sxy4yrpuc937lvmvrwm6qycexdzsmmtlzyskmzqm5e8uevw6d4nxc" + }, + { + "created_index": 10, + "id": 10, + "payment_hash": "47c148c1746366e4c2c7496621c22002bc2711b4d9c52cbb9c7b1fdca59c8579", + "groupid": 1, + "updated_index": 10, + "amount_sent_msat": 1002, + "created_at": 1738000000, + "completed_at": 1738000000, + "status": "failed", + "erroronion": "9bd15bb4312d17efe8130e67d2013e5baa83d46bc370883e1499e59299647d62cb6665189d7046467e6820a1f1248e0318805cf6e6d72e4b1da85492577e3606e81c8671a56493a6699eaf5e0d14c7bc2a23a23c5a0712e87faa51325a207f041e5e340e10ac9c61c77101345e527964d8aa7d5e953dfcef7a73dbf156738034d9c589f8592181132d6424112e7c991aa288da1bfa6da93d4c32572417d94c2956b95a4f5a0fc3d4e95019b24a87e890c7ef74444191de7428d979415b63d7de7a492e41be004cdfb7b567557dec95c4ac3e7ba3fb038dea146625551649d7991f0b4b5aa10c96b8a789cbfaaf8c1cc021cbb58516c7fd47644f4b2df9b5495a3e22f113a725e4b5315f1b7aff390d1f5b02ac37809e799bfbe8a078a1882d5f9d6f1d63" + }, + { + "created_index": 11, + "id": 11, + "payment_hash": "53a72d006c295bac2f2f81e6b82dd67193555a1859f7c90f84678b57ce6d10e2", + "groupid": 1, + "updated_index": 11, + "destination": "035d2b1192dfba134e10e540875d366ebc8bc353d5aa766b80c090b39c3a5d885d", "amount_msat": 10000, "amount_sent_msat": 10001, - "created_at": 1738040000, - "completed_at": 1739040000, + "created_at": 1738000000, + "completed_at": 1738000000, + "status": "failed" + }, + { + "created_index": 12, + "id": 12, + "payment_hash": "ff498c3300881ea7a3c04193e43f123444c644662008108c23229da3511bedd1", + "groupid": 0, + "updated_index": 12, + "partid": 1, + "amount_sent_msat": 1000, + "created_at": 1738000000, + "completed_at": 1738000000, + "status": "complete", + "payment_preimage": "08377744ca985c1e08377744ca985c1e08377744ca985c1e08377744ca985c1e" + }, + { + "created_index": 13, + "id": 13, + "payment_hash": "e0b5658ef8e23cab6546ea5f7794a8c760483abf3613b34f401df4128944afae", + "groupid": 1, + "updated_index": 13, + "partid": 1, + "destination": "022d223620a359a47ff7f7ac447c85c46c923da53389221a0054c11c1e3ca31d59", + "amount_msat": 400000, + "amount_sent_msat": 400000, + "created_at": 1738000000, + "completed_at": 1738000000, + "status": "complete", + "payment_preimage": "08377744ca985c1908377744ca985c1908377744ca985c1908377744ca985c19", + "bolt11": "lnbcrt1pne035qsp5j7czxfpnquxg9vcw9crqh87raxz0glv8n6gx88jwdsp28pmfk68qpp5uz6ktrhcug72ke2xaf0h099gcasysw4lxcfmxn6qrh6p9z2y47hqdqcdserzgryv4ekxunfwp6xjmmwxqyjw5qcqp9rzjqdwjkyvjm7apxnssu4qgwhfkd67ghs6n6k48v6uqczgt88p6tky96qqqwqqqqqgqqqqqqqqpqqqqqzsqqc9qxpqysgqn7ge40jwkslz0j0vhfzy743lathy2sqy2dfyyahalxszs979d9s5v89ten2zcrna3xlxhkerk7p9k7a6u5fdddx5dzzas4ye2yp6desq3zwkg2" + }, + { + "created_index": 14, + "id": 14, + "payment_hash": "2a25861f15614825bdfd154d422342f159446f0d54dc24e8385d31520023f8cb", + "groupid": 1, + "updated_index": 14, + "destination": "022d223620a359a47ff7f7ac447c85c46c923da53389221a0054c11c1e3ca31d59", + "amount_msat": 2000, + "amount_sent_msat": 2000, + "created_at": 1738000000, + "completed_at": 1738000000, + "status": "complete", + "payment_preimage": "08377744ca985c2108377744ca985c2108377744ca985c2108377744ca985c21", + "bolt11": "lnbcrt20n1pne035qsp5793kaek9ahcmxn00ttvkmrhafa5v33wtju4dz5lvyjr0pwwgdd2qpp59gjcv8c4v9yzt00az4x5yg6z79v5gmcd2nwzf6pct5c4yqprlr9sdq8d9h8vvsxqyjw5qcqp99qxpqysgq7ygtu605e0yx749rczhlqaw4crl746rmzc3nkpxn5vrey34m2uxx0658c3e85gvvdcp8r5nlfdnxspl9tlj5xhckrx5vszxxa4zneggp8dynay" + }, + { + "created_index": 15, + "id": 15, + "payment_hash": "36a32c9d7ee7baf5c15d1b9b27d085dce9c697fb427d0ce68342acce00e1586f", + "groupid": 1, + "updated_index": 15, + "destination": "022d223620a359a47ff7f7ac447c85c46c923da53389221a0054c11c1e3ca31d59", + "amount_msat": 3000, + "amount_sent_msat": 3000, + "created_at": 1738000000, + "completed_at": 1738000000, + "status": "complete", + "payment_preimage": "08377744ca985c2208377744ca985c2208377744ca985c2208377744ca985c22", + "bolt11": "lnbcrt30n1pne035qsp588xrpk37hul6xfyr8u6lkyggh0mkvfzhyex8wwts7dpckxt2j2yspp5x63je8t7u7a0ts2arwdj05y9mn5ud9lmgf7see5rg2kvuq8ptphsdq8d9h8vvcxqyjw5qcqp99qxpqysgqw97pk464fhkxp6umgtzhh3njznhnw06cwun58szk06v7a2wvvppz6kg95ufarq443nrqgue6u3s59up4tqkmm943pfyp3hqutx6vgugqgd8jsu" + }, + { + "created_index": 16, + "id": 16, + "payment_hash": "8e3ea1fb26e3e5e8627064e68e424713e3393752457ffe19a565fea54f6307d6", + "groupid": 1, + "updated_index": 16, + "destination": "022d223620a359a47ff7f7ac447c85c46c923da53389221a0054c11c1e3ca31d59", + "amount_msat": 5000, + "amount_sent_msat": 5000, + "created_at": 1738000000, + "completed_at": 1738000000, + "status": "complete", + "payment_preimage": "08377744ca985c2408377744ca985c2408377744ca985c2408377744ca985c24", + "bolt11": "lnbcrt50n1pne035qsp59qq7k6yprpf2hw49aqqx6tcv4dhldr4jh8r45n8vk9deyff2q55spp53cl2r7exu0j7scnsvnngusj8z03njd6jg4lluxd9vhl22nmrqltqdq8d9h8vdgxqyjw5qcqp99qxpqysgqcrnpc3ms8p3nqzyvfp5y0l78nlgm3lexm0v5xty0yd9fudk5mk8ydzvkfuxuef74cytlajjj6ykjsannfdapna7xudpf4xwtauhvcrqqxkwwsq" + }, + { + "created_index": 17, + "id": 17, + "payment_hash": "09963074ab0fc38044f890c763c658e7ea4f8b31ccbcfc6a0191163f5cdc4360", + "groupid": 1, + "updated_index": 17, + "destination": "022d223620a359a47ff7f7ac447c85c46c923da53389221a0054c11c1e3ca31d59", + "amount_msat": 4000, + "amount_sent_msat": 4000, + "created_at": 1738000000, + "completed_at": 1738000000, + "status": "complete", + "payment_preimage": "08377744ca985c2308377744ca985c2308377744ca985c2308377744ca985c23", + "bolt11": "lnbcrt40n1pne035qsp5q4tjztd7kdgg22eewphyfcf3ew9ag6d53nsm3yfu8280ygsxnp3qpp5pxtrqa9tplpcq38cjrrk83jcul4ylze3ej70c6spjytr7hxugdsqdq8d9h8vdqxqyjw5qcqp99qxpqysgq0g9jk5lpfjyg6ryulnhav6qsfmua9uajgkpa8cl4k9mrds0wdavqd8sg26us9gr93uvnz8s9znmyk2g3sytgqgfl6ych0re7sujky3sq78nj5l" + }, + { + "created_index": 18, + "id": 18, + "payment_hash": "9a33e433faddc3371f6a56a34146c82629d567520ddaf28244bd9f196288af71", + "groupid": 1, + "updated_index": 18, + "destination": "022d223620a359a47ff7f7ac447c85c46c923da53389221a0054c11c1e3ca31d59", + "amount_msat": 1000, + "amount_sent_msat": 1000, + "created_at": 1738000000, + "completed_at": 1738000000, + "status": "complete", + "payment_preimage": "08377744ca985c2008377744ca985c2008377744ca985c2008377744ca985c20" + }, + { + "created_index": 19, + "id": 19, + "payment_hash": "2b924194d169a96d9cc35b66ae912507e18ace9ef679fcb5324636ff73be410a", + "groupid": 1, + "partid": 1, + "destination": "0382ce59ebf18be7d84677c2e35f23294b9992ceca95491fcf8a56c6cb2d9de199", + "amount_msat": 4000000, + "amount_sent_msat": 4000082, + "created_at": 1738000000, + "status": "pending" + }, + { + "created_index": 21, + "id": 21, + "payment_hash": "1d3a502d4b52d3c22af20f93605cadec2194da2e077b9fbbd15fa379c6bfbbdd", + "groupid": 1, + "updated_index": 20, + "destination": "035d2b1192dfba134e10e540875d366ebc8bc353d5aa766b80c090b39c3a5d885d", + "amount_msat": 50000000, + "amount_sent_msat": 50000501, + "created_at": 1738000000, + "completed_at": 1738000000, + "status": "complete", + "payment_preimage": "83ffe698292fbb6383ffe698292fbb6383ffe698292fbb6383ffe698292fbb63", + "bolt11": "lnbcrt500u1pne035qsp5pt69qwurs28wt0ttmlyhwnsuajc8sxf0at8vd83m98m3hhkcw9yspp5r5a9qt2t2tfuy2hjp7fkqh9dassefk3wqaaelw73t73hn34lh0wsdqcdsen2gryv4ekxunfwp6xjmmwxqyjw5qcqp9rzjqgkjyd3q5dv6gllh77kygly9c3kfy0d9xwyjyxsq2nq3c83u5vw4jqqq0sqqqqgqqyqqqqqpqqqqqzsqqc9qxpqysgqufkzp6k7jev4r0k95s4m3m0j3vcyg5z2zxpw98tm9fcml0xud0ws0q9g44g9cz56lnc97xxy9q6mt8h6xxh4h2fah8qypk7h7mmwd3gqsdtqr0" + }, + { + "created_index": 22, + "id": 22, + "payment_hash": "39a88ddc69c973a791043a877a415eda840888849a5d7175c9666104513f9235", + "groupid": 1, + "updated_index": 21, + "destination": "035d2b1192dfba134e10e540875d366ebc8bc353d5aa766b80c090b39c3a5d885d", + "amount_msat": 50000000, + "amount_sent_msat": 50000501, + "created_at": 1738000000, + "completed_at": 1738000000, "status": "complete", - "payment_preimage": "paymentpreimage3030303030303030303030303030303030303030303030303" + "payment_preimage": "83ffe698292fbb6583ffe698292fbb6583ffe698292fbb6583ffe698292fbb65", + "bolt11": "lnbcrt500u1pne035qsp50zcqdgkx0dwzlksvkntzmmuednc9mxdnnzrghatwffw5fycnkpcqpp58x5gmhrfe9e60ygy82rh5s27m2zq3zyynfwhzawfvessg5fljg6sdqcdsenwgryv4ekxunfwp6xjmmwxqyjw5qcqp9rzjqgkjyd3q5dv6gllh77kygly9c3kfy0d9xwyjyxsq2nq3c83u5vw4jqqq0sqqqqgqqyqqqqqpqqqqqzsqqc9qxpqysgqxdq9h7j2xkfjvm8ansypq8w2xvawhdu5wwzpkg9ar2al66d6uae8lxzx6maekk0pgae6fzeauglsxvqplc3lw30fzv430a7nmccv0lcq0du8d6" } ] } diff --git a/doc/schemas/listtransactions.json b/doc/schemas/listtransactions.json index 89eb7d038c73..4ba886e0bffd 100644 --- a/doc/schemas/listtransactions.json +++ b/doc/schemas/listtransactions.json @@ -173,51 +173,492 @@ "response": { "transactions": [ { - "hash": "txid7000170001700017000170001700017000170001700017000170001", - "rawtx": "02000000000101lstx70001700017000170001700017000170001700017000170001700017000170001700017000170001700017000170001700017000170001700017000170001700017000170001700017000170001700017000170001", + "hash": "cb847df46f5e3ae4df631b2eca529264f0551c08497a23a8b36eab6a43752a19", + "rawtx": "02000000000101f24a23ab5e7a9a3301a77294bd78b17c1f99ae8a46f91c7784170325735c87a70000000000fce87280044a0100000000000022002021576c2f5f13ba292fdb27447b38f1a583a579f26d3f4de69949f399a68269e34a0100000000000022002084e64aa53fb1193cdd99b7892f2d2f1f1a472f2b1bb1b85c447beba739003b2ea00f0000000000002200208f5cc510822867e8c786438caacf26a796f0561a147b4cb4950e4ae5fd0f5b6a0a1d0f00000000002200200fc54c870d234c36914a970b066e35be3f70af615d521189922794127e5eda8f0400473044022065d513e52ad62ae187985ffdc063591ca4fd3122b64f93f8173804d71a4c4bf802200e2f6abd1e958930f5535af6d193ad50f48632e832952dde93d25b64d9e4a9ae01473044022016be9e3950d45956afea61824dc637dff6708789859ca8ab62d475849e8ea3af02204beec8cc69f1238866e0768770b64fe381b53badc64b8a6fde2cca49e0b1baf10147522102c4c58e0dd892bdc984a69d87a39e33a837926d8886282e27d0a6cdfab5a563742103ebc3fd1aeca86f47406b5c43daf43ce7337d0d59923891ad4e276e168c2bc11452ae1a77ae20", "blockheight": 0, "txindex": 0, - "locktime": 549000100, + "locktime": 548304666, "version": 2, "inputs": [ { - "txid": "txid600116001160011600116001160011600116001160011600116001160011", + "txid": "a7875c7325031784771cf9468aae991f7cb178bd9472a701339a7a5eab234af2", + "index": 0, + "sequence": 2155014396 + } + ], + "outputs": [ + { + "index": 0, + "amount_msat": 330000, + "scriptPubKey": "002021576c2f5f13ba292fdb27447b38f1a583a579f26d3f4de69949f399a68269e3" + }, + { + "index": 1, + "amount_msat": 330000, + "scriptPubKey": "002084e64aa53fb1193cdd99b7892f2d2f1f1a472f2b1bb1b85c447beba739003b2e" + }, + { + "index": 2, + "amount_msat": 4000000, + "scriptPubKey": "00208f5cc510822867e8c786438caacf26a796f0561a147b4cb4950e4ae5fd0f5b6a" + }, + { + "index": 3, + "amount_msat": 990474000, + "scriptPubKey": "00200fc54c870d234c36914a970b066e35be3f70af615d521189922794127e5eda8f" + } + ] + }, + { + "hash": "0c609c5643e2f316985989417c48044311cf2c1fb2113a03af7d7d51b4874ac5", + "rawtx": "02000000000101b3d820c11ae3a495b807cdcbf591f9a382351f50e61eb3ddcbb0c3a9b66f12890000000000fdffffff02b37c110501000000160014d67d8942d0b25380051198e292a12c48369c94ca00c2eb0b00000000160014d0eac62fdcee2d1881259be9cda4c43de9050db802473044022042141044c5fa69877c5a6d641cd96693828c77b8593fbba4df3008c56c54c3c502202e743899c8469993e28011de683f68f2f66c64b23f1ac62be7167563f762f8a40121031552bdf1173629284565431fb75296ec15c49649f97bb418ce3f509601b9b77469000000", + "blockheight": 106, + "txindex": 1, + "locktime": 105, + "version": 2, + "inputs": [ + { + "txid": "89126fb6a9c3b0cbddb31ee6501f3582a3f991f5cbcd07b895a4e31ac120d8b3", + "index": 0, + "sequence": 4294967293 + } + ], + "outputs": [ + { + "index": 0, + "amount_msat": 4379999411000, + "scriptPubKey": "0014d67d8942d0b25380051198e292a12c48369c94ca" + }, + { + "index": 1, + "amount_msat": 200000000000, + "scriptPubKey": "0014d0eac62fdcee2d1881259be9cda4c43de9050db8" + } + ] + }, + { + "hash": "7cce7550c4b37924bb74fd4baf8f1946a4b14c050c42f2479b04fede08652aa9", + "rawtx": "02000000000101b3d820c11ae3a495b807cdcbf591f9a382351f50e61eb3ddcbb0c3a9b66f12890100000000fdffffff0240420f00000000002200208698658a01efb001e1cc4df6a8b6f3adb461fa3e679385fdaae400bd73996b32816cdc0b000000002251208a73bb281433f2b5db5461c6778aa2afd28e011de6bd04799a5991662c61d7a80247304402204ae8e90efd38fe67b7dacd7b673c5de869a802feab60b17ce55c91c5bdffcfa60220100e9a1ee2e0f0a0e157feb12ee4e5e2b9ca4c78384097b085d476722f2dd9e101210207ec2b35534712d86ae030dd9bfaec08e2ddea1ec1cecffb9725ed7acb12ab6633000000", + "blockheight": 112, + "txindex": 1, + "locktime": 51, + "version": 2, + "inputs": [ + { + "txid": "89126fb6a9c3b0cbddb31ee6501f3582a3f991f5cbcd07b895a4e31ac120d8b3", + "index": 1, + "sequence": 4294967293 + } + ], + "outputs": [ + { + "index": 0, + "amount_msat": 1000000000, + "scriptPubKey": "00208698658a01efb001e1cc4df6a8b6f3adb461fa3e679385fdaae400bd73996b32" + }, + { + "index": 1, + "amount_msat": 198995073000, + "scriptPubKey": "51208a73bb281433f2b5db5461c6778aa2afd28e011de6bd04799a5991662c61d7a8" + } + ] + }, + { + "hash": "c3f4a0f787b5ea11505afaba3e9599d6135943d0f562df3d6a7d3e7f372e2067", + "rawtx": "02000000000101ce5a530f60155add2fa38a51332c2823dec1e10eb16f77e68da912d03fb04dd80100000000fdffffff0280841e0000000000160014774b1c651a1b409213057783547e2bd37a7173127268deec00000000160014dc1e0ee8ce8e59d06ff533cc79b1e3809b4eba99024730440220483a8cc01437562b2dc7e83397e145f427fcbdbe7afb6d83c63ad3c8d18cc31d0220502b2d3f36a6b6cc42bb1714c8907b1b9c9a80788784599c33d19242e29061330121022facafa438adcdc64818ac87168a8ff6cc0c1f986475f3edac935f037bcc962b15000000", + "blockheight": 113, + "txindex": 1, + "locktime": 21, + "version": 2, + "inputs": [ + { + "txid": "d84db03fd012a98de6776fb10ee1c1de23282c33518aa32fdd5a15600f535ace", + "index": 1, + "sequence": 4294967293 + } + ], + "outputs": [ + { + "index": 0, + "amount_msat": 2000000000, + "scriptPubKey": "0014774b1c651a1b409213057783547e2bd37a717312" + }, + { + "index": 1, + "amount_msat": 3973998706000, + "scriptPubKey": "0014dc1e0ee8ce8e59d06ff533cc79b1e3809b4eba99" + } + ] + }, + { + "hash": "efa52a006f5909ed9cb8a098f2dec8ad7146a1384b6eaaf2fae7aac05077f7b6", + "rawtx": "0200000000010167202e377f3e7d6a3ddf62f5d0435913d699953ebafa5a5011eab587f7a0f4c30000000000fdffffff0240420f00000000002200205f743123f9584a76058bac1142ec2bc6c60b4b2af1d3145e74418d41ae51009e012f0f0000000000225120974c19d5ed96a62a1bd10ad187fee5c2e3146f772228c5ae7a42b36e74cf24cf024730440220707db46964e57ba4767951d6f03491f75468fd263dc84868d02352d74b91b4f102200a06e7213acde73c8a89751a1d915cfd72a849c850093b53c0415759144740cd012103f1f9d3a06cf2ae9b87dc178b5f3717b6c9b56e539189f11dc0d9ad1b227cc97f71000000", + "blockheight": 114, + "txindex": 1, + "locktime": 113, + "version": 2, + "inputs": [ + { + "txid": "c3f4a0f787b5ea11505afaba3e9599d6135943d0f562df3d6a7d3e7f372e2067", + "index": 0, + "sequence": 4294967293 + } + ], + "outputs": [ + { + "index": 0, + "amount_msat": 1000000000, + "scriptPubKey": "00205f743123f9584a76058bac1142ec2bc6c60b4b2af1d3145e74418d41ae51009e" + }, + { + "index": 1, + "amount_msat": 995073000, + "scriptPubKey": "5120974c19d5ed96a62a1bd10ad187fee5c2e3146f772228c5ae7a42b36e74cf24cf" + } + ] + }, + { + "hash": "1aa6d7b0bb6c5d1dac62724caa4e26dc37ed8af5e747c836746987d28603fed2", + "rawtx": "02000000000101b6f77750c0aae7faf2aa6e4b38a14671adc8def298a0b89ced09596f002aa5ef0000000000ffffffff026b6f070000000000160014730274d976305fe63d212c880cf89fd0f08272873ac80700000000002251202bdd81f95d64ed2cc37d2eae725de428c91bff072d7503d87446970eedc630300400473044022008dec4948db1c9e4db4dcf8c223f554117e48c6aa0aac471de67c03163a82e4a0220018bdb9889230e0048a378efad73d3bec83c330baa727323d95ca86fe36301b701473044022022cec9df9ece54e1ca89888bdc19ed84e5202a93070d05aa9b3236f9990b440d0220376f7fd6edb49ad13596cdfd51d929a92d45bc88da3f16ed0777014a28025a2801475221021c29746e4136ddff456483df3980c2d0d5f31c93ef5ded564f7294a10d7414aa2103c47b1b2afcfd68c7b86c0976adb9a4f0835bc78242fced745d78433497a867d652ae00000000", + "blockheight": 122, + "txindex": 1, + "locktime": 0, + "version": 2, + "inputs": [ + { + "txid": "efa52a006f5909ed9cb8a098f2dec8ad7146a1384b6eaaf2fae7aac05077f7b6", + "index": 0, + "sequence": 4294967295 + } + ], + "outputs": [ + { + "index": 0, + "amount_msat": 487275000, + "scriptPubKey": "0014730274d976305fe63d212c880cf89fd0f0827287" + }, + { + "index": 1, + "amount_msat": 510010000, + "scriptPubKey": "51202bdd81f95d64ed2cc37d2eae725de428c91bff072d7503d87446970eedc63030" + } + ] + }, + { + "hash": "40b4acd3759ac69b5160488d73a5890a46bf4f013381e52e9171ee038b3c96d6", + "rawtx": "02000000000101a92a6508defe049b47f2420c054cb1a446198faf4bfd74bb2479b3c45075ce7c0000000000ffffffff02026e07000000000022512085d72025e78fd08bb61119f0987ab0041f50561ada6e130c645343db8c44c2afeec8070000000000225120a7583f0c421663b8ca76fa579018b40682ef8553d73fd061cd8f216ecdced6a30400473044022064d1a5480d76bc71d44ee440a47ec30e7433812292ca8d4876e5e59cd2950e4802201ece394b4bcbf6ba3f21152236822cfb2eeed8e5897d3bf3499e9d7d1a5d092e01473044022068cd05fe53fa71118b643e5340ea3cd169a3ca655c64c0b30f78d720d79a957502200f14d30de4251cf016a3db3475fe5472772335b76dfc268dc173e6541026b1830147522102d595ae92b3544c3250fb772f214ad8d4c51425033740a5bcc357190add6d7e7a2102d6063d022691b2490ab454dee73a57c6ff5d308352b461ece69f3c284f2c241252ae00000000", + "blockheight": 122, + "txindex": 2, + "locktime": 0, + "version": 2, + "inputs": [ + { + "txid": "7cce7550c4b37924bb74fd4baf8f1946a4b14c050c42f2479b04fede08652aa9", + "index": 0, + "sequence": 4294967295 + } + ], + "outputs": [ + { + "index": 0, + "amount_msat": 486914000, + "scriptPubKey": "512085d72025e78fd08bb61119f0987ab0041f50561ada6e130c645343db8c44c2af" + }, + { + "index": 1, + "amount_msat": 510190000, + "scriptPubKey": "5120a7583f0c421663b8ca76fa579018b40682ef8553d73fd061cd8f216ecdced6a3" + } + ] + }, + { + "hash": "148a366c9a72e40af01daca6acc24e0a5648d0efb7e01f4708f23412d9deba69", + "rawtx": "0200000000010255310c6239b1c691cda8c054f3933467fb75153dddbd83dabec5d621990ddc920000000000fdffffffa7330551ea1fb2cc2d6ce491391f6830228b4bf5f2a616ab0a372002027e93ed0100000000fdffffff0245571e0000000000225120fdab7c01fae70c08e0b1f9acacca110a53121e75dc54a25e7542416f342aeaf740420f00000000002200209655e2a7330cd86dc69f8ed1845af5580dd06b15a794034c9571e53d5639b397014051b8117b0f4726cb33d05a6289f25addc41f5cf4a572b1a00aa494e88c3d9771729e9473eb8bb3679eac5a13964260269e317924cbf0e55c5aba600dbbc4af1002473044022049960f9cc0d1c77c8b85614adb8ed91b2a0a55a3e4bdac12a3de90880485f5e2022012e7ccc5f87ca3e0f485b2b16a95cc026079b18358dcb20fb0cd44348105751a01210330a75acaed258be6bc02da9fab058abbe0e770caceb7c6496eaaea7014c3d39b7b000000", + "blockheight": 124, + "txindex": 1, + "locktime": 123, + "version": 2, + "inputs": [ + { + "txid": "92dc0d9921d6c5beda83bddd3d1575fb673493f354c0a8cd91c6b139620c3155", + "index": 0, + "sequence": 4294967293 + }, + { + "txid": "ed937e020220370aab16a6f2f54b8b2230681f3991e46c2dccb21fea510533a7", + "index": 1, + "sequence": 4294967293 + } + ], + "outputs": [ + { + "index": 0, + "amount_msat": 1988421000, + "scriptPubKey": "5120fdab7c01fae70c08e0b1f9acacca110a53121e75dc54a25e7542416f342aeaf7" + }, + { + "index": 1, + "amount_msat": 1000000000, + "scriptPubKey": "00209655e2a7330cd86dc69f8ed1845af5580dd06b15a794034c9571e53d5639b397" + } + ] + }, + { + "hash": "e72c5b057eb2944ade8a57c7d1143cc5eea12f0905287ce40c2716ed7032bd29", + "rawtx": "02000000000101a7330551ea1fb2cc2d6ce491391f6830228b4bf5f2a616ab0a372002027e93ed0000000000fdffffff0280841e000000000016001449acd7d82366c662bc8fef84bd3900b09bafbba54bd982ec0000000016001423c5939000b149132489269b028c1a596d96af480247304402204b0db0024b5141333d9e95410d91fcd3f8f3e60a2b26a7572694b0c094bae64e022062dad17af68f819b3463f57e75b3e93d257ed73b66f8045eed8d3bfd7252908501210387ee92224b3c95d3a3af78c32cec2b07b1c250e3bdb80a2e80dadc02e684040c7c000000", + "blockheight": 125, + "txindex": 1, + "locktime": 124, + "version": 2, + "inputs": [ + { + "txid": "ed937e020220370aab16a6f2f54b8b2230681f3991e46c2dccb21fea510533a7", + "index": 0, + "sequence": 4294967293 + } + ], + "outputs": [ + { + "index": 0, + "amount_msat": 2000000000, + "scriptPubKey": "001449acd7d82366c662bc8fef84bd3900b09bafbba5" + }, + { + "index": 1, + "amount_msat": 3967998283000, + "scriptPubKey": "001423c5939000b149132489269b028c1a596d96af48" + } + ] + }, + { + "hash": "a7875c7325031784771cf9468aae991f7cb178bd9472a701339a7a5eab234af2", + "rawtx": "0200000000010129bd3270ed16270ce47c2805092fa1eec53c14d1c7578ade4a94b27e055b2ce70000000000fdffffff0240420f0000000000220020dd2b22d7f86c0cb8edca4d979b316aa5a8a390a37440b3f387edfa6e3efb630d012f0f00000000002251207b8ca7b7f827d8f94a2846c4e5d84fbae1a5b7453ff03ca1859f25888325b80a02473044022038b791a95551665f80a79e75cd2b53035913a1e3314c8135d2e1e2d60ef253df02202a80e65020cd2c160830a8d93cde5fc9ec92299104df83a59c41420370daf20001210235953f2aa25835f70cc1da3418d935b88a9f95a134dd86636bf018f532d282fe7d000000", + "blockheight": 126, + "txindex": 1, + "locktime": 125, + "version": 2, + "inputs": [ + { + "txid": "e72c5b057eb2944ade8a57c7d1143cc5eea12f0905287ce40c2716ed7032bd29", + "index": 0, + "sequence": 4294967293 + } + ], + "outputs": [ + { + "index": 0, + "amount_msat": 1000000000, + "scriptPubKey": "0020dd2b22d7f86c0cb8edca4d979b316aa5a8a390a37440b3f387edfa6e3efb630d" + }, + { + "index": 1, + "amount_msat": 995073000, + "scriptPubKey": "51207b8ca7b7f827d8f94a2846c4e5d84fbae1a5b7453ff03ca1859f25888325b80a" + } + ] + }, + { + "hash": "59d7273c7dde3b2786f7325da08a303779ee718443aaa25d03db19c9e909591b", + "rawtx": "0200000000010190ee63cdc0e3f2b01c954abef709af77c0d966ca3f45b6b39ab9cfb6546c7a790100000000fdffffff08e803000000000000160014a43b821a9790f880e113a395b717a0f354b9d9c6e687150000000000225120327b99fbacbcc3bbcf9489bf7f3dac2642d933685754f558586afbacd17f9c26e8030000000000002251202f843ba0c8de9d0c41a63a25d4cab22032be4fabf24931dab82214316be218cae8030000000000002251200978ea47f31ad6561d96ceee14e85192726536c4e1e59d09f217f3b5762b0630e80300000000000016001407905c6189c1ae8aff12566b03f35ff516d17e84e803000000000000160014d1dc90a7bb3af91ed69e933dc38f555b580fad09e8030000000000001600146a1845bb0ea1f8efa63f00f325641db7350dcd5be803000000000000160014dfadaae18d57e4ef50e15b863d9e648bf9af67b10140eeb15b713763a95f40db82138b6f02a8ae8e49aad37ab3647d943a27713069f87376087de9ba49b7a477581f02cf4b4de25a468ee611b7a1ca2e71c3b1e179748c000000", + "blockheight": 141, + "txindex": 1, + "locktime": 140, + "version": 2, + "inputs": [ + { + "txid": "797a6c54b6cfb99ab3b6453fca66d9c077af09f7be4a951cb0f2e3c0cd63ee90", + "index": 1, + "sequence": 4294967293 + } + ], + "outputs": [ + { + "index": 0, + "amount_msat": 1000000, + "scriptPubKey": "0014a43b821a9790f880e113a395b717a0f354b9d9c6" + }, + { + "index": 1, + "amount_msat": 1411046000, + "scriptPubKey": "5120327b99fbacbcc3bbcf9489bf7f3dac2642d933685754f558586afbacd17f9c26" + }, + { + "index": 2, + "amount_msat": 1000000, + "scriptPubKey": "51202f843ba0c8de9d0c41a63a25d4cab22032be4fabf24931dab82214316be218ca" + }, + { + "index": 3, + "amount_msat": 1000000, + "scriptPubKey": "51200978ea47f31ad6561d96ceee14e85192726536c4e1e59d09f217f3b5762b0630" + }, + { + "index": 4, + "amount_msat": 1000000, + "scriptPubKey": "001407905c6189c1ae8aff12566b03f35ff516d17e84" + }, + { + "index": 5, + "amount_msat": 1000000, + "scriptPubKey": "0014d1dc90a7bb3af91ed69e933dc38f555b580fad09" + }, + { + "index": 6, + "amount_msat": 1000000, + "scriptPubKey": "00146a1845bb0ea1f8efa63f00f325641db7350dcd5b" + }, + { + "index": 7, + "amount_msat": 1000000, + "scriptPubKey": "0014dfadaae18d57e4ef50e15b863d9e648bf9af67b1" + } + ] + }, + { + "hash": "f9e2ca6abf9450803ef6a1a75964277dd39b2f35f77acffc3a5978437b421aec", + "rawtx": "02000000000102b6f77750c0aae7faf2aa6e4b38a14671adc8def298a0b89ced09596f002aa5ef0100000000fdffffffc54a87b4517d7daf033a11b21f2ccf114304487c4189599816f3e243569c600c0100000000fdffffff0240420f0000000000220020b41521751a8eb257315f73a531763071cc39b7cece470f630fd5149fe7b7057ac594eb0b00000000225120a5410daebf4fc3cba618a840af497fbec4c3a084534f2b7b6a7d30bf35f8f5660140528e20b424e1ac7f2ae067093552f424dade1321ec396a7d382866be7bba9ba5a3faf375dc9b39d676d8adab67c30df596bca1412c3871bb9538fc00265c35bf02473044022003304f0d559771fe9d4b06dccecacbef7eaef5a97c7618b567de1ba53e7146ef02207f7138b9cd7fca8ea13498e6fed96b225873131c45b5c46e4e78c7fe45d5b3e9012102c8a8f25ed135cd671c88bd4e407bb3746678cfacbcf65ce89f8efc2aa0abe5359b000000", + "blockheight": 156, + "txindex": 1, + "locktime": 155, + "version": 2, + "inputs": [ + { + "txid": "efa52a006f5909ed9cb8a098f2dec8ad7146a1384b6eaaf2fae7aac05077f7b6", "index": 1, - "sequence": 2158511000 + "sequence": 4294967293 + }, + { + "txid": "0c609c5643e2f316985989417c48044311cf2c1fb2113a03af7d7d51b4874ac5", + "index": 1, + "sequence": 4294967293 } ], "outputs": [ + { + "index": 0, + "amount_msat": 1000000000, + "scriptPubKey": "0020b41521751a8eb257315f73a531763071cc39b7cece470f630fd5149fe7b7057a" + }, { "index": 1, - "amount_msat": 201998901100, - "scriptPubKey": "scriptpubkey01010101010101010101010101010101010101010101010101010101" + "amount_msat": 199988421000, + "scriptPubKey": "5120a5410daebf4fc3cba618a840af497fbec4c3a084534f2b7b6a7d30bf35f8f566" } ] }, { - "hash": "txid7000270002700027000270002700027000270002700027000270002", - "rawtx": "02000000000101lstx70002700027000270002700027000270002700027000270002700027000270002700027000270002700027000270002700027000270002700027000270002700027000270002700027000270002700027000270002", - "blockheight": 102, + "hash": "a5e7471ae03d284673ac3189164522587568bf47179e94a90cc0f043cff39bb5", + "rawtx": "02000000000101ec1a427b4378593afccf7af7352f9bd37d276459a7a1f63e805094bf6acae2f90000000000ffffffff0176390f0000000000225120ebc29bf1526b5c18e4d14bdc0c2425e683d81ea0036c6834b98f5b04cdcb9d95040047304402206bb171775ea5334c9e604505eccd5010025e0bbfd65186e2e4f976a15dbce329022072d784a17bb46a4439b90a45d18f8cf2c28d80ff4388f4fe94740919cc6db2cf014730440220719782d4dba4b5024b5d35d7d590f84df275b1b921ec77e71cd98e55d677d702022042c25f4975c8eece9e5d0a820eed0a91a87fa063f9f584316c9838542a3f850001475221030c3fc0add8628ae8acc7befa2b833c455db3868be6de7add97b945a1e506f7fe21036c8bee77fa3632abc7a5df76cf029650eea826896024a70eaa64cac8a0131c1c52ae00000000", + "blockheight": 156, + "txindex": 5, + "locktime": 0, + "version": 2, + "inputs": [ + { + "txid": "f9e2ca6abf9450803ef6a1a75964277dd39b2f35f77acffc3a5978437b421aec", + "index": 0, + "sequence": 4294967295 + } + ], + "outputs": [ + { + "index": 0, + "amount_msat": 997750000, + "scriptPubKey": "5120ebc29bf1526b5c18e4d14bdc0c2425e683d81ea0036c6834b98f5b04cdcb9d95" + } + ] + }, + { + "hash": "34e8ce026401c205cf74556beb2c11b9d9243fd4d74902127e739c11d865021b", + "rawtx": "020000000001080ca195cdd7b29ead524961e05456441fa5e2c97c8262739ecdb6d2228b29353b0000000000fdffffff0ca195cdd7b29ead524961e05456441fa5e2c97c8262739ecdb6d2228b29353b0200000000fdffffff1b5909e9c919db035da2aa438471ee7937308aa05d32f786273bde7d3c27d7590000000000fdffffff1b5909e9c919db035da2aa438471ee7937308aa05d32f786273bde7d3c27d7590200000000fdffffff1b5909e9c919db035da2aa438471ee7937308aa05d32f786273bde7d3c27d7590700000000fdffffff9a8c6de235929d0b3850ec06560bf60d252718a1aadfe8e0718218af4878d1790100000000fdffffffb17766dac493e0b215e2255ae236477dd453cad94560d7f418face046fd6c3f80100000000fdffffffd7dbbaa1e20d2efed3c4241e554bd38be7b87b97dab1024d7880b72a862d584c0000000000fdffffff04204e000000000000220020369444aad3ac8c5452be625479f761587c42fbf66fecf644447daabc73c498223075000000000000220020d90c23ede7b77f89f4cae93da9326ba176d158a0b65faeaede5684c3c0f7c8392808440700000000220020f7bbe8f915381b4b9b1ca14cccbfd156eea19888550d01a5014f977e98c7fc8ca86100000000000022512018ece00b736f9ed77ed3a87426643c242223e3d6116a4cd6d90946f73de2ce71024730440220426dde8016515f8f897454cc37361219c5414f5e21cf91598047f12e3ad2fb8102202602d18876f20eb58a593b93e782b820cb68347d7beba839113a3a1d5b31a9400121028a599168d3c97debc71bc66e6270ecf054f300d888309ba05471a482175dd93002473044022069681451f9469ec6e7b4a62db78999e9ded9b2eb1682b0d90895f0fe67cedb8e02204d80c50638d043a9a8cdb34259774e7b9a474047c178b61ec4ded0ae186c1602012102272a9a25f1ffed52fab04a2cc88aeab135b53723856a8f1481c26417f88a922e0247304402204a2f0bb65bfafd85a6ffeaf9e75ec9dbe20f5d9bc50d8d98126942c00951aa2802203877c0326e64585cf4c767e57398eaff58a279542e9fd16a223d1f507d1bfdbb01210267f4468ffafe6f919ae871f57f09690467f494e83e0358dc64d10472f9072f4c01405cac3f8d65efa45a8e253c40cdfe97d8bc182e8ea04de2ecdd3fe488c6a9fe6508cf336ac742417a80ca805f069e088d4e8ad79575cf5d8dade454f69645ce6b0247304402206a5d75ef2bedb452594a97c52277b8532725cf5804b62669872d97c0cb499c03022011aff97f2c87ce8d99eda0f9a2f73f2668a82aea6e0acfe3b7b01893f05fc403012103d034f788f410c2ec2d89d161df3c3715f965248aa53eace463d10eca443eb1f20247304402203605a17cf717f57d125b999fac579064cb576c214a2204a4b8a106695607b4bd02201e41c14bcc19af1083d7a716a1aa33fe8b23b3b07eda3d30074146b4146834f60121029da47016812598be384212ce15793496c0ec2176a87e81c6432dae964f87c9870247304402201f4bb570df0095b4c5f1c35c5db787e9e2d289ae3cc9d0b75decbc7bb41e25c00220789c3d68621f25bf1fa30e72652591354c71aa8397fd1fa18442a0ffa037900f01210328cc8fc978e209f1695fa5b5655061db1aab2311b524176945bf1015ef2d4b89014024629ca4144d02f2f414e30644b1b7800d19d07ccf88e6c25cc3c5bd208f16c71c0deda1230d7df241f63a25b4e32a3036ff20168564e24b816693dda22b44d89c000000", + "blockheight": 157, "txindex": 1, - "locktime": 549000200, + "locktime": 156, "version": 2, "inputs": [ { - "txid": "txid600126001260012600126001260012600126001260012600126001260012", + "txid": "3b35298b22d2b6cd9e7362827cc9e2a51f445654e0614952ad9eb2d7cd95a10c", + "index": 0, + "sequence": 4294967293 + }, + { + "txid": "3b35298b22d2b6cd9e7362827cc9e2a51f445654e0614952ad9eb2d7cd95a10c", + "index": 2, + "sequence": 4294967293 + }, + { + "txid": "59d7273c7dde3b2786f7325da08a303779ee718443aaa25d03db19c9e909591b", + "index": 0, + "sequence": 4294967293 + }, + { + "txid": "59d7273c7dde3b2786f7325da08a303779ee718443aaa25d03db19c9e909591b", + "index": 2, + "sequence": 4294967293 + }, + { + "txid": "59d7273c7dde3b2786f7325da08a303779ee718443aaa25d03db19c9e909591b", + "index": 7, + "sequence": 4294967293 + }, + { + "txid": "79d17848af188271e0e8dfaaa11827250df60b5606ec50380b9d9235e26d8c9a", + "index": 1, + "sequence": 4294967293 + }, + { + "txid": "f8c3d66f04cefa18f4d76045d9ca53d47d4736e25a25e215b2e093c4da6677b1", "index": 1, - "sequence": 2158512000 + "sequence": 4294967293 + }, + { + "txid": "4c582d862ab780784d02b1da977bb8e78bd34b551e24c4d3fe2e0de2a1badbd7", + "index": 0, + "sequence": 4294967293 } ], "outputs": [ + { + "index": 0, + "amount_msat": 20000000, + "scriptPubKey": "0020369444aad3ac8c5452be625479f761587c42fbf66fecf644447daabc73c49822" + }, { "index": 1, - "amount_msat": 201998902100, - "scriptPubKey": "scriptpubkey02010201020102010201020102010201020102010201020102010201" + "amount_msat": 30000000, + "scriptPubKey": "0020d90c23ede7b77f89f4cae93da9326ba176d158a0b65faeaede5684c3c0f7c839" }, { "index": 2, - "amount_msat": 201998902200, - "scriptPubKey": "scriptpubkey02020202020202020202020202020202020202020202020202020202" + "amount_msat": 121899048000, + "scriptPubKey": "0020f7bbe8f915381b4b9b1ca14cccbfd156eea19888550d01a5014f977e98c7fc8c" + }, + { + "index": 3, + "amount_msat": 25000000, + "scriptPubKey": "512018ece00b736f9ed77ed3a87426643c242223e3d6116a4cd6d90946f73de2ce71" + } + ] + }, + { + "hash": "bb23aa273032a5f997312034dcc92b09ba6ff343ab8b1fa76796710db0177b79", + "rawtx": "020000000001011b0265d8119c737e120249d7d43f24d9b9112ceb6b5574cf05c2016402cee8340000000000ffffffff0156450000000000002251208de5a3aa566cb6dc9037206bc73530ce6d7d8ea2dd1c488aec5862cb8b8e860e04004730440220173a7f31ffc8ff5925c7b5248078acfcd484bb83ce0364ab18cca92dbe3be06202201516c8cb93e17d653c2bd66d02cb82635cb0ff12779c7062b5514f0ea65db3ea01473044022061f9b595763ffffd1c33e7fc3004fc8054031eedb45fe11941592d0f854dbfb5022043660a53fe00e56b93bd284e24337fff4501d06108b66cf07efd3cb13576dae30147522102f52c0210d5b05d38a0c01f316be27ad07fadb10015f497accfa78b7c3cdb5cb621038f2a5514a8fd540d306215ea47cded68140a4d1346f0b8dc35b4261701f7ec6952ae00000000", + "blockheight": 157, + "txindex": 4, + "locktime": 0, + "version": 2, + "inputs": [ + { + "txid": "34e8ce026401c205cf74556beb2c11b9d9243fd4d74902127e739c11d865021b", + "index": 0, + "sequence": 4294967295 + } + ], + "outputs": [ + { + "index": 0, + "amount_msat": 17750000, + "scriptPubKey": "51208de5a3aa566cb6dc9037206bc73530ce6d7d8ea2dd1c488aec5862cb8b8e860e" } ] } diff --git a/doc/schemas/multifundchannel.json b/doc/schemas/multifundchannel.json index 21df27d15ae5..15ab497d4a30 100644 --- a/doc/schemas/multifundchannel.json +++ b/doc/schemas/multifundchannel.json @@ -344,15 +344,15 @@ "params": { "destinations": [ { - "id": "nodeid030303030303030303030303030303030303030303030303030303030303@127.0.0.1:19736", + "id": "035d2b1192dfba134e10e540875d366ebc8bc353d5aa766b80c090b39c3a5d885d@127.0.0.1:30005", "amount": "20000sat" }, { - "id": "nodeid040404040404040404040404040404040404040404040404040404040404@127.0.0.1:19737", + "id": "0382ce59ebf18be7d84677c2e35f23294b9992ceca95491fcf8a56c6cb2d9de199@127.0.0.1:30007", "amount": "0.0003btc" }, { - "id": "nodeid050505050505050505050505050505050505050505050505050505050505@127.0.0.1:19738", + "id": "032cf15d1ad9c4a08d26eab1918f732d8ef8fdc6abb9640bf3db174372c491304e@127.0.0.1:30009", "amount": "all" } ], @@ -361,12 +361,12 @@ } }, "response": { - "tx": "02000000000101multif50000500005000050000500005000050000500005000050000500005000050000500005000050000500005000050000500005000050000500005000050000500005000050000500005000050000500005000050000500005000050000500005000050000500005000050000500005000050000500005000050000500005000050000500005000050000500005000050000500005000050000500005000050000500005000050000500005000050000500005000050000500005000050000500005000050000500005000050000500005000050000500005000050000500005000050000500005000050000500005000050000500005000050000", - "txid": "channeltxid01050000500005000050000500005000050000500005000050000", + "tx": "020000000001080ca195cdd7b29ead524961e05456441fa5e2c97c8262739ecdb6d2228b29353b0000000000fdffffff0ca195cdd7b29ead524961e05456441fa5e2c97c8262739ecdb6d2228b29353b0200000000fdffffff1b5909e9c919db035da2aa438471ee7937308aa05d32f786273bde7d3c27d7590000000000fdffffff1b5909e9c919db035da2aa438471ee7937308aa05d32f786273bde7d3c27d7590200000000fdffffff1b5909e9c919db035da2aa438471ee7937308aa05d32f786273bde7d3c27d7590700000000fdffffff9a8c6de235929d0b3850ec06560bf60d252718a1aadfe8e0718218af4878d1790100000000fdffffffb17766dac493e0b215e2255ae236477dd453cad94560d7f418face046fd6c3f80100000000fdffffffd7dbbaa1e20d2efed3c4241e554bd38be7b87b97dab1024d7880b72a862d584c0000000000fdffffff04204e000000000000220020369444aad3ac8c5452be625479f761587c42fbf66fecf644447daabc73c498223075000000000000220020d90c23ede7b77f89f4cae93da9326ba176d158a0b65faeaede5684c3c0f7c8392808440700000000220020f7bbe8f915381b4b9b1ca14cccbfd156eea19888550d01a5014f977e98c7fc8ca86100000000000022512018ece00b736f9ed77ed3a87426643c242223e3d6116a4cd6d90946f73de2ce71024730440220426dde8016515f8f897454cc37361219c5414f5e21cf91598047f12e3ad2fb8102202602d18876f20eb58a593b93e782b820cb68347d7beba839113a3a1d5b31a9400121028a599168d3c97debc71bc66e6270ecf054f300d888309ba05471a482175dd93002473044022069681451f9469ec6e7b4a62db78999e9ded9b2eb1682b0d90895f0fe67cedb8e02204d80c50638d043a9a8cdb34259774e7b9a474047c178b61ec4ded0ae186c1602012102272a9a25f1ffed52fab04a2cc88aeab135b53723856a8f1481c26417f88a922e0247304402204a2f0bb65bfafd85a6ffeaf9e75ec9dbe20f5d9bc50d8d98126942c00951aa2802203877c0326e64585cf4c767e57398eaff58a279542e9fd16a223d1f507d1bfdbb01210267f4468ffafe6f919ae871f57f09690467f494e83e0358dc64d10472f9072f4c01405cac3f8d65efa45a8e253c40cdfe97d8bc182e8ea04de2ecdd3fe488c6a9fe6508cf336ac742417a80ca805f069e088d4e8ad79575cf5d8dade454f69645ce6b0247304402206a5d75ef2bedb452594a97c52277b8532725cf5804b62669872d97c0cb499c03022011aff97f2c87ce8d99eda0f9a2f73f2668a82aea6e0acfe3b7b01893f05fc403012103d034f788f410c2ec2d89d161df3c3715f965248aa53eace463d10eca443eb1f20247304402203605a17cf717f57d125b999fac579064cb576c214a2204a4b8a106695607b4bd02201e41c14bcc19af1083d7a716a1aa33fe8b23b3b07eda3d30074146b4146834f60121029da47016812598be384212ce15793496c0ec2176a87e81c6432dae964f87c9870247304402201f4bb570df0095b4c5f1c35c5db787e9e2d289ae3cc9d0b75decbc7bb41e25c00220789c3d68621f25bf1fa30e72652591354c71aa8397fd1fa18442a0ffa037900f01210328cc8fc978e209f1695fa5b5655061db1aab2311b524176945bf1015ef2d4b89014024629ca4144d02f2f414e30644b1b7800d19d07ccf88e6c25cc3c5bd208f16c71c0deda1230d7df241f63a25b4e32a3036ff20168564e24b816693dda22b44d89c000000", + "txid": "34e8ce026401c205cf74556beb2c11b9d9243fd4d74902127e739c11d865021b", "channel_ids": [ { - "id": "nodeid030303030303030303030303030303030303030303030303030303030303", - "channel_id": "channelid1100011000110001100011000110001100011000110001100011000", + "id": "035d2b1192dfba134e10e540875d366ebc8bc353d5aa766b80c090b39c3a5d885d", + "channel_id": "a9c39915cfa357205e3597ec62d92c541a2be7f44b9c6292e126aeddb11bf97e", "channel_type": { "bits": [ 12, @@ -377,11 +377,11 @@ "anchors/even" ] }, - "outnum": 1 + "outnum": 0 }, { - "id": "nodeid040404040404040404040404040404040404040404040404040404040404", - "channel_id": "channelid1200012000120001200012000120001200012000120001200012000", + "id": "0382ce59ebf18be7d84677c2e35f23294b9992ceca95491fcf8a56c6cb2d9de199", + "channel_id": "a4a379248e49d207cc984646e632e1a31105a85708b9d6d961a5018fdd489f5a", "channel_type": { "bits": [ 12, @@ -395,8 +395,8 @@ "outnum": 1 }, { - "id": "nodeid050505050505050505050505050505050505050505050505050505050505", - "channel_id": "channelid1300013000130001300013000130001300013000130001300013000", + "id": "032cf15d1ad9c4a08d26eab1918f732d8ef8fdc6abb9640bf3db174372c491304e", + "channel_id": "e13472d6512413eb1bf03b9a0bb391d0e4152fd337fa6d1014e3de5e131918d9", "channel_type": { "bits": [ 12, @@ -407,7 +407,7 @@ "anchors/even" ] }, - "outnum": 1 + "outnum": 2 } ], "failed": [] @@ -420,15 +420,15 @@ "params": { "destinations": [ { - "id": "fakenodeid03030303030303030303030303030303030303030303030303030303@127.0.0.1:19736", + "id": "03a389b3a2f7aa6f9f4ccc19f2bd7a2eba83596699e86b715caaaa147fc37f3144@127.0.0.1:30005", "amount": 50000 }, { - "id": "nodeid040404040404040404040404040404040404040404040404040404040404@127.0.0.1:19737", + "id": "0382ce59ebf18be7d84677c2e35f23294b9992ceca95491fcf8a56c6cb2d9de199@127.0.0.1:30007", "amount": 50000 }, { - "id": "nodeid010101010101010101010101010101010101010101010101010101010101@127.0.0.1:19734", + "id": "0266e4598d1d3c415f572a8488830b60f7e744ed9235eb0b1ba93283b315c03518@127.0.0.1:30001", "amount": 50000 } ], @@ -436,12 +436,12 @@ } }, "response": { - "tx": "02000000000102multif60000600006000060000600006000060000600006000060000600006000060000600006000060000600006000060000600006000060000600006000060000600006000060000600006000060000600006000060000600006000060000600006000060000600006000060000600006000060000600006000060000600006000060000600006000060000600006000060000600006000060000600006000060000600006000060000600006000060000600006000060000600006000060000600006000060000600006000060000600006000060000600006000060000600006000060000600006000060000600006000060000600006000060000", - "txid": "channeltxid02060000600006000060000600006000060000600006000060000", + "tx": "020000000001021b0265d8119c737e120249d7d43f24d9b9112ceb6b5574cf05c2016402cee8340300000000fdffffff7375f9b47d75c6e3af621018a50fa2c8b9094f08f4aae0873c7f183eb7941ec10000000000fdffffff0250c30000000000002200209bd3269fda069b7ee0584622d458bb437635b3a179265dee3843ef18f42f35c6ed84430700000000225120def24e878a66b695c4d5b414b42b7ce94471dac985bb0afb0367e8bbb92c5a5201403801494402ede78cdce356dbcef09aec5e2f27284d899a7f580392c4af28ec6de04447e5cac3549b3648a3a55e2e5eefeba4fe98d23d3a84f1e7c61265bf5e5e01406ec83566298057fd8b0d18e0056148e33ea2846e83086bc1d409191b0820c51a9f3e6e144d4eac7f2e1bea9ba1f60ba2cc43b0e1b0de3dff293f6ad577275d709d000000", + "txid": "a19c811497b26bb270b9a80fb75ceda91c12049faf4b83facfb12e7738a1eadf", "channel_ids": [ { - "id": "nodeid040404040404040404040404040404040404040404040404040404040404", - "channel_id": "channelid1520015200152001520015200152001520015200152001520015200", + "id": "0382ce59ebf18be7d84677c2e35f23294b9992ceca95491fcf8a56c6cb2d9de199", + "channel_id": "09eb55872cd9039ecd08281af756e23b15aad4129fd6a9bcd71b472114ebf43a", "channel_type": { "bits": [ 12, @@ -452,7 +452,7 @@ "anchors/even" ] }, - "outnum": 1 + "outnum": 0 } ], "failed": [ @@ -461,11 +461,11 @@ "method": "connect", "error": { "code": 401, - "message": "All addresses failed: 127.0.0.1:19736: Cryptographic handshake: peer closed connection (wrong key?). " + "message": "All addresses failed: 127.0.0.1:30005: Cryptographic handshake: peer closed connection (wrong key?). " } }, { - "id": "nodeid010101010101010101010101010101010101010101010101010101010101", + "id": "0266e4598d1d3c415f572a8488830b60f7e744ed9235eb0b1ba93283b315c03518", "method": "connect", "error": { "code": 402, diff --git a/doc/schemas/multiwithdraw.json b/doc/schemas/multiwithdraw.json index bca8866824f1..3eeb91212c00 100644 --- a/doc/schemas/multiwithdraw.json +++ b/doc/schemas/multiwithdraw.json @@ -104,8 +104,8 @@ } }, "response": { - "tx": "02000000000155multiw55000550005500055000550005500055000550005500055000550005500055000550005500055000550005500055000550005500055000550005500055000550005500055000550005500055000550005500055000550005500055000550005500055000550005500055000550005500055000550005500055000550005500055000550005500055000550005500055000550005500055000550005500055000550005500055000550005500055000550005500055000550005500055000550005500055000550005500055000550005500055000550005500055000550005500055000550005500055000550005500055000550005500055000", - "txid": "txid5500055000550005500055000550005500055000550005500055000" + "tx": "0200000000010190ee63cdc0e3f2b01c954abef709af77c0d966ca3f45b6b39ab9cfb6546c7a790000000000fdffffff03ae080000000000001600143d43d226bcc27019ade52d7a3dc52a7ac1be28b8f74e080000000000225120875b3dfe08354212207c94733807164505835a44100738a9c27a62bd5deef480050d000000000000160014d55c493983db651e10477455b1d408c31e7e9e310247304402205fad492ec062feca17e59887dabbea8100f2e4ec7fcfe5abeb7f88457c4cf4a10220445a0b8813843f05c1c87571e25dfebe6c54cb91dd80560e383b0de90d78b788012103a26fcdff9cd9ce50aefbe3efcb26788cee5808e312d1d6d35603a368ded1d68c2c000000", + "txid": "3b35298b22d2b6cd9e7362827cc9e2a51f445654e0614952ad9eb2d7cd95a10c" } }, { @@ -139,8 +139,8 @@ } }, "response": { - "tx": "02000000000155multiw56000560005600056000560005600056000560005600056000560005600056000560005600056000560005600056000560005600056000560005600056000560005600056000560005600056000560005600056000560005600056000560005600056000560005600056000560005600056000560005600056000560005600056000560005600056000560005600056000560005600056000560005600056000560005600056000560005600056000560005600056000560005600056000560005600056000560005600056000560005600056000560005600056000560005600056000560005600056000560005600056000560005600056000", - "txid": "txid5600056000560005600056000560005600056000560005600056000" + "tx": "0200000000010190ee63cdc0e3f2b01c954abef709af77c0d966ca3f45b6b39ab9cfb6546c7a790100000000fdffffff08e803000000000000160014a43b821a9790f880e113a395b717a0f354b9d9c6e687150000000000225120327b99fbacbcc3bbcf9489bf7f3dac2642d933685754f558586afbacd17f9c26e8030000000000002251202f843ba0c8de9d0c41a63a25d4cab22032be4fabf24931dab82214316be218cae8030000000000002251200978ea47f31ad6561d96ceee14e85192726536c4e1e59d09f217f3b5762b0630e80300000000000016001407905c6189c1ae8aff12566b03f35ff516d17e84e803000000000000160014d1dc90a7bb3af91ed69e933dc38f555b580fad09e8030000000000001600146a1845bb0ea1f8efa63f00f325641db7350dcd5be803000000000000160014dfadaae18d57e4ef50e15b863d9e648bf9af67b10140eeb15b713763a95f40db82138b6f02a8ae8e49aad37ab3647d943a27713069f87376087de9ba49b7a477581f02cf4b4de25a468ee611b7a1ca2e71c3b1e179748c000000", + "txid": "59d7273c7dde3b2786f7325da08a303779ee718443aaa25d03db19c9e909591b" } } ] diff --git a/doc/schemas/offer.json b/doc/schemas/offer.json index 06c791f14074..991107b0cd4c 100644 --- a/doc/schemas/offer.json +++ b/doc/schemas/offer.json @@ -196,10 +196,10 @@ } }, "response": { - "offer_id": "offeridl21000002100000210000021000002100000210000021000002100000", + "offer_id": "dca9774ba2925b48c42eb12e599c09389d9d80d44445c4d0c944556c7228746e", "active": true, "single_use": false, - "bolt12": "lno1qgsq000bolt210002100021000210002100021000210002100021000210002100021000210002100021000210002100021000210002100021000210002100021000", + "bolt12": "lno1qgsqvgnwgcg35z6ee2h3yczraddm72xrfua9uve2rlrm9deu7xyfzrcgqgn3qzs2ge5hx6pqwdskcefpzcssytfzxcs2xkdy0lml0tzy0jzugmyj8kjn8zfzrgq9fsgurc72x82e", "used": false, "created": true } @@ -215,10 +215,10 @@ } }, "response": { - "offer_id": "offeridl22000002200000220000022000002200000220000022000002200000", + "offer_id": "f901018768e13ea2da95f437749e24d22d47b2a6ea3030ef66ae0281df49d94b", "active": true, "single_use": false, - "bolt12": "lno1qgsq000bolt220002200022000220002200022000220002200022000220002200022000220002200022000220002200022000220002200022000220002200022000", + "bolt12": "lno1qgsqvgnwgcg35z6ee2h3yczraddm72xrfua9uve2rlrm9deu7xyfzrcgqv85ysq2qepk7enxv4j3gqg2zcssytfzxcs2xkdy0lml0tzy0jzugmyj8kjn8zfzrgq9fsgurc72x82e", "used": false, "created": true } diff --git a/doc/schemas/openchannel_abort.json b/doc/schemas/openchannel_abort.json index 3af44d85ebc2..b9c261246dc1 100644 --- a/doc/schemas/openchannel_abort.json +++ b/doc/schemas/openchannel_abort.json @@ -81,11 +81,11 @@ "id": "example:openchannel_abort#1", "method": "openchannel_abort", "params": { - "channel_id": "channelid0111200111200111200111200111200111200111200111200111200" + "channel_id": "b020c1c6818daf024954c9ee578caad058cbcae7dd75b2c4d38b8f6f81901ff5" } }, "response": { - "channel_id": "channelid0111200111200111200111200111200111200111200111200111200", + "channel_id": "b020c1c6818daf024954c9ee578caad058cbcae7dd75b2c4d38b8f6f81901ff5", "channel_canceled": false, "reason": "Abort requested" } diff --git a/doc/schemas/openchannel_bump.json b/doc/schemas/openchannel_bump.json index 6b93147a772f..d55c05be31e2 100644 --- a/doc/schemas/openchannel_bump.json +++ b/doc/schemas/openchannel_bump.json @@ -179,13 +179,13 @@ "params": [ "b020c1c6818daf024954c9ee578caad058cbcae7dd75b2c4d38b8f6f81901ff5", 1000000, - "cHNidP8BAgQCAAAAAQMEbwAAAAEEAQpsbt510000510000510000510000510000510000510000510000510000510000510000510000510000510000510000510000510000510000510000510000510000510000510000510000510000510000510000510000510000510000510000510000510000510000510000510000510000510000510000510000", + "cHNidP8BAF4CAAAAAfFzeDEZi+pD6TLIJPXz4vliVqLRobrIby/0l1ZyiZ2dAAAAAAD9////AUFZ3AsAAAAAIlEgO+E35aPNS3YQRaiMByjTJDUYNvBO1Z39o3m42EZGUreaAAAAAAEAcQIAAAAB+wnUg4jUSt7ZSoGLTSFJkEiVi4BORL5XG9PScQI1uHoBAAAAAP3///8CAMLrCwAAAAAWABQDz+yHFeH0BKNuwBHkI4+GMp+QnAYT9NIAAAAAFgAUIowMzAOV9xHOQM4YHS2bZ5k6oe2HAAAAAQEfAMLrCwAAAAAWABQDz+yHFeH0BKNuwBHkI4+GMp+QnAAA", "15000perkw" ] }, "response": { - "channel_id": "channelid0111200111200111200111200111200111200111200111200111200", - "psbt": "cHNidP8BAgQCAAAAAQMEbwAAAAEEAQpsbt810000810000810000810000810000810000810000810000810000810000810000810000810000810000810000810000810000810000810000810000810000810000810000810000810000810000810000810000810000810000810000810000810000810000810000810000810000810000810000810000", + "channel_id": "b020c1c6818daf024954c9ee578caad058cbcae7dd75b2c4d38b8f6f81901ff5", + "psbt": "cHNidP8BAgQCAAAAAQMEmgAAAAEEAQEBBQECAQYBAwH7BAIAAAAAAQBxAgAAAAH7CdSDiNRK3tlKgYtNIUmQSJWLgE5Evlcb09JxAjW4egEAAAAA/f///wIAwusLAAAAABYAFAPP7IcV4fQEo27AEeQjj4Yyn5CcBhP00gAAAAAWABQijAzMA5X3Ec5AzhgdLZtnmTqh7YcAAAABAR8AwusLAAAAABYAFAPP7IcV4fQEo27AEeQjj4Yyn5CcAQ4g8XN4MRmL6kPpMsgk9fPi+WJWotGhushvL/SXVnKJnZ0BDwQAAAAAARAE/f///wz8CWxpZ2h0bmluZwEICu/Rzf4eie4AAQMIQVncCwAAAAABBCJRIDvhN+WjzUt2EEWojAco0yQ1GDbwTtWd/aN5uNhGRlK3DPwJbGlnaHRuaW5nAQgM79HN/h6J7gABAwhAQg8AAAAAAAEEIgAgybxcBjyu+/emx4FEB7Vie0+BqLVuy+kyxoL5y6wNGd8M/AlsaWdodG5pbmcBCHcug9YGu7NYAA==", "channel_type": { "bits": [ 12, @@ -197,7 +197,7 @@ ] }, "commitments_secured": false, - "funding_serial": 17725655605188030000, + "funding_serial": 8587946494701319000, "requires_confirmed_inputs": false } }, @@ -206,15 +206,15 @@ "id": "example:openchannel_bump#2", "method": "openchannel_bump", "params": { - "channel_id": "channelid0111200111200111200111200111200111200111200111200111200", + "channel_id": "b020c1c6818daf024954c9ee578caad058cbcae7dd75b2c4d38b8f6f81901ff5", "amount": 1000000, - "initialpsbt": "cHNidP8BAgQCAAAAAQMEbwAAAAEEAQpsbt510000510000510000510000510000510000510000510000510000510000510000510000510000510000510000510000510000510000510000510000510000510000510000510000510000510000510000510000510000510000510000510000510000510000510000510000510000510000510000510000", + "initialpsbt": "cHNidP8BAF4CAAAAAfFzeDEZi+pD6TLIJPXz4vliVqLRobrIby/0l1ZyiZ2dAAAAAAD9////AUFZ3AsAAAAAIlEgO+E35aPNS3YQRaiMByjTJDUYNvBO1Z39o3m42EZGUreaAAAAAAEAcQIAAAAB+wnUg4jUSt7ZSoGLTSFJkEiVi4BORL5XG9PScQI1uHoBAAAAAP3///8CAMLrCwAAAAAWABQDz+yHFeH0BKNuwBHkI4+GMp+QnAYT9NIAAAAAFgAUIowMzAOV9xHOQM4YHS2bZ5k6oe2HAAAAAQEfAMLrCwAAAAAWABQDz+yHFeH0BKNuwBHkI4+GMp+QnAAA", "funding_feerate": "15000perkw" } }, "response": { - "channel_id": "channelid0111200111200111200111200111200111200111200111200111200", - "psbt": "cHNidP8BAgQCAAAAAQMEbwAAAAEEAQpsbt910000910000910000910000910000910000910000910000910000910000910000910000910000910000910000910000910000910000910000910000910000910000910000910000910000910000910000910000910000910000910000910000910000910000910000910000910000910000910000910000", + "channel_id": "b020c1c6818daf024954c9ee578caad058cbcae7dd75b2c4d38b8f6f81901ff5", + "psbt": "cHNidP8BAgQCAAAAAQMEmgAAAAEEAQEBBQECAQYBAwH7BAIAAAAAAQBxAgAAAAH7CdSDiNRK3tlKgYtNIUmQSJWLgE5Evlcb09JxAjW4egEAAAAA/f///wIAwusLAAAAABYAFAPP7IcV4fQEo27AEeQjj4Yyn5CcBhP00gAAAAAWABQijAzMA5X3Ec5AzhgdLZtnmTqh7YcAAAABAR8AwusLAAAAABYAFAPP7IcV4fQEo27AEeQjj4Yyn5CcAQ4g8XN4MRmL6kPpMsgk9fPi+WJWotGhushvL/SXVnKJnZ0BDwQAAAAAARAE/f///wz8CWxpZ2h0bmluZwEIEu/Rzf4eie4AAQMIQVncCwAAAAABBCJRIDvhN+WjzUt2EEWojAco0yQ1GDbwTtWd/aN5uNhGRlK3DPwJbGlnaHRuaW5nAQgU79HN/h6J7gABAwhAQg8AAAAAAAEEIgAgybxcBjyu+/emx4FEB7Vie0+BqLVuy+kyxoL5y6wNGd8M/AlsaWdodG5pbmcBCJlh/FQRnSXyAA==", "channel_type": { "bits": [ 12, @@ -226,7 +226,7 @@ ] }, "commitments_secured": false, - "funding_serial": 17725655605188040000, + "funding_serial": 11052392398546871794, "requires_confirmed_inputs": false } }, @@ -237,13 +237,13 @@ "params": [ "b020c1c6818daf024954c9ee578caad058cbcae7dd75b2c4d38b8f6f81901ff5", 2000000, - "cHNidP8BAgQCAAAAAQMEbwAAAAEEAQpsbt520000520000520000520000520000520000520000520000520000520000520000520000520000520000520000520000520000520000520000520000520000520000520000520000520000520000520000520000520000520000520000520000520000520000520000520000520000520000520000520000", + "cHNidP8BAF4CAAAAAfFzeDEZi+pD6TLIJPXz4vliVqLRobrIby/0l1ZyiZ2dAAAAAAD9////AWINzQsAAAAAIlEgyRg+3pEh88b9FJiCLEenYCcyJ2ackJUIhDusW72BP2iaAAAAAAEAcQIAAAAB+wnUg4jUSt7ZSoGLTSFJkEiVi4BORL5XG9PScQI1uHoBAAAAAP3///8CAMLrCwAAAAAWABQDz+yHFeH0BKNuwBHkI4+GMp+QnAYT9NIAAAAAFgAUIowMzAOV9xHOQM4YHS2bZ5k6oe2HAAAAAQEfAMLrCwAAAAAWABQDz+yHFeH0BKNuwBHkI4+GMp+QnAAA", "18750perkw" ] }, "response": { - "channel_id": "channelid0111200111200111200111200111200111200111200111200111200", - "psbt": "cHNidP8BAgQCAAAAAQMEbwAAAAEEAQpsbt101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000", + "channel_id": "b020c1c6818daf024954c9ee578caad058cbcae7dd75b2c4d38b8f6f81901ff5", + "psbt": "cHNidP8BAgQCAAAAAQMEmgAAAAEEAQEBBQECAQYBAwH7BAIAAAAAAQBxAgAAAAH7CdSDiNRK3tlKgYtNIUmQSJWLgE5Evlcb09JxAjW4egEAAAAA/f///wIAwusLAAAAABYAFAPP7IcV4fQEo27AEeQjj4Yyn5CcBhP00gAAAAAWABQijAzMA5X3Ec5AzhgdLZtnmTqh7YcAAAABAR8AwusLAAAAABYAFAPP7IcV4fQEo27AEeQjj4Yyn5CcAQ4g8XN4MRmL6kPpMsgk9fPi+WJWotGhushvL/SXVnKJnZ0BDwQAAAAAARAE/f///wz8CWxpZ2h0bmluZwEIGu/Rzf4eie4AAQMIYg3NCwAAAAABBCJRIMkYPt6RIfPG/RSYgixHp2AnMidmnJCVCIQ7rFu9gT9oDPwJbGlnaHRuaW5nAQgc79HN/h6J7gABAwiAhB4AAAAAAAEEIgAgybxcBjyu+/emx4FEB7Vie0+BqLVuy+kyxoL5y6wNGd8M/AlsaWdodG5pbmcBCJth/FQRnSXyAA==", "channel_type": { "bits": [ 12, @@ -255,7 +255,7 @@ ] }, "commitments_secured": false, - "funding_serial": 17725655605188050000, + "funding_serial": 11196507586622727666, "requires_confirmed_inputs": false } } diff --git a/doc/schemas/openchannel_init.json b/doc/schemas/openchannel_init.json index f15857d130ed..321037639f5d 100644 --- a/doc/schemas/openchannel_init.json +++ b/doc/schemas/openchannel_init.json @@ -219,14 +219,14 @@ "id": "example:openchannel_init#1", "method": "openchannel_init", "params": { - "id": "nodeid121212121212121212121212121212121212121212121212121212121212", + "id": "03a00f49374e4bb876e766e9305e5fefa86e53dbc89a4f27d794b02f59ca316426", "amount": 1000000, - "initialpsbt": "cHNidP8BAgQCAAAAAQMEbwAAAAEEAQpsbt310000310000310000310000310000310000310000310000310000310000310000310000310000310000310000310000310000310000310000310000310000310000310000310000310000310000310000310000310000310000310000310000310000310000310000310000310000310000310000310000" + "initialpsbt": "cHNidP8BAF4CAAAAARxvUMSNjH7EKMXzxKwycdOSZ64xHQfWS7JFe0pAwIPCAAAAAAD9////AahhAAAAAAAAIlEg+3d9jpNmK0getyg5W+Mp31CPIRDKcJg/mZs/uaVrQ+GbAAAAAAEAiQIAAAAB8XN4MRmL6kPpMsgk9fPi+WJWotGhushvL/SXVnKJnZ0AAAAAAP3///8CYg3NCwAAAAAiUSDJGD7ekSHzxv0UmIIsR6dgJzInZpyQlQiEO6xbvYE/aICEHgAAAAAAIgAgybxcBjyu+/emx4FEB7Vie0+BqLVuy+kyxoL5y6wNGd+aAAAAAQErYg3NCwAAAAAiUSDJGD7ekSHzxv0UmIIsR6dgJzInZpyQlQiEO6xbvYE/aAAA" } }, "response": { "channel_id": "a5be438539f73c018a98a4b9dd557d62430881c56552025b5579d180cc3887ed", - "psbt": "cHNidP8BAgQCAAAAAQMEbwAAAAEEAQpsbt610000610000610000610000610000610000610000610000610000610000610000610000610000610000610000610000610000610000610000610000610000610000610000610000610000610000610000610000610000610000610000610000610000610000610000610000610000610000610000610000", + "psbt": "cHNidP8BAgQCAAAAAQMEmwAAAAEEAQEBBQECAQYBAwH7BAIAAAAAAQCJAgAAAAHxc3gxGYvqQ+kyyCT18+L5Ylai0aG6yG8v9JdWcomdnQAAAAAA/f///wJiDc0LAAAAACJRIMkYPt6RIfPG/RSYgixHp2AnMidmnJCVCIQ7rFu9gT9ogIQeAAAAAAAiACDJvFwGPK7796bHgUQHtWJ7T4GotW7L6TLGgvnLrA0Z35oAAAABAStiDc0LAAAAACJRIMkYPt6RIfPG/RSYgixHp2AnMidmnJCVCIQ7rFu9gT9oAQ4gHG9QxI2MfsQoxfPErDJx05JnrjEdB9ZLskV7SkDAg8IBDwQAAAAAARAE/f///wz8CWxpZ2h0bmluZwEIIu/Rzf4eie4AAQMIqGEAAAAAAAABBCJRIPt3fY6TZitIHrcoOVvjKd9QjyEQynCYP5mbP7mla0PhDPwJbGlnaHRuaW5nAQgk79HN/h6J7gABAwhAQg8AAAAAAAEEIgAgBkixRgS2irzkjzD4bs/Wm7V/PQFNNgUvPR5aBVpSJHoM/AlsaWdodG5pbmcBCJtVC0YlHyOoAA==", "channel_type": { "bits": [ 12, @@ -238,7 +238,7 @@ ] }, "commitments_secured": false, - "funding_serial": 17725655605188010000, + "funding_serial": 11192864844797649832, "requires_confirmed_inputs": false } }, @@ -247,14 +247,14 @@ "id": "example:openchannel_init#2", "method": "openchannel_init", "params": [ - "nodeid121212121212121212121212121212121212121212121212121212121212", + "03a00f49374e4bb876e766e9305e5fefa86e53dbc89a4f27d794b02f59ca316426", 500000, - "cHNidP8BAgQCAAAAAQMEbwAAAAEEAQpsbt410000410000410000410000410000410000410000410000410000410000410000410000410000410000410000410000410000410000410000410000410000410000410000410000410000410000410000410000410000410000410000410000410000410000410000410000410000410000410000410000" + "cHNidP8BAF4CAAAAARxvUMSNjH7EKMXzxKwycdOSZ64xHQfWS7JFe0pAwIPCAAAAAAD9////AetRxQsAAAAAIlEg21kTTo7K2doCG6F2JqgaDjc1kRCrH7AL08oPVVJhuE+bAAAAAAEAiQIAAAAB8XN4MRmL6kPpMsgk9fPi+WJWotGhushvL/SXVnKJnZ0AAAAAAP3///8CYg3NCwAAAAAiUSDJGD7ekSHzxv0UmIIsR6dgJzInZpyQlQiEO6xbvYE/aICEHgAAAAAAIgAgybxcBjyu+/emx4FEB7Vie0+BqLVuy+kyxoL5y6wNGd+aAAAAAQErYg3NCwAAAAAiUSDJGD7ekSHzxv0UmIIsR6dgJzInZpyQlQiEO6xbvYE/aAAA" ] }, "response": { "channel_id": "b3b2e46371876858784cd1b87ecf406e32d8f98b7a44b7f436d1dca317ce0f1b", - "psbt": "cHNidP8BAgQCAAAAAQMEbwAAAAEEAQpsbt710000710000710000710000710000710000710000710000710000710000710000710000710000710000710000710000710000710000710000710000710000710000710000710000710000710000710000710000710000710000710000710000710000710000710000710000710000710000710000710000", + "psbt": "cHNidP8BAgQCAAAAAQMEmwAAAAEEAQEBBQECAQYBAwH7BAIAAAAAAQCJAgAAAAHxc3gxGYvqQ+kyyCT18+L5Ylai0aG6yG8v9JdWcomdnQAAAAAA/f///wJiDc0LAAAAACJRIMkYPt6RIfPG/RSYgixHp2AnMidmnJCVCIQ7rFu9gT9ogIQeAAAAAAAiACDJvFwGPK7796bHgUQHtWJ7T4GotW7L6TLGgvnLrA0Z35oAAAABAStiDc0LAAAAACJRIMkYPt6RIfPG/RSYgixHp2AnMidmnJCVCIQ7rFu9gT9oAQ4gHG9QxI2MfsQoxfPErDJx05JnrjEdB9ZLskV7SkDAg8IBDwQAAAAAARAE/f///wz8CWxpZ2h0bmluZwEIKu/Rzf4eie4AAQMI61HFCwAAAAABBCJRINtZE06OytnaAhuhdiaoGg43NZEQqx+wC9PKD1VSYbhPDPwJbGlnaHRuaW5nAQgs79HN/h6J7gABAwggoQcAAAAAAAEEIgAgwbQfi9x464yTOq8b2y9CaCVPKAtJ32SfSqtAVGakS8gM/AlsaWdodG5pbmcBCEl4ogWzGZoyAA==", "channel_type": { "bits": [ 12, @@ -266,7 +266,7 @@ ] }, "commitments_secured": false, - "funding_serial": 17725655605188020000, + "funding_serial": 5294159507337353778, "requires_confirmed_inputs": false } } diff --git a/doc/schemas/openchannel_signed.json b/doc/schemas/openchannel_signed.json index 6d8ed6e7f4f4..011180c8bbf2 100644 --- a/doc/schemas/openchannel_signed.json +++ b/doc/schemas/openchannel_signed.json @@ -94,14 +94,14 @@ "id": "example:openchannel_signed#1", "method": "openchannel_signed", "params": { - "channel_id": "channelid0111200111200111200111200111200111200111200111200111200", - "signed_psbt": "cHNidP8BAgQCAAAAAQMEbwAAAAEEAQpsbt111000111000111000111000111000111000111000111000111000111000111000111000111000111000111000111000111000111000111000111000111000111000111000111000111000111000111000111000111000111000111000111000111000111000111000111000111000111000111000111000" + "channel_id": "b020c1c6818daf024954c9ee578caad058cbcae7dd75b2c4d38b8f6f81901ff5", + "signed_psbt": "cHNidP8BAgQCAAAAAQMEmgAAAAEEAQEBBQECAQYBAwH7BAIAAAAAAQBxAgAAAAH7CdSDiNRK3tlKgYtNIUmQSJWLgE5Evlcb09JxAjW4egEAAAAA/f///wIAwusLAAAAABYAFAPP7IcV4fQEo27AEeQjj4Yyn5CcBhP00gAAAAAWABQijAzMA5X3Ec5AzhgdLZtnmTqh7YcAAAABAR8AwusLAAAAABYAFAPP7IcV4fQEo27AEeQjj4Yyn5CcIgICRz15z0oQ57qDTAJqrEPqGLCn+3Xs2lGEv6+oxGYV9rdHMEQCID20o7OkdrA186bhtl5XxvomAgLw5qTckxZ94vSI8teaAiAIfpvcxym7FktDtx2ApNv/Tgz0EOxLEtpXp8HgO8/pqQEiBgJHPXnPShDnuoNMAmqsQ+oYsKf7dezaUYS/r6jEZhX2twgDz+yHAAAAAAEOIPFzeDEZi+pD6TLIJPXz4vliVqLRobrIby/0l1ZyiZ2dAQ8EAAAAAAEQBP3///8M/AlsaWdodG5pbmcBCBLv0c3+HonuAAEDCEFZ3AsAAAAAAQQiUSA74Tflo81LdhBFqIwHKNMkNRg28E7Vnf2jebjYRkZStyEHE0cioCqqq2UZ2npxQi9Q6DXNZheODM6F4GjHHS3XScEJAG/ctUwEAAAADPwJbGlnaHRuaW5nAQgU79HN/h6J7gABAwhAQg8AAAAAAAEEIgAgybxcBjyu+/emx4FEB7Vie0+BqLVuy+kyxoL5y6wNGd8M/AlsaWdodG5pbmcBCJlh/FQRnSXyAA==" } }, "response": { - "tx": "02000000000101sgpsbt11000110001100011000110001100011000110001100011000110001100011000110001100011000110001100011000110001100011000110001100011000110001100011000110001100011000110001100011000110001100011000110001100011000110001100011000110001100011000110001100011000110001100011000110001100011000110001100011000110001100011000110001100011000110001100011000110001100011000110001100011000110001100011000110001100011000110001100011000110001100011000110001100011000110001100011000110001100011000110001100011000110001100011000", - "txid": "txidocsigned1011000110001100011000110001100011000110001100011000", - "channel_id": "channelid0111200111200111200111200111200111200111200111200111200" + "tx": "02000000000101f1737831198bea43e932c824f5f3e2f96256a2d1a1bac86f2ff4975672899d9d0000000000fdffffff024159dc0b000000002251203be137e5a3cd4b761045a88c0728d324351836f04ed59dfda379b8d8464652b740420f0000000000220020c9bc5c063caefbf7a6c7814407b5627b4f81a8b56ecbe932c682f9cbac0d19df0247304402203db4a3b3a476b035f3a6e1b65e57c6fa260202f0e6a4dc93167de2f488f2d79a0220087e9bdcc729bb164b43b71d80a4dbff4e0cf410ec4b12da57a7c1e03bcfe9a9012102473d79cf4a10e7ba834c026aac43ea18b0a7fb75ecda5184bfafa8c46615f6b79a000000", + "txid": "96239136e3ac09f93976cc24142edb8f40139b1d5f50b19263649de5d8433962", + "channel_id": "b020c1c6818daf024954c9ee578caad058cbcae7dd75b2c4d38b8f6f81901ff5" } }, { @@ -110,13 +110,13 @@ "method": "openchannel_signed", "params": [ "b020c1c6818daf024954c9ee578caad058cbcae7dd75b2c4d38b8f6f81901ff5", - "cHNidP8BAgQCAAAAAQMEbwAAAAEEAQpsbt121000121000121000121000121000121000121000121000121000121000121000121000121000121000121000121000121000121000121000121000121000121000121000121000121000121000121000121000121000121000121000121000121000121000121000121000121000121000121000121000" + "cHNidP8BAgQCAAAAAQMEmgAAAAEEAQEBBQECAQYBAwH7BAIAAAAAAQBxAgAAAAH7CdSDiNRK3tlKgYtNIUmQSJWLgE5Evlcb09JxAjW4egEAAAAA/f///wIAwusLAAAAABYAFAPP7IcV4fQEo27AEeQjj4Yyn5CcBhP00gAAAAAWABQijAzMA5X3Ec5AzhgdLZtnmTqh7YcAAAABAR8AwusLAAAAABYAFAPP7IcV4fQEo27AEeQjj4Yyn5CcIgICRz15z0oQ57qDTAJqrEPqGLCn+3Xs2lGEv6+oxGYV9rdHMEQCIFl+CUBKJcswA/8DnqzPrYolo0k0uUfRJv60eB4niMmJAiA169wRBmliX5GL7+hqb2OHZ5i81V0lkIJylHfvkn933QEiBgJHPXnPShDnuoNMAmqsQ+oYsKf7dezaUYS/r6jEZhX2twgDz+yHAAAAAAEOIPFzeDEZi+pD6TLIJPXz4vliVqLRobrIby/0l1ZyiZ2dAQ8EAAAAAAEQBP3///8M/AlsaWdodG5pbmcBCBrv0c3+HonuAAEDCGINzQsAAAAAAQQiUSDJGD7ekSHzxv0UmIIsR6dgJzInZpyQlQiEO6xbvYE/aCEHn35PoCbJlSMQ2fFCjyoCQfQi72lK/cajhKIKcycdYWwJABIqDc8FAAAADPwJbGlnaHRuaW5nAQgc79HN/h6J7gABAwiAhB4AAAAAAAEEIgAgybxcBjyu+/emx4FEB7Vie0+BqLVuy+kyxoL5y6wNGd8M/AlsaWdodG5pbmcBCJth/FQRnSXyAA==" ] }, "response": { - "tx": "02000000000101sgpsbt12000120001200012000120001200012000120001200012000120001200012000120001200012000120001200012000120001200012000120001200012000120001200012000120001200012000120001200012000120001200012000120001200012000120001200012000120001200012000120001200012000120001200012000120001200012000120001200012000120001200012000120001200012000120001200012000120001200012000120001200012000120001200012000120001200012000120001200012000120001200012000120001200012000120001200012000120001200012000120001200012000120001200012000", - "txid": "txidocsigned1012000120001200012000120001200012000120001200012000", - "channel_id": "channelid0111200111200111200111200111200111200111200111200111200" + "tx": "02000000000101f1737831198bea43e932c824f5f3e2f96256a2d1a1bac86f2ff4975672899d9d0000000000fdffffff02620dcd0b00000000225120c9183ede9121f3c6fd1498822c47a760273227669c909508843bac5bbd813f6880841e0000000000220020c9bc5c063caefbf7a6c7814407b5627b4f81a8b56ecbe932c682f9cbac0d19df024730440220597e09404a25cb3003ff039eaccfad8a25a34934b947d126feb4781e2788c989022035ebdc110669625f918befe86a6f63876798bcd55d259082729477ef927f77dd012102473d79cf4a10e7ba834c026aac43ea18b0a7fb75ecda5184bfafa8c46615f6b79a000000", + "txid": "c283c0404a7b45b24bd6071d31ae6792d37132acc4f3c528c47e8c8dc4506f1c", + "channel_id": "b020c1c6818daf024954c9ee578caad058cbcae7dd75b2c4d38b8f6f81901ff5" } } ] diff --git a/doc/schemas/openchannel_update.json b/doc/schemas/openchannel_update.json index da85795244be..afe5c6322d06 100644 --- a/doc/schemas/openchannel_update.json +++ b/doc/schemas/openchannel_update.json @@ -211,13 +211,13 @@ "id": "example:openchannel_update#1", "method": "openchannel_update", "params": { - "channel_id": "channelid0111200111200111200111200111200111200111200111200111200", - "psbt": "cHNidP8BAgQCAAAAAQMEbwAAAAEEAQpsbt910000910000910000910000910000910000910000910000910000910000910000910000910000910000910000910000910000910000910000910000910000910000910000910000910000910000910000910000910000910000910000910000910000910000910000910000910000910000910000910000" + "channel_id": "b020c1c6818daf024954c9ee578caad058cbcae7dd75b2c4d38b8f6f81901ff5", + "psbt": "cHNidP8BAgQCAAAAAQMEmgAAAAEEAQEBBQECAQYBAwH7BAIAAAAAAQBxAgAAAAH7CdSDiNRK3tlKgYtNIUmQSJWLgE5Evlcb09JxAjW4egEAAAAA/f///wIAwusLAAAAABYAFAPP7IcV4fQEo27AEeQjj4Yyn5CcBhP00gAAAAAWABQijAzMA5X3Ec5AzhgdLZtnmTqh7YcAAAABAR8AwusLAAAAABYAFAPP7IcV4fQEo27AEeQjj4Yyn5CcAQ4g8XN4MRmL6kPpMsgk9fPi+WJWotGhushvL/SXVnKJnZ0BDwQAAAAAARAE/f///wz8CWxpZ2h0bmluZwEIEu/Rzf4eie4AAQMIQVncCwAAAAABBCJRIDvhN+WjzUt2EEWojAco0yQ1GDbwTtWd/aN5uNhGRlK3DPwJbGlnaHRuaW5nAQgU79HN/h6J7gABAwhAQg8AAAAAAAEEIgAgybxcBjyu+/emx4FEB7Vie0+BqLVuy+kyxoL5y6wNGd8M/AlsaWdodG5pbmcBCJlh/FQRnSXyAA==" } }, "response": { - "channel_id": "channelid0111200111200111200111200111200111200111200111200111200", - "psbt": "cHNidP8BAgQCAAAAAQMEbwAAAAEEAQpsbt910000910000910000910000910000910000910000910000910000910000910000910000910000910000910000910000910000910000910000910000910000910000910000910000910000910000910000910000910000910000910000910000910000910000910000910000910000910000910000910000", + "channel_id": "b020c1c6818daf024954c9ee578caad058cbcae7dd75b2c4d38b8f6f81901ff5", + "psbt": "cHNidP8BAgQCAAAAAQMEmgAAAAEEAQEBBQECAQYBAwH7BAIAAAAAAQBxAgAAAAH7CdSDiNRK3tlKgYtNIUmQSJWLgE5Evlcb09JxAjW4egEAAAAA/f///wIAwusLAAAAABYAFAPP7IcV4fQEo27AEeQjj4Yyn5CcBhP00gAAAAAWABQijAzMA5X3Ec5AzhgdLZtnmTqh7YcAAAABAR8AwusLAAAAABYAFAPP7IcV4fQEo27AEeQjj4Yyn5CcAQ4g8XN4MRmL6kPpMsgk9fPi+WJWotGhushvL/SXVnKJnZ0BDwQAAAAAARAE/f///wz8CWxpZ2h0bmluZwEIEu/Rzf4eie4AAQMIQVncCwAAAAABBCJRIDvhN+WjzUt2EEWojAco0yQ1GDbwTtWd/aN5uNhGRlK3DPwJbGlnaHRuaW5nAQgU79HN/h6J7gABAwhAQg8AAAAAAAEEIgAgybxcBjyu+/emx4FEB7Vie0+BqLVuy+kyxoL5y6wNGd8M/AlsaWdodG5pbmcBCJlh/FQRnSXyAA==", "channel_type": { "bits": [ 12, @@ -239,12 +239,12 @@ "method": "openchannel_update", "params": [ "b020c1c6818daf024954c9ee578caad058cbcae7dd75b2c4d38b8f6f81901ff5", - "cHNidP8BAgQCAAAAAQMEbwAAAAEEAQpsbt101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000" + "cHNidP8BAgQCAAAAAQMEmgAAAAEEAQEBBQECAQYBAwH7BAIAAAAAAQBxAgAAAAH7CdSDiNRK3tlKgYtNIUmQSJWLgE5Evlcb09JxAjW4egEAAAAA/f///wIAwusLAAAAABYAFAPP7IcV4fQEo27AEeQjj4Yyn5CcBhP00gAAAAAWABQijAzMA5X3Ec5AzhgdLZtnmTqh7YcAAAABAR8AwusLAAAAABYAFAPP7IcV4fQEo27AEeQjj4Yyn5CcAQ4g8XN4MRmL6kPpMsgk9fPi+WJWotGhushvL/SXVnKJnZ0BDwQAAAAAARAE/f///wz8CWxpZ2h0bmluZwEIGu/Rzf4eie4AAQMIYg3NCwAAAAABBCJRIMkYPt6RIfPG/RSYgixHp2AnMidmnJCVCIQ7rFu9gT9oDPwJbGlnaHRuaW5nAQgc79HN/h6J7gABAwiAhB4AAAAAAAEEIgAgybxcBjyu+/emx4FEB7Vie0+BqLVuy+kyxoL5y6wNGd8M/AlsaWdodG5pbmcBCJth/FQRnSXyAA==" ] }, "response": { - "channel_id": "channelid0111200111200111200111200111200111200111200111200111200", - "psbt": "cHNidP8BAgQCAAAAAQMEbwAAAAEEAQpsbt101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000", + "channel_id": "b020c1c6818daf024954c9ee578caad058cbcae7dd75b2c4d38b8f6f81901ff5", + "psbt": "cHNidP8BAgQCAAAAAQMEmgAAAAEEAQEBBQECAQYBAwH7BAIAAAAAAQBxAgAAAAH7CdSDiNRK3tlKgYtNIUmQSJWLgE5Evlcb09JxAjW4egEAAAAA/f///wIAwusLAAAAABYAFAPP7IcV4fQEo27AEeQjj4Yyn5CcBhP00gAAAAAWABQijAzMA5X3Ec5AzhgdLZtnmTqh7YcAAAABAR8AwusLAAAAABYAFAPP7IcV4fQEo27AEeQjj4Yyn5CcAQ4g8XN4MRmL6kPpMsgk9fPi+WJWotGhushvL/SXVnKJnZ0BDwQAAAAAARAE/f///wz8CWxpZ2h0bmluZwEIGu/Rzf4eie4AAQMIYg3NCwAAAAABBCJRIMkYPt6RIfPG/RSYgixHp2AnMidmnJCVCIQ7rFu9gT9oDPwJbGlnaHRuaW5nAQgc79HN/h6J7gABAwiAhB4AAAAAAAEEIgAgybxcBjyu+/emx4FEB7Vie0+BqLVuy+kyxoL5y6wNGd8M/AlsaWdodG5pbmcBCJth/FQRnSXyAA==", "channel_type": { "bits": [ 12, diff --git a/doc/schemas/pay.json b/doc/schemas/pay.json index 9561aac0a59a..993395cd9906 100644 --- a/doc/schemas/pay.json +++ b/doc/schemas/pay.json @@ -244,17 +244,17 @@ "id": "example:pay#1", "method": "pay", "params": [ - "lnbcrt100n1pnt2bolt11invl032000000000bolt11invl032000000000bolt11invl032000000000bolt11invl032000000000bolt11invl032000000000bolt11invl032000000000bolt11invl032000000000bolt11invl032000000000bolt11invl032000000000bolt11invl032000000000" + "lnbcrt500n1pne035qsp5kk6w4wjl0wudssp0pze5lgkz9hcav6ql523hjxc92knt398y2csqpp54va949c65wepf98heejx7pmjxtqsexghcvehty6urt4l54cl5xssdqcdsenygryv4ekxunfwp6xjmmwxqyjw5qcqp9rzjqgkjyd3q5dv6gllh77kygly9c3kfy0d9xwyjyxsq2nq3c83u5vw4jqqqwqqqqqgqqqqqqqqpqqqqqzsqqc9qxpqysgqgrjzax5dyj6dqqhgrt7t53hrmw4xvjs56kdy450c8jdv53fzf3n4kmersmgydpyyam87jrnu9wrcn78zy6w53zx3lqv45js6sa6rspqqa07y46" ] }, "response": { - "destination": "nodeid030303030303030303030303030303030303030303030303030303030303", - "payment_hash": "paymenthashinvl0320032003200320032003200320032003200320032003200", - "created_at": 1738000000, + "destination": "035d2b1192dfba134e10e540875d366ebc8bc353d5aa766b80c090b39c3a5d885d", + "payment_hash": "ab3a5a971aa3b21494f7ce646f077232c10c9917c33375935c1aebfa571fa1a1", + "created_at": 1738000000.0, "parts": 1, "amount_msat": 50000, "amount_sent_msat": 50001, - "payment_preimage": "paymentpreimagep010101010101010101010101010101010101010101010101", + "payment_preimage": "83ffe698292fbb6083ffe698292fbb6083ffe698292fbb6083ffe698292fbb60", "status": "complete" } }, @@ -263,17 +263,17 @@ "id": "example:pay#2", "method": "pay", "params": { - "bolt11": "lnbcrt100n1pnt2bolt11invl030300000000bolt11invl030300000000bolt11invl030300000000bolt11invl030300000000bolt11invl030300000000bolt11invl030300000000bolt11invl030300000000bolt11invl030300000000bolt11invl030300000000bolt11invl030300000000" + "bolt11": "lnbcrt1u1pne035qsp5xl6xj5nrlrwfadkw89p0htfcqlkt0qrnykpc4kh3vlyr69cglv5qpp59v2rfk0xrknvtuf9yd5lf2vwrhwwwg45mvalz42nhpaff5vax5wsdqcdsenxgryv4ekxunfwp6xjmmwxqyjw5qcqp9rzjqgkjyd3q5dv6gllh77kygly9c3kfy0d9xwyjyxsq2nq3c83u5vw4jqqqwqqqqqgqqqqqqqqpqqqqqzsqqc9qxpqysgq04xpv4pju07a2mt3d02rf5u8ptj8h8vy7qxtc74z6y609x8rwrkhvq2elv8v5mrwac42scc70c7nnyu4xrxu9c8wcsync9dd5dnqdfqqrngrdv" } }, "response": { - "destination": "nodeid030303030303030303030303030303030303030303030303030303030303", - "payment_hash": "paymenthashinvl0330033003300330033003300330033003300330033003300", - "created_at": 1738000000, + "destination": "035d2b1192dfba134e10e540875d366ebc8bc353d5aa766b80c090b39c3a5d885d", + "payment_hash": "2b1434d9e61da6c5f1252369f4a98e1ddce722b4db3bf15553b87a94d19d351d", + "created_at": 1738000000.0, "parts": 1, "amount_msat": 100000, "amount_sent_msat": 100000, - "payment_preimage": "paymentpreimagep020202020202020202020202020202020202020202020202", + "payment_preimage": "83ffe698292fbb6183ffe698292fbb6183ffe698292fbb6183ffe698292fbb61", "status": "complete" } } diff --git a/doc/schemas/ping.json b/doc/schemas/ping.json index 741ad6bf6dac..d08e50a8cbc7 100644 --- a/doc/schemas/ping.json +++ b/doc/schemas/ping.json @@ -69,7 +69,7 @@ "id": "example:ping#1", "method": "ping", "params": { - "id": "nodeid010101010101010101010101010101010101010101010101010101010101", + "id": "0266e4598d1d3c415f572a8488830b60f7e744ed9235eb0b1ba93283b315c03518", "len": 128, "pongbytes": 128 } @@ -83,7 +83,7 @@ "id": "example:ping#2", "method": "ping", "params": { - "id": "nodeid030303030303030303030303030303030303030303030303030303030303", + "id": "035d2b1192dfba134e10e540875d366ebc8bc353d5aa766b80c090b39c3a5d885d", "len": 1000, "pongbytes": 65535 } diff --git a/doc/schemas/plugin.json b/doc/schemas/plugin.json index 0a662ab303cc..1a15f432fbc2 100644 --- a/doc/schemas/plugin.json +++ b/doc/schemas/plugin.json @@ -196,124 +196,124 @@ "method": "plugin", "params": { "subcommand": "start", - "plugin": "/root/lightning/tests/plugins/allow_even_msgs.py" + "plugin": "/home/rusty/devel/cvs/lightning/tests/plugins/allow_even_msgs.py" } }, "response": { "command": "start", "plugins": [ { - "name": "/root/lightning/plugins/autoclean", + "name": "/home/rusty/devel/cvs/lightning/plugins/autoclean", "active": true, "dynamic": false }, { - "name": "/root/lightning/plugins/chanbackup", + "name": "/home/rusty/devel/cvs/lightning/plugins/chanbackup", "active": true, "dynamic": false }, { - "name": "/root/lightning/plugins/bcli", + "name": "/home/rusty/devel/cvs/lightning/plugins/bcli", "active": true, "dynamic": false }, { - "name": "/root/lightning/plugins/commando", + "name": "/home/rusty/devel/cvs/lightning/plugins/commando", "active": true, "dynamic": false }, { - "name": "/root/lightning/plugins/funder", + "name": "/home/rusty/devel/cvs/lightning/plugins/funder", "active": true, "dynamic": true }, { - "name": "/root/lightning/plugins/topology", + "name": "/home/rusty/devel/cvs/lightning/plugins/topology", "active": true, "dynamic": false }, { - "name": "/root/lightning/plugins/exposesecret", + "name": "/home/rusty/devel/cvs/lightning/plugins/exposesecret", "active": true, "dynamic": true }, { - "name": "/root/lightning/plugins/keysend", + "name": "/home/rusty/devel/cvs/lightning/plugins/keysend", "active": true, "dynamic": false }, { - "name": "/root/lightning/plugins/offers", + "name": "/home/rusty/devel/cvs/lightning/plugins/offers", "active": true, "dynamic": true }, { - "name": "/root/lightning/plugins/pay", + "name": "/home/rusty/devel/cvs/lightning/plugins/pay", "active": true, "dynamic": true }, { - "name": "/root/lightning/plugins/recklessrpc", + "name": "/home/rusty/devel/cvs/lightning/plugins/recklessrpc", "active": true, "dynamic": true }, { - "name": "/root/lightning/plugins/recover", + "name": "/home/rusty/devel/cvs/lightning/plugins/recover", "active": true, "dynamic": false }, { - "name": "/root/lightning/plugins/txprepare", + "name": "/home/rusty/devel/cvs/lightning/plugins/txprepare", "active": true, "dynamic": true }, { - "name": "/root/lightning/plugins/cln-renepay", + "name": "/home/rusty/devel/cvs/lightning/plugins/cln-renepay", "active": true, "dynamic": true }, { - "name": "/root/lightning/plugins/cln-xpay", + "name": "/home/rusty/devel/cvs/lightning/plugins/cln-xpay", "active": true, "dynamic": true }, { - "name": "/root/lightning/plugins/spenderp", + "name": "/home/rusty/devel/cvs/lightning/plugins/spenderp", "active": true, "dynamic": false }, { - "name": "/root/lightning/plugins/cln-askrene", + "name": "/home/rusty/devel/cvs/lightning/plugins/cln-askrene", "active": true, "dynamic": true }, { - "name": "/root/lightning/plugins/sql", + "name": "/home/rusty/devel/cvs/lightning/plugins/sql", "active": true, "dynamic": true }, { - "name": "/root/lightning/plugins/cln-grpc", + "name": "/home/rusty/devel/cvs/lightning/plugins/cln-grpc", "active": true, "dynamic": false }, { - "name": "/root/lightning/plugins/cln-lsps-client", + "name": "/home/rusty/devel/cvs/lightning/plugins/cln-lsps-client", "active": true, "dynamic": false }, { - "name": "/root/lightning/plugins/cln-bip353", + "name": "/home/rusty/devel/cvs/lightning/plugins/cln-bip353", "active": true, "dynamic": true }, { - "name": "/root/lightning/plugins/bookkeeper", + "name": "/home/rusty/devel/cvs/lightning/plugins/bookkeeper", "active": true, "dynamic": false }, { - "name": "/root/lightning/tests/plugins/allow_even_msgs.py", + "name": "/home/rusty/devel/cvs/lightning/tests/plugins/allow_even_msgs.py", "active": true, "dynamic": true } @@ -326,7 +326,7 @@ "method": "plugin", "params": { "subcommand": "stop", - "plugin": "/root/lightning/tests/plugins/allow_even_msgs.py" + "plugin": "/home/rusty/devel/cvs/lightning/tests/plugins/allow_even_msgs.py" } }, "response": { @@ -346,112 +346,112 @@ "command": "list", "plugins": [ { - "name": "/root/lightning/plugins/autoclean", + "name": "/home/rusty/devel/cvs/lightning/plugins/autoclean", "active": true, "dynamic": false }, { - "name": "/root/lightning/plugins/chanbackup", + "name": "/home/rusty/devel/cvs/lightning/plugins/chanbackup", "active": true, "dynamic": false }, { - "name": "/root/lightning/plugins/bcli", + "name": "/home/rusty/devel/cvs/lightning/plugins/bcli", "active": true, "dynamic": false }, { - "name": "/root/lightning/plugins/commando", + "name": "/home/rusty/devel/cvs/lightning/plugins/commando", "active": true, "dynamic": false }, { - "name": "/root/lightning/plugins/funder", + "name": "/home/rusty/devel/cvs/lightning/plugins/funder", "active": true, "dynamic": true }, { - "name": "/root/lightning/plugins/topology", + "name": "/home/rusty/devel/cvs/lightning/plugins/topology", "active": true, "dynamic": false }, { - "name": "/root/lightning/plugins/exposesecret", + "name": "/home/rusty/devel/cvs/lightning/plugins/exposesecret", "active": true, "dynamic": true }, { - "name": "/root/lightning/plugins/keysend", + "name": "/home/rusty/devel/cvs/lightning/plugins/keysend", "active": true, "dynamic": false }, { - "name": "/root/lightning/plugins/offers", + "name": "/home/rusty/devel/cvs/lightning/plugins/offers", "active": true, "dynamic": true }, { - "name": "/root/lightning/plugins/pay", + "name": "/home/rusty/devel/cvs/lightning/plugins/pay", "active": true, "dynamic": true }, { - "name": "/root/lightning/plugins/recklessrpc", + "name": "/home/rusty/devel/cvs/lightning/plugins/recklessrpc", "active": true, "dynamic": true }, { - "name": "/root/lightning/plugins/recover", + "name": "/home/rusty/devel/cvs/lightning/plugins/recover", "active": true, "dynamic": false }, { - "name": "/root/lightning/plugins/txprepare", + "name": "/home/rusty/devel/cvs/lightning/plugins/txprepare", "active": true, "dynamic": true }, { - "name": "/root/lightning/plugins/cln-renepay", + "name": "/home/rusty/devel/cvs/lightning/plugins/cln-renepay", "active": true, "dynamic": true }, { - "name": "/root/lightning/plugins/cln-xpay", + "name": "/home/rusty/devel/cvs/lightning/plugins/cln-xpay", "active": true, "dynamic": true }, { - "name": "/root/lightning/plugins/spenderp", + "name": "/home/rusty/devel/cvs/lightning/plugins/spenderp", "active": true, "dynamic": false }, { - "name": "/root/lightning/plugins/cln-askrene", + "name": "/home/rusty/devel/cvs/lightning/plugins/cln-askrene", "active": true, "dynamic": true }, { - "name": "/root/lightning/plugins/sql", + "name": "/home/rusty/devel/cvs/lightning/plugins/sql", "active": true, "dynamic": true }, { - "name": "/root/lightning/plugins/cln-grpc", + "name": "/home/rusty/devel/cvs/lightning/plugins/cln-grpc", "active": true, "dynamic": false }, { - "name": "/root/lightning/plugins/cln-lsps-client", + "name": "/home/rusty/devel/cvs/lightning/plugins/cln-lsps-client", "active": true, "dynamic": false }, { - "name": "/root/lightning/plugins/cln-bip353", + "name": "/home/rusty/devel/cvs/lightning/plugins/cln-bip353", "active": true, "dynamic": true }, { - "name": "/root/lightning/plugins/bookkeeper", + "name": "/home/rusty/devel/cvs/lightning/plugins/bookkeeper", "active": true, "dynamic": false } diff --git a/doc/schemas/preapproveinvoice.json b/doc/schemas/preapproveinvoice.json index d79c726204be..4c5296e4b8d5 100644 --- a/doc/schemas/preapproveinvoice.json +++ b/doc/schemas/preapproveinvoice.json @@ -49,7 +49,7 @@ "id": "example:preapproveinvoice#1", "method": "preapproveinvoice", "params": { - "bolt11": "lnbcrt100n1pnt2bolt11invl020400000000bolt11invl020400000000bolt11invl020400000000bolt11invl020400000000bolt11invl020400000000bolt11invl020400000000bolt11invl020400000000bolt11invl020400000000bolt11invl020400000000bolt11invl020400000000" + "bolt11": "lnbcrt1230n1pne035qsp5s2tkvc25q0p9qu5ghf6pal04thl4kl9q9jggx0fetq5tx7szc0gspp5mmpxzxv7tkpxjhvwyztwky6qlsw3umd87h7x7dvn0hck5t0lc84sdqlv3jhxcmjd9c8g6t0dcsxjmnktakrydqcqp99qxpqysgqa9q3g64xjfq3wqpyxn378zzs3grvlvhmpvtcedvzf0rq0ycu4xgr0ly93ut0wjdyfgfaldteev97qqt6q539qy7ktng4ylfj85kzmkqp5lsp6u" } }, "response": {} @@ -59,7 +59,7 @@ "id": "example:preapproveinvoice#2", "method": "preapproveinvoice", "params": [ - "lnbcrt100n1pnt2bolt11invl020500000000bolt11invl020500000000bolt11invl020500000000bolt11invl020500000000bolt11invl020500000000bolt11invl020500000000bolt11invl020500000000bolt11invl020500000000bolt11invl020500000000bolt11invl020500000000" + "lnbcrt1240n1pne035qsp590nuq4ek3zp48qm5rve22ye75jc6y564fh8qjrlr0j8at7egmtuqpp5ms3uy3duktelvxj02h6nrdzhge83uu5xumyrmxwu4akpezzv80hsdqlv3jhxcmjd9c8g6t0dcsxjmnktakrydgcqp99qxpqysgqad46gpve6njtqr9zsvrz8a56ndz953s88kedwuzge3d4tgv8gfk8u8al36nwmnchrkr7wwy7vc04fdvnewhusxcp457jucl5a5lt4dsqzr7sj8" ] }, "response": {} diff --git a/doc/schemas/preapprovekeysend.json b/doc/schemas/preapprovekeysend.json index 348cad2411e3..84d471ed6853 100644 --- a/doc/schemas/preapprovekeysend.json +++ b/doc/schemas/preapprovekeysend.json @@ -67,7 +67,7 @@ "id": "example:preapprovekeysend#1", "method": "preapprovekeysend", "params": { - "destination": "nodeid020202020202020202020202020202020202020202020202020202020202", + "destination": "022d223620a359a47ff7f7ac447c85c46c923da53389221a0054c11c1e3ca31d59", "payment_hash": "0000000000000000000000000000000000000000000000000000000000000000", "amount_msat": 1000 } @@ -79,7 +79,7 @@ "id": "example:preapprovekeysend#2", "method": "preapprovekeysend", "params": [ - "nodeid050505050505050505050505050505050505050505050505050505050505", + "032cf15d1ad9c4a08d26eab1918f732d8ef8fdc6abb9640bf3db174372c491304e", "0101010101010101010101010101010101010101010101010101010101010101", 2000 ] diff --git a/doc/schemas/recoverchannel.json b/doc/schemas/recoverchannel.json index 5029d7388c65..402655515a55 100644 --- a/doc/schemas/recoverchannel.json +++ b/doc/schemas/recoverchannel.json @@ -58,12 +58,12 @@ "method": "recoverchannel", "params": { "scb": [ - "0000000000000001channelid0340000340000340000340000340000340000340000340000340000nodeid03030303030303030303030303030303030303030303030303030303030300017f000001034003400340034003400340034003400340034003400340034003400340034003400340034003400340034003400003401000", - "0000000000000002channelid0340200340200340200340200340200340200340200340200340200nodeid03030303030303030303030303030303030303030303030303030303030300017f000001034203420342034203420342034203420342034203420342034203420342034203420342034203420342034203420003401000", - "0000000000000003channelid0410000410000410000410000410000410000410000410000410000nodeid01010101010101010101010101010101010101010101010101010101010100017f000001041004100410041004100410041004100410041004100410041004100410041004100410041004100410041004100003401000", - "0000000000000004channelid0120000120000120000120000120000120000120000120000120000nodeid01010101010101010101010101010101010101010101010101010101010100017f000001012001200120012001200120012001200120012001200120012001200120012001200120012001200120012001200003401000", - "0000000000000005channelid1520015200152001520015200152001520015200152001520015200nodeid01010101010101010101010101010101010101010101010101010101010100017f000001015201520152015201520152015201520152015201520152015201520152015201520152015201520152015201520003401000", - "0000000000000006channelid1240012400124001240012400124001240012400124001240012400nodeid02020202020202020202020202020202020202020202020202020202020200017f000001012401240124012401240124012401240124012401240124012401240124012401240124012401240124012401240003401000" + "0000000000000006f4e1de801de57374d5737da622611e3a1ad9f16d5df9c30fceecc11ce732eeeb022d223620a359a47ff7f7ac447c85c46c923da53389221a0054c11c1e3ca31d59017f000001a95cbe3270e5e0998af5eb0a67f7bf6e8d5b3d3d43059b3e4cfbd1e4fca6152c51320000000100000000000f42400003401000000000eb015c0000fffffffffffe000000020000ffffffffffff3283fc1863a9702a8e188ed55475324e55485a8758d2068cfea35851418c55740000fffffffffffed00ec892b1739b55ddc0cca2988d8731eb33f2295c1fcc13fdbdfff9d3f85d6d038402a6939f0f9d5c7a41464169eb692b4d2d73266b3c46345cd036ca577a15bdeeaa027662682a646ce7671c3a091bf639176e87d3379022126b209ebadadae19ffc0e02c59668c64362eaeabf44ee4f10b98fc92412cbea74b6f3a917423dfdf3ca282602773e6c29472ab708e5b127e8ae1ce2d8b7f56b457299f93bb72bb73fdbcf91770501010702a5f8", + "000000000000000121bd30cac60f477f2c4267220b1702a6ec5780db34f9934fa94b8c0508bf3357035d2b1192dfba134e10e540875d366ebc8bc353d5aa766b80c090b39c3a5d885d017f000001dcf8fdd5381f36008c3eac24cdde5ec0fea8f39240575ef0cb4406cb51ad419dd7810000000000000000000f424000034010000000011301840000fffffffffffa000000030000fffffffffffb8ff7d0df4eee78e558b4e07f82049aaa933f4f4932e13e1e7fee5cb103f7a0b50000fffffffffffa79176754ea338ffa080591b946a6ac1c47ff579ae7e45857bf01261ebe1c46ba0000fffffffffffcbdb924885293efdaa1ba8f556161f4fe525c19483def49b9af85c1623bc6d27b038402add69f29ad433cb7d4c9470f2d49d80245fd9e76a992197528a131e37711efac02c57de22185162001ffaf2e61b053b1d0e280d73ecec1b04916df2c65642d94a102cd4e1a07ee85714b6eada09d9cf81aeb15bfc72ddd003235530c58bbd0c0144902b10f36d2ebab3ce560abf15ceb1bef619491e0597a794fdafcfdf8708eec9e2d0501010702a5f8", + "00000000000000027512083907c74ed3a045e9bf772b3d72948eb93daf84a1cee57108800451aaf2035d2b1192dfba134e10e540875d366ebc8bc353d5aa766b80c090b39c3a5d885d017f000001dcf80239a9c9f2a91e69ba01800baf71f55efe457677b2e5cbd640b888dc1c9375b40000000000000000000f42400003401000000000c301340000ffffffffffff000000010000ffffffffffff0e07b6188dd51f15bb5cb9027950bf487a612dca57e2928de3f28f6ee796978b03840330b7ddf07e5bc779ea468875371ea25b560491c5feaeeb5e229ded3820d1d69103620748b3796c4988dd0fc63b92ae011dc989f15c433a55ed38e24318a43b4c93021bfe48bb1aded55878b00a3f00c5c1bffa1010510d8ba1c6372012ac9c3205d20201604aa7056ab8926038a846014bdbe4874ceef7ce45141b8009b0e2f49e7ec70501010702a5f8", + "0000000000000003222d999f537e32e9458c5db17a63e012dcced61340de06fda5bc30566270b0aa0266e4598d1d3c415f572a8488830b60f7e744ed9235eb0b1ba93283b315c03518017f0000017531932479f6d82ee59c7aa67b99568de0a31c202f6a3ff18a6bdd1ec22683cf026500000000000000000bebb3cb00034010000000009b010c0001000000000000000000000384021f90b5f38e0c0ea50bccfcf70a32cd4395c8c544e70636b7cc41831fe33fb4ce03bcfb0d457dfa07f508f434e6a2f040dd3dd233e7002dbe1c1b5d86ed5d3efd76030a4ce755504748f47401fc016578a52e104cbbd28251f10b11e4b3e55d0fe1d303986bdd0842662b8d0d18147630a720e952a2cda624c63ef4903357d27e54f7920501000702a5f8", + "0000000000000004a4a379248e49d207cc984646e632e1a31105a85708b9d6d961a5018fdd489f5a0266e4598d1d3c415f572a8488830b60f7e744ed9235eb0b1ba93283b315c03518017f000001970c7f07a15ce1fe1519d46536c4036f1c13527fa8bf52f6a5299b860f982ba2ed7e00000001000000000000753000034010000000009b010c000100000000000000000000038402c8aabcf1224df10e9d803dc3918797892fe0abec56d3e06f121bcebbe9ab0a2c03bd181375d57b8b1d15def9c5f9007b3c3ff98a140c0a44c9dc5f54ac7ea4baf30310952e08f9960711d8142dfa171c0fc2348762acea003f3897397f6ace8454130382da2a229450c4a8e8cea70bbd147eaaf981184bff8c1d70b70c30a494d848420501010702a5f8", + "000000000000000509eb55872cd9039ecd08281af756e23b15aad4129fd6a9bcd71b472114ebf43a0266e4598d1d3c415f572a8488830b60f7e744ed9235eb0b1ba93283b315c03518017f000001970c64ed91a21c10208d715b59801b12b4a6eff9ea9e4e7d45971c298b62d90ece8e00000000000000000000c35000034010000000009b010c000100000000000000000000038402e885f38e784050b386fb32d20935acc61059d8b02b6bec0ac2bfc8b2c5cf7f3103ae69dbfc6511ba0781c13113e16e1557a875b910cb1cb1fe1ef95a7edb36135a03758d5faa8515942873911e21869b1b90a4be72af14b394bc064da6ba518b087003750b588cd1fb8d60276c12c1c3eef7e302e3772414234404289db8c10f5731320501010702a5f8" ] } }, diff --git a/doc/schemas/renepay.json b/doc/schemas/renepay.json index ae7e41449d3c..f2a707b10e91 100644 --- a/doc/schemas/renepay.json +++ b/doc/schemas/renepay.json @@ -220,20 +220,20 @@ "id": "example:renepay#1", "method": "renepay", "params": { - "invstring": "lnbcrt100n1pnt2bolt11invl020100000000bolt11invl020100000000bolt11invl020100000000bolt11invl020100000000bolt11invl020100000000bolt11invl020100000000bolt11invl020100000000bolt11invl020100000000bolt11invl020100000000bolt11invl020100000000", + "invstring": "lnbcrt1pne035qsp5j7czxfpnquxg9vcw9crqh87raxz0glv8n6gx88jwdsp28pmfk68qpp5uz6ktrhcug72ke2xaf0h099gcasysw4lxcfmxn6qrh6p9z2y47hqdqcdserzgryv4ekxunfwp6xjmmwxqyjw5qcqp9rzjqdwjkyvjm7apxnssu4qgwhfkd67ghs6n6k48v6uqczgt88p6tky96qqqwqqqqqgqqqqqqqqpqqqqqzsqqc9qxpqysgqn7ge40jwkslz0j0vhfzy743lathy2sqy2dfyyahalxszs979d9s5v89ten2zcrna3xlxhkerk7p9k7a6u5fdddx5dzzas4ye2yp6desq3zwkg2", "amount_msat": 400000 } }, "response": { - "bolt11": "lnbcrt100n1pnt2bolt11invl020100000000bolt11invl020100000000bolt11invl020100000000bolt11invl020100000000bolt11invl020100000000bolt11invl020100000000bolt11invl020100000000bolt11invl020100000000bolt11invl020100000000bolt11invl020100000000", + "bolt11": "lnbcrt1pne035qsp5j7czxfpnquxg9vcw9crqh87raxz0glv8n6gx88jwdsp28pmfk68qpp5uz6ktrhcug72ke2xaf0h099gcasysw4lxcfmxn6qrh6p9z2y47hqdqcdserzgryv4ekxunfwp6xjmmwxqyjw5qcqp9rzjqdwjkyvjm7apxnssu4qgwhfkd67ghs6n6k48v6uqczgt88p6tky96qqqwqqqqqgqqqqqqqqpqqqqqzsqqc9qxpqysgqn7ge40jwkslz0j0vhfzy743lathy2sqy2dfyyahalxszs979d9s5v89ten2zcrna3xlxhkerk7p9k7a6u5fdddx5dzzas4ye2yp6desq3zwkg2", "amount_msat": 400000, - "payment_hash": "paymenthashinvl0210021002100210021002100210021002100210021002100", - "destination": "nodeid020202020202020202020202020202020202020202020202020202020202", - "created_at": 1738000000, + "payment_hash": "e0b5658ef8e23cab6546ea5f7794a8c760483abf3613b34f401df4128944afae", + "destination": "022d223620a359a47ff7f7ac447c85c46c923da53389221a0054c11c1e3ca31d59", + "created_at": 1738000000.0, "groupid": 1, "parts": 2, "status": "complete", - "payment_preimage": "paymentpreimager010101010101010101010101010101010101010101010101", + "payment_preimage": "08377744ca985c1908377744ca985c1908377744ca985c1908377744ca985c19", "amount_sent_msat": 400000 } }, @@ -242,19 +242,19 @@ "id": "example:renepay#2", "method": "renepay", "params": { - "invstring": "lnbcrt100n1pnt2bolt11invl030400000000bolt11invl030400000000bolt11invl030400000000bolt11invl030400000000bolt11invl030400000000bolt11invl030400000000bolt11invl030400000000bolt11invl030400000000bolt11invl030400000000bolt11invl030400000000" + "invstring": "lnbcrt40n1pne035qsp5pwtnqs2trxfwwkl8vaycu6fmvud0edagevz4eahvy6ls30u7cfrqpp52wnj6qrv99d6cte0s8ntstwkwxf42ksct8mujruyv7940nndzr3qdqaveskjmr9vssxgetnvdexjur5d9hkuxqyjw5qcqp9rzjqgkjyd3q5dv6gllh77kygly9c3kfy0d9xwyjyxsq2nq3c83u5vw4jqqqwqqqqqgqqqqqqqqpqqqqqzsqqc9qxpqysgq6sh90jk5uuccyzrdlnd5xyd92hxre78kupcpmlg0uerm35855xlklh5zlsmahpad6x8cv4ky2u6p394p270vyetlzx2u6ypyg22xn0qq0z6fuh" } }, "response": { - "bolt11": "lnbcrt100n1pnt2bolt11invl030400000000bolt11invl030400000000bolt11invl030400000000bolt11invl030400000000bolt11invl030400000000bolt11invl030400000000bolt11invl030400000000bolt11invl030400000000bolt11invl030400000000bolt11invl030400000000", + "bolt11": "lnbcrt40n1pne035qsp5pwtnqs2trxfwwkl8vaycu6fmvud0edagevz4eahvy6ls30u7cfrqpp52wnj6qrv99d6cte0s8ntstwkwxf42ksct8mujruyv7940nndzr3qdqaveskjmr9vssxgetnvdexjur5d9hkuxqyjw5qcqp9rzjqgkjyd3q5dv6gllh77kygly9c3kfy0d9xwyjyxsq2nq3c83u5vw4jqqqwqqqqqgqqqqqqqqpqqqqqzsqqc9qxpqysgq6sh90jk5uuccyzrdlnd5xyd92hxre78kupcpmlg0uerm35855xlklh5zlsmahpad6x8cv4ky2u6p394p270vyetlzx2u6ypyg22xn0qq0z6fuh", "amount_msat": 4000, - "payment_hash": "paymenthashinvl0340034003400340034003400340034003400340034003400", - "destination": "nodeid030303030303030303030303030303030303030303030303030303030303", - "created_at": 1738000000, + "payment_hash": "53a72d006c295bac2f2f81e6b82dd67193555a1859f7c90f84678b57ce6d10e2", + "destination": "035d2b1192dfba134e10e540875d366ebc8bc353d5aa766b80c090b39c3a5d885d", + "created_at": 1738000000.0, "groupid": 1, "parts": 2, "status": "complete", - "payment_preimage": "paymentpreimager020202020202020202020202020202020202020202020202", + "payment_preimage": "83ffe698292fbb6283ffe698292fbb6283ffe698292fbb6283ffe698292fbb62", "amount_sent_msat": 4000 } } diff --git a/doc/schemas/renepaystatus.json b/doc/schemas/renepaystatus.json index 3721ee93c610..8e0873e11f29 100644 --- a/doc/schemas/renepaystatus.json +++ b/doc/schemas/renepaystatus.json @@ -142,21 +142,21 @@ "id": "example:renepaystatus#1", "method": "renepaystatus", "params": { - "invstring": "lnbcrt100n1pnt2bolt11invl020100000000bolt11invl020100000000bolt11invl020100000000bolt11invl020100000000bolt11invl020100000000bolt11invl020100000000bolt11invl020100000000bolt11invl020100000000bolt11invl020100000000bolt11invl020100000000" + "invstring": "lnbcrt1pne035qsp5j7czxfpnquxg9vcw9crqh87raxz0glv8n6gx88jwdsp28pmfk68qpp5uz6ktrhcug72ke2xaf0h099gcasysw4lxcfmxn6qrh6p9z2y47hqdqcdserzgryv4ekxunfwp6xjmmwxqyjw5qcqp9rzjqdwjkyvjm7apxnssu4qgwhfkd67ghs6n6k48v6uqczgt88p6tky96qqqwqqqqqgqqqqqqqqpqqqqqzsqqc9qxpqysgqn7ge40jwkslz0j0vhfzy743lathy2sqy2dfyyahalxszs979d9s5v89ten2zcrna3xlxhkerk7p9k7a6u5fdddx5dzzas4ye2yp6desq3zwkg2" } }, "response": { "paystatus": [ { - "bolt11": "lnbcrt100n1pnt2bolt11invl020100000000bolt11invl020100000000bolt11invl020100000000bolt11invl020100000000bolt11invl020100000000bolt11invl020100000000bolt11invl020100000000bolt11invl020100000000bolt11invl020100000000bolt11invl020100000000", + "bolt11": "lnbcrt1pne035qsp5j7czxfpnquxg9vcw9crqh87raxz0glv8n6gx88jwdsp28pmfk68qpp5uz6ktrhcug72ke2xaf0h099gcasysw4lxcfmxn6qrh6p9z2y47hqdqcdserzgryv4ekxunfwp6xjmmwxqyjw5qcqp9rzjqdwjkyvjm7apxnssu4qgwhfkd67ghs6n6k48v6uqczgt88p6tky96qqqwqqqqqgqqqqqqqqpqqqqqzsqqc9qxpqysgqn7ge40jwkslz0j0vhfzy743lathy2sqy2dfyyahalxszs979d9s5v89ten2zcrna3xlxhkerk7p9k7a6u5fdddx5dzzas4ye2yp6desq3zwkg2", "amount_msat": 400000, - "payment_hash": "paymenthashinvl0210021002100210021002100210021002100210021002100", - "destination": "nodeid020202020202020202020202020202020202020202020202020202020202", - "created_at": 1738000000, + "payment_hash": "e0b5658ef8e23cab6546ea5f7794a8c760483abf3613b34f401df4128944afae", + "destination": "022d223620a359a47ff7f7ac447c85c46c923da53389221a0054c11c1e3ca31d59", + "created_at": 1738000000.0, "groupid": 1, "parts": 2, "status": "complete", - "payment_preimage": "paymentpreimager010101010101010101010101010101010101010101010101", + "payment_preimage": "08377744ca985c1908377744ca985c1908377744ca985c1908377744ca985c19", "amount_sent_msat": 400000 } ] diff --git a/doc/schemas/reserveinputs.json b/doc/schemas/reserveinputs.json index 65789efec50e..e1ae00ab163a 100644 --- a/doc/schemas/reserveinputs.json +++ b/doc/schemas/reserveinputs.json @@ -113,17 +113,17 @@ "id": "example:reserveinputs#1", "method": "reserveinputs", "params": { - "psbt": "cHNidP8BAgQCAAAAAQMEbwAAAAEEAQpsbt011100011100011100011100011100011100011100011100011100011100011100011100011100011100011100011100011100011100011100011100011100011100011100011100011100011100011100011100011100011100011100011100011100011100011100011100011100011100011100011100" + "psbt": "cHNidP8BADMCAAAAARxvUMSNjH7EKMXzxKwycdOSZ64xHQfWS7JFe0pAwIPCAAAAAAD9////AAAAAAAAAA==" } }, "response": { "reservations": [ { - "txid": "channeltxid111200111200111200111200111200111200111200111200111200", - "vout": 1, + "txid": "c283c0404a7b45b24bd6071d31ae6792d37132acc4f3c528c47e8c8dc4506f1c", + "vout": 0, "was_reserved": false, "reserved": true, - "reserved_to_block": 226 + "reserved_to_block": 227 } ] } @@ -133,17 +133,17 @@ "id": "example:reserveinputs#2", "method": "reserveinputs", "params": { - "psbt": "cHNidP8BAgQCAAAAAQMEbwAAAAEEAQpsbt011200011200011200011200011200011200011200011200011200011200011200011200011200011200011200011200011200011200011200011200011200011200011200011200011200011200011200011200011200011200011200011200011200011200011200011200011200011200011200011200" + "psbt": "cHNidP8BADMCAAAAAWI5Q9jlnWRjkrFQXx2bE0CP2y4UJMx2OfkJrOM2kSOWAAAAAAD9////AAAAAAAAAA==" } }, "response": { "reservations": [ { - "txid": "txidocsigned1011000110001100011000110001100011000110001100011000", - "vout": 1, + "txid": "96239136e3ac09f93976cc24142edb8f40139b1d5f50b19263649de5d8433962", + "vout": 0, "was_reserved": false, "reserved": true, - "reserved_to_block": 226 + "reserved_to_block": 227 } ] } diff --git a/doc/schemas/sendcustommsg.json b/doc/schemas/sendcustommsg.json index a9cb0602b2c2..de1f667e2851 100644 --- a/doc/schemas/sendcustommsg.json +++ b/doc/schemas/sendcustommsg.json @@ -65,7 +65,7 @@ "id": "example:sendcustommsg#1", "method": "sendcustommsg", "params": { - "node_id": "nodeid030303030303030303030303030303030303030303030303030303030303", + "node_id": "035d2b1192dfba134e10e540875d366ebc8bc353d5aa766b80c090b39c3a5d885d", "msg": "77770012" } }, diff --git a/doc/schemas/sendinvoice.json b/doc/schemas/sendinvoice.json index 798e2b8d0693..d378ec6b8d7d 100644 --- a/doc/schemas/sendinvoice.json +++ b/doc/schemas/sendinvoice.json @@ -211,22 +211,22 @@ "id": "example:sendinvoice#1", "method": "sendinvoice", "params": { - "invreq": "lno1qgsq000bolt210002100021000210002100021000210002100021000210002100021000210002100021000210002100021000210002100021000210002100021000", + "invreq": "lnr1qqg99gqg2990zl3322sqs52279lrzzst2d5k6urvv5s8getnw3gzqp3zderpzxstt8927ynqg044h0egcd8n5h3n9g0u0v4h8ncc3yg02gps7sjqtqssytfzxcs2xkdy0lml0tzy0jzugmyj8kjn8zfzrgq9fsgurc72x82e7pqfylfzzhcux84v2552lt7p2ekunuamtsdgyk34a86m4zklkdjjdzt757t4sp0m8cp9tdj6hfe67mcuwl3q7zr4sr4z4gn2fvksykkn5g", "label": "test sendinvoice" } }, "response": { "label": "test sendinvoice", - "bolt12": "lno1qgsq000boltsi100si100si100si100si100si100si100si100si100si100si100si100si100si100si100si100si100si100si100si100si100si100si100si100", - "payment_hash": "paymenthashsdinvsi10si10si10si10si10si10si10si10si10si10si10si10", + "bolt12": "lni1qqg99gqg2990zl3322sqs52279lrzzst2d5k6urvv5s8getnw3gzqp3zderpzxstt8927ynqg044h0egcd8n5h3n9g0u0v4h8ncc3yg02gps7sjqtqssytfzxcs2xkdy0lml0tzy0jzugmyj8kjn8zfzrgq9fsgurc72x82e5zvqyehytxx360zptatj4pygsv9kpal8gnkeyd0tpvd6jv5rkv2uqdgcq204pv4whvd37qg3dg48n0nudvgfw0du46nveyle5q4a2tvru2g4gqgrstm06rld7qk9d5sjtajxztd0lua3zfujsv8lve3wg9px5f34c4wqqvh4pp0dfkr98pur2v55d6ae3cakhn6s9jxn8waf9l00g06g236ymyefu6engjwaqsj4w7cgpkg9naq6kf4zrsqqqqqqqqqqqqqqq5qqqqqqqqqqqqqayjedltzjqqqqqq9yq3ne035q5cq442pqemw8hu9fzzda8nvxcksvjra2sy4c5r9r6et8rj95qqd2ufj8xj065qc0gfq2uqczqqqtqggzvmj9nrga83q474e2sjygxzmq7ln5fmvjxh4skxafx2pmx9wqx5v0qsxsy7vmh0323083refvd9fwvm7r5klg8hjftuqqzygswxl9lfkvlcj72lhlw643qv2gwmfadfydpdwvhydnvgnxmhlgjaxd7nw06y7rx", + "payment_hash": "cedc7bf0a9109bd3cd86c5a0c90faa812b8a0ca3d65671c8b4001aae2647349f", "amount_msat": 1000000, "status": "paid", "pay_index": 2, "amount_received_msat": 1000000, - "paid_at": 1738500000, - "payment_preimage": "paymentpreimagei010101010101010101010101010101010101010101010101", + "paid_at": 1738000000, + "payment_preimage": "c01ed70eb9ddb906c01ed70eb9ddb906c01ed70eb9ddb906c01ed70eb9ddb906", "description": "Simple test", - "expires_at": 1739000000, + "expires_at": 1738000090, "created_index": 4, "updated_index": 2 } diff --git a/doc/schemas/sendonion.json b/doc/schemas/sendonion.json index 924407ed0ccb..7e6fe8e0f73f 100644 --- a/doc/schemas/sendonion.json +++ b/doc/schemas/sendonion.json @@ -346,23 +346,23 @@ "id": "example:sendonion#1", "method": "sendonion", "params": { - "onion": "onion10101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010", + "onion": "00021d5b7e75f56e8fb8c5dbbcfdf954b89d171b35fced6bf4ad929b3b6e081e16c93046493f6f0f4e6f983b424e799b9f60ae7c75fa260760393aad7958e04ec5ea5a06e11078daa9ff31a1aaeed8b04f5ce319118a4bdda9e90861829161dd4d44164816f566d0cc219da32fdd08249068cec2fd589fb216933b95adce045364fcb6d6905a4e4169346b75e6ccfecb0cfdfd74d0574eb684b952db7df8443541cc28296f42afeafbb7a34c3f8c64dce9c0ebb37f5485f66246cbf11b7a8cd4a45d64723b7e706b1ef3eff4ce6133aa86f6c044337716bd0c1173b92b13c4d11453ab850fd945c1af91d3ce41928600bbafbc81b56e3bc704a678a783e2232bc80bc4afa93f84498127123096af80ca5295bb02b6c6524720a0f4dc81075688632b9428f6f4399a0ecf6c17e5c3015c9715af5127000787cc8d7e023f96b6e0175d600911c1dffef6a0d2a8ea8059b287e9e941810de5190ce0c274d6452a8ecc06a0cb98a9550e7e80e8eebdb9c326ca2a3f25b3147daaa68b8d5f745344938645535f858f6a4484b17322b4076714994865ac1660c4f364309bb5147c55bf8458cf6aa7420896d2cb1ee0fe301c83109a102a42d41063c32732ef0366b9b9bd7516c3f7607a54eb3255fa6589bd3ea021cb9deee71b3ea33fa9e509c085216243ea6cea4acf038fee2a4e7418f4087c79423f8bc94fda1ea7de66cb06c131304e39b20634e70721f028427093e059065e6d157cbbdb1ea02476478033164cc90b7707c612897224099c8f3cae86cf0503a1fc1c21e86f4fa7c6332786cc0c44b379516032a93d1c4853453b819d30438814b28bbb14989dfb88819e3fd9b38267b84cc052637ca9c5ae2b149fb53831e4237036cde4b6dd0c0754c52551585692beba1b4228540255ad6fd6bd7912acd47816023332a52075db994decac8cc3611a0f222638084b71a3f8f4c019af28524d96a609fd7cf2e660414b8db54a2d77087087313dea24cab947c04a3ca191d3ba8ffd5ddef72fbc6ad1fc7c71e97cc3da1b677108b907c591c32cb3a41b5636292d9db891013c2d729d67162e4388bee98469f98871af9b5580768f0db885106b981274060f1b3bca8f7297287c6688f6c30054f727d7dd9baa097175fb198b3477c2f1545ea6425f0a6df732ea4be943dff9cece87a9751be426669b1f8b3cb3f7a39f2b72ee68c287e6db1c86405b782c774c22acad3a68bb377713958f6c89e7b8a3d17e52416ea9bdb959949b47af8dd6b380ebc0481873de65edf599f3c1f51c9e4abd388e4d6ad6cf48e5c279286ed7bc683523b9c016227af1cdcf856ec11b47d3f369ac4fde6cee8e19748ef6c365c5effdc81afe560e1597891256dad1b849f550ab681b0c8ba660f1172ac3f63069140c2180537d793f899ba897dae47a848b6e4b1ceac369c59257a3c1d4f2cefe0b64e84ac010397bc55d77a8f801b227ab6453770fc9775788c4a9ce7bdc5f40aa156d1b0c4f9ef41dfbb0518151809761d22e503b9b8725704bbe4f7aaaf4188f80106354743e3f605a1cee1d6d09226176a913a3f9fe9513a081377c820e582fffd534cb27146264972b9f5362dc37cacb821e64ef711eb39addbe1a747df2b1cc54f26dfc1a32ac26297b980e4a492e2242d6d745e508e65f6162ba6e28d4f1f2177c5896c9d82019a74cd6f136e04af3a01a2178e961c0d4e63235982807579ea34f306ec0ea3f0e58a8fee4dd28c2303fa9e09e45b8c9cbc6a69aba0b838473a33e2a287f0824936bfd427f72b7bb7362a40f77136ecfe53173b2acfbbdd49ec390078926d0a9a69114312fee5a9b5ad8f7b80711f76d5ffca8632593b2ea9b2caaebf219ec7586e9d6962353f98b2882fb804a34b16946453038127de73f4e827b190f6001b7a5560b7eb978f8", "first_hop": { - "id": "nodeid020202020202020202020202020202020202020202020202020202020202", - "channel": "109x1x1", + "id": "022d223620a359a47ff7f7ac447c85c46c923da53389221a0054c11c1e3ca31d59", + "channel": "110x1x0", "direction": 1, "amount_msat": 1002, "delay": 21, "style": "tlv" }, - "payment_hash": "assocdata0010101010101010101010101010101010101010101010101010101" + "payment_hash": "47c148c1746366e4c2c7496621c22002bc2711b4d9c52cbb9c7b1fdca59c8579" } }, "response": { "message": "Monitor status with listpays or waitsendpay", "created_index": 10, "id": 10, - "payment_hash": "assocdata0010101010101010101010101010101010101010101010101010101", + "payment_hash": "47c148c1746366e4c2c7496621c22002bc2711b4d9c52cbb9c7b1fdca59c8579", "groupid": 1, "amount_sent_msat": 1002, "created_at": 1738000000, diff --git a/doc/schemas/sendpay.json b/doc/schemas/sendpay.json index 4e88c1a65dd1..a61089674303 100644 --- a/doc/schemas/sendpay.json +++ b/doc/schemas/sendpay.json @@ -367,33 +367,33 @@ "params": { "route": [ { - "id": "nodeid020202020202020202020202020202020202020202020202020202020202", - "channel": "109x1x1", + "id": "022d223620a359a47ff7f7ac447c85c46c923da53389221a0054c11c1e3ca31d59", + "channel": "110x1x0", "direction": 1, "amount_msat": 10001, "delay": 15, "style": "tlv" }, { - "id": "nodeid030303030303030303030303030303030303030303030303030303030303", - "channel": "111x1x1", + "id": "035d2b1192dfba134e10e540875d366ebc8bc353d5aa766b80c090b39c3a5d885d", + "channel": "112x1x0", "direction": 0, "amount_msat": 10000, "delay": 9, "style": "tlv" } ], - "payment_hash": "paymenthashinvl0310031003100310031003100310031003100310031003100", - "payment_secret": "paymentsecretinvl00310003100031000310003100031000310003100031000" + "payment_hash": "9562ee18e942b0eb2e36050c108efcb34cb07e5cdbe28d08d26bb71af1556c2f", + "payment_secret": "c2e882ab5464eb650a67ce396d04d97f670127f1e12aea33961b3f5cef65728e" } }, "response": { "message": "Monitor status with listpays or waitsendpay", "created_index": 2, "id": 2, - "payment_hash": "paymenthashinvl0310031003100310031003100310031003100310031003100", + "payment_hash": "9562ee18e942b0eb2e36050c108efcb34cb07e5cdbe28d08d26bb71af1556c2f", "groupid": 1, - "destination": "nodeid030303030303030303030303030303030303030303030303030303030303", + "destination": "035d2b1192dfba134e10e540875d366ebc8bc353d5aa766b80c090b39c3a5d885d", "amount_msat": 10000, "amount_sent_msat": 10001, "created_at": 1738000000, diff --git a/doc/schemas/sendpsbt.json b/doc/schemas/sendpsbt.json index fa1c07d77351..9d0a36afe7fb 100644 --- a/doc/schemas/sendpsbt.json +++ b/doc/schemas/sendpsbt.json @@ -71,12 +71,12 @@ "id": "example:sendpsbt#1", "method": "sendpsbt", "params": { - "psbt": "cHNidP8BAgQCAAAAAQMEbwAAAAEEAQpsbt711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000" + "psbt": "cHNidP8BAFICAAAAAQ1vO4mydSo3C9Dv+JXe2vMumPjihk/CDmK4pu1GQ/djAQAAAAD9////AYNq3AsAAAAAFgAUyQltQ/QI6lJgICYsza18hRa5KoEAAAAAAAEAiQIAAAABcQX3ZThhSZo4YV9hEj8LW7d9UHdclBO/07zDnLhKQ3cAAAAAAP3///8CQEIPAAAAAAAiACBbjNO5FM9nzdj6YnPJMDU902R2c0+9liECwt9TuQiAzYFs3AsAAAAAIlEgNfEYT2tHDJ3zR9pixLKOfsnuELIgusOszSIgne8ANuptAAAAAQErgWzcCwAAAAAiUSA18RhPa0cMnfNH2mLEso5+ye4QsiC6w6zNIiCd7wA26gETQBOuwDbikxRfXPyMoEFg8RBu/Cq3cA3e0BvaCpZh9KsZ/1MtTpOODzI+tQwEhSmssFh3TNMkYceyQM6fIQAC4eYhFp/BzQHy0ncLgoHiurwaTCRe3Te7ctEuIHI6ad9PXwH2CQDBIO1CAAAAAAAA" } }, "response": { - "tx": "02000000000155multiw61000610006100061000610006100061000610006100061000610006100061000610006100061000610006100061000610006100061000610006100061000610006100061000610006100061000610006100061000610006100061000610006100061000610006100061000610006100061000610006100061000610006100061000610006100061000610006100061000610006100061000610006100061000610006100061000610006100061000610006100061000610006100061000610006100061000610006100061000610006100061000610006100061000610006100061000610006100061000610006100061000610006100061000", - "txid": "txid6100061000610006100061000610006100061000610006100061000" + "tx": "020000000001010d6f3b89b2752a370bd0eff895dedaf32e98f8e2864fc20e62b8a6ed4643f7630100000000fdffffff01836adc0b00000000160014c9096d43f408ea526020262ccdad7c8516b92a81014013aec036e293145f5cfc8ca04160f1106efc2ab7700dded01bda0a9661f4ab19ff532d4e938e0f323eb50c048529acb058774cd32461c7b240ce9f210002e1e600000000", + "txid": "88a8ebd201ffda3ff8cfad1829ed8506656ef52298d91f5c06558748f56a6402" } } ] diff --git a/doc/schemas/setchannel.json b/doc/schemas/setchannel.json index cec8252a3c4e..67abce3d311c 100644 --- a/doc/schemas/setchannel.json +++ b/doc/schemas/setchannel.json @@ -176,16 +176,16 @@ "id": "example:setchannel#1", "method": "setchannel", "params": { - "id": "123x1x1", + "id": "124x1x1", "ignorefeelimits": true } }, "response": { "channels": [ { - "peer_id": "nodeid030303030303030303030303030303030303030303030303030303030303", - "channel_id": "channelid0230200230200230200230200230200230200230200230200230200", - "short_channel_id": "123x1x1", + "peer_id": "035d2b1192dfba134e10e540875d366ebc8bc353d5aa766b80c090b39c3a5d885d", + "channel_id": "ecabe6d86abdd57565b3fb7e7c5d724e60ca1a07633951769b5dbfa48dc884b3", + "short_channel_id": "124x1x1", "fee_base_msat": 1, "fee_proportional_millionths": 10, "minimum_htlc_out_msat": 0, @@ -200,7 +200,7 @@ "id": "example:setchannel#2", "method": "setchannel", "params": { - "id": "115x1x1", + "id": "116x1x1", "feebase": 4000, "feeppm": 300, "enforcedelay": 0 @@ -209,9 +209,9 @@ "response": { "channels": [ { - "peer_id": "nodeid050505050505050505050505050505050505050505050505050505050505", - "channel_id": "channelid0250000250000250000250000250000250000250000250000250000", - "short_channel_id": "115x1x1", + "peer_id": "032cf15d1ad9c4a08d26eab1918f732d8ef8fdc6abb9640bf3db174372c491304e", + "channel_id": "f8fc83a432cbfb2fffe222cc06727fdd977b5dd10ebd6707158e799e6f522d9f", + "short_channel_id": "116x1x1", "fee_base_msat": 4000, "fee_proportional_millionths": 300, "minimum_htlc_out_msat": 0, diff --git a/doc/schemas/setconfig.json b/doc/schemas/setconfig.json index 1301d0c72441..2e8278418a73 100644 --- a/doc/schemas/setconfig.json +++ b/doc/schemas/setconfig.json @@ -157,8 +157,8 @@ "config": { "config": "autoclean-expiredinvoices-age", "value_int": 300, - "source": "/tmp/.lightning/regtest/config.setconfig:2", - "plugin": "/root/lightning/plugins/autoclean", + "source": "/home/rusty/.lightning/regtest/config.setconfig:2", + "plugin": "/usr/local/libexec/plugins/autoclean", "dynamic": true } } @@ -176,7 +176,7 @@ "config": { "config": "min-capacity-sat", "value_int": 500000, - "source": "/tmp/.lightning/regtest/config.setconfig:3", + "source": "/home/rusty/.lightning/regtest/config.setconfig:3", "dynamic": true } } diff --git a/doc/schemas/setpsbtversion.json b/doc/schemas/setpsbtversion.json index bcffb3a39a7a..bf9f05089981 100644 --- a/doc/schemas/setpsbtversion.json +++ b/doc/schemas/setpsbtversion.json @@ -63,7 +63,7 @@ "id": "example:setpsbtversion#1", "method": "setpsbtversion", "params": { - "psbt": "cHNidP8BAgpsbt1001010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101", + "psbt": "cHNidP8BAgQCAAAAAQMEbwAAAAEEAQABBQEBAQYBAwH7BAIAAAAAAQMIQEIPAAAAAAABBCJRIO7yw3zIUblRUcdhCLSjdFxJsYHu2s0Y29bT0bGAGdcbAA==", "version": 0 } }, @@ -76,12 +76,12 @@ "id": "example:setpsbtversion#2", "method": "setpsbtversion", "params": [ - "cHNidP8BAgpsbt20020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202", + "cHNidP8BAgQCAAAAAQMEbwAAAAEEAQABBQECAQYBAwH7BAIAAAAAAQMIQEIPAAAAAAABBCJRIO7yw3zIUblRUcdhCLSjdFxJsYHu2s0Y29bT0bGAGdcbAAEDCNXcMgAAAAAAAQQiUSA2cYCeVGcxdSZII2urHpalr5osmF2lPbYRaw1nKyPcmQA=", 2 ] }, "response": { - "psbt": "cHNidP8BAgpsbt20020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202" + "psbt": "cHNidP8BAgQCAAAAAQMEbwAAAAEEAQABBQECAQYBAwH7BAIAAAAAAQMIQEIPAAAAAAABBCJRIO7yw3zIUblRUcdhCLSjdFxJsYHu2s0Y29bT0bGAGdcbAAEDCNXcMgAAAAAAAQQiUSA2cYCeVGcxdSZII2urHpalr5osmF2lPbYRaw1nKyPcmQA=" } } ] diff --git a/doc/schemas/showrunes.json b/doc/schemas/showrunes.json index 46193a3f1c29..ccdba11a7d2a 100644 --- a/doc/schemas/showrunes.json +++ b/doc/schemas/showrunes.json @@ -178,7 +178,7 @@ "runes": [ { "rune": "zFMd1fjhrAYxUeFA54TjloZqOt8JrA_i_nYwIgXkag49MA==", - "last_used": 1738000000, + "last_used": 1738000000.0, "unique_id": "0", "restrictions": [], "restrictions_as_english": "" @@ -196,14 +196,14 @@ "runes": [ { "rune": "zFMd1fjhrAYxUeFA54TjloZqOt8JrA_i_nYwIgXkag49MA==", - "last_used": 1738000000, + "last_used": 1738000000.0, "unique_id": "0", "restrictions": [], "restrictions_as_english": "" }, { "rune": "RXgu0DD_i0wSPEZkIDyZIWL0bSAGdhvJ_GHOQdTg04A9MSZpZF4wMjY2ZTQ1OThkMWQzYzQxNWY1NyZtZXRob2Q9bGlzdHBlZXJz", - "last_used": 1738000000, + "last_used": 1738000000.0, "unique_id": "1", "restrictions": [ { @@ -233,7 +233,7 @@ }, { "rune": "QUJEYMLGgiaJvMDv_MhR2hiMKIBTbq-PrL-KxcIlirQ9MiZtZXRob2Q9cGF5JnBuYW1lYW1vdW50bXNhdDwxMDAwMA==", - "last_used": 1738000000, + "last_used": 1738000000.0, "unique_id": "2", "restrictions": [ { @@ -269,7 +269,7 @@ "alternatives": [ { "fieldname": "id", - "value": "nodeid010101010101010101010101010101010101010101010101010101010101", + "value": "0266e4598d1d3c415f572a8488830b60f7e744ed9235eb0b1ba93283b315c03518", "condition": "=", "english": "id equal to 0266e4598d1d3c415f572a8488830b60f7e744ed9235eb0b1ba93283b315c03518" } @@ -302,13 +302,13 @@ "alternatives": [ { "fieldname": "pnameid", - "value": "nodeid010101010101010101010101010101010101010101010101010101010101", + "value": "0266e4598d1d3c415f572a8488830b60f7e744ed9235eb0b1ba93283b315c03518", "condition": "=", "english": "pnameid equal to 0266e4598d1d3c415f572a8488830b60f7e744ed9235eb0b1ba93283b315c03518" }, { "fieldname": "parr0", - "value": "nodeid010101010101010101010101010101010101010101010101010101010101", + "value": "0266e4598d1d3c415f572a8488830b60f7e744ed9235eb0b1ba93283b315c03518", "condition": "=", "english": "parr0 equal to 0266e4598d1d3c415f572a8488830b60f7e744ed9235eb0b1ba93283b315c03518" } @@ -326,7 +326,7 @@ "alternatives": [ { "fieldname": "id", - "value": "nodeid010101010101010101010101010101010101010101010101010101010101", + "value": "0266e4598d1d3c415f572a8488830b60f7e744ed9235eb0b1ba93283b315c03518", "condition": "=", "english": "id equal to 0266e4598d1d3c415f572a8488830b60f7e744ed9235eb0b1ba93283b315c03518" } diff --git a/doc/schemas/signinvoice.json b/doc/schemas/signinvoice.json index cb5552bbd83c..7defdc870e5f 100644 --- a/doc/schemas/signinvoice.json +++ b/doc/schemas/signinvoice.json @@ -61,11 +61,11 @@ "id": "example:signinvoice#1", "method": "signinvoice", "params": { - "invstring": "lnbcrt100n1pnt2bolt11invl010200000000bolt11invl010200000000bolt11invl010200000000bolt11invl010200000000bolt11invl010200000000bolt11invl010200000000bolt11invl010200000000bolt11invl010200000000bolt11invl010200000000bolt11invl010200000000" + "invstring": "lnbcrt10n1pne035qsp5am7uy92zzz7drzwnfjuu2w74hw2s0qjutwtc3jnz778ufwn50cgspp5pmul004jv6lukkje3pg2qw607sf56v7leqvdk0gkn83z67u0q9aqdqlv3jhxcmjd9c8g6t0dcsxjmnktakrzvsxqyjw5qcqp9rzjqgkjyd3q5dv6gllh77kygly9c3kfy0d9xwyjyxsq2nq3c83u5vw4jqqqdcqqqqgqqqqqqqqpqqqqqzsqqc9qxpqysgqavy48snxm0pu3hp2eeszumfntnuuzmzsr67t94g9q2crgpp3n0t42q7lya6gja9246k5eluu0twg3n7qntxugqv8yuw99ckte32xvmspc9vnf0" } }, "response": { - "bolt11": "lnbcrt100n1pnt2bolt11invl060600000000bolt11invl060600000000bolt11invl060600000000bolt11invl060600000000bolt11invl060600000000bolt11invl060600000000bolt11invl060600000000bolt11invl060600000000bolt11invl060600000000bolt11invl060600000000" + "bolt11": "lnbcrt10n1pne035qsp5am7uy92zzz7drzwnfjuu2w74hw2s0qjutwtc3jnz778ufwn50cgspp5pmul004jv6lukkje3pg2qw607sf56v7leqvdk0gkn83z67u0q9aqdqlv3jhxcmjd9c8g6t0dcsxjmnktakrzvsxqyjw5qcqp9rzjqgkjyd3q5dv6gllh77kygly9c3kfy0d9xwyjyxsq2nq3c83u5vw4jqqqdcqqqqgqqqqqqqqpqqqqqzsqqc9qxpqysgq9vxe6l9fs0n0t3lzecwsmqmwuen2v0ugddya6ays98d7y3kcusvjfee5zcgf274wpm54ta8w6sa8tlkn5w4rckj4tv7qrv2j9dz2kyspj0776q" } }, { @@ -73,11 +73,11 @@ "id": "example:signinvoice#2", "method": "signinvoice", "params": [ - "lnbcrt100n1pnt2bolt11invl020600000000bolt11invl020600000000bolt11invl020600000000bolt11invl020600000000bolt11invl020600000000bolt11invl020600000000bolt11invl020600000000bolt11invl020600000000bolt11invl020600000000bolt11invl020600000000" + "lnbcrt1250n1pne035qsp57thr33aj04aek8738nm42nntaydcaw4zswr047ja0gxy5sea8egqpp58veqg20enh8z5w8avz0jyznsfgnxdgs9km2mlugn62nvypjhwj5sdqlv3jhxcmjd9c8g6t0dcsxjmnktakrydscqp99qxpqysgq9569pf2lk3desk0xz8l90eeanhkz2j4e4yk8wlzwsy8efmm07mdn5n62ymlymt73yvxwyc4zuj45vwka2ta0rmntwxu4m2qp46h2yfcq5muart" ] }, "response": { - "bolt11": "lnbcrt100n1pnt2bolt11invl060700000000bolt11invl060700000000bolt11invl060700000000bolt11invl060700000000bolt11invl060700000000bolt11invl060700000000bolt11invl060700000000bolt11invl060700000000bolt11invl060700000000bolt11invl060700000000" + "bolt11": "lnbcrt1250n1pne035qsp57thr33aj04aek8738nm42nntaydcaw4zswr047ja0gxy5sea8egqpp58veqg20enh8z5w8avz0jyznsfgnxdgs9km2mlugn62nvypjhwj5sdqlv3jhxcmjd9c8g6t0dcsxjmnktakrydscqp99qxpqysgq0m4mht376q42hx4m9jw5fkrjlhg0uan3rpcrnvz6lyanawfnaqd34d8g0g4x2rmfqcxezgaywj9h55te97g8x4umqr0y8p9j8r897xgq4cuq98" } } ] diff --git a/doc/schemas/signpsbt.json b/doc/schemas/signpsbt.json index 7a87ee78ec03..1d8994cd61fd 100644 --- a/doc/schemas/signpsbt.json +++ b/doc/schemas/signpsbt.json @@ -69,11 +69,11 @@ "id": "example:signpsbt#1", "method": "signpsbt", "params": { - "psbt": "cHNidP8BAgQCAAAAAQMEbwAAAAEEAQpsbt910000910000910000910000910000910000910000910000910000910000910000910000910000910000910000910000910000910000910000910000910000910000910000910000910000910000910000910000910000910000910000910000910000910000910000910000910000910000910000910000" + "psbt": "cHNidP8BAgQCAAAAAQMEmgAAAAEEAQEBBQECAQYBAwH7BAIAAAAAAQBxAgAAAAH7CdSDiNRK3tlKgYtNIUmQSJWLgE5Evlcb09JxAjW4egEAAAAA/f///wIAwusLAAAAABYAFAPP7IcV4fQEo27AEeQjj4Yyn5CcBhP00gAAAAAWABQijAzMA5X3Ec5AzhgdLZtnmTqh7YcAAAABAR8AwusLAAAAABYAFAPP7IcV4fQEo27AEeQjj4Yyn5CcAQ4g8XN4MRmL6kPpMsgk9fPi+WJWotGhushvL/SXVnKJnZ0BDwQAAAAAARAE/f///wz8CWxpZ2h0bmluZwEIEu/Rzf4eie4AAQMIQVncCwAAAAABBCJRIDvhN+WjzUt2EEWojAco0yQ1GDbwTtWd/aN5uNhGRlK3DPwJbGlnaHRuaW5nAQgU79HN/h6J7gABAwhAQg8AAAAAAAEEIgAgybxcBjyu+/emx4FEB7Vie0+BqLVuy+kyxoL5y6wNGd8M/AlsaWdodG5pbmcBCJlh/FQRnSXyAA==" } }, "response": { - "signed_psbt": "cHNidP8BAgQCAAAAAQMEbwAAAAEEAQpsbt111000111000111000111000111000111000111000111000111000111000111000111000111000111000111000111000111000111000111000111000111000111000111000111000111000111000111000111000111000111000111000111000111000111000111000111000111000111000111000111000" + "signed_psbt": "cHNidP8BAgQCAAAAAQMEmgAAAAEEAQEBBQECAQYBAwH7BAIAAAAAAQBxAgAAAAH7CdSDiNRK3tlKgYtNIUmQSJWLgE5Evlcb09JxAjW4egEAAAAA/f///wIAwusLAAAAABYAFAPP7IcV4fQEo27AEeQjj4Yyn5CcBhP00gAAAAAWABQijAzMA5X3Ec5AzhgdLZtnmTqh7YcAAAABAR8AwusLAAAAABYAFAPP7IcV4fQEo27AEeQjj4Yyn5CcIgICRz15z0oQ57qDTAJqrEPqGLCn+3Xs2lGEv6+oxGYV9rdHMEQCID20o7OkdrA186bhtl5XxvomAgLw5qTckxZ94vSI8teaAiAIfpvcxym7FktDtx2ApNv/Tgz0EOxLEtpXp8HgO8/pqQEiBgJHPXnPShDnuoNMAmqsQ+oYsKf7dezaUYS/r6jEZhX2twgDz+yHAAAAAAEOIPFzeDEZi+pD6TLIJPXz4vliVqLRobrIby/0l1ZyiZ2dAQ8EAAAAAAEQBP3///8M/AlsaWdodG5pbmcBCBLv0c3+HonuAAEDCEFZ3AsAAAAAAQQiUSA74Tflo81LdhBFqIwHKNMkNRg28E7Vnf2jebjYRkZStyEHE0cioCqqq2UZ2npxQi9Q6DXNZheODM6F4GjHHS3XScEJAG/ctUwEAAAADPwJbGlnaHRuaW5nAQgU79HN/h6J7gABAwhAQg8AAAAAAAEEIgAgybxcBjyu+/emx4FEB7Vie0+BqLVuy+kyxoL5y6wNGd8M/AlsaWdodG5pbmcBCJlh/FQRnSXyAA==" } }, { @@ -81,11 +81,11 @@ "id": "example:signpsbt#2", "method": "signpsbt", "params": [ - "cHNidP8BAgQCAAAAAQMEbwAAAAEEAQpsbt101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000" + "cHNidP8BAgQCAAAAAQMEmgAAAAEEAQEBBQECAQYBAwH7BAIAAAAAAQBxAgAAAAH7CdSDiNRK3tlKgYtNIUmQSJWLgE5Evlcb09JxAjW4egEAAAAA/f///wIAwusLAAAAABYAFAPP7IcV4fQEo27AEeQjj4Yyn5CcBhP00gAAAAAWABQijAzMA5X3Ec5AzhgdLZtnmTqh7YcAAAABAR8AwusLAAAAABYAFAPP7IcV4fQEo27AEeQjj4Yyn5CcAQ4g8XN4MRmL6kPpMsgk9fPi+WJWotGhushvL/SXVnKJnZ0BDwQAAAAAARAE/f///wz8CWxpZ2h0bmluZwEIGu/Rzf4eie4AAQMIYg3NCwAAAAABBCJRIMkYPt6RIfPG/RSYgixHp2AnMidmnJCVCIQ7rFu9gT9oDPwJbGlnaHRuaW5nAQgc79HN/h6J7gABAwiAhB4AAAAAAAEEIgAgybxcBjyu+/emx4FEB7Vie0+BqLVuy+kyxoL5y6wNGd8M/AlsaWdodG5pbmcBCJth/FQRnSXyAA==" ] }, "response": { - "signed_psbt": "cHNidP8BAgQCAAAAAQMEbwAAAAEEAQpsbt121000121000121000121000121000121000121000121000121000121000121000121000121000121000121000121000121000121000121000121000121000121000121000121000121000121000121000121000121000121000121000121000121000121000121000121000121000121000121000121000" + "signed_psbt": "cHNidP8BAgQCAAAAAQMEmgAAAAEEAQEBBQECAQYBAwH7BAIAAAAAAQBxAgAAAAH7CdSDiNRK3tlKgYtNIUmQSJWLgE5Evlcb09JxAjW4egEAAAAA/f///wIAwusLAAAAABYAFAPP7IcV4fQEo27AEeQjj4Yyn5CcBhP00gAAAAAWABQijAzMA5X3Ec5AzhgdLZtnmTqh7YcAAAABAR8AwusLAAAAABYAFAPP7IcV4fQEo27AEeQjj4Yyn5CcIgICRz15z0oQ57qDTAJqrEPqGLCn+3Xs2lGEv6+oxGYV9rdHMEQCIFl+CUBKJcswA/8DnqzPrYolo0k0uUfRJv60eB4niMmJAiA169wRBmliX5GL7+hqb2OHZ5i81V0lkIJylHfvkn933QEiBgJHPXnPShDnuoNMAmqsQ+oYsKf7dezaUYS/r6jEZhX2twgDz+yHAAAAAAEOIPFzeDEZi+pD6TLIJPXz4vliVqLRobrIby/0l1ZyiZ2dAQ8EAAAAAAEQBP3///8M/AlsaWdodG5pbmcBCBrv0c3+HonuAAEDCGINzQsAAAAAAQQiUSDJGD7ekSHzxv0UmIIsR6dgJzInZpyQlQiEO6xbvYE/aCEHn35PoCbJlSMQ2fFCjyoCQfQi72lK/cajhKIKcycdYWwJABIqDc8FAAAADPwJbGlnaHRuaW5nAQgc79HN/h6J7gABAwiAhB4AAAAAAAEEIgAgybxcBjyu+/emx4FEB7Vie0+BqLVuy+kyxoL5y6wNGd8M/AlsaWdodG5pbmcBCJth/FQRnSXyAA==" } } ] diff --git a/doc/schemas/splice_init.json b/doc/schemas/splice_init.json index 740b3b63c2ab..dbde25694ef6 100644 --- a/doc/schemas/splice_init.json +++ b/doc/schemas/splice_init.json @@ -116,13 +116,13 @@ "id": "example:splice_init#1", "method": "splice_init", "params": { - "channel_id": "channelid0780000780000780000780000780000780000780000780000780000", + "channel_id": "8c69f1817bfe5402d7759cd829ae89ed7b16f0004fec1f3df9f5a5d3961f5f29", "relative_amount": 100000, - "initialpsbt": "cHNidP8BAgQCAAAAAQMEbwAAAAEEAQpsbt713000713000713000713000713000713000713000713000713000713000713000713000713000713000713000713000713000713000713000713000713000713000713000713000713000713000713000713000713000713000713000713000713000713000713000713000713000713000713000713000713000713000713000713000713000713000713000713000713000713000713000713000713000713000713000713000713000713000713000713000713000713000713000713000713000713000713000713000713000713000713000713000713000713000713000713000713000713000713000713000713000713000713000713000713000713000713000713000713000713000713000713000713000713000713000713000713000713000713000713000713000713000713000713000713000713000713000713000713000713000713000713000713000713000713000713000713000713000713000713000" + "initialpsbt": "cHNidP8BAF4CAAAAAYxp8YF7/lQC13Wc2Cmuie17FvAAT+wfPfn1pdOWH18pAQAAAAD9////Aed8DQAAAAAAIlEgj47URidVfbzMQq4BipxUdKmRKFeSxMqJHB9ZxWZdNGCVAAAAAAEAiQIAAAABe8lhdLWTt3QqdEAA+Ye+EPU6s0fgfj6uSlpNyrejJXQBAAAAAP3///8CQEIPAAAAAAAiACCT3t0MJlvKhoV20+4uWe67sg68KW5Y9+3Kk9XursCJlgEvDwAAAAAAIlEgW7Q7f9oXFdDdAUFoJaGFIqLX7LFkdbiHgOj6/Bxz74mPAAAAAQErAS8PAAAAAAAiUSBbtDt/2hcV0N0BQWgloYUiotfssWR1uIeA6Pr8HHPviQAA" } }, "response": { - "psbt": "cHNidP8BAgQCAAAAAQMEbwAAAAEEAQpsbt711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000" + "psbt": "cHNidP8BALICAAAAAoxp8YF7/lQC13Wc2Cmuie17FvAAT+wfPfn1pdOWH18pAQAAAAD9////jGnxgXv+VALXdZzYKa6J7XsW8ABP7B89+fWl05YfXykAAAAAAAAAAAAC53wNAAAAAAAiUSCPjtRGJ1V9vMxCrgGKnFR0qZEoV5LEyokcH1nFZl00YODIEAAAAAAAIgAgk97dDCZbyoaFdtPuLlnuu7IOvCluWPftypPV7q7AiZaVAAAAAAEAiQIAAAABe8lhdLWTt3QqdEAA+Ye+EPU6s0fgfj6uSlpNyrejJXQBAAAAAP3///8CQEIPAAAAAAAiACCT3t0MJlvKhoV20+4uWe67sg68KW5Y9+3Kk9XursCJlgEvDwAAAAAAIlEgW7Q7f9oXFdDdAUFoJaGFIqLX7LFkdbiHgOj6/Bxz74mPAAAAAQErAS8PAAAAAAAiUSBbtDt/2hcV0N0BQWgloYUiotfssWR1uIeA6Pr8HHPviQz8CWxpZ2h0bmluZwEI2+v9SbbITVQAAQCJAgAAAAF7yWF0tZO3dCp0QAD5h74Q9TqzR+B+Pq5KWk3Kt6MldAEAAAAA/f///wJAQg8AAAAAACIAIJPe3QwmW8qGhXbT7i5Z7ruyDrwpblj37cqT1e6uwImWAS8PAAAAAAAiUSBbtDt/2hcV0N0BQWgloYUiotfssWR1uIeA6Pr8HHPviY8AAAABAStAQg8AAAAAACIAIJPe3QwmW8qGhXbT7i5Z7ruyDrwpblj37cqT1e6uwImWAQVHUiECVw7AtutUVmMwIYOmLqx10I/e62TzE1IZIGXWAcjKUh0hAmaGfDQrglCra07axtuuL95TeCtpzRcTmUn71PIISH/yUq4M/AlsaWdodG5pbmcBCN3r/Um2yE1UAAz8CWxpZ2h0bmluZwEI3+v9SbbITVQADPwJbGlnaHRuaW5nAQjh6/1JtshNVAA=" } }, { @@ -130,13 +130,13 @@ "id": "example:splice_init#2", "method": "splice_init", "params": [ - "channelid0780000780000780000780000780000780000780000780000780000", + "8c69f1817bfe5402d7759cd829ae89ed7b16f0004fec1f3df9f5a5d3961f5f29", -105000, - "cHNidP8BAgQCAAAAAQMEbwAAAAEEAQpsbt714000714000714000714000714000714000714000714000714000714000714000714000714000714000714000714000714000714000714000714000714000714000714000714000714000714000714000714000714000714000714000714000714000714000714000714000714000714000714000714000714000714000714000714000714000714000714000714000714000714000714000714000714000714000714000714000714000714000714000714000714000714000714000714000714000714000714000714000714000714000714000714000714000714000714000714000714000714000714000714000714000714000714000714000714000714000714000714000714000714000714000714000714000714000714000714000714000714000714000714000714000714000714000714000714000714000714000714000714000714000714000714000714000714000714000714000714000714000714000714000" + "cHNidP8BAgQCAAAAAQMElgAAAAEEAQABBQEBAQYBAwH7BAIAAAAAAQMIoIYBAAAAAAABBCJRIMTSgkFfmoHRjgi2GaGdEWuGVssb9JPl9UC797egWEzaAA==" ] }, "response": { - "psbt": "cHNidP8BAgQCAAAAAQMEbwAAAAEEAQpsbt712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000" + "psbt": "cHNidP8BAgQCAAAAAQMElgAAAAEEAQEBBQECAQYBAwH7BAIAAAAAAQCyAgAAAAKMafGBe/5UAtd1nNgprontexbwAE/sHz359aXTlh9fKQEAAAAA/f///4xp8YF7/lQC13Wc2Cmuie17FvAAT+wfPfn1pdOWH18pAAAAAAAAAAAAAud8DQAAAAAAIlEgj47URidVfbzMQq4BipxUdKmRKFeSxMqJHB9ZxWZdNGDgyBAAAAAAACIAIJPe3QwmW8qGhXbT7i5Z7ruyDrwpblj37cqT1e6uwImWlQAAAAEBK+DIEAAAAAAAIgAgk97dDCZbyoaFdtPuLlnuu7IOvCluWPftypPV7q7AiZYBBUdSIQJXDsC261RWYzAhg6YurHXQj97rZPMTUhkgZdYByMpSHSECZoZ8NCuCUKtrTtrG264v3lN4K2nNFxOZSfvU8ghIf/JSrgEOIKKgpcI9Q+wEsS7RSRmjmYdS6mp201YJrWSI+o3lUYXdAQ8EAQAAAAEQBAAAAAAM/AlsaWdodG5pbmcBCOPr/Um2yE1UAAEDCKCGAQAAAAAAAQQiUSDE0oJBX5qB0Y4IthmhnRFrhlbLG/ST5fVAu/e3oFhM2gz8CWxpZ2h0bmluZwEI5ev9SbbITVQAAQMIuC4PAAAAAAABBCIAIJPe3QwmW8qGhXbT7i5Z7ruyDrwpblj37cqT1e6uwImWDPwJbGlnaHRuaW5nAQjn6/1JtshNVAA=" } } ] diff --git a/doc/schemas/splice_signed.json b/doc/schemas/splice_signed.json index 6d644f4b3159..5529eda57ccf 100644 --- a/doc/schemas/splice_signed.json +++ b/doc/schemas/splice_signed.json @@ -137,15 +137,15 @@ "id": "example:splice_signed#1", "method": "splice_signed", "params": { - "channel_id": "channelid0780000780000780000780000780000780000780000780000780000", - "psbt": "cHNidP8BAgQCAAAAAQMEbwAAAAEEAQpsbt718000718000718000718000718000718000718000718000718000718000718000718000718000718000718000718000718000718000718000718000718000718000718000718000718000718000718000718000718000718000718000718000718000718000718000718000718000718000718000718000718000718000718000718000718000718000718000718000718000718000718000718000718000718000718000718000718000718000718000718000718000718000718000718000718000718000718000718000718000718000718000718000718000718000718000718000718000718000718000718000718000718000718000718000718000718000718000718000718000718000718000718000718000718000718000718000718000718000718000718000718000718000718000718000718000718000718000718000718000718000718000718000718000718000718000718000718000718000718000718000" + "channel_id": "8c69f1817bfe5402d7759cd829ae89ed7b16f0004fec1f3df9f5a5d3961f5f29", + "psbt": "cHNidP8BALICAAAAAoxp8YF7/lQC13Wc2Cmuie17FvAAT+wfPfn1pdOWH18pAQAAAAD9////jGnxgXv+VALXdZzYKa6J7XsW8ABP7B89+fWl05YfXykAAAAAAAAAAAAC53wNAAAAAAAiUSCPjtRGJ1V9vMxCrgGKnFR0qZEoV5LEyokcH1nFZl00YODIEAAAAAAAIgAgk97dDCZbyoaFdtPuLlnuu7IOvCluWPftypPV7q7AiZaVAAAAAAEAiQIAAAABe8lhdLWTt3QqdEAA+Ye+EPU6s0fgfj6uSlpNyrejJXQBAAAAAP3///8CQEIPAAAAAAAiACCT3t0MJlvKhoV20+4uWe67sg68KW5Y9+3Kk9XursCJlgEvDwAAAAAAIlEgW7Q7f9oXFdDdAUFoJaGFIqLX7LFkdbiHgOj6/Bxz74mPAAAAAQErAS8PAAAAAAAiUSBbtDt/2hcV0N0BQWgloYUiotfssWR1uIeA6Pr8HHPviQETQLTBb3GLDHPmgJT+hDwc0lDwZiQ2XhntW4Utl0NU4wIUH17uYSeZn452jYgOtBefZzeh/10BLuF5nKig8JZ0afwhFvTEPeeTGXjlJSGiyNDqLm+lpUC+f31Q3j7YhyeyShxZCQD2T+TUAAAAAAz8CWxpZ2h0bmluZwEI2+v9SbbITVQAAQCJAgAAAAF7yWF0tZO3dCp0QAD5h74Q9TqzR+B+Pq5KWk3Kt6MldAEAAAAA/f///wJAQg8AAAAAACIAIJPe3QwmW8qGhXbT7i5Z7ruyDrwpblj37cqT1e6uwImWAS8PAAAAAAAiUSBbtDt/2hcV0N0BQWgloYUiotfssWR1uIeA6Pr8HHPviY8AAAABAStAQg8AAAAAACIAIJPe3QwmW8qGhXbT7i5Z7ruyDrwpblj37cqT1e6uwImWIgICVw7AtutUVmMwIYOmLqx10I/e62TzE1IZIGXWAcjKUh1HMEQCIB7dMSfLrXShtRe8zeHg+W1vLd8clWNtXWvLwOdeROcdAiADnsWDCAyq1tGn0qCOzzn5vnFDlLJHFj61W+YhPfQRHgEiAgJmhnw0K4JQq2tO2sbbri/eU3grac0XE5lJ+9TyCEh/8kcwRAIgNA4j/beg90ET4TwzJptoXqhtR7dr4/cgcShy6I4UpSACIDUY6E6eQvCmlMZ394cS1+fwijE94o2jS408fjuHRSPyAQEDBAEAAAABBUdSIQJXDsC261RWYzAhg6YurHXQj97rZPMTUhkgZdYByMpSHSECZoZ8NCuCUKtrTtrG264v3lN4K2nNFxOZSfvU8ghIf/JSrgz8CWxpZ2h0bmluZwEI3ev9SbbITVQAIQf4l/XsahrhZhlxJbtZN6e213tQQFKbPCTiBwSf3CvcvAkA9Hbq9AUAAAAM/AlsaWdodG5pbmcBCN/r/Um2yE1UAAz8CWxpZ2h0bmluZwEI4ev9SbbITVQA" } }, "response": { - "tx": "02000000000101sendpt64000640006400064000640006400064000640006400064000640006400064000640006400064000640006400064000640006400064000640006400064000640006400064000640006400064000640006400064000640006400064000640006400064000640006400064000640006400064000640006400064000640006400064000640006400064000640006400064000640006400064000640006400064000640006400064000640006400064000640006400064000640006400064000640006400064000640006400064000640006400064000640006400064000640006400064000640006400064000640006400064000640006400064000", - "txid": "txid6400064000640006400064000640006400064000640006400064000", + "tx": "020000000001028c69f1817bfe5402d7759cd829ae89ed7b16f0004fec1f3df9f5a5d3961f5f290100000000fdffffff8c69f1817bfe5402d7759cd829ae89ed7b16f0004fec1f3df9f5a5d3961f5f2900000000000000000002e77c0d00000000002251208f8ed44627557dbccc42ae018a9c5474a991285792c4ca891c1f59c5665d3460e0c810000000000022002093dedd0c265bca868576d3ee2e59eebbb20ebc296e58f7edca93d5eeaec089960140b4c16f718b0c73e68094fe843c1cd250f06624365e19ed5b852d974354e302141f5eee6127999f8e768d880eb4179f6737a1ff5d012ee1799ca8a0f0967469fc040047304402201edd3127cbad74a1b517bccde1e0f96d6f2ddf1c95636d5d6bcbc0e75e44e71d0220039ec583080caad6d1a7d2a08ecf39f9be714394b247163eb55be6213df4111e014730440220340e23fdb7a0f74113e13c33269b685ea86d47b76be3f720712872e88e14a52002203518e84e9e42f0a694c677f78712d7e7f08a313de28da34b8d3c7e3b874523f20147522102570ec0b6eb545663302183a62eac75d08fdeeb64f31352192065d601c8ca521d210266867c342b8250ab6b4edac6dbae2fde53782b69cd17139949fbd4f208487ff252ae95000000", + "txid": "dd8551e58dfa8864ad0956d3766aea528799a31949d12eb104ec433dc2a5a0a2", "outnum": 1, - "psbt": "cHNidP8BAgQCAAAAAQMEbwAAAAEEAQpsbt711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000" + "psbt": "cHNidP8BAgQCAAAAAQMElQAAAAEEAQIBBQECAQYBAwH7BAIAAAAAAQCJAgAAAAF7yWF0tZO3dCp0QAD5h74Q9TqzR+B+Pq5KWk3Kt6MldAEAAAAA/f///wJAQg8AAAAAACIAIJPe3QwmW8qGhXbT7i5Z7ruyDrwpblj37cqT1e6uwImWAS8PAAAAAAAiUSBbtDt/2hcV0N0BQWgloYUiotfssWR1uIeA6Pr8HHPviY8AAAABASsBLw8AAAAAACJRIFu0O3/aFxXQ3QFBaCWhhSKi1+yxZHW4h4Do+vwcc++JAQhCAUC0wW9xiwxz5oCU/oQ8HNJQ8GYkNl4Z7VuFLZdDVOMCFB9e7mEnmZ+Odo2IDrQXn2c3of9dAS7heZyooPCWdGn8AQ4gjGnxgXv+VALXdZzYKa6J7XsW8ABP7B89+fWl05YfXykBDwQBAAAAARAE/f///wz8CWxpZ2h0bmluZwEI2+v9SbbITVQAAQCJAgAAAAF7yWF0tZO3dCp0QAD5h74Q9TqzR+B+Pq5KWk3Kt6MldAEAAAAA/f///wJAQg8AAAAAACIAIJPe3QwmW8qGhXbT7i5Z7ruyDrwpblj37cqT1e6uwImWAS8PAAAAAAAiUSBbtDt/2hcV0N0BQWgloYUiotfssWR1uIeA6Pr8HHPviY8AAAABAStAQg8AAAAAACIAIJPe3QwmW8qGhXbT7i5Z7ruyDrwpblj37cqT1e6uwImWAQjaBABHMEQCIB7dMSfLrXShtRe8zeHg+W1vLd8clWNtXWvLwOdeROcdAiADnsWDCAyq1tGn0qCOzzn5vnFDlLJHFj61W+YhPfQRHgFHMEQCIDQOI/23oPdBE+E8MyabaF6obUe3a+P3IHEocuiOFKUgAiA1GOhOnkLwppTGd/eHEtfn8IoxPeKNo0uNPH47h0Uj8gFHUiECVw7AtutUVmMwIYOmLqx10I/e62TzE1IZIGXWAcjKUh0hAmaGfDQrglCra07axtuuL95TeCtpzRcTmUn71PIISH/yUq4BDiCMafGBe/5UAtd1nNgprontexbwAE/sHz359aXTlh9fKQEPBAAAAAABEAQAAAAADPwJbGlnaHRuaW5nAQjd6/1JtshNVAABAwjnfA0AAAAAAAEEIlEgj47URidVfbzMQq4BipxUdKmRKFeSxMqJHB9ZxWZdNGAhB/iX9exqGuFmGXElu1k3p7bXe1BAUps8JOIHBJ/cK9y8CQD0dur0BQAAAAz8CWxpZ2h0bmluZwEI3+v9SbbITVQAAQMI4MgQAAAAAAABBCIAIJPe3QwmW8qGhXbT7i5Z7ruyDrwpblj37cqT1e6uwImWDPwJbGlnaHRuaW5nAQjh6/1JtshNVAA=" } }, { @@ -153,15 +153,15 @@ "id": "example:splice_signed#2", "method": "splice_signed", "params": { - "channel_id": "channelid0780000780000780000780000780000780000780000780000780000", - "psbt": "cHNidP8BAgQCAAAAAQMEbwAAAAEEAQpsbt712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000" + "channel_id": "8c69f1817bfe5402d7759cd829ae89ed7b16f0004fec1f3df9f5a5d3961f5f29", + "psbt": "cHNidP8BAgQCAAAAAQMElgAAAAEEAQEBBQECAQYBAwH7BAIAAAAAAQCyAgAAAAKMafGBe/5UAtd1nNgprontexbwAE/sHz359aXTlh9fKQEAAAAA/f///4xp8YF7/lQC13Wc2Cmuie17FvAAT+wfPfn1pdOWH18pAAAAAAAAAAAAAud8DQAAAAAAIlEgj47URidVfbzMQq4BipxUdKmRKFeSxMqJHB9ZxWZdNGDgyBAAAAAAACIAIJPe3QwmW8qGhXbT7i5Z7ruyDrwpblj37cqT1e6uwImWlQAAAAEBK+DIEAAAAAAAIgAgk97dDCZbyoaFdtPuLlnuu7IOvCluWPftypPV7q7AiZYiAgJXDsC261RWYzAhg6YurHXQj97rZPMTUhkgZdYByMpSHUcwRAIgHbSqe2swZI4NmH8Cd/8gnOu1gpTvjTOm3DnFa8F0jqUCIA6TKkE+sHorpv9rFt1kaF8susqwjIwnSpviEfQj4EnpASICAmaGfDQrglCra07axtuuL95TeCtpzRcTmUn71PIISH/yRzBEAiAjs9cgsaoFzMWW7C34aGWMEEtzBSbkl2oNBqTbASGeHwIgWFJGWFWqUFMpe28YbhGBQHshcyD7LR3Rf3bM/q3Ty2IBAQMEAQAAAAEFR1IhAlcOwLbrVFZjMCGDpi6sddCP3utk8xNSGSBl1gHIylIdIQJmhnw0K4JQq2tO2sbbri/eU3grac0XE5lJ+9TyCEh/8lKuAQ4goqClwj1D7ASxLtFJGaOZh1LqanbTVgmtZIj6jeVRhd0BDwQBAAAAARAEAAAAAAz8CWxpZ2h0bmluZwEI4+v9SbbITVQAAQMIoIYBAAAAAAABBCJRIMTSgkFfmoHRjgi2GaGdEWuGVssb9JPl9UC797egWEzaDPwJbGlnaHRuaW5nAQjl6/1JtshNVAABAwi4Lg8AAAAAAAEEIgAgk97dDCZbyoaFdtPuLlnuu7IOvCluWPftypPV7q7AiZYM/AlsaWdodG5pbmcBCOfr/Um2yE1UAA==" } }, "response": { - "tx": "02000000000102sendpt65000650006500065000650006500065000650006500065000650006500065000650006500065000650006500065000650006500065000650006500065000650006500065000650006500065000650006500065000650006500065000650006500065000650006500065000650006500065000650006500065000650006500065000650006500065000650006500065000650006500065000650006500065000650006500065000650006500065000650006500065000650006500065000650006500065000650006500065000650006500065000650006500065000650006500065000650006500065000650006500065000650006500065000", - "txid": "txid6500065000650006500065000650006500065000650006500065000", + "tx": "02000000000101a2a0a5c23d43ec04b12ed14919a3998752ea6a76d35609ad6488fa8de55185dd01000000000000000002a086010000000000225120c4d282415f9a81d18e08b619a19d116b8656cb1bf493e5f540bbf7b7a0584cdab82e0f000000000022002093dedd0c265bca868576d3ee2e59eebbb20ebc296e58f7edca93d5eeaec08996040047304402201db4aa7b6b30648e0d987f0277ff209cebb58294ef8d33a6dc39c56bc1748ea502200e932a413eb07a2ba6ff6b16dd64685f2cbacab08c8c274a9be211f423e049e901473044022023b3d720b1aa05ccc596ec2df868658c104b730526e4976a0d06a4db01219e1f02205852465855aa5053297b6f186e1181407b217320fb2d1dd17f76ccfeadd3cb620147522102570ec0b6eb545663302183a62eac75d08fdeeb64f31352192065d601c8ca521d210266867c342b8250ab6b4edac6dbae2fde53782b69cd17139949fbd4f208487ff252ae96000000", + "txid": "738c9b7d3bb47dcfe6bed43c999d2e2f177c476d2bc7d3ffb49bd25ee21c68a7", "outnum": 1, - "psbt": "cHNidP8BAgQCAAAAAQMEbwAAAAEEAQpsbt712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000" + "psbt": "cHNidP8BAgQCAAAAAQMElgAAAAEEAQEBBQECAQYBAwH7BAIAAAAAAQCyAgAAAAKMafGBe/5UAtd1nNgprontexbwAE/sHz359aXTlh9fKQEAAAAA/f///4xp8YF7/lQC13Wc2Cmuie17FvAAT+wfPfn1pdOWH18pAAAAAAAAAAAAAud8DQAAAAAAIlEgj47URidVfbzMQq4BipxUdKmRKFeSxMqJHB9ZxWZdNGDgyBAAAAAAACIAIJPe3QwmW8qGhXbT7i5Z7ruyDrwpblj37cqT1e6uwImWlQAAAAEBK+DIEAAAAAAAIgAgk97dDCZbyoaFdtPuLlnuu7IOvCluWPftypPV7q7AiZYBCNoEAEcwRAIgHbSqe2swZI4NmH8Cd/8gnOu1gpTvjTOm3DnFa8F0jqUCIA6TKkE+sHorpv9rFt1kaF8susqwjIwnSpviEfQj4EnpAUcwRAIgI7PXILGqBczFluwt+GhljBBLcwUm5JdqDQak2wEhnh8CIFhSRlhVqlBTKXtvGG4RgUB7IXMg+y0d0X92zP6t08tiAUdSIQJXDsC261RWYzAhg6YurHXQj97rZPMTUhkgZdYByMpSHSECZoZ8NCuCUKtrTtrG264v3lN4K2nNFxOZSfvU8ghIf/JSrgEOIKKgpcI9Q+wEsS7RSRmjmYdS6mp201YJrWSI+o3lUYXdAQ8EAQAAAAEQBAAAAAAM/AlsaWdodG5pbmcBCOPr/Um2yE1UAAEDCKCGAQAAAAAAAQQiUSDE0oJBX5qB0Y4IthmhnRFrhlbLG/ST5fVAu/e3oFhM2gz8CWxpZ2h0bmluZwEI5ev9SbbITVQAAQMIuC4PAAAAAAABBCIAIJPe3QwmW8qGhXbT7i5Z7ruyDrwpblj37cqT1e6uwImWDPwJbGlnaHRuaW5nAQjn6/1JtshNVAA=" } } ] diff --git a/doc/schemas/splice_update.json b/doc/schemas/splice_update.json index 10b45ae9cd43..d26cd4bcda43 100644 --- a/doc/schemas/splice_update.json +++ b/doc/schemas/splice_update.json @@ -137,12 +137,12 @@ "id": "example:splice_update#1", "method": "splice_update", "params": { - "channel_id": "channelid0780000780000780000780000780000780000780000780000780000", - "psbt": "cHNidP8BAgQCAAAAAQMEbwAAAAEEAQpsbt711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000711000" + "channel_id": "8c69f1817bfe5402d7759cd829ae89ed7b16f0004fec1f3df9f5a5d3961f5f29", + "psbt": "cHNidP8BALICAAAAAoxp8YF7/lQC13Wc2Cmuie17FvAAT+wfPfn1pdOWH18pAQAAAAD9////jGnxgXv+VALXdZzYKa6J7XsW8ABP7B89+fWl05YfXykAAAAAAAAAAAAC53wNAAAAAAAiUSCPjtRGJ1V9vMxCrgGKnFR0qZEoV5LEyokcH1nFZl00YODIEAAAAAAAIgAgk97dDCZbyoaFdtPuLlnuu7IOvCluWPftypPV7q7AiZaVAAAAAAEAiQIAAAABe8lhdLWTt3QqdEAA+Ye+EPU6s0fgfj6uSlpNyrejJXQBAAAAAP3///8CQEIPAAAAAAAiACCT3t0MJlvKhoV20+4uWe67sg68KW5Y9+3Kk9XursCJlgEvDwAAAAAAIlEgW7Q7f9oXFdDdAUFoJaGFIqLX7LFkdbiHgOj6/Bxz74mPAAAAAQErAS8PAAAAAAAiUSBbtDt/2hcV0N0BQWgloYUiotfssWR1uIeA6Pr8HHPviQz8CWxpZ2h0bmluZwEI2+v9SbbITVQAAQCJAgAAAAF7yWF0tZO3dCp0QAD5h74Q9TqzR+B+Pq5KWk3Kt6MldAEAAAAA/f///wJAQg8AAAAAACIAIJPe3QwmW8qGhXbT7i5Z7ruyDrwpblj37cqT1e6uwImWAS8PAAAAAAAiUSBbtDt/2hcV0N0BQWgloYUiotfssWR1uIeA6Pr8HHPviY8AAAABAStAQg8AAAAAACIAIJPe3QwmW8qGhXbT7i5Z7ruyDrwpblj37cqT1e6uwImWAQVHUiECVw7AtutUVmMwIYOmLqx10I/e62TzE1IZIGXWAcjKUh0hAmaGfDQrglCra07axtuuL95TeCtpzRcTmUn71PIISH/yUq4M/AlsaWdodG5pbmcBCN3r/Um2yE1UAAz8CWxpZ2h0bmluZwEI3+v9SbbITVQADPwJbGlnaHRuaW5nAQjh6/1JtshNVAA=" } }, "response": { - "psbt": "cHNidP8BAgQCAAAAAQMEbwAAAAEEAQpsbt715200715200715200715200715200715200715200715200715200715200715200715200715200715200715200715200715200715200715200715200715200715200715200715200715200715200715200715200715200715200715200715200715200715200715200715200715200715200715200715200715200715200715200715200715200715200715200715200715200715200715200715200715200715200715200715200715200715200715200715200715200715200715200715200715200715200715200715200715200715200715200715200715200715200715200715200715200715200715200715200715200715200715200715200715200715200715200715200715200715200715200715200715200715200715200715200715200715200715200715200715200715200715200715200715200715200715200715200715200715200715200715200715200715200715200715200715200715200715200715200", + "psbt": "cHNidP8BALICAAAAAoxp8YF7/lQC13Wc2Cmuie17FvAAT+wfPfn1pdOWH18pAQAAAAD9////jGnxgXv+VALXdZzYKa6J7XsW8ABP7B89+fWl05YfXykAAAAAAAAAAAAC53wNAAAAAAAiUSCPjtRGJ1V9vMxCrgGKnFR0qZEoV5LEyokcH1nFZl00YODIEAAAAAAAIgAgk97dDCZbyoaFdtPuLlnuu7IOvCluWPftypPV7q7AiZaVAAAAAAEAiQIAAAABe8lhdLWTt3QqdEAA+Ye+EPU6s0fgfj6uSlpNyrejJXQBAAAAAP3///8CQEIPAAAAAAAiACCT3t0MJlvKhoV20+4uWe67sg68KW5Y9+3Kk9XursCJlgEvDwAAAAAAIlEgW7Q7f9oXFdDdAUFoJaGFIqLX7LFkdbiHgOj6/Bxz74mPAAAAAQErAS8PAAAAAAAiUSBbtDt/2hcV0N0BQWgloYUiotfssWR1uIeA6Pr8HHPviQz8CWxpZ2h0bmluZwEI2+v9SbbITVQAAQCJAgAAAAF7yWF0tZO3dCp0QAD5h74Q9TqzR+B+Pq5KWk3Kt6MldAEAAAAA/f///wJAQg8AAAAAACIAIJPe3QwmW8qGhXbT7i5Z7ruyDrwpblj37cqT1e6uwImWAS8PAAAAAAAiUSBbtDt/2hcV0N0BQWgloYUiotfssWR1uIeA6Pr8HHPviY8AAAABAStAQg8AAAAAACIAIJPe3QwmW8qGhXbT7i5Z7ruyDrwpblj37cqT1e6uwImWIgICVw7AtutUVmMwIYOmLqx10I/e62TzE1IZIGXWAcjKUh1HMEQCIB7dMSfLrXShtRe8zeHg+W1vLd8clWNtXWvLwOdeROcdAiADnsWDCAyq1tGn0qCOzzn5vnFDlLJHFj61W+YhPfQRHgEiAgJmhnw0K4JQq2tO2sbbri/eU3grac0XE5lJ+9TyCEh/8kcwRAIgNA4j/beg90ET4TwzJptoXqhtR7dr4/cgcShy6I4UpSACIDUY6E6eQvCmlMZ394cS1+fwijE94o2jS408fjuHRSPyAQEDBAEAAAABBUdSIQJXDsC261RWYzAhg6YurHXQj97rZPMTUhkgZdYByMpSHSECZoZ8NCuCUKtrTtrG264v3lN4K2nNFxOZSfvU8ghIf/JSrgz8CWxpZ2h0bmluZwEI3ev9SbbITVQADPwJbGlnaHRuaW5nAQjf6/1JtshNVAAM/AlsaWdodG5pbmcBCOHr/Um2yE1UAA==", "commitments_secured": true, "signatures_secured": true } @@ -152,12 +152,12 @@ "id": "example:splice_update#2", "method": "splice_update", "params": [ - "channelid0780000780000780000780000780000780000780000780000780000", - "cHNidP8BAgQCAAAAAQMEbwAAAAEEAQpsbt712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000" + "8c69f1817bfe5402d7759cd829ae89ed7b16f0004fec1f3df9f5a5d3961f5f29", + "cHNidP8BAgQCAAAAAQMElgAAAAEEAQEBBQECAQYBAwH7BAIAAAAAAQCyAgAAAAKMafGBe/5UAtd1nNgprontexbwAE/sHz359aXTlh9fKQEAAAAA/f///4xp8YF7/lQC13Wc2Cmuie17FvAAT+wfPfn1pdOWH18pAAAAAAAAAAAAAud8DQAAAAAAIlEgj47URidVfbzMQq4BipxUdKmRKFeSxMqJHB9ZxWZdNGDgyBAAAAAAACIAIJPe3QwmW8qGhXbT7i5Z7ruyDrwpblj37cqT1e6uwImWlQAAAAEBK+DIEAAAAAAAIgAgk97dDCZbyoaFdtPuLlnuu7IOvCluWPftypPV7q7AiZYBBUdSIQJXDsC261RWYzAhg6YurHXQj97rZPMTUhkgZdYByMpSHSECZoZ8NCuCUKtrTtrG264v3lN4K2nNFxOZSfvU8ghIf/JSrgEOIKKgpcI9Q+wEsS7RSRmjmYdS6mp201YJrWSI+o3lUYXdAQ8EAQAAAAEQBAAAAAAM/AlsaWdodG5pbmcBCOPr/Um2yE1UAAEDCKCGAQAAAAAAAQQiUSDE0oJBX5qB0Y4IthmhnRFrhlbLG/ST5fVAu/e3oFhM2gz8CWxpZ2h0bmluZwEI5ev9SbbITVQAAQMIuC4PAAAAAAABBCIAIJPe3QwmW8qGhXbT7i5Z7ruyDrwpblj37cqT1e6uwImWDPwJbGlnaHRuaW5nAQjn6/1JtshNVAA=" ] }, "response": { - "psbt": "cHNidP8BAgQCAAAAAQMEbwAAAAEEAQpsbt712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000712000", + "psbt": "cHNidP8BAgQCAAAAAQMElgAAAAEEAQEBBQECAQYBAwH7BAIAAAAAAQCyAgAAAAKMafGBe/5UAtd1nNgprontexbwAE/sHz359aXTlh9fKQEAAAAA/f///4xp8YF7/lQC13Wc2Cmuie17FvAAT+wfPfn1pdOWH18pAAAAAAAAAAAAAud8DQAAAAAAIlEgj47URidVfbzMQq4BipxUdKmRKFeSxMqJHB9ZxWZdNGDgyBAAAAAAACIAIJPe3QwmW8qGhXbT7i5Z7ruyDrwpblj37cqT1e6uwImWlQAAAAEBK+DIEAAAAAAAIgAgk97dDCZbyoaFdtPuLlnuu7IOvCluWPftypPV7q7AiZYiAgJXDsC261RWYzAhg6YurHXQj97rZPMTUhkgZdYByMpSHUcwRAIgHbSqe2swZI4NmH8Cd/8gnOu1gpTvjTOm3DnFa8F0jqUCIA6TKkE+sHorpv9rFt1kaF8susqwjIwnSpviEfQj4EnpASICAmaGfDQrglCra07axtuuL95TeCtpzRcTmUn71PIISH/yRzBEAiAjs9cgsaoFzMWW7C34aGWMEEtzBSbkl2oNBqTbASGeHwIgWFJGWFWqUFMpe28YbhGBQHshcyD7LR3Rf3bM/q3Ty2IBAQMEAQAAAAEFR1IhAlcOwLbrVFZjMCGDpi6sddCP3utk8xNSGSBl1gHIylIdIQJmhnw0K4JQq2tO2sbbri/eU3grac0XE5lJ+9TyCEh/8lKuAQ4goqClwj1D7ASxLtFJGaOZh1LqanbTVgmtZIj6jeVRhd0BDwQBAAAAARAEAAAAAAz8CWxpZ2h0bmluZwEI4+v9SbbITVQAAQMIoIYBAAAAAAABBCJRIMTSgkFfmoHRjgi2GaGdEWuGVssb9JPl9UC797egWEzaDPwJbGlnaHRuaW5nAQjl6/1JtshNVAABAwi4Lg8AAAAAAAEEIgAgk97dDCZbyoaFdtPuLlnuu7IOvCluWPftypPV7q7AiZYM/AlsaWdodG5pbmcBCOfr/Um2yE1UAA==", "commitments_secured": true, "signatures_secured": true } diff --git a/doc/schemas/sql-template.json b/doc/schemas/sql-template.json index 9a1107b85683..c9bf1e538939 100644 --- a/doc/schemas/sql-template.json +++ b/doc/schemas/sql-template.json @@ -155,7 +155,7 @@ "response": { "rows": [ [ - "nodeid020202020202020202020202020202020202020202020202020202020202" + "022d223620a359a47ff7f7ac447c85c46c923da53389221a0054c11c1e3ca31d59" ] ] } @@ -189,19 +189,19 @@ "id": "example:sql#3", "method": "sql", "params": [ - "SELECT nodeid FROM nodes WHERE nodeid != x'nodeid030303030303030303030303030303030303030303030303030303030303'" + "SELECT nodeid FROM nodes WHERE nodeid != x'035d2b1192dfba134e10e540875d366ebc8bc353d5aa766b80c090b39c3a5d885d'" ] }, "response": { "rows": [ [ - "nodeid020202020202020202020202020202020202020202020202020202020202" + "022d223620a359a47ff7f7ac447c85c46c923da53389221a0054c11c1e3ca31d59" ], [ - "nodeid010101010101010101010101010101010101010101010101010101010101" + "0266e4598d1d3c415f572a8488830b60f7e744ed9235eb0b1ba93283b315c03518" ], [ - "nodeid040404040404040404040404040404040404040404040404040404040404" + "0382ce59ebf18be7d84677c2e35f23294b9992ceca95491fcf8a56c6cb2d9de199" ] ] } @@ -214,16 +214,16 @@ "id": "example:sql#4", "method": "sql", "params": [ - "SELECT nodeid FROM nodes WHERE nodeid IN (x'nodeid010101010101010101010101010101010101010101010101010101010101', x'nodeid030303030303030303030303030303030303030303030303030303030303')" + "SELECT nodeid FROM nodes WHERE nodeid IN (x'0266e4598d1d3c415f572a8488830b60f7e744ed9235eb0b1ba93283b315c03518', x'035d2b1192dfba134e10e540875d366ebc8bc353d5aa766b80c090b39c3a5d885d')" ] }, "response": { "rows": [ [ - "nodeid010101010101010101010101010101010101010101010101010101010101" + "0266e4598d1d3c415f572a8488830b60f7e744ed9235eb0b1ba93283b315c03518" ], [ - "nodeid030303030303030303030303030303030303030303030303030303030303" + "035d2b1192dfba134e10e540875d366ebc8bc353d5aa766b80c090b39c3a5d885d" ] ] } @@ -242,7 +242,7 @@ "response": { "rows": [ [ - "nodeid020202020202020202020202020202020202020202020202020202020202", + "022d223620a359a47ff7f7ac447c85c46c923da53389221a0054c11c1e3ca31d59", 490493792, 1000000000, "CHANNELD_NORMAL:Channel ready for use." @@ -280,21 +280,15 @@ "response": { "rows": [ [ - 28, - 23, + 22, + 17, 0, "option_static_remotekey" ], [ - 29, 23, + 17, 1, - "option_anchors_zero_fee_htlc_tx" - ], - [ - 30, - 23, - 2, "option_anchors" ] ] diff --git a/doc/schemas/staticbackup.json b/doc/schemas/staticbackup.json index f41c973397ea..3157e4d20e8f 100644 --- a/doc/schemas/staticbackup.json +++ b/doc/schemas/staticbackup.json @@ -46,12 +46,12 @@ }, "response": { "scb": [ - "0000000000000001channelid0340000340000340000340000340000340000340000340000340000nodeid03030303030303030303030303030303030303030303030303030303030300017f000001034003400340034003400340034003400340034003400340034003400340034003400340034003400340034003400003401000", - "0000000000000002channelid0340200340200340200340200340200340200340200340200340200nodeid03030303030303030303030303030303030303030303030303030303030300017f000001034203420342034203420342034203420342034203420342034203420342034203420342034203420342034203420003401000", - "0000000000000003channelid0410000410000410000410000410000410000410000410000410000nodeid01010101010101010101010101010101010101010101010101010101010100017f000001041004100410041004100410041004100410041004100410041004100410041004100410041004100410041004100003401000", - "0000000000000004channelid0120000120000120000120000120000120000120000120000120000nodeid01010101010101010101010101010101010101010101010101010101010100017f000001012001200120012001200120012001200120012001200120012001200120012001200120012001200120012001200003401000", - "0000000000000005channelid1520015200152001520015200152001520015200152001520015200nodeid01010101010101010101010101010101010101010101010101010101010100017f000001015201520152015201520152015201520152015201520152015201520152015201520152015201520152015201520003401000", - "0000000000000006channelid1240012400124001240012400124001240012400124001240012400nodeid02020202020202020202020202020202020202020202020202020202020200017f000001012401240124012401240124012401240124012401240124012401240124012401240124012401240124012401240003401000" + "0000000000000006f4e1de801de57374d5737da622611e3a1ad9f16d5df9c30fceecc11ce732eeeb022d223620a359a47ff7f7ac447c85c46c923da53389221a0054c11c1e3ca31d59017f000001a95cbe3270e5e0998af5eb0a67f7bf6e8d5b3d3d43059b3e4cfbd1e4fca6152c51320000000100000000000f42400003401000000000eb015c0000fffffffffffe000000020000ffffffffffff3283fc1863a9702a8e188ed55475324e55485a8758d2068cfea35851418c55740000fffffffffffed00ec892b1739b55ddc0cca2988d8731eb33f2295c1fcc13fdbdfff9d3f85d6d038402a6939f0f9d5c7a41464169eb692b4d2d73266b3c46345cd036ca577a15bdeeaa027662682a646ce7671c3a091bf639176e87d3379022126b209ebadadae19ffc0e02c59668c64362eaeabf44ee4f10b98fc92412cbea74b6f3a917423dfdf3ca282602773e6c29472ab708e5b127e8ae1ce2d8b7f56b457299f93bb72bb73fdbcf91770501010702a5f8", + "000000000000000121bd30cac60f477f2c4267220b1702a6ec5780db34f9934fa94b8c0508bf3357035d2b1192dfba134e10e540875d366ebc8bc353d5aa766b80c090b39c3a5d885d017f000001dcf8fdd5381f36008c3eac24cdde5ec0fea8f39240575ef0cb4406cb51ad419dd7810000000000000000000f424000034010000000011301840000fffffffffffa000000030000fffffffffffb8ff7d0df4eee78e558b4e07f82049aaa933f4f4932e13e1e7fee5cb103f7a0b50000fffffffffffa79176754ea338ffa080591b946a6ac1c47ff579ae7e45857bf01261ebe1c46ba0000fffffffffffcbdb924885293efdaa1ba8f556161f4fe525c19483def49b9af85c1623bc6d27b038402add69f29ad433cb7d4c9470f2d49d80245fd9e76a992197528a131e37711efac02c57de22185162001ffaf2e61b053b1d0e280d73ecec1b04916df2c65642d94a102cd4e1a07ee85714b6eada09d9cf81aeb15bfc72ddd003235530c58bbd0c0144902b10f36d2ebab3ce560abf15ceb1bef619491e0597a794fdafcfdf8708eec9e2d0501010702a5f8", + "00000000000000027512083907c74ed3a045e9bf772b3d72948eb93daf84a1cee57108800451aaf2035d2b1192dfba134e10e540875d366ebc8bc353d5aa766b80c090b39c3a5d885d017f000001dcf80239a9c9f2a91e69ba01800baf71f55efe457677b2e5cbd640b888dc1c9375b40000000000000000000f42400003401000000000c301340000ffffffffffff000000010000ffffffffffff0e07b6188dd51f15bb5cb9027950bf487a612dca57e2928de3f28f6ee796978b03840330b7ddf07e5bc779ea468875371ea25b560491c5feaeeb5e229ded3820d1d69103620748b3796c4988dd0fc63b92ae011dc989f15c433a55ed38e24318a43b4c93021bfe48bb1aded55878b00a3f00c5c1bffa1010510d8ba1c6372012ac9c3205d20201604aa7056ab8926038a846014bdbe4874ceef7ce45141b8009b0e2f49e7ec70501010702a5f8", + "0000000000000003222d999f537e32e9458c5db17a63e012dcced61340de06fda5bc30566270b0aa0266e4598d1d3c415f572a8488830b60f7e744ed9235eb0b1ba93283b315c03518017f0000017531932479f6d82ee59c7aa67b99568de0a31c202f6a3ff18a6bdd1ec22683cf026500000000000000000bebb3cb00034010000000009b010c0001000000000000000000000384021f90b5f38e0c0ea50bccfcf70a32cd4395c8c544e70636b7cc41831fe33fb4ce03bcfb0d457dfa07f508f434e6a2f040dd3dd233e7002dbe1c1b5d86ed5d3efd76030a4ce755504748f47401fc016578a52e104cbbd28251f10b11e4b3e55d0fe1d303986bdd0842662b8d0d18147630a720e952a2cda624c63ef4903357d27e54f7920501000702a5f8", + "0000000000000004a4a379248e49d207cc984646e632e1a31105a85708b9d6d961a5018fdd489f5a0266e4598d1d3c415f572a8488830b60f7e744ed9235eb0b1ba93283b315c03518017f000001970c7f07a15ce1fe1519d46536c4036f1c13527fa8bf52f6a5299b860f982ba2ed7e00000001000000000000753000034010000000009b010c000100000000000000000000038402c8aabcf1224df10e9d803dc3918797892fe0abec56d3e06f121bcebbe9ab0a2c03bd181375d57b8b1d15def9c5f9007b3c3ff98a140c0a44c9dc5f54ac7ea4baf30310952e08f9960711d8142dfa171c0fc2348762acea003f3897397f6ace8454130382da2a229450c4a8e8cea70bbd147eaaf981184bff8c1d70b70c30a494d848420501010702a5f8", + "000000000000000509eb55872cd9039ecd08281af756e23b15aad4129fd6a9bcd71b472114ebf43a0266e4598d1d3c415f572a8488830b60f7e744ed9235eb0b1ba93283b315c03518017f000001970c64ed91a21c10208d715b59801b12b4a6eff9ea9e4e7d45971c298b62d90ece8e00000000000000000000c35000034010000000009b010c000100000000000000000000038402e885f38e784050b386fb32d20935acc61059d8b02b6bec0ac2bfc8b2c5cf7f3103ae69dbfc6511ba0781c13113e16e1557a875b910cb1cb1fe1ef95a7edb36135a03758d5faa8515942873911e21869b1b90a4be72af14b394bc064da6ba518b087003750b588cd1fb8d60276c12c1c3eef7e302e3772414234404289db8c10f5731320501010702a5f8" ] } } diff --git a/doc/schemas/txdiscard.json b/doc/schemas/txdiscard.json index 2aecc24e47da..60a3e49af3a4 100644 --- a/doc/schemas/txdiscard.json +++ b/doc/schemas/txdiscard.json @@ -65,12 +65,12 @@ "id": "example:txdiscard#1", "method": "txdiscard", "params": [ - "txidtxprep000100001000010000100001000010000100001000010000100001" + "2b52249cc84f3698d6b324dab40f97d7b11812cf9bad3384ff775621e86df856" ] }, "response": { - "unsigned_tx": "0200000000000600060006000600060006000600060006000600060006000600060006000600060006000600060006000600060006000600060006000600060006000600060006000600060006000600060006000600060006000600060006000600060006000600060006000600060006000600060006000600060006000600060006000600060006", - "txid": "txidtxprep000100001000010000100001000010000100001000010000100001" + "unsigned_tx": "0200000001fb09d48388d44aded94a818b4d21499048958b804e44be571bd3d2710235b87a0000000000fdffffff020000000100000000220020a056363be8c7dbb511098cc50fbca24843e6ed6de03f816465f1998a9a82a09d4183980000000000225120f1393467c717cd50de2760167d4311141a8f750c89f54fd2c900601a7da8434c98000000", + "txid": "2b52249cc84f3698d6b324dab40f97d7b11812cf9bad3384ff775621e86df856" } }, { @@ -78,12 +78,12 @@ "id": "example:txdiscard#2", "method": "txdiscard", "params": { - "txid": "txidtxprep000300003000030000300003000030000300003000030000300003" + "txid": "215dcab7a090082d977159212a49895a7951789b71869e6f09e13b7923c7a393" } }, "response": { - "unsigned_tx": "0200000000000800080008000800080008000800080008000800080008000800080008000800080008000800080008000800080008000800080008000800080008000800080008000800080008000800080008000800080008000800080008000800080008000800080008000800080008000800080008000800080008000800080008000800080008", - "txid": "txidtxprep000300003000030000300003000030000300003000030000300003" + "unsigned_tx": "020000000108090ec7f33379421f47fd271d060d0e29869bde5fac8230b3a47e7d89bd6c9f0000000000fdffffff0240420f00000000002200200fefd5034808bec0c94b857b7a3ddeeece7cae1b2101b2f23f1c114b14073f31eaa2f000000000002251205c54c6ff7b25c08e66a91d4256a5ca2c374ab1faf56377e8d65466cf997614ce99000000", + "txid": "215dcab7a090082d977159212a49895a7951789b71869e6f09e13b7923c7a393" } } ] diff --git a/doc/schemas/txprepare.json b/doc/schemas/txprepare.json index 56751a119914..48a93bc42122 100644 --- a/doc/schemas/txprepare.json +++ b/doc/schemas/txprepare.json @@ -103,15 +103,15 @@ "params": [ [ { - "bcrt1p0002020202020202020202020202020202020202020202020202020202": 16777216 + "bcrt1q5ptrvwlgcldm2ygf3nzsl09zfpp7dmtduqlczer97xvc4x5z5zwsc2ulv4": 16777216 } ] ] }, "response": { - "unsigned_tx": "0200000000000600060006000600060006000600060006000600060006000600060006000600060006000600060006000600060006000600060006000600060006000600060006000600060006000600060006000600060006000600060006000600060006000600060006000600060006000600060006000600060006000600060006000600060006", - "txid": "txidtxprep000100001000010000100001000010000100001000010000100001", - "psbt": "cHNidP8BAgQCAAAAAQMEbwAAAAEEAQpsbt101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000101000" + "unsigned_tx": "0200000001fb09d48388d44aded94a818b4d21499048958b804e44be571bd3d2710235b87a0000000000fdffffff020000000100000000220020a056363be8c7dbb511098cc50fbca24843e6ed6de03f816465f1998a9a82a09d4183980000000000225120f1393467c717cd50de2760167d4311141a8f750c89f54fd2c900601a7da8434c98000000", + "txid": "2b52249cc84f3698d6b324dab40f97d7b11812cf9bad3384ff775621e86df856", + "psbt": "cHNidP8BAgQCAAAAAQMEmAAAAAEEAQEBBQECAQYBAwH7BAIAAAAAAQBxAgAAAAF7yWF0tZO3dCp0QAD5h74Q9TqzR+B+Pq5KWk3Kt6MldAAAAAAA/f///wKAlpgBAAAAABYAFP+FM+rwsTm8Bz0qImOObKCgg3zVXuPf3gAAAAAWABTdQ3+1uuxIN+FttkktoVc11r7FM5cAAAABAR+AlpgBAAAAABYAFP+FM+rwsTm8Bz0qImOObKCgg3zVAQ4g+wnUg4jUSt7ZSoGLTSFJkEiVi4BORL5XG9PScQI1uHoBDwQAAAAAARAE/f///wABAwgAAAABAAAAAAEEIgAgoFY2O+jH27URCYzFD7yiSEPm7W3gP4FkZfGZipqCoJ0AAQMIQYOYAAAAAAABBCJRIPE5NGfHF81Q3idgFn1DERQaj3UMifVP0skAYBp9qENMAA==" } }, { @@ -121,15 +121,15 @@ "params": { "outputs": [ { - "bcrt1p0003030303030303030303030303030303030303030303030303030303": 16777216 + "bcrt1q4hz6a4gtecfmy8z870cwkq2gzc0t7n9u9pu23689u55ghwewemqsv4v2zs": 16777216 } ] } }, "response": { - "unsigned_tx": "0200000000000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002000200020002", - "txid": "txidtxprep000200002000020000200002000020000200002000020000200002", - "psbt": "cHNidP8BAgQCAAAAAQMEbwAAAAEEAQpsbt201000201000201000201000201000201000201000201000201000201000201000201000201000201000201000201000201000201000201000201000201000201000201000201000201000201000201000201000201000201000201000201000201000201000201000201000201000201000201000201000" + "unsigned_tx": "0200000001fb09d48388d44aded94a818b4d21499048958b804e44be571bd3d2710235b87a0000000000fdffffff020000000100000000220020adc5aed50bce13b21c47f3f0eb0148161ebf4cbc2878a8e8e5e5288bbb2ecec1418398000000000022512081da0d3e3051135a89e2f9d85e2eadf661f959bfb05e671097854672cfd0ac7d98000000", + "txid": "e8b14f1622e8d6839c40f255ae617f96aebdf313a8486d1aa9023731a979971e", + "psbt": "cHNidP8BAgQCAAAAAQMEmAAAAAEEAQEBBQECAQYBAwH7BAIAAAAAAQBxAgAAAAF7yWF0tZO3dCp0QAD5h74Q9TqzR+B+Pq5KWk3Kt6MldAAAAAAA/f///wKAlpgBAAAAABYAFP+FM+rwsTm8Bz0qImOObKCgg3zVXuPf3gAAAAAWABTdQ3+1uuxIN+FttkktoVc11r7FM5cAAAABAR+AlpgBAAAAABYAFP+FM+rwsTm8Bz0qImOObKCgg3zVAQ4g+wnUg4jUSt7ZSoGLTSFJkEiVi4BORL5XG9PScQI1uHoBDwQAAAAAARAE/f///wABAwgAAAABAAAAAAEEIgAgrcWu1QvOE7IcR/Pw6wFIFh6/TLwoeKjo5eUoi7suzsEAAQMIQYOYAAAAAAABBCJRIIHaDT4wURNaieL52F4urfZh+Vm/sF5nEJeFRnLP0Kx9AA==" } } ] diff --git a/doc/schemas/txsend.json b/doc/schemas/txsend.json index cf84e53065ce..4a648190e267 100644 --- a/doc/schemas/txsend.json +++ b/doc/schemas/txsend.json @@ -69,13 +69,13 @@ "id": "example:txsend#1", "method": "txsend", "params": [ - "txidtxprep000200002000020000200002000020000200002000020000200002" + "e8b14f1622e8d6839c40f255ae617f96aebdf313a8486d1aa9023731a979971e" ] }, "response": { - "tx": "02000000000101txsend00011000110001100011000110001100011000110001100011000110001100011000110001100011000110001100011000110001100011000110001100011000110001100011000110001100011000110001100011000110001100011000110001100011000110001100011000110001100011000110001100011000110001100011000110001100011000110001100011000110001100011000110001100011000110001100011000110001100011000110001100011000110001100011000110001100011000110001100011000110001100011000110001100011000110001100011000110001100011000110001100011000110001100011", - "txid": "txidtxprep000200002000020000200002000020000200002000020000200002", - "psbt": "cHNidP8BAgQCAAAAAQMEbwAAAAEEAQpsbt011100011100011100011100011100011100011100011100011100011100011100011100011100011100011100011100011100011100011100011100011100011100011100011100011100011100011100011100011100011100011100011100011100011100011100011100011100011100011100011100" + "tx": "0200000001fb09d48388d44aded94a818b4d21499048958b804e44be571bd3d2710235b87a0000000000fdffffff020000000100000000220020adc5aed50bce13b21c47f3f0eb0148161ebf4cbc2878a8e8e5e5288bbb2ecec1418398000000000022512081da0d3e3051135a89e2f9d85e2eadf661f959bfb05e671097854672cfd0ac7d98000000", + "txid": "e8b14f1622e8d6839c40f255ae617f96aebdf313a8486d1aa9023731a979971e", + "psbt": "cHNidP8BAgQCAAAAAQMEmAAAAAEEAQEBBQECAQYBAwH7BAIAAAAAAQBxAgAAAAF7yWF0tZO3dCp0QAD5h74Q9TqzR+B+Pq5KWk3Kt6MldAAAAAAA/f///wKAlpgBAAAAABYAFP+FM+rwsTm8Bz0qImOObKCgg3zVXuPf3gAAAAAWABTdQ3+1uuxIN+FttkktoVc11r7FM5cAAAABAR+AlpgBAAAAABYAFP+FM+rwsTm8Bz0qImOObKCgg3zVIgICrdS+fDe+nFDye7Mp6i6PaAV6YeEglyQM1Lypkk6qiU5HMEQCIGJjEwHrdV/d8Js4XmPT9eMXGes2vodTrV2KtnjUqREkAiBAt68NmL8o32UfDR+YX2yiGZd5DRUF++ppU4YnCE+7WQEiBgKt1L58N76cUPJ7synqLo9oBXph4SCXJAzUvKmSTqqJTgj/hTPqAAAAAAEOIPsJ1IOI1Ere2UqBi00hSZBIlYuATkS+VxvT0nECNbh6AQ8EAAAAAAEQBP3///8AAQMIAAAAAQAAAAABBCIAIK3FrtULzhOyHEfz8OsBSBYev0y8KHio6OXlKIu7Ls7BAAEDCEGDmAAAAAAAAQQiUSCB2g0+MFETWoni+dheLq32YflZv7BeZxCXhUZyz9CsfSEHPXxCgubxwYgC9mDabmKYMY13V5d4yQepeZJ7VCvUFqIJAEDR+iMDAAAAAA==" } }, { @@ -83,13 +83,13 @@ "id": "example:txsend#2", "method": "txsend", "params": { - "txid": "txidtxprep000400004000040000400004000040000400004000040000400004" + "txid": "90ebfe2791e0e307d5043202d0b5cd3a3304daf5a3b98e4bbac503d08634d555" } }, "response": { - "tx": "02000000000101txsend00022000220002200022000220002200022000220002200022000220002200022000220002200022000220002200022000220002200022000220002200022000220002200022000220002200022000220002200022000220002200022000220002200022000220002200022000220002200022000220002200022000220002200022000220002200022000220002200022000220002200022000220002200022000220002200022000220002200022000220002200022000220002200022000220002200022000220002200022000220002200022000220002200022000220002200022000220002200022000220002200022000220002200022", - "txid": "txidtxprep000400004000040000400004000040000400004000040000400004", - "psbt": "cHNidP8BAgQCAAAAAQMEbwAAAAEEAQpsbt022200022200022200022200022200022200022200022200022200022200022200022200022200022200022200022200022200022200022200022200022200022200022200022200022200022200022200022200022200022200022200022200022200022200022200022200022200022200022200022200" + "tx": "020000000108090ec7f33379421f47fd271d060d0e29869bde5fac8230b3a47e7d89bd6c9f0000000000fdffffff0240420f0000000000220020c9ea2c65ca8cdc27bc130fe11f5e52e175475e0e31b645b1dcc3832dc4f7e78deaa2f00000000000225120774b1c2a9b4b0a9dce43b46395940da2001115d400fa3667909ec86a5d36518b99000000", + "txid": "90ebfe2791e0e307d5043202d0b5cd3a3304daf5a3b98e4bbac503d08634d555", + "psbt": "cHNidP8BAgQCAAAAAQMEmQAAAAEEAQEBBQECAQYBAwH7BAIAAAAAAQBeAgAAAAEel3mpMTcCqRptSKgT872uln9hrlXyQJyD1ugiFk+x6AAAAAAA/////wE29/8AAAAAACJRIBBn+sE76BrhkJwdcl10AW73v27fGwM4fUYbSSX4NuhVAAAAAAEBKzb3/wAAAAAAIlEgEGf6wTvoGuGQnB1yXXQBbve/bt8bAzh9RhtJJfg26FUBDiAICQ7H8zN5Qh9H/ScdBg0OKYab3l+sgjCzpH59ib1snwEPBAAAAAABEAT9////ARNA7qgVSILWVeJ3iVq2cHwuHp28MdIw4CbgJKilEaXgaFJuhJFdQaJzeJ3YOgvOpRA+ENj9RHXIv/24sYuKIr62gyEWSGn5H1BOLW1cQuaAXwZz7OyTu4UYInxyYnJzwKCebrUJAJcA1qsAAAAAAAEDCEBCDwAAAAAAAQQiACDJ6ixlyozcJ7wTD+EfXlLhdUdeDjG2RbHcw4MtxPfnjQABAwjqovAAAAAAAAEEIlEgd0scKptLCp3OQ7RjlZQNogARFdQA+jZnkJ7Ial02UYshB4QxwPeJGASKpKclGmF+KkCt89LyZ37UONUy9HdStTzDCQDVZoJDBgAAAAA=" } } ] diff --git a/doc/schemas/unreserveinputs.json b/doc/schemas/unreserveinputs.json index c3e59df8ca98..ac9fe1bb0e2f 100644 --- a/doc/schemas/unreserveinputs.json +++ b/doc/schemas/unreserveinputs.json @@ -128,7 +128,7 @@ "id": "example:unreserveinputs#1", "method": "unreserveinputs", "params": { - "psbt": "cHNidP8BAgQCAAAAAQMEbwAAAAEEAQpsbt310000310000310000310000310000310000310000310000310000310000310000310000310000310000310000310000310000310000310000310000310000310000310000310000310000310000310000310000310000310000310000310000310000310000310000310000310000310000310000310000", + "psbt": "cHNidP8BAF4CAAAAARxvUMSNjH7EKMXzxKwycdOSZ64xHQfWS7JFe0pAwIPCAAAAAAD9////AahhAAAAAAAAIlEg+3d9jpNmK0getyg5W+Mp31CPIRDKcJg/mZs/uaVrQ+GbAAAAAAEAiQIAAAAB8XN4MRmL6kPpMsgk9fPi+WJWotGhushvL/SXVnKJnZ0AAAAAAP3///8CYg3NCwAAAAAiUSDJGD7ekSHzxv0UmIIsR6dgJzInZpyQlQiEO6xbvYE/aICEHgAAAAAAIgAgybxcBjyu+/emx4FEB7Vie0+BqLVuy+kyxoL5y6wNGd+aAAAAAQErYg3NCwAAAAAiUSDJGD7ekSHzxv0UmIIsR6dgJzInZpyQlQiEO6xbvYE/aAAA", "reserve": 200 } }, @@ -141,7 +141,7 @@ "id": "example:unreserveinputs#2", "method": "unreserveinputs", "params": [ - "cHNidP8BAgQCAAAAAQMEbwAAAAEEAQpsbt410000410000410000410000410000410000410000410000410000410000410000410000410000410000410000410000410000410000410000410000410000410000410000410000410000410000410000410000410000410000410000410000410000410000410000410000410000410000410000410000" + "cHNidP8BAF4CAAAAARxvUMSNjH7EKMXzxKwycdOSZ64xHQfWS7JFe0pAwIPCAAAAAAD9////AetRxQsAAAAAIlEg21kTTo7K2doCG6F2JqgaDjc1kRCrH7AL08oPVVJhuE+bAAAAAAEAiQIAAAAB8XN4MRmL6kPpMsgk9fPi+WJWotGhushvL/SXVnKJnZ0AAAAAAP3///8CYg3NCwAAAAAiUSDJGD7ekSHzxv0UmIIsR6dgJzInZpyQlQiEO6xbvYE/aICEHgAAAAAAIgAgybxcBjyu+/emx4FEB7Vie0+BqLVuy+kyxoL5y6wNGd+aAAAAAQErYg3NCwAAAAAiUSDJGD7ekSHzxv0UmIIsR6dgJzInZpyQlQiEO6xbvYE/aAAA" ] }, "response": { diff --git a/doc/schemas/upgradewallet.json b/doc/schemas/upgradewallet.json index 3f503257a810..9cf2b6056cc5 100644 --- a/doc/schemas/upgradewallet.json +++ b/doc/schemas/upgradewallet.json @@ -100,9 +100,9 @@ } }, "response": { - "tx": "02000000000101upgd20000200002000020000200002000020000200002000020000200002000020000200002000020000200002000020000200002000020000200002000020000200002000020000200002000020000200002000020000", - "txid": "txidupgrade200000200000200000200000200000200000200000200000200000", - "psbt": "cHNidP8BAgQCAAAAAQMEbwAAAAEEAQpsbt110000110000110000110000110000110000110000110000110000110000110000110000110000110000110000110000110000110000110000110000110000110000110000110000110000110000110000110000110000110000110000110000110000110000110000110000110000110000110000110000110000110000110000110000110000110000110000110000110000110000110000110000110000110000110000110000110000110000110000110000110000110000110000110000110000110000110000110000110000110000110000110000110000110000110000110000110000110000110000110000110000110000110000110000110000110000110000110000110000110000110000110000110000110000110000110000110000110000110000110000", + "tx": "0200000001f74032b51c3aeec264de1e41228db610127098f70d31e28d91569b13a2eda1090100000000fdffffff0135143101000000002251206c27e1956acfa61e68292c80908880e813450f754132e8a2ac471a86bf1326b567000000", + "txid": "58d7e19cd533038fefb7085822fa42f78fac7b7bbdad5439cc748eb2a37f53cb", + "psbt": "cHNidP8BAgQCAAAAAQMEZwAAAAEEAQEBBQEBAQYBAwH7BAIAAAAAAQBzAgAAAAGnLEWbriFxVrxyaD9GGIXPwYs7lkx3nIQmKKzZx1ONvAAAAAAA/f///wJxxNQoAQAAABepFIIMEhvBkPKuK79E5Hw+MqTQP5ubhwAtMQEAAAAAF6kUZVco82z+NtAapQ0yNnBEafhKVUCHZgAAAAEBIAAtMQEAAAAAF6kUZVco82z+NtAapQ0yNnBEafhKVUCHIgICucDGhE4SpTHJaOVcVQeOwW2b92vpKQ/YfRzKcrSDmhdHMEQCIHUzolkCb3kn5oFBsprLwfRU0r2TMuUqVlKHAVeEzwZhAiAJoUyO3JIEy76Le2UdvCjNd5uQ4VO2pTSJC0kv8CHfTAEBBBYAFNa5adNt/9rZhpGT9mPuSA39xzSIIgYCucDGhE4SpTHJaOVcVQeOwW2b92vpKQ/YfRzKcrSDmhcI1rlp0wAAAAABDiD3QDK1HDruwmTeHkEijbYQEnCY9w0x4o2RVpsTou2hCQEPBAEAAAABEAT9////AAEDCDUUMQEAAAAAAQQiUSBsJ+GVas+mHmgpLICQiIDoE0UPdUEy6KKsRxqGvxMmtSEHWnm7u0BtS8KN8F+mqHMoz7AqfhN0O+zc0d/P4HHC4BAJAH0I2ZcFAAAAAA==", "upgraded_outs": 1 } } diff --git a/doc/schemas/utxopsbt.json b/doc/schemas/utxopsbt.json index 18695177c9ac..c1edaa9df857 100644 --- a/doc/schemas/utxopsbt.json +++ b/doc/schemas/utxopsbt.json @@ -212,7 +212,7 @@ "15000perkw", 214, [ - "utxo010101010101010101010101010101010101010101010101010101010101:1" + "9d9d89725697f42f6fc8baa1d1a25662f9e2f3f524c832e943ea8b19317873f1:0" ], null, true, @@ -222,18 +222,18 @@ ] }, "response": { - "psbt": "cHNidP8BAgQCAAAAAQMEbwAAAAEEAQpsbt510000510000510000510000510000510000510000510000510000510000510000510000510000510000510000510000510000510000510000510000510000510000510000510000510000510000510000510000510000510000510000510000510000510000510000510000510000510000510000510000", + "psbt": "cHNidP8BAF4CAAAAAfFzeDEZi+pD6TLIJPXz4vliVqLRobrIby/0l1ZyiZ2dAAAAAAD9////AUFZ3AsAAAAAIlEgO+E35aPNS3YQRaiMByjTJDUYNvBO1Z39o3m42EZGUreaAAAAAAEAcQIAAAAB+wnUg4jUSt7ZSoGLTSFJkEiVi4BORL5XG9PScQI1uHoBAAAAAP3///8CAMLrCwAAAAAWABQDz+yHFeH0BKNuwBHkI4+GMp+QnAYT9NIAAAAAFgAUIowMzAOV9xHOQM4YHS2bZ5k6oe2HAAAAAQEfAMLrCwAAAAAWABQDz+yHFeH0BKNuwBHkI4+GMp+QnAAA", "feerate_per_kw": 15000, "estimated_final_weight": 657, "excess_msat": 0, "change_outnum": 0, "reservations": [ { - "txid": "utxo010101010101010101010101010101010101010101010101010101010101", - "vout": 1, + "txid": "9d9d89725697f42f6fc8baa1d1a25662f9e2f3f524c832e943ea8b19317873f1", + "vout": 0, "was_reserved": true, "reserved": true, - "reserved_to_block": 2240 + "reserved_to_block": 2242 } ] } @@ -247,25 +247,25 @@ "feerate": "18750perkw", "startweight": 214, "utxos": [ - "utxo010101010101010101010101010101010101010101010101010101010101:1" + "9d9d89725697f42f6fc8baa1d1a25662f9e2f3f524c832e943ea8b19317873f1:0" ], "reservedok": true, "excess_as_change": true } }, "response": { - "psbt": "cHNidP8BAgQCAAAAAQMEbwAAAAEEAQpsbt520000520000520000520000520000520000520000520000520000520000520000520000520000520000520000520000520000520000520000520000520000520000520000520000520000520000520000520000520000520000520000520000520000520000520000520000520000520000520000520000", + "psbt": "cHNidP8BAF4CAAAAAfFzeDEZi+pD6TLIJPXz4vliVqLRobrIby/0l1ZyiZ2dAAAAAAD9////AWINzQsAAAAAIlEgyRg+3pEh88b9FJiCLEenYCcyJ2ackJUIhDusW72BP2iaAAAAAAEAcQIAAAAB+wnUg4jUSt7ZSoGLTSFJkEiVi4BORL5XG9PScQI1uHoBAAAAAP3///8CAMLrCwAAAAAWABQDz+yHFeH0BKNuwBHkI4+GMp+QnAYT9NIAAAAAFgAUIowMzAOV9xHOQM4YHS2bZ5k6oe2HAAAAAQEfAMLrCwAAAAAWABQDz+yHFeH0BKNuwBHkI4+GMp+QnAAA", "feerate_per_kw": 18750, "estimated_final_weight": 657, "excess_msat": 0, "change_outnum": 0, "reservations": [ { - "txid": "utxo010101010101010101010101010101010101010101010101010101010101", - "vout": 1, + "txid": "9d9d89725697f42f6fc8baa1d1a25662f9e2f3f524c832e943ea8b19317873f1", + "vout": 0, "was_reserved": true, "reserved": true, - "reserved_to_block": 2312 + "reserved_to_block": 2314 } ] } diff --git a/doc/schemas/wait.json b/doc/schemas/wait.json index f5bb18b6dbf3..ac6432e0f002 100644 --- a/doc/schemas/wait.json +++ b/doc/schemas/wait.json @@ -724,13 +724,13 @@ "status": "pending", "partid": 0, "groupid": 1, - "payment_hash": "paymenthashwtspct20101010101010101010101010101010101010101010101" + "payment_hash": "9a33e433faddc3371f6a56a34146c82629d567520ddaf28244bd9f196288af71" }, "sendpays": { "status": "pending", "partid": 0, "groupid": 1, - "payment_hash": "paymenthashwtspct20101010101010101010101010101010101010101010101" + "payment_hash": "9a33e433faddc3371f6a56a34146c82629d567520ddaf28244bd9f196288af71" } } }, @@ -751,13 +751,13 @@ "status": "complete", "partid": 0, "groupid": 1, - "payment_hash": "paymenthashwtspct20101010101010101010101010101010101010101010101" + "payment_hash": "9a33e433faddc3371f6a56a34146c82629d567520ddaf28244bd9f196288af71" }, "sendpays": { "status": "complete", "partid": 0, "groupid": 1, - "payment_hash": "paymenthashwtspct20101010101010101010101010101010101010101010101" + "payment_hash": "9a33e433faddc3371f6a56a34146c82629d567520ddaf28244bd9f196288af71" } } } diff --git a/doc/schemas/waitanyinvoice.json b/doc/schemas/waitanyinvoice.json index 84455aa0793e..2d9c37806212 100644 --- a/doc/schemas/waitanyinvoice.json +++ b/doc/schemas/waitanyinvoice.json @@ -235,16 +235,16 @@ }, "response": { "label": "lbl balance l1 to l2", - "bolt11": "lnbcrt222n1pnt3005720bolt114000101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101", - "payment_hash": "paymenthashdelpay10101010101010101010101010101010101010101010101", + "bolt11": "lnbcrt5m1pne035qsp5y09we8jhy4ug66c945kzkqyqzrhhqsap22q07wnawlgntwa5ca2spp5xsktk894vn50xt4kfl5vy49t7hk976u85rudu7gfetuwvk8nh54qdpcv3jhxcmjd9c8g6t0dcs8xetwvss8xmmdv5s8xct5wvsxcvfqw3hjqmpjxqyjw5qcqp9rzjqdwjkyvjm7apxnssu4qgwhfkd67ghs6n6k48v6uqczgt88p6tky96qqqwqqqqqgqqqqqqqqpqqqqqzsqqc9qxpqysgqvsru69ylhpkda6980sl996q2fmld2zszepv79zf747la6zzt8mf8p0qw80w6j8d5evc72fls4d99sza23nnm6pahjqrs8kv3apdttjcq2mm2xw", + "payment_hash": "342cbb1cb564e8f32eb64fe8c254abf5ec5f6b87a0f8de7909caf8e658f3bd2a", "amount_msat": 500000000, "status": "paid", "pay_index": 1, "amount_received_msat": 500000000, - "paid_at": 1738500000, - "payment_preimage": "paymentpreimgdp1010101010101010101010101010101010101010101010101", + "paid_at": 1738000000, + "payment_preimage": "08377744ca985c1808377744ca985c1808377744ca985c1808377744ca985c18", "description": "description send some sats l1 to l2", - "expires_at": 1739000000, + "expires_at": 1738604800, "created_index": 1, "updated_index": 1 } @@ -260,16 +260,16 @@ }, "response": { "label": "test_injectpaymentonion1", - "bolt11": "lnbcrt100n1pnt2bolt11invl020700000000bolt11invl020700000000bolt11invl020700000000bolt11invl020700000000bolt11invl020700000000bolt11invl020700000000bolt11invl020700000000bolt11invl020700000000bolt11invl020700000000bolt11invl020700000000", - "payment_hash": "paymenthashinvl0270027002700270027002700270027002700270027002700", + "bolt11": "lnbcrt10n1pne035qsp5qwyv8rs63ramlntxnjyqfyl3usj9fcvw2wcekvssera3c674p2aspp5layccvcq3q020g7qgxf7g0cjx3zvv3rxyqypprpry2w6x5gmahgsdp6w3jhxapqd9hx5etrw3cxz7tdv4h8gmmwd9hkuvfqv3jhxcmjd9c8g6t0dcxqyjw5qcqp99qxpqysgqanlwwp0fnysrz8wgx44kdupzfv4l9x0l8daxa9zyqcwwx4de5rv4s3udrmgc6w03dtn0h3kcvwhv602fpryz06wrnk9k5d5z6qtx4mqqyhqgf2", + "payment_hash": "ff498c3300881ea7a3c04193e43f123444c644662008108c23229da3511bedd1", "amount_msat": 1000, "status": "paid", "pay_index": 2, "amount_received_msat": 1000, - "paid_at": 1738500000, - "payment_preimage": "paymentpreimgio1030303030303030303030303030303030303030303030303", + "paid_at": 1738000000, + "payment_preimage": "08377744ca985c1e08377744ca985c1e08377744ca985c1e08377744ca985c1e", "description": "test injectpaymentonion1 description", - "expires_at": 1739000000, + "expires_at": 1738604800, "created_index": 8, "updated_index": 2 } diff --git a/doc/schemas/waitblockheight.json b/doc/schemas/waitblockheight.json index e978dcaba53e..e8f9d146f097 100644 --- a/doc/schemas/waitblockheight.json +++ b/doc/schemas/waitblockheight.json @@ -68,7 +68,7 @@ } }, "response": { - "blockheight": 130 + "blockheight": 131 } }, { @@ -79,12 +79,12 @@ "id": "example:waitblockheight#2", "method": "waitblockheight", "params": { - "blockheight": 131, + "blockheight": 132, "timeout": 600 } }, "response": { - "blockheight": 131 + "blockheight": 132 } } ] diff --git a/doc/schemas/waitinvoice.json b/doc/schemas/waitinvoice.json index 6cc373e818e4..f55f9b7b2185 100644 --- a/doc/schemas/waitinvoice.json +++ b/doc/schemas/waitinvoice.json @@ -240,16 +240,16 @@ }, "response": { "label": "inv2", - "bolt11": "lnbcrt222n1pnt3005720bolt11wtinv01010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101", - "payment_hash": "paymenthashwaitinv0101010101010101010101010101010101010101010101", + "bolt11": "lnbcrt20n1pne035qsp5793kaek9ahcmxn00ttvkmrhafa5v33wtju4dz5lvyjr0pwwgdd2qpp59gjcv8c4v9yzt00az4x5yg6z79v5gmcd2nwzf6pct5c4yqprlr9sdq8d9h8vvsxqyjw5qcqp99qxpqysgq7ygtu605e0yx749rczhlqaw4crl746rmzc3nkpxn5vrey34m2uxx0658c3e85gvvdcp8r5nlfdnxspl9tlj5xhckrx5vszxxa4zneggp8dynay", + "payment_hash": "2a25861f15614825bdfd154d422342f159446f0d54dc24e8385d31520023f8cb", "amount_msat": 2000, "status": "paid", "pay_index": 5, "amount_received_msat": 2000, - "paid_at": 1738500000, - "payment_preimage": "paymentpreimagewaitinv0010101010101010101010101010101010101010101", + "paid_at": 1738000000, + "payment_preimage": "08377744ca985c2108377744ca985c2108377744ca985c2108377744ca985c21", "description": "inv2", - "expires_at": 1739000000, + "expires_at": 1738604800, "created_index": 13, "updated_index": 5 } @@ -264,16 +264,16 @@ }, "response": { "label": "inv3", - "bolt11": "lnbcrt222n1pnt3005720bolt11wtinv02020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202", - "payment_hash": "paymenthashwaitinv0202020202020202020202020202020202020202020202", + "bolt11": "lnbcrt30n1pne035qsp588xrpk37hul6xfyr8u6lkyggh0mkvfzhyex8wwts7dpckxt2j2yspp5x63je8t7u7a0ts2arwdj05y9mn5ud9lmgf7see5rg2kvuq8ptphsdq8d9h8vvcxqyjw5qcqp99qxpqysgqw97pk464fhkxp6umgtzhh3njznhnw06cwun58szk06v7a2wvvppz6kg95ufarq443nrqgue6u3s59up4tqkmm943pfyp3hqutx6vgugqgd8jsu", + "payment_hash": "36a32c9d7ee7baf5c15d1b9b27d085dce9c697fb427d0ce68342acce00e1586f", "amount_msat": 3000, "status": "paid", "pay_index": 6, "amount_received_msat": 3000, - "paid_at": 1738500000, - "payment_preimage": "paymentpreimagewaitinv0020202020202020202020202020202020202020202", + "paid_at": 1738000000, + "payment_preimage": "08377744ca985c2208377744ca985c2208377744ca985c2208377744ca985c22", "description": "inv3", - "expires_at": 1739000000, + "expires_at": 1738604800, "created_index": 14, "updated_index": 6 } diff --git a/doc/schemas/waitsendpay.json b/doc/schemas/waitsendpay.json index 8186c9bf0997..e20da4a81894 100644 --- a/doc/schemas/waitsendpay.json +++ b/doc/schemas/waitsendpay.json @@ -238,22 +238,22 @@ "id": "example:waitsendpay#1", "method": "waitsendpay", "params": { - "payment_hash": "paymenthashinvl0310031003100310031003100310031003100310031003100" + "payment_hash": "9562ee18e942b0eb2e36050c108efcb34cb07e5cdbe28d08d26bb71af1556c2f" } }, "response": { "created_index": 2, "id": 2, - "payment_hash": "paymenthashinvl0310031003100310031003100310031003100310031003100", + "payment_hash": "9562ee18e942b0eb2e36050c108efcb34cb07e5cdbe28d08d26bb71af1556c2f", "groupid": 1, "updated_index": 2, - "destination": "nodeid030303030303030303030303030303030303030303030303030303030303", + "destination": "035d2b1192dfba134e10e540875d366ebc8bc353d5aa766b80c090b39c3a5d885d", "amount_msat": 10000, "amount_sent_msat": 10001, "created_at": 1738000000, - "completed_at": 1739000000, + "completed_at": 1738000000, "status": "complete", - "payment_preimage": "paymentpreimagew010101010101010101010101010101010101010101010101" + "payment_preimage": "83ffe698292fbb5f83ffe698292fbb5f83ffe698292fbb5f83ffe698292fbb5f" } } ] diff --git a/doc/schemas/withdraw.json b/doc/schemas/withdraw.json index c479dc9434f4..a2c67955f537 100644 --- a/doc/schemas/withdraw.json +++ b/doc/schemas/withdraw.json @@ -105,14 +105,14 @@ "id": "example:withdraw#1", "method": "withdraw", "params": { - "destination": "bcrt1qcqqv0101010101010101010101010101010101", + "destination": "bcrt1qwx6am26cuw38y4863pd6swrce2g8mzhaxr9xp8", "satoshi": 555555 } }, "response": { - "tx": "020000000001wthdrw91000910009100091000910009100091000910009100091000910009100091000910009100091000910009100091000910009100091000910009100091000910009100091000910009100091000910009100091000910009100091000910009100091000910009100091000910009100091000910009100091000910009100091000910009100091000910009100091000910009100091000910009100091000910009100091000910009100091000910009100091000910009100091000910009100091000910009100091000910009100091000910009100091000910009100091000910009100091000910009100091000910009100091000", - "txid": "txidwithdraw2191000910009100091000910009100091000910009100091000", - "psbt": "cHNidP8BAgQCAAAAAQMEbwAAAAEEAQpsbt911000911000911000911000911000911000911000911000911000911000911000911000911000911000911000911000911000911000911000911000911000911000911000911000911000911000911000911000911000911000911000911000911000911000911000911000911000911000911000911000" + "tx": "020000000169baded91234f208471fe0b7efd048560a4ec2aca6ac1df00ae4729a6c368a140000000000fdffffff02237a08000000000016001471b5ddab58e3a27254fa885ba83878ca907d8afd7ecc1500000000002251202b5dd0613b6e534f572dbcf4311b66e6cc8bb07e285928ddb6fa5791e473787484000000", + "txid": "797a6c54b6cfb99ab3b6453fca66d9c077af09f7be4a951cb0f2e3c0cd63ee90", + "psbt": "cHNidP8BAgQCAAAAAQMEhAAAAAEEAQEBBQECAQYBAwH7BAIAAAAAAQCyAgAAAAJVMQxiObHGkc2owFTzkzRn+3UVPd29g9q+xdYhmQ3ckgAAAAAA/f///6czBVHqH7LMLWzkkTkfaDAii0v18qYWqwo3IAICfpPtAQAAAAD9////AkVXHgAAAAAAIlEg/at8AfrnDAjgsfmsrMoRClMSHnXcVKJedUJBbzQq6vdAQg8AAAAAACIAIJZV4qczDNhtxp+O0YRa9VgN0GsVp5QDTJVx5T1WObOXewAAAAEBK0VXHgAAAAAAIlEg/at8AfrnDAjgsfmsrMoRClMSHnXcVKJedUJBbzQq6vcBDiBput7ZEjTyCEcf4Lfv0EhWCk7CrKasHfAK5HKabDaKFAEPBAAAAAABEAT9////ARNAHO2bgSAdOnELjVnpbsTz7m7rgxRnyUQ9cRVtMF7bR2ZbWWuexz11UjfIoiQsBhK3rp+KkxJLGo8xXnRN0hK72iEWvZI/zJ5gMwIKRWhwvhoONSpzuE+hMin+5LvMB/uiSToJAMrfGCgAAAAAACICA6Jvzf+c2c5Qrvvj78smeIzuWAjjEtHW01YDo2je0daMCHG13asNAAAAAQMII3oIAAAAAAABBBYAFHG13atY46JyVPqIW6g4eMqQfYr9DPwJbGlnaHRuaW5nBAIAAQABAwh+zBUAAAAAAAEEIlEgK13QYTtuU09XLbz0MRtm5syLsH4oWSjdtvpXkeRzeHQhB/ezBtxauw6UTQFvjhaT8ztqh+dAYi+W2/WHIEQ/e965CQBPad/3DwAAAAA=" } }, { @@ -120,19 +120,19 @@ "id": "example:withdraw#2", "method": "withdraw", "params": { - "destination": "bcrt1phtprcvhz02020202020202020202020202020202020202020202020202", + "destination": "bcrt1p2gppccw6ywewmg74qqxxmqfdpjds3rpr0mf22y9tm9xcc0muggwsea9nkf", "satoshi": "all", "feerate": "20000perkb", "minconf": 0, "utxos": [ - "utxo020202020202020202020202020202020202020202020202020202020202:1" + "7cce7550c4b37924bb74fd4baf8f1946a4b14c050c42f2479b04fede08652aa9:1" ] } }, "response": { - "tx": "020000000002wthdrw92000920009200092000920009200092000920009200092000920009200092000920009200092000920009200092000920009200092000920009200092000920009200092000920009200092000920009200092000920009200092000920009200092000920009200092000920009200092000920009200092000920009200092000920009200092000920009200092000920009200092000920009200092000920009200092000920009200092000920009200092000920009200092000920009200092000920009200092000920009200092000920009200092000920009200092000920009200092000920009200092000920009200092000", - "txid": "txidwithdraw2292000920009200092000920009200092000920009200092000", - "psbt": "cHNidP8BAgQCAAAAAQMEbwAAAAEEAQpsbt922000922000922000922000922000922000922000922000922000922000922000922000922000922000922000922000922000922000922000922000922000922000922000922000922000922000922000922000922000922000922000922000922000922000922000922000922000922000922000922000" + "tx": "0200000001a92a6508defe049b47f2420c054cb1a446198faf4bfd74bb2479b3c45075ce7c0100000000fdffffff01d563dc0b0000000022512052021c61da23b2eda3d5000c6d812d0c9b088c237ed2a510abd94d8c3f7c421d88000000", + "txid": "6430642958a9aaa5c380bb9ea5048ae920557df4e8c8f959ee745f87f03662ed", + "psbt": "cHNidP8BAgQCAAAAAQMEiAAAAAEEAQEBBQEBAQYBAwH7BAIAAAAAAQCJAgAAAAGz2CDBGuOklbgHzcv1kfmjgjUfUOYes93LsMOptm8SiQEAAAAA/f///wJAQg8AAAAAACIAIIaYZYoB77AB4cxN9qi28620Yfo+Z5OF/arkAL1zmWsygWzcCwAAAAAiUSCKc7soFDPytdtUYcZ3iqKv0o4BHea9BHmaWZFmLGHXqDMAAAABASuBbNwLAAAAACJRIIpzuygUM/K121RhxneKoq/SjgEd5r0EeZpZkWYsYdeoAQ4gqSplCN7+BJtH8kIMBUyxpEYZj69L/XS7JHmzxFB1znwBDwQBAAAAARAE/f///wETQGrLBJ5XFyUx9B4SItbcP7L5MdB2XyQHymoi/1innyYnSSmUVvkqQYn/wckxggReFS6+BydfZ2/aB/1TRMJyl70hFi55mhYqTXiAV2eIrXh1Nrfu0+eScntk4eo0QWenuG5SCQC6dkxmAAAAAAABAwjVY9wLAAAAAAEEIlEgUgIcYdojsu2j1QAMbYEtDJsIjCN+0qUQq9lNjD98Qh0hB8SkNSQBiTs1cYIq8kWiODRmmFlnt+VkoODlBh1PjXFxCQCLx6pcDgAAAAz8CWxpZ2h0bmluZwQCAAEA" } } ] diff --git a/doc/schemas/xpay.json b/doc/schemas/xpay.json index 0cafe43bb96e..2342ea9c5283 100644 --- a/doc/schemas/xpay.json +++ b/doc/schemas/xpay.json @@ -135,11 +135,11 @@ "id": "example:xpay#1", "method": "xpay", "params": [ - "lnbcrt100n1pnt2bolt11invl040100000000bolt11invl040100000000bolt11invl040100000000bolt11invl040100000000bolt11invl040100000000bolt11invl040100000000bolt11invl040100000000bolt11invl040100000000bolt11invl040100000000bolt11invl040100000000" + "lnbcrt100n1pne035qsp572t5efk76vr3rdkt5zu2qcduqapdj40mhrs7pgpthufgw3tvtwrqpp5rw6387e0hhjqty3y8pmanaqyhgmxsf679m4vm8rjvne57pxn0lgsdp9w3jhxazl0pcxz72lwd5k6urvv5sxymmvwscnzxqyjw5qcqp9rzjqdwjkyvjm7apxnssu4qgwhfkd67ghs6n6k48v6uqczgt88p6tky96qqqwgqqqqgqqqqqqqqpqqqqqzsqqc9qxpqysgqh986ypquaysut7ed57nr8pum0x6u5hg3lnsf6j840l0cn6e28zcyqk76xpxkxjzlkhj8cx7zapyct6zdz2ff7nt3lym376k8ff0u9egq2wf5mk" ] }, "response": { - "payment_preimage": "paymentpreimgxp1010101010101010101010101010101010101010101010101", + "payment_preimage": "a23af6838ba877f6a23af6838ba877f6a23af6838ba877f6a23af6838ba877f6", "amount_msat": 10000, "amount_sent_msat": 10002, "failed_parts": 0, @@ -151,11 +151,11 @@ "id": "example:xpay#2", "method": "xpay", "params": { - "invstring": "lni1qqg0qe03030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303" + "invstring": "lni1qqgvq8khp6uam2t8cq0dwr4emk5kwq3qqc3xu3s3rg94nj40zfsy866mhu5vxne6tcej5878k2mneuvgjy83pmsz953rvg9rtxj8lalh43z8epwydjfrmffn3y3p5qz5cywpu09rr4vsyc4ltgrq50wep0hruykzdz8kjmlaymfx3gn3c0gcrcwn08fary4aqgplwhkgurkjc3rj42v0ntzhw0gr9dl4vwt2l3meh378fzjx5cc7mhgqxdva9ffx3l879amqjdk7np3nyfq6wjtp4weyzhdgq447vakcu0sh4dh0gxszhvffjfqcy8h77mjzguszhtfqy9glqvpm0sp32vgtlw2rh8mwuzedxn3z4d44zq7g8pkz6906ysj9qqe9eqccms4thz8tgy4vu7fdnqt0yaeky4a4pkdprcykm7vj4sz2pqeuguj820h2d6vwh0j7cdypzeg7ffnpvggzvmj9nrga83q474e2sjygxzmq7ln5fmvjxh4skxafx2pmx9wqx5v9qgqxyfhyvyg6pdvu4tcjvpp7kkal9rp57wj7xv4pl3ajku70rzy3pafqyqlg2sq9sggz3x54wmukps9ppjdvu9axg8l62dkkv5975l6zlt37ts4szjaem7c6pxqzvmj9nrga83q474e2sjygxzmq7ln5fmvjxh4skxafx2pmx9wqx5vqyhckl6y7ulcampu0ezz5qqx4cs3fwt6kyrfjc08dju8hc3lr30d7qyp5e6kp2jd30yr8husmmcfzxe797vler28r4hv6ehyy29lljue6ljqqxtxjzt8sw08wk4vx2j6wwv94myujhvzg09mx9xnh9fmvewnm0ex4mkal4sfm00gep0srey7pz6vt3cd82k3pcqqqqqqqqqqqqqqq2qqqqqqqqqqqqqwjfvkl43fqqqqqqzjqgeuhc6q2sg855evhcsdr4cfclsfxncamps5whxf2ynj7kqrutejl8xcm38k4vx4qyqlg4cpsyqqqkqssyehytxx360zptatj4pygsv9kpal8gnkeyd0tpvd6jv5rkv2uqdgc7pqzjd09ca3y6jytvgzva9jcyxavkyzvjujh4g4dz6qv5gjp95ld7sxy4yrpuc937lvmvrwm6qycexdzsmmtlzyskmzqm5e8uevw6d4nxc" } }, "response": { - "payment_preimage": "paymentpreimgxp2020202020202020202020202020202020202020202020202", + "payment_preimage": "c01ed70eb9ddb51ec01ed70eb9ddb51ec01ed70eb9ddb51ec01ed70eb9ddb51e", "amount_msat": 1000, "amount_sent_msat": 1000, "failed_parts": 0, diff --git a/gossipd/Makefile b/gossipd/Makefile index c0732482d75f..76999cf93f67 100644 --- a/gossipd/Makefile +++ b/gossipd/Makefile @@ -35,6 +35,7 @@ GOSSIPD_COMMON_OBJS := \ common/bigsize.o \ common/bip32.o \ common/channel_id.o \ + common/clock_time.o \ common/cryptomsg.o \ common/daemon.o \ common/daemon_conn.o \ @@ -56,6 +57,7 @@ GOSSIPD_COMMON_OBJS := \ common/ping.o \ common/psbt_open.o \ common/pseudorand.o \ + common/randbytes.o \ common/random_select.o \ common/setup.o \ common/status.o \ diff --git a/gossipd/gossip_store.c b/gossipd/gossip_store.c index 15cae6bdecc9..7f99431f02ae 100644 --- a/gossipd/gossip_store.c +++ b/gossipd/gossip_store.c @@ -4,6 +4,7 @@ #include #include #include +#include #include #include #include @@ -197,7 +198,7 @@ static int gossip_store_compact(struct daemon *daemon, struct gossip_hdr hdr; u8 oldversion, version = GOSSIP_STORE_VER; struct stat st; - struct timeabs start = time_now(); + struct timemono start = time_mono(); const char *bad; *populated = false; @@ -344,7 +345,7 @@ static int gossip_store_compact(struct daemon *daemon, /* If we have any contents, and the file is less than 1 hour * old, say "seems good" */ - if (st.st_mtime > time_now().ts.tv_sec - 3600 && *total_len > 1) { + if (st.st_mtime > clock_time().ts.tv_sec - 3600 && *total_len > 1) { *populated = true; } @@ -363,7 +364,7 @@ static int gossip_store_compact(struct daemon *daemon, } status_debug("Store compact time: %"PRIu64" msec", - time_to_msec(time_between(time_now(), start))); + time_to_msec(timemono_between(time_mono(), start))); status_debug("gossip_store: Read %zu/%zu/%zu/%zu cannounce/cupdate/nannounce/delete from store in %"PRIu64" bytes, now %"PRIu64" bytes (populated=%s)", cannounces, cupdates, nannounces, deleted, old_len, *total_len, diff --git a/gossipd/gossipd.c b/gossipd/gossipd.c index 41807050806f..de420fd485a0 100644 --- a/gossipd/gossipd.c +++ b/gossipd/gossipd.c @@ -13,6 +13,7 @@ #include "config.h" #include #include +#include #include #include #include @@ -374,19 +375,11 @@ static void master_or_connectd_gone(struct daemon_conn *dc UNUSED) exit(2); } -struct timeabs gossip_time_now(const struct daemon *daemon) -{ - if (daemon->dev_gossip_time) - return *daemon->dev_gossip_time; - - return time_now(); -} - /* We don't check this when loading from the gossip_store: that would break * our canned tests, and usually old gossip is better than no gossip */ bool timestamp_reasonable(const struct daemon *daemon, u32 timestamp) { - u64 now = gossip_time_now(daemon).ts.tv_sec; + u64 now = clock_time().ts.tv_sec; /* More than one day ahead? */ if (timestamp > now + 24*60*60) @@ -400,27 +393,16 @@ bool timestamp_reasonable(const struct daemon *daemon, u32 timestamp) /*~ Parse init message from lightningd: starts the daemon properly. */ static void gossip_init(struct daemon *daemon, const u8 *msg) { - u32 *dev_gossip_time; - if (!fromwire_gossipd_init(daemon, msg, &chainparams, &daemon->our_features, &daemon->id, - &dev_gossip_time, &daemon->dev_fast_gossip, &daemon->dev_fast_gossip_prune, &daemon->autoconnect_seeker_peers)) { master_badmsg(WIRE_GOSSIPD_INIT, msg); } - if (dev_gossip_time) { - assert(daemon->developer); - daemon->dev_gossip_time = tal(daemon, struct timeabs); - daemon->dev_gossip_time->ts.tv_sec = *dev_gossip_time; - daemon->dev_gossip_time->ts.tv_nsec = 0; - tal_free(dev_gossip_time); - } - /* Gossmap manager starts up */ daemon->gm = gossmap_manage_new(daemon, daemon); @@ -479,7 +461,6 @@ static void dev_gossip_memleak(struct daemon *daemon, const u8 *msg) memleak_ptr(memtable, msg); /* Now delete daemon and those which it has pointers to. */ memleak_scan_obj(memtable, daemon); - memleak_scan_htable(memtable, &daemon->peers->raw); dev_seeker_memleak(memtable, daemon->seeker); gossmap_manage_memleak(memtable, daemon->gm); @@ -489,18 +470,6 @@ static void dev_gossip_memleak(struct daemon *daemon, const u8 *msg) found_leak))); } -static void dev_gossip_set_time(struct daemon *daemon, const u8 *msg) -{ - u32 time; - - if (!fromwire_gossipd_dev_set_time(msg, &time)) - master_badmsg(WIRE_GOSSIPD_DEV_SET_TIME, msg); - if (!daemon->dev_gossip_time) - daemon->dev_gossip_time = tal(daemon, struct timeabs); - daemon->dev_gossip_time->ts.tv_sec = time; - daemon->dev_gossip_time->ts.tv_nsec = 0; -} - /*~ lightningd tells us when about a gossip message directly, when told to by * the addgossip RPC call. That's usually used when a plugin gets an update * returned in an payment error. */ @@ -592,12 +561,6 @@ static struct io_plan *recv_req(struct io_conn *conn, goto done; } /* fall thru */ - case WIRE_GOSSIPD_DEV_SET_TIME: - if (daemon->developer) { - dev_gossip_set_time(daemon, msg); - goto done; - } - /* fall thru */ /* We send these, we don't receive them */ case WIRE_GOSSIPD_INIT_CUPDATE: @@ -631,9 +594,7 @@ int main(int argc, char *argv[]) daemon = tal(NULL, struct daemon); daemon->developer = developer; - daemon->dev_gossip_time = NULL; - daemon->peers = tal(daemon, struct peer_node_id_map); - peer_node_id_map_init(daemon->peers); + daemon->peers = new_htable(daemon, peer_node_id_map); daemon->deferred_txouts = tal_arr(daemon, struct short_channel_id, 0); daemon->current_blockheight = 0; /* i.e. unknown */ @@ -643,7 +604,7 @@ int main(int argc, char *argv[]) /* Note the use of time_mono() here. That's a monotonic clock, which * is really useful: it can only be used to measure relative events * (there's no correspondence to time-since-Ken-grew-a-beard or - * anything), but unlike time_now(), this will never jump backwards by + * anything), but unlike time_now, this will never jump backwards by * half a second and leave me wondering how my tests failed CI! */ timers_init(&daemon->timers, time_mono()); diff --git a/gossipd/gossipd.h b/gossipd/gossipd.h index 8318156348dc..6a347e61b251 100644 --- a/gossipd/gossipd.h +++ b/gossipd/gossipd.h @@ -65,9 +65,6 @@ struct daemon { /* Features lightningd told us to set. */ struct feature_set *our_features; - /* Override local time for gossip messages */ - struct timeabs *dev_gossip_time; - /* Speed up gossip. */ bool dev_fast_gossip; @@ -163,13 +160,6 @@ void tell_lightningd_peer_update(struct daemon *daemon, struct amount_msat htlc_minimum, struct amount_msat htlc_maximum); -/** - * Get the local time. - * - * This gets overridden in dev mode so we can use canned (stale) gossip. - */ -struct timeabs gossip_time_now(const struct daemon *daemon); - /** * Is this gossip timestamp reasonable? */ diff --git a/gossipd/gossipd_wire.csv b/gossipd/gossipd_wire.csv index d8bee4b298bb..10ba124da4a7 100644 --- a/gossipd/gossipd_wire.csv +++ b/gossipd/gossipd_wire.csv @@ -9,7 +9,6 @@ msgtype,gossipd_init,3000 msgdata,gossipd_init,chainparams,chainparams, msgdata,gossipd_init,our_features,feature_set, msgdata,gossipd_init,id,node_id, -msgdata,gossipd_init,dev_gossip_time,?u32, msgdata,gossipd_init,dev_fast_gossip,bool, msgdata,gossipd_init,dev_fast_gossip_prune,bool, msgdata,gossipd_init,autoconnect_seeker_peers,u32, @@ -27,10 +26,6 @@ msgdata,gossipd_init_nannounce,nannounce,u8,len msgtype,gossipd_init_reply,3100 -# In developer mode, we can mess with time. -msgtype,gossipd_dev_set_time,3001 -msgdata,gossipd_dev_set_time,dev_gossip_time,u32, - # Gossipd->master get this tx output please. msgtype,gossipd_get_txout,3018 msgdata,gossipd_get_txout,short_channel_id,short_channel_id, diff --git a/gossipd/gossmap_manage.c b/gossipd/gossmap_manage.c index 816c3f00eaa9..2ba09e64627e 100644 --- a/gossipd/gossmap_manage.c +++ b/gossipd/gossmap_manage.c @@ -3,6 +3,7 @@ #include #include #include +#include #include #include #include @@ -360,7 +361,7 @@ static bool channel_already_dying(const struct chan_dying dying_channels[], /* Every half a week we look for dead channels (faster in dev) */ static void prune_network(struct gossmap_manage *gm) { - u64 now = gossip_time_now(gm->daemon).ts.tv_sec; + u64 now = clock_time().ts.tv_sec; /* Anything below this highwater mark ought to be pruned */ const s64 highwater = now - GOSSIP_PRUNE_INTERVAL(gm->daemon->dev_fast_gossip_prune); const struct gossmap_node *me; diff --git a/gossipd/seeker.c b/gossipd/seeker.c index 414aa3e73626..7a8a7e76f849 100644 --- a/gossipd/seeker.c +++ b/gossipd/seeker.c @@ -5,6 +5,7 @@ #include #include #include +#include #include #include #include @@ -245,7 +246,7 @@ static void enable_gossip_stream(struct seeker *seeker, struct peer *peer, start = 0; } else { /* Just in case they care */ - start = time_now().ts.tv_sec - GOSSIP_SEEKER_INTERVAL(seeker) * 10; + start = clock_time().ts.tv_sec - GOSSIP_SEEKER_INTERVAL(seeker) * 10; } status_peer_debug(&peer->id, "seeker: starting gossip (%s)", diff --git a/gossipd/test/Makefile b/gossipd/test/Makefile index 99cb7faafd3f..d87aa8a9a998 100644 --- a/gossipd/test/Makefile +++ b/gossipd/test/Makefile @@ -19,6 +19,7 @@ GOSSIPD_TEST_COMMON_OBJS := \ common/node_id.o \ common/lease_rates.o \ common/pseudorand.o \ + common/randbytes.o \ common/setup.o \ common/utils.o \ common/wireaddr.o \ diff --git a/gossipd/test/run-check_channel_announcement.c b/gossipd/test/run-check_channel_announcement.c index 6c743d4d9871..a55ca5dca6ab 100644 --- a/gossipd/test/run-check_channel_announcement.c +++ b/gossipd/test/run-check_channel_announcement.c @@ -33,8 +33,10 @@ In particular, we set feature bit 19. The spec says we should set feature bit 1 #include #include #include +#include #include #include +#include #include #include #include @@ -56,6 +58,12 @@ bool blinding_next_path_privkey(const struct privkey *e UNNEEDED, const struct sha256 *h UNNEEDED, struct privkey *next UNNEEDED) { fprintf(stderr, "blinding_next_path_privkey called!\n"); abort(); } +/* Generated stub for clock_time_overridden */ +bool clock_time_overridden(void) +{ fprintf(stderr, "clock_time_overridden called!\n"); abort(); } +/* Generated stub for clock_time_progresses_ */ +struct timeabs clock_time_progresses_(u64 *progress UNNEEDED) +{ fprintf(stderr, "clock_time_progresses_ called!\n"); abort(); } /* Generated stub for fromwire_sciddir_or_pubkey */ void fromwire_sciddir_or_pubkey(const u8 **cursor UNNEEDED, size_t *max UNNEEDED, struct sciddir_or_pubkey *sciddpk UNNEEDED) diff --git a/gossipd/test/run-extended-info.c b/gossipd/test/run-extended-info.c index 45e19884d049..5dfe23ae8813 100644 --- a/gossipd/test/run-extended-info.c +++ b/gossipd/test/run-extended-info.c @@ -4,9 +4,11 @@ #include #include #include +#include #include #include #include +#include #include #include #include @@ -31,6 +33,12 @@ bool blinding_next_path_privkey(const struct privkey *e UNNEEDED, const struct sha256 *h UNNEEDED, struct privkey *next UNNEEDED) { fprintf(stderr, "blinding_next_path_privkey called!\n"); abort(); } +/* Generated stub for clock_time_overridden */ +bool clock_time_overridden(void) +{ fprintf(stderr, "clock_time_overridden called!\n"); abort(); } +/* Generated stub for clock_time_progresses_ */ +struct timeabs clock_time_progresses_(u64 *progress UNNEEDED) +{ fprintf(stderr, "clock_time_progresses_ called!\n"); abort(); } /* Generated stub for decode_channel_update_timestamps */ struct channel_update_timestamps *decode_channel_update_timestamps(const tal_t *ctx UNNEEDED, const struct tlv_reply_channel_range_tlvs_timestamps_tlv *timestamps_tlv UNNEEDED) diff --git a/gossipd/test/run-next_block_range.c b/gossipd/test/run-next_block_range.c index 49bd20f9eea7..a7178390152f 100644 --- a/gossipd/test/run-next_block_range.c +++ b/gossipd/test/run-next_block_range.c @@ -27,6 +27,15 @@ bool blinding_next_path_privkey(const struct privkey *e UNNEEDED, const struct sha256 *h UNNEEDED, struct privkey *next UNNEEDED) { fprintf(stderr, "blinding_next_path_privkey called!\n"); abort(); } +/* Generated stub for clock_time */ +struct timeabs clock_time(void) +{ fprintf(stderr, "clock_time called!\n"); abort(); } +/* Generated stub for clock_time_overridden */ +bool clock_time_overridden(void) +{ fprintf(stderr, "clock_time_overridden called!\n"); abort(); } +/* Generated stub for clock_time_progresses_ */ +struct timeabs clock_time_progresses_(u64 *progress UNNEEDED) +{ fprintf(stderr, "clock_time_progresses_ called!\n"); abort(); } /* Generated stub for daemon_conn_send */ void daemon_conn_send(struct daemon_conn *dc UNNEEDED, const u8 *msg UNNEEDED) { fprintf(stderr, "daemon_conn_send called!\n"); abort(); } diff --git a/gossipd/test/run-txout_failure.c b/gossipd/test/run-txout_failure.c index ebb740ea77f4..0985c5f49096 100644 --- a/gossipd/test/run-txout_failure.c +++ b/gossipd/test/run-txout_failure.c @@ -3,9 +3,11 @@ #include "../common/timeout.c" #include #include +#include #include #include #include +#include #include #include #include @@ -29,6 +31,12 @@ bool blinding_next_path_privkey(const struct privkey *e UNNEEDED, const struct sha256 *h UNNEEDED, struct privkey *next UNNEEDED) { fprintf(stderr, "blinding_next_path_privkey called!\n"); abort(); } +/* Generated stub for clock_time_overridden */ +bool clock_time_overridden(void) +{ fprintf(stderr, "clock_time_overridden called!\n"); abort(); } +/* Generated stub for clock_time_progresses_ */ +struct timeabs clock_time_progresses_(u64 *progress UNNEEDED) +{ fprintf(stderr, "clock_time_progresses_ called!\n"); abort(); } /* Generated stub for fromwire_sciddir_or_pubkey */ void fromwire_sciddir_or_pubkey(const u8 **cursor UNNEEDED, size_t *max UNNEEDED, struct sciddir_or_pubkey *sciddpk UNNEEDED) diff --git a/hsmd/Makefile b/hsmd/Makefile index b4f51bef2ffd..fc3aa3826d00 100644 --- a/hsmd/Makefile +++ b/hsmd/Makefile @@ -31,6 +31,7 @@ HSMD_COMMON_OBJS := \ common/bolt12_id.o \ common/bolt12_merkle.o \ common/channel_id.o \ + common/clock_time.o \ common/daemon.o \ common/daemon_conn.o \ common/derive_basepoints.o \ @@ -46,6 +47,7 @@ HSMD_COMMON_OBJS := \ common/permute_tx.o \ common/psbt_open.o \ common/pseudorand.o \ + common/randbytes.o \ common/setup.o \ common/status.o \ common/status_wire.o \ diff --git a/hsmd/hsmd.c b/hsmd/hsmd.c index ff6d1e7b2c91..eaa8a5fc4f61 100644 --- a/hsmd/hsmd.c +++ b/hsmd/hsmd.c @@ -16,6 +16,7 @@ #include #include #include +#include #include #include #include @@ -322,7 +323,7 @@ static void maybe_create_new_hsm(const struct secret *encryption_key, /*~ This is libsodium's cryptographic randomness routine: we assume * it's doing a good job. */ if (random_hsm) - randombytes_buf(&hsm_secret, sizeof(hsm_secret)); + randbytes(&hsm_secret, sizeof(hsm_secret)); /*~ If an encryption_key was provided, store an encrypted seed. */ if (encryption_key) diff --git a/lightningd/Makefile b/lightningd/Makefile index fbf1d10f47a1..250835584629 100644 --- a/lightningd/Makefile +++ b/lightningd/Makefile @@ -95,6 +95,7 @@ LIGHTNINGD_COMMON_OBJS := \ common/channel_config.o \ common/channel_id.o \ common/channel_type.o \ + common/clock_time.o \ common/coin_mvt.o \ common/configdir.o \ common/configvar.o \ @@ -139,6 +140,7 @@ LIGHTNINGD_COMMON_OBJS := \ common/psbt_open.o \ common/pseudorand.o \ common/plugin.o \ + common/randbytes.o \ common/random_select.o \ common/setup.o \ common/shutdown_scriptpubkey.o \ diff --git a/lightningd/bitcoind.c b/lightningd/bitcoind.c index 771ccf2f9f0a..879e2d87fe7c 100644 --- a/lightningd/bitcoind.c +++ b/lightningd/bitcoind.c @@ -703,7 +703,6 @@ struct filteredblock_call { struct filteredblock *result; struct filteredblock_outpoint **outpoints; size_t current_outpoint; - struct timeabs start_time; u32 height; }; @@ -858,7 +857,6 @@ void bitcoind_getfilteredblock_(const tal_t *ctx, call->arg = arg; call->height = height; assert(call->cb != NULL); - call->start_time = time_now(); call->result = NULL; call->current_outpoint = 0; diff --git a/lightningd/chaintopology.c b/lightningd/chaintopology.c index 59f004f732a7..5214b490ed0e 100644 --- a/lightningd/chaintopology.c +++ b/lightningd/chaintopology.c @@ -356,6 +356,37 @@ static void watch_for_utxo_reconfirmation(struct chain_topology *topo, } } +static enum watch_result tx_confirmed(struct lightningd *ld, + const struct bitcoin_txid *txid, + const struct bitcoin_tx *tx, + unsigned int depth, + void *unused) +{ + /* We don't actually need to do anything here: the fact that we were + * watching the tx made chaintopology.c update the transaction depth */ + if (depth != 0) + return DELETE_WATCH; + return KEEP_WATCHING; +} + +void watch_unconfirmed_txid(struct lightningd *ld, + struct chain_topology *topo, + const struct bitcoin_txid *txid) +{ + watch_txid(ld->wallet, topo, txid, tx_confirmed, NULL); +} + +static void watch_for_unconfirmed_txs(struct lightningd *ld, + struct chain_topology *topo) +{ + struct bitcoin_txid *txids; + + txids = wallet_transactions_by_height(tmpctx, ld->wallet, 0); + log_debug(ld->log, "Got %zu unconfirmed transactions", tal_count(txids)); + for (size_t i = 0; i < tal_count(txids); i++) + watch_unconfirmed_txid(ld, topo, &txids[i]); +} + /* Mutual recursion via timer. */ static void next_updatefee_timer(struct chain_topology *topo); @@ -1028,6 +1059,7 @@ static void remove_tip(struct chain_topology *topo) /* This may have unconfirmed txs: reconfirm as we add blocks. */ watch_for_utxo_reconfirmation(topo, topo->ld->wallet); + block_map_del(topo->block_map, b); /* These no longer exist, so gossipd drops any reference to them just @@ -1197,14 +1229,10 @@ struct chain_topology *new_topology(struct lightningd *ld, struct logger *log) struct chain_topology *topo = tal(ld, struct chain_topology); topo->ld = ld; - topo->block_map = tal(topo, struct block_map); - block_map_init(topo->block_map); - topo->outgoing_txs = tal(topo, struct outgoing_tx_map); - outgoing_tx_map_init(topo->outgoing_txs); - topo->txwatches = tal(topo, struct txwatch_hash); - txwatch_hash_init(topo->txwatches); - topo->txowatches = tal(topo, struct txowatch_hash); - txowatch_hash_init(topo->txowatches); + topo->block_map = new_htable(topo, block_map); + topo->outgoing_txs = new_htable(topo, outgoing_tx_map); + topo->txwatches = new_htable(topo, txwatch_hash); + topo->txowatches = new_htable(topo, txowatch_hash); topo->log = log; topo->bitcoind = new_bitcoind(topo, ld, log); topo->poll_seconds = 30; @@ -1478,6 +1506,11 @@ void setup_topology(struct chain_topology *topo) /* May have unconfirmed txs: reconfirm as we add blocks. */ watch_for_utxo_reconfirmation(topo, topo->ld->wallet); + + /* We usually watch txs because we have outputs coming to us, or they're + * related to a channel. But not if they're created by sendpsbt without any + * outputs to us. */ + watch_for_unconfirmed_txs(topo->ld, topo); db_commit_transaction(topo->ld->wallet->db); tal_free(local_ctx); diff --git a/lightningd/chaintopology.h b/lightningd/chaintopology.h index 4f80d21622a8..8a867b0e21f1 100644 --- a/lightningd/chaintopology.h +++ b/lightningd/chaintopology.h @@ -12,6 +12,7 @@ struct command; struct lightningd; struct peer; struct txwatch; +struct wallet; /* We keep the last three in case there are outliers (for min/max) */ #define FEE_HISTORY_NUM 3 @@ -280,4 +281,11 @@ void topology_add_sync_waiter_(const tal_t *ctx, /* In channel_control.c */ void notify_feerate_change(struct lightningd *ld); + +/* We want to update db when this txid is confirmed. We always do this + * if it's related to a channel or incoming funds, but sendpsbt without + * change would be otherwise untracked. */ +void watch_unconfirmed_txid(struct lightningd *ld, + struct chain_topology *topo, + const struct bitcoin_txid *txid); #endif /* LIGHTNING_LIGHTNINGD_CHAINTOPOLOGY_H */ diff --git a/lightningd/channel.c b/lightningd/channel.c index 354249a4c24c..9a84b799a388 100644 --- a/lightningd/channel.c +++ b/lightningd/channel.c @@ -1,9 +1,11 @@ #include "config.h" #include #include +#include #include #include #include +#include #include #include #include @@ -343,7 +345,6 @@ struct channel *new_unsaved_channel(struct peer *peer, channel->openchannel_signed_cmd = NULL; channel->state = DUALOPEND_OPEN_INIT; channel->owner = NULL; - channel->scb = NULL; channel->reestablished = false; memset(&channel->billboard, 0, sizeof(channel->billboard)); channel->billboard.transient = tal_fmt(channel, "%s", @@ -578,30 +579,6 @@ struct channel *new_channel(struct peer *peer, u64 dbid, channel->billboard.transient = tal_strdup(channel, transient_billboard); channel->channel_info = *channel_info; - /* If it's a unix domain socket connection, we don't save it */ - if (peer->addr.itype == ADDR_INTERNAL_WIREADDR) { - channel->scb = tal(channel, struct modern_scb_chan); - channel->scb->id = dbid; - /* More useful to have last_known_addr, if avail */ - if (peer->last_known_addr) - channel->scb->addr = *peer->last_known_addr; - channel->scb->addr = peer->addr.u.wireaddr.wireaddr; - channel->scb->node_id = peer->id; - channel->scb->funding = *funding; - channel->scb->cid = *cid; - channel->scb->funding_sats = funding_sats; - channel->scb->type = channel_type_dup(channel->scb, type); - - struct tlv_scb_tlvs *scb_tlvs = tlv_scb_tlvs_new(channel); - scb_tlvs->shachain = &channel->their_shachain.chain; - scb_tlvs->basepoints = &channel->channel_info.theirbase; - scb_tlvs->opener = &channel->opener; - scb_tlvs->remote_to_self_delay = &channel->channel_info.their_config.to_self_delay; - - channel->scb->tlvs = scb_tlvs; - } else - channel->scb = NULL; - if (!log) { channel->log = new_logger(channel, peer->ld->log_book, @@ -1034,7 +1011,7 @@ void channel_set_state(struct channel *channel, struct channel_state_change *change; change = new_channel_state_change(channel->state_changes, - time_now(), + clock_time(), old_state, state, reason, diff --git a/lightningd/channel.h b/lightningd/channel.h index af2f18a54b8a..94960601b434 100644 --- a/lightningd/channel.h +++ b/lightningd/channel.h @@ -294,7 +294,7 @@ struct channel { u32 feerate_base, feerate_ppm; /* But allow these feerates/htlcs up until this time. */ - struct timeabs old_feerate_timeout; + struct timemono old_feerate_timeout; u32 old_feerate_base, old_feerate_ppm; struct amount_msat old_htlc_minimum_msat, old_htlc_maximum_msat; @@ -343,10 +343,6 @@ struct channel { /* Lease commited max part per thousandth channel fee (ppm * 1000) */ u16 lease_chan_max_ppt; - /* `Channel-shell` of this channel - * (Minimum information required to backup this channel). */ - struct modern_scb_chan *scb; - /* Do we allow the peer to set any fee it wants? */ bool ignore_fee_limits; diff --git a/lightningd/channel_control.c b/lightningd/channel_control.c index a72f959837ae..78102f2579f0 100644 --- a/lightningd/channel_control.c +++ b/lightningd/channel_control.c @@ -4,6 +4,7 @@ #include #include #include +#include #include #include #include @@ -1134,7 +1135,8 @@ static void handle_peer_splice_locked(struct channel *channel, const u8 *msg) wallet_htlcsigs_confirm_inflight(channel->peer->ld->wallet, channel, &inflight->funding->outpoint); - update_channel_from_inflight(channel->peer->ld, channel, inflight, true); + /* Stop watching previous funding tx (could be, for announcement) */ + channel_unwatch_funding(channel->peer->ld, channel); /* Stash prev funding data so we can log it after scid is updated * (to get the blockheight) */ @@ -1142,6 +1144,8 @@ static void handle_peer_splice_locked(struct channel *channel, const u8 *msg) prev_funding_sats = channel->funding_sats; prev_funding_out = channel->funding; + update_channel_from_inflight(channel->peer->ld, channel, inflight, true); + channel->our_msat.millisatoshis += splice_amnt * 1000; /* Raw: splicing */ channel->msat_to_us_min.millisatoshis += splice_amnt * 1000; /* Raw: splicing */ channel->msat_to_us_max.millisatoshis += splice_amnt * 1000; /* Raw: splicing */ @@ -1824,6 +1828,11 @@ bool peer_start_channeld(struct channel *channel, if (inflight->splice_locked_memonly) continue; + if (!inflight->funding->splice_remote_funding) { + send_backtrace("Inflight has no splice_remote_funding?!"); + continue; + } + infcopy = tal(inflights, struct inflight); infcopy->remote_funding = *inflight->funding->splice_remote_funding; diff --git a/lightningd/channel_gossip.c b/lightningd/channel_gossip.c index d4153b207ad4..04da4555eeda 100644 --- a/lightningd/channel_gossip.c +++ b/lightningd/channel_gossip.c @@ -2,6 +2,7 @@ #include #include #include +#include #include #include #include @@ -582,7 +583,7 @@ static void arm_refresh_timer(struct channel *channel) { struct lightningd *ld = channel->peer->ld; struct channel_gossip *cg = channel->channel_gossip; - struct timeabs now = time_now(), due; + struct timeabs now = clock_time(), due; u32 timestamp; if (!channel_update_details(cg->cupdate, ×tamp, NULL)) { @@ -1188,7 +1189,7 @@ void channel_gossip_init_done(struct lightningd *ld) static void channel_reestablished_stable(struct channel *channel) { channel->stable_conn_timer = NULL; - channel->last_stable_connection = time_now().ts.tv_sec; + channel->last_stable_connection = clock_time().ts.tv_sec; wallet_channel_save(channel->peer->ld->wallet, channel); } diff --git a/lightningd/coin_mvts.c b/lightningd/coin_mvts.c index cc206b62b1bb..f1195aff7e2a 100644 --- a/lightningd/coin_mvts.c +++ b/lightningd/coin_mvts.c @@ -1,6 +1,7 @@ #include "config.h" #include #include +#include #include #include #include @@ -12,7 +13,7 @@ struct channel_coin_mvt *new_channel_mvt_invoice_hin(const tal_t *ctx, const struct htlc_in *hin, const struct channel *channel) { - return new_channel_coin_mvt(ctx, channel, time_now().ts.tv_sec, + return new_channel_coin_mvt(ctx, channel, coinmvt_current_time(), &hin->payment_hash, NULL, NULL, COIN_CREDIT, hin->msat, mk_mvt_tags(MVT_INVOICE), @@ -32,7 +33,7 @@ struct channel_coin_mvt *new_channel_mvt_routed_hin(const tal_t *ctx, hin->payload->amt_to_forward)) return NULL; - return new_channel_coin_mvt(ctx, channel, time_now().ts.tv_sec, + return new_channel_coin_mvt(ctx, channel, coinmvt_current_time(), &hin->payment_hash, NULL, NULL, COIN_CREDIT, hin->msat, mk_mvt_tags(MVT_ROUTED), @@ -43,7 +44,7 @@ struct channel_coin_mvt *new_channel_mvt_invoice_hout(const tal_t *ctx, const struct htlc_out *hout, const struct channel *channel) { - return new_channel_coin_mvt(ctx, channel, time_now().ts.tv_sec, + return new_channel_coin_mvt(ctx, channel, coinmvt_current_time(), &hout->payment_hash, &hout->partid, &hout->groupid, @@ -56,7 +57,7 @@ struct channel_coin_mvt *new_channel_mvt_routed_hout(const tal_t *ctx, const struct htlc_out *hout, const struct channel *channel) { - return new_channel_coin_mvt(ctx, channel, time_now().ts.tv_sec, + return new_channel_coin_mvt(ctx, channel, coinmvt_current_time(), &hout->payment_hash, NULL, NULL, COIN_DEBIT, hout->msat, mk_mvt_tags(MVT_ROUTED), @@ -68,7 +69,7 @@ struct channel_coin_mvt *new_channel_mvt_penalty_adj(const tal_t *ctx, struct amount_msat amount, enum coin_mvt_dir direction) { - return new_channel_coin_mvt(ctx, channel, time_now().ts.tv_sec, + return new_channel_coin_mvt(ctx, channel, coinmvt_current_time(), NULL, NULL, NULL, direction, amount, mk_mvt_tags(MVT_PENALTY_ADJ), @@ -109,7 +110,7 @@ void send_account_balance_snapshot(struct lightningd *ld) struct peer_node_id_map_iter it; snap->blockheight = get_block_height(ld->topology); - snap->timestamp = time_now().ts.tv_sec; + snap->timestamp = coinmvt_current_time(); snap->node_id = &ld->our_nodeid; /* Add the 'wallet' account balance */ diff --git a/lightningd/dual_open_control.c b/lightningd/dual_open_control.c index 1e46c06a991c..14ccb306f191 100644 --- a/lightningd/dual_open_control.c +++ b/lightningd/dual_open_control.c @@ -9,6 +9,7 @@ #include #include #include +#include #include #include #include @@ -33,6 +34,7 @@ #include #include #include +#include struct commit_rcvd { struct channel *channel; @@ -1336,7 +1338,7 @@ wallet_update_channel_commit(struct lightningd *ld, &channel->peer->id, &channel->cid, channel->scid, - time_now(), + clock_time(), DUALOPEND_OPEN_COMMIT_READY, DUALOPEND_OPEN_COMMITTED, REASON_REMOTE, @@ -1434,7 +1436,7 @@ wallet_commit_channel(struct lightningd *ld, &channel->peer->id, &channel->cid, channel->scid, - time_now(), + clock_time(), DUALOPEND_OPEN_INIT, DUALOPEND_OPEN_COMMIT_READY, REASON_REMOTE, @@ -1467,28 +1469,9 @@ wallet_commit_channel(struct lightningd *ld, &commitment_feerate); channel->min_possible_feerate = commitment_feerate; channel->max_possible_feerate = commitment_feerate; - if (channel->peer->addr.itype == ADDR_INTERNAL_WIREADDR) { - channel->scb = tal(channel, struct modern_scb_chan); - channel->scb->id = channel->dbid; - channel->scb->addr = channel->peer->addr.u.wireaddr.wireaddr; - channel->scb->node_id = channel->peer->id; - channel->scb->funding = *funding; - channel->scb->cid = channel->cid; - channel->scb->funding_sats = total_funding; - - struct tlv_scb_tlvs *scb_tlvs = tlv_scb_tlvs_new(channel); - scb_tlvs->shachain = &channel->their_shachain.chain; - scb_tlvs->basepoints = &channel_info->theirbase; - scb_tlvs->opener = &channel->opener; - scb_tlvs->remote_to_self_delay = &channel_info->their_config.to_self_delay; - - channel->scb->tlvs = scb_tlvs; - } else - channel->scb = NULL; tal_free(channel->type); channel->type = channel_type_dup(channel, type); - channel->scb->type = channel_type_dup(channel->scb, type); if (our_upfront_shutdown_script) channel->shutdown_scriptpubkey[LOCAL] @@ -4108,6 +4091,35 @@ static void dualopen_errmsg(struct channel *channel, err_for_them ? "sent" : "received", desc); } +/* This is a hack for CLN_DEV_ENTROPY_SEED. We cannot actually use + * the same seed for each dualopend, or they choose the same ids, and we + * clash when combining the PSBTs (this is phenomenally unlikey normally). + * So we set it (for the child) to an incrementing value. */ +static const char *dev_setup_dualopend_seed(const tal_t *ctx, struct lightningd *ld) +{ + static u64 seed_incr = 0; + char seedstr[STR_MAX_CHARS(u64)]; + const char *old_seed; + + if (!ld->developer) + return NULL; + + old_seed = getenv("CLN_DEV_ENTROPY_SEED"); + if (!old_seed) + return NULL; + + old_seed = tal_strdup(tmpctx, old_seed); + seed_incr++; + snprintf(seedstr, sizeof(seedstr), "%"PRIu64, atol(old_seed) + seed_incr); + setenv("CLN_DEV_ENTROPY_SEED", seedstr, 1); + return old_seed; +} + +static void dev_restore_seed(const char *old_seed) +{ + if (old_seed) + setenv("CLN_DEV_ENTROPY_SEED", old_seed, 1); +} bool peer_start_dualopend(struct peer *peer, struct peer_fd *peer_fd, @@ -4117,6 +4129,7 @@ bool peer_start_dualopend(struct peer *peer, u32 max_to_self_delay; struct amount_msat min_effective_htlc_capacity; const u8 *msg; + const char *dev_old_seed; hsmfd = hsm_get_client_fd(peer->ld, &peer->id, channel->unsaved_dbid, HSM_PERM_COMMITMENT_POINT @@ -4130,6 +4143,7 @@ bool peer_start_dualopend(struct peer *peer, return false; } + dev_old_seed = dev_setup_dualopend_seed(tmpctx, peer->ld); channel->owner = new_channel_subd(channel, peer->ld, "lightning_dualopend", @@ -4142,6 +4156,7 @@ bool peer_start_dualopend(struct peer *peer, channel_set_billboard, take(&peer_fd->fd), take(&hsmfd), NULL); + dev_restore_seed(dev_old_seed); if (!channel->owner) { channel_internal_error(channel, @@ -4195,6 +4210,7 @@ bool peer_restart_dualopend(struct peer *peer, int hsmfd; u32 *local_shutdown_script_wallet_index; u8 *msg; + const char *dev_old_seed; if (channel_state_uncommitted(channel->state)) return peer_start_dualopend(peer, peer_fd, channel); @@ -4214,6 +4230,7 @@ bool peer_restart_dualopend(struct peer *peer, return false; } + dev_old_seed = dev_setup_dualopend_seed(tmpctx, peer->ld); channel_set_owner(channel, new_channel_subd(channel, peer->ld, "lightning_dualopend", @@ -4226,6 +4243,8 @@ bool peer_restart_dualopend(struct peer *peer, channel_set_billboard, take(&peer_fd->fd), take(&hsmfd), NULL)); + dev_restore_seed(dev_old_seed); + if (!channel->owner) { log_broken(channel->log, "Could not subdaemon channel: %s", strerror(errno)); diff --git a/lightningd/gossip_control.c b/lightningd/gossip_control.c index 4e931a7844cf..8bc5f86d6d0d 100644 --- a/lightningd/gossip_control.c +++ b/lightningd/gossip_control.c @@ -202,7 +202,6 @@ static unsigned gossip_msg(struct subd *gossip, const u8 *msg, const int *fds) case WIRE_GOSSIPD_GET_TXOUT_REPLY: case WIRE_GOSSIPD_OUTPOINTS_SPENT: case WIRE_GOSSIPD_DEV_MEMLEAK: - case WIRE_GOSSIPD_DEV_SET_TIME: case WIRE_GOSSIPD_NEW_BLOCKHEIGHT: case WIRE_GOSSIPD_ADDGOSSIP: /* This is a reply, so never gets through to here. */ @@ -329,7 +328,6 @@ void gossip_init(struct lightningd *ld, int connectd_fd) chainparams, ld->our_features, &ld->our_nodeid, - ld->dev_gossip_time ? &ld->dev_gossip_time: NULL, ld->dev_fast_gossip, ld->dev_fast_gossip_prune, ld->autoconnect_seeker_peers); @@ -498,29 +496,3 @@ static const struct json_command dev_set_max_scids_encode_size = { .dev_only = true, }; AUTODATA(json_command, &dev_set_max_scids_encode_size); - -static struct command_result *json_dev_gossip_set_time(struct command *cmd, - const char *buffer, - const jsmntok_t *obj UNNEEDED, - const jsmntok_t *params) -{ - u8 *msg; - u32 *time; - - if (!param(cmd, buffer, params, - p_req("time", param_number, &time), - NULL)) - return command_param_failed(); - - msg = towire_gossipd_dev_set_time(NULL, *time); - subd_send_msg(cmd->ld->gossip, take(msg)); - - return command_success(cmd, json_stream_success(cmd)); -} - -static const struct json_command dev_gossip_set_time = { - "dev-gossip-set-time", - json_dev_gossip_set_time, - .dev_only = true, -}; -AUTODATA(json_command, &dev_gossip_set_time); diff --git a/lightningd/gossip_generation.c b/lightningd/gossip_generation.c index 22877c9c0596..b4dffe5ac97d 100644 --- a/lightningd/gossip_generation.c +++ b/lightningd/gossip_generation.c @@ -1,6 +1,7 @@ #include "config.h" #include #include +#include #include #include #include @@ -124,7 +125,7 @@ u8 *unsigned_channel_update(const tal_t *ctx, message_flags |= ROUTING_OPT_DONT_FORWARD; /* Make sure timestamp changes! */ - timestamp = time_now().ts.tv_sec; + timestamp = clock_time().ts.tv_sec; /* FIXME: @endothermicdev points out that our clock could be * wrong once, and now we'll keep producing future timestamps. * We could sanity check that old_timestamp is within 2 weeks and @@ -417,7 +418,7 @@ u8 *unsigned_node_announcement(const tal_t *ctx, { secp256k1_ecdsa_signature sig; const struct wireaddr *addrs; - u32 timestamp = time_now().ts.tv_sec; + u32 timestamp = clock_time().ts.tv_sec; addrs = gather_addresses(tmpctx, ld); /* Even if we're quick, don't duplicate timestamps! */ diff --git a/lightningd/htlc_end.c b/lightningd/htlc_end.c index 91d66b0c3357..77fe3074b5bb 100644 --- a/lightningd/htlc_end.c +++ b/lightningd/htlc_end.c @@ -2,6 +2,7 @@ #include #include #include +#include #include #include #include @@ -161,7 +162,7 @@ struct htlc_in *new_htlc_in(const tal_t *ctx, hin->we_filled = NULL; hin->payload = NULL; - hin->received_time = time_now(); + hin->received_time = clock_time(); return htlc_in_check(hin, "new_htlc_in"); } diff --git a/lightningd/invoice.c b/lightningd/invoice.c index 31362ab6c7ef..6060b6fe3a74 100644 --- a/lightningd/invoice.c +++ b/lightningd/invoice.c @@ -10,10 +10,12 @@ #include #include #include +#include #include #include #include #include +#include #include #include #include @@ -26,7 +28,6 @@ #include #include #include -#include #include #include #include @@ -1183,8 +1184,8 @@ static struct command_result *json_invoice(struct command *cmd, info->payment_preimage = *preimage; else /* Generate random secret preimage. */ - randombytes_buf(&info->payment_preimage, - sizeof(info->payment_preimage)); + randbytes(&info->payment_preimage, + sizeof(info->payment_preimage)); /* Generate preimage hash. */ sha256(&rhash, &info->payment_preimage, sizeof(info->payment_preimage)); /* Generate payment secret. */ @@ -1192,7 +1193,7 @@ static struct command_result *json_invoice(struct command *cmd, info->b11 = new_bolt11(info, msatoshi_val); info->b11->chain = chainparams; - info->b11->timestamp = time_now().ts.tv_sec; + info->b11->timestamp = clock_time().ts.tv_sec; info->b11->payment_hash = rhash; info->b11->receiver_id = cmd->ld->our_nodeid; info->b11->min_final_cltv_expiry = *cltv; @@ -1623,7 +1624,7 @@ static void add_stub_blindedpath(const tal_t *ctx, path = tal(NULL, struct blinded_path); sciddir_or_pubkey_from_pubkey(&path->first_node_id, &ld->our_pubkey); - randombytes_buf(&path_key, sizeof(path_key)); + randbytes(&path_key, sizeof(path_key)); if (!pubkey_from_privkey(&path_key, &path->first_path_key)) abort(); path->path = tal_arr(path, struct blinded_path_hop *, 1); diff --git a/lightningd/lightningd.c b/lightningd/lightningd.c index 5a350daeb43e..4d96f08225a4 100644 --- a/lightningd/lightningd.c +++ b/lightningd/lightningd.c @@ -130,7 +130,6 @@ static struct lightningd *new_lightningd(const tal_t *ctx) ld->dev_disconnect_fd = -1; ld->dev_subdaemon_fail = false; ld->dev_allow_localhost = false; - ld->dev_gossip_time = 0; ld->dev_fast_gossip = false; ld->dev_fast_gossip_prune = false; ld->dev_throttle_gossip = false; @@ -190,42 +189,34 @@ static struct lightningd *new_lightningd(const tal_t *ctx) * list attached to the channel structure itself, or even left them in * the database rather than making an in-memory version. Obviously * I was in a premature optimization mood when I wrote this: */ - ld->htlcs_in = tal(ld, struct htlc_in_map); - htlc_in_map_init(ld->htlcs_in); + ld->htlcs_in = new_htable(ld, htlc_in_map); /*~ Note also: we didn't need to use an allocation here! We could * have simply made the `struct htlc_out_map` a member. But we * override the htable allocation routines to use tal(), and they * want a tal parent, so we always make our hash table a tallocated * object. */ - ld->htlcs_out = tal(ld, struct htlc_out_map); - htlc_out_map_init(ld->htlcs_out); + ld->htlcs_out = new_htable(ld, htlc_out_map); /*~ This is the hash table of peers: converted from a * linked-list as part of the 100k-peers project! */ - ld->peers = tal(ld, struct peer_node_id_map); - peer_node_id_map_init(ld->peers); + ld->peers = new_htable(ld, peer_node_id_map); /*~ And this was done at the same time, for db lookups at startup */ - ld->peers_by_dbid = tal(ld, struct peer_dbid_map); - peer_dbid_map_init(ld->peers_by_dbid); + ld->peers_by_dbid = new_htable(ld, peer_dbid_map); /*~ This speeds lookups for short_channel_ids to their channels. */ - ld->channels_by_scid = tal(ld, struct channel_scid_map); - channel_scid_map_init(ld->channels_by_scid); + ld->channels_by_scid = new_htable(ld, channel_scid_map); /*~ Coin movements in db are indexed by the channel dbid. */ - ld->channels_by_dbid = tal(ld, struct channel_dbid_map); - channel_dbid_map_init(ld->channels_by_dbid); + ld->channels_by_dbid = new_htable(ld, channel_dbid_map); /*~ For multi-part payments, we need to keep some incoming payments * in limbo until we get all the parts, or we time them out. */ - ld->htlc_sets = tal(ld, struct htlc_set_map); - htlc_set_map_init(ld->htlc_sets); + ld->htlc_sets = new_htable(ld, htlc_set_map); /*~ We keep a map of closed channels. Mainly so we can respond to peers * who talk to us about long-closed channels. */ - ld->closed_channels = tal(ld, struct closed_channel_map); - closed_channel_map_init(ld->closed_channels); + ld->closed_channels = new_htable(ld, closed_channel_map); /*~ We have a multi-entry log-book infrastructure: we define a 10MB log * book to hold all the entries (and trims as necessary), and multiple @@ -1190,8 +1181,6 @@ int main(int argc, char *argv[]) bool try_reexec; size_t num_channels; - trace_span_start("lightningd/startup", argv); - /*~ What happens in strange locales should stay there. */ setup_locale(); @@ -1215,6 +1204,10 @@ int main(int argc, char *argv[]) * backtraces when we crash (if supported on this platform). */ daemon_setup(argv[0], log_backtrace_print, log_backtrace_exit); + /*~ We enable trace as early as possible, but it uses support functions + * (particularly if we're avoid entropy) so do it after daemon_setup. */ + trace_span_start("lightningd/startup", argv); + /*~ There's always a battle between what a constructor like this * should do, and what should be added later by the caller. In * general, because we use valgrind heavily for testing, we prefer not diff --git a/lightningd/lightningd.h b/lightningd/lightningd.h index ce8b62b017a6..6d8eac7197d1 100644 --- a/lightningd/lightningd.h +++ b/lightningd/lightningd.h @@ -306,9 +306,6 @@ struct lightningd { /* Allow and accept localhost node_announcement addresses */ bool dev_allow_localhost; - /* Timestamp to use for gossipd, iff non-zero */ - u32 dev_gossip_time; - /* Speedup gossip propagation, for testing. */ bool dev_fast_gossip; bool dev_fast_gossip_prune; diff --git a/lightningd/log.c b/lightningd/log.c index 9775e79f44b1..1827b202e97d 100644 --- a/lightningd/log.c +++ b/lightningd/log.c @@ -5,6 +5,7 @@ #include #include #include +#include #include #include #include @@ -400,7 +401,7 @@ struct log_book *new_log_book(struct lightningd *ld, size_t max_mem) log_book->prefix = tal_strdup(log_book, ""); list_head_init(&log_book->print_filters); list_head_init(&log_book->loggers); - log_book->init_time = time_now(); + log_book->init_time = clock_time(); log_book->ld = ld; log_book->cache = tal(log_book, struct node_id_map); node_id_map_init(log_book->cache); @@ -525,7 +526,7 @@ static struct log_entry *new_log_entry(struct logger *log, enum log_level level, tal_resize(&log->log_book->log, tal_count(log->log_book->log) * 2); l = &log->log_book->log[log->log_book->num_entries]; - l->time = time_now(); + l->time = clock_time(); l->level = level; l->skipped = 0; l->prefix = log_prefix_get(log->prefix); @@ -1014,7 +1015,7 @@ void log_backtrace_exit(void) int fd; char timebuf[sizeof("YYYYmmddHHMMSS")]; char logfile[sizeof("/tmp/lightning-crash.log.") + sizeof(timebuf)]; - struct timeabs time = time_now(); + struct timeabs time = clock_time(); strftime(timebuf, sizeof(timebuf), "%Y%m%d%H%M%S", gmtime(&time.ts.tv_sec)); diff --git a/lightningd/memdump.c b/lightningd/memdump.c index b2f32a10636f..31d84b0e057f 100644 --- a/lightningd/memdump.c +++ b/lightningd/memdump.c @@ -194,19 +194,6 @@ static bool lightningd_check_leaks(struct command *cmd) memleak_ptr(memtable, cmd); memleak_ignore_children(memtable, cmd); - /* First delete known false positives. */ - memleak_scan_htable(memtable, &ld->topology->txwatches->raw); - memleak_scan_htable(memtable, &ld->topology->txowatches->raw); - memleak_scan_htable(memtable, &ld->topology->outgoing_txs->raw); - memleak_scan_htable(memtable, &ld->htlcs_in->raw); - memleak_scan_htable(memtable, &ld->htlcs_out->raw); - memleak_scan_htable(memtable, &ld->htlc_sets->raw); - memleak_scan_htable(memtable, &ld->peers->raw); - memleak_scan_htable(memtable, &ld->peers_by_dbid->raw); - memleak_scan_htable(memtable, &ld->channels_by_scid->raw); - memleak_scan_htable(memtable, &ld->closed_channels->raw); - wallet_memleak_scan(memtable, ld->wallet); - /* Now delete ld and those which it has pointers to. */ memleak_scan_obj(memtable, ld); diff --git a/lightningd/onchain_control.c b/lightningd/onchain_control.c index b82523ab1b38..4d2723a5d1db 100644 --- a/lightningd/onchain_control.c +++ b/lightningd/onchain_control.c @@ -49,13 +49,6 @@ static bool replay_tx_eq_txid(const struct replay_tx *rtx, HTABLE_DEFINE_NODUPS_TYPE(struct replay_tx, replay_tx_keyof, txid_hash, replay_tx_eq_txid, replay_tx_hash); -/* Helper for memleak detection */ -static void memleak_replay_tx_hash(struct htable *memtable, - struct replay_tx_hash *replay_tx_hash) -{ - memleak_scan_htable(memtable, &replay_tx_hash->raw); -} - /* We dump all the known preimages when onchaind starts up. */ static void onchaind_tell_fulfill(struct channel *channel) { @@ -1904,11 +1897,8 @@ void onchaind_replay_channels(struct lightningd *ld) channel_state_name(channel), blockheight); /* We're in replay mode */ - channel->onchaind_replay_watches = tal(channel, struct replay_tx_hash); + channel->onchaind_replay_watches = new_htable(channel, replay_tx_hash); channel->onchaind_replay_height = blockheight; - replay_tx_hash_init(channel->onchaind_replay_watches); - memleak_add_helper(channel->onchaind_replay_watches, - memleak_replay_tx_hash); onchaind_funding_spent(channel, tx, blockheight); onchaind_replay(channel); diff --git a/lightningd/opening_control.c b/lightningd/opening_control.c index 7c12a0ffd551..c914e51dadbd 100644 --- a/lightningd/opening_control.c +++ b/lightningd/opening_control.c @@ -6,6 +6,7 @@ #include #include #include +#include #include #include #include @@ -243,7 +244,7 @@ wallet_commit_channel(struct lightningd *ld, wallet_channel_insert(ld->wallet, channel); /* Notify that channel state changed (from non existant to existant) */ - timestamp = time_now(); + timestamp = clock_time(); notify_channel_state_changed(ld, &channel->peer->id, &channel->cid, channel->scid, /* NULL */ diff --git a/lightningd/options.c b/lightningd/options.c index e565c62f9452..9739c77cdb3e 100644 --- a/lightningd/options.c +++ b/lightningd/options.c @@ -807,10 +807,6 @@ static void dev_register_opts(struct lightningd *ld) opt_set_bool, &ld->dev_fast_gossip_prune, "Make gossip pruning 120 seconds"); - clnopt_witharg("--dev-gossip-time", OPT_DEV|OPT_SHOWINT, - opt_set_u32, opt_show_u32, - &ld->dev_gossip_time, - "UNIX time to override gossipd to use."); clnopt_witharg("--dev-force-privkey", OPT_DEV, opt_force_privkey, NULL, ld, "Force HSM to use this as node private key"); diff --git a/lightningd/pay.c b/lightningd/pay.c index 44931d700ea3..2a4e0c175e43 100644 --- a/lightningd/pay.c +++ b/lightningd/pay.c @@ -4,6 +4,7 @@ #include #include #include +#include #include #include #include @@ -1150,7 +1151,7 @@ send_payment_core(struct lightningd *ld, payment = wallet_add_payment(cmd, ld->wallet, - time_now().ts.tv_sec, + clock_time().ts.tv_sec, NULL, rhash, partid, @@ -1464,7 +1465,7 @@ static struct command_result *self_payment(struct lightningd *ld, payment = wallet_add_payment(tmpctx, ld->wallet, - time_now().ts.tv_sec, + clock_time().ts.tv_sec, NULL, rhash, partid, @@ -1794,7 +1795,7 @@ static void register_payment_and_waiter(struct command *cmd, { wallet_add_payment(cmd, cmd->ld->wallet, - time_now().ts.tv_sec, + clock_time().ts.tv_sec, NULL, payment_hash, partid, @@ -2021,7 +2022,7 @@ static struct command_result *json_injectpaymentonion(struct command *cmd, if (amount_msat_greater(*msat, next->htlc_maximum_msat) || amount_msat_less(*msat, next->htlc_minimum_msat)) { /* Are we in old-range grace-period? */ - if (!time_before(time_now(), next->old_feerate_timeout) + if (!timemono_before(time_mono(), next->old_feerate_timeout) || amount_msat_less(*msat, next->old_htlc_minimum_msat) || amount_msat_greater(*msat, next->old_htlc_maximum_msat)) { return command_fail(cmd, JSONRPC2_INVALID_PARAMS, diff --git a/lightningd/peer_control.c b/lightningd/peer_control.c index 19780fae7e7a..724a3c466a0d 100644 --- a/lightningd/peer_control.c +++ b/lightningd/peer_control.c @@ -2382,6 +2382,14 @@ void channel_watch_wrong_funding(struct lightningd *ld, struct channel *channel) } } +/* We need to do this before we change channel funding (for splice), otherwise + * funding_depth_cb will fail the assertion that it's the current funding tx */ +void channel_unwatch_funding(struct lightningd *ld, struct channel *channel) +{ + tal_free(find_txwatch(ld->topology, + &channel->funding.txid, funding_depth_cb, channel)); +} + void channel_watch_funding(struct lightningd *ld, struct channel *channel) { log_debug(channel->log, "Watching for funding txid: %s", @@ -2480,15 +2488,35 @@ static void json_add_scb(struct command *cmd, struct json_stream *response, struct channel *c) { - u8 *scb = tal_arr(cmd, u8, 0); + u8 *scb_wire = tal_arr(cmd, u8, 0); + struct modern_scb_chan *scb; - /* Update shachain & basepoints in SCB. */ - c->scb->tlvs->shachain = &c->their_shachain.chain; - c->scb->tlvs->basepoints = &c->channel_info.theirbase; - towire_modern_scb_chan(&scb, c->scb); + /* Don't do scb for unix domain sockets. */ + if (c->peer->addr.itype != ADDR_INTERNAL_WIREADDR) + return; - json_add_hex_talarr(response, fieldname, - scb); + scb = tal(tmpctx, struct modern_scb_chan); + scb->id = c->dbid; + /* More useful to have last_known_addr, if avail */ + if (c->peer->last_known_addr) + scb->addr = *c->peer->last_known_addr; + else + scb->addr = c->peer->addr.u.wireaddr.wireaddr; + scb->node_id = c->peer->id; + scb->funding = c->funding; + scb->cid = c->cid; + scb->funding_sats = c->funding_sats; + scb->type = channel_type_dup(scb, c->type); + + scb->tlvs = tlv_scb_tlvs_new(scb); + scb->tlvs->shachain = &c->their_shachain.chain; + scb->tlvs->basepoints = &c->channel_info.theirbase; + scb->tlvs->opener = &c->opener; + scb->tlvs->remote_to_self_delay = &c->channel_info.their_config.to_self_delay; + + towire_modern_scb_chan(&scb_wire, scb); + + json_add_hex_talarr(response, fieldname, scb_wire); } /* This will return a SCB for all the channels currently loaded @@ -2513,9 +2541,6 @@ static struct command_result *json_staticbackup(struct command *cmd, peer = peer_node_id_map_next(cmd->ld->peers, &it)) { struct channel *channel; list_for_each(&peer->channels, channel, list){ - /* cppcheck-suppress uninitvar - false positive on channel */ - if (!channel->scb) - continue; json_add_scb(cmd, NULL, response, channel); } } @@ -3184,7 +3209,7 @@ static void set_channel_config(struct command *cmd, struct channel *channel, || (htlc_max && amount_msat_less(*htlc_max, channel->htlc_maximum_msat))) { channel->old_feerate_timeout - = timeabs_add(time_now(), time_from_sec(delaysecs)); + = timemono_add(time_mono(), time_from_sec(delaysecs)); channel->old_feerate_base = channel->feerate_base; channel->old_feerate_ppm = channel->feerate_ppm; channel->old_htlc_minimum_msat = channel->htlc_minimum_msat; diff --git a/lightningd/peer_control.h b/lightningd/peer_control.h index 382d0826baf1..63826f5b628d 100644 --- a/lightningd/peer_control.h +++ b/lightningd/peer_control.h @@ -131,6 +131,7 @@ void update_channel_from_inflight(struct lightningd *ld, const struct channel_inflight *inflight, bool is_splice); +void channel_unwatch_funding(struct lightningd *ld, struct channel *channel); void channel_watch_funding(struct lightningd *ld, struct channel *channel); /* If this channel has a "wrong funding" shutdown, watch that too. */ diff --git a/lightningd/peer_htlcs.c b/lightningd/peer_htlcs.c index 27c3a4757674..e776bde0fc5d 100644 --- a/lightningd/peer_htlcs.c +++ b/lightningd/peer_htlcs.c @@ -856,7 +856,7 @@ static void forward_htlc(struct htlc_in *hin, * - If it creates a new `channel_update` with updated channel parameters: * - SHOULD keep accepting the previous channel parameters for 10 minutes */ - if (!time_before(time_now(), next->old_feerate_timeout) + if (!timemono_before(time_mono(), next->old_feerate_timeout) || !check_fwd_amount(hin, amt_to_forward, hin->msat, next->old_feerate_base, next->old_feerate_ppm)) { @@ -872,7 +872,7 @@ static void forward_htlc(struct htlc_in *hin, if (amount_msat_greater(amt_to_forward, next->htlc_maximum_msat) || amount_msat_less(amt_to_forward, next->htlc_minimum_msat)) { /* Are we in old-range grace-period? */ - if (!time_before(time_now(), next->old_feerate_timeout) + if (!timemono_before(time_mono(), next->old_feerate_timeout) || amount_msat_less(amt_to_forward, next->old_htlc_minimum_msat) || amount_msat_greater(amt_to_forward, next->old_htlc_maximum_msat)) { failmsg = towire_temporary_channel_failure(tmpctx, diff --git a/lightningd/plugin.c b/lightningd/plugin.c index 1dba9a94dd87..e1c8130d3233 100644 --- a/lightningd/plugin.c +++ b/lightningd/plugin.c @@ -2688,16 +2688,24 @@ static void dev_save_plugin_io(struct plugins *plugins, const char *buf, size_t len) { static size_t counter; + static u64 starttime; const char *file; int fd; if (!plugins->dev_save_io) return; + /* If we reexec, we still want unique names */ + if (!starttime) { + struct timemono start = time_mono(); + starttime = start.ts.tv_sec * 1000000 + start.ts.tv_nsec / 1000; + } + file = path_join(tmpctx, plugins->dev_save_io, - take(tal_fmt(NULL, "%s-%s-%u-%zu", + take(tal_fmt(NULL, "%s-%s-%u-%"PRIu64"-%zu", type, name, (unsigned int)getpid(), + starttime, counter++))); fd = open(file, O_CREAT|O_EXCL|O_WRONLY, 0600); if (fd < 0 || !write_all(fd, buf, len)) diff --git a/lightningd/runes.c b/lightningd/runes.c index 77be7a30a0ad..e3285b06100b 100644 --- a/lightningd/runes.c +++ b/lightningd/runes.c @@ -5,6 +5,7 @@ #include #include #include +#include #include #include #include @@ -946,7 +947,7 @@ static struct command_result *json_checkrune(struct command *cmd, cinfo.buf = buffer; cinfo.method = method; cinfo.params = methodparams; - cinfo.now = time_now(); + cinfo.now = clock_time(); strmap_init(&cinfo.cached_params); err = rune_is_ours(cmd->ld, ras->rune); diff --git a/lightningd/test/Makefile b/lightningd/test/Makefile index a9aa3c12852b..694d1a6b6ead 100644 --- a/lightningd/test/Makefile +++ b/lightningd/test/Makefile @@ -15,12 +15,14 @@ LIGHTNINGD_TEST_COMMON_OBJS := \ common/autodata.o \ common/base32.o \ common/bech32.o \ + common/clock_time.o \ common/daemon_conn.o \ common/htlc_state.o \ common/htlc_wire.o \ common/json_parse_simple.o \ common/key_derive.o \ common/pseudorand.o \ + common/randbytes.o \ common/random_select.o \ common/memleak.o \ common/msg_queue.o \ diff --git a/lightningd/test/run-invoice-select-inchan.c b/lightningd/test/run-invoice-select-inchan.c index 00eef5e44b70..1c885a1b2c84 100644 --- a/lightningd/test/run-invoice-select-inchan.c +++ b/lightningd/test/run-invoice-select-inchan.c @@ -144,6 +144,10 @@ const char *channel_state_name(const struct channel *channel UNNEEDED) /* Generated stub for channel_state_str */ const char *channel_state_str(enum channel_state state UNNEEDED) { fprintf(stderr, "channel_state_str called!\n"); abort(); } +/* Generated stub for channel_type_dup */ +struct channel_type *channel_type_dup(const tal_t *ctx UNNEEDED, + const struct channel_type *t UNNEEDED) +{ fprintf(stderr, "channel_type_dup called!\n"); abort(); } /* Generated stub for channel_type_has */ bool channel_type_has(const struct channel_type *type UNNEEDED, int feature UNNEEDED) { fprintf(stderr, "channel_type_has called!\n"); abort(); } @@ -291,6 +295,16 @@ struct channel *find_channel_by_id(const struct peer *peer UNNEEDED, struct plugin *find_plugin_for_command(struct lightningd *ld UNNEEDED, const char *cmd_name UNNEEDED) { fprintf(stderr, "find_plugin_for_command called!\n"); abort(); } +/* Generated stub for find_txwatch_ */ +struct txwatch *find_txwatch_(struct chain_topology *topo UNNEEDED, + const struct bitcoin_txid *txid UNNEEDED, + enum watch_result (*cb)(struct lightningd *ld UNNEEDED, + const struct bitcoin_txid * UNNEEDED, + const struct bitcoin_tx * UNNEEDED, + unsigned int depth UNNEEDED, + void *arg) UNNEEDED, + void *arg UNNEEDED) +{ fprintf(stderr, "find_txwatch_ called!\n"); abort(); } /* Generated stub for fixup_htlcs_out */ void fixup_htlcs_out(struct lightningd *ld UNNEEDED) { fprintf(stderr, "fixup_htlcs_out called!\n"); abort(); } @@ -969,6 +983,9 @@ void subd_send_fd(struct subd *sd UNNEEDED, int fd UNNEEDED) /* Generated stub for subd_send_msg */ void subd_send_msg(struct subd *sd UNNEEDED, const u8 *msg_out UNNEEDED) { fprintf(stderr, "subd_send_msg called!\n"); abort(); } +/* Generated stub for tlv_scb_tlvs_new */ +struct tlv_scb_tlvs *tlv_scb_tlvs_new(const tal_t *ctx UNNEEDED) +{ fprintf(stderr, "tlv_scb_tlvs_new called!\n"); abort(); } /* Generated stub for towire_bigsize */ void towire_bigsize(u8 **pptr UNNEEDED, const bigsize_t val UNNEEDED) { fprintf(stderr, "towire_bigsize called!\n"); abort(); } diff --git a/onchaind/Makefile b/onchaind/Makefile index 8ef57d9ba6cd..fdccc7ee39dd 100644 --- a/onchaind/Makefile +++ b/onchaind/Makefile @@ -36,6 +36,7 @@ ONCHAIND_COMMON_OBJS := \ common/base32.o \ common/bigsize.o \ common/bip32.o \ + common/clock_time.o \ common/coin_mvt.o \ common/channel_id.o \ common/daemon.o \ @@ -56,6 +57,7 @@ ONCHAIND_COMMON_OBJS := \ common/psbt_keypath.o \ common/psbt_open.o \ common/pseudorand.o \ + common/randbytes.o \ common/setup.o \ common/status.o \ common/status_wire.o \ diff --git a/onchaind/test/Makefile b/onchaind/test/Makefile index 6777cb13905d..717b6d999083 100644 --- a/onchaind/test/Makefile +++ b/onchaind/test/Makefile @@ -15,6 +15,7 @@ ONCHAIND_TEST_COMMON_OBJS := \ common/features.o \ common/psbt_keypath.o \ common/pseudorand.o \ + common/randbytes.o \ common/setup.o \ common/utils.o @@ -24,6 +25,7 @@ $(ONCHAIND_TEST_PROGRAMS): $(ONCHAIND_TEST_COMMON_OBJS) $(BITCOIN_OBJS) onchaind/test/run-onchainstress: \ common/htlc_tx.o \ common/derive_basepoints.o \ + common/clock_time.o \ common/daemon.o \ common/htlc_wire.o \ common/initial_commit_tx.o \ diff --git a/onchaind/test/run-grind_feerate.c b/onchaind/test/run-grind_feerate.c index e413f100d043..c9b1d4dd5368 100644 --- a/onchaind/test/run-grind_feerate.c +++ b/onchaind/test/run-grind_feerate.c @@ -356,7 +356,7 @@ int main(int argc, char *argv[]) struct amount_sat fee; struct pubkey htlc_key; struct keyset *keys; - struct timeabs start, end; + struct timemono start, end; int iterations = 1000; u8 *spk = tal_arr(tmpctx, u8, 1); spk[0] = 0x00; @@ -388,15 +388,15 @@ int main(int argc, char *argv[]) max_possible_feerate = 250000; min_possible_feerate = max_possible_feerate + 1 - iterations; - start = time_now(); + start = time_mono(); if (!grind_htlc_tx_fee(&fee, tx, &sig, wscript, 663)) abort(); - end = time_now(); + end = time_mono(); assert(amount_sat_eq(fee, AMOUNT_SAT(165750))); printf("%u iterations in %"PRIu64" msec = %"PRIu64" nsec each\n", iterations, - time_to_msec(time_between(end, start)), - time_to_nsec(time_divide(time_between(end, start), iterations))); + time_to_msec(timemono_between(end, start)), + time_to_nsec(time_divide(timemono_between(end, start), iterations))); common_shutdown(); return 0; diff --git a/openingd/Makefile b/openingd/Makefile index 57dc84ee4177..e5a37438e1b0 100644 --- a/openingd/Makefile +++ b/openingd/Makefile @@ -41,6 +41,7 @@ OPENINGD_COMMON_OBJS := \ common/channel_config.o \ common/channel_id.o \ common/channel_type.o \ + common/clock_time.o \ common/cryptomsg.o \ common/daemon.o \ common/daemon_conn.o \ @@ -70,6 +71,7 @@ OPENINGD_COMMON_OBJS := \ common/psbt_internal.o \ common/psbt_open.o \ common/pseudorand.o \ + common/randbytes.o \ common/read_peer_msg.o \ common/setup.o \ common/shutdown_scriptpubkey.o \ diff --git a/plugins/Makefile b/plugins/Makefile index b1d5120b6f5c..e550119cff0e 100644 --- a/plugins/Makefile +++ b/plugins/Makefile @@ -181,6 +181,7 @@ PLUGIN_COMMON_OBJS := \ common/bigsize.o \ common/bolt11.o \ common/channel_id.o \ + common/clock_time.o \ common/daemon.o \ common/deprecation.o \ common/features.o \ @@ -197,6 +198,7 @@ PLUGIN_COMMON_OBJS := \ common/plugin.o \ common/psbt_open.o \ common/pseudorand.o \ + common/randbytes.o \ common/random_select.o \ common/splice_script.o \ common/setup.o \ diff --git a/plugins/askrene/askrene.c b/plugins/askrene/askrene.c index 9664d2487d7f..de659b5d9b89 100644 --- a/plugins/askrene/askrene.c +++ b/plugins/askrene/askrene.c @@ -9,7 +9,7 @@ #include "config.h" #include #include -#include +#include #include #include #include @@ -1029,7 +1029,7 @@ static struct command_result *json_askrene_inform_channel(struct command *cmd, *amount = AMOUNT_MSAT(0); if (command_check_only(cmd)) return command_check_done(cmd); - c = layer_add_constraint(layer, scidd, time_now().ts.tv_sec, + c = layer_add_constraint(layer, scidd, clock_time().ts.tv_sec, NULL, amount); goto output; case INFORM_UNCONSTRAINED: @@ -1037,7 +1037,7 @@ static struct command_result *json_askrene_inform_channel(struct command *cmd, * that no reserves were used) */ if (command_check_only(cmd)) return command_check_done(cmd); - c = layer_add_constraint(layer, scidd, time_now().ts.tv_sec, + c = layer_add_constraint(layer, scidd, clock_time().ts.tv_sec, amount, NULL); goto output; case INFORM_SUCCEEDED: @@ -1290,13 +1290,6 @@ static const struct plugin_command commands[] = { }, }; -static void askrene_markmem(struct plugin *plugin, struct htable *memtable) -{ - struct askrene *askrene = get_askrene(plugin); - layer_memleak_mark(askrene, memtable); - reserve_memleak_mark(askrene, memtable); -} - static const char *init(struct command *init_cmd, const char *buf UNUSED, const jsmntok_t *config UNUSED) { @@ -1316,7 +1309,6 @@ static const char *init(struct command *init_cmd, "{id:%}", JSON_SCAN(json_to_node_id, &askrene->my_id)); plugin_set_data(plugin, askrene); - plugin_set_memleak_handler(plugin, askrene_markmem); load_layers(askrene, init_cmd); diff --git a/plugins/askrene/layer.c b/plugins/askrene/layer.c index 281e32a03c7b..4cbe657ac637 100644 --- a/plugins/askrene/layer.c +++ b/plugins/askrene/layer.c @@ -162,14 +162,10 @@ struct layer *new_temp_layer(const tal_t *ctx, struct askrene *askrene, const ch l->askrene = askrene; l->name = tal_strdup(l, name); l->persistent = false; - l->local_channels = tal(l, struct local_channel_hash); - local_channel_hash_init(l->local_channels); - l->local_updates = tal(l, struct local_update_hash); - local_update_hash_init(l->local_updates); - l->constraints = tal(l, struct constraint_hash); - constraint_hash_init(l->constraints); - l->biases = tal(l, struct bias_hash); - bias_hash_init(l->biases); + l->local_channels = new_htable(l, local_channel_hash); + l->local_updates = new_htable(l, local_update_hash); + l->constraints = new_htable(l, constraint_hash); + l->biases = new_htable(l, bias_hash); l->disabled_nodes = tal_arr(l, struct node_id, 0); return l; @@ -1162,14 +1158,3 @@ bool layer_disables_node(const struct layer *layer, } return false; } - -void layer_memleak_mark(struct askrene *askrene, struct htable *memtable) -{ - struct layer *l; - list_for_each(&askrene->layers, l, list) { - memleak_scan_htable(memtable, &l->constraints->raw); - memleak_scan_htable(memtable, &l->local_channels->raw); - memleak_scan_htable(memtable, &l->local_updates->raw); - memleak_scan_htable(memtable, &l->biases->raw); - } -} diff --git a/plugins/askrene/layer.h b/plugins/askrene/layer.h index e9b06fd5a4e6..b93f228ff05d 100644 --- a/plugins/askrene/layer.h +++ b/plugins/askrene/layer.h @@ -135,6 +135,4 @@ bool layer_disables_chan(const struct layer *layer, const struct short_channel_i /* For explain_failure: did this layer disable this node? */ bool layer_disables_node(const struct layer *layer, const struct node_id *node); -/* Scan for memleaks */ -void layer_memleak_mark(struct askrene *askrene, struct htable *memtable); #endif /* LIGHTNING_PLUGINS_ASKRENE_LAYER_H */ diff --git a/plugins/askrene/reserve.c b/plugins/askrene/reserve.c index abec9372dfc7..678ca248d667 100644 --- a/plugins/askrene/reserve.c +++ b/plugins/askrene/reserve.c @@ -36,9 +36,7 @@ HTABLE_DEFINE_DUPS_TYPE(struct reserve, reserve_scidd, hash_scidd, struct reserve_htable *new_reserve_htable(const tal_t *ctx) { - struct reserve_htable *reserved = tal(ctx, struct reserve_htable); - reserve_htable_init(reserved); - return reserved; + return new_htable(ctx, reserve_htable); } void reserve_add(struct reserve_htable *reserved, @@ -176,8 +174,3 @@ const char *fmt_reservations(const tal_t *ctx, } return ret; } - -void reserve_memleak_mark(struct askrene *askrene, struct htable *memtable) -{ - memleak_scan_htable(memtable, &askrene->reserved->raw); -} diff --git a/plugins/askrene/reserve.h b/plugins/askrene/reserve.h index 1c9e71eaaf60..868756ca0d9a 100644 --- a/plugins/askrene/reserve.h +++ b/plugins/askrene/reserve.h @@ -50,6 +50,4 @@ void json_add_reservations(struct json_stream *js, const struct reserve_htable *reserved, const char *fieldname); -/* Scan for memleaks */ -void reserve_memleak_mark(struct askrene *askrene, struct htable *memtable); #endif /* LIGHTNING_PLUGINS_ASKRENE_RESERVE_H */ diff --git a/plugins/autoclean.c b/plugins/autoclean.c index bfd358c988c6..65a49693fc55 100644 --- a/plugins/autoclean.c +++ b/plugins/autoclean.c @@ -3,6 +3,7 @@ #include #include #include +#include #include #include #include @@ -502,7 +503,7 @@ static struct command_result *list_done(struct command *cmd, const struct subsystem_ops *ops = get_subsystem_ops(subsystem); const jsmntok_t *t, *inv = json_get_member(buf, result, ops->arr_name); size_t i; - u64 now = time_now().ts.tv_sec; + u64 now = clock_time().ts.tv_sec; json_for_each_arr(i, t, inv) { struct per_variant *variant; diff --git a/plugins/bcli.c b/plugins/bcli.c index fdd5a7c6e228..af232da24eae 100644 --- a/plugins/bcli.c +++ b/plugins/bcli.c @@ -66,6 +66,9 @@ struct bitcoind { /* Override in case we're developer mode for testing*/ bool dev_no_fake_fees; + + /* Override initialblockdownload (using canned blocks sets this) */ + bool dev_ignore_ibd; }; static struct bitcoind *bitcoind; @@ -76,7 +79,7 @@ struct bitcoin_cli { int *exitstatus; pid_t pid; const char **args; - struct timeabs start; + struct timemono start; enum bitcoind_prio prio; char *output; size_t output_bytes; @@ -247,7 +250,7 @@ static void bcli_finished(struct io_conn *conn UNUSED, struct bitcoin_cli *bcli) int ret, status; struct command_result *res; enum bitcoind_prio prio = bcli->prio; - u64 msec = time_to_msec(time_between(time_now(), bcli->start)); + u64 msec = time_to_msec(timemono_between(time_mono(), bcli->start)); /* If it took over 10 seconds, that's rather strange. */ if (msec > 10000) @@ -318,7 +321,7 @@ static void next_bcli(enum bitcoind_prio prio) close(in); - bcli->start = time_now(); + bcli->start = time_mono(); bitcoind->num_requests[prio]++; @@ -458,6 +461,9 @@ static struct command_result *process_getblockchaininfo(struct bitcoin_cli *bcli if (err) return command_err_bcli_badjson(bcli, err); + if (bitcoind->dev_ignore_ibd) + ibd = false; + response = jsonrpc_stream_success(bcli->cmd); json_add_string(response, "chain", chain); json_add_u32(response, "headercount", headers); @@ -1157,6 +1163,7 @@ static struct bitcoind *new_bitcoind(const tal_t *ctx) although normal rpcclienttimeout default value is 900. */ bitcoind->rpcclienttimeout = 60; bitcoind->dev_no_fake_fees = false; + bitcoind->dev_ignore_ibd = false; return bitcoind; } @@ -1208,5 +1215,9 @@ int main(int argc, char *argv[]) "bool", "Suppress fee faking for regtest", bool_option, NULL, &bitcoind->dev_no_fake_fees), + plugin_option_dev("dev-ignore-ibd", + "bool", + "Never tell lightningd we're doing initial block download", + bool_option, NULL, &bitcoind->dev_ignore_ibd), NULL); } diff --git a/plugins/bkpr/bookkeeper.c b/plugins/bkpr/bookkeeper.c index 1312924de600..b84e876f48b5 100644 --- a/plugins/bkpr/bookkeeper.c +++ b/plugins/bkpr/bookkeeper.c @@ -9,6 +9,7 @@ #include #include #include +#include #include #include #include diff --git a/plugins/bkpr/incomestmt.c b/plugins/bkpr/incomestmt.c index fd3a7e452c08..f35a0e96daa4 100644 --- a/plugins/bkpr/incomestmt.c +++ b/plugins/bkpr/incomestmt.c @@ -4,6 +4,7 @@ #include #include #include +#include #include #include #include @@ -442,7 +443,7 @@ const char *csv_filename(const tal_t *ctx, const struct csv_fmt *fmt) { return tal_fmt(ctx, "cln_incomestmt_%s_%lu.csv", fmt->fmt_name, - (unsigned long)time_now().ts.tv_sec); + (unsigned long)clock_time().ts.tv_sec); } static void cointrack_header(FILE *csvf) diff --git a/plugins/bkpr/test/Makefile b/plugins/bkpr/test/Makefile index 80fed1875c0a..716190cae908 100644 --- a/plugins/bkpr/test/Makefile +++ b/plugins/bkpr/test/Makefile @@ -20,6 +20,7 @@ BOOKKEEPER_TEST_COMMON_OBJS := \ common/memleak.o \ common/node_id.o \ common/pseudorand.o \ + common/randbytes.o \ common/setup.o \ common/trace.o \ common/timeout.o \ diff --git a/plugins/bkpr/test/run-recorder.c b/plugins/bkpr/test/run-recorder.c index da01849f1574..8f8a2f8fc6da 100644 --- a/plugins/bkpr/test/run-recorder.c +++ b/plugins/bkpr/test/run-recorder.c @@ -4,6 +4,7 @@ #include #include +#include #include #include #include @@ -46,6 +47,12 @@ const char *chain_event_description(const struct bkpr *bkpr UNNEEDED, const char *channel_event_description(const struct bkpr *bkpr UNNEEDED, const struct channel_event *ce UNNEEDED) { fprintf(stderr, "channel_event_description called!\n"); abort(); } +/* Generated stub for clock_time_overridden */ +bool clock_time_overridden(void) +{ fprintf(stderr, "clock_time_overridden called!\n"); abort(); } +/* Generated stub for clock_time_progresses_ */ +struct timeabs clock_time_progresses_(u64 *progress UNNEEDED) +{ fprintf(stderr, "clock_time_progresses_ called!\n"); abort(); } /* Generated stub for command_fail_badparam */ struct command_result *command_fail_badparam(struct command *cmd UNNEEDED, const char *paramname UNNEEDED, diff --git a/plugins/bkpr/test/run-sql.c b/plugins/bkpr/test/run-sql.c index 8be5859adad7..dc3604d0f8f8 100644 --- a/plugins/bkpr/test/run-sql.c +++ b/plugins/bkpr/test/run-sql.c @@ -3,6 +3,7 @@ #include "plugins/bkpr/sql.c" #include "plugins/libplugin.c" +#include #include #include #include @@ -12,6 +13,12 @@ #include /* AUTOGENERATED MOCKS START */ +/* Generated stub for clock_time_overridden */ +bool clock_time_overridden(void) +{ fprintf(stderr, "clock_time_overridden called!\n"); abort(); } +/* Generated stub for clock_time_progresses_ */ +struct timeabs clock_time_progresses_(u64 *progress UNNEEDED) +{ fprintf(stderr, "clock_time_progresses_ called!\n"); abort(); } /* Generated stub for daemon_developer_mode */ bool daemon_developer_mode(char *argv[]) { fprintf(stderr, "daemon_developer_mode called!\n"); abort(); } diff --git a/plugins/chanbackup.c b/plugins/chanbackup.c index 11091edd92c4..3e51b1436200 100644 --- a/plugins/chanbackup.c +++ b/plugins/chanbackup.c @@ -8,6 +8,7 @@ #include #include #include +#include #include #include #include @@ -140,7 +141,7 @@ static void write_scb(struct plugin *p, struct modern_scb_chan **scb_chan_arr) { const struct chanbackup *cb = chanbackup(p); - u32 timestamp = time_now().ts.tv_sec; + u32 timestamp = clock_time().ts.tv_sec; u8 *decrypted_scb = towire_static_chan_backup_with_tlvs(tmpctx, VERSION, @@ -1040,10 +1041,8 @@ static void setup_backup_map(struct command *init_cmd, const jsmntok_t *datastore, *t; size_t i, total = 0; - cb->backups = tal(cb, struct backup_map); - backup_map_init(cb->backups); - cb->peers = tal(cb, struct peer_map); - peer_map_init(cb->peers); + cb->backups = new_htable(cb, backup_map); + cb->peers = new_htable(cb, peer_map); json_out_start(params, NULL, '{'); json_out_start(params, "key", '['); @@ -1084,14 +1083,6 @@ static void setup_backup_map(struct command *init_cmd, "Loaded %zu stored backups for peers", total); } -static void chanbackup_mark_mem(struct plugin *plugin, - struct htable *memtable) -{ - const struct chanbackup *cb = chanbackup(plugin); - memleak_scan_htable(memtable, &cb->backups->raw); - memleak_scan_htable(memtable, &cb->peers->raw); -} - static const char *init(struct command *init_cmd, const char *buf UNUSED, const jsmntok_t *config UNUSED) @@ -1132,9 +1123,6 @@ static const char *init(struct command *init_cmd, unlink_noerr("scb.tmp"); maybe_create_new_scb(init_cmd->plugin, scb_chan); - - plugin_set_memleak_handler(init_cmd->plugin, - chanbackup_mark_mem); return NULL; } diff --git a/plugins/channel_hint.c b/plugins/channel_hint.c index 1db37791ea0a..7a14f3992a44 100644 --- a/plugins/channel_hint.c +++ b/plugins/channel_hint.c @@ -23,12 +23,6 @@ bool channel_hint_eq(const struct channel_hint *a, a->scid.dir == b->dir; } -static void memleak_help_channel_hint_map(struct htable *memtable, - struct channel_hint_map *channel_hints) -{ - memleak_scan_htable(memtable, &channel_hints->raw); -} - void channel_hint_to_json(const char *name, const struct channel_hint *hint, struct json_stream *dest) { @@ -211,9 +205,7 @@ struct channel_hint *channel_hint_from_json(const tal_t *ctx, struct channel_hint_set *channel_hint_set_new(const tal_t *ctx) { struct channel_hint_set *set = tal(ctx, struct channel_hint_set); - set->hints = tal(set, struct channel_hint_map); - channel_hint_map_init(set->hints); - memleak_add_helper(set->hints, memleak_help_channel_hint_map); + set->hints = new_htable(set, channel_hint_map); return set; } diff --git a/plugins/fetchinvoice.c b/plugins/fetchinvoice.c index c7013e694f0f..7db0827f0018 100644 --- a/plugins/fetchinvoice.c +++ b/plugins/fetchinvoice.c @@ -9,6 +9,7 @@ #include #include #include +#include #include #include #include @@ -17,6 +18,7 @@ #include #include #include +#include #include #include #include @@ -25,7 +27,6 @@ #include #include #include -#include static LIST_HEAD(sent_list); @@ -462,7 +463,7 @@ static struct blinded_path *make_reply_path(const tal_t *ctx, assert(tal_count(path) > 0); - randombytes_buf(reply_secret, sizeof(struct secret)); + randbytes(reply_secret, sizeof(struct secret)); if (sent->dev_reply_path) { ids = sent->dev_reply_path; @@ -754,7 +755,7 @@ static struct command_result *invreq_done(struct command *cmd, } if (base) { - u64 period_start, period_end, now = time_now().ts.tv_sec; + u64 period_start, period_end, now = clock_time().ts.tv_sec; offer_period_paywindow(recurrence, sent->invreq->offer_recurrence_paywindow, sent->invreq->offer_recurrence_base, @@ -952,7 +953,7 @@ struct command_result *json_fetchinvoice(struct command *cmd, * (i.e. continuing an existing offer with recurrence is ok) */ if (sent->offer->offer_absolute_expiry - && time_now().ts.tv_sec > *sent->offer->offer_absolute_expiry + && clock_time().ts.tv_sec > *sent->offer->offer_absolute_expiry && (!recurrence_counter || *recurrence_counter == 0)) { return command_fail(cmd, OFFER_EXPIRED, "Offer expired"); } @@ -1090,8 +1091,8 @@ struct command_result *json_fetchinvoice(struct command *cmd, * bytes. */ invreq->invreq_metadata = tal_arr(invreq, u8, 16); - randombytes_buf(invreq->invreq_metadata, - tal_bytelen(invreq->invreq_metadata)); + randbytes(invreq->invreq_metadata, + tal_bytelen(invreq->invreq_metadata)); } } @@ -1591,7 +1592,7 @@ struct command_result *json_sendinvoice(struct command *cmd, * `invreq_chain`. */ sent->inv->invoice_created_at = tal(sent->inv, u64); - *sent->inv->invoice_created_at = time_now().ts.tv_sec; + *sent->inv->invoice_created_at = clock_time().ts.tv_sec; /* FIXME: Support blinded paths, in which case use fake nodeid */ @@ -1599,7 +1600,7 @@ struct command_result *json_sendinvoice(struct command *cmd, * - MUST set `invoice_payment_hash` to the SHA256 hash of the * `payment_preimage` that will be given in return for payment. */ - randombytes_buf(&sent->inv_preimage, sizeof(sent->inv_preimage)); + randbytes(&sent->inv_preimage, sizeof(sent->inv_preimage)); sent->inv->invoice_payment_hash = tal(sent->inv, struct sha256); sha256(sent->inv->invoice_payment_hash, &sent->inv_preimage, sizeof(sent->inv_preimage)); diff --git a/plugins/keysend.c b/plugins/keysend.c index 6104bf607ccd..58e42e4f0ced 100644 --- a/plugins/keysend.c +++ b/plugins/keysend.c @@ -4,13 +4,14 @@ #include #include #include +#include #include #include #include #include +#include #include #include -#include #define PREIMAGE_TLV_TYPE 5482373484 #define KEYSEND_FEATUREBIT 55 @@ -49,7 +50,7 @@ static struct keysend_data *keysend_init(struct payment *p) * and populate the preimage field in the keysend_data and the * payment_hash in the payment. */ d = tal(p, struct keysend_data); - randombytes_buf(&d->preimage, sizeof(d->preimage)); + randbytes(&d->preimage, sizeof(d->preimage)); ccan_sha256(&payment_hash, &d->preimage, sizeof(d->preimage)); p->payment_hash = tal_dup(p, struct sha256, &payment_hash); d->extra_tlvs = NULL; @@ -241,7 +242,7 @@ static struct command_result *json_keysend(struct command *cmd, const char *buf, p->invstring_used = true; p->why = "Initial attempt"; p->constraints.cltv_budget = *maxdelay; - p->deadline = timeabs_add(time_now(), time_from_sec(*retryfor)); + p->deadline = timemono_add(time_mono(), time_from_sec(*retryfor)); p->getroute->riskfactorppm = 10000000; if (node_id_eq(&my_id, p->route_destination)) { @@ -448,7 +449,8 @@ static struct command_result *htlc_accepted_call(struct command *cmd, bigsize_t s; struct keysend_in *ki; struct out_req *req; - struct timeabs now = time_now(); + /* Even with CLN_DEV_SET_TIME, we need this to change */ + struct timeabs now = clock_time_progresses(); const char *err; u64 *allowed; size_t err_off; diff --git a/plugins/libplugin-pay.c b/plugins/libplugin-pay.c index 5409e00ebbd5..ef2d0f5feeb0 100644 --- a/plugins/libplugin-pay.c +++ b/plugins/libplugin-pay.c @@ -3,6 +3,7 @@ #include #include #include +#include #include #include #include @@ -87,7 +88,7 @@ struct payment *payment_new(tal_t *ctx, struct command *cmd, p->modifiers = mods; p->cmd = cmd; p->finished = false; - p->start_time = time_now(); + p->start_time = clock_time(); p->result = NULL; p->why = NULL; p->getroute = tal(p, struct getroute_request); @@ -428,7 +429,7 @@ static void channel_hints_update(struct payment *p, /* Local channels must have an HTLC budget */ assert(!local || htlc_budget != NULL); - channel_hint_set_add(root->hints, time_now().ts.tv_sec, scidd, enabled, + channel_hint_set_add(root->hints, clock_time().ts.tv_sec, scidd, enabled, estimated_capacity, overall_capacity, htlc_budget); hint = channel_hint_set_find(root->hints, scidd); @@ -1637,7 +1638,7 @@ payment_waitsendpay_finished(struct command *cmd, assert(p->route != NULL); - p->end_time = time_now(); + p->end_time = clock_time(); p->result = tal_sendpay_result_from_json(p, buffer, toks); if (p->result == NULL) { @@ -2332,7 +2333,7 @@ void payment_set_step(struct payment *p, enum payment_step newstep) /* Any final state needs an end_time */ if (p->step >= PAYMENT_STEP_SPLIT) - p->end_time = time_now(); + p->end_time = clock_time(); } struct command_result *payment_continue(struct payment *p) @@ -2391,7 +2392,7 @@ struct command_result *payment_abort(struct payment *p, enum jsonrpc_errcode cod va_list ap; struct payment *root = payment_root(p); payment_set_step(p, PAYMENT_STEP_FAILED); - p->end_time = time_now(); + p->end_time = clock_time(); /* We can fail twice, it seems. */ tal_free(p->failreason); @@ -2418,7 +2419,7 @@ struct command_result *payment_abort(struct payment *p, enum jsonrpc_errcode cod struct command_result *payment_fail(struct payment *p, const char *fmt, ...) { va_list ap; - p->end_time = time_now(); + p->end_time = clock_time(); payment_set_step(p, PAYMENT_STEP_FAILED); /* We can fail twice, it seems. */ tal_free(p->failreason); @@ -2525,12 +2526,12 @@ static struct command_result *retry_step_cb(struct retry_mod_data *rd, { struct payment *subpayment, *root = payment_root(p); struct retry_mod_data *rdata = payment_mod_retry_get_data(p); - struct timeabs now = time_now(); + struct timemono now = time_mono(); if (p->step != PAYMENT_STEP_FAILED) return payment_continue(p); - if (time_after(now, p->deadline)) { + if (timemono_after(now, p->deadline)) { paymod_log( p, LOG_INFORM, "Payment deadline expired, not retrying (partial-)payment " @@ -2644,7 +2645,7 @@ local_channel_hints_listpeerchannels(struct command *cmd, * observations, and should re-enable some channels that would * otherwise start out as excluded and remain so until * forever. */ - channel_hint_set_update(payment_root(p)->hints, time_now()); + channel_hint_set_update(payment_root(p)->hints, clock_time()); p->mods = gossmods_from_listpeerchannels( p, p->local_id, buffer, toks, true, gossmod_add_localchan, NULL); diff --git a/plugins/libplugin-pay.h b/plugins/libplugin-pay.h index bc1ec51b5dc9..20b6fae6f355 100644 --- a/plugins/libplugin-pay.h +++ b/plugins/libplugin-pay.h @@ -206,7 +206,7 @@ struct payment { u32 start_block; struct timeabs start_time, end_time; - struct timeabs deadline; + struct timemono deadline; /* Constraints the state machine and modifiers needs to maintain. */ struct payment_constraints constraints; diff --git a/plugins/offers.c b/plugins/offers.c index 575d7a8b0539..ab268dc25338 100644 --- a/plugins/offers.c +++ b/plugins/offers.c @@ -11,6 +11,7 @@ #include #include #include +#include #include #include #include @@ -1322,7 +1323,7 @@ static void json_add_rune(struct command *cmd, struct json_stream *js, const str u64 t = atol(alt->value); if (t) { - u64 diff, now = time_now().ts.tv_sec; + u64 diff, now = clock_time().ts.tv_sec; /* Need a non-const during construction */ char *v; diff --git a/plugins/offers_inv_hook.c b/plugins/offers_inv_hook.c index 07bc1a7ed6b6..01a4fe1a49e5 100644 --- a/plugins/offers_inv_hook.c +++ b/plugins/offers_inv_hook.c @@ -3,6 +3,7 @@ #include #include #include +#include #include #include #include @@ -312,7 +313,7 @@ struct command_result *handle_invoice(struct command *cmd, invexpiry = *inv->inv->invoice_created_at + *inv->inv->invoice_relative_expiry; else invexpiry = *inv->inv->invoice_created_at + BOLT12_DEFAULT_REL_EXPIRY; - if (time_now().ts.tv_sec > invexpiry) + if (clock_time().ts.tv_sec > invexpiry) return fail_inv(cmd, inv, "Expired invoice"); /* BOLT #12: diff --git a/plugins/offers_invreq_hook.c b/plugins/offers_invreq_hook.c index 5c8cb142c4c3..0d8544f0ea39 100644 --- a/plugins/offers_invreq_hook.c +++ b/plugins/offers_invreq_hook.c @@ -8,12 +8,14 @@ #include #include #include +#include #include #include #include #include #include #include +#include #include #include #include @@ -894,7 +896,7 @@ static struct command_result *listoffers_done(struct command *cmd, if (ir->invreq->offer_absolute_expiry && (!ir->invreq->invreq_recurrence_counter || *ir->invreq->invreq_recurrence_counter == 0) - && time_now().ts.tv_sec >= *ir->invreq->offer_absolute_expiry) { + && clock_time().ts.tv_sec >= *ir->invreq->offer_absolute_expiry) { return fail_invreq(cmd, ir, "Offer expired"); } @@ -1004,13 +1006,13 @@ static struct command_result *listoffers_done(struct command *cmd, * Midnight 1 January 1970, UTC when the invoice was created. */ ir->inv->invoice_created_at = tal(ir->inv, u64); - *ir->inv->invoice_created_at = time_now().ts.tv_sec; + *ir->inv->invoice_created_at = clock_time().ts.tv_sec; /* BOLT #12: * - MUST set `invoice_payment_hash` to the SHA256 hash of the * `payment_preimage` that will be given in return for payment. */ - randombytes_buf(&ir->preimage, sizeof(ir->preimage)); + randbytes(&ir->preimage, sizeof(ir->preimage)); ir->inv->invoice_payment_hash = tal(ir->inv, struct sha256); sha256(ir->inv->invoice_payment_hash, &ir->preimage, sizeof(ir->preimage)); diff --git a/plugins/offers_offer.c b/plugins/offers_offer.c index e7c7ded1893c..821f7775e18c 100644 --- a/plugins/offers_offer.c +++ b/plugins/offers_offer.c @@ -10,9 +10,9 @@ #include #include #include +#include #include #include -#include static bool msat_or_any(const char *buffer, const jsmntok_t *tok, @@ -707,8 +707,8 @@ struct command_result *json_invoicerequest(struct command *cmd, * - MUST set `invreq_metadata` to an unpredictable series of bytes. */ invreq->invreq_metadata = tal_arr(invreq, u8, 16); - randombytes_buf(invreq->invreq_metadata, - tal_bytelen(invreq->invreq_metadata)); + randbytes(invreq->invreq_metadata, + tal_bytelen(invreq->invreq_metadata)); /* BOLT #12: * - otherwise (not responding to an offer): diff --git a/plugins/pay.c b/plugins/pay.c index 7deaf85bc518..087b33ccdb87 100644 --- a/plugins/pay.c +++ b/plugins/pay.c @@ -9,6 +9,7 @@ #include #include #include +#include #include #include #include @@ -150,7 +151,7 @@ static void paystatus_add_payment(struct json_stream *s, const struct payment *p json_add_string(s, "strategy", p->why); json_add_string(s, "start_time", timestr); json_add_u64(s, "age_in_seconds", - time_to_sec(time_between(time_now(), p->start_time))); + time_to_sec(time_between(clock_time(), p->start_time))); /* Any final state will have an end time. */ if (p->step >= PAYMENT_STEP_SPLIT) { @@ -1424,7 +1425,7 @@ static struct command_result *json_pay(struct command *cmd, p->payment_secret = NULL; } - if (time_now().ts.tv_sec > invexpiry) + if (clock_time().ts.tv_sec > invexpiry) return command_fail(cmd, PAY_INVOICE_EXPIRED, "Invoice expired"); if (invmsat) { @@ -1480,7 +1481,7 @@ static struct command_result *json_pay(struct command *cmd, p->why = "Initial attempt"; p->constraints.cltv_budget = *maxdelay; tal_free(maxdelay); - p->deadline = timeabs_add(time_now(), time_from_sec(*retryfor)); + p->deadline = timemono_add(time_mono(), time_from_sec(*retryfor)); tal_free(retryfor); p->getroute->riskfactorppm = *riskfactor_millionths; tal_free(riskfactor_millionths); @@ -1549,7 +1550,7 @@ static struct command_result *handle_channel_hint_update(struct command *cmd, fmt_amount_msat(tmpctx, hint->estimated_capacity), fmt_amount_msat(tmpctx, hint->capacity) ); - channel_hint_set_add(global_hints, time_now().ts.tv_sec, &hint->scid, + channel_hint_set_add(global_hints, clock_time().ts.tv_sec, &hint->scid, hint->enabled, &hint->estimated_capacity, hint->capacity, NULL); tal_free(hint); diff --git a/plugins/renepay/main.c b/plugins/renepay/main.c index 01b4d13be34c..18872c1936fe 100644 --- a/plugins/renepay/main.c +++ b/plugins/renepay/main.c @@ -5,6 +5,7 @@ #include #include #include +#include #include #include #include @@ -311,7 +312,7 @@ static struct command_result *json_renepay(struct command *cmd, const char *buf, /* === Is it expired? === */ - const u64 now_sec = time_now().ts.tv_sec; + const u64 now_sec = clock_time().ts.tv_sec; if (now_sec > invexpiry) return command_fail(cmd, PAY_INVOICE_EXPIRED, "Invoice expired"); diff --git a/plugins/renepay/mods.c b/plugins/renepay/mods.c index 34e505816538..30d6314a2e6c 100644 --- a/plugins/renepay/mods.c +++ b/plugins/renepay/mods.c @@ -3,6 +3,7 @@ #include #include #include +#include #include #include #include @@ -917,7 +918,7 @@ REGISTER_PAYMENT_MODIFIER(end, end_cb); static struct command_result *checktimeout_cb(struct payment *payment) { - if (time_after(time_now(), payment->payment_info.stop_time)) { + if (time_after(clock_time(), payment->payment_info.stop_time)) { return payment_fail(payment, PAY_STOPPED_RETRYING, "Timed out"); } return payment_continue(payment); @@ -1129,7 +1130,7 @@ REGISTER_PAYMENT_MODIFIER(pendingsendpays, pendingsendpays_cb); static struct command_result *knowledgerelax_cb(struct payment *payment) { - const u64 now_sec = time_now().ts.tv_sec; + const u64 now_sec = clock_time().ts.tv_sec; enum renepay_errorcode err = uncertainty_relax( pay_plugin->uncertainty, now_sec - pay_plugin->last_time); if (err) diff --git a/plugins/renepay/payment.c b/plugins/renepay/payment.c index 02566b01cdff..c732ecca0ae4 100644 --- a/plugins/renepay/payment.c +++ b/plugins/renepay/payment.c @@ -3,6 +3,7 @@ #include #include #include +#include #include #include #include @@ -96,7 +97,7 @@ bool payment_refresh(struct payment *p){ p->retry = false; p->waitresult_timer = tal_free(p->waitresult_timer); - pinfo->start_time = time_now(); + pinfo->start_time = clock_time(); pinfo->stop_time = timeabs_add(pinfo->start_time, time_from_sec(pinfo->retryfor)); diff --git a/plugins/renepay/test/run-bottleneck.c b/plugins/renepay/test/run-bottleneck.c index f22d45fbbf6e..5111892e5911 100644 --- a/plugins/renepay/test/run-bottleneck.c +++ b/plugins/renepay/test/run-bottleneck.c @@ -14,9 +14,10 @@ #include #include #include +#include +#include #include #include -#include /* AUTOGENERATED MOCKS START */ /* Generated stub for sciddir_or_pubkey_from_node_id */ @@ -225,7 +226,7 @@ int main(int argc, char *argv[]) pinfo.maxdelay = 100; pinfo.final_cltv = 5; - pinfo.start_time = time_now(); + pinfo.start_time = clock_time(); pinfo.stop_time = timeabs_add(pinfo.start_time, time_from_sec(10000)); pinfo.base_fee_penalty = 1e-5; @@ -235,7 +236,7 @@ int main(int argc, char *argv[]) pinfo.base_prob_success = 1.0; pinfo.use_shadow = false; - randombytes_buf(&preimage, sizeof(preimage)); + randbytes(&preimage, sizeof(preimage)); sha256(&pinfo.payment_hash, &preimage, sizeof(preimage)); // char hex_preimage[600], hex_sha256[600]; diff --git a/plugins/test/Makefile b/plugins/test/Makefile index 3b5712d5ac09..c7744825295e 100644 --- a/plugins/test/Makefile +++ b/plugins/test/Makefile @@ -10,7 +10,9 @@ ALL_TEST_PROGRAMS += $(PLUGIN_TEST_PROGRAMS) PLUGIN_TEST_COMMON_OBJS := \ common/amount.o \ common/autodata.o \ + common/clock_time.o \ common/pseudorand.o \ + common/randbytes.o \ common/setup.o \ common/utils.o diff --git a/plugins/test/run-funder_policy.c b/plugins/test/run-funder_policy.c index 8880b905999a..89e5840c5340 100644 --- a/plugins/test/run-funder_policy.c +++ b/plugins/test/run-funder_policy.c @@ -1,6 +1,7 @@ #include "config.h" #include "../funder_policy.c" #include +#include #include #include diff --git a/plugins/topology.c b/plugins/topology.c index 4c84d02b92c2..5447303efdc5 100644 --- a/plugins/topology.c +++ b/plugins/topology.c @@ -11,6 +11,7 @@ #include #include #include +#include #include #include #include @@ -462,6 +463,33 @@ static struct amount_msat peer_capacity(const struct gossmap *gossmap, return capacity; } +/* For deterministic results with bolt12/11 routes, we only return a + * single candidate: choose the one with most capacity */ +static size_t best_candidate(const struct gossmap *gossmap, + const struct gossmap_node *me) +{ + struct amount_msat best_cap = AMOUNT_MSAT(0); + size_t best_num = 0; + for (size_t i = 0; i < me->num_chans; i++) { + int dir; + struct gossmap_chan *ourchan; + struct amount_msat cap; + struct gossmap_node *peer; + + ourchan = gossmap_nth_chan(gossmap, me, i, &dir); + if (ourchan->cupdate_off[!dir] == 0) + continue; + + peer = gossmap_nth_node(gossmap, ourchan, !dir); + cap = peer_capacity(gossmap, me, peer, ourchan); + if (amount_msat_greater(cap, best_cap)) { + best_num = i; + best_cap = cap; + } + } + return best_num; +} + static struct command_result * listpeerchannels_listincoming_done(struct command *cmd, const char *method, @@ -473,6 +501,7 @@ listpeerchannels_listincoming_done(struct command *cmd, struct gossmap_node *me; struct gossmap *gossmap; struct gossmap_localmods *mods; + size_t deterministic_candidate = 0; /* Get local knowledge */ mods = gossmods_from_listpeerchannels(tmpctx, &local_id, @@ -490,6 +519,9 @@ listpeerchannels_listincoming_done(struct command *cmd, if (!me) goto done; + if (randbytes_overridden()) + deterministic_candidate = best_candidate(gossmap, me); + for (size_t i = 0; i < me->num_chans; i++) { struct node_id peer_id; int dir; @@ -502,6 +534,10 @@ listpeerchannels_listincoming_done(struct command *cmd, /* Entirely missing? Ignore. */ if (ourchan->cupdate_off[!dir] == 0) continue; + + if (randbytes_overridden() && i != deterministic_candidate) + continue; + /* We used to ignore if the peer said it was disabled, * but we have a report of LND telling us our unannounced * channel is disabled, so we still use them. */ diff --git a/plugins/xpay/xpay.c b/plugins/xpay/xpay.c index bf5f9cb46299..f202d95e278d 100644 --- a/plugins/xpay/xpay.c +++ b/plugins/xpay/xpay.c @@ -7,6 +7,7 @@ #include #include #include +#include #include #include #include @@ -1869,7 +1870,7 @@ static struct command_result *xpay_core(struct command *cmd, payment->requests = tal_arr(payment, struct out_req *, 0); payment->prior_results = tal_strdup(payment, ""); payment->deadline = timemono_add(time_mono(), time_from_sec(retryfor)); - payment->start_time = time_now(); + payment->start_time = clock_time(); payment->pay_compat = as_pay; payment->invstring = tal_strdup(payment, invstring); if (layers) @@ -1977,7 +1978,7 @@ static struct command_result *xpay_core(struct command *cmd, invexpiry = b11->timestamp + b11->expiry; } - now = time_now().ts.tv_sec; + now = clock_time().ts.tv_sec; if (now > invexpiry) return command_fail(cmd, PAY_INVOICE_EXPIRED, "Invoice expired %"PRIu64" seconds ago", @@ -2094,7 +2095,7 @@ static struct command_result *age_layer(struct command *timer_cmd, void *unused) plugin_broken_cb, NULL); json_add_string(req->js, "layer", "xpay"); - json_add_u64(req->js, "cutoff", time_now().ts.tv_sec - 3600); + json_add_u64(req->js, "cutoff", clock_time().ts.tv_sec - 3600); return send_outreq(req); } diff --git a/tests/autogenerate-rpc-examples.py b/tests/autogenerate-rpc-examples.py index bfd564288c4f..c8ebecbecff2 100644 --- a/tests/autogenerate-rpc-examples.py +++ b/tests/autogenerate-rpc-examples.py @@ -9,10 +9,12 @@ from fixtures import TEST_NETWORK from pyln.client import RpcError, Millisatoshi # type: ignore from pyln.testing.utils import GENERATE_EXAMPLES +from typing import Any, Mapping, Dict, List +from dataclasses import dataclass from utils import only_one, mine_funding_to_announce, sync_blockheight, wait_for, first_scid, serialize_payload_tlv, serialize_payload_final_tlv +import socket import sys import os -import re import time import pytest import unittest @@ -32,269 +34,8 @@ ALL_RPC_EXAMPLES = {} EXAMPLES_JSON = {} LOG_FILE = './tests/autogenerate-examples-status.log' -TEMP_EXAMPLES_FILE = './tests/autogenerate-examples.json' IGNORE_RPCS_LIST = ['dev-splice', 'reckless', 'sql-template'] - -# Constants for replacing values in examples -NEW_VALUES_LIST = { - 'root_dir': '/root/lightning', - 'tmp_dir': '/tmp/.lightning', - 'str_1': '1', - 'num_1': 1, - 'balance_msat_1': 202050000000, - 'fees_paid_msat_1': 5020000, - 'bytes_used': 1630000, - 'bytes_max': 10485760, - 'assocdata_1': 'assocdata0' + ('01' * 27), - 'hsm_secret_cdx_1': 'cl10leetsd35kw6r5de5kueedxyesqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqluplcg0lxenqd', - 'error_message_1': 'All addresses failed: 127.0.0.1:19736: Cryptographic handshake: peer closed connection (wrong key?). ', - 'configs_3_addr2': "127.0.0.1:19735", - 'bitcoin-rpcport': 18332, - 'grpc-port': 9736, - 'blockheight_110': 110, - 'blockheight_130': 130, - 'blockheight_160': 160, - 'script_pubkey_1': 'scriptpubkey' + ('01' * 28), - 'script_pubkey_2': 'scriptpubkey' + ('02' * 28), - 'onion_1': 'onion' + ('10' * 1363), - 'onion_2': 'onion' + ('20' * 1363), - 'onion_3': 'onion' + ('30' * 1363), - 'shared_secrets_1': ['sharedsecret' + ('10' * 26), 'sharedsecret' + ('11' * 26), 'sharedsecret' + ('12' * 26)], - 'shared_secrets_2': ['sharedsecret' + ('20' * 26), 'sharedsecret' + ('21' * 26), 'sharedsecret' + ('22' * 26)], - 'invreq_id_1': 'invreqid' + ('01' * 28), - 'invreq_id_2': 'invreqid' + ('02' * 28), - 'invreq_id_l1_l22': 'invreqid' + ('03' * 28), - 'invoice_1': 'lni1qqg0qe' + ('01' * 415), - 'invoice_2': 'lni1qqg0qe' + ('02' * 415), - 'invoice_3': 'lni1qqg0qe' + ('03' * 415), - 'funding_txid_1': 'fundingtxid001' + ('01' * 25), - 'funding_txid_2': 'fundingtxid002' + ('02' * 25), - 'signature_1': 'dcde30c4bb50bed221009d' + ('01' * 60), - 'signature_2': 'dcdepay30c4bb50bed209d' + ('02' * 60), - 'destination_1': 'bcrt1p52' + ('01' * 28), - 'destination_2': 'bcrt1qcqqv' + ('01' * 17), - 'destination_3': 'bcrt1phtprcvhz' + ('02' * 25), - 'destination_4': 'bcrt1p00' + ('02' * 28), - 'destination_5': 'bcrt1p00' + ('03' * 28), - 'destination_6': 'bcrt1p00' + ('04' * 28), - 'destination_7': 'bcrt1p338x' + ('07' * 28), - 'funding_serial_1': 17725655605188010000, - 'funding_serial_2': 17725655605188020000, - 'funding_serial_3': 17725655605188030000, - 'funding_serial_4': 17725655605188040000, - 'funding_serial_5': 17725655605188050000, - 'l1_id': 'nodeid' + ('01' * 30), - 'l2_id': 'nodeid' + ('02' * 30), - 'l3_id': 'nodeid' + ('03' * 30), - 'l4_id': 'nodeid' + ('04' * 30), - 'l5_id': 'nodeid' + ('05' * 30), - 'l10_id': 'nodeid' + ('10' * 30), - 'l12_id': 'nodeid' + ('12' * 30), - 'l1_alias': 'JUNIORBEAM', - 'l2_alias': 'SILENTARTIST', - 'l3_alias': 'HOPPINGFIRE', - 'l4_alias': 'JUNIORFELONY', - 'l2_port': 19735, - 'l3_port': 19736, - 'l1_addr': '127.0.0.1:19734', - 'l2_addr': '127.0.0.1:19735', - 'l3_addr': '127.0.0.1:19736', - 'l4_addr': '127.0.0.1:19737', - 'l5_addr': '127.0.0.1:19738', - 'l6_addr': '127.0.0.1:19739', - 'c12': '109x1x1', - 'c23': '111x1x1', - 'c23_2': '123x1x1', - 'c25': '115x1x1', - 'c34': '125x1x1', - 'c34_2': '130x1x1', - 'c35_tx': '020000000000305fundchanneltx' + ('35000' * 99), - 'c41_tx': '020000000000401fundchanneltx' + ('41000' * 99), - 'upgrade_tx': '02000000000101upgd' + ('20000' * 34), - 'close1_tx': '02000000000101cls0' + ('01' * 200), - 'close2_tx': '02000000000101cls1' + ('02' * 200), - 'send_tx_1': '02000000000101sendpt' + ('64000' * 100), - 'send_tx_2': '02000000000102sendpt' + ('65000' * 100), - 'tx_55': '02000000000155multiw' + ('55000' * 100), - 'tx_56': '02000000000155multiw' + ('56000' * 100), - 'tx_61': '02000000000155multiw' + ('61000' * 100), - 'tx_91': '020000000001wthdrw' + ('91000' * 100), - 'tx_92': '020000000002wthdrw' + ('92000' * 100), - 'unsigned_tx_1': '0200000000' + ('0002' * 66), - 'unsigned_tx_3': '0200000000' + ('0006' * 66), - 'unsigned_tx_4': '0200000000' + ('0008' * 66), - 'multi_tx_1': '02000000000101multif' + ('50000' * 100), - 'multi_tx_2': '02000000000102multif' + ('60000' * 100), - 'ocs_tx_1': '02000000000101sgpsbt' + ('11000' * 100), - 'ocs_tx_2': '02000000000101sgpsbt' + ('12000' * 100), - 'txsend_tx_1': '02000000000101txsend' + ('00011' * 100), - 'txsend_tx_2': '02000000000101txsend' + ('00022' * 100), - 'c12_txid': 'channeltxid' + ('120000' * 9), - 'c23_txid': 'channeltxid' + ('230000' * 9), - 'c23_2_txid': 'channeltxid' + ('230200' * 9), - 'c34_txid': 'channeltxid' + ('340000' * 9), - 'c34_2_txid': 'channeltxid' + ('340200' * 9), - 'c35_txid': 'channeltxid' + ('350000' * 9), - 'c41_txid': 'channeltxid' + ('410000' * 9), - 'c1112_txid': 'channeltxid' + ('111200' * 9), - 'upgrade_txid': 'txidupgrade' + ('200000' * 9), - 'close1_txid': 'txid' + ('01' * 30), - 'close2_txid': 'txid' + ('02' * 30), - 'send_txid_1': 'txid' + ('64000' * 11), - 'send_txid_2': 'txid' + ('65000' * 11), - 'txid_55': 'txid' + ('55000' * 11), - 'txid_56': 'txid' + ('56000' * 11), - 'txid_61': 'txid' + ('61000' * 11), - 'withdraw_txid_l21': 'txidwithdraw21' + ('91000' * 10), - 'withdraw_txid_l22': 'txidwithdraw22' + ('92000' * 10), - 'txprep_txid_1': 'txidtxprep0001' + ('00001' * 10), - 'txprep_txid_2': 'txidtxprep0002' + ('00002' * 10), - 'txprep_txid_3': 'txidtxprep0003' + ('00003' * 10), - 'txprep_txid_4': 'txidtxprep0004' + ('00004' * 10), - 'multi_txid_1': 'channeltxid010' + ('50000' * 10), - 'multi_txid_2': 'channeltxid020' + ('60000' * 10), - 'utxo_1': 'utxo' + ('01' * 30), - 'ocs_txid_1': 'txidocsigned10' + ('11000' * 10), - 'ocs_txid_2': 'txidocsigned10' + ('12000' * 10), - 'c12_channel_id': 'channelid0' + ('120000' * 9), - 'c23_channel_id': 'channelid0' + ('230000' * 9), - 'c23_2_channel_id': 'channelid0' + ('230200' * 9), - 'c25_channel_id': 'channelid0' + ('250000' * 9), - 'c34_channel_id': 'channelid0' + ('340000' * 9), - 'c34_2_channel_id': 'channelid0' + ('340200' * 9), - 'c35_channel_id': 'channelid0' + ('350000' * 9), - 'c41_channel_id': 'channelid0' + ('410000' * 9), - 'c78_channel_id': 'channelid0' + ('780000' * 9), - 'c1112_channel_id': 'channelid0' + ('111200' * 9), - 'c910_channel_id_1': 'channelid' + ('09101' * 11), - 'c910_channel_id_2': 'channelid' + ('09102' * 11), - 'mf_channel_id_1': 'channelid' + ('11000' * 11), - 'mf_channel_id_2': 'channelid' + ('12000' * 11), - 'mf_channel_id_3': 'channelid' + ('13000' * 11), - 'mf_channel_id_4': 'channelid' + ('15200' * 11), - 'mf_channel_id_5': 'channelid' + ('12400' * 11), - 'time_at_800': 1738000000, - 'time_at_850': 1738500000, - 'time_at_900': 1739000000, - 'bolt11_l11': 'lnbcrt100n1pnt2' + ('bolt11invl010100000000' * 10), - 'bolt11_l12': 'lnbcrt100n1pnt2' + ('bolt11invl010200000000' * 10), - 'bolt11_l13': 'lnbcrt100n1pnt2' + ('bolt11invl010300000000' * 10), - 'bolt11_l14': 'lnbcrt100n1pnt2' + ('bolt11invl010400000000' * 10), - 'bolt11_l21': 'lnbcrt100n1pnt2' + ('bolt11invl020100000000' * 10), - 'bolt11_l22': 'lnbcrt100n1pnt2' + ('bolt11invl020200000000' * 10), - 'bolt11_l23': 'lnbcrt100n1pnt2' + ('bolt11invl020300000000' * 10), - 'bolt11_l24': 'lnbcrt100n1pnt2' + ('bolt11invl020400000000' * 10), - 'bolt11_l25': 'lnbcrt100n1pnt2' + ('bolt11invl020500000000' * 10), - 'bolt11_l26': 'lnbcrt100n1pnt2' + ('bolt11invl020600000000' * 10), - 'bolt11_l27': 'lnbcrt100n1pnt2' + ('bolt11invl020700000000' * 10), - 'bolt11_l31': 'lnbcrt100n1pnt2' + ('bolt11invl030100000000' * 10), - 'bolt11_l33': 'lnbcrt100n1pnt2' + ('bolt11invl030300000000' * 10), - 'bolt11_l34': 'lnbcrt100n1pnt2' + ('bolt11invl030400000000' * 10), - 'bolt11_l41': 'lnbcrt100n1pnt2' + ('bolt11invl040100000000' * 10), - 'bolt11_l66': 'lnbcrt100n1pnt2' + ('bolt11invl060600000000' * 10), - 'bolt11_l67': 'lnbcrt100n1pnt2' + ('bolt11invl060700000000' * 10), - 'bolt11_wt_1': 'lnbcrt222n1pnt3005720bolt11wtinv' + ('01' * 160), - 'bolt11_wt_2': 'lnbcrt222n1pnt3005720bolt11wtinv' + ('02' * 160), - 'bolt11_di_1': 'lnbcrt222n1pnt3005720bolt11300' + ('01' * 170), - 'bolt11_di_2': 'lnbcrt222n1pnt3005720bolt11300' + ('01' * 170), - 'bolt11_dp_1': 'lnbcrt222n1pnt3005720bolt11400' + ('01' * 170), - 'bolt12_l21': 'lno1qgsq000bolt' + ('21000' * 24), - 'bolt12_l22': 'lno1qgsq000bolt' + ('22000' * 24), - 'bolt12_l23': 'lno1qgsq000bolt' + ('23000' * 24), - 'bolt12_l24': 'lno1qgsq000bolt' + ('24000' * 24), - 'bolt12_si_1': 'lno1qgsq000bolt' + ('si100' * 24), - 'offerid_l21': 'offeridl' + ('2100000' * 8), - 'offerid_l22': 'offeridl' + ('2200000' * 8), - 'offerid_l23': 'offeridl' + ('2300000' * 8), - 'payment_hash_l11': 'paymenthashinvl0' + ('1100' * 12), - 'payment_hash_l21': 'paymenthashinvl0' + ('2100' * 12), - 'payment_hash_l22': 'paymenthashinvl0' + ('2200' * 12), - 'payment_hash_l27': 'paymenthashinvl0' + ('2700' * 12), - 'payment_hash_l31': 'paymenthashinvl0' + ('3100' * 12), - 'payment_hash_l24': 'paymenthashinvl0' + ('2400' * 12), - 'payment_hash_l25': 'paymenthashinvl0' + ('2500' * 12), - 'payment_hash_l26': 'paymenthashinvl0' + ('2600' * 12), - 'payment_hash_l33': 'paymenthashinvl0' + ('3300' * 12), - 'payment_hash_l34': 'paymenthashinvl0' + ('3400' * 12), - 'payment_hash_key_1': 'paymenthashkey01' + ('k101' * 12), - 'payment_hash_key_2': 'paymenthashkey02' + ('k201' * 12), - 'payment_hash_key_3': 'paymenthashkey03' + ('k301' * 12), - 'payment_hash_cmd_pay_1': 'paymenthashcmdpy' + ('cp10' * 12), - 'payment_hash_si_1': 'paymenthashsdinv' + ('si10' * 12), - 'payment_hash_wspc_1': 'paymenthashwtspct2' + ('01' * 23), - 'payment_hash_winv_1': 'paymenthashwaitinv' + ('01' * 23), - 'payment_hash_winv_2': 'paymenthashwaitinv' + ('02' * 23), - 'payment_hash_di_1': 'paymenthashdelinv1' + ('01' * 23), - 'payment_hash_di_2': 'paymenthashdelinv2' + ('02' * 23), - 'payment_hash_dp_1': 'paymenthashdelpay1' + ('01' * 23), - 'payment_hash_dp_2': 'paymenthashdelpay2' + ('02' * 23), - 'payment_hash_dp_3': 'paymenthashdelpay3' + ('03' * 23), - 'payment_preimage_1': 'paymentpreimage1' + ('01' * 24), - 'payment_preimage_2': 'paymentpreimage2' + ('02' * 24), - 'payment_preimage_3': 'paymentpreimage3' + ('03' * 24), - 'payment_preimage_ep_1': 'paymentpreimagep' + ('01' * 24), - 'payment_preimage_ep_2': 'paymentpreimagep' + ('02' * 24), - 'payments_preimage_i_1': 'paymentpreimagei' + ('01' * 24), - 'payments_preimage_w_1': 'paymentpreimagew' + ('01' * 24), - 'payment_preimage_cmd_1': 'paymentpreimagec' + ('01' * 24), - 'payment_preimage_r_1': 'paymentpreimager' + ('01' * 24), - 'payment_preimage_r_2': 'paymentpreimager' + ('02' * 24), - 'payment_preimage_wi_1': 'paymentpreimagewaitinv0' + ('01' * 21), - 'payment_preimage_wi_2': 'paymentpreimagewaitinv0' + ('02' * 21), - 'payment_preimage_di_1': 'paymentpreimagedelinv01' + ('01' * 21), - 'payment_preimage_dp_1': 'paymentpreimgdp1' + ('01' * 24), - 'payment_preimage_xp_1': 'paymentpreimgxp1' + ('01' * 24), - 'payment_preimage_xp_2': 'paymentpreimgxp2' + ('02' * 24), - 'payment_preimage_io_1': 'paymentpreimgio1' + ('03' * 24), - 'payment_secret_l11': 'paymentsecretinvl00' + ('11000' * 9), - 'payment_secret_l22': 'paymentsecretinvl00' + ('22000' * 9), - 'payment_secret_l31': 'paymentsecretinvl00' + ('31000' * 9), - 'init_psbt_1': 'cHNidP8BAgpsbt10' + ('01' * 52), - 'init_psbt_2': 'cHNidP8BAgpsbt20' + ('02' * 84), - 'init_psbt_3': 'cHNidP8BAgpsbt30' + ('03' * 92), - 'upgrade_psbt_1': 'cHNidP8BAgQCAAAAAQMEbwAAAAEEAQpsbt' + ('110000' * 100), - 'psbt_1': 'cHNidP8BAgQCAAAAAQMEbwAAAAEEAQpsbt' + ('711000' * 120), - 'psbt_2': 'cHNidP8BAgQCAAAAAQMEbwAAAAEEAQpsbt' + ('712000' * 120), - 'psbt_3': 'cHNidP8BAgQCAAAAAQMEbwAAAAEEAQpsbt' + ('713000' * 120), - 'psbt_4': 'cHNidP8BAgQCAAAAAQMEbwAAAAEEAQpsbt' + ('714000' * 120), - 'psbt_5_1': 'cHNidP8BAgQCAAAAAQMEbwAAAAEEAQpsbt' + ('715100' * 120), - 'psbt_5_2': 'cHNidP8BAgQCAAAAAQMEbwAAAAEEAQpsbt' + ('715200' * 120), - 'psbt_6_1': 'cHNidP8BAgQCAAAAAQMEbwAAAAEEAQpsbt' + ('716100' * 120), - 'psbt_6_2': 'cHNidP8BAgQCAAAAAQMEbwAAAAEEAQpsbt' + ('716200' * 120), - 'psbt_7': 'cHNidP8BAgQCAAAAAQMEbwAAAAEEAQpsbt' + ('911000' * 40), - 'psbt_8': 'cHNidP8BAgQCAAAAAQMEbwAAAAEEAQpsbt' + ('922000' * 40), - 'psbt_9': 'cHNidP8BAgQCAAAAAQMEbwAAAAEEAQpsbt' + ('101000' * 40), - 'psbt_10': 'cHNidP8BAgQCAAAAAQMEbwAAAAEEAQpsbt' + ('201000' * 40), - 'psbt_12': 'cHNidP8BAgQCAAAAAQMEbwAAAAEEAQpsbt' + ('401000' * 40), - 'psbt_13': 'cHNidP8BAgQCAAAAAQMEbwAAAAEEAQpsbt' + ('310000' * 40), - 'psbt_14': 'cHNidP8BAgQCAAAAAQMEbwAAAAEEAQpsbt' + ('410000' * 40), - 'psbt_15': 'cHNidP8BAgQCAAAAAQMEbwAAAAEEAQpsbt' + ('510000' * 40), - 'psbt_16': 'cHNidP8BAgQCAAAAAQMEbwAAAAEEAQpsbt' + ('520000' * 40), - 'psbt_17': 'cHNidP8BAgQCAAAAAQMEbwAAAAEEAQpsbt' + ('610000' * 40), - 'psbt_18': 'cHNidP8BAgQCAAAAAQMEbwAAAAEEAQpsbt' + ('710000' * 40), - 'psbt_19': 'cHNidP8BAgQCAAAAAQMEbwAAAAEEAQpsbt' + ('810000' * 40), - 'psbt_20': 'cHNidP8BAgQCAAAAAQMEbwAAAAEEAQpsbt' + ('910000' * 40), - 'psbt_21': 'cHNidP8BAgQCAAAAAQMEbwAAAAEEAQpsbt' + ('101000' * 40), - 'psbt_22': 'cHNidP8BAgQCAAAAAQMEbwAAAAEEAQpsbt' + ('111000' * 40), - 'psbt_23': 'cHNidP8BAgQCAAAAAQMEbwAAAAEEAQpsbt' + ('121000' * 40), - 'psbt_24': 'cHNidP8BAgQCAAAAAQMEbwAAAAEEAQpsbt' + ('011100' * 40), - 'psbt_25': 'cHNidP8BAgQCAAAAAQMEbwAAAAEEAQpsbt' + ('011200' * 40), - 'psbt_26': 'cHNidP8BAgQCAAAAAQMEbwAAAAEEAQpsbt' + ('022200' * 40), - 'signed_psbt_1': 'cHNidP8BAgQCAAAAAQMEbwAAAAEEAQpsbt' + ('718000' * 120), - 'htlc_max_msat': 18446744073709552000, - 'proof_1': '0473656e64' + ('proof00001' * 10), -} - -# Used for collecting values from responses and replace them with NEW_VALUES_LIST before updating examples in schema files -REPLACE_RESPONSE_VALUES = [ - {'data_keys': ['any'], 'original_value': re.compile(re.escape(CWD)), 'new_value': NEW_VALUES_LIST['root_dir']}, - {'data_keys': ['any'], 'original_value': re.compile(r'/tmp/ltests-[^/]+/test_generate_examples_[^/]+/lightning-[^/]+'), 'new_value': NEW_VALUES_LIST['tmp_dir']}, - {'data_keys': ['outnum', 'funding_outnum', 'vout'], 'original_value': '0', 'new_value': NEW_VALUES_LIST['str_1']}, - {'data_keys': ['outnum', 'funding_outnum', 'vout'], 'original_value': 0, 'new_value': NEW_VALUES_LIST['num_1']}, - {'data_keys': ['outnum', 'funding_outnum', 'vout'], 'original_value': 2, 'new_value': NEW_VALUES_LIST['num_1']}, - {'data_keys': ['outnum', 'funding_outnum', 'vout'], 'original_value': 3, 'new_value': NEW_VALUES_LIST['num_1']}, - {'data_keys': ['type'], 'original_value': 'unilateral', 'new_value': 'mutual'}, -] +BASE_PORTNUM = 30000 if os.path.exists(LOG_FILE): open(LOG_FILE, 'w').close() @@ -305,63 +46,178 @@ class MissingExampleError(Exception): pass -def update_list_responses(data, list_key=None, slice_upto=5, update_func=None, sort=False, sort_key=None): - """Update responses received from various list rpcs to limit the number of items in the list, sort the list and update the values in the list""" - if list_key is not None: - if isinstance(data[list_key], list): - data[list_key] = data[list_key][0:slice_upto] - - if sort: - data[list_key] = sorted(data[list_key], key=lambda x: x[sort_key]) if sort_key is not None else {k: data[list_key][k] for k in sorted(data[list_key])} - - if update_func is not None and isinstance(data[list_key], list): - for i, item in enumerate(data[list_key]): - update_func(item, i) - return data - - -def replace_values_in_json(data, data_key): - """Replace values in JSON data with new values before saving them in the schema files""" - if isinstance(data, dict): - return {key: replace_values_in_json(value, key) for key, value in data.items()} - elif isinstance(data, list): - for replace_value in REPLACE_RESPONSE_VALUES: - if any(item == 'any' or item == data_key for item in replace_value['data_keys']) and data == replace_value['original_value']: - data = replace_value['new_value'] - return data - return [replace_values_in_json(item, 'listitem') for item in data] - elif isinstance(data, str): - for replace_value in REPLACE_RESPONSE_VALUES: - if any(item == data_key for item in replace_value['data_keys']) and data == replace_value['original_value']: - data = replace_value['new_value'] - break - elif any(item == 'any' for item in replace_value['data_keys']) and isinstance(replace_value['original_value'], str) and data == replace_value['original_value']: - data = data.replace(replace_value['original_value'], replace_value['new_value']) - break - elif replace_value['data_keys'] == ['any'] and isinstance(replace_value['original_value'], re.Pattern): - if re.match(replace_value['original_value'], data): - data = replace_value['original_value'].sub(replace_value['new_value'], data) - break - return data - elif isinstance(data, (int, float)): - for replace_value in REPLACE_RESPONSE_VALUES: - if any(item == 'any' or item == data_key for item in replace_value['data_keys']) and data == replace_value['original_value']: - data = replace_value['new_value'] - break - return data - else: - return data +def check_ports(portrange): + for port in portrange: + with socket.socket(socket.AF_INET, socket.SOCK_STREAM) as s: + try: + s.bind(("127.0.0.1", port)) + except OSError: + logger.error(f'Port {port} in use!') + raise + + +@dataclass(frozen=True) +class Rewriter: + section: str # e.g. "connect" + example_id: str # e.g. "example:connect#1" + responses: List[Mapping[str, Any]] + + +def _merge_list(dst: List[Any], patch: List[Any]) -> None: + """Element-wise list merge. Lengths must be the same""" + assert len(patch) == len(dst) + for i, pv in enumerate(patch): + dv = dst[i] + if isinstance(pv, Mapping) and isinstance(dv, dict): + _deep_update(dv, pv) + else: + dst[i] = pv + + +def _deep_update(dst: Dict[str, Any], patch: Mapping[str, Any]) -> None: + """Deep merge into dst, modifying it in place.""" + for k, v in patch.items(): + if isinstance(v, Mapping) and isinstance(dst.get(k), dict): + _deep_update(dst[k], v) + elif isinstance(v, list) and isinstance(dst.get(k), list): + _merge_list(dst[k], v) + else: + dst[k] = v + + +def rewrite_example(all_examples: Dict[str, Any], rw: Rewriter) -> None: + """Modify the examples dict in place for the specified example.""" + section = all_examples.get(rw.section) + if not section or "examples" not in section: + raise KeyError(f"Section {rw.section!r} not found") + + for ex in section["examples"]: + req = ex.get("request", {}) + resp = ex.get("response", {}) + + if req.get("id") == rw.example_id: + for resp_patch in rw.responses: + _deep_update(resp, resp_patch) + return + + raise ValueError(f"Example with id {rw.example_id!r} not found in section {rw.section!r}") + + +def fixup_listconfigs(configvars: Dict[str, Dict[str, Any]]) -> Dict[str, Dict[str, Any]]: + # Boutique: getinfo plugin paths will contain build directory: change them to /usr/local/libexec/plugins/ + for cv in configvars.values(): + if 'plugin' in cv: + cv['plugin'] = "/usr/local/libexec/plugins/" + cv['plugin'].split('/')[-1] + # And they are in plugin-response order, so sort: + return dict(sorted(configvars.items(), + key=lambda kv: (1, kv[1]["plugin"], kv[0]) if "plugin" in kv[1] else (0, "", ""))) + + +def rewrite_examples(examples: Dict[str, Any]): + """Despite being deterministic, some thing still need fixing up""" + + canned_scbs = ["0000000000000006f4e1de801de57374d5737da622611e3a1ad9f16d5df9c30fceecc11ce732eeeb022d223620a359a47ff7f7ac447c85c46c923da53389221a0054c11c1e3ca31d59017f000001a95cbe3270e5e0998af5eb0a67f7bf6e8d5b3d3d43059b3e4cfbd1e4fca6152c51320000000100000000000f42400003401000000000eb015c0000fffffffffffe000000020000ffffffffffff3283fc1863a9702a8e188ed55475324e55485a8758d2068cfea35851418c55740000fffffffffffed00ec892b1739b55ddc0cca2988d8731eb33f2295c1fcc13fdbdfff9d3f85d6d038402a6939f0f9d5c7a41464169eb692b4d2d73266b3c46345cd036ca577a15bdeeaa027662682a646ce7671c3a091bf639176e87d3379022126b209ebadadae19ffc0e02c59668c64362eaeabf44ee4f10b98fc92412cbea74b6f3a917423dfdf3ca282602773e6c29472ab708e5b127e8ae1ce2d8b7f56b457299f93bb72bb73fdbcf91770501010702a5f8", + "000000000000000121bd30cac60f477f2c4267220b1702a6ec5780db34f9934fa94b8c0508bf3357035d2b1192dfba134e10e540875d366ebc8bc353d5aa766b80c090b39c3a5d885d017f000001dcf8fdd5381f36008c3eac24cdde5ec0fea8f39240575ef0cb4406cb51ad419dd7810000000000000000000f424000034010000000011301840000fffffffffffa000000030000fffffffffffb8ff7d0df4eee78e558b4e07f82049aaa933f4f4932e13e1e7fee5cb103f7a0b50000fffffffffffa79176754ea338ffa080591b946a6ac1c47ff579ae7e45857bf01261ebe1c46ba0000fffffffffffcbdb924885293efdaa1ba8f556161f4fe525c19483def49b9af85c1623bc6d27b038402add69f29ad433cb7d4c9470f2d49d80245fd9e76a992197528a131e37711efac02c57de22185162001ffaf2e61b053b1d0e280d73ecec1b04916df2c65642d94a102cd4e1a07ee85714b6eada09d9cf81aeb15bfc72ddd003235530c58bbd0c0144902b10f36d2ebab3ce560abf15ceb1bef619491e0597a794fdafcfdf8708eec9e2d0501010702a5f8", + "00000000000000027512083907c74ed3a045e9bf772b3d72948eb93daf84a1cee57108800451aaf2035d2b1192dfba134e10e540875d366ebc8bc353d5aa766b80c090b39c3a5d885d017f000001dcf80239a9c9f2a91e69ba01800baf71f55efe457677b2e5cbd640b888dc1c9375b40000000000000000000f42400003401000000000c301340000ffffffffffff000000010000ffffffffffff0e07b6188dd51f15bb5cb9027950bf487a612dca57e2928de3f28f6ee796978b03840330b7ddf07e5bc779ea468875371ea25b560491c5feaeeb5e229ded3820d1d69103620748b3796c4988dd0fc63b92ae011dc989f15c433a55ed38e24318a43b4c93021bfe48bb1aded55878b00a3f00c5c1bffa1010510d8ba1c6372012ac9c3205d20201604aa7056ab8926038a846014bdbe4874ceef7ce45141b8009b0e2f49e7ec70501010702a5f8", + "0000000000000003222d999f537e32e9458c5db17a63e012dcced61340de06fda5bc30566270b0aa0266e4598d1d3c415f572a8488830b60f7e744ed9235eb0b1ba93283b315c03518017f0000017531932479f6d82ee59c7aa67b99568de0a31c202f6a3ff18a6bdd1ec22683cf026500000000000000000bebb3cb00034010000000009b010c0001000000000000000000000384021f90b5f38e0c0ea50bccfcf70a32cd4395c8c544e70636b7cc41831fe33fb4ce03bcfb0d457dfa07f508f434e6a2f040dd3dd233e7002dbe1c1b5d86ed5d3efd76030a4ce755504748f47401fc016578a52e104cbbd28251f10b11e4b3e55d0fe1d303986bdd0842662b8d0d18147630a720e952a2cda624c63ef4903357d27e54f7920501000702a5f8", + "0000000000000004a4a379248e49d207cc984646e632e1a31105a85708b9d6d961a5018fdd489f5a0266e4598d1d3c415f572a8488830b60f7e744ed9235eb0b1ba93283b315c03518017f000001970c7f07a15ce1fe1519d46536c4036f1c13527fa8bf52f6a5299b860f982ba2ed7e00000001000000000000753000034010000000009b010c000100000000000000000000038402c8aabcf1224df10e9d803dc3918797892fe0abec56d3e06f121bcebbe9ab0a2c03bd181375d57b8b1d15def9c5f9007b3c3ff98a140c0a44c9dc5f54ac7ea4baf30310952e08f9960711d8142dfa171c0fc2348762acea003f3897397f6ace8454130382da2a229450c4a8e8cea70bbd147eaaf981184bff8c1d70b70c30a494d848420501010702a5f8", + "000000000000000509eb55872cd9039ecd08281af756e23b15aad4129fd6a9bcd71b472114ebf43a0266e4598d1d3c415f572a8488830b60f7e744ed9235eb0b1ba93283b315c03518017f000001970c64ed91a21c10208d715b59801b12b4a6eff9ea9e4e7d45971c298b62d90ece8e00000000000000000000c35000034010000000009b010c000100000000000000000000038402e885f38e784050b386fb32d20935acc61059d8b02b6bec0ac2bfc8b2c5cf7f3103ae69dbfc6511ba0781c13113e16e1557a875b910cb1cb1fe1ef95a7edb36135a03758d5faa8515942873911e21869b1b90a4be72af14b394bc064da6ba518b087003750b588cd1fb8d60276c12c1c3eef7e302e3772414234404289db8c10f5731320501010702a5f8"] + + rewrites = [ + # The command_id is highly caller dependent, so clean it up. + Rewriter("askrene-listreservations", + "example:askrene-listreservations#1", + [{"reservations": [{'command_id': 'examples.py:askrene-reserve#1/cln:askrene-reserve#2'}, + {'command_id': 'examples.py:askrene-reserve#2/cln:askrene-reserve#3'}, + {'command_id': 'examples.py:askrene-reserve#3/cln:askrene-reserve#4'}, + {'command_id': 'examples.py:askrene-reserve#4/cln:askrene-reserve#5'}]}]), + # The proof changes each time + Rewriter("fetchbip353", + "example:fetchbip353#1", + [{"proof": "0473656e6404736f6d650475736572105f626974636f696e2d7061796d656e740673617473746f026d65000005000100000e10002c046d6174740475736572105f626974636f696e2d7061796d656e740b6d617474636f72616c6c6f03636f6d000473656e6404736f6d650475736572105f626974636f696e2d7061796d656e740673617473746f026d6500002e000100000e10005d00050d0600000e1068cbae9b68b92483d1730673617473746f026d6500791e02a2bcc49002f748cf633b058fabf9975dce37ae6383429819624a898a0e6c7f4931fd84ca7ba8120c00f220a9a71a799c8e91acd635a34281dc4bc33e0f046d6174740475736572105f626974636f696e2d7061796d656e740b6d617474636f72616c6c6f03636f6d000010000100000e1001ecff626974636f696e3a626331717a7477793678656e337a647474377a3076726761706d6a74667a3861636a6b6670356670376c3f6c6e6f3d6c6e6f317a7235717975677167736b726b37306b716d7571377633646e7232666e6d68756b7073396e386875743438766b7170716e736b743273767371776a616b70376b36707968746b7578773779326b716d73786c777275687a7176307a736e686839713374397868783339737563367173723037656b6d3565736479756d307736366d6e783876647175777670376470356a70376a337635637036616a3077333239666e6b7171763630713936737a356e6b726335723935716666783030327135337471646beb3878396d32746d7438356a74706d63796376666e727078336c723435683267376e6133736563377867756374667a7a636d386a6a71746a3579613237746536306a303376707430767139746d326e3979786c32686e67666e6d79676573613235733475347a6c78657771707670393478743772757234726878756e776b74686b39766c79336c6d356868307071763461796d6371656a6c6773736e6c707a776c6767796b6b616a7037796a73356a76723261676b79797063646c6a323830637934366a70796e73657a72636a326b7761326c797238787664366c666b706834787278746b327863336c7071046d6174740475736572105f626974636f696e2d7061796d656e740b6d617474636f72616c6c6f03636f6d00002e000100000e10006300100d0500000e1068ccc7d068ba3db826480b6d617474636f72616c6c6f03636f6d00f68a7e7a8f8643e433f854a733dd74db2a4ae01812ffaaed6d1243d7a665d518cf5b37c101d147329e5ba45d95fd1e8ca71e77894305e1081e7b0f442d20fdc90673617473746f026d6500002b000100000e1000245b360d022333b5ea25720720a8c54553c0641e8ccb8a917af20c694f10bf7ce3851e3f6e0673617473746f026d6500002b000100000e100024c4010d02a229c6d54c38b7bb723b48a6aceab1e7fdb6ae2a22b9b57c5ca6b942ed8ea2fe0673617473746f026d6500002e000100000e100096002b080200000e1068d1697c68b5abece2ad026d65006ed35281fc11d421c48a99a7c8b822442269ba75aa723517f93bd346c11ae9c23377a4d0ca9845a09fbed97fb3684219a197fb9bc9cbd7085fb7404c40a5d8bf6deacb0f6ab7036bf5ea979b0fd000a2da96da313b5d63bbe33efe58550af3ccccd1a107b87a6ee3e61abc92e6b87a300bcafd8f12e6c6197f3d4b82116749b0026d6500002b00010000bfd80024b12808027708c8a6d5d72b63214bbff50cb54553f7e07a1fa5e9074bd8d63c43102d8559026d6500002e00010000bfd80113002b08010001518068d0594068bf27b0b5690028415c2b258249314cf220c0631e898b98c786853de415c336421fbd0e2a4a50d64aeff8a369d0c0eb79b311b4c2732c1b902987986fe1ee230142fe2deccdc09647551f094e69a6ea8a813b0688b7cbbc846ecea7683c02ac45d0ff3cc2b6fda10233afdf963fa61c58a835684c7d708fab49efc38866675dec7787dbd8066492e2d77d70e6cd50893533ab80f2a2817a6476ad054ffad9c5dfdd68ecfece3c73eecc1fa0c2ac4c130014af201f11feef6788c8e91286a4279e06b491c55824a0718a2bf1775485c4f86ee834655e32be4a2f1b500d240008da68632c1134c21463151f5c5323944e2349536db8d822636eed2ec8fedb8c0f6692fcf066b59c000030000100005da101080101030803010001acffb409bcc939f831f7a1e5ec88f7a59255ec53040be432027390a4ce896d6f9086f3c5e177fbfe118163aaec7af1462c47945944c4e2c026be5e98bbcded25978272e1e3e079c5094d573f0e83c92f02b32d3513b1550b826929c80dd0f92cac966d17769fd5867b647c3f38029abdc48152eb8f207159ecc5d232c7c1537c79f4b7ac28ff11682f21681bf6d6aba555032bf6f9f036beb2aaa5b3778d6eebfba6bf9ea191be4ab0caea759e2f773a1f9029c73ecb8d5735b9321db085f1b8e2d8038fe2941992548cee0d67dd4547e11dd63af9c9fc1c5466fb684cf009d7197c2cf79e792ab501e6a8a1ca519af2cb9b5f6367e94c0d47502451357be1b5000030000100005da101080101030803010001af7a8deba49d995a792aefc80263e991efdbc86138a931deb2c65d5682eab5d3b03738e3dfdc89d96da64c86c0224d9ce02514d285da3068b19054e5e787b2969058e98e12566c8c808c40c0b769e1db1a24a1bd9b31e303184a31fc7bb56b85bbba8abc02cd5040a444a36d47695969849e16ad856bb58e8fac8855224400319bdab224d83fc0e66aab32ff74bfeaf0f91c454e6850a1295207bbd4cdde8f6ffb08faa9755c2e3284efa01f99393e18786cb132f1e66ebc6517318e1ce8a3b7337ebb54d035ab57d9706ecd9350d4afacd825e43c8668eece89819caf6817af62dc4fbd82f0e33f6647b2b6bda175f14607f59f4635451e6b27df282ef73d87000030000100005da101080100030803010001b11b182a464c3adc6535aa59613bda7a61cac86945c20b773095941194f4b9f516e8bd924b1e50e3fe83918b51e54529d4e5a1e45303df8462241d5e05979979ae5bf9c6c598c08a496e17f3bd3732d5aebe62667b61db1bbe178f27ac99408165a230d6aee78348e6c67789541f845b2ada96667f8dd16ae44f9e260c4a138b3bb1015965ebe609434a06464bd7d29bac47c3017e83c0f89bca1a9e3bdd0813715f3484292df589bc632e27d37efc02837cb85d770d5bd53a36edc99a8294771aa93cf22406f5506c8cf850ed85c1a475dee5c2d3700b3f5631d903524b849995c20cb407ed411f70b428ae3d642716fe239335aa961a752e67fb6dca0bf729000030000100005da101080100030803010001b6aec4b48567e2925a2d9c4fa4c96e6dddf86215a9bd8dd579c38ccb1199ed1be89946a7f72fc2633909a2792d0eed1b5afb2ee4c78d865a76d6cd9369d999c96af6be0a2274b8f2e9e0a0065bd20257570f08bc14c16f5616426881a83dbce6926e391c138a2ec317efa7349264de2e791c9b7d4a6048ee6eedf27bf1ece398ff0d229f18377cb1f6b98d1228ef217b8146c0c73851b89a6fc37c621ca187e16428a743ffea0072e185ef93e39525cee3ad01e0c94d2e511c8c313322c29ab91631e1856049a36898684c3056e5997473816fb547acb0be6e660bdfa89a5cb28b3669d8625f3f018c7b3b8a4860e774ee8261811ce7f96c461bc162c1a374f300002e000100005da10113003008000002a30068cdee8068b23f004f66001c5875f402770a5fe9251e7be7783b6d0545cb59ecad7d25cb5ce75ad583c47f809ecbe168ebfc57dee0e0eca8f6b92f32fb8cf3808c95640ae8e7fcd11b57d948b3b2749ae53b799fdd665d2b37a179401afda48534952859f22884a9cb9526e147fb867b7cd1463004a0385e9ad278aa41a9b63405d636733dc822f6a8b17d9eafc00e08717d558c6d3a3315c6c2ff3479b537290fe5ce9f1b280894951c5ec31305ebfa60260354cfc340ffe8d9b809a440ea9cdd8e4e14cbefec6c7f3967ab7776f7b1bc13589596b1f6d60176d3223126bac85abb2b55cb30a5d0615d6147a5dafb841a5b7ea1c1580b1a6b3dcf7607d12e19d2971aaf8747fdab1c42bb026d65000030000100000db900880100030803010001b36eee22bd8e610570cd88bfc3fedafa006a58b9714432aa3a6f9dd39a905c4e86aa1cdf5827119c81e1245d94ee4838ae22f05cc922ca30122aefa4da19d90a965b4317071b9331187f5cf4eb570dbd8e01987c2593a85b92e0440c635d15da13405f6ca7d78289ef0d6fe4716b8b62abd18dc07b0a9edd54182353ef836539026d65000030000100000db901080101030803010001c103be3a2aa47686ab01ba1b23799ff108d0c0530dfe35cebdd320b7abc851d1abf191378d155127e17fb029628385482b34ac3b042093d6097574b36ee277e31d20003272871bc76d1762dab33397eaae97d853932da5a96886a1b7c61bc52fcd1f1f23c7026a48fa1b190cb8b97d42b45b49948c45187efec3c7867812627a0220e5497c36ee4e92452fb5c1bda2dceaebf71c0e3909a61a5d6498dfc41c71cd0412dbbf442e43c378c9fb4043a1523cfd7ce320ce29fce606db73a8c78150b9808db8bb71898858d7a48ead8870f364b6e271ac642fe3160de3bc44b5a89ccf9e21e2ae5a877253db495f611a8a16a657f7ad9aeb906d5bc9c86f2883b5ed026d65000030000100000db900880100030803010001bfe96cdfe309deee4c579edbbfb50264719c35e25f64a525f81fe2479be4a907bfa9ce8b048ec167217690a145208507367cfec4ab4f9726cf55ecb79bf287836df0e0e946463a56e01b1a7d2e98681274f42ceb5817b1e253920b50f2e63f4be1a7c41f948a4a7235259a58eb0a9e4ccca370e2b3d363e4c289b897ffa329ab026d6500002e000100000db901160030080100000e1068d1697c68b5abecb128026d65005c91285cf473abf2c412efd0459436d9a291d1462928b3fcb8b30ea6d0d817e03dc8fe06994cfffad8ce447e08d85689e8c0966eac684716d98b4d116c08004b38bdbbec00b943f0afcf1c2b98fa4c8c36ded6823d99b61d96251b337037708ab2786ae66c48f08a70cc4d00b4dfbe44ac192c6c716470de238476913ae9574693514cf6ef3cd90b072127d42a2bf12ab871332a548a73bfd9d72479b90af179692389722fab448b23cd03ca8503a5e70857e644f8a29a4a15918a5a8cd317526b1d0ec0065b15da6a3021e6543f623887e5f099df3ddf8dd75bcaa355ed03d3e3de982359a6a93eca7def06797b12e63a0ffa6dc17e620dd13b6a0d2ac25df00673617473746f026d65000030000100000c8d00440100030dedcbe3954643072571e6c4c163cfe9ef330f5e430a3e6ca5eb76a9c97d1e3fcb9cba6a6a9ea371474b27c3d8ebb3a9ad9f1006be07d5155d669fdc7cc0db4d6a0673617473746f026d65000030000100000c8d00440101030d79bca014d652db03985a4edc2ada39c35f7daf8b86656ba6cd2df96f1da8c05f81d584aad62ee3c42ac7cbd29c5d35b9fa0b3d568a556ae9794d8cb02bae1bcb0673617473746f026d6500002e000100000c8d005d00300d0200093a8068cd0e3168ba8419c4010673617473746f026d65007a17319b99137fb51bb57a513cd9fd257130de52cc9279697e727e1e95a0301653a1ea782e2d8a43d9c69528491a2e088a184128409ed0e3078597fd3732d5a30b6d617474636f72616c6c6f03636f6d00002b0001000026610024e2f50d02f0e161567d468087ff27b051abc94476178a7cb635da1aa705e05c77ca81de520b6d617474636f72616c6c6f03636f6d00002e0001000026610057002b0d020001518068c67a0468bd2f1c504103636f6d0021c40cf90af28c2fb2fd35ce8632ed73edcf43bee374fb2b54944a9e8e845d08da67afb417d3014894ac2a92cf6a73be53d7df516a298d63447af8588ccee3e703636f6d00002b00010000506600244d060d028acbb0cd28f41250a80a491389424d341522d946b0da0c0291f2d3d771d7805a03636f6d00002e0001000050660113002b08010001518068cf865068be54c0b56900a9e8604de5bb97b53b31029218bd6dce5e68cdc0bd577fd3a3def5107e17b108679df22104a4f842ecfee4ab6ee14fbd7169b9e4fc9545dd00b21b920f41f40e8b5ece643975dd26f930acdc77e9495acd4507a7b22c02c4f048dadb3d2db607d46720ede2024be8a450ab98e2cae38a594603c73bce8617b9c0ca4f303de8d09606389530fb45ec20e9e6df775a72f1b76e47ba3c3780e1a5d7a27e77645f298efe1c397f31cc9f86151216627bc7bfbf265ac5a563805db62c5df2ede65ccf1c5c3f25054d73b5b9095238d38a39e30d9c2b0ae17d8d93ed6764d452d4a3141c0355d89f261d46e1f3a37857345e5220fadbeb10c9ed234cd03adfe55a04fc03636f6d00003000010000382100440100030df17b60fb56d522f8634153e785c0a978532ea76de39d34bb356d3d042e07f29f7b992176cc83acef7b78ea750425203b18f2b8228b3cdd2bc7eb13c3e3035a7e03636f6d00003000010000382100440101030db71f0465101ddbe2bf0c9455d12fa16c1cda44f4bf1ba2553418ad1f3aa9b06973f21b84eb532cf4035ee8d4832ca26d89306a7d32560c0cb0129d450ac1083503636f6d00002e000100003821005700300d010001518068c6cafb68b3034f4d0603636f6d0096cb2d4c67b93febc13dff1cdea2ab3d7669bc767127cb975f1d2ff4a94b9c15ca83d6ae9c93bde066d08095c2d0bffde30b4aea0a94ad9902693de313cb2b390b6d617474636f72616c6c6f03636f6d00003000010000546000440100030d27ac3c16d55694869003db8f7ee177d74690a6ca1e0d719e78fe9a6a2029bb2183205b6723ca5f4d63b6bb07c5d5a35fef5907eaa22accb0435d0151e13a01cf0b6d617474636f72616c6c6f03636f6d00003000010000546000440100030d8b1cf07c86f18c19c8c3146db093893648dcc1ab5fb79e99ccbab4aa06f98d52ac27b92e215d9da98d7535f3c2ce038fbb9d41b9c63d3845d444feffc1f71ed70b6d617474636f72616c6c6f03636f6d00003000010000546000440101030dec7c1fa1752495c42d2224eace96ed74144e9cb811608dd91594974bdc723fdc5b38a37c3340f1deca68a7ec82248822954b2994de5ac99ff6e9db95fd42c94b0b6d617474636f72616c6c6f03636f6d00002e000100005460006300300d0200093a8068cd0b5a68ba8142e2f50b6d617474636f72616c6c6f03636f6d004299251a06613ed7b0d6d65c41c2df2694730e81bc9f6d7266304cbfb6721ac4cc91ba71eb1eded7d351e996c0ffaaac566829474b5bd0d9e0a0c057928d47ef"}]), + # Getinfo is version dependent and path dependent + Rewriter("getinfo", + "example:getinfo#1", + [{"alias": "SILENTARTIST-" + os.getenv('CLN_NEXT_VERSION')}, + {"version": os.getenv('CLN_NEXT_VERSION')}, + {"lightning-dir": "/home/rusty/.lightning/regtest"}]), + # Logs are high-variance + Rewriter("getlog", + "example:getlog#1", + [{"bytes_used": 3271748}, + {"log": [{"num_skipped": 177}, {}, {"num_skipped": 4562}, {"num_skipped": 4554}, {}]}]), + # listconfigs exposes lightning-dir paths, aliases + Rewriter("listconfigs", + "example:listconfigs#3", + [{"configs": {"lightning-dir": {"value_str": "/home/rusty/.lightning/regtest"}}}, + {"configs": {"alias": {"value_str": "SILENTARTIST-" + os.getenv('CLN_NEXT_VERSION')}}}, + {"configs": {"autoclean-expiredinvoices-age": {"source": "/home/rusty/.lightning/regtest/config.setconfig:2"}}}, + {"configs": {"pid-file": {"value_str": "/home/rusty/.lightning/lightningd-regtest.pid"}}}, + {"configs": {"min-capacity-sat": {"source": "/home/rusty/.lightning/regtest/config.setconfig:3"}}}, + {"configs": {"log-file": {"values_str": ["-", "/home/rusty/.lightning/log"]}}}, + {"configs": {"dev-save-plugin-io": {"value_str": "/tmp/plugin-io"}}}, + {"configs": {"bitcoin-datadir": {"value_str": "/var/lib/bitcoind"}}}, + {"configs": {"bitcoin-rpcport": {"value_int": 8332}}}]), + # setconfig also exposes paths + Rewriter("setconfig", + "example:setconfig#1", + [{"config": {"source": "/home/rusty/.lightning/regtest/config.setconfig:2"}}, + {"config": {"plugin": "/usr/local/libexec/plugins/autoclean"}}]), + Rewriter("setconfig", + "example:setconfig#2", + [{"config": {"source": "/home/rusty/.lightning/regtest/config.setconfig:3"}}]), + # listnodes' aliases are version dependent + Rewriter("listnodes", + "example:listnodes#1", + [{"nodes": [{"alias": "HOPPINGFIRE-" + os.getenv('CLN_NEXT_VERSION')}]}]), + Rewriter("listnodes", + "example:listnodes#2", + [{"nodes": [{"alias": "SILENTARTIST-" + os.getenv('CLN_NEXT_VERSION')}, + {"alias": "JUNIORBEAM-" + os.getenv('CLN_NEXT_VERSION')}, + {"alias": "HOPPINGFIRE-" + os.getenv('CLN_NEXT_VERSION')}, + {"alias": "JUNIORFELONY-" + os.getenv('CLN_NEXT_VERSION')}]}]), + # Ephemeral ports used when they connect to us + Rewriter("listpeers", + "example:listpeers#2", + [{"peers": [{}, + {"netaddr": ["127.0.0.1:54321"]}, + {}]}]), + # FIXME: SCB backup shouldn't save port for incoming connections + Rewriter("staticbackup", + "example:staticbackup#1", + [{"scb": canned_scbs}]), + # FIXME: Why do these vary? + Rewriter("listhtlcs", + "example:listhtlcs#1", + [{"htlcs": [{}] * 10 + [{"updated_index": 96}] + [{}] * 8 + [{"updated_index": 170}] + [{}] * 3}]), + # FIXME: These due to l1's different channel ordering maybe? + Rewriter("listpeerchannels", + "example:listpeerchannels#1", + [{"channels": [{"scratch_txid": "f8042b0e29badb6450d57a8065a9c05d1a86cb8cd43d775d23bd3c8e3d180bd7"}]}]), + Rewriter("listpeerchannels", + "example:listpeerchannels#2", + [{"channels": [{"scratch_txid": "f8042b0e29badb6450d57a8065a9c05d1a86cb8cd43d775d23bd3c8e3d180bd7"}, {}, {}]}]), + ] + + # Canonicalize recover_channel request: + examples['listconfigs']['examples'][0]['request']['params']['scb'] = canned_scbs + + # Canonicalize plugin paths, order of plugin options + lc_response = examples['listconfigs']['examples'][2]['response'] + lc_response['configs'] = fixup_listconfigs(lc_response['configs']) + + # Sort by scid as an arbitrary field. + lpc_response = examples['listpeerchannels']['examples'][1]['response'] + lpc_response['channels'].sort(key=lambda c: c['short_channel_id']) + + for rw in rewrites: + rewrite_example(examples, rw) def update_examples_in_schema_files(): """Update examples in JSON schema files""" + rewrite_examples(EXAMPLES_JSON) try: - # For testing - if os.path.exists(TEMP_EXAMPLES_FILE): - open(TEMP_EXAMPLES_FILE, 'w').close() - with open(TEMP_EXAMPLES_FILE, 'w+', encoding='utf-8') as file: - json.dump({'new_values_list': NEW_VALUES_LIST, 'replace_response_values': REPLACE_RESPONSE_VALUES[4:], 'examples_json': EXAMPLES_JSON}, file, indent=2, ensure_ascii=False) - updated_examples = {} for method, method_examples in EXAMPLES_JSON.items(): try: @@ -369,7 +225,7 @@ def update_examples_in_schema_files(): logger.info(f'Updating examples for {method} in file {file_path}') with open(file_path, 'r+', encoding='utf-8') as file: data = json.load(file) - updated_examples[method] = replace_values_in_json(method_examples, 'examples')['examples'] + updated_examples[method] = method_examples['examples'] data['examples'] = updated_examples[method] file.seek(0) json.dump(data, file, indent=2, ensure_ascii=False) @@ -385,12 +241,6 @@ def update_examples_in_schema_files(): logger.error(f'Error updating examples in schema files: {e}') raise - # For testing - if os.path.exists(TEMP_EXAMPLES_FILE): - open(TEMP_EXAMPLES_FILE, 'w').close() - with open(TEMP_EXAMPLES_FILE, 'w+', encoding='utf-8') as file: - json.dump({'new_values_list': NEW_VALUES_LIST, 'replace_response_values': REPLACE_RESPONSE_VALUES[4:], 'examples_json': EXAMPLES_JSON, 'updated_examples_json': updated_examples}, file, indent=2, ensure_ascii=False) - logger.info(f'Updated All Examples in Schema Files!') return None @@ -420,7 +270,7 @@ def update_example(node, method, params, response=None, description=None): return response -def setup_test_nodes(node_factory, bitcoind): +def setup_test_nodes(node_factory, bitcoind, regenerate_blockchain): """Sets up six test nodes for various transaction scenarios: l1, l2, l3 for transactions and forwards l4 for complex transactions (sendpayment, keysend, renepay) @@ -451,6 +301,8 @@ def setup_test_nodes(node_factory, bitcoind): 'log-level': 'debug', 'broken_log': '.*', 'dev-bitcoind-poll': 3, # Default 1; increased to avoid rpc failures + 'no_entropy': True, + 'base_port': BASE_PORTNUM, }.copy() for i in range(6) ] @@ -459,27 +311,32 @@ def setup_test_nodes(node_factory, bitcoind): # Write the data/p2sh_wallet_hsm_secret to the hsm_path, so node can spend funds at p2sh_wrapped_addr p2sh_wrapped_addr = '2N2V4ee2vMkiXe5FSkRqFjQhiS9hKqNytv3' update_example(node=l1, method='upgradewallet', params={}) - txid = bitcoind.rpc.sendtoaddress(p2sh_wrapped_addr, 20000000 / 10 ** 8) - bitcoind.generate_block(1) + txid = bitcoind.send_and_mine_block(p2sh_wrapped_addr, 20000000) + sync_blockheight(bitcoind, [l1, l2, l3, l4, l5, l6]) l1.daemon.wait_for_log('Owning output .* txid {} CONFIRMED'.format(txid)) # Doing it with 'reserved ok' should have 1. We use a big feerate so we can get over the RBF hump - upgrade_res2 = update_example(node=l1, method='upgradewallet', params={'feerate': 'urgent', 'reservedok': True}) + update_example(node=l1, method='upgradewallet', params={'feerate': 'urgent', 'reservedok': True}) # Fund node wallets for further transactions fund_nodes = [l1, l2, l3, l4, l5] for node in fund_nodes: node.fundwallet(FUND_WALLET_AMOUNT_SAT) # Connect nodes and fund channels - getinfo_res2 = update_example(node=l2, method='getinfo', params={}) + sync_blockheight(bitcoind, [l1, l2, l3, l4, l5, l6]) + update_example(node=l2, method='getinfo', params={}) update_example(node=l1, method='connect', params={'id': l2.info['id'], 'host': 'localhost', 'port': l2.daemon.port}) update_example(node=l2, method='connect', params={'id': l3.info['id'], 'host': 'localhost', 'port': l3.daemon.port}) l3.rpc.connect(l4.info['id'], 'localhost', l4.port) l2.rpc.connect(l5.info['id'], 'localhost', l5.port) c12, c12res = l1.fundchannel(l2, FUND_CHANNEL_AMOUNT_SAT) + sync_blockheight(bitcoind, [l1, l2, l3, l4, l5, l6]) c23, c23res = l2.fundchannel(l3, FUND_CHANNEL_AMOUNT_SAT) + sync_blockheight(bitcoind, [l1, l2, l3, l4, l5, l6]) c34, c34res = l3.fundchannel(l4, FUND_CHANNEL_AMOUNT_SAT) + sync_blockheight(bitcoind, [l1, l2, l3, l4, l5, l6]) c25, c25res = l2.fundchannel(l5, announce_channel=False) mine_funding_to_announce(bitcoind, [l1, l2, l3, l4]) + sync_blockheight(bitcoind, [l1, l2, l3, l4, l5, l6]) l1.wait_channel_active(c12) l1.wait_channel_active(c23) l1.wait_channel_active(c34) @@ -488,42 +345,6 @@ def setup_test_nodes(node_factory, bitcoind): l2.rpc.pay(l3.rpc.invoice('500000sat', 'lbl balance l2 to l3', 'description send some sats l2 to l3')['bolt11']) l2.rpc.pay(l5.rpc.invoice('500000sat', 'lbl balance l2 to l5', 'description send some sats l2 to l5')['bolt11']) l3.rpc.pay(l4.rpc.invoice('500000sat', 'lbl balance l3 to l4', 'description send some sats l3 to l4')['bolt11']) - REPLACE_RESPONSE_VALUES.extend([ - {'data_keys': ['any', 'id', 'pubkey', 'destination'], 'original_value': l1.info['id'], 'new_value': NEW_VALUES_LIST['l1_id']}, - {'data_keys': ['any', 'id', 'pubkey', 'destination'], 'original_value': l2.info['id'], 'new_value': NEW_VALUES_LIST['l2_id']}, - {'data_keys': ['any', 'id', 'pubkey', 'destination'], 'original_value': l3.info['id'], 'new_value': NEW_VALUES_LIST['l3_id']}, - {'data_keys': ['any', 'id', 'pubkey', 'destination'], 'original_value': l4.info['id'], 'new_value': NEW_VALUES_LIST['l4_id']}, - {'data_keys': ['any', 'id', 'pubkey', 'destination'], 'original_value': l5.info['id'], 'new_value': NEW_VALUES_LIST['l5_id']}, - {'data_keys': ['alias'], 'original_value': l1.info['alias'], 'new_value': NEW_VALUES_LIST['l1_alias']}, - {'data_keys': ['netaddr'], 'original_value': [f'127.0.0.1:{l1.info["binding"][0]["port"]}'], 'new_value': [NEW_VALUES_LIST['l1_addr']]}, - {'data_keys': ['alias'], 'original_value': l2.info['alias'], 'new_value': NEW_VALUES_LIST['l2_alias']}, - {'data_keys': ['port'], 'original_value': l2.info['binding'][0]['port'], 'new_value': NEW_VALUES_LIST['l2_port']}, - {'data_keys': ['netaddr'], 'original_value': [f'127.0.0.1:{l2.info["binding"][0]["port"]}'], 'new_value': [NEW_VALUES_LIST['l2_addr']]}, - {'data_keys': ['version'], 'original_value': getinfo_res2['version'], 'new_value': CLN_VERSION}, - {'data_keys': ['blockheight'], 'original_value': getinfo_res2['blockheight'], 'new_value': NEW_VALUES_LIST['blockheight_110']}, - {'data_keys': ['alias'], 'original_value': l3.info['alias'], 'new_value': NEW_VALUES_LIST['l3_alias']}, - {'data_keys': ['port'], 'original_value': l3.info['binding'][0]['port'], 'new_value': NEW_VALUES_LIST['l3_port']}, - {'data_keys': ['addr'], 'original_value': f'127.0.0.1:{l3.info["binding"][0]["port"]}', 'new_value': NEW_VALUES_LIST['l3_addr']}, - {'data_keys': ['netaddr'], 'original_value': [f'127.0.0.1:{l3.info["binding"][0]["port"]}'], 'new_value': [NEW_VALUES_LIST['l3_addr']]}, - {'data_keys': ['alias'], 'original_value': l4.info['alias'], 'new_value': NEW_VALUES_LIST['l4_alias']}, - {'data_keys': ['netaddr'], 'original_value': [f'127.0.0.1:{l4.info["binding"][0]["port"]}'], 'new_value': [NEW_VALUES_LIST['l4_addr']]}, - {'data_keys': ['any', 'scid', 'channel', 'short_channel_id', 'in_channel'], 'original_value': c12, 'new_value': NEW_VALUES_LIST['c12']}, - {'data_keys': ['netaddr'], 'original_value': [f'127.0.0.1:{l5.info["binding"][0]["port"]}'], 'new_value': [NEW_VALUES_LIST['l5_addr']]}, - {'data_keys': ['netaddr'], 'original_value': [f'127.0.0.1:{l6.info["binding"][0]["port"]}'], 'new_value': [NEW_VALUES_LIST['l6_addr']]}, - {'data_keys': ['txid', 'funding_txid'], 'original_value': c12res['txid'], 'new_value': NEW_VALUES_LIST['c12_txid']}, - {'data_keys': ['channel_id', 'account'], 'original_value': c12res['channel_id'], 'new_value': NEW_VALUES_LIST['c12_channel_id']}, - {'data_keys': ['scid', 'channel', 'short_channel_id', 'id', 'out_channel'], 'original_value': c23, 'new_value': NEW_VALUES_LIST['c23']}, - {'data_keys': ['txid'], 'original_value': c23res['txid'], 'new_value': NEW_VALUES_LIST['c23_txid']}, - {'data_keys': ['channel_id', 'account', 'origin', 'originating_account'], 'original_value': c23res['channel_id'], 'new_value': NEW_VALUES_LIST['c23_channel_id']}, - {'data_keys': ['scid', 'channel', 'short_channel_id'], 'original_value': c34, 'new_value': NEW_VALUES_LIST['c34']}, - {'data_keys': ['txid'], 'original_value': c34res['txid'], 'new_value': NEW_VALUES_LIST['c34_txid']}, - {'data_keys': ['channel_id', 'account', 'origin'], 'original_value': c34res['channel_id'], 'new_value': NEW_VALUES_LIST['c34_channel_id']}, - {'data_keys': ['scid', 'channel', 'short_channel_id', 'id'], 'original_value': c25, 'new_value': NEW_VALUES_LIST['c25']}, - {'data_keys': ['channel_id', 'account'], 'original_value': c25res['channel_id'], 'new_value': NEW_VALUES_LIST['c25_channel_id']}, - {'data_keys': ['tx'], 'original_value': upgrade_res2['tx'], 'new_value': NEW_VALUES_LIST['upgrade_tx']}, - {'data_keys': ['txid'], 'original_value': upgrade_res2['txid'], 'new_value': NEW_VALUES_LIST['upgrade_txid']}, - {'data_keys': ['initialpsbt', 'psbt', 'signed_psbt'], 'original_value': upgrade_res2['psbt'], 'new_value': NEW_VALUES_LIST['upgrade_psbt_1']}, - ]) return l1, l2, l3, l4, l5, l6, c12, c23, c25 except Exception as e: logger.error(f'Error in setting up nodes: {e}') @@ -539,10 +360,10 @@ def generate_transactions_examples(l1, l2, l3, l4, l5, c25, bitcoind): route_l1_l3 = update_example(node=l1, method='getroute', params={'id': l3.info['id'], 'amount_msat': 10**4, 'riskfactor': 1})['route'] inv_l32 = update_example(node=l3, method='invoice', params={'amount_msat': '50000msat', 'label': 'lbl_l32', 'description': 'l32 description'}) update_example(node=l2, method='getroute', params={'id': l4.info['id'], 'amount_msat': 500000, 'riskfactor': 10, 'cltv': 9})['route'] - sendpay_res1 = update_example(node=l1, method='sendpay', params={'route': route_l1_l3, 'payment_hash': inv_l31['payment_hash'], 'payment_secret': inv_l31['payment_secret']}) - waitsendpay_res1 = update_example(node=l1, method='waitsendpay', params={'payment_hash': inv_l31['payment_hash']}) - keysend_res1 = update_example(node=l1, method='keysend', params={'destination': l3.info['id'], 'amount_msat': 10000}) - keysend_res2 = update_example(node=l1, method='keysend', params={'destination': l4.info['id'], 'amount_msat': 10000000, 'extratlvs': {'133773310': '68656c6c6f776f726c64', '133773312': '66696c7465726d65'}}) + update_example(node=l1, method='sendpay', params={'route': route_l1_l3, 'payment_hash': inv_l31['payment_hash'], 'payment_secret': inv_l31['payment_secret']}) + update_example(node=l1, method='waitsendpay', params={'payment_hash': inv_l31['payment_hash']}) + update_example(node=l1, method='keysend', params={'destination': l3.info['id'], 'amount_msat': 10000}) + update_example(node=l1, method='keysend', params={'destination': l4.info['id'], 'amount_msat': 10000000, 'extratlvs': {'133773310': '68656c6c6f776f726c64', '133773312': '66696c7465726d65'}}) scid = only_one([channel for channel in l2.rpc.listpeerchannels()['channels'] if channel['peer_id'] == l3.info['id']])['alias']['remote'] routehints = [[{ 'scid': scid, @@ -551,27 +372,20 @@ def generate_transactions_examples(l1, l2, l3, l4, l5, c25, bitcoind): 'feeprop': 10, 'expirydelta': 9, }]] - example_routehints = [[{ - 'scid': NEW_VALUES_LIST['c23'], - 'id': NEW_VALUES_LIST['l2_id'], - 'feebase': '1msat', - 'feeprop': 10, - 'expirydelta': 9, - }]] - keysend_res3 = update_example(node=l1, method='keysend', params={'destination': l3.info['id'], 'amount_msat': 10000, 'routehints': routehints}) + update_example(node=l1, method='keysend', params={'destination': l3.info['id'], 'amount_msat': 10000, 'routehints': routehints}) inv_l11 = l1.rpc.invoice('10000msat', 'lbl_l11', 'l11 description') inv_l21 = l2.rpc.invoice('any', 'lbl_l21', 'l21 description') inv_l22 = l2.rpc.invoice('200000msat', 'lbl_l22', 'l22 description') inv_l33 = l3.rpc.invoice('100000msat', 'lbl_l33', 'l33 description') inv_l34 = l3.rpc.invoice(4000, 'failed', 'failed description') - pay_res1 = update_example(node=l1, method='pay', params=[inv_l32['bolt11']]) - pay_res2 = update_example(node=l2, method='pay', params={'bolt11': inv_l33['bolt11']}) + update_example(node=l1, method='pay', params=[inv_l32['bolt11']]) + update_example(node=l2, method='pay', params={'bolt11': inv_l33['bolt11']}) inv_l41 = l4.rpc.invoice('10000msat', 'test_xpay_simple', 'test_xpay_simple bolt11') - xpay_res1 = update_example(node=l1, method='xpay', params=[inv_l41['bolt11']]) + update_example(node=l1, method='xpay', params=[inv_l41['bolt11']]) offer_l11 = l1.rpc.offer('any') inv_l14 = l1.rpc.fetchinvoice(offer_l11['bolt12'], '1000msat') - xpay_res2 = update_example(node=l1, method='xpay', params={'invstring': inv_l14['invoice']}) + update_example(node=l1, method='xpay', params={'invstring': inv_l14['invoice']}) update_example(node=l1, method='injectonionmessage', params={'message': '0002cb7cd2001e3c670d64135542dcefdf4a3f590eb142cee9277b317848471906caeabe4afeae7f4e31f6ca9c119b643d5369c5e55f892f205469a185f750697124a2bb7ccea1245ec12d76340bcf7371ba6d1c9ddfe09b4153fce524417c14a594fdbb5e7c698a5daffe77db946727a38711be2ecdebdd347d2a9f990810f2795b3c39b871d7c72a11534bd388ca2517630263d96d8cc72d146bae800638066175c85a8e8665160ea332ed7d27efc31c960604d61c3f83801c25cbb69ae3962c2ef13b1fa9adc8dcbe3dc8d9a5e27ff5669e076b02cafef8f2c88fc548e03642180d57606386ad6ce27640339747d40f26eb5b9e93881fc8c16d5896122032b64bb5f1e4be6f41f5fa4dbd7851989aeccd80b2d5f6f25427f171964146185a8eaa57891d91e49a4d378743231e19edd5994c3118c9a415958a5d9524a6ecc78c0205f5c0059a7fbcf1abad706a189b712476d112521c9a4650d0ff09890536acae755a2b07d00811044df28b288d3dc2d5ae3f8bf3cf7a2950e2167105dfad0fb8398ef08f36abcdb1bfd6aca3241c33810f0750f35bdfb7c60b1759275b7704ab1bc8f3ea375b3588eab10e4f948f12fe0a3c77b67bebeedbcced1de0f0715f9959e5497cda5f8f6ab76c15b3dcc99956465de1bf2855338930650f8e8e8c391d9bb8950125dd60d8289dade0556d9dc443761983e26adcc223412b756e2fd9ad64022859b6cab20e8ffc3cf39ae6045b2c3338b1145ee3719a098e58c425db764d7f9a5034dbb730c20202f79bc3c53fab78ecd530aa0e8f7698c9ea53cb96dc9c639282c362d31177c5b81979f46f2db6090b8e171db47287523f28c462e35ef489b51426387f2709c342083968153b5f8a51cd5716b38106bb0f21c5ccfc28dd7c74b71c8367ae8ca348f66a7996bbc535076a1f65d9109658ec042257ca7523488fb1807dc8bec42739ccae066739cf58083b4e2c65e52e1747a6ec2aa26338bb6f2c3195a2b160e26dec70a2cfde269fa7c10c45d346a8bcc313bb618324edadc0291d15f4dc00ca3a7ad7131045fdf6978ba52178f4699525efcb8d96561630e2f28eaa97c66c38c66301b6c6f0124b550db620b09f35b9d45d1441cab7d93be5e3c39b9becfab7f8d05dd3a7a6e27a1d3f23f1dd01e967f5206600619f75439181848f7f4148216c11314b4eaf64c28c268ad4b33ea821d57728e9a9e9e1b6c4bcf35d14958295fc5f92bd6846f33c46f5fa20f569b25bc916b94e554f27a37448f873497e13baef8c740a7587828cc4136dd21b8584e6983e376e91663f8f91559637738b400fb49940fc2df299dfd448604b63c2f5d1f1ec023636f3baf2be5730364afd38191726a7c0d9477b1f231da4d707aabc6ad8036488181dbdb16b48500f2333036629004504d3524f87ece6afb04c4ba03ea6fce069e98b1ab7bf51f237d7c0f40756744dd703c6023b6461b90730f701404e8dddfaff40a9a60e670be7729556241fc9cc8727a586e38b71616bff8772c873b37d920d51a6ad31219a24b12f268545e2cfeb9e662236ab639fd4ecf865612678471ff7b320c934a13ca1f2587fc6a90f839c3c81c0ff84b51330820431418918e8501844893b53c1e0de46d51a64cb769974a996c58ff06683ebdc46fd4bb8e857cecebab785a351c64fd486fb648d25936cb09327b70d22c243035d4343fa3d2d148e2df5cd928010e34ae42b0333e698142050d9405b39f3aa69cecf8a388afbc7f199077b911cb829480f0952966956fe57d815f0d2467f7b28af11f8820645b601c0e1ad72a4684ebc60287d23ec3502f4c65ca44f5a4a0d79e3a5718cd23e7538cb35c57673fb9a1173e5526e767768117c7fefc2e3718f44f790b27e61995fecc6aef05107e75355be301ebe1500c147bb655a159f', 'path_key': '03ccf3faa19e8d124f27d495e3359f4002a6622b9a02df9a51b609826d354cda52'}) @@ -582,23 +396,20 @@ def generate_transactions_examples(l1, l2, l3, l4, l5, c25, bitcoind): inv = l4.rpc.invoice(amt, "lbl l4", "desc l4") first_hop = route[0] sendonion_hops = [] - example_hops = [] i = 1 for h, n in zip(route[:-1], route[1:]): sendonion_hops.append({'pubkey': h['id'], 'payload': serialize_payload_tlv(amt, 18 + 6, n['channel'], blockheight).hex()}) - example_hops.append({'pubkey': NEW_VALUES_LIST['l2_id'] if i == 1 else NEW_VALUES_LIST['l3_id'], 'payload': 'payload0' + ((str(i) + '0') * 13)}) i += 1 sendonion_hops.append({'pubkey': route[-1]['id'], 'payload': serialize_payload_final_tlv(amt, 18, amt, blockheight, inv['payment_secret']).hex()}) - example_hops.append({'pubkey': NEW_VALUES_LIST['l4_id'], 'payload': 'payload0' + ((str(i) + '0') * 13)}) onion_res1 = update_example(node=l1, method='createonion', params={'hops': sendonion_hops, 'assocdata': inv['payment_hash']}) - onion_res2 = update_example(node=l1, method='createonion', params={'hops': sendonion_hops, 'assocdata': inv['payment_hash'], 'session_key': '41' * 32}) - sendonion_res1 = update_example(node=l1, method='sendonion', params={'onion': onion_res1['onion'], 'first_hop': first_hop, 'payment_hash': inv['payment_hash']}) + update_example(node=l1, method='createonion', params={'hops': sendonion_hops, 'assocdata': inv['payment_hash'], 'session_key': '41' * 32}) + update_example(node=l1, method='sendonion', params={'onion': onion_res1['onion'], 'first_hop': first_hop, 'payment_hash': inv['payment_hash']}) # Close channels examples - close_res1 = update_example(node=l2, method='close', params={'id': l3.info['id'], 'unilateraltimeout': 1}) + update_example(node=l2, method='close', params={'id': l3.info['id'], 'unilateraltimeout': 1}) address_l41 = l4.rpc.newaddr() - close_res2 = update_example(node=l3, method='close', params={'id': l4.info['id'], 'destination': address_l41['bech32']}) - bitcoind.generate_block(1) + update_example(node=l3, method='close', params={'id': l4.info['id'], 'destination': address_l41['bech32']}) + bitcoind.generate_block(1, wait_for_mempool=2) sync_blockheight(bitcoind, [l1, l2, l3, l4]) # Channel 2 to 3 is closed, l1->l3 payment will fail where `failed` forward will be saved on l2 @@ -614,21 +425,27 @@ def generate_transactions_examples(l1, l2, l3, l4, l5, c25, bitcoind): update_example(node=l2, method='setchannel', params={'id': c23_2, 'ignorefeelimits': True}) update_example(node=l2, method='setchannel', params={'id': c25, 'feebase': 4000, 'feeppm': 300, 'enforcedelay': 0}) + # Those involved in the channel close will instaclose, so listchannels will differ. + # Make sure everyone sees those new channels though. + for n in [l1, l2, l3, l4]: + wait_for(lambda: len(n.rpc.listchannels(c23_2)['channels']) == 2) + wait_for(lambda: len(n.rpc.listchannels(c34_2)['channels']) == 2) + # Some more invoices for signing and preapproving inv_l12 = l1.rpc.invoice(1000, 'label inv_l12', 'description inv_l12') inv_l24 = l2.rpc.invoice(123000, 'label inv_l24', 'description inv_l24', 3600) inv_l25 = l2.rpc.invoice(124000, 'label inv_l25', 'description inv_l25', 3600) inv_l26 = l2.rpc.invoice(125000, 'label inv_l26', 'description inv_l26', 3600) - signinv_res1 = update_example(node=l2, method='signinvoice', params={'invstring': inv_l12['bolt11']}) - signinv_res2 = update_example(node=l3, method='signinvoice', params=[inv_l26['bolt11']]) + update_example(node=l2, method='signinvoice', params={'invstring': inv_l12['bolt11']}) + update_example(node=l3, method='signinvoice', params=[inv_l26['bolt11']]) update_example(node=l1, method='preapprovekeysend', params={'destination': l2.info['id'], 'payment_hash': '00' * 32, 'amount_msat': 1000}) update_example(node=l5, method='preapprovekeysend', params=[l5.info['id'], '01' * 32, 2000]) update_example(node=l1, method='preapproveinvoice', params={'bolt11': inv_l24['bolt11']}) update_example(node=l1, method='preapproveinvoice', params=[inv_l25['bolt11']]) inv_req = update_example(node=l2, method='invoicerequest', params={'amount': 1000000, 'description': 'Simple test'}) - sendinvoice_res1 = update_example(node=l1, method='sendinvoice', params={'invreq': inv_req['bolt12'], 'label': 'test sendinvoice'}) + update_example(node=l1, method='sendinvoice', params={'invreq': inv_req['bolt12'], 'label': 'test sendinvoice'}) inv_l13 = l1.rpc.invoice(amount_msat=100000, label='lbl_l13', description='l13 description', preimage='01' * 32) - createinv_res1 = update_example(node=l2, method='createinvoice', params={'invstring': inv_l13['bolt11'], 'label': 'lbl_l13', 'preimage': '01' * 32}) + update_example(node=l2, method='createinvoice', params={'invstring': inv_l13['bolt11'], 'label': 'lbl_l13', 'preimage': '01' * 32}) inv_l27 = l2.rpc.invoice(amt, 'test_injectpaymentonion1', 'test injectpaymentonion1 description') injectpaymentonion_hops = [ {'pubkey': l1.info['id'], @@ -636,109 +453,14 @@ def generate_transactions_examples(l1, l2, l3, l4, l5, c25, bitcoind): {'pubkey': l2.info['id'], 'payload': serialize_payload_final_tlv(1000, 18, 1000, blockheight, inv_l27['payment_secret']).hex()}] onion_res3 = l1.rpc.createonion(hops=injectpaymentonion_hops, assocdata=inv_l27['payment_hash']) - injectpaymentonion_res1 = update_example(node=l1, method='injectpaymentonion', params={ + update_example(node=l1, method='injectpaymentonion', params={ 'onion': onion_res3['onion'], 'payment_hash': inv_l27['payment_hash'], 'amount_msat': 1000, 'cltv_expiry': blockheight + 18 + 6, 'partid': 1, 'groupid': 0}) - bip353_result = update_example(node=l1, method='fetchbip353', params={'address': 'send.some@satsto.me'}, description=['Example of fetching BIP-353 payment details.']) - REPLACE_RESPONSE_VALUES.extend([ - {'data_keys': ['destination'], 'original_value': address_l41['bech32'], 'new_value': NEW_VALUES_LIST['destination_6']}, - {'data_keys': ['tx'], 'original_value': close_res1['tx'], 'new_value': NEW_VALUES_LIST['close1_tx']}, - {'data_keys': ['txs'], 'original_value': close_res1['txs'], 'new_value': [NEW_VALUES_LIST['close1_tx']]}, - {'data_keys': ['txid', 'spending_txid'], 'original_value': close_res1['txid'], 'new_value': NEW_VALUES_LIST['close1_txid']}, - {'data_keys': ['txids'], 'original_value': close_res1['txids'], 'new_value': [NEW_VALUES_LIST['close1_txid']]}, - {'data_keys': ['tx'], 'original_value': close_res2['tx'], 'new_value': NEW_VALUES_LIST['close2_tx']}, - {'data_keys': ['txs'], 'original_value': close_res2['txs'], 'new_value': [NEW_VALUES_LIST['close2_tx']]}, - {'data_keys': ['txid'], 'original_value': close_res2['txid'], 'new_value': NEW_VALUES_LIST['close2_txid']}, - {'data_keys': ['txids'], 'original_value': close_res2['txids'], 'new_value': [NEW_VALUES_LIST['close2_txid']]}, - {'data_keys': ['any', 'bolt11'], 'original_value': createinv_res1['bolt11'], 'new_value': NEW_VALUES_LIST['bolt11_l21']}, - {'data_keys': ['payment_hash'], 'original_value': createinv_res1['payment_hash'], 'new_value': NEW_VALUES_LIST['payment_hash_l21']}, - {'data_keys': ['expires_at'], 'original_value': createinv_res1['expires_at'], 'new_value': NEW_VALUES_LIST['time_at_900']}, - {'data_keys': ['payment_hash'], 'original_value': inv_l31['payment_hash'], 'new_value': NEW_VALUES_LIST['payment_hash_l31']}, - {'data_keys': ['any', 'bolt11'], 'original_value': inv_l31['bolt11'], 'new_value': NEW_VALUES_LIST['bolt11_l31']}, - {'data_keys': ['payment_secret'], 'original_value': inv_l31['payment_secret'], 'new_value': NEW_VALUES_LIST['payment_secret_l31']}, - {'data_keys': ['expires_at'], 'original_value': inv_l31['expires_at'], 'new_value': NEW_VALUES_LIST['time_at_900']}, - {'data_keys': ['payment_hash'], 'original_value': inv_l32['payment_hash'], 'new_value': 'paymenthashinvl0' + ('3200' * 12)}, - {'data_keys': ['any', 'bolt11'], 'original_value': inv_l32['bolt11'], 'new_value': 'lnbcrt100n1pnt2' + ('bolt11invl032000000000' * 10)}, - {'data_keys': ['payment_secret'], 'original_value': inv_l32['payment_secret'], 'new_value': 'paymentsecretinvl000' + ('3200' * 11)}, - {'data_keys': ['expires_at'], 'original_value': inv_l32['expires_at'], 'new_value': NEW_VALUES_LIST['time_at_900']}, - {'data_keys': ['payment_hash'], 'original_value': inv_l11['payment_hash'], 'new_value': NEW_VALUES_LIST['payment_hash_l11']}, - {'data_keys': ['any', 'bolt11'], 'original_value': inv_l11['bolt11'], 'new_value': NEW_VALUES_LIST['bolt11_l11']}, - {'data_keys': ['payment_secret'], 'original_value': inv_l11['payment_secret'], 'new_value': NEW_VALUES_LIST['payment_secret_l11']}, - {'data_keys': ['expires_at'], 'original_value': inv_l11['expires_at'], 'new_value': NEW_VALUES_LIST['time_at_900']}, - {'data_keys': ['payment_hash'], 'original_value': inv_l21['payment_hash'], 'new_value': NEW_VALUES_LIST['payment_hash_l21']}, - {'data_keys': ['any', 'bolt11'], 'original_value': inv_l21['bolt11'], 'new_value': NEW_VALUES_LIST['bolt11_l21']}, - {'data_keys': ['payment_hash'], 'original_value': inv_l22['payment_hash'], 'new_value': NEW_VALUES_LIST['payment_hash_l22']}, - {'data_keys': ['any', 'bolt11'], 'original_value': inv_l22['bolt11'], 'new_value': NEW_VALUES_LIST['bolt11_l22']}, - {'data_keys': ['payment_secret'], 'original_value': inv_l22['payment_secret'], 'new_value': NEW_VALUES_LIST['payment_secret_l22']}, - {'data_keys': ['payment_hash'], 'original_value': inv_l33['payment_hash'], 'new_value': NEW_VALUES_LIST['payment_hash_l33']}, - {'data_keys': ['any', 'bolt11'], 'original_value': inv_l33['bolt11'], 'new_value': NEW_VALUES_LIST['bolt11_l33']}, - {'data_keys': ['payment_hash'], 'original_value': inv_l34['payment_hash'], 'new_value': NEW_VALUES_LIST['payment_hash_l34']}, - {'data_keys': ['any', 'bolt11'], 'original_value': inv_l34['bolt11'], 'new_value': NEW_VALUES_LIST['bolt11_l34']}, - {'data_keys': ['any', 'bolt11'], 'original_value': inv_l41['bolt11'], 'new_value': NEW_VALUES_LIST['bolt11_l41']}, - {'data_keys': ['invstring'], 'original_value': inv_l14['invoice'], 'new_value': NEW_VALUES_LIST['invoice_3']}, - {'data_keys': ['hops'], 'original_value': sendonion_hops, 'new_value': example_hops}, - {'data_keys': ['any', 'assocdata'], 'original_value': inv['payment_hash'], 'new_value': NEW_VALUES_LIST['assocdata_1']}, - {'data_keys': ['onion'], 'original_value': onion_res1['onion'], 'new_value': NEW_VALUES_LIST['onion_1']}, - {'data_keys': ['shared_secrets'], 'original_value': onion_res1['shared_secrets'], 'new_value': NEW_VALUES_LIST['shared_secrets_1']}, - {'data_keys': ['any', 'onion'], 'original_value': onion_res2['onion'], 'new_value': NEW_VALUES_LIST['onion_2']}, - {'data_keys': ['shared_secrets'], 'original_value': onion_res2['shared_secrets'], 'new_value': NEW_VALUES_LIST['shared_secrets_2']}, - {'data_keys': ['onion'], 'original_value': onion_res3['onion'], 'new_value': NEW_VALUES_LIST['onion_3']}, - {'data_keys': ['any', 'bolt11'], 'original_value': inv_l27['bolt11'], 'new_value': NEW_VALUES_LIST['bolt11_l27']}, - {'data_keys': ['payment_hash'], 'original_value': inv_l27['payment_hash'], 'new_value': NEW_VALUES_LIST['payment_hash_l27']}, - {'data_keys': ['payment_preimage'], 'original_value': injectpaymentonion_res1['payment_preimage'], 'new_value': NEW_VALUES_LIST['payment_preimage_io_1']}, - {'data_keys': ['created_at'], 'original_value': injectpaymentonion_res1['created_at'], 'new_value': NEW_VALUES_LIST['time_at_800']}, - {'data_keys': ['completed_at'], 'original_value': injectpaymentonion_res1['completed_at'], 'new_value': NEW_VALUES_LIST['time_at_900']}, - {'data_keys': ['id', 'scid', 'channel', 'short_channel_id', 'out_channel'], 'original_value': c23_2, 'new_value': NEW_VALUES_LIST['c23_2']}, - {'data_keys': ['txid'], 'original_value': c23res2['txid'], 'new_value': NEW_VALUES_LIST['c23_2_txid']}, - {'data_keys': ['any', 'channel_id', 'account'], 'original_value': c23res2['channel_id'], 'new_value': NEW_VALUES_LIST['c23_2_channel_id']}, - {'data_keys': ['scid', 'channel', 'short_channel_id'], 'original_value': c34_2, 'new_value': NEW_VALUES_LIST['c34_2']}, - {'data_keys': ['txid'], 'original_value': c34res2['txid'], 'new_value': NEW_VALUES_LIST['c34_2_txid']}, - {'data_keys': ['channel_id', 'account'], 'original_value': c34res2['channel_id'], 'new_value': NEW_VALUES_LIST['c34_2_channel_id']}, - {'data_keys': ['any', 'bolt11'], 'original_value': inv_l12['bolt11'], 'new_value': NEW_VALUES_LIST['bolt11_l12']}, - {'data_keys': ['payment_hash'], 'original_value': inv_l24['payment_hash'], 'new_value': NEW_VALUES_LIST['payment_hash_l24']}, - {'data_keys': ['any', 'bolt11'], 'original_value': inv_l24['bolt11'], 'new_value': NEW_VALUES_LIST['bolt11_l24']}, - {'data_keys': ['expires_at'], 'original_value': inv_l24['expires_at'], 'new_value': NEW_VALUES_LIST['time_at_900']}, - {'data_keys': ['payment_hash'], 'original_value': inv_l25['payment_hash'], 'new_value': NEW_VALUES_LIST['payment_hash_l25']}, - {'data_keys': ['any', 'bolt11'], 'original_value': inv_l25['bolt11'], 'new_value': NEW_VALUES_LIST['bolt11_l25']}, - {'data_keys': ['payment_hash'], 'original_value': inv_l26['payment_hash'], 'new_value': NEW_VALUES_LIST['payment_hash_l26']}, - {'data_keys': ['any', 'bolt11'], 'original_value': inv_l26['bolt11'], 'new_value': NEW_VALUES_LIST['bolt11_l26']}, - {'data_keys': ['any', 'invstring', 'bolt11'], 'original_value': inv_l13['bolt11'], 'new_value': NEW_VALUES_LIST['bolt11_l13']}, - {'data_keys': ['invreq_id'], 'original_value': inv_req['invreq_id'], 'new_value': NEW_VALUES_LIST['invreq_id_1']}, - {'data_keys': ['any', 'bolt12', 'invreq'], 'original_value': inv_req['bolt12'], 'new_value': NEW_VALUES_LIST['bolt12_l21']}, - {'data_keys': ['payment_hash'], 'original_value': keysend_res1['payment_hash'], 'new_value': NEW_VALUES_LIST['payment_hash_key_1']}, - {'data_keys': ['created_at'], 'original_value': keysend_res1['created_at'], 'new_value': NEW_VALUES_LIST['time_at_800']}, - {'data_keys': ['payment_preimage'], 'original_value': keysend_res1['payment_preimage'], 'new_value': NEW_VALUES_LIST['payment_preimage_1']}, - {'data_keys': ['payment_hash'], 'original_value': keysend_res2['payment_hash'], 'new_value': NEW_VALUES_LIST['payment_hash_key_2']}, - {'data_keys': ['created_at'], 'original_value': keysend_res2['created_at'], 'new_value': NEW_VALUES_LIST['time_at_800']}, - {'data_keys': ['payment_preimage'], 'original_value': keysend_res2['payment_preimage'], 'new_value': NEW_VALUES_LIST['payment_preimage_2']}, - {'data_keys': ['payment_hash'], 'original_value': keysend_res3['payment_hash'], 'new_value': NEW_VALUES_LIST['payment_hash_key_3']}, - {'data_keys': ['created_at'], 'original_value': keysend_res3['created_at'], 'new_value': NEW_VALUES_LIST['time_at_800']}, - {'data_keys': ['payment_preimage'], 'original_value': keysend_res3['payment_preimage'], 'new_value': NEW_VALUES_LIST['payment_preimage_3']}, - {'data_keys': ['routehints'], 'original_value': routehints, 'new_value': example_routehints}, - {'data_keys': ['created_at'], 'original_value': pay_res1['created_at'], 'new_value': NEW_VALUES_LIST['time_at_800']}, - {'data_keys': ['payment_preimage'], 'original_value': pay_res1['payment_preimage'], 'new_value': NEW_VALUES_LIST['payment_preimage_ep_1']}, - {'data_keys': ['created_at'], 'original_value': pay_res2['created_at'], 'new_value': NEW_VALUES_LIST['time_at_800']}, - {'data_keys': ['payment_preimage'], 'original_value': pay_res2['payment_preimage'], 'new_value': NEW_VALUES_LIST['payment_preimage_ep_2']}, - {'data_keys': ['any', 'bolt12', 'invreq'], 'original_value': sendinvoice_res1['bolt12'], 'new_value': NEW_VALUES_LIST['bolt12_si_1']}, - {'data_keys': ['payment_hash'], 'original_value': sendinvoice_res1['payment_hash'], 'new_value': NEW_VALUES_LIST['payment_hash_si_1']}, - {'data_keys': ['payment_preimage'], 'original_value': sendinvoice_res1['payment_preimage'], 'new_value': NEW_VALUES_LIST['payments_preimage_i_1']}, - {'data_keys': ['paid_at'], 'original_value': sendinvoice_res1['paid_at'], 'new_value': NEW_VALUES_LIST['time_at_850']}, - {'data_keys': ['expires_at'], 'original_value': sendinvoice_res1['expires_at'], 'new_value': NEW_VALUES_LIST['time_at_900']}, - {'data_keys': ['created_at'], 'original_value': sendonion_res1['created_at'], 'new_value': NEW_VALUES_LIST['time_at_800']}, - {'data_keys': ['created_at'], 'original_value': sendpay_res1['created_at'], 'new_value': NEW_VALUES_LIST['time_at_800']}, - {'data_keys': ['any', 'bolt11'], 'original_value': signinv_res1['bolt11'], 'new_value': NEW_VALUES_LIST['bolt11_l66']}, - {'data_keys': ['any', 'bolt11'], 'original_value': signinv_res2['bolt11'], 'new_value': NEW_VALUES_LIST['bolt11_l67']}, - {'data_keys': ['payment_preimage'], 'original_value': waitsendpay_res1['payment_preimage'], 'new_value': NEW_VALUES_LIST['payments_preimage_w_1']}, - {'data_keys': ['created_at'], 'original_value': waitsendpay_res1['created_at'], 'new_value': NEW_VALUES_LIST['time_at_800']}, - {'data_keys': ['completed_at'], 'original_value': waitsendpay_res1['completed_at'], 'new_value': NEW_VALUES_LIST['time_at_900']}, - {'data_keys': ['payment_preimage'], 'original_value': xpay_res1['payment_preimage'], 'new_value': NEW_VALUES_LIST['payment_preimage_xp_1']}, - {'data_keys': ['payment_preimage'], 'original_value': xpay_res2['payment_preimage'], 'new_value': NEW_VALUES_LIST['payment_preimage_xp_2']}, - {'data_keys': ['proof'], 'original_value': bip353_result['proof'], 'new_value': NEW_VALUES_LIST['proof_1']}, - ]) + update_example(node=l1, method='fetchbip353', params={'address': 'send.some@satsto.me'}, description=['Example of fetching BIP-353 payment details.']) logger.info('Simple Transactions Done!') return c23_2, c23res2, c34_2, inv_l11, inv_l21, inv_l22, inv_l31, inv_l32, inv_l34 except Exception as e: @@ -780,30 +502,20 @@ def generate_runes_examples(l1, l2, l3): '- method/pay|pnameamount\\_msat<100000001', '- method/xpay|per=1day', '- method/xpay|pnameamount\\_msat<100000001']) - commando_res1 = update_example(node=l1, method='commando', params={'peer_id': l2.info['id'], 'rune': rune_l21['rune'], 'method': 'newaddr', 'params': {'addresstype': 'p2tr'}}) + update_example(node=l1, method='commando', params={'peer_id': l2.info['id'], 'rune': rune_l21['rune'], 'method': 'newaddr', 'params': {'addresstype': 'p2tr'}}) update_example(node=l1, method='commando', params={'peer_id': l2.info['id'], 'rune': rune_l23['rune'], 'method': 'listpeers', 'params': [l3.info['id']]}) inv_l23 = l2.rpc.invoice('any', 'lbl_l23', 'l23 description') - commando_res3 = update_example(node=l1, method='commando', params={'peer_id': l2.info['id'], 'rune': rune_l24['rune'], 'method': 'pay', 'params': {'bolt11': inv_l23['bolt11'], 'amount_msat': 9900}}) + update_example(node=l1, method='commando', params={'peer_id': l2.info['id'], 'rune': rune_l24['rune'], 'method': 'pay', 'params': {'bolt11': inv_l23['bolt11'], 'amount_msat': 9900}}) update_example(node=l2, method='checkrune', params={'nodeid': l2.info['id'], 'rune': rune_l22['rune'], 'method': 'listpeers', 'params': {}}) update_example(node=l2, method='checkrune', params={'nodeid': l2.info['id'], 'rune': rune_l24['rune'], 'method': 'pay', 'params': {'amount_msat': 9999}}) - showrunes_res1 = update_example(node=l2, method='showrunes', params={'rune': rune_l21['rune']}) - showrunes_res2 = update_example(node=l2, method='showrunes', params={}) + update_example(node=l2, method='showrunes', params={'rune': rune_l21['rune']}) + update_example(node=l2, method='showrunes', params={}) update_example(node=l2, method='blacklistrune', params={'start': 1}) update_example(node=l2, method='blacklistrune', params={'start': 0, 'end': 2}) update_example(node=l2, method='blacklistrune', params={'start': 3, 'end': 4}) update_example(node=l2, method='blacklistrune', params={'start': 3, 'relist': True}, description=['This undoes the blacklisting of rune 3 only']) - REPLACE_RESPONSE_VALUES.extend([ - {'data_keys': ['last_used'], 'original_value': showrunes_res1['runes'][0]['last_used'], 'new_value': NEW_VALUES_LIST['time_at_800']}, - {'data_keys': ['last_used'], 'original_value': showrunes_res2['runes'][1]['last_used'], 'new_value': NEW_VALUES_LIST['time_at_800']}, - {'data_keys': ['last_used'], 'original_value': showrunes_res2['runes'][2]['last_used'], 'new_value': NEW_VALUES_LIST['time_at_800']}, - {'data_keys': ['any', 'bolt11'], 'original_value': inv_l23['bolt11'], 'new_value': NEW_VALUES_LIST['bolt11_l23']}, - {'data_keys': ['p2tr'], 'original_value': commando_res1['p2tr'], 'new_value': NEW_VALUES_LIST['destination_7']}, - {'data_keys': ['created_at'], 'original_value': commando_res3['created_at'], 'new_value': NEW_VALUES_LIST['time_at_800']}, - {'data_keys': ['payment_hash'], 'original_value': commando_res3['payment_hash'], 'new_value': NEW_VALUES_LIST['payment_hash_cmd_pay_1']}, - {'data_keys': ['payment_preimage'], 'original_value': commando_res3['payment_preimage'], 'new_value': NEW_VALUES_LIST['payment_preimage_cmd_1']}, - ]) logger.info('Runes Done!') return rune_l21 except Exception as e: @@ -837,7 +549,7 @@ def generate_bookkeeper_examples(l2, l3, c23_2_chan_id): logger.info('Bookkeeper Start...') update_example(node=l2, method='funderupdate', params={}) update_example(node=l2, method='funderupdate', params={'policy': 'fixed', 'policy_mod': '50000sat', 'min_their_funding_msat': 1000, 'per_channel_min_msat': '1000sat', 'per_channel_max_msat': '500000sat', 'fund_probability': 100, 'fuzz_percent': 0, 'leases_only': False}) - bkprinspect_res1 = update_example(node=l2, method='bkpr-inspect', params={'account': c23_2_chan_id}) + update_example(node=l2, method='bkpr-inspect', params={'account': c23_2_chan_id}) update_example(node=l2, method='bkpr-dumpincomecsv', params=['koinly', 'koinly.csv']) bkpr_channelsapy_res1 = l2.rpc.bkpr_channelsapy() fields = [ @@ -865,113 +577,39 @@ def generate_bookkeeper_examples(l2, l3, c23_2_chan_id): update_example(node=l3, method='bkpr-editdescriptionbypaymentid', params={'payment_id': invoice['payment_id'], 'description': 'edited invoice description from description send some sats l2 to l3'}) # Try to edit a payment_id that does not exist update_example(node=l3, method='bkpr-editdescriptionbypaymentid', params={'payment_id': 'c000' + ('01' * 30), 'description': 'edited invoice description for non existing payment id'}) - editdescriptionbyoutpoint_res1 = update_example(node=l3, method='bkpr-editdescriptionbyoutpoint', params={'outpoint': utxo_event['outpoint'], 'description': 'edited utxo description'}) + update_example(node=l3, method='bkpr-editdescriptionbyoutpoint', params={'outpoint': utxo_event['outpoint'], 'description': 'edited utxo description'}) # Try to edit an outpoint that does not exist update_example(node=l3, method='bkpr-editdescriptionbyoutpoint', params={'outpoint': 'abcd' + ('02' * 30) + ':1', 'description': 'edited utxo description for non existing outpoint'}) - bkprlistbal_res1 = update_example(node=l3, method='bkpr-listbalances', params={}) + update_example(node=l3, method='bkpr-listbalances', params={}) bkprlistaccountevents_res1 = l3.rpc.bkpr_listaccountevents(c23_2_chan_id) - bkprlistaccountevents_res1['events'] = [next((event for event in bkprlistaccountevents_res1['events'] if event['tag'] == 'channel_open'), None)] - bkprlistaccountevents_res1 = update_list_responses(bkprlistaccountevents_res1, list_key='events') update_example(node=l3, method='bkpr-listaccountevents', params=[c23_2_chan_id], response=bkprlistaccountevents_res1) bkprlistaccountevents_res2 = l3.rpc.bkpr_listaccountevents() - external_event = None - wallet_event = None - channel_event = None - for bkprevent in bkprlistaccountevents_res2['events']: - event_seleted = None - if wallet_event is None and bkprevent['account'] == 'wallet': - bkprevent['blockheight'] = 141 - wallet_event = bkprevent - event_seleted = '01' - elif external_event is None and bkprevent['account'] == 'external' and bkprevent['origin'] == next((value['original_value'] for value in REPLACE_RESPONSE_VALUES if value['new_value'] == NEW_VALUES_LIST['c34_channel_id']), None): - bkprevent['blockheight'] = 142 - external_event = bkprevent - event_seleted = '02' - elif channel_event is None and bkprevent['account'] not in ['external', 'wallet']: - bkprevent['blockheight'] = 143 - channel_event = bkprevent - event_seleted = '03' - if event_seleted is not None: - bkpr_new_values = [ - {'data_keys': ['timestamp'], 'original_value': bkprevent['timestamp'], 'new_value': NEW_VALUES_LIST['time_at_850'] + (int(event_seleted) * 10000)}, - ] - if 'debit_msat' in bkprevent and bkprevent['debit_msat'] > 0: - bkpr_new_values.extend([ - {'data_keys': ['debit_msat'], 'original_value': bkprevent['debit_msat'], 'new_value': 200000000000}, - ]) - if 'txid' in bkprevent: - bkpr_new_values.extend([ - {'data_keys': ['txid'], 'original_value': bkprevent['txid'], 'new_value': 'txidbk' + (event_seleted * 29)}, - ]) - if 'outpoint' in bkprevent: - bkpr_new_values.extend([ - {'data_keys': ['outpoint'], 'original_value': bkprevent['outpoint'], 'new_value': 'txidbk' + (event_seleted * 29) + ':1'}, - ]) - if 'payment_id' in bkprevent: - bkpr_new_values.extend([ - {'data_keys': ['payment_id'], 'original_value': bkprevent['payment_id'], 'new_value': 'paymentidbk0' + (event_seleted * 26)}, - ]) - REPLACE_RESPONSE_VALUES.extend(bkpr_new_values) - if wallet_event and external_event and channel_event: - break - bkprlistaccountevents_res2['events'] = [event for event in [external_event, wallet_event, channel_event] if event is not None] update_example(node=l3, method='bkpr-listaccountevents', params={}, response=bkprlistaccountevents_res2) bkprlistincome_res1 = l3.rpc.bkpr_listincome(consolidate_fees=False) - bkprlistincome_res1 = update_list_responses(bkprlistincome_res1, list_key='income_events', slice_upto=4, update_func=lambda x, i: x.update({ - **({'timestamp': NEW_VALUES_LIST['time_at_850'] + (i * 10000)} if 'timestamp' in x else {}), - **({'payment_id': 'paymentid000' + (f"{i:02}" * 26)} if 'payment_id' in x else {}), - **({'outpoint': 'txidbk' + (f"{i:02}" * 29) + ':1'} if 'outpoint' in x else {})}), sort=True, sort_key='tag') update_example(node=l3, method='bkpr-listincome', params={'consolidate_fees': False}, response=bkprlistincome_res1) bkprlistincome_res2 = l3.rpc.bkpr_listincome() - deposit_income = None - invoice_income = None - fee_income = None - for bkprincome in bkprlistincome_res2['income_events']: - income_seleted = None - if deposit_income is None and bkprincome['tag'] == 'deposit': - deposit_income = bkprincome - income_seleted = 1 - elif invoice_income is None and bkprincome['tag'] == 'invoice': - invoice_income = bkprincome - income_seleted = 2 - elif fee_income is None and bkprincome['tag'] == 'onchain_fee' and bkprincome['txid'] == next((value['original_value'] for value in REPLACE_RESPONSE_VALUES if value['new_value'] == NEW_VALUES_LIST['c34_2_txid']), None): - fee_income = bkprincome - income_seleted = 3 - if income_seleted is not None: - REPLACE_RESPONSE_VALUES.extend([ - {'data_keys': ['timestamp'], 'original_value': bkprincome['timestamp'], 'new_value': NEW_VALUES_LIST['time_at_850'] + (income_seleted * 10000)}, - ]) - if 'debit_msat' in bkprincome and bkprincome['debit_msat'] > 0: - REPLACE_RESPONSE_VALUES.extend([ - {'data_keys': ['debit_msat'], 'original_value': bkprincome['debit_msat'], 'new_value': 6960000}, - ]) - if 'payment_id' in bkprincome: - REPLACE_RESPONSE_VALUES.extend([ - {'data_keys': ['payment_id'], 'original_value': bkprincome['payment_id'], 'new_value': 'paymentid000' + (f"{income_seleted:02}" * 26)}, - ]) - if 'outpoint' in bkprincome: - REPLACE_RESPONSE_VALUES.extend([ - {'data_keys': ['outpoint'], 'original_value': bkprincome['outpoint'], 'new_value': 'txidbk' + (f"{income_seleted:02}" * 29) + ':1'}, - ]) - if deposit_income and invoice_income and fee_income: - break - bkprlistincome_res2['income_events'] = [income for income in [deposit_income, invoice_income, fee_income] if income is not None] update_example(node=l3, method='bkpr-listincome', params={}, response=bkprlistincome_res2) - REPLACE_RESPONSE_VALUES.extend([ - {'data_keys': ['balance_msat'], 'original_value': bkprlistbal_res1['accounts'][0]['balances'][0]['balance_msat'], 'new_value': NEW_VALUES_LIST['balance_msat_1']}, - {'data_keys': ['fees_paid_msat'], 'original_value': bkprinspect_res1['txs'][0]['fees_paid_msat'], 'new_value': NEW_VALUES_LIST['fees_paid_msat_1']}, - {'data_keys': ['timestamp'], 'original_value': bkprlistaccountevents_res1['events'][0]['timestamp'], 'new_value': NEW_VALUES_LIST['time_at_850']}, - {'data_keys': ['outpoint'], 'original_value': bkprlistaccountevents_res1['events'][0]['outpoint'], 'new_value': 'txidbk' + ('01' * 29) + ':1'}, - {'data_keys': ['blockheight'], 'original_value': editdescriptionbyoutpoint_res1['updated'][0]['blockheight'], 'new_value': NEW_VALUES_LIST['blockheight_110']}, - ]) logger.info('Bookkeeper Done!') except Exception as e: logger.error(f'Error in generating bookkeeper examples: {e}') raise +def generate_coinmvt_examples(l2): + """Generates listchannelmoves and listchainmoves rpc examples""" + try: + logger.info('listcoinmoves Start...') + update_example(node=l2, method='listchainmoves', params={}) + update_example(node=l2, method='listchainmoves', params={'index': 'created', 'start': 10}) + update_example(node=l2, method='listchannelmoves', params={}) + update_example(node=l2, method='listchannelmoves', params={'index': 'created', 'start': 10, 'limit': 2}) + except Exception as e: + logger.error(f'Error in generating coinmoves examples: {e}') + raise + + def generate_offers_renepay_examples(l1, l2, inv_l21, inv_l34): """Covers all offers and renepay related examples""" try: @@ -981,35 +619,19 @@ def generate_offers_renepay_examples(l1, l2, inv_l21, inv_l34): offer_l21 = update_example(node=l2, method='offer', params={'amount': '10000msat', 'description': 'Fish sale!'}) offer_l22 = update_example(node=l2, method='offer', params={'amount': '1000sat', 'description': 'Coffee', 'quantity_max': 10}) offer_l23 = l2.rpc.offer('2000sat', 'Offer to Disable') - fetchinv_res1 = update_example(node=l1, method='fetchinvoice', params={'offer': offer_l21['bolt12'], 'payer_note': 'Thanks for the fish!'}) - fetchinv_res2 = update_example(node=l1, method='fetchinvoice', params={'offer': offer_l22['bolt12'], 'amount_msat': 2000000, 'quantity': 2}) + update_example(node=l1, method='fetchinvoice', params={'offer': offer_l21['bolt12'], 'payer_note': 'Thanks for the fish!'}) + update_example(node=l1, method='fetchinvoice', params={'offer': offer_l22['bolt12'], 'amount_msat': 2000000, 'quantity': 2}) update_example(node=l2, method='disableoffer', params={'offer_id': offer_l23['offer_id']}) update_example(node=l2, method='enableoffer', params={'offer_id': offer_l23['offer_id']}) # Invoice Requests inv_req_l1_l22 = update_example(node=l2, method='invoicerequest', params={'amount': '10000sat', 'description': 'Requesting for invoice', 'issuer': 'clightning store'}) - disableinv_res1 = update_example(node=l2, method='disableinvoicerequest', params={'invreq_id': inv_req_l1_l22['invreq_id']}) + update_example(node=l2, method='disableinvoicerequest', params={'invreq_id': inv_req_l1_l22['invreq_id']}) # Renepay - renepay_res1 = update_example(node=l1, method='renepay', params={'invstring': inv_l21['bolt11'], 'amount_msat': 400000}) - renepay_res2 = update_example(node=l2, method='renepay', params={'invstring': inv_l34['bolt11']}) + update_example(node=l1, method='renepay', params={'invstring': inv_l21['bolt11'], 'amount_msat': 400000}) + update_example(node=l2, method='renepay', params={'invstring': inv_l34['bolt11']}) update_example(node=l1, method='renepaystatus', params={'invstring': inv_l21['bolt11']}) - REPLACE_RESPONSE_VALUES.extend([ - {'data_keys': ['offer_id'], 'original_value': offer_l21['offer_id'], 'new_value': NEW_VALUES_LIST['offerid_l21']}, - {'data_keys': ['any', 'bolt12', 'invreq'], 'original_value': offer_l21['bolt12'], 'new_value': NEW_VALUES_LIST['bolt12_l21']}, - {'data_keys': ['offer_id'], 'original_value': offer_l22['offer_id'], 'new_value': NEW_VALUES_LIST['offerid_l22']}, - {'data_keys': ['any', 'bolt12', 'invreq'], 'original_value': offer_l22['bolt12'], 'new_value': NEW_VALUES_LIST['bolt12_l22']}, - {'data_keys': ['any', 'offer_id'], 'original_value': offer_l23['offer_id'], 'new_value': NEW_VALUES_LIST['offerid_l23']}, - {'data_keys': ['any', 'bolt12', 'invreq'], 'original_value': offer_l23['bolt12'], 'new_value': NEW_VALUES_LIST['bolt12_l23']}, - {'data_keys': ['invreq_id'], 'original_value': inv_req_l1_l22['invreq_id'], 'new_value': NEW_VALUES_LIST['invreq_id_2']}, - {'data_keys': ['any', 'bolt12', 'invreq'], 'original_value': disableinv_res1['bolt12'], 'new_value': NEW_VALUES_LIST['bolt12_l24']}, - {'data_keys': ['invoice'], 'original_value': fetchinv_res1['invoice'], 'new_value': NEW_VALUES_LIST['invoice_1']}, - {'data_keys': ['invoice'], 'original_value': fetchinv_res2['invoice'], 'new_value': NEW_VALUES_LIST['invoice_2']}, - {'data_keys': ['created_at'], 'original_value': renepay_res1['created_at'], 'new_value': NEW_VALUES_LIST['time_at_800']}, - {'data_keys': ['payment_preimage'], 'original_value': renepay_res1['payment_preimage'], 'new_value': NEW_VALUES_LIST['payment_preimage_r_1']}, - {'data_keys': ['created_at'], 'original_value': renepay_res2['created_at'], 'new_value': NEW_VALUES_LIST['time_at_800']}, - {'data_keys': ['payment_preimage'], 'original_value': renepay_res2['payment_preimage'], 'new_value': NEW_VALUES_LIST['payment_preimage_r_2']}, - ]) logger.info('Offers and Renepay Done!') return offer_l23, inv_req_l1_l22 except Exception as e: @@ -1036,7 +658,7 @@ def direction(src, dst): update_example(node=l2, method='askrene-update-channel', params=['test_layers', '0x0x1/0']) update_example(node=l2, method='askrene-create-channel', params={'layer': 'test_layers', 'source': l3.info['id'], 'destination': l1.info['id'], 'short_channel_id': '0x0x1', 'capacity_msat': '1000000sat'}) update_example(node=l2, method='askrene-update-channel', params={'layer': 'test_layers', 'short_channel_id_dir': '0x0x1/0', 'htlc_minimum_msat': 100, 'htlc_maximum_msat': 900000000, 'fee_base_msat': 1, 'fee_proportional_millionths': 2, 'cltv_expiry_delta': 18}) - askrene_inform_channel_res1 = update_example(node=l2, method='askrene-inform-channel', params={'layer': 'test_layers', 'short_channel_id_dir': '0x0x1/1', 'amount_msat': 100000, 'inform': 'unconstrained'}) + update_example(node=l2, method='askrene-inform-channel', params={'layer': 'test_layers', 'short_channel_id_dir': '0x0x1/1', 'amount_msat': 100000, 'inform': 'unconstrained'}) update_example(node=l2, method='askrene-bias-channel', params={'layer': 'test_layers', 'short_channel_id_dir': scid12dir, 'bias': 1}) update_example(node=l2, method='askrene-bias-channel', params=['test_layers', scid12dir, -5, 'bigger bias']) askrene_listlayers_res1 = update_example(node=l2, method='askrene-listlayers', params=['test_layers']) @@ -1049,16 +671,9 @@ def direction(src, dst): update_example(node=l1, method='askrene-reserve', params={'path': [{'short_channel_id_dir': scid12dir, 'amount_msat': 1250_000_000_000}, {'short_channel_id_dir': scid23dir, 'amount_msat': 1250_000_000_000}]}) time.sleep(2) askrene_listreservations_res1 = l1.rpc.askrene_listreservations() - askrene_listreservations_res1 = update_list_responses(askrene_listreservations_res1, list_key='reservations', slice_upto=5, update_func=lambda x, i: REPLACE_RESPONSE_VALUES.extend([{'data_keys': ['command_id'], 'original_value': x['command_id'], 'new_value': f'\"-c:askrene-reserve#6{(i + 1) * 2}/cln:askrene-reserve#12{(i + 1) * 2}\"'}]), sort=True, sort_key='amount_msat') update_example(node=l1, method='askrene-listreservations', params={}, response=askrene_listreservations_res1) update_example(node=l1, method='askrene-unreserve', params={'path': [{'short_channel_id_dir': scid12dir, 'amount_msat': 1250_000}, {'short_channel_id_dir': scid23dir, 'amount_msat': 1250_001}]}) update_example(node=l1, method='askrene-unreserve', params={'path': [{'short_channel_id_dir': scid12dir, 'amount_msat': 1250_000_000_000}, {'short_channel_id_dir': scid23dir, 'amount_msat': 1250_000_000_000}]}) - REPLACE_RESPONSE_VALUES.extend([ - {'data_keys': ['any', 'short_channel_id_dir'], 'original_value': scid12dir, 'new_value': f"{NEW_VALUES_LIST['c12']}/{direction12}"}, - {'data_keys': ['short_channel_id_dir'], 'original_value': scid23dir, 'new_value': f"{NEW_VALUES_LIST['c23_2']}/{direction23}"}, - {'data_keys': ['cutoff'], 'original_value': ts1 + 1, 'new_value': NEW_VALUES_LIST['time_at_800']}, - {'data_keys': ['timestamp'], 'original_value': askrene_inform_channel_res1['constraints'][0]['timestamp'], 'new_value': NEW_VALUES_LIST['time_at_800']}, - ]) logger.info('Askrene Done!') except Exception as e: logger.error(f'Error in generating askrene examples: {e}') @@ -1128,23 +743,6 @@ def generate_wait_examples(l1, l2, bitcoind, executor): sync_blockheight(bitcoind, [l2]) wbhres = wbh.result(5) update_example(node=l2, method='waitblockheight', params={'blockheight': curr_blockheight + 1, 'timeout': 600}, response=wbhres, description=[f'This will return after the next block is mined because requested waitblockheight is one block higher than the current blockheight.']) - REPLACE_RESPONSE_VALUES.extend([ - {'data_keys': ['payment_hash'], 'original_value': wspc_res['details']['payment_hash'], 'new_value': NEW_VALUES_LIST['payment_hash_wspc_1']}, - {'data_keys': ['paid_at'], 'original_value': waires['paid_at'], 'new_value': NEW_VALUES_LIST['time_at_850']}, - {'data_keys': ['expires_at'], 'original_value': waires['expires_at'], 'new_value': NEW_VALUES_LIST['time_at_900']}, - {'data_keys': ['paid_at'], 'original_value': wai_pay_index_res['paid_at'], 'new_value': NEW_VALUES_LIST['time_at_850']}, - {'data_keys': ['expires_at'], 'original_value': wai_pay_index_res['expires_at'], 'new_value': NEW_VALUES_LIST['time_at_900']}, - {'data_keys': ['bolt11'], 'original_value': wi2res['bolt11'], 'new_value': NEW_VALUES_LIST['bolt11_wt_1']}, - {'data_keys': ['payment_hash'], 'original_value': wi2res['payment_hash'], 'new_value': NEW_VALUES_LIST['payment_hash_winv_1']}, - {'data_keys': ['payment_preimage'], 'original_value': wi2res['payment_preimage'], 'new_value': NEW_VALUES_LIST['payment_preimage_wi_1']}, - {'data_keys': ['paid_at'], 'original_value': wi2res['paid_at'], 'new_value': NEW_VALUES_LIST['time_at_850']}, - {'data_keys': ['expires_at'], 'original_value': wi2res['expires_at'], 'new_value': NEW_VALUES_LIST['time_at_900']}, - {'data_keys': ['bolt11'], 'original_value': wi3res['bolt11'], 'new_value': NEW_VALUES_LIST['bolt11_wt_2']}, - {'data_keys': ['payment_hash'], 'original_value': wi3res['payment_hash'], 'new_value': NEW_VALUES_LIST['payment_hash_winv_2']}, - {'data_keys': ['payment_preimage'], 'original_value': wi3res['payment_preimage'], 'new_value': NEW_VALUES_LIST['payment_preimage_wi_2']}, - {'data_keys': ['paid_at'], 'original_value': wi3res['paid_at'], 'new_value': NEW_VALUES_LIST['time_at_850']}, - {'data_keys': ['expires_at'], 'original_value': wi3res['expires_at'], 'new_value': NEW_VALUES_LIST['time_at_900']}, - ]) logger.info('Wait Done!') except Exception as e: logger.error(f'Error in generating wait examples: {e}') @@ -1189,11 +787,11 @@ def generate_utils_examples(l1, l2, l3, l4, l5, l6, c23_2, c34_2, inv_l11, inv_l funds_l2 = l2.rpc.listfunds() utxos = [f"{funds_l2['outputs'][2]['txid']}:{funds_l2['outputs'][2]['output']}"] - example_utxos = ['utxo' + ('02' * 30) + ':1'] withdraw_l22 = update_example(node=l2, method='withdraw', params={'destination': address_l22['p2tr'], 'satoshi': 'all', 'feerate': '20000perkb', 'minconf': 0, 'utxos': utxos}) bitcoind.generate_block(4, wait_for_mempool=[withdraw_l22['txid']]) - multiwithdraw_res1 = update_example(node=l2, method='multiwithdraw', params={'outputs': [{l1.rpc.newaddr()['bech32']: '2222000msat'}, {l1.rpc.newaddr()['bech32']: '3333000msat'}]}) - multiwithdraw_res2 = update_example(node=l2, method='multiwithdraw', params={'outputs': [{l1.rpc.newaddr('p2tr')['p2tr']: 1000}, {l1.rpc.newaddr()['bech32']: 1000}, {l2.rpc.newaddr()['bech32']: 1000}, {l3.rpc.newaddr()['bech32']: 1000}, {l3.rpc.newaddr()['bech32']: 1000}, {l4.rpc.newaddr('p2tr')['p2tr']: 1000}, {l1.rpc.newaddr()['bech32']: 1000}]}) + sync_blockheight(bitcoind, [l2]) + update_example(node=l2, method='multiwithdraw', params={'outputs': [{l1.rpc.newaddr()['bech32']: '2222000msat'}, {l1.rpc.newaddr()['bech32']: '3333000msat'}]}) + update_example(node=l2, method='multiwithdraw', params={'outputs': [{l1.rpc.newaddr('p2tr')['p2tr']: 1000}, {l1.rpc.newaddr()['bech32']: 1000}, {l2.rpc.newaddr()['bech32']: 1000}, {l3.rpc.newaddr()['bech32']: 1000}, {l3.rpc.newaddr()['bech32']: 1000}, {l4.rpc.newaddr('p2tr')['p2tr']: 1000}, {l1.rpc.newaddr()['bech32']: 1000}]}) l2.rpc.connect(l4.info['id'], 'localhost', l4.port) l2.rpc.connect(l5.info['id'], 'localhost', l5.port) update_example(node=l2, method='disconnect', params={'id': l4.info['id'], 'force': False}) @@ -1210,9 +808,9 @@ def generate_utils_examples(l1, l2, l3, l4, l5, l6, c23_2, c34_2, inv_l11, inv_l update_example(node=l2, method='checkmessage', params={'message': 'this is a test!', 'zbase': 'd6tqaeuonjhi98mmont9m4wag7gg4krg1f4txonug3h31e9h6p6k6nbwjondnj46dkyausobstnk7fhyy998bhgc1yr98dfmhb4k54d7'}) addr = l2.rpc.newaddr('bech32')['bech32'] update_example(node=l2, method='signmessagewithkey', params={'message': 'a test message', 'address': addr}) - decodepay_res1 = update_example(node=l2, method='decodepay', params={'bolt11': inv_l11['bolt11']}) + update_example(node=l2, method='decodepay', params={'bolt11': inv_l11['bolt11']}) update_example(node=l2, method='decode', params=[rune_l21['rune']]) - decode_res2 = update_example(node=l2, method='decode', params=[inv_l22['bolt11']]) + update_example(node=l2, method='decode', params=[inv_l22['bolt11']]) # PSBT amount1 = 1000000 @@ -1222,7 +820,7 @@ def generate_utils_examples(l1, l2, l3, l4, l5, l6, c23_2, c34_2, inv_l11, inv_l psbtoutput_res2 = l1.rpc.addpsbtoutput(amount2, psbtoutput_res1['psbt']) update_example(node=l1, method='addpsbtoutput', params=[amount2, psbtoutput_res2['psbt']], response=psbtoutput_res2) dest = l1.rpc.newaddr('p2tr')['p2tr'] - psbtoutput_res3 = update_example(node=l1, method='addpsbtoutput', params={'satoshi': amount2, 'initialpsbt': psbtoutput_res2['psbt'], 'destination': dest}) + update_example(node=l1, method='addpsbtoutput', params={'satoshi': amount2, 'initialpsbt': psbtoutput_res2['psbt'], 'destination': dest}) l1.rpc.addpsbtoutput(amount2, psbtoutput_res2['psbt'], None, dest) update_example(node=l1, method='setpsbtversion', params=[psbtoutput_res2['psbt'], 2]) @@ -1238,59 +836,22 @@ def generate_utils_examples(l1, l2, l3, l4, l5, l6, c23_2, c34_2, inv_l11, inv_l fullpsbt = bitcoind.rpc.joinpsbts([funding['psbt'], output_psbt]) l1.rpc.reserveinputs(fullpsbt) signed_psbt = l1.rpc.signpsbt(fullpsbt)['signed_psbt'] - sendpsbt_res1 = update_example(node=l1, method='sendpsbt', params={'psbt': signed_psbt}) + update_example(node=l1, method='sendpsbt', params={'psbt': signed_psbt}) + # Includes two multiwithdraw calls above + bitcoind.generate_block(1, wait_for_mempool=3) + sync_blockheight(bitcoind, [l1, l2, l3, l4]) # SQL update_example(node=l1, method='sql', params={'query': 'SELECT id FROM peers'}, description=['A simple peers selection query:']) update_example(node=l1, method='sql', params=[f"SELECT label, description, status FROM invoices WHERE label='label inv_l12'"], description=["A statement containing `=` needs `-o` in shell:"]) sql_res3 = l1.rpc.sql(f"SELECT nodeid FROM nodes WHERE nodeid != x'{l3.info['id']}'") - update_example(node=l1, method='sql', params=[f"SELECT nodeid FROM nodes WHERE nodeid != x'{NEW_VALUES_LIST['l3_id']}'"], description=['If you want to get specific nodeid values from the nodes table:'], response=sql_res3) + update_example(node=l1, method='sql', params=[f"SELECT nodeid FROM nodes WHERE nodeid != x'{l3.info['id']}'"], description=['If you want to get specific nodeid values from the nodes table:'], response=sql_res3) sql_res4 = l1.rpc.sql(f"SELECT nodeid FROM nodes WHERE nodeid IN (x'{l1.info['id']}', x'{l3.info['id']}')") - update_example(node=l1, method='sql', params=[f"SELECT nodeid FROM nodes WHERE nodeid IN (x'{NEW_VALUES_LIST['l1_id']}', x'{NEW_VALUES_LIST['l3_id']}')"], description=["If you want to compare a BLOB column, `x'hex'` or `X'hex'` are needed:"], response=sql_res4) + update_example(node=l1, method='sql', params=[f"SELECT nodeid FROM nodes WHERE nodeid IN (x'{l1.info['id']}', x'{l3.info['id']}')"], description=["If you want to compare a BLOB column, `x'hex'` or `X'hex'` are needed:"], response=sql_res4) update_example(node=l1, method='sql', params=['SELECT peer_id, to_us_msat, total_msat, peerchannels_status.status FROM peerchannels INNER JOIN peerchannels_status ON peerchannels_status.row = peerchannels.rowid'], description=['Related tables are usually referenced by JOIN:']) update_example(node=l2, method='sql', params=['SELECT COUNT(*) FROM forwards'], description=["Simple function usage, in this case COUNT. Strings inside arrays need \", and ' to protect them from the shell:"]) update_example(node=l1, method='sql', params=['SELECT * from peerchannels_features']) - example_log = getlog_res1['log'] - for i, log_entry in enumerate(example_log): - if 'num_skipped' in log_entry: - log_entry['num_skipped'] = 144 + i - if 'time' in log_entry: - log_entry['time'] = f"{70.8 + i}00000000" - if 'node_id' in log_entry: - log_entry['node_id'] = 'nodeid' + ('01' * 30) - if log_entry.get('log', '').startswith('No peer channel with'): - log_entry['log'] = 'No peer channel with scid=228x1x1' - REPLACE_RESPONSE_VALUES.extend([ - {'data_keys': ['any', 'psbt', 'initialpsbt'], 'original_value': psbtoutput_res1['psbt'], 'new_value': NEW_VALUES_LIST['init_psbt_1']}, - {'data_keys': ['any', 'psbt', 'initialpsbt'], 'original_value': psbtoutput_res2['psbt'], 'new_value': NEW_VALUES_LIST['init_psbt_2']}, - {'data_keys': ['any', 'psbt', 'initialpsbt'], 'original_value': psbtoutput_res3['psbt'], 'new_value': NEW_VALUES_LIST['init_psbt_3']}, - {'data_keys': ['destination'], 'original_value': dest, 'new_value': NEW_VALUES_LIST['destination_1']}, - {'data_keys': ['created_at'], 'original_value': decode_res2['created_at'], 'new_value': NEW_VALUES_LIST['time_at_800']}, - {'data_keys': ['signature'], 'original_value': decode_res2['signature'], 'new_value': NEW_VALUES_LIST['signature_1']}, - {'data_keys': ['short_channel_id'], 'original_value': decode_res2['routes'][0][0]['short_channel_id'], 'new_value': NEW_VALUES_LIST['c23']}, - {'data_keys': ['created_at'], 'original_value': decodepay_res1['created_at'], 'new_value': NEW_VALUES_LIST['time_at_800']}, - {'data_keys': ['signature'], 'original_value': decodepay_res1['signature'], 'new_value': NEW_VALUES_LIST['signature_2']}, - {'data_keys': ['tx'], 'original_value': multiwithdraw_res1['tx'], 'new_value': NEW_VALUES_LIST['tx_55']}, - {'data_keys': ['txid'], 'original_value': multiwithdraw_res1['txid'], 'new_value': NEW_VALUES_LIST['txid_55']}, - {'data_keys': ['tx'], 'original_value': multiwithdraw_res2['tx'], 'new_value': NEW_VALUES_LIST['tx_56']}, - {'data_keys': ['txid'], 'original_value': multiwithdraw_res2['txid'], 'new_value': NEW_VALUES_LIST['txid_56']}, - {'data_keys': ['psbt'], 'original_value': signed_psbt, 'new_value': NEW_VALUES_LIST['psbt_1']}, - {'data_keys': ['tx', 'hash'], 'original_value': sendpsbt_res1['tx'], 'new_value': NEW_VALUES_LIST['tx_61']}, - {'data_keys': ['txid'], 'original_value': sendpsbt_res1['txid'], 'new_value': NEW_VALUES_LIST['txid_61']}, - {'data_keys': ['destination'], 'original_value': address_l21['bech32'], 'new_value': NEW_VALUES_LIST['destination_2']}, - {'data_keys': ['destination'], 'original_value': address_l22['p2tr'], 'new_value': NEW_VALUES_LIST['destination_3']}, - {'data_keys': ['utxos'], 'original_value': utxos, 'new_value': example_utxos}, - {'data_keys': ['tx'], 'original_value': withdraw_l21['tx'], 'new_value': NEW_VALUES_LIST['tx_91']}, - {'data_keys': ['txid'], 'original_value': withdraw_l21['txid'], 'new_value': NEW_VALUES_LIST['withdraw_txid_l21']}, - {'data_keys': ['psbt'], 'original_value': withdraw_l21['psbt'], 'new_value': NEW_VALUES_LIST['psbt_7']}, - {'data_keys': ['tx'], 'original_value': withdraw_l22['tx'], 'new_value': NEW_VALUES_LIST['tx_92']}, - {'data_keys': ['txid'], 'original_value': withdraw_l22['txid'], 'new_value': NEW_VALUES_LIST['withdraw_txid_l22']}, - {'data_keys': ['psbt'], 'original_value': withdraw_l22['psbt'], 'new_value': NEW_VALUES_LIST['psbt_8']}, - {'data_keys': ['created_at'], 'original_value': getlog_res1['created_at'], 'new_value': NEW_VALUES_LIST['time_at_800']}, - {'data_keys': ['bytes_used'], 'original_value': getlog_res1['bytes_used'], 'new_value': NEW_VALUES_LIST['bytes_used']}, - {'data_keys': ['bytes_max'], 'original_value': getlog_res1['bytes_max'], 'new_value': NEW_VALUES_LIST['bytes_max']}, - {'data_keys': ['log'], 'original_value': getlog_res1['log'], 'new_value': example_log}, - ]) + getlog_res1['log'] logger.info('General Utils Done!') return address_l22 except Exception as e: @@ -1298,7 +859,7 @@ def generate_utils_examples(l1, l2, l3, l4, l5, l6, c23_2, c34_2, inv_l11, inv_l raise -def generate_splice_examples(node_factory, bitcoind): +def generate_splice_examples(node_factory, bitcoind, regenerate_blockchain): """Generates splice related examples""" try: logger.info('Splice Start...') @@ -1310,6 +871,8 @@ def generate_splice_examples(node_factory, bitcoind): 'allow_bad_gossip': True, 'broken_log': '.*', 'dev-bitcoind-poll': 3, + 'no_entropy': True, + 'base_port': BASE_PORTNUM, }.copy() for i in range(2) ] @@ -1328,9 +891,9 @@ def generate_splice_examples(node_factory, bitcoind): spupdate2_res1 = update_example(node=l7, method='splice_update', params={'channel_id': chan_id_78, 'psbt': spupdate1_res1['psbt']}) assert(spupdate2_res1['commitments_secured'] is True) signpsbt_res1 = l7.rpc.signpsbt(spupdate2_res1['psbt']) - spsigned_res1 = update_example(node=l7, method='splice_signed', params={'channel_id': chan_id_78, 'psbt': signpsbt_res1['signed_psbt']}) + update_example(node=l7, method='splice_signed', params={'channel_id': chan_id_78, 'psbt': signpsbt_res1['signed_psbt']}) - bitcoind.generate_block(1) + bitcoind.generate_block(1, wait_for_mempool=1) sync_blockheight(bitcoind, [l7]) l7.daemon.wait_for_log(' to CHANNELD_NORMAL') time.sleep(1) @@ -1344,34 +907,18 @@ def generate_splice_examples(node_factory, bitcoind): assert(spupdate1_res2['commitments_secured'] is False) spupdate2_res2 = update_example(node=l7, method='splice_update', params=[chan_id_78, spupdate1_res2['psbt']]) assert(spupdate2_res2['commitments_secured'] is True) - spsigned_res2 = update_example(node=l7, method='splice_signed', params={'channel_id': chan_id_78, 'psbt': spupdate2_res2['psbt']}) + update_example(node=l7, method='splice_signed', params={'channel_id': chan_id_78, 'psbt': spupdate2_res2['psbt']}) + bitcoind.generate_block(1, wait_for_mempool=1) + sync_blockheight(bitcoind, [l7, l8]) update_example(node=l7, method='stop', params={}) - REPLACE_RESPONSE_VALUES.extend([ - {'data_keys': ['any', 'channel_id', 'account'], 'original_value': chan_id_78, 'new_value': NEW_VALUES_LIST['c78_channel_id']}, - {'data_keys': ['any', 'psbt'], 'original_value': spinit_res1['psbt'], 'new_value': NEW_VALUES_LIST['psbt_1']}, - {'data_keys': ['any', 'psbt'], 'original_value': spinit_res2['psbt'], 'new_value': NEW_VALUES_LIST['psbt_2']}, - {'data_keys': ['any', 'initialpsbt', 'psbt'], 'original_value': funds_result_1['psbt'], 'new_value': NEW_VALUES_LIST['psbt_3']}, - {'data_keys': ['any', 'initialpsbt', 'psbt'], 'original_value': funds_result_2['psbt'], 'new_value': NEW_VALUES_LIST['psbt_4']}, - {'data_keys': ['psbt'], 'original_value': spupdate2_res1['psbt'], 'new_value': NEW_VALUES_LIST['psbt_5_2']}, - {'data_keys': ['tx'], 'original_value': spsigned_res1['tx'], 'new_value': NEW_VALUES_LIST['send_tx_1']}, - {'data_keys': ['txid'], 'original_value': spsigned_res1['txid'], 'new_value': NEW_VALUES_LIST['send_txid_1']}, - {'data_keys': ['psbt'], 'original_value': spsigned_res1['psbt'], 'new_value': NEW_VALUES_LIST['psbt_1']}, - {'data_keys': ['tx'], 'original_value': spsigned_res2['tx'], 'new_value': NEW_VALUES_LIST['send_tx_2']}, - {'data_keys': ['txid'], 'original_value': spsigned_res2['txid'], 'new_value': NEW_VALUES_LIST['send_txid_2']}, - {'data_keys': ['psbt'], 'original_value': spsigned_res2['psbt'], 'new_value': NEW_VALUES_LIST['psbt_2']}, - {'data_keys': ['psbt'], 'original_value': signpsbt_res1['signed_psbt'], 'new_value': NEW_VALUES_LIST['signed_psbt_1']}, - {'data_keys': ['psbt'], 'original_value': spupdate1_res1['psbt'], 'new_value': NEW_VALUES_LIST['psbt_1']}, - {'data_keys': ['any', 'psbt'], 'original_value': spupdate1_res2['psbt'], 'new_value': NEW_VALUES_LIST['psbt_2']}, - {'data_keys': ['psbt'], 'original_value': spupdate2_res2['psbt'], 'new_value': NEW_VALUES_LIST['psbt_2']}, - ]) logger.info('Splice Done!') except Exception as e: logger.error(f'Error in generating splicing examples: {e}') raise -def generate_channels_examples(node_factory, bitcoind, l1, l3, l4, l5): +def generate_channels_examples(node_factory, bitcoind, l1, l3, l4, l5, regenerate_blockchain): """Generates fundchannel and openchannel related examples""" try: logger.info('Channels Start...') @@ -1384,6 +931,8 @@ def generate_channels_examples(node_factory, bitcoind, l1, l3, l4, l5): 'allow_bad_gossip': True, 'broken_log': '.*', 'dev-bitcoind-poll': 3, + 'no_entropy': True, + 'base_port': BASE_PORTNUM, }.copy() for i in range(2) ] @@ -1391,36 +940,35 @@ def generate_channels_examples(node_factory, bitcoind, l1, l3, l4, l5): amount = 2 ** 24 l9.fundwallet(amount + 10000000) - bitcoind.generate_block(1) wait_for(lambda: len(l9.rpc.listfunds()["outputs"]) != 0) l9.rpc.connect(l10.info['id'], 'localhost', l10.port) fund_start_res1 = update_example(node=l9, method='fundchannel_start', params=[l10.info['id'], amount]) outputs_1 = [{fund_start_res1['funding_address']: amount}] - example_outputs_1 = [{'bcrt1p00' + ('02' * 28): amount}] + [{'bcrt1p00' + ('02' * 28): amount}] tx_prep_1 = update_example(node=l9, method='txprepare', params=[outputs_1]) update_example(node=l9, method='fundchannel_cancel', params=[l10.info['id']]) - txdiscard_res1 = update_example(node=l9, method='txdiscard', params=[tx_prep_1['txid']]) + update_example(node=l9, method='txdiscard', params=[tx_prep_1['txid']]) fund_start_res2 = update_example(node=l9, method='fundchannel_start', params={'id': l10.info['id'], 'amount': amount}) outputs_2 = [{fund_start_res2['funding_address']: amount}] - example_outputs_2 = [{'bcrt1p00' + ('03' * 28): amount}] + [{'bcrt1p00' + ('03' * 28): amount}] tx_prep_2 = update_example(node=l9, method='txprepare', params={'outputs': outputs_2}) - fcc_res1 = update_example(node=l9, method='fundchannel_complete', params=[l10.info['id'], tx_prep_2['psbt']]) - txsend_res1 = update_example(node=l9, method='txsend', params=[tx_prep_2['txid']]) + update_example(node=l9, method='fundchannel_complete', params=[l10.info['id'], tx_prep_2['psbt']]) + update_example(node=l9, method='txsend', params=[tx_prep_2['txid']]) l9.rpc.close(l10.info['id']) - bitcoind.generate_block(1) - sync_blockheight(bitcoind, [l9]) + bitcoind.generate_block(1, wait_for_mempool=1) + sync_blockheight(bitcoind, [l9, l10]) amount = 1000000 fund_start_res3 = l9.rpc.fundchannel_start(l10.info['id'], amount) tx_prep_3 = l9.rpc.txprepare([{fund_start_res3['funding_address']: amount}]) update_example(node=l9, method='fundchannel_cancel', params={'id': l10.info['id']}) - txdiscard_res2 = update_example(node=l9, method='txdiscard', params={'txid': tx_prep_3['txid']}) + update_example(node=l9, method='txdiscard', params={'txid': tx_prep_3['txid']}) funding_addr = l9.rpc.fundchannel_start(l10.info['id'], amount)['funding_address'] tx_prep_4 = l9.rpc.txprepare([{funding_addr: amount}]) - fcc_res2 = update_example(node=l9, method='fundchannel_complete', params={'id': l10.info['id'], 'psbt': tx_prep_4['psbt']}) - txsend_res2 = update_example(node=l9, method='txsend', params={'txid': tx_prep_4['txid']}) + update_example(node=l9, method='fundchannel_complete', params={'id': l10.info['id'], 'psbt': tx_prep_4['psbt']}) + update_example(node=l9, method='txsend', params={'txid': tx_prep_4['txid']}) l9.rpc.close(l10.info['id']) # Basic setup for l11->l12 for openchannel examples @@ -1434,6 +982,8 @@ def generate_channels_examples(node_factory, bitcoind, l1, l3, l4, l5): 'allow_bad_gossip': True, 'broken_log': '.*', 'dev-bitcoind-poll': 3, + 'no_entropy': True, + 'base_port': BASE_PORTNUM, }.copy() for i in range(2) ] @@ -1446,9 +996,8 @@ def generate_channels_examples(node_factory, bitcoind, l1, l3, l4, l5): vins = bitcoind.rpc.decoderawtransaction(c1112res['tx'])['vin'] assert(only_one(vins)) prev_utxos = ["{}:{}".format(vins[0]['txid'], vins[0]['vout'])] - example_utxos = ['utxo' + ('01' * 30) + ':1'] - l11.daemon.wait_for_log(' to DUALOPEND_AWAITING_LOCKIN') + l1.daemon.wait_for_log(' to DUALOPEND_AWAITING_LOCKIN') chan = only_one(l11.rpc.listpeerchannels(l12.info['id'])['channels']) rate = int(chan['feerate']['perkw']) next_feerate = '{}perkw'.format(rate * 4) @@ -1456,13 +1005,13 @@ def generate_channels_examples(node_factory, bitcoind, l1, l3, l4, l5): # Initiate an RBF startweight = 42 + 172 initpsbt_1 = update_example(node=l11, method='utxopsbt', params=[FUND_CHANNEL_AMOUNT_SAT, next_feerate, startweight, prev_utxos, None, True, None, None, True]) - openchannelbump_res1 = update_example(node=l11, method='openchannel_bump', params=[chan_id, FUND_CHANNEL_AMOUNT_SAT, initpsbt_1['psbt'], next_feerate]) + update_example(node=l11, method='openchannel_bump', params=[chan_id, FUND_CHANNEL_AMOUNT_SAT, initpsbt_1['psbt'], next_feerate]) update_example(node=l11, method='openchannel_abort', params={'channel_id': chan_id}) openchannelbump_res2 = update_example(node=l11, method='openchannel_bump', params={'channel_id': chan_id, 'amount': FUND_CHANNEL_AMOUNT_SAT, 'initialpsbt': initpsbt_1['psbt'], 'funding_feerate': next_feerate}) openchannelupdate_res1 = update_example(node=l11, method='openchannel_update', params={'channel_id': chan_id, 'psbt': openchannelbump_res2['psbt']}) signed_psbt_1 = update_example(node=l11, method='signpsbt', params={'psbt': openchannelupdate_res1['psbt']}) - openchannelsigned_res1 = update_example(node=l11, method='openchannel_signed', params={'channel_id': chan_id, 'signed_psbt': signed_psbt_1['signed_psbt']}) + update_example(node=l11, method='openchannel_signed', params={'channel_id': chan_id, 'signed_psbt': signed_psbt_1['signed_psbt']}) # 5x the feerate to beat the min-relay fee chan = only_one(l11.rpc.listpeerchannels(l12.info['id'])['channels']) @@ -1475,10 +1024,11 @@ def generate_channels_examples(node_factory, bitcoind, l1, l3, l4, l5): openchannelbump_res3 = update_example(node=l11, method='openchannel_bump', params=[chan_id, FUND_CHANNEL_AMOUNT_SAT * 2, initpsbt_2['psbt'], next_feerate]) openchannelupdate_res2 = update_example(node=l11, method='openchannel_update', params=[chan_id, openchannelbump_res3['psbt']]) signed_psbt_2 = update_example(node=l11, method='signpsbt', params=[openchannelupdate_res2['psbt']]) - openchannelsigned_res2 = update_example(node=l11, method='openchannel_signed', params=[chan_id, signed_psbt_2['signed_psbt']]) + psbt2_txid = update_example(node=l11, method='openchannel_signed', params=[chan_id, signed_psbt_2['signed_psbt']])['txid'] - bitcoind.generate_block(1) - sync_blockheight(bitcoind, [l11]) + bitcoind.generate_block(1, wait_for_mempool=psbt2_txid) + sync_blockheight(bitcoind, [l11, l12]) + # FIXME: l11 doesn't remove initial transaction when it RBFs l11.daemon.wait_for_log(' to CHANNELD_NORMAL') # Fundpsbt, channelopen init, abort, unreserve @@ -1493,8 +1043,6 @@ def generate_channels_examples(node_factory, bitcoind, l1, l3, l4, l5): update_example(node=l11, method='unreserveinputs', params=[psbt_init_res2['psbt']]) # Reserveinputs - bitcoind.generate_block(1) - sync_blockheight(bitcoind, [l11]) outputs = l11.rpc.listfunds()['outputs'] psbt_1 = bitcoind.rpc.createpsbt([{'txid': outputs[0]['txid'], 'vout': outputs[0]['output']}], []) update_example(node=l11, method='reserveinputs', params={'psbt': psbt_1}) @@ -1507,7 +1055,7 @@ def generate_channels_examples(node_factory, bitcoind, l1, l3, l4, l5): l3.rpc.connect(l5.info['id'], 'localhost', l5.port) l4.rpc.connect(l1.info['id'], 'localhost', l1.port) c35res = update_example(node=l3, method='fundchannel', params={'id': l5.info['id'], 'amount': FUND_CHANNEL_AMOUNT_SAT, 'announce': True}) - outputs = l4.rpc.listfunds()['outputs'] + outputs = sorted(l4.rpc.listfunds()['outputs'], key=lambda o: o["amount_msat"], reverse=True) utxo = f"{outputs[0]['txid']}:{outputs[0]['output']}" c41res = update_example(node=l4, method='fundchannel', params={'id': l1.info['id'], 'amount': 'all', 'feerate': 'normal', 'push_msat': 100000, 'utxos': [utxo]}, @@ -1517,6 +1065,7 @@ def generate_channels_examples(node_factory, bitcoind, l1, l3, l4, l5): l4.rpc.close(c41res['channel_id']) l3.rpc.disconnect(l5.info['id'], True) l4.rpc.disconnect(l1.info['id'], True) + wait_for(lambda: len(bitcoind.rpc.getrawmempool()) == 4) # Multifundchannel 2 l1.fundwallet(10**8) @@ -1537,20 +1086,6 @@ def generate_channels_examples(node_factory, bitcoind, l1, l3, l4, l5): 'amount': 'all' } ] - example_destinations_1 = [ - { - 'id': 'nodeid' + ('03' * 30) + '@127.0.0.1:19736', - 'amount': '20000sat' - }, - { - 'id': 'nodeid' + ('04' * 30) + '@127.0.0.1:19737', - 'amount': '0.0003btc' - }, - { - 'id': 'nodeid' + ('05' * 30) + '@127.0.0.1:19738', - 'amount': 'all' - } - ] multifund_res1 = update_example(node=l1, method='multifundchannel', params={ 'destinations': destinations_1, 'feerate': '10000perkw', @@ -1562,6 +1097,7 @@ def generate_channels_examples(node_factory, bitcoind, l1, l3, l4, l5): ]) for channel in multifund_res1['channel_ids']: l1.rpc.close(channel['channel_id']) + wait_for(lambda: len(bitcoind.rpc.getrawmempool()) == 4) l1.fundwallet(10**8) destinations_2 = [ @@ -1578,99 +1114,14 @@ def generate_channels_examples(node_factory, bitcoind, l1, l3, l4, l5): 'amount': 50000 } ] - example_destinations_2 = [ - { - 'id': f'fakenodeid' + ('03' * 28) + '@127.0.0.1:19736', - 'amount': 50000 - }, - { - 'id': 'nodeid' + ('04' * 30) + '@127.0.0.1:19737', - 'amount': 50000 - }, - { - 'id': 'nodeid' + ('01' * 30) + '@127.0.0.1:19734', - 'amount': 50000 - } - ] multifund_res2 = update_example(node=l1, method='multifundchannel', params={'destinations': destinations_2, 'minchannels': 1}) # Close newly funded channels to bring the setup back to initial state for channel in multifund_res2['channel_ids']: l1.rpc.close(channel['channel_id']) - REPLACE_RESPONSE_VALUES.extend([ - {'data_keys': ['any', 'id', 'pubkey', 'destination'], 'original_value': l10.info['id'], 'new_value': NEW_VALUES_LIST['l10_id']}, - {'data_keys': ['any', 'id', 'pubkey', 'destination'], 'original_value': l12.info['id'], 'new_value': NEW_VALUES_LIST['l12_id']}, - {'data_keys': ['any', 'txid'], 'original_value': tx_prep_1['txid'], 'new_value': NEW_VALUES_LIST['txprep_txid_1']}, - {'data_keys': ['initialpsbt', 'psbt', 'signed_psbt'], 'original_value': tx_prep_1['psbt'], 'new_value': NEW_VALUES_LIST['psbt_9']}, - {'data_keys': ['unsigned_tx'], 'original_value': tx_prep_2['unsigned_tx'], 'new_value': NEW_VALUES_LIST['unsigned_tx_1']}, - {'data_keys': ['any', 'initialpsbt', 'psbt', 'signed_psbt'], 'original_value': tx_prep_2['psbt'], 'new_value': NEW_VALUES_LIST['psbt_10']}, - {'data_keys': ['any', 'txid'], 'original_value': tx_prep_2['txid'], 'new_value': NEW_VALUES_LIST['txprep_txid_2']}, - {'data_keys': ['any', 'txid'], 'original_value': tx_prep_3['txid'], 'new_value': NEW_VALUES_LIST['txprep_txid_3']}, - {'data_keys': ['txid'], 'original_value': tx_prep_4['txid'], 'new_value': NEW_VALUES_LIST['txprep_txid_4']}, - {'data_keys': ['initialpsbt', 'psbt', 'signed_psbt'], 'original_value': tx_prep_4['psbt'], 'new_value': NEW_VALUES_LIST['psbt_12']}, - {'data_keys': ['channel_id', 'account'], 'original_value': fcc_res1['channel_id'], 'new_value': NEW_VALUES_LIST['c910_channel_id_1']}, - {'data_keys': ['channel_id', 'account'], 'original_value': fcc_res2['channel_id'], 'new_value': NEW_VALUES_LIST['c910_channel_id_2']}, - {'data_keys': ['txid'], 'original_value': c1112res['txid'], 'new_value': NEW_VALUES_LIST['c1112_txid']}, - {'data_keys': ['channel_id', 'account'], 'original_value': c1112res['channel_id'], 'new_value': NEW_VALUES_LIST['c1112_channel_id']}, - {'data_keys': ['tx'], 'original_value': c35res['tx'], 'new_value': NEW_VALUES_LIST['c35_tx']}, - {'data_keys': ['txid'], 'original_value': c35res['txid'], 'new_value': NEW_VALUES_LIST['c35_txid']}, - {'data_keys': ['channel_id', 'account'], 'original_value': c35res['channel_id'], 'new_value': NEW_VALUES_LIST['c35_channel_id']}, - {'data_keys': ['tx'], 'original_value': c41res['tx'], 'new_value': NEW_VALUES_LIST['c41_tx']}, - {'data_keys': ['txid', 'funding_txid'], 'original_value': c41res['txid'], 'new_value': NEW_VALUES_LIST['c41_txid']}, - {'data_keys': ['channel_id', 'account'], 'original_value': c41res['channel_id'], 'new_value': NEW_VALUES_LIST['c41_channel_id']}, - {'data_keys': ['destinations'], 'original_value': destinations_1, 'new_value': example_destinations_1}, - {'data_keys': ['channel_id', 'account'], 'original_value': multifund_res1['channel_ids'][0]['channel_id'], 'new_value': NEW_VALUES_LIST['mf_channel_id_1']}, - {'data_keys': ['channel_id', 'account'], 'original_value': multifund_res1['channel_ids'][1]['channel_id'], 'new_value': NEW_VALUES_LIST['mf_channel_id_2']}, - {'data_keys': ['channel_id', 'account'], 'original_value': multifund_res1['channel_ids'][2]['channel_id'], 'new_value': NEW_VALUES_LIST['mf_channel_id_3']}, - {'data_keys': ['tx'], 'original_value': multifund_res1['tx'], 'new_value': NEW_VALUES_LIST['multi_tx_1']}, - {'data_keys': ['txid', 'funding_txid'], 'original_value': multifund_res1['txid'], 'new_value': NEW_VALUES_LIST['multi_txid_1']}, - {'data_keys': ['destinations'], 'original_value': destinations_2, 'new_value': example_destinations_2}, - {'data_keys': ['channel_id', 'account'], 'original_value': multifund_res2['channel_ids'][0]['channel_id'], 'new_value': NEW_VALUES_LIST['mf_channel_id_4']}, - {'data_keys': ['tx'], 'original_value': multifund_res2['tx'], 'new_value': NEW_VALUES_LIST['multi_tx_2']}, - {'data_keys': ['txid'], 'original_value': multifund_res2['txid'], 'new_value': NEW_VALUES_LIST['multi_txid_2']}, - {'data_keys': ['message'], 'original_value': multifund_res2['failed'][0]['error']['message'], 'new_value': NEW_VALUES_LIST['error_message_1']}, - {'data_keys': ['utxos'], 'original_value': [utxo], 'new_value': [NEW_VALUES_LIST['c35_txid'] + ':1']}, - {'data_keys': ['any', 'funding_address'], 'original_value': fund_start_res1['funding_address'], 'new_value': NEW_VALUES_LIST['destination_4']}, - {'data_keys': ['any', 'outputs'], 'original_value': outputs_1, 'new_value': example_outputs_1}, - {'data_keys': ['scriptpubkey'], 'original_value': fund_start_res1['scriptpubkey'], 'new_value': NEW_VALUES_LIST['script_pubkey_1']}, - {'data_keys': ['any', 'funding_address'], 'original_value': fund_start_res2['funding_address'], 'new_value': NEW_VALUES_LIST['destination_5']}, - {'data_keys': ['any', 'outputs'], 'original_value': outputs_2, 'new_value': example_outputs_2}, - {'data_keys': ['scriptpubkey'], 'original_value': fund_start_res2['scriptpubkey'], 'new_value': NEW_VALUES_LIST['script_pubkey_2']}, - {'data_keys': ['initialpsbt', 'psbt'], 'original_value': psbt_init_res1['psbt'], 'new_value': NEW_VALUES_LIST['psbt_13']}, - {'data_keys': ['any', 'initialpsbt', 'psbt'], 'original_value': psbt_init_res2['psbt'], 'new_value': NEW_VALUES_LIST['psbt_14']}, - {'data_keys': ['any', 'txid'], 'original_value': initpsbt_1['reservations'][0]['txid'], 'new_value': NEW_VALUES_LIST['utxo_1']}, - {'data_keys': ['any', 'initialpsbt', 'psbt'], 'original_value': initpsbt_1['psbt'], 'new_value': NEW_VALUES_LIST['psbt_15']}, - {'data_keys': ['any', 'initialpsbt', 'psbt'], 'original_value': initpsbt_2['psbt'], 'new_value': NEW_VALUES_LIST['psbt_16']}, - {'data_keys': ['any', 'txid'], 'original_value': initpsbt_2['reservations'][0]['txid'], 'new_value': NEW_VALUES_LIST['utxo_1']}, - {'data_keys': ['initialpsbt', 'psbt', 'signed_psbt'], 'original_value': openchannelinit_res1['psbt'], 'new_value': NEW_VALUES_LIST['psbt_17']}, - {'data_keys': ['funding_serial'], 'original_value': openchannelinit_res1['funding_serial'], 'new_value': NEW_VALUES_LIST['funding_serial_1']}, - {'data_keys': ['initialpsbt', 'psbt', 'signed_psbt'], 'original_value': openchannelinit_res2['psbt'], 'new_value': NEW_VALUES_LIST['psbt_18']}, - {'data_keys': ['funding_serial'], 'original_value': openchannelinit_res2['funding_serial'], 'new_value': NEW_VALUES_LIST['funding_serial_2']}, - {'data_keys': ['initialpsbt', 'psbt', 'signed_psbt'], 'original_value': openchannelbump_res1['psbt'], 'new_value': NEW_VALUES_LIST['psbt_19']}, - {'data_keys': ['initialpsbt', 'psbt', 'signed_psbt'], 'original_value': openchannelbump_res2['psbt'], 'new_value': NEW_VALUES_LIST['psbt_20']}, - {'data_keys': ['any', 'initialpsbt', 'psbt', 'signed_psbt'], 'original_value': openchannelbump_res3['psbt'], 'new_value': NEW_VALUES_LIST['psbt_21']}, - {'data_keys': ['funding_serial'], 'original_value': openchannelbump_res1['funding_serial'], 'new_value': NEW_VALUES_LIST['funding_serial_3']}, - {'data_keys': ['funding_serial'], 'original_value': openchannelbump_res2['funding_serial'], 'new_value': NEW_VALUES_LIST['funding_serial_4']}, - {'data_keys': ['funding_serial'], 'original_value': openchannelbump_res3['funding_serial'], 'new_value': NEW_VALUES_LIST['funding_serial_5']}, - {'data_keys': ['signed_psbt'], 'original_value': signed_psbt_1['signed_psbt'], 'new_value': NEW_VALUES_LIST['psbt_22']}, - {'data_keys': ['tx'], 'original_value': openchannelsigned_res1['tx'], 'new_value': NEW_VALUES_LIST['ocs_tx_1']}, - {'data_keys': ['txid'], 'original_value': openchannelsigned_res1['txid'], 'new_value': NEW_VALUES_LIST['ocs_txid_1']}, - {'data_keys': ['any', 'signed_psbt'], 'original_value': signed_psbt_2['signed_psbt'], 'new_value': NEW_VALUES_LIST['psbt_23']}, - {'data_keys': ['tx'], 'original_value': openchannelsigned_res2['tx'], 'new_value': NEW_VALUES_LIST['ocs_tx_2']}, - {'data_keys': ['txid'], 'original_value': openchannelsigned_res2['txid'], 'new_value': NEW_VALUES_LIST['ocs_txid_2']}, - {'data_keys': ['psbt'], 'original_value': psbt_1, 'new_value': NEW_VALUES_LIST['psbt_24']}, - {'data_keys': ['psbt'], 'original_value': psbt_2, 'new_value': NEW_VALUES_LIST['psbt_25']}, - {'data_keys': ['any'], 'original_value': prev_utxos, 'new_value': example_utxos}, - {'data_keys': ['unsigned_tx'], 'original_value': txdiscard_res1['unsigned_tx'], 'new_value': NEW_VALUES_LIST['unsigned_tx_3']}, - {'data_keys': ['unsigned_tx'], 'original_value': txdiscard_res2['unsigned_tx'], 'new_value': NEW_VALUES_LIST['unsigned_tx_4']}, - {'data_keys': ['tx'], 'original_value': txsend_res1['tx'], 'new_value': NEW_VALUES_LIST['txsend_tx_1']}, - {'data_keys': ['psbt'], 'original_value': txsend_res1['psbt'], 'new_value': NEW_VALUES_LIST['psbt_24']}, - {'data_keys': ['tx'], 'original_value': txsend_res2['tx'], 'new_value': NEW_VALUES_LIST['txsend_tx_2']}, - {'data_keys': ['psbt'], 'original_value': txsend_res2['psbt'], 'new_value': NEW_VALUES_LIST['psbt_26']}, - ]) l1.rpc.disconnect(l3.info['id'], True) l1.rpc.disconnect(l4.info['id'], True) l1.rpc.disconnect(l5.info['id'], True) - bitcoind.generate_block(1) + bitcoind.generate_block(1, wait_for_mempool=2) sync_blockheight(bitcoind, [l1, l3, l4, l5]) logger.info('Channels Done!') except Exception as e: @@ -1683,7 +1134,7 @@ def generate_autoclean_delete_examples(l1, l2, l3, l4, l5, c12, c23): try: logger.info('Auto-clean and Delete Start...') l2.rpc.close(l5.info['id']) - dfc_res1 = update_example(node=l2, method='dev-forget-channel', params={'id': l5.info['id']}, description=[f'Forget a channel by peer pubkey when only one channel exists with the peer:']) + update_example(node=l2, method='dev-forget-channel', params={'id': l5.info['id']}, description=[f'Forget a channel by peer pubkey when only one channel exists with the peer:']) # Create invoices for delpay and delinvoice examples inv_l35 = l3.rpc.invoice('50000sat', 'lbl_l35', 'l35 description') @@ -1708,7 +1159,7 @@ def generate_autoclean_delete_examples(l1, l2, l3, l4, l5, c12, c23): # Delinvoice l1.rpc.pay(inv_l35['bolt11']) l1.rpc.pay(inv_l37['bolt11']) - delinv_res1 = update_example(node=l3, method='delinvoice', params={'label': 'lbl_l36', 'status': 'unpaid'}) + update_example(node=l3, method='delinvoice', params={'label': 'lbl_l36', 'status': 'unpaid'}) # invoice already deleted, pay will fail; used for delpay failed example with pytest.raises(RpcError): @@ -1716,10 +1167,10 @@ def generate_autoclean_delete_examples(l1, l2, l3, l4, l5, c12, c23): listsendpays_l1 = l1.rpc.listsendpays()['payments'] sendpay_g1_p1 = next((x for x in listsendpays_l1 if 'groupid' in x and x['groupid'] == 1 and 'partid' in x and x['partid'] == 2), None) - delpay_res1 = update_example(node=l1, method='delpay', params={'payment_hash': listsendpays_l1[0]['payment_hash'], 'status': 'complete'}) - delpay_res2 = update_example(node=l1, method='delpay', params=[listsendpays_l1[-1]['payment_hash'], listsendpays_l1[-1]['status']]) - delpay_res3 = update_example(node=l1, method='delpay', params={'payment_hash': sendpay_g1_p1['payment_hash'], 'status': sendpay_g1_p1['status'], 'groupid': 1, 'partid': 2}) - delinv_res2 = update_example(node=l3, method='delinvoice', params={'label': 'lbl_l37', 'status': 'paid', 'desconly': True}) + update_example(node=l1, method='delpay', params={'payment_hash': listsendpays_l1[0]['payment_hash'], 'status': 'complete'}) + update_example(node=l1, method='delpay', params=[listsendpays_l1[-1]['payment_hash'], listsendpays_l1[-1]['status']]) + update_example(node=l1, method='delpay', params={'payment_hash': sendpay_g1_p1['payment_hash'], 'status': sendpay_g1_p1['status'], 'groupid': 1, 'partid': 2}) + update_example(node=l3, method='delinvoice', params={'label': 'lbl_l37', 'status': 'paid', 'desconly': True}) # Delforward failed_forwards = l2.rpc.listforwards('failed')['forwards'] @@ -1728,49 +1179,26 @@ def generate_autoclean_delete_examples(l1, l2, l3, l4, l5, c12, c23): update_example(node=l2, method='delforward', params={'in_channel': c12, 'in_htlc_id': local_failed_forwards[0]['in_htlc_id'], 'status': 'local_failed'}) if len(failed_forwards) > 0 and 'in_htlc_id' in failed_forwards[0]: update_example(node=l2, method='delforward', params={'in_channel': c12, 'in_htlc_id': failed_forwards[0]['in_htlc_id'], 'status': 'failed'}) - dfc_res2 = update_example(node=l2, method='dev-forget-channel', params={'id': l3.info['id'], 'short_channel_id': c23, 'force': True}, description=[f'Forget a channel by short channel id when peer has multiple channels:']) + update_example(node=l2, method='dev-forget-channel', params={'id': l3.info['id'], 'short_channel_id': c23, 'force': True}, description=[f'Forget a channel by short channel id when peer has multiple channels:']) # Autoclean update_example(node=l2, method='autoclean-once', params=['failedpays', 1]) update_example(node=l2, method='autoclean-once', params=['succeededpays', 1]) update_example(node=l2, method='autoclean-status', params={'subsystem': 'expiredinvoices'}) update_example(node=l2, method='autoclean-status', params={}) - REPLACE_RESPONSE_VALUES.extend([ - {'data_keys': ['any', 'bolt11'], 'original_value': delinv_res1['bolt11'], 'new_value': NEW_VALUES_LIST['bolt11_di_1']}, - {'data_keys': ['payment_hash'], 'original_value': delinv_res1['payment_hash'], 'new_value': NEW_VALUES_LIST['payment_hash_di_1']}, - {'data_keys': ['expires_at'], 'original_value': delinv_res1['expires_at'], 'new_value': NEW_VALUES_LIST['time_at_900']}, - {'data_keys': ['any', 'bolt11'], 'original_value': delinv_res2['bolt11'], 'new_value': NEW_VALUES_LIST['bolt11_di_2']}, - {'data_keys': ['payment_hash'], 'original_value': delinv_res2['payment_hash'], 'new_value': NEW_VALUES_LIST['payment_hash_di_2']}, - {'data_keys': ['paid_at'], 'original_value': delinv_res2['paid_at'], 'new_value': NEW_VALUES_LIST['time_at_850']}, - {'data_keys': ['expires_at'], 'original_value': delinv_res2['expires_at'], 'new_value': NEW_VALUES_LIST['time_at_900']}, - {'data_keys': ['payment_preimage'], 'original_value': delinv_res2['payment_preimage'], 'new_value': NEW_VALUES_LIST['payment_preimage_di_1']}, - {'data_keys': ['payment_hash'], 'original_value': delpay_res1['payments'][0]['payment_hash'], 'new_value': NEW_VALUES_LIST['payment_hash_dp_1']}, - {'data_keys': ['payment_preimage'], 'original_value': delpay_res1['payments'][0]['payment_preimage'], 'new_value': NEW_VALUES_LIST['payment_preimage_dp_1']}, - {'data_keys': ['any', 'bolt11'], 'original_value': delpay_res1['payments'][0]['bolt11'], 'new_value': NEW_VALUES_LIST['bolt11_dp_1']}, - {'data_keys': ['created_at'], 'original_value': delpay_res1['payments'][0]['created_at'], 'new_value': NEW_VALUES_LIST['time_at_800']}, - {'data_keys': ['completed_at'], 'original_value': delpay_res1['payments'][0]['completed_at'], 'new_value': NEW_VALUES_LIST['time_at_850']}, - {'data_keys': ['any', 'payment_hash'], 'original_value': delpay_res2['payments'][0]['payment_hash'], 'new_value': NEW_VALUES_LIST['payment_hash_dp_2']}, - {'data_keys': ['created_at'], 'original_value': delpay_res2['payments'][0]['created_at'], 'new_value': NEW_VALUES_LIST['time_at_800']}, - {'data_keys': ['completed_at'], 'original_value': delpay_res2['payments'][0]['completed_at'], 'new_value': NEW_VALUES_LIST['time_at_850']}, - {'data_keys': ['payment_hash'], 'original_value': delpay_res3['payments'][0]['payment_hash'], 'new_value': NEW_VALUES_LIST['payment_hash_dp_3']}, - {'data_keys': ['created_at'], 'original_value': delpay_res3['payments'][0]['created_at'], 'new_value': NEW_VALUES_LIST['time_at_800']}, - {'data_keys': ['completed_at'], 'original_value': delpay_res3['payments'][0]['completed_at'], 'new_value': NEW_VALUES_LIST['time_at_850']}, - {'data_keys': ['funding_txid'], 'original_value': dfc_res1['funding_txid'], 'new_value': NEW_VALUES_LIST['funding_txid_1']}, - {'data_keys': ['funding_txid'], 'original_value': dfc_res2['funding_txid'], 'new_value': NEW_VALUES_LIST['funding_txid_2']}, - ]) logger.info('Auto-clean and Delete Done!') except Exception as e: logger.error(f'Error in generating autoclean and delete examples: {e}') raise -def generate_backup_recovery_examples(node_factory, l4, l5, l6): +def generate_backup_recovery_examples(node_factory, l4, l5, l6, regenerate_blockchain): """Node backup and recovery examples""" try: logger.info('Backup and Recovery Start...') # New node l13 used for recover and exposesecret examples - l13 = node_factory.get_node(options={'exposesecret-passphrase': "test_exposesecret"}) + l13 = node_factory.get_node(options={'exposesecret-passphrase': "test_exposesecret"}, no_entropy=True, base_portnum=BASE_PORTNUM) update_example(node=l13, method='exposesecret', params={'passphrase': 'test_exposesecret'}) update_example(node=l13, method='exposesecret', params=['test_exposesecret', 'cln2']) @@ -1790,14 +1218,6 @@ def generate_backup_recovery_examples(node_factory, l4, l5, l6): recoverchannel_res1 = l4.rpc.recoverchannel(backup_l4['scb']) recoverchannel_res1['stubs'].sort() update_example(node=l4, method='recoverchannel', params={'scb': backup_l4['scb']}, response=recoverchannel_res1) - example_scb = [ - '0000000000000001' + NEW_VALUES_LIST['c34_channel_id'] + NEW_VALUES_LIST['l3_id'] + '00017f000001' + ('0340' * 23) + '0003401000', - '0000000000000002' + NEW_VALUES_LIST['c34_2_channel_id'] + NEW_VALUES_LIST['l3_id'] + '00017f000001' + ('0342' * 23) + '0003401000', - '0000000000000003' + NEW_VALUES_LIST['c41_channel_id'] + NEW_VALUES_LIST['l1_id'] + '00017f000001' + ('0410' * 23) + '0003401000', - '0000000000000004' + NEW_VALUES_LIST['c12_channel_id'] + NEW_VALUES_LIST['l1_id'] + '00017f000001' + ('0120' * 23) + '0003401000', - '0000000000000005' + NEW_VALUES_LIST['mf_channel_id_4'] + NEW_VALUES_LIST['l1_id'] + '00017f000001' + ('0152' * 23) + '0003401000', - '0000000000000006' + NEW_VALUES_LIST['mf_channel_id_5'] + NEW_VALUES_LIST['l2_id'] + '00017f000001' + ('0124' * 23) + '0003401000', - ] # Emergency recover l5.stop() os.unlink(os.path.join(l5.daemon.lightning_dir, TEST_NETWORK, 'lightningd.sqlite3')) @@ -1824,205 +1244,94 @@ def get_hsm_secret(n): l13codex32, _ = get_hsm_secret(l13) update_example(node=l6, method='recover', params={'hsmsecret': l6hex}) update_example(node=l13, method='recover', params={'hsmsecret': l13codex32}) - REPLACE_RESPONSE_VALUES.extend([ - {'data_keys': ['hsmsecret'], 'original_value': l13codex32, 'new_value': NEW_VALUES_LIST['hsm_secret_cdx_1']}, - {'data_keys': ['scb'], 'original_value': backup_l4['scb'], 'new_value': example_scb}, - {'data_keys': ['channel_id', 'account'], 'original_value': backup_l4['scb'][5][16:(16 + 64)], 'new_value': NEW_VALUES_LIST['mf_channel_id_5']}, - ]) logger.info('Backup and Recovery Done!') except Exception as e: logger.error(f'Error in generating backup and recovery examples: {e}') raise -def generate_list_examples(l1, l2, l3, c12, c23_2, inv_l31, inv_l32, offer_l23, inv_req_l1_l22, address_l22): +def generate_list_examples(bitcoind, l1, l2, l3, c12, c23_2, inv_l31, inv_l32, offer_l23, inv_req_l1_l22, address_l22): """Generates lists rpc examples""" try: logger.info('Lists Start...') + # Make sure all nodes are caught up. + sync_blockheight(bitcoind, [l1, l2, l3]) # Transactions Lists - FUNDS_LEN = 3 - listfunds_res1 = l1.rpc.listfunds() - listfunds_res1 = update_list_responses(listfunds_res1, list_key='outputs', slice_upto=FUNDS_LEN) - listfunds_res1['channels'] = [channel for channel in listfunds_res1['channels'] if channel['peer_id'] != '0382ce59ebf18be7d84677c2e35f23294b9992ceca95491fcf8a56c6cb2d9de199'] - listfunds_res1['channels'] = sorted(listfunds_res1['channels'], key=lambda x: x['peer_id']) - for i in range(1, FUNDS_LEN + 1): - lfoutput = listfunds_res1['outputs'][i - 1] - lfchannel = listfunds_res1['channels'][i - 1] - lfoutput['output'] = i + 1 - lfoutput['txid'] = 'txid' + (('0000' + str(i)) * 12) - lfoutput['scriptpubkey'] = 'scriptpubkey' + (f"{i:02}" * 28) - lfoutput['address'] = 'bcrt1p00' + ('04' * 28) - lfoutput['blockheight'] = NEW_VALUES_LIST['blockheight_160'] - lfoutput['amount_msat'] = 25000000 + (i * 1000000) - lfchannel['funding_output'] = i - lfchannel['funding_txid'] = 'txid' + (('0100' + str(i)) * 12) - lfchannel['amount_msat'] = 10000000 + (i * 1000000) - lfchannel['our_amount_msat'] = 35000000 + (i * 1000000) - update_example(node=l1, method='listfunds', params={}, response=listfunds_res1) + listfunds_res1 = l2.rpc.listfunds() + update_example(node=l2, method='listfunds', params={}, response=listfunds_res1) listforwards_res1 = l2.rpc.listforwards(in_channel=c12, out_channel=c23_2, status='settled') - listforwards_res1 = update_list_responses(listforwards_res1, list_key='forwards', slice_upto=5, update_func=lambda x, i: x.update({'received_time': NEW_VALUES_LIST['time_at_800'] + (i * 10000), 'resolved_time': NEW_VALUES_LIST['time_at_850'] + (i * 10000)})) update_example(node=l2, method='listforwards', params={'in_channel': c12, 'out_channel': c23_2, 'status': 'settled'}, response=listforwards_res1) listforwards_res2 = l2.rpc.listforwards() - listforwards_res2 = update_list_responses(listforwards_res2, list_key='forwards', slice_upto=5, update_func=lambda x, i: x.update({'received_time': NEW_VALUES_LIST['time_at_800'] + (i * 10000), 'resolved_time': NEW_VALUES_LIST['time_at_850'] + (i * 10000)})) update_example(node=l2, method='listforwards', params={}, response=listforwards_res2) listinvoices_res1 = l2.rpc.listinvoices(label='lbl_l21') - listinvoices_res1 = update_list_responses(listinvoices_res1, list_key='invoices', slice_upto=5, update_func=lambda x, i: x.update({'paid_at': NEW_VALUES_LIST['time_at_850'] + (i * 10000), 'expires_at': NEW_VALUES_LIST['time_at_900'] + (i * 10000)})) update_example(node=l2, method='listinvoices', params={'label': 'lbl_l21'}, response=listinvoices_res1) listinvoices_res2 = l2.rpc.listinvoices() - listinvoices_res2 = update_list_responses(listinvoices_res2, list_key='invoices', slice_upto=5, update_func=lambda x, i: x.update({'paid_at': NEW_VALUES_LIST['time_at_850'] + (i * 10000), 'expires_at': NEW_VALUES_LIST['time_at_900'] + (i * 10000)})) update_example(node=l2, method='listinvoices', params={}, response=listinvoices_res2) listhtlcs_res1 = l1.rpc.listhtlcs(c12) - listhtlcs_res1 = update_list_responses(listhtlcs_res1, list_key='htlcs') update_example(node=l1, method='listhtlcs', params=[c12], response=listhtlcs_res1) listhtlcs_res2 = l1.rpc.listhtlcs(index='created', start=4, limit=1) - listhtlcs_res2 = update_list_responses(listhtlcs_res2, list_key='htlcs') update_example(node=l1, method='listhtlcs', params={'index': 'created', 'start': 4, 'limit': 1}, response=listhtlcs_res2) listsendpays_res1 = l1.rpc.listsendpays(bolt11=inv_l31['bolt11']) - listsendpays_res1 = update_list_responses(listsendpays_res1, list_key='payments', slice_upto=5, update_func=lambda x, i: x.update({'created_at': NEW_VALUES_LIST['time_at_800'] + (i * 10000), 'completed_at': NEW_VALUES_LIST['time_at_900'] + (i * 10000)})) update_example(node=l1, method='listsendpays', params={'bolt11': inv_l31['bolt11']}, response=listsendpays_res1) listsendpays_res2 = l1.rpc.listsendpays() - listsendpays_res2 = update_list_responses(listsendpays_res2, list_key='payments', slice_upto=5, update_func=lambda x, i: x.update({'created_at': NEW_VALUES_LIST['time_at_800'] + (i * 10000), 'completed_at': NEW_VALUES_LIST['time_at_900'] + (i * 10000)})) update_example(node=l1, method='listsendpays', params={}, response=listsendpays_res2) listpays_res1 = l2.rpc.listpays(bolt11=inv_l32['bolt11']) - listpays_res1 = update_list_responses(listpays_res1, list_key='pays') update_example(node=l2, method='listpays', params={'bolt11': inv_l32['bolt11']}, response=listpays_res1) listpays_res2 = l2.rpc.listpays() - listpays_res2 = update_list_responses(listpays_res2, list_key='pays') update_example(node=l2, method='listpays', params={}, response=listpays_res2) - listtransactions_res1 = l1.rpc.listtransactions() - listtransactions_res1 = update_list_responses(listtransactions_res1, list_key='transactions', slice_upto=2) - for i, transaction in enumerate(listtransactions_res1['transactions'], start=1): - transaction['hash'] = 'txid' + (('7000' + str(i)) * 11) - transaction['rawtx'] = '02000000000101lstx' + (('7000' + str(i)) * 34) - transaction['locktime'] = 549000000 + (i * 100) - transaction['inputs'] = transaction['inputs'][0:1] - transaction['inputs'][0]['txid'] = 'txid' + (('6001' + str(i)) * 12) - transaction['inputs'][0]['index'] = 1 - transaction['inputs'][0]['sequence'] = 2158510000 + (i * 1000) - for k, output in enumerate(transaction['outputs'], start=1): - output['scriptPubKey'] = 'scriptpubkey' + ((f"{i:02}" + f"{k:02}") * 14) - output['index'] = k - output['amount_msat'] = 201998900000 + (i * 1000) + (k * 100) - update_example(node=l1, method='listtransactions', params={}, response=listtransactions_res1) + listtransactions_res3 = l3.rpc.listtransactions() + update_example(node=l3, method='listtransactions', params={}, response=listtransactions_res3) listclosedchannels_res1 = l2.rpc.listclosedchannels() - listclosedchannels_res1 = update_list_responses(listclosedchannels_res1, list_key='closedchannels', slice_upto=2, update_func=None, sort=True, sort_key='channel_id') - for i, closedchannel in enumerate(listclosedchannels_res1['closedchannels'], start=1): - closedchannel['last_commitment_fee_msat'] = 2894000 + (i * 1000) - closedchannel['last_commitment_txid'] = 'txidcloselastcommitment0' + (('0000' + str(i)) * 8) - closedchannel['last_stable_connection'] = NEW_VALUES_LIST['time_at_850'] - closedchannel['alias'] = {'local': '12' + str(i) + 'x13' + str(i) + 'x14' + str(i), 'remote': '15' + str(i) + 'x16' + str(i) + 'x17' + str(i)} update_example(node=l2, method='listclosedchannels', params={}, response=listclosedchannels_res1) update_example(node=l2, method='listconfigs', params={'config': 'network'}) update_example(node=l2, method='listconfigs', params={'config': 'experimental-dual-fund'}) l2.rpc.jsonschemas = {} listconfigs_res3 = l2.rpc.listconfigs() - listconfigs_res3['configs']['htlc-maximum-msat']['value_msat'] = NEW_VALUES_LIST['htlc_max_msat'] - listconfigs_res3 = update_list_responses(listconfigs_res3, list_key='configs', slice_upto=len(listconfigs_res3['configs']), update_func=None, sort=True) update_example(node=l2, method='listconfigs', params={}, response=listconfigs_res3) update_example(node=l2, method='listsqlschemas', params={'table': 'offers'}) update_example(node=l2, method='listsqlschemas', params=['closedchannels']) - listpeerchannels_res1 = l1.rpc.listpeerchannels(l2.info['id']) - listpeerchannels_res1 = update_list_responses(listpeerchannels_res1, list_key='channels', slice_upto=3) - for i, channel in enumerate(listpeerchannels_res1['channels'], start=1): - channel['last_stable_connection'] = NEW_VALUES_LIST['time_at_850'] + (i * 10000) - channel['scratch_txid'] = 'scratchid1' + (('0' + str(i)) * 27) - channel['alias']['local'] = '3000000' + str(i) + 'x6000000' + str(i) + 'x6000' + str(i) - channel['alias']['remote'] = '1000000' + str(i) + 'x2000000' + str(i) + 'x3000' + str(i) - channel['max_total_htlc_in_msat'] = NEW_VALUES_LIST['htlc_max_msat'] - channel['their_max_htlc_value_in_flight_msat'] = NEW_VALUES_LIST['htlc_max_msat'] - channel['our_max_htlc_value_in_flight_msat'] = NEW_VALUES_LIST['htlc_max_msat'] - for j, state in enumerate(channel['state_changes'], start=1): - state['timestamp'] = '2024-10-10T00:0' + str(j) + ':00.000Z' - update_example(node=l1, method='listpeerchannels', params={'id': l2.info['id']}, response=listpeerchannels_res1) - listpeerchannels_res2 = l1.rpc.listpeerchannels() - listpeerchannels_2 = None - listpeerchannels_3 = None - i = 0 - for channel in listpeerchannels_res2['channels']: - if channel['peer_id'] == l2.info['id'] or channel['peer_id'] == l3.info['id']: - i = 2 if channel['peer_id'] == l2.info['id'] else 3 - scrt_id = 'scratchid2' + (('0' + str(i)) * 27) - channel['last_stable_connection'] = NEW_VALUES_LIST['time_at_850'] + (i * 10000) - channel['scratch_txid'] = scrt_id - channel['alias']['local'] = '3000000' + str(i) + 'x6000000' + str(i) + 'x6000' + str(i) - channel['alias']['remote'] = '1000000' + str(i) + 'x2000000' + str(i) + 'x3000' + str(i) - channel['close_to_addr'] = 'bcrt1pcl' + (('000' + str(i)) * 14) - channel['close_to'] = 'db2dec31' + (('0' + str(i)) * 30) - channel['status'][0] = re.sub(r'(tx:)[a-f0-9]+', r'\1' + scrt_id, channel['status'][0]) - channel['max_total_htlc_in_msat'] = NEW_VALUES_LIST['htlc_max_msat'] - channel['their_max_htlc_value_in_flight_msat'] = NEW_VALUES_LIST['htlc_max_msat'] - channel['our_max_htlc_value_in_flight_msat'] = NEW_VALUES_LIST['htlc_max_msat'] - if 'inflight' in channel and len(channel['inflight']) > 0: - channel['inflight'][0]['scratch_txid'] = scrt_id - for j, state in enumerate(channel['state_changes'], start=1): - state['timestamp'] = '2024-10-10T00:0' + str(j) + ':00.000Z' - if channel['peer_id'] == l2.info['id']: - listpeerchannels_2 = channel - else: - listpeerchannels_3 = channel - listpeerchannels_res2['channels'] = [channel for channel in [listpeerchannels_2, listpeerchannels_3] if channel is not None] - update_example(node=l1, method='listpeerchannels', params={}, response=listpeerchannels_res2) + listpeerchannels_res1 = l2.rpc.listpeerchannels(l1.info['id']) + update_example(node=l2, method='listpeerchannels', params={'id': l1.info['id']}, response=listpeerchannels_res1) + listpeerchannels_res2 = l2.rpc.listpeerchannels() + update_example(node=l2, method='listpeerchannels', params={}, response=listpeerchannels_res2) listchannels_res1 = l1.rpc.listchannels(c12) - listchannels_res1 = update_list_responses(listchannels_res1, list_key='channels', slice_upto=5, update_func=lambda x, i: x.update({'last_update': NEW_VALUES_LIST['time_at_850'] + (i * 10000), 'channel_flags': i, 'active': i % 2 == 0})) update_example(node=l1, method='listchannels', params={'short_channel_id': c12}, response=listchannels_res1) - listchannels_res2 = l1.rpc.listchannels() - listchannels_res2 = update_list_responses(listchannels_res2, list_key='channels', slice_upto=5, update_func=lambda x, i: x.update({'last_update': NEW_VALUES_LIST['time_at_850'] + (i * 10000), 'channel_flags': i, 'active': i % 2 == 0})) - update_example(node=l1, method='listchannels', params={}, response=listchannels_res2) + listchannels_res2 = l2.rpc.listchannels() + update_example(node=l2, method='listchannels', params={}, response=listchannels_res2) listnodes_res1 = l2.rpc.listnodes(l3.info['id']) - listnodes_res1 = update_list_responses(listnodes_res1, list_key='nodes', slice_upto=5, update_func=lambda x, i: x.update({'last_timestamp': NEW_VALUES_LIST['time_at_800'] + (i * 10000)})) update_example(node=l2, method='listnodes', params={'id': l3.info['id']}, response=listnodes_res1) listnodes_res2 = l2.rpc.listnodes() - listnodes_res2 = update_list_responses(listnodes_res2, list_key='nodes', slice_upto=5, update_func=lambda x, i: x.update({'last_timestamp': NEW_VALUES_LIST['time_at_800'] + (i * 10000)})) update_example(node=l2, method='listnodes', params={}, response=listnodes_res2) listpeers_res1 = l2.rpc.listpeers(l3.info['id']) - listpeers_res1 = update_list_responses(listpeers_res1, list_key='peers', slice_upto=5, update_func=None, sort=True, sort_key='id') update_example(node=l2, method='listpeers', params={'id': l3.info['id']}, response=listpeers_res1) listpeers_res2 = l2.rpc.listpeers() - listpeers_res2 = update_list_responses(listpeers_res2, list_key='peers', slice_upto=5, update_func=None, sort=True, sort_key='id') update_example(node=l2, method='listpeers', params={}, response=listpeers_res2) update_example(node=l2, method='listdatastore', params={'key': ['employee']}) update_example(node=l2, method='listdatastore', params={'key': 'somekey'}) listoffers_res1 = l2.rpc.listoffers(active_only=True) - for i, offer in enumerate(listoffers_res1['offers'], start=1): - ofr_id = 'offerid_l2' + str(i) - bolt12_id = 'bolt12_l2' + str(i) - offer['offer_id'] = NEW_VALUES_LIST[ofr_id] - offer['bolt12'] = NEW_VALUES_LIST[bolt12_id] - listoffers_res1 = update_list_responses(listoffers_res1, list_key='offers', slice_upto=5, update_func=None, sort=True, sort_key='offer_id') update_example(node=l2, method='listoffers', params={'active_only': True}, response=listoffers_res1) listoffers_res2 = l2.rpc.listoffers(offer_id=offer_l23['offer_id']) - listoffers_res2 = update_list_responses(listoffers_res2, list_key='offers') update_example(node=l2, method='listoffers', params=[offer_l23['offer_id']], response=listoffers_res2) update_example(node=l2, method='listinvoicerequests', params=[inv_req_l1_l22['invreq_id']]) listinvoicerequests_res2 = l2.rpc.listinvoicerequests() - listinvoicerequests_res2 = update_list_responses(listinvoicerequests_res2, list_key='invoicerequests', slice_upto=len(listinvoicerequests_res2['invoicerequests']), update_func=None, sort=True, sort_key='used') update_example(node=l2, method='listinvoicerequests', params={}, response=listinvoicerequests_res2) update_example(node=l2, method='listaddresses', params=[address_l22['p2tr']]) update_example(node=l2, method='listaddresses', params={'start': 6, 'limit': 2}) - REPLACE_RESPONSE_VALUES.extend([ - {'data_keys': ['any', 'invreq_id'], 'original_value': inv_req_l1_l22['invreq_id'], 'new_value': NEW_VALUES_LIST['invreq_id_l1_l22']}, - {'data_keys': ['netaddr'], 'original_value': listpeers_res2['peers'][0]['netaddr'], 'new_value': [NEW_VALUES_LIST['l1_addr']]}, - {'data_keys': ['any'], 'original_value': listconfigs_res3['configs']['addr']['values_str'][0], 'new_value': NEW_VALUES_LIST['configs_3_addr2']}, - {'data_keys': ['value_int'], 'original_value': listconfigs_res3['configs']['bitcoin-rpcport']['value_int'], 'new_value': NEW_VALUES_LIST['bitcoin-rpcport']}, - {'data_keys': ['value_int'], 'original_value': listconfigs_res3['configs']['grpc-port']['value_int'], 'new_value': NEW_VALUES_LIST['grpc-port']}, - {'data_keys': ['value_str'], 'original_value': listconfigs_res3['configs']['alias']['value_str'], 'new_value': NEW_VALUES_LIST['l2_alias']}, - {'data_keys': ['channel_flags'], 'original_value': listchannels_res2['channels'][-1]['channel_flags'], 'new_value': 2}, - ]) logger.info('Lists Done!') except Exception as e: logger.error(f'Error in generating lists examples: {e}') @@ -2042,11 +1351,46 @@ def setup_logging(): @unittest.skipIf(not GENERATE_EXAMPLES, 'Generates examples for doc/schema/lightning-*.json files.') +@pytest.mark.parametrize('bitcoind', [False], indirect=True) def test_generate_examples(node_factory, bitcoind, executor): """Re-generates examples for doc/schema/lightning-*.json files""" + + # Change this to True to regenerate bitcoin block & wallet. + regenerate_blockchain = (os.environ.get("REGENERATE_BLOCKCHAIN") == "1") + wallet_exists = os.access("tests/data/autogenerate-bitcoind-wallet.dat", os.F_OK) + + # Make sure we can get the ports we expect. + check_ports(range(BASE_PORTNUM + 1, BASE_PORTNUM + 40)) + + # Make sure bitcoind doesn't steal our ports! + bitcoind.set_port(BASE_PORTNUM) + try: global ALL_RPC_EXAMPLES, REGENERATING_RPCS + if regenerate_blockchain: + if wallet_exists: + bitcoind.start(wallet_file="tests/data/autogenerate-bitcoind-wallet.dat") + else: + bitcoind.start() + else: + # This was created by bitcoind.rpc.backupwallet. Probably unnecessary, + # but reduces gratuitous differences if we have to regenerate the blockchain. + bitcoind.start(wallet_file="tests/data/autogenerate-bitcoind-wallet.dat") + with open("tests/data/autogenerate-bitcoin-blocks.json", "r") as f: + canned_blocks = json.load(f) + bitcoind.set_canned_blocks(canned_blocks) + + info = bitcoind.rpc.getblockchaininfo() + assert info['blocks'] == 0 + print(bitcoind.rpc.listwallets()) + # 102 is a funny story. When we *submitblock* the first 101 blocks, + # our wallet balance is 0. When we *generate* the frist 101 blocks, + # our wallet balance is 50. + if info['blocks'] < 102: + bitcoind.generate_block(102 - info['blocks']) + assert bitcoind.rpc.getbalance() > 0 + def list_all_examples(): """list all methods used in 'update_example' calls to ensure that all methods are covered""" try: @@ -2092,22 +1436,37 @@ def list_missing_examples(): logger.warning(f'This test ignores {len(IGNORE_RPCS_LIST)} rpc methods: {IGNORE_RPCS_LIST}') REGENERATING_RPCS = [rpc.strip() for rpc in os.getenv("REGENERATE").split(', ')] if os.getenv("REGENERATE") else ALL_RPC_EXAMPLES list_missing_examples() - l1, l2, l3, l4, l5, l6, c12, c23, c25 = setup_test_nodes(node_factory, bitcoind) + + # We make sure everyone is on predicable time + os.environ['CLN_DEV_SET_TIME'] = '1738000000' + + l1, l2, l3, l4, l5, l6, c12, c23, c25 = setup_test_nodes(node_factory, bitcoind, regenerate_blockchain) c23_2, c23res2, c34_2, inv_l11, inv_l21, inv_l22, inv_l31, inv_l32, inv_l34 = generate_transactions_examples(l1, l2, l3, l4, l5, c25, bitcoind) rune_l21 = generate_runes_examples(l1, l2, l3) generate_datastore_examples(l2) + generate_coinmvt_examples(l2) generate_bookkeeper_examples(l2, l3, c23res2['channel_id']) offer_l23, inv_req_l1_l22 = generate_offers_renepay_examples(l1, l2, inv_l21, inv_l34) generate_askrene_examples(l1, l2, l3, c12, c23_2) generate_wait_examples(l1, l2, bitcoind, executor) address_l22 = generate_utils_examples(l1, l2, l3, l4, l5, l6, c23_2, c34_2, inv_l11, inv_l22, rune_l21, bitcoind) - generate_splice_examples(node_factory, bitcoind) - generate_channels_examples(node_factory, bitcoind, l1, l3, l4, l5) + generate_splice_examples(node_factory, bitcoind, regenerate_blockchain) + generate_channels_examples(node_factory, bitcoind, l1, l3, l4, l5, regenerate_blockchain) generate_autoclean_delete_examples(l1, l2, l3, l4, l5, c12, c23) - generate_backup_recovery_examples(node_factory, l4, l5, l6) - generate_list_examples(l1, l2, l3, c12, c23_2, inv_l31, inv_l32, offer_l23, inv_req_l1_l22, address_l22) + generate_backup_recovery_examples(node_factory, l4, l5, l6, regenerate_blockchain) + generate_list_examples(bitcoind, l1, l2, l3, c12, c23_2, inv_l31, inv_l32, offer_l23, inv_req_l1_l22, address_l22) update_examples_in_schema_files() logger.info('All Done!!!') except Exception as e: logger.error(e, exc_info=True) sys.exit(1) + + if regenerate_blockchain: + with open("tests/data/autogenerate-bitcoin-blocks.json", "w") as blockfile: + print(json.dump(bitcoind.save_blocks(), blockfile)) + logger.info('tests/data/autogenerate-bitcoin-blocks.json updated') + + # Very first run, we can dump wallet too. + if not wallet_exists: + bitcoind.rpc.backupwallet("tests/data/autogenerate-bitcoind-wallet.dat") + logger.info('tests/data/autogenerate-bitcoind-wallet.dat regenerated') diff --git a/tests/data/autogenerate-bitcoin-blocks.json b/tests/data/autogenerate-bitcoin-blocks.json new file mode 100644 index 000000000000..cdb3ac478334 --- /dev/null +++ b/tests/data/autogenerate-bitcoin-blocks.json @@ -0,0 +1 @@ +["0000002006226e46111a0b59caaf126043eb5bbf28c34f3a5e332a1fc7b2b73cf188910fa72c459bae217156bc72683f461885cfc18b3b964c779c842628acd9c7538dbc45a5cc68ffff7f200000000001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff025100ffffffff0200f2052a01000000160014d71eed558e48e41606b72e52444b1e96a5e0bf4c0000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", "0000002078d6612ffd53372b48e6c14b86a97f0e91206b700dd93ad56568b58911e8ed0ed5b687830a53a72329a75746efe9e81fff80d1386e1de4b53669b0366185a83546a5cc68ffff7f200100000001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff025200ffffffff0200f2052a01000000160014d71eed558e48e41606b72e52444b1e96a5e0bf4c0000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", "0000002070d9a497d349938420c56e61700010f58e53e1864b48465f814ecc1e12faa75c2564fa3404434a497cff291f96b9ef2837c8e1380415e7d9f3bbb1d2ccfbf5b946a5cc68ffff7f200100000001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff025300ffffffff0200f2052a01000000160014d71eed558e48e41606b72e52444b1e96a5e0bf4c0000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", "00000020d21eeb70bfa43e27caafdd350594c5491c4fd32717d2ed2433acf5f3f3071a13b61dd54fcc8ebd4d111a644fb2b7134a92101fa87be2cb8327c3432aca4f025a47a5cc68ffff7f200100000001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff025400ffffffff0200f2052a01000000160014d71eed558e48e41606b72e52444b1e96a5e0bf4c0000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", "000000206b9dec3f36d32a15cc363f22ba9305eba985a8574825e4476d364cbda04ead306163bb5919c1ef33e7c13f5827a2b12474c57ed495b47856d9cb6cd17fb82c6447a5cc68ffff7f200200000001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff025500ffffffff0200f2052a01000000160014d71eed558e48e41606b72e52444b1e96a5e0bf4c0000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", "00000020565943609635cd6e33458449b0e652b46356582fccb6a6985898fb7a24969f34f9fb8e1dfcfff2d191457126bfb8bfb8818e7e54c21bc2c6351ee4fa35b8892947a5cc68ffff7f200600000001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff025600ffffffff0200f2052a01000000160014d71eed558e48e41606b72e52444b1e96a5e0bf4c0000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", "0000002080ab54a227f652ef915dedee0c954abc019402faa107c4894f27cf5f3eb88e65f1a50fd37962401edfed30b3b5862c050cf27d548f50ce8e64fb285157914e8747a5cc68ffff7f200100000001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff025700ffffffff0200f2052a01000000160014d71eed558e48e41606b72e52444b1e96a5e0bf4c0000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", "00000020dea46943be06094f6377fb3634ef478bd158d99d0331514a1d9faf15ea5ab120de6fa6914607119413680510502d6e3426237dee92a112393937030d26249b6d48a5cc68ffff7f200200000001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff025800ffffffff0200f2052a01000000160014d71eed558e48e41606b72e52444b1e96a5e0bf4c0000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", "0000002037bf9bbca0c248166960a58fcebecd44881db5c64b63969dbf2ecb42780ece7bf2718c26be0fdbd8cde6631f759621efcc342c9e4777dda201ee8a0437b2b02548a5cc68ffff7f200000000001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff025900ffffffff0200f2052a01000000160014d71eed558e48e41606b72e52444b1e96a5e0bf4c0000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", "00000020d00452704acebfd2ede8acacc358c87f637a90520b50c33e6fe8d03b25dc104a683c6776edb64a72972249d392badab940316ebd3066d508899c1de43809786f48a5cc68ffff7f200200000001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff025a00ffffffff0200f2052a01000000160014d71eed558e48e41606b72e52444b1e96a5e0bf4c0000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", "00000020d4911517c167f7c2578b0dbd9b66ac2a3e39ca93679f5d888dd4a69e988ef47d763a2b1fb0fdb356dccb4e388e1d02d826f574e2805371992d798e06639f3a3648a5cc68ffff7f200200000001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff025b00ffffffff0200f2052a01000000160014d71eed558e48e41606b72e52444b1e96a5e0bf4c0000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", "00000020da39018859382125e465bdf592f39f8cb31d6b352a2d8b7b1af25d1c69a4397a91f6acd817a7b109923e2da360e7845b0076266e8a30020e61363ed69bcac14d48a5cc68ffff7f200100000001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff025c00ffffffff0200f2052a01000000160014d71eed558e48e41606b72e52444b1e96a5e0bf4c0000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", "00000020bb30b0f67ec1c57a237b8a5e739188ac838f9b5ec14e556fdd00e375890e06555b7035614ffa4dfe49d1ace2cdf46f220b904aa95d497fc8058b6d20289ca94948a5cc68ffff7f200100000001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff025d00ffffffff0200f2052a01000000160014d71eed558e48e41606b72e52444b1e96a5e0bf4c0000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", "00000020f1d4cf377f1cbbede90e119c72f91ccacb84a5c6cc3e2903c17291e710f30206461f4d27dbf22ecab90d9ac6db35d86b9839e855a34f86eb9f2a446a2e7b36b549a5cc68ffff7f200000000001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff025e00ffffffff0200f2052a01000000160014d71eed558e48e41606b72e52444b1e96a5e0bf4c0000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", "000000209de1687b73220e852b464e73faddbd753f4eea47dc200fb326b2fc1a7db49f0b648949308962c2d1b7a2756f90ea42b0edd0dc3ba1f462ef5ccfebfa1d4e721a49a5cc68ffff7f200000000001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff025f00ffffffff0200f2052a01000000160014d71eed558e48e41606b72e52444b1e96a5e0bf4c0000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", "0000002040ba8c55096415bca15c6881b91c81dd1928d9e40b94bcbdcf6365031f7d18306912450ab57d4fb005afea85e4ac7e5de50c45955eab84d57c8cd5a337769b7e49a5cc68ffff7f200100000001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff026000ffffffff0200f2052a01000000160014d71eed558e48e41606b72e52444b1e96a5e0bf4c0000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", "000000206e2cdab4bcb06d267948bc4f97aaaefbd98a67ee2e6f2ac2d3a65f31c576b56c5d1e2c59a6f51e93599a81ac896120c851be9e81dcf9fff070da2d4aa0d59a7249a5cc68ffff7f200000000001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff03011100ffffffff0200f2052a01000000160014d71eed558e48e41606b72e52444b1e96a5e0bf4c0000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", "000000202698e54e5cac94d73fa12db1304287da26e9cdf335975943cee02f7086f72a2db2cd8694d9a3c56b63c198791cd66ea319b7cd72cad13dfcede3adf9e93caab649a5cc68ffff7f200100000001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff03011200ffffffff0200f2052a01000000160014d71eed558e48e41606b72e52444b1e96a5e0bf4c0000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", "00000020ec5323f0992d804c97f2cd47d746ec7e04b64222338533cda653bf840ef33e78c2cbe93d93fe3eff5c2d3b264715df40c5ac131e13c7a36b81260b5ab041e22349a5cc68ffff7f200500000001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff03011300ffffffff0200f2052a01000000160014d71eed558e48e41606b72e52444b1e96a5e0bf4c0000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", "00000020220c808211b4911cdce705388d21c5bac5a02e3e6ae1be55e3e86adb140e3171e012a294985be7512f47e64e8ea1b6204c6b848a933208f00d0d0bceae67aa034aa5cc68ffff7f200100000001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff03011400ffffffff0200f2052a01000000160014d71eed558e48e41606b72e52444b1e96a5e0bf4c0000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", "00000020b528a7616d24825a9e07a3af7e122577e29221afb34d5f58ea646a3cd2fdb31a768078204f9a8aaf53c0b13ac4122ec855e675d09b6cc0bb26d7029d7a6d3ae84aa5cc68ffff7f200000000001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff03011500ffffffff0200f2052a01000000160014d71eed558e48e41606b72e52444b1e96a5e0bf4c0000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", "00000020adbc751f6f460750fc93e60d338c6056f425ae72ec00f5df20120de41f76da440018eeaae162198391b3f06d0d53f5b212d4e12ba455331d112a1b9d26272ff24aa5cc68ffff7f200000000001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff03011600ffffffff0200f2052a01000000160014d71eed558e48e41606b72e52444b1e96a5e0bf4c0000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", "00000020bde780930c6da813f1717e540d1623bd2c198208fcf4747ea74375b75b5b497f9177151b9cefd17262ee2bd01ec7e09ecf2132bb710bff344a3bde1dd36fc8b94aa5cc68ffff7f200400000001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff03011700ffffffff0200f2052a01000000160014d71eed558e48e41606b72e52444b1e96a5e0bf4c0000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", "00000020063f7bfefa7b09462292509ce8f999429df5db8e2566b926bf0c1fb166adc32784644838ef7ea7e34e7e310cf67137b2bf82331ca5e359a481fee636a4ed36a34aa5cc68ffff7f200000000001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff03011800ffffffff0200f2052a01000000160014d71eed558e48e41606b72e52444b1e96a5e0bf4c0000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", "000000209e679cd8818d30cc419828b60f4d349e3d5e909ee10630c5ac60446a70d15c05d9815086f177205591f26f78e08cb5a28ca58c73f7e73ca9cefc67c6ec62e3614aa5cc68ffff7f200000000001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff03011900ffffffff0200f2052a01000000160014d71eed558e48e41606b72e52444b1e96a5e0bf4c0000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", "000000204ac31815d444767886611b1e0b5b09986556d2ac0881c096e27f77f4c13f786d112013b1dcd382ead5ee4f184e164a20e0b2d5e51a4b574df25f174d113c66a44ba5cc68ffff7f200100000001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff03011a00ffffffff0200f2052a01000000160014d71eed558e48e41606b72e52444b1e96a5e0bf4c0000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", "0000002077eabbb16f110441063f1cc043de2a7b0b99f957acc471a438304193cc38256c4a14740e18feff57ff3f17616cd878f5322ccfe54a9fc7b5eea29b7c1aa65cde4ba5cc68ffff7f200100000001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff03011b00ffffffff0200f2052a01000000160014d71eed558e48e41606b72e52444b1e96a5e0bf4c0000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", "00000020f8f3887fcbc66a646f7fb017e2b0c030d4df11eb510bf34a0e7b1262a64aec7c4ec219d9d01fe481009470395240fd604244243f0df1c3fc1a9cd50e049af0e34ba5cc68ffff7f200900000001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff03011c00ffffffff0200f2052a01000000160014d71eed558e48e41606b72e52444b1e96a5e0bf4c0000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", "0000002010092f08a952742708e57b68652712c14ac56b68d3c1a45246e48792beee4f3fa84ef6a0aa75824570625402c96bc3b5621a1ed1696926cfa101fa5de60747494ba5cc68ffff7f200000000001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff03011d00ffffffff0200f2052a01000000160014d71eed558e48e41606b72e52444b1e96a5e0bf4c0000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", "0000002059f37effa0324dffbaf8ae47caec32015ba786d52fa1af6a7402d4f0b423be45429cda4043d699e67cfec362eac9b6168481890d4aa9e58d85eb3051ce6741d64ba5cc68ffff7f200200000001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff03011e00ffffffff0200f2052a01000000160014d71eed558e48e41606b72e52444b1e96a5e0bf4c0000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", "0000002037fa32350c1dee649f58e5102dacfdc90ea38bfcdac9c7aeea1581b7cb3d5f1d8d830b79c797b0f37ec88d5402b3ddf00de68bc90a4944de860ebaa3c936efdb4ba5cc68ffff7f200000000001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff03011f00ffffffff0200f2052a01000000160014d71eed558e48e41606b72e52444b1e96a5e0bf4c0000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", "00000020a9cc7e801ab034fd49a3e8d0510de0fb54ad4989bd5a0e35c00f9b8a2887166b9c94fbc368f81c28ee5eff3536d801321386ff25b79811f27bbc22904ad83a7e4ca5cc68ffff7f200100000001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff03012000ffffffff0200f2052a01000000160014d71eed558e48e41606b72e52444b1e96a5e0bf4c0000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", "0000002008d078ff057f32fb582fe21a3c6aa70a9c45881cc4209dd1e90c3b758674d4508a0ff5d75a511ed75c1b1e5be06d4f74de5718d54567f74959454b55f28551ab4ca5cc68ffff7f200000000001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff03012100ffffffff0200f2052a01000000160014d71eed558e48e41606b72e52444b1e96a5e0bf4c0000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", "00000020f0bdf6f15c2fa098422c08cefe9612b426cb5b67c1dfd3033cdfdf4dcbe3b93e72fffc3a6a5f0302f09fb23e4e25a1b77e1cd5b0af75a75d234ef85c39bdfabd4ca5cc68ffff7f200200000001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff03012200ffffffff0200f2052a01000000160014d71eed558e48e41606b72e52444b1e96a5e0bf4c0000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", "000000205d79dcef51bd221e0551113f90741a53b65e82da3d93a34be37f84682bad947ef5dc7b75e580e0f055560ad51ac699cf300187c938bcd80b59f28e50a72049e64ca5cc68ffff7f200000000001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff03012300ffffffff0200f2052a01000000160014d71eed558e48e41606b72e52444b1e96a5e0bf4c0000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", "00000020def05c226b5c4f6a85a5f280f86f5d274c490a8bb8752fd90c7ca61688db27149989cc920e57a98dd2cea7b67569117851d78df959278c96a1ec4d51f6ecf16d4ca5cc68ffff7f200000000001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff03012400ffffffff0200f2052a01000000160014d71eed558e48e41606b72e52444b1e96a5e0bf4c0000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", "000000205c048787cc3a969c75d416120d97d1a362d66c86633e6d581e37881eb6d5a2740b171df0cc2e96253c36d91ac8be8ad95cb540603a7f003380797a95b77f35944ca5cc68ffff7f200100000001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff03012500ffffffff0200f2052a01000000160014d71eed558e48e41606b72e52444b1e96a5e0bf4c0000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", "000000208751473af77183111f70ef232f2c688b2cd8596ad89543d2eea777bddac6f140b917f3686ccf806e145c919d3d42200ce61da3ced1bb82a558af71c72e46f1864da5cc68ffff7f200000000001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff03012600ffffffff0200f2052a01000000160014d71eed558e48e41606b72e52444b1e96a5e0bf4c0000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", "000000203b51a2b08e2adff5019269b886042817aad78b144b95478720d958105e1d687ceed3d7a0b6e8338ef352a413abacac7f779633d4e215cbbee86036261fdad1c84da5cc68ffff7f200000000001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff03012700ffffffff0200f2052a01000000160014d71eed558e48e41606b72e52444b1e96a5e0bf4c0000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", "00000020797f895912604d95fb85fdff39ce0fd0fe26595ed320393d1480bebd82b3fd050b82bf81765649c1fd7eee0f69600fac63bd665649372b0238398240ec8be0044da5cc68ffff7f200100000001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff03012800ffffffff0200f2052a01000000160014d71eed558e48e41606b72e52444b1e96a5e0bf4c0000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", "000000202f54f301b02ddf7960fab28fb52913a0f893d2522731d043f0cbe86c102b0d125e514532cec7afbb6462f5b5d0619ba5f1d3817c021786ec2cfcbc3f403b94334da5cc68ffff7f200000000001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff03012900ffffffff0200f2052a01000000160014d71eed558e48e41606b72e52444b1e96a5e0bf4c0000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", "0000002085ee8bd0c42d15c072f9f08099abd17650ac145f68bd3cf9835ad936326f311ab03054dab58256a56b9292e459976c6bb9032c032967222d4fe445802b39194e4da5cc68ffff7f200100000001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff03012a00ffffffff0200f2052a01000000160014d71eed558e48e41606b72e52444b1e96a5e0bf4c0000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", "0000002009772ed9bbc790489b5c226e320b58786b6d980761e6fd5346b1c5636f80033e4c1580d8b9eef6e1d83342fd86c808e776a4fcd3045540d3af222586e67e0f294da5cc68ffff7f200000000001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff03012b00ffffffff0200f2052a01000000160014d71eed558e48e41606b72e52444b1e96a5e0bf4c0000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", "0000002067f195e71efedaf965cff1061522f7d3570c08f1f4d4873b8ee64fa96c85d74cc367f855568c8dfd892dae83c458b040f5f4daf3c51c74cbf766906a81b718b54ea5cc68ffff7f200000000001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff03012c00ffffffff0200f2052a01000000160014d71eed558e48e41606b72e52444b1e96a5e0bf4c0000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", "00000020093479e23ed98ef695264edd454bdb91a3b1889bc572030cac8c8c8c8b715a2d66e5c8218d4f67b60c742aff54115dbae079fb4b37636ef2818b1ca548acc6064ea5cc68ffff7f200000000001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff03012d00ffffffff0200f2052a01000000160014d71eed558e48e41606b72e52444b1e96a5e0bf4c0000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", "0000002009491a8791ccfaef3f568f1b830f1382ece832e4d5d260832dbe26147072b538dd4773397fc3f6ac040ee9152a71d302f54dfd34bd7a0214fa5eb3957b54ebf74ea5cc68ffff7f200500000001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff03012e00ffffffff0200f2052a01000000160014d71eed558e48e41606b72e52444b1e96a5e0bf4c0000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", "00000020b0f4e1229b00ca5be9d390dd3ee2a809e4ffcd197163d74d9d42a270b5984b09f630122f8fa0bec95caf1f8ff3173292eb206d6383518c17e2db763db7ea67164ea5cc68ffff7f200100000001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff03012f00ffffffff0200f2052a01000000160014d71eed558e48e41606b72e52444b1e96a5e0bf4c0000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", "00000020988bc0bb16edbce5fadf3a4892b7b74f2a43f5d5bdf2c9d921b243dd6e4a375c40aad4c05201681d57b807f6844462650c8115fa6f01a745274c9f817fdba9264ea5cc68ffff7f200200000001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff03013000ffffffff0200f2052a01000000160014d71eed558e48e41606b72e52444b1e96a5e0bf4c0000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", "00000020de432adf2e6c036a3cb09eb89a4bf9875983f3bba7ef0b03a465e91972dc7a2a1345ad4e4052bf455523551e80dc4ea2f6e4c7bb71cfb8bf7d6dd51943722c7e4ea5cc68ffff7f200000000001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff03013100ffffffff0200f2052a01000000160014d71eed558e48e41606b72e52444b1e96a5e0bf4c0000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", "000000203c6d955dd95ec641292bd75dd524aa32d4b31e4c3e103b09a487d1c0a3df4a2ba800be1696e4c987a619de2d676b57df41e10602dca927e08ff1bef56eeb09514fa5cc68ffff7f200000000001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff03013200ffffffff0200f2052a01000000160014d71eed558e48e41606b72e52444b1e96a5e0bf4c0000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", "000000204033118d6c7f93a5260a1c3416a105d8612a4ca865aea2b3fff34e4a410eb7735f396413f93a915cc46cc5521b13a7b049a3156011effe7e8db2f5920ed5ee5b4fa5cc68ffff7f200100000001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff03013300ffffffff0200f2052a01000000160014d71eed558e48e41606b72e52444b1e96a5e0bf4c0000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", "00000020dbf23e3d78583319c9f9e822fc75282aeb7d6d6e2b1dd5d63e2fa8158d1883511536f8224647c3dd1173d764dc1cfb76eb1dea38ebf564edb891cb079725d2234fa5cc68ffff7f200200000001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff03013400ffffffff0200f2052a01000000160014d71eed558e48e41606b72e52444b1e96a5e0bf4c0000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", "00000020fb7641eb0a615bb9a09e895250a60b7efb8391c24a6ce96043d06a2f1085da2ed8afb5f6b7918ae0be3e97cc13325cd3de7181c9a22fe5d74b499ac1b85771ee4fa5cc68ffff7f200000000001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff03013500ffffffff0200f2052a01000000160014d71eed558e48e41606b72e52444b1e96a5e0bf4c0000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", "00000020a4ba3f4b4cd6fd1db31830c69b3d794849817df85dcb0a5f986014e1f0ae44790f16961c89bf69839994409ac6a4df2dc5913e7db16c6b1314961f8706aae21c4fa5cc68ffff7f200000000001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff03013600ffffffff0200f2052a01000000160014d71eed558e48e41606b72e52444b1e96a5e0bf4c0000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", "00000020cb3fc3c7b2fcaf67c31f882109192bb3de55edbf06e25f5f1554c6a164395b78e85c6036b81df83053e9aa55db54ba1364ce773fc74931893b67f14559a8a5f54fa5cc68ffff7f200000000001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff03013700ffffffff0200f2052a01000000160014d71eed558e48e41606b72e52444b1e96a5e0bf4c0000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", "000000208aeb9d784a63df830bafd9f54859b99093eb68afcda36359315b96b3f096b902b7e3e339f427e59db9d69eae99e676ff5da5cd4e8dae02a8ef7d7eefcf4a624a50a5cc68ffff7f200100000001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff03013800ffffffff0200f2052a01000000160014d71eed558e48e41606b72e52444b1e96a5e0bf4c0000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", "000000205ebd4cd9335fd68d37fed84c50970c297c4660a7aa908eaa734f57049cccdf443c09ae0e80773efee060d4ed5c8d1a038f88fa41dd1515c866ebeb747577fcfb50a5cc68ffff7f200100000001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff03013900ffffffff0200f2052a01000000160014d71eed558e48e41606b72e52444b1e96a5e0bf4c0000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", "000000208cd01005b5619706fdef2bde9b72409fce9de761b5d5fdbec0338a0663d1a738a054250c849fdeb720a09b0b79c9b7157f9db889f949b560a5d8c6fb2f972d2750a5cc68ffff7f200000000001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff03013a00ffffffff0200f2052a01000000160014d71eed558e48e41606b72e52444b1e96a5e0bf4c0000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", "000000201e1b47c368eb2c5afc415cf9619607e1804ef4adaf0ef4ef54bcb13e0d1b431a7dc9c56f752b09a8377f9c72cb8d6d512eae756a92b629059a0ede17e26785ac50a5cc68ffff7f200100000001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff03013b00ffffffff0200f2052a01000000160014d71eed558e48e41606b72e52444b1e96a5e0bf4c0000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", "000000203cba4443757eb3dfb2d388619385fd8d80727aff9637a667c9ac02d190114b7e83814a66429df710b6cc2faea2f67a6c1b826e1a140a7f35cb6fd323409b8b7350a5cc68ffff7f200000000001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff03013c00ffffffff0200f2052a01000000160014d71eed558e48e41606b72e52444b1e96a5e0bf4c0000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", "00000020e56941afcff7d648b607d07ca89a9cda2ea55dc904fd9d0f51429e74808a573fb060dafe4fa14343a5c47712f45b0fb34d050b71077a9824569a8d62a5a941df50a5cc68ffff7f200500000001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff03013d00ffffffff0200f2052a01000000160014d71eed558e48e41606b72e52444b1e96a5e0bf4c0000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", "00000020210e74e854c644ac21d277d7abd826f7b72365b8d8383379922845f1d440e111b8836cc78a38ca75701ed0a7f801a4d568e9295120187184f74afaa4106d5ced51a5cc68ffff7f200000000001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff03013e00ffffffff0200f2052a01000000160014d71eed558e48e41606b72e52444b1e96a5e0bf4c0000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", "0000002053be5ca882197e09876f742607fcaf422ebd3999c9ab9de3ab11424bb1ce25514cd8535c7c1b782d46c0941cbea26a4c585ff5860ffa831ec239571544f4255a51a5cc68ffff7f200000000001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff03013f00ffffffff0200f2052a01000000160014d71eed558e48e41606b72e52444b1e96a5e0bf4c0000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", "000000209418750dc6471fe5d229e8907a11e0c2edb7ccba19ce9ecd5d2f28e9f2c6e763dd0914607bf03770872d1f0e93ef5c9cf5edc30765d684282c9a0838b16aad1551a5cc68ffff7f200400000001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff03014000ffffffff0200f2052a01000000160014d71eed558e48e41606b72e52444b1e96a5e0bf4c0000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", "00000020a912d8aedd10423d131c352ce65ae0eaf5dbe1467ba88f4fee46f8745d725266299f635bc6d7e62d5e82e2c63bfbb5ee61c60faadb12bb73d1f7bc7b741a777c51a5cc68ffff7f200000000001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff03014100ffffffff0200f2052a01000000160014d71eed558e48e41606b72e52444b1e96a5e0bf4c0000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", "000000203333ef618caa6a70aa1f63536fd6007be2551a6ac707b7ae2ee7de74587ad9234312327a2ac6388b4e27c56b26369ae6462ff89e14d37d7f4baf6b78f57f831c51a5cc68ffff7f200000000001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff03014200ffffffff0200f2052a01000000160014d71eed558e48e41606b72e52444b1e96a5e0bf4c0000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", "00000020074edd079f24753ea1a5ce3409bbc9c834b97c15b3651a0a81cebccf56dfee53f19067059d96a318be070c50a1d64fb4fdfac2cba8bc12628051f601223d7e9e51a5cc68ffff7f200000000001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff03014300ffffffff0200f2052a01000000160014d71eed558e48e41606b72e52444b1e96a5e0bf4c0000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", "0000002055338ec2621b4c0819e12723b24c197a753209155011a65fc51f949ab96f1033bb52f42e935f8024ddfb0042c5d7a54a4bb3799d1873b81d383306f12e61941252a5cc68ffff7f200100000001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff03014400ffffffff0200f2052a01000000160014d71eed558e48e41606b72e52444b1e96a5e0bf4c0000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", "000000200a662b22d4a26085524446b1fec7210a59701fb55c813fd7dff4e3921d66b9117b71bf964ad2bf3ffb4e7dff8b39473f9b2dd48f8320f05f5855528bcb65439e52a5cc68ffff7f200300000001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff03014500ffffffff0200f2052a01000000160014d71eed558e48e41606b72e52444b1e96a5e0bf4c0000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", "0000002096a6dfbc557f1024f877f6773453cfe3c91718b8e5ace092ffc7e65f63f10709a9b3fa7993aba11c3097cb8e16e45a5413862aeadef3f38e30c5c3e210a5cea752a5cc68ffff7f200000000001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff03014600ffffffff0200f2052a01000000160014d71eed558e48e41606b72e52444b1e96a5e0bf4c0000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", "0000002002efc3b5e85fa09fae3c1aa4b26e0d2c180663b7eae1e077bc6675b204eb7d4892297485cfc8971b126546c77e952e13f417dfa84a7f636e0999ec5e4ec4844a52a5cc68ffff7f200100000001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff03014700ffffffff0200f2052a01000000160014d71eed558e48e41606b72e52444b1e96a5e0bf4c0000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", "0000002042862589a66689a5f339580db344e089408c8c78fa3cbe3364d9da6321e0d21d2afce7e328ae640339238cf4e646548edd9dd27d8394450b73c520ee39ca784952a5cc68ffff7f200000000001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff03014800ffffffff0200f2052a01000000160014d71eed558e48e41606b72e52444b1e96a5e0bf4c0000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", "000000201e92d86e07845055822973edecd4db5e64044d73f10ecc3f0f4d0f483a956e3fb1d2f95acc61067c0008f6f01f8e83c1e1748db402f430dd6a0006f5ce7cbfff52a5cc68ffff7f200000000001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff03014900ffffffff0200f2052a01000000160014d71eed558e48e41606b72e52444b1e96a5e0bf4c0000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", "00000020a40041b4b0dceaf8b8051a1b83483eb0cc7f33dbfdd6bbd681343e1e4c8ad44ad1c5d6d835832f871796702816428356be5502856615fb72590786877a898a7953a5cc68ffff7f200300000001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff03014a00ffffffff0200f2052a01000000160014d71eed558e48e41606b72e52444b1e96a5e0bf4c0000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", "00000020ea43f473df19d32ff1664a8451953f7d8d177600ec264b1979f36a4cd42760504295dde2ae6660519b67dbcc9290c751f26d996d4ad406ce77f060438af860f253a5cc68ffff7f200000000001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff03014b00ffffffff0200f2052a01000000160014d71eed558e48e41606b72e52444b1e96a5e0bf4c0000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", "000000204f36fe12e54e490071c3fdd5e14ae27f9c0da40991a14e7fa2d619a356ffce47a041701fae457b4d15f100176eaa3c5358aa421e00766e3b41283e2a8dfcd74453a5cc68ffff7f200000000001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff03014c00ffffffff0200f2052a01000000160014d71eed558e48e41606b72e52444b1e96a5e0bf4c0000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", "0000002019c936e5a2fbc029aec3c7639c7a5b8bb04b13c5d1cf5a4d675d11fd6163f316e3be3ed5ba21122022af6f08929f595b6edf42b455ea00d4451ee8945388b13a53a5cc68ffff7f200300000001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff03014d00ffffffff0200f2052a01000000160014d71eed558e48e41606b72e52444b1e96a5e0bf4c0000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", "00000020877e3bf99e502ea0384580c56c2244bf8a08c5d87048b8c7e2e2a227befd483162854f5f36e424cfd884f40499d8ab210f8a33b8856e5803fe32c8810c30fd6553a5cc68ffff7f200000000001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff03014e00ffffffff0200f2052a01000000160014d71eed558e48e41606b72e52444b1e96a5e0bf4c0000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", "000000204237c59bffe892bba2b63c73ff29ad9d1f0e6466c749572bfc6eca1ee66281373243d1695a175304db2589c2c3932d212cf48804a8c04ca88461328d79de57fe53a5cc68ffff7f200100000001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff03014f00ffffffff0200f2052a01000000160014d71eed558e48e41606b72e52444b1e96a5e0bf4c0000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", "000000208baf5153b87cae94912bfcb3a697be5ed46218742c3156eb79ad284cfe00ca7d49d3cec48b6246e5462fe7b09126ca3134235602f2ea6527c7c23f108521a3c554a5cc68ffff7f200100000001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff03015000ffffffff0200f2052a01000000160014d71eed558e48e41606b72e52444b1e96a5e0bf4c0000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", "0000002019b1e1ded9df413dfb81f66a9d22157d3be75bc68108e2ab9fb72c7722b73a53d7647910f9a4e353427b06e0ccae5f7200d8c5e70e154521f674e80ceab6d3c454a5cc68ffff7f200000000001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff03015100ffffffff0200f2052a01000000160014d71eed558e48e41606b72e52444b1e96a5e0bf4c0000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", "000000205b6b4fb9beffb61bd7ba8d062d3de19c025d088594b7dc7d4dd48235234fae147d1def91ea2da635ca59870041ac4afcbb1670536dfd83c596c10f4e629b4b1654a5cc68ffff7f200000000001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff03015200ffffffff0200f2052a01000000160014d71eed558e48e41606b72e52444b1e96a5e0bf4c0000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", "00000020f02b2de7f8e13045900340b14639c2c57e0b9297793faaa040d60bf6f661264eef84f6b9e046ed3aeffd8776fb26faa55039d448ff507cf2d61f8b2fcf8d73cf54a5cc68ffff7f200300000001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff03015300ffffffff0200f2052a01000000160014d71eed558e48e41606b72e52444b1e96a5e0bf4c0000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", "0000002015cdbdaea51b6a7b2024c31644fe82ec603c06472778b7c4e39e74b53c13c230b40482fd66397cb99fa8aa505a71bdf56a1e134769ced081a16c7440458b01d954a5cc68ffff7f200000000001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff03015400ffffffff0200f2052a01000000160014d71eed558e48e41606b72e52444b1e96a5e0bf4c0000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", "00000020e9af1d1598206f62aa69515c7a829bddd43030b51ccac62d62eeb1db4b3cb6209e3de46a4864c99e6ed5096bc8d4c82c8462f7fca59bfd66d1a2498f24acf23354a5cc68ffff7f200000000001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff03015500ffffffff0200f2052a01000000160014d71eed558e48e41606b72e52444b1e96a5e0bf4c0000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", "0000002031c51d40c8d93d82b3ec39ff39c8233a99681bf84289e03e4161216b3b104b1f2fa58e9c4bfce63d0a1269b74999f7a9b86f2acc02bb20f092e860f9fca5b73755a5cc68ffff7f200000000001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff03015600ffffffff0200f2052a01000000160014d71eed558e48e41606b72e52444b1e96a5e0bf4c0000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", "00000020dc5fc7e7e84c93a9085cb7ac8eb5e54ce737969fecc77d7f073696153436302eecab36fd129fca616cae76c74961a48ef85c0d0749abed2772d52c0b1bd5fcea55a5cc68ffff7f200300000001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff03015700ffffffff0200f2052a01000000160014d71eed558e48e41606b72e52444b1e96a5e0bf4c0000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", "000000201e9abf78630f8cf56bd541ff5463a56799f7b6435de0e27dc060730b3b02ec6954dfbc84b7c7e184b03b0f2c686c7e572fc1634313d7e947230d23e1e31c21df55a5cc68ffff7f200300000001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff03015800ffffffff0200f2052a01000000160014d71eed558e48e41606b72e52444b1e96a5e0bf4c0000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", "000000200c79f4f7da25d09663b4d851548a081956e22fbff06d9de9271abc4c914e6b3631cd741c994bc597a93dd9796deb4f3953191dc21449dcaa7a8161da93a8862f55a5cc68ffff7f200200000001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff03015900ffffffff0200f2052a01000000160014d71eed558e48e41606b72e52444b1e96a5e0bf4c0000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", "000000200b591b2f2414e07a1aaedc9e4ab079314b41a6f124f8fd991a06e887eed7471e0bbbe0a024be1ebc087ff5b37af61cde9ed433be67200d103a348362561f19d455a5cc68ffff7f200000000001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff03015a00ffffffff0200f2052a01000000160014d71eed558e48e41606b72e52444b1e96a5e0bf4c0000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", "000000208b0c180360d5411aa6c22e3622f6865a736d45c34ab2990ac7ceef69c6904402270e4abc6ca347a28dec60316a487646d072c0581663e93e9b54f7bea902356b55a5cc68ffff7f200000000001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff03015b00ffffffff0200f2052a01000000160014d71eed558e48e41606b72e52444b1e96a5e0bf4c0000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", "000000200fe0cae5817446651ae6cc492a7a0c74ee37a6580d009ba25d811f3efa82a661e90734a4d72bb68679414be5cb39508d2ee28ecd22d948ad60f73e292df57eb556a5cc68ffff7f200000000001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff03015c00ffffffff0200f2052a01000000160014d71eed558e48e41606b72e52444b1e96a5e0bf4c0000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", "00000020e40ab8f54ad0f3fe478701ca386804244d049cfa6a6bd0dbf5eb8a6d9ae1d95ed93afba87c7d11aea736b23ef1bc6e7be74ac8daeb4e979357d449d3c5fb0e4e56a5cc68ffff7f200000000001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff03015d00ffffffff0200f2052a01000000160014d71eed558e48e41606b72e52444b1e96a5e0bf4c0000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", "000000203119a8ceba7b21e9fbbbdde1b6b7640817cf44ce79d22d0ad9cf5f215445ad3c91ab28200e48865dd0f1ba2258210d24fd1dc5900c906f57ec40e9cebcde74ef56a5cc68ffff7f200200000001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff03015e00ffffffff0200f2052a01000000160014d71eed558e48e41606b72e52444b1e96a5e0bf4c0000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", "00000020ae12b58937d35d8229f155d7deedaf26eb8e76d2a52eae392fb9aa9a1e70ae157990c5c223b44944f6a93cf7ef73ef854ef7252d5e21a7fb42e291aeff6c651556a5cc68ffff7f200600000001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff03015f00ffffffff0200f2052a01000000160014d71eed558e48e41606b72e52444b1e96a5e0bf4c0000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", "00000020ed5d66246379600462d854682f19b5f86e26e1bd0e51d12af4ad3ff9f6461f55dba7331e8365bb2c7d9da52962b4869a9b75da3826ce608dd103088b2285c59f56a5cc68ffff7f200000000001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff03016000ffffffff0200f2052a01000000160014d71eed558e48e41606b72e52444b1e96a5e0bf4c0000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", "000000201277e7b7c6a6e666a3c5a98524ad20b8307e0ecfcf2eb40d60f33ee5e9597d5877e5258e2303db8d3b3018de0401ea855e945c41b6a88e402e91f634c375015756a5cc68ffff7f200200000001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff03016100ffffffff0200f2052a01000000160014d71eed558e48e41606b72e52444b1e96a5e0bf4c0000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", "00000020ba92b8e90861ce9b9e1127578e7fbd91ed8ec460725f4c21443cc1cd547d7a285b8a49e5f0af67f1b3851ce4df4fc5f210adc5f21716b7e4d89a7815e93304f657a5cc68ffff7f200000000001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff03016200ffffffff0200f2052a01000000160014d71eed558e48e41606b72e52444b1e96a5e0bf4c0000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", "0000002075b8139959700abd2f4258448df15da97355b93624b9c25d393a5d224721870d3f5fa6243267e99ce1fe3487cdb10075cfc8fb00b8e32534a77780f73a4aed9157a5cc68ffff7f200200000001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff03016300ffffffff0200f2052a01000000160014d71eed558e48e41606b72e52444b1e96a5e0bf4c0000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", "00000020829c1d048883596a54a893da2b82dc8d4e704e481c2b4e5dfab09b3639993873b58e94b638b7cc8e14080cf0edb5a4fce6da50ee40810c9d887b46ba32b50fc257a5cc68ffff7f200100000001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff03016400ffffffff0200f2052a01000000160014d71eed558e48e41606b72e52444b1e96a5e0bf4c0000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", "00000020c231596cd379598e9d4433830bae946906b65a61f2b14d57fa694db9ed580b1c6ef6241e12a3d98d2e5d5dc294b2a10829ceff1f918bd6c1a8ed56a0c465ec9857a5cc68ffff7f200000000001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff03016500ffffffff0200f2052a01000000160014d71eed558e48e41606b72e52444b1e96a5e0bf4c0000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", "000000209f4b00bc4118a8663f5b2e11c7f13792488cbd6f53ad897869145e1dfeca01019a13f192fc82a1fe4a221e6f8b076c438d7fc531eff54ecf8e963b6a369638ce57a5cc68ffff7f200100000001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff03016600ffffffff0200f2052a01000000160014d71eed558e48e41606b72e52444b1e96a5e0bf4c0000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", "00000020925e33ec800a4e193c82756cb2f967a478d9414311c1c603f085f304d64ec366d3b2d3b6df19390e81b9e6809dfba7a7a3006ca872fbfa0acd1aeda8058788e057a5cc68ffff7f200400000002020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff03016700ffffffff028ff2052a01000000160014928bd2f9c57ee2459cc41f0a79c7ea45074b080b0000000000000000266a24aa21a9ed53261c4cc5032004840807a3ccafad91e9c04c9111387323d17bcd4fe946c465012000000000000000000000000000000000000000000000000000000000000000000000000002000000000101a72c459bae217156bc72683f461885cfc18b3b964c779c842628acd9c7538dbc0000000000fdffffff0271c4d4280100000017a914820c121bc190f2ae2bbf44e47c3e32a4d03f9b9b87002d31010000000017a914655728f36cfe36d01aa50d3236704469f84a5540870247304402200d1265913386d785f56d574af9e699faaf95bbfaa5bcc146a932bf713c551ed6022012f13d913b72849149c6d1aebdab17a2739f3bb15c6318783626f0173216ba43012103f707325461164625cfcd8fc38811baa3adfe30b7b1d6988064762460c55d02e466000000", "0000002057138a13fab0633265a43364502713f61cd04fb488d05e1b788c4e364818753e1d1cad80e4968a32ac7ae703de938e5fe8394df69ccf111da39388c409ac529758a5cc68ffff7f200000000003020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff03016800ffffffff026f0b062a01000000160014898b4a833143ac1b046a59cd639e094e0367d9890000000000000000266a24aa21a9eda134a3a4537409647dfb26fedae7b79cc04e86236e5df8f902779f6ecc57f2da012000000000000000000000000000000000000000000000000000000000000000000000000002000000000101f74032b51c3aeec264de1e41228db610127098f70d31e28d91569b13a2eda1090100000017160014d6b969d36dffdad9869193f663ee480dfdc73488fdffffff0135143101000000002251206c27e1956acfa61e68292c80908880e813450f754132e8a2ac471a86bf1326b50247304402207533a259026f7927e68141b29acbc1f454d2bd9332e52a565287015784cf0661022009a14c8edc9204cbbe8b7b651dbc28cd779b90e153b6a534890b492ff021df4c012102b9c0c6844e12a531c968e55c55078ec16d9bf76be9290fd87d1cca72b4839a176700000002000000000101f74032b51c3aeec264de1e41228db610127098f70d31e28d91569b13a2eda10900000000171600147df7b3058fdfe2043896dae7010ca158de16088dfdffffff0200c2eb0b00000000160014661c23b790dd3491373af0b1d8bed0877d5cde22cd01e91c01000000160014f0beceff502bc874170bd10f8fd1ded8b8306ff70247304402204ce9041d506d5efcfe87bbe10e08062e6c75a78a439c4eacd3f1e312b0ca1007022005c93fce9b4cf2aa2e48c1adfaeab116698e8a85d458d3df2669344a421cff27012102fe036dc41f7dc3c7cb3b57ac9e3f8cc05e61c23f51e4f3a80c6e947be4faa7e467000000", "000000205d3610e7ba38f7a7b7168094666990934bfc10bb06b3297b8c99eddf223b432176dc2ace034e9105144d37bba220bb842f51a1cc96fec3be2cca77bc7c22302d58a5cc68ffff7f200000000002020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff03016900ffffffff028df2052a010000001600140be7807d416f7d77364e474c18a5599494f8ef920000000000000000266a24aa21a9ed932b1b72eeaae3889720e77bbd9713e9358cce9f2692d4687f121a707ec5266f0120000000000000000000000000000000000000000000000000000000000000000000000000020000000001017105f7653861499a38615f61123f0b5bb77d50775c9413bfd3bcc39cb84a43770100000000fdffffff02403ffd1001000000160014f2f81ae18107a754597453a6ccd83e80106d20b900c2eb0b0000000016001427213e2217b4f56bd19b6c8393dc9f61be69123302473044022023c78fecdfab66d2df25a5c40703a6922a775c2b4d69d5afe819f014cb03271802202219df74d7ac2b915b29b076e4c8ba7d3c6f240e6fc8979c22e51ab54b61d6c10121035d456b408b1ae5ac24c60704b38263936c4b082bffe9266aa20f9896c150182d68000000", "000000206757bc4406e8030a0509f51ff7cdd9ba419c53b0b5fa9b0ac960be58100d5576e890d59c699fb19a6be2e996b079e167c0b05c9cc2d128fa8adbccd70fcdbeba58a5cc68ffff7f200300000002020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff03016a00ffffffff028df2052a010000001600143f5bd9a4a304231bffe817ae3c3ca405f2b5465a0000000000000000266a24aa21a9ed46c1745857db505cf1f5703fa7e6795b472a28ba39439dcedeb5b0d51967dd39012000000000000000000000000000000000000000000000000000000000000000000000000002000000000101b3d820c11ae3a495b807cdcbf591f9a382351f50e61eb3ddcbb0c3a9b66f12890000000000fdffffff02b37c110501000000160014d67d8942d0b25380051198e292a12c48369c94ca00c2eb0b00000000160014d0eac62fdcee2d1881259be9cda4c43de9050db802473044022042141044c5fa69877c5a6d641cd96693828c77b8593fbba4df3008c56c54c3c502202e743899c8469993e28011de683f68f2f66c64b23f1ac62be7167563f762f8a40121031552bdf1173629284565431fb75296ec15c49649f97bb418ce3f509601b9b77469000000", "00000020a9981ad3feb762d0e5949da09b9bbf50f98d1c89483b2bd86bd1eb10ab3ed95c8f40ddbe0723526fc25319aad6f297b0452eac3f0fe3fcdf7a3fc03c1964dca758a5cc68ffff7f200300000002020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff03016b00ffffffff028df2052a010000001600145af450ebed8be75c26cc8d4818a1780d837611ef0000000000000000266a24aa21a9ed8ea367bf0e00b03e605519b6028867c0cb317815913a76cc6184739a3709e72d012000000000000000000000000000000000000000000000000000000000000000000000000002000000000101c54a87b4517d7daf033a11b21f2ccf114304487c4189599816f3e243569c600c0000000000fdffffff0200c2eb0b000000001600143b43533e303a69b39884e690d094be0293d7c1e126ba25f900000000160014075dac3a5c636e1be97517b86c3dfb47bfb49c040247304402201f83061da3156f95f8237eab59fb106a529fc30d11e186583eee57afb75bb6f50220565f1b364eeb5f579e3b42dfac81fbfe7e5c3e3c12562fe2dd38dadb373c2ecb012103a2c0b43deb5933215eed21891f1ae56ca6884e290ccf7d2f424fe73d6ffdcf876a000000", "00000020fe6206487c41eced47866ef999de436659a4f0a83e965366209d92970cc3e571b118b227a092cf80c23938d52ae7f3e45e9d81451e5044da7c6478807867758758a5cc68ffff7f200000000002020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff03016c00ffffffff028df2052a0100000016001458f62edb025505ccbf265afe0263dad8d7283d680000000000000000266a24aa21a9ed24d3ebad2b13954343cfe377fa5f14c11c1553505456eb82f40d9be24d9cb661012000000000000000000000000000000000000000000000000000000000000000000000000002000000000101f1f1c0f2d69ba8f0ae95220d8218dcd117603a33c50475a65a5e4abf06006d0a0100000000fdffffff0200c2eb0b000000001600149b5d5010638746bced8f57fa2c59813083753bb399f739ed0000000016001456c29df7f68f64f25a9b482221033bd988c1874b02473044022024a946caf69ca298683bd588b50be5c9d41d2f9a0005b61a628e85eaf1528e01022055f437c1fa3f69b681c6a137ea28012786e8c7db4fbc13ae374a84b73b6cf3410121031c36deb91960e8f2a138119ba952eda9de83feda1752b2b39f7f5a96d0af91671c000000", "00000020ce11902aeb20d84579c2f75189a9cf2fa7577e1574c739493e00b7bf6f38ad25a45b58e5bcdbb450ef72b07463c3e38e6b57b4674e21580a3f0c19a28f0c3ace5aa5cc68ffff7f200100000002020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff03016d00ffffffff028df2052a01000000160014a642bac0407eb1c945bcf40e9b1f3e2274f64f790000000000000000266a24aa21a9ed22550e576a29d014cbc92ceee4944b16a9aef935eec52d63765f3f1bea3b0256012000000000000000000000000000000000000000000000000000000000000000000000000002000000000101dc93168abfd989a27dad6df5785ad789dd100acfc5ca65fad61515f8feb036860100000000fdffffff028c721bed00000000160014fef8c0b11380462743e63946c13d2a683b63b4c580841e00000000001600149fb67bfcefee6cb7db4c7e55d9c6bfd749e31d1e02473044022002fcdfdee1d48d7c946df9b6db274ec5938b74fb4dab8a98d6dcbf571ef4d31d022036faaaf97ae93604034efe5b30add443160d20d2b64aa1c67860588270d29138012103b8e1ade631a8d46dab63d55f537081e8644d7585842aa0445190aef4041910226c000000", "000000207001385d3b0a64933a7047bf270bb5344a418a4d6018d4a191622ccc8d579f098a3a4c607433b7e873f0962341d4db47ecd48bbab1913822a3292920398d52cd5ea5cc68ffff7f200500000002020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff03016e00ffffffff023f05062a01000000160014a8d031062cd8d766f0561a3622c67ce6cd1aa26d0000000000000000266a24aa21a9ed803ed318078c31a1df60ccf13bb38e1c771b2438bbb9db659785efd11969ec4f0120000000000000000000000000000000000000000000000000000000000000000000000000020000000001017105f7653861499a38615f61123f0b5bb77d50775c9413bfd3bcc39cb84a43770000000000fdffffff0240420f00000000002200205b8cd3b914cf67cdd8fa6273c930353dd36476734fbd962102c2df53b90880cd816cdc0b0000000022512035f1184f6b470c9df347da62c4b28e7ec9ee10b220bac3accd22209def0036ea024730440220235c17dafd13d6cafbd2e5c2031c90d259fe5d1c427976f888a837bf6e537841022015a0f0dc950496e27ccff644555da1414e5624861980ec5312be10de16746b76012103fa9c95085e42b1e5003cd1f418178c30c96e4ae77954ca0fc48c58826ff4eb0e6d000000", "000000202989e61d4ee4441b653b097b9d89aa8f65dab8a15b8a99c5ed9fbae1cbad6b717cd1e7542d4b3a87ae556b3d8aa77109e508ea038184c0eab7be640e8a811e7862a5cc68ffff7f200000000002020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff03016f00ffffffff028df2052a01000000160014b892dfb50176962f0fc6c37178e5ee1ce1f995d30000000000000000266a24aa21a9edd4469603ab8dc6394d6cdedcb84b9aa6a85da863ab5af49e7964a6bbd485fcfb012000000000000000000000000000000000000000000000000000000000000000000000000002000000000101b17766dac493e0b215e2255ae236477dd453cad94560d7f418face046fd6c3f80000000000fdffffff0280841e000000000016001461ed06c0632af284ec9e192e97758fc04692c8297fedfcec000000001600145bde59b6c0a6058ad77e7199e6f3cb08f53cf1d30247304402205571f52b989f914e86d57866f54d6c698e451b367e331a62125993e2c9ea1fe902207535a80e597e9984f35d5fb47075441b636e8365f0a837ceb3a0a3a0cccfe7d2012103175e37f4693bbac3f74c212665fa1bb4fa5e7a122cd0ebd4a48881e7efd373256e000000", "00000020e6166edf28f6a820f7e6a465eb7b68322114e98f7bf941c669ab5592c9ada520e5ba0bb3160abbef2d96dd9571d8770eca24abb9b57a914086d204f47539693364a5cc68ffff7f200000000002020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff03017000ffffffff023f05062a01000000160014e8092e9b30010a2013bb5307a07ab11650caba410000000000000000266a24aa21a9edb607ff3d62fef4ce29e26f7ca268b74b10d68d90ed93a3d0f098cd7df1ef972b012000000000000000000000000000000000000000000000000000000000000000000000000002000000000101b3d820c11ae3a495b807cdcbf591f9a382351f50e61eb3ddcbb0c3a9b66f12890100000000fdffffff0240420f00000000002200208698658a01efb001e1cc4df6a8b6f3adb461fa3e679385fdaae400bd73996b32816cdc0b000000002251208a73bb281433f2b5db5461c6778aa2afd28e011de6bd04799a5991662c61d7a80247304402204ae8e90efd38fe67b7dacd7b673c5de869a802feab60b17ce55c91c5bdffcfa60220100e9a1ee2e0f0a0e157feb12ee4e5e2b9ca4c78384097b085d476722f2dd9e101210207ec2b35534712d86ae030dd9bfaec08e2ddea1ec1cecffb9725ed7acb12ab6633000000", "00000020ad255aa9d3c0b9233325ea186963d561b38675fda3df2ffb09d53ab00990a5679846f3fbd8d342416e735cc6b45c9fb11507e429677d3f916030f03d8ba1871c68a5cc68ffff7f200000000002020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff03017100ffffffff028df2052a0100000016001468061f068679b9f797e4b596aa59dcfe6eae18310000000000000000266a24aa21a9ed2d9cc277e8846346efcd309e07239625744072fea217dd0b65a5f4d236fcf74c012000000000000000000000000000000000000000000000000000000000000000000000000002000000000101ce5a530f60155add2fa38a51332c2823dec1e10eb16f77e68da912d03fb04dd80100000000fdffffff0280841e0000000000160014774b1c651a1b409213057783547e2bd37a7173127268deec00000000160014dc1e0ee8ce8e59d06ff533cc79b1e3809b4eba99024730440220483a8cc01437562b2dc7e83397e145f427fcbdbe7afb6d83c63ad3c8d18cc31d0220502b2d3f36a6b6cc42bb1714c8907b1b9c9a80788784599c33d19242e29061330121022facafa438adcdc64818ac87168a8ff6cc0c1f986475f3edac935f037bcc962b15000000", "000000204dcc4a6657253c8b5d84c05df2f0ea6e5b61c23edddf5b1f04e03250a5e20d0bc22a9c7fe2ea9744a38044b7e057ddba615c0fb1cfa40fb4033942edb8608e9f6aa5cc68ffff7f200100000002020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff03017200ffffffff023f05062a01000000160014f49cf12fb4c5edf17fb74ca60e2321731426fdc60000000000000000266a24aa21a9ed75fc7c89938d5b428be01b82c6deab66d5ef6b386ff9f8fb0041470ed49b192a01200000000000000000000000000000000000000000000000000000000000000000000000000200000000010167202e377f3e7d6a3ddf62f5d0435913d699953ebafa5a5011eab587f7a0f4c30000000000fdffffff0240420f00000000002200205f743123f9584a76058bac1142ec2bc6c60b4b2af1d3145e74418d41ae51009e012f0f0000000000225120974c19d5ed96a62a1bd10ad187fee5c2e3146f772228c5ae7a42b36e74cf24cf024730440220707db46964e57ba4767951d6f03491f75468fd263dc84868d02352d74b91b4f102200a06e7213acde73c8a89751a1d915cfd72a849c850093b53c0415759144740cd012103f1f9d3a06cf2ae9b87dc178b5f3717b6c9b56e539189f11dc0d9ad1b227cc97f71000000", "0000002061f64eb90622e02b7a62b6aedb013c39bf6366cfd43946653a5159cdc94b604ab5e49dceb036c8a7c5fbc273a0a3060605a5c67bdf1a3a375e3015e705b2b45a6ea5cc68ffff7f200400000002020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff03017300ffffffff028df2052a01000000160014e48dedf5bc098a24639cc9bc12866fb2f84f8e560000000000000000266a24aa21a9ed955208e0890b9a87aab1cbaca1e821ec98159eb5ce699c7bc09a503f9af1984401200000000000000000000000000000000000000000000000000000000000000000000000000200000000010167202e377f3e7d6a3ddf62f5d0435913d699953ebafa5a5011eab587f7a0f4c30100000000fdffffff0265e3bfec00000000160014a0b4d2f5cfd16387469b354f37846a2776c92fee80841e0000000000160014b05dad288c134945ada83cdd5cdeb9fbf98f6d44024730440220318ad4ace00bb6f625a2ebb86aff94bcdde3449abf41215e25d4ae979c563c4d022070b78ebf4cd7a8c3b54a7299bdcdaa1e5f392ac7195d34d78852e06fc832773a01210286e6e6a9220f74dfff235208e337d01e0cc1e2ba89e8ff515983004b20fc9b7372000000", "00000020faad2d34fa980f8476fa62e03788e9fb4667e4de98b0947cc56ce14a2cf0a9487160cc874beb5dcc739d2dd05107d7054921e5a5d01061115f9aa26f3f73a12370a5cc68ffff7f200700000002020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff03017400ffffffff023f05062a01000000160014764c575910985ac877746104b93676a36435211d0000000000000000266a24aa21a9edf16873b766e22ad9136c659cef1b795fe24b50194e257caa5d54f947a77bd6e10120000000000000000000000000000000000000000000000000000000000000000000000000020000000001016de5ffbc7f669c057398cb047ffe5e4524b58217a864ede13e1faf698fc14d250100000000fdffffff02012f0f00000000002251209d68645892a57906f0a70ff7512301ae29263126d932676374b62282260396fb40420f000000000022002065661b475ebda624211edfa89c2fb3bdb088ef9d8ed43be14fc63ec05bfea5f502473044022017078e74a6de97bf2dc4418fc2137f212f6f6e5fef225e53f01e0c16a5f420f1022036dce1a51814f4396367383065812f563acdaf8b7e3b2cdd0be4817d6e55d1030121027de0ab17abef21c4eaebcd06eb0899a2d6ea110b92df0f303aed7d7bc2cfc19e73000000", "000000209aae87de073d2696d6388066d52ae0302c5aa3909f7134acdc995083e0e76e4e36c56459f853438d65b343a58629d179655c8154cd17bf67dece6d48b31c9f2774a5cc68ffff7f200000000001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff03017500ffffffff0200f2052a01000000160014a6acb8611d45d1ba754ed8138d96d1be4fe4e5790000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", "000000200e22728839d3b1bd208a7b5c8875203d471b28223f07073333ed6508764fa14ff9bed729f0f48dee4bee8fcd3e56b0d8bb1036191963e6f28c06818d6b259b4274a5cc68ffff7f200000000001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff03017600ffffffff0200f2052a01000000160014a6acb8611d45d1ba754ed8138d96d1be4fe4e5790000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", "00000020e1238f5ce957a3a734098134085f30933f1d156e5907cc107d30699bce556e3f4ba82491d450bb77e15ffcb5b1cdfb815c9f35935847bb5cf977902f5cde955374a5cc68ffff7f200100000001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff03017700ffffffff0200f2052a01000000160014a6acb8611d45d1ba754ed8138d96d1be4fe4e5790000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", "000000209ea6d30a20e1bce98b64822a7906e1330c593bf7eb618804babb5afdf9d0e4058e1afb81e6420c7c5774e05a853aa2a434b52300c5c9370d84313a78206e9cdb74a5cc68ffff7f200000000001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff03017800ffffffff0200f2052a01000000160014a6acb8611d45d1ba754ed8138d96d1be4fe4e5790000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", "00000020fb24c19f7eea3f87ff88f84606cd8f4e13314ca54b3fefcd4cbb6947d38bb41bcbaae6aaff7ecb8057b6f5846c61609c2edaae7c3e90f2fdd8bcbcd884e48d6677a5cc68ffff7f200000000001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff03017900ffffffff0200f2052a010000001600144fb58cc23328c904a8df09af49da32f020a40ff70000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", "0000002062840383d977bc96da60550e2fe68407e892f8727bebcefbb2c75064cba83851f33f13996a8ba45f474a7683d1cd6d99502bf14c90f3b74011aef136f9d011337ca5cc68ffff7f200100000003020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff03017a00ffffffff02eb07062a010000001600145676d6215f9b1b1d37fedf00d98609a8100f0e300000000000000000266a24aa21a9ede0842366068df00f8c894f3e603a64ad1bbeef0f8ec9d4ebc6535ecdd4da37ce012000000000000000000000000000000000000000000000000000000000000000000000000002000000000101b6f77750c0aae7faf2aa6e4b38a14671adc8def298a0b89ced09596f002aa5ef0000000000ffffffff026b6f070000000000160014730274d976305fe63d212c880cf89fd0f08272873ac80700000000002251202bdd81f95d64ed2cc37d2eae725de428c91bff072d7503d87446970eedc630300400473044022008dec4948db1c9e4db4dcf8c223f554117e48c6aa0aac471de67c03163a82e4a0220018bdb9889230e0048a378efad73d3bec83c330baa727323d95ca86fe36301b701473044022022cec9df9ece54e1ca89888bdc19ed84e5202a93070d05aa9b3236f9990b440d0220376f7fd6edb49ad13596cdfd51d929a92d45bc88da3f16ed0777014a28025a2801475221021c29746e4136ddff456483df3980c2d0d5f31c93ef5ded564f7294a10d7414aa2103c47b1b2afcfd68c7b86c0976adb9a4f0835bc78242fced745d78433497a867d652ae0000000002000000000101a92a6508defe049b47f2420c054cb1a446198faf4bfd74bb2479b3c45075ce7c0000000000ffffffff02026e07000000000022512085d72025e78fd08bb61119f0987ab0041f50561ada6e130c645343db8c44c2afeec8070000000000225120a7583f0c421663b8ca76fa579018b40682ef8553d73fd061cd8f216ecdced6a30400473044022064d1a5480d76bc71d44ee440a47ec30e7433812292ca8d4876e5e59cd2950e4802201ece394b4bcbf6ba3f21152236822cfb2eeed8e5897d3bf3499e9d7d1a5d092e01473044022068cd05fe53fa71118b643e5340ea3cd169a3ca655c64c0b30f78d720d79a957502200f14d30de4251cf016a3db3475fe5472772335b76dfc268dc173e6541026b1830147522102d595ae92b3544c3250fb772f214ad8d4c51425033740a5bcc357190add6d7e7a2102d6063d022691b2490ab454dee73a57c6ff5d308352b461ece69f3c284f2c241252ae00000000", "0000002064ee4a9d79afdbf72514864015f6b02d5ba09369b4ffd5495bd8c0eca270547b0d802e715c405faaa26e2c1fc2423e5602a9f707bb20f39dd04841f12388f0727ca5cc68ffff7f200000000002020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff03017b00ffffffff028df2052a010000001600143144e972eb576e08475483514d7d102e931c0df60000000000000000266a24aa21a9eda9d5efdf8673029b78531c4e61d72e20e2cf6355d3b5ffe2a37ca57e532e5c4e0120000000000000000000000000000000000000000000000000000000000000000000000000020000000001016de5ffbc7f669c057398cb047ffe5e4524b58217a864ede13e1faf698fc14d250000000000fdffffff02585ea1ec00000000160014e516aa1b139dce7049ee25721bf58f53f7e22a4b80841e0000000000160014a60595829800cd0998067badb3d187cf03e232440247304402202edbe29a7d715446660a1f876b631aff2770bf327b157278abc9fa8e37426cb002207629271299a4f93308428f3cf78fee4272d82997c8fbf78fa0b61f334dfa7236012103650a42d22f01fb7c47945bce6c7f4f33977d89a826fe3316b2a72c41600945017a000000", "00000020735dea7ee59593910c8a0997cd72c3fc4619baa66f991df87a459fc70e3b854f6ef8786c2d40805ccaa68bbf7795c119e76326d37dba640c1156eca913ba896280a5cc68ffff7f200100000002020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff03017c00ffffffff02fc0b062a01000000160014b7154ed957bf1c16fcd944b16c0bf4d6f59b85230000000000000000266a24aa21a9edc2a8bf697b600304899df5967b72acb913c318a9d7b7589db55b7c9ec9b351cc01200000000000000000000000000000000000000000000000000000000000000000000000000200000000010255310c6239b1c691cda8c054f3933467fb75153dddbd83dabec5d621990ddc920000000000fdffffffa7330551ea1fb2cc2d6ce491391f6830228b4bf5f2a616ab0a372002027e93ed0100000000fdffffff0245571e0000000000225120fdab7c01fae70c08e0b1f9acacca110a53121e75dc54a25e7542416f342aeaf740420f00000000002200209655e2a7330cd86dc69f8ed1845af5580dd06b15a794034c9571e53d5639b397014051b8117b0f4726cb33d05a6289f25addc41f5cf4a572b1a00aa494e88c3d9771729e9473eb8bb3679eac5a13964260269e317924cbf0e55c5aba600dbbc4af1002473044022049960f9cc0d1c77c8b85614adb8ed91b2a0a55a3e4bdac12a3de90880485f5e2022012e7ccc5f87ca3e0f485b2b16a95cc026079b18358dcb20fb0cd44348105751a01210330a75acaed258be6bc02da9fab058abbe0e770caceb7c6496eaaea7014c3d39b7b000000", "00000020a6a67d34a3e611b4d200030424f21198d7e1717fb7c5558999ffaa6a7b2365055072bed14ada71c34d105c53be85fcd50a06dcf2ac84cc9acd265818e5efc5fd84a5cc68ffff7f200000000002020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff03017d00ffffffff028df2052a01000000160014291c7cd321df3447623ac61e0bd43645fabbbf4e0000000000000000266a24aa21a9edcac3e315a9f125227d2e95d3b9607ed4498bae95caa4c17c7af45f7d4a97ef93012000000000000000000000000000000000000000000000000000000000000000000000000002000000000101a7330551ea1fb2cc2d6ce491391f6830228b4bf5f2a616ab0a372002027e93ed0000000000fdffffff0280841e000000000016001449acd7d82366c662bc8fef84bd3900b09bafbba54bd982ec0000000016001423c5939000b149132489269b028c1a596d96af480247304402204b0db0024b5141333d9e95410d91fcd3f8f3e60a2b26a7572694b0c094bae64e022062dad17af68f819b3463f57e75b3e93d257ed73b66f8045eed8d3bfd7252908501210387ee92224b3c95d3a3af78c32cec2b07b1c250e3bdb80a2e80dadc02e684040c7c000000", "00000020433fee2f10e5c23f72c152d6786beba9ec73493fc7bb843a5addd94c5782db0e6d56b20f60a6678cfea6de2ab66959c7ec0bc533d67db49a5f35621744ee9e7d86a5cc68ffff7f200200000002020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff03017e00ffffffff023f05062a01000000160014c513b6bad2b32fb38bea9fa212df864052e6bad20000000000000000266a24aa21a9ed219789ab25d2c5c436437ffa0a5f134df19e49b3ac8ec99d571c813cba737b4901200000000000000000000000000000000000000000000000000000000000000000000000000200000000010129bd3270ed16270ce47c2805092fa1eec53c14d1c7578ade4a94b27e055b2ce70000000000fdffffff0240420f0000000000220020dd2b22d7f86c0cb8edca4d979b316aa5a8a390a37440b3f387edfa6e3efb630d012f0f00000000002251207b8ca7b7f827d8f94a2846c4e5d84fbae1a5b7453ff03ca1859f25888325b80a02473044022038b791a95551665f80a79e75cd2b53035913a1e3314c8135d2e1e2d60ef253df02202a80e65020cd2c160830a8d93cde5fc9ec92299104df83a59c41420370daf20001210235953f2aa25835f70cc1da3418d935b88a9f95a134dd86636bf018f532d282fe7d000000", "00000020479b02caa51384c3d13fbb5aa36a347ce34df400664a5c8f866cbbe05e05822d3d6df9a9b1218c8b9a9d215217016936f24034be95adbd255391ca46705874c78aa5cc68ffff7f200000000001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff03017f00ffffffff0200f2052a01000000160014f64f0a90d59d6accaf81898a8d9c53b57482f74d0000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", "0000002079e26055469c39f95ddbca2ff1cfc52b37d2eed291e8ac4d8b0e934a3219ff378ceaf27b3e0cfa7a0ca0a31f8e2e17813c4b1577d402924526a2d25d733f487d8aa5cc68ffff7f200200000001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff0402800000ffffffff0200f2052a01000000160014f64f0a90d59d6accaf81898a8d9c53b57482f74d0000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", "0000002051dd5387305af509755763cf616a95b6f9d4a17a5a1c11cb89f0c2a4b187877b3117d2cfd0f29d4ac2d2b50ce288019f3a845afe5b7c7313dc03ee8cb42fe9f28aa5cc68ffff7f200000000001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff0402810000ffffffff0200f2052a01000000160014f64f0a90d59d6accaf81898a8d9c53b57482f74d0000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", "00000020b812696206ae56c1fe912be90b4dcaffe581bce7ef0974a1f15b0045dfef7940017dff6d9a71b1d78f7c120d6275082513b9d4dea5fe74c190b8d608e371f8b08aa5cc68ffff7f200000000001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff0402820000ffffffff0200f2052a01000000160014f64f0a90d59d6accaf81898a8d9c53b57482f74d0000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", "00000020545ea309f621232d39ef5c8a909eb4add3a15f4add36d0aa35e9cf0ceaa9c2685fc052c592a5a7037b872b5f992766452631e38731d352376c3f5ed9f8a2b3418ca5cc68ffff7f200000000001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff0402830000ffffffff0200f2052a01000000160014a940450999620eeaa149f7b7a17747d19329b4190000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", "0000002016c20b5b59042a6029fefeae0254b7c0738612670bc2bba9c9cc1c3470b3666c401406451a18fbdbf457a12115f197ca0f10bbbb370870462b5ca708d25df2149fa5cc68ffff7f200500000001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff0402840000ffffffff0200f2052a01000000160014b657b05aef68ba24c010114e4b012a1e49751df60000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", "00000020010bd1911f1413783478ba977b51fc7ab7e9e1efbeb69dbcfc203dc350dc7d28b8e79978e4c546a6c7a2c2d309ea8adcd41bd7b5141c5b6e74c6651f6b2daae4a1a5cc68ffff7f200000000002020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff0402850000ffffffff02a402062a010000001600141390e518c6852e514885becaad35afdce49242640000000000000000266a24aa21a9ed07be2d1ef424ec5fa1f64fd42d1aefc69bb7578b791ee65915f11a2cac6eaaeb01200000000000000000000000000000000000000000000000000000000000000000000000000200000000010169baded91234f208471fe0b7efd048560a4ec2aca6ac1df00ae4729a6c368a140000000000fdffffff02237a08000000000016001471b5ddab58e3a27254fa885ba83878ca907d8afd7ecc1500000000002251202b5dd0613b6e534f572dbcf4311b66e6cc8bb07e285928ddb6fa5791e473787401401ced9b81201d3a710b8d59e96ec4f3ee6eeb831467c9443d71156d305edb47665b596b9ec73d755237c8a2242c0612b7ae9f8a93124b1a8f315e744dd212bbda84000000", "0000002023aed1a6803d8a70b73d5647fefec93f447f5c41797ab902d9c74757d7fdb85b3ed4b71566c54e24802f794c73efc50d069380fa96f76e6e5adf933f3d521282a1a5cc68ffff7f200200000001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff0402860000ffffffff0200f2052a010000001600141390e518c6852e514885becaad35afdce49242640000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", "0000002026be975e0f02267779489d839bbe3a116a7b6de1d065ae62e53e01cebdb9942fb6162a02944022ec0f7e74417739f88076af0a2ec11050e2bb20508154871e30a1a5cc68ffff7f200300000001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff0402870000ffffffff0200f2052a010000001600141390e518c6852e514885becaad35afdce49242640000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", "00000020f673fe8c05688c8d8fe178a46ea092e5eee706b8f8f119d17648194fa3dd85112c489c3e61c298affb33bbd2d800ae42396c89ece16ae1b3219a8010f2489c54a1a5cc68ffff7f200000000001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff0402880000ffffffff0200f2052a010000001600141390e518c6852e514885becaad35afdce49242640000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", "00000020bea716b582df5d652bf7a8f578703fe99162e54ef24a919d86114273698fec706a46bc1ae380e15126adfe2370f3071e16a300dcfd90910a94a35e71aa5cfb47a5a5cc68ffff7f200000000002020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff0402890000ffffffff02acfa052a01000000160014c0986b5f303f01ecdb2423f705c3dc1a2bd294e30000000000000000266a24aa21a9ed9bd115f127c91f6c13bac3003db8588e12d405d6a811249136e5ba9cb6d0c6dc012000000000000000000000000000000000000000000000000000000000000000000000000002000000000101a92a6508defe049b47f2420c054cb1a446198faf4bfd74bb2479b3c45075ce7c0100000000fdffffff01d563dc0b0000000022512052021c61da23b2eda3d5000c6d812d0c9b088c237ed2a510abd94d8c3f7c421d01406acb049e57172531f41e1222d6dc3fb2f931d0765f2407ca6a22ff58a79f262749299456f92a4189ffc1c93182045e152ebe07275f676fda07fd5344c27297bd88000000", "000000201469132bd27a789a852406f730e133df71e612995248df31af8efb9d68e060245c1c3e9165710b82f7c50fbe5972caa8531fd5a86ada9f4c33f570a0e8831e0ea5a5cc68ffff7f200000000001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff04028a0000ffffffff0200f2052a01000000160014c0986b5f303f01ecdb2423f705c3dc1a2bd294e30000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", "0000002073a87bc8c999e031f2b41604d27002b80873b119996cf76a1b9899624962557b912e072b0a44d3ff4189f6e72f17afe6a85410aec890447a40f935708c384d81a5a5cc68ffff7f200000000001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff04028b0000ffffffff0200f2052a01000000160014c0986b5f303f01ecdb2423f705c3dc1a2bd294e30000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", "00000020f8d99e757155a2c524452d2bdfb33d939e46449a223724df4ead68c40139637e91e6a06d75b342a654cdac2d8a1973c3f4e187f4984f4c8a3cf26b7a9da13a05a5a5cc68ffff7f200000000001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff04028c0000ffffffff0200f2052a01000000160014c0986b5f303f01ecdb2423f705c3dc1a2bd294e30000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", "00000020c3f89d0c11bfe8798894d1f61bc920e309c2b19b7c49287a88c3edd9f8d88b7905c10201a7c1c54ceded8a88a9cbf7f8a889cff27e3b597057f83ebfe2640b07a7a5cc68ffff7f200100000004020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff04028d0000ffffffff02b732062a01000000160014353b0274d950b192cfa9cf54b02684b5a39547f60000000000000000266a24aa21a9ed8db2f14c31fc4e3ad0dc76a5892980a69c641dc8d9d507eed52ca0435e3d5d5301200000000000000000000000000000000000000000000000000000000000000000000000000200000000010190ee63cdc0e3f2b01c954abef709af77c0d966ca3f45b6b39ab9cfb6546c7a790100000000fdffffff08e803000000000000160014a43b821a9790f880e113a395b717a0f354b9d9c6e687150000000000225120327b99fbacbcc3bbcf9489bf7f3dac2642d933685754f558586afbacd17f9c26e8030000000000002251202f843ba0c8de9d0c41a63a25d4cab22032be4fabf24931dab82214316be218cae8030000000000002251200978ea47f31ad6561d96ceee14e85192726536c4e1e59d09f217f3b5762b0630e80300000000000016001407905c6189c1ae8aff12566b03f35ff516d17e84e803000000000000160014d1dc90a7bb3af91ed69e933dc38f555b580fad09e8030000000000001600146a1845bb0ea1f8efa63f00f325641db7350dcd5be803000000000000160014dfadaae18d57e4ef50e15b863d9e648bf9af67b10140eeb15b713763a95f40db82138b6f02a8ae8e49aad37ab3647d943a27713069f87376087de9ba49b7a477581f02cf4b4de25a468ee611b7a1ca2e71c3b1e179748c0000000200000000010190ee63cdc0e3f2b01c954abef709af77c0d966ca3f45b6b39ab9cfb6546c7a790000000000fdffffff03ae080000000000001600143d43d226bcc27019ade52d7a3dc52a7ac1be28b8f74e080000000000225120875b3dfe08354212207c94733807164505835a44100738a9c27a62bd5deef480050d000000000000160014d55c493983db651e10477455b1d408c31e7e9e310247304402205fad492ec062feca17e59887dabbea8100f2e4ec7fcfe5abeb7f88457c4cf4a10220445a0b8813843f05c1c87571e25dfebe6c54cb91dd80560e383b0de90d78b788012103a26fcdff9cd9ce50aefbe3efcb26788cee5808e312d1d6d35603a368ded1d68c2c000000020000000001010d6f3b89b2752a370bd0eff895dedaf32e98f8e2864fc20e62b8a6ed4643f7630100000000fdffffff01836adc0b00000000160014c9096d43f408ea526020262ccdad7c8516b92a81014013aec036e293145f5cfc8ca04160f1106efc2ab7700dded01bda0a9661f4ab19ff532d4e938e0f323eb50c048529acb058774cd32461c7b240ce9f210002e1e600000000", "00000020306837d0eef4d9ee14c272218aa4ef627563229963b425edc3e99698b70a177a09e1fee365ad4ca4185ec7e21e3ffbf8d61cb2fb016985306d5c8e1b3bc5429eaca5cc68ffff7f200000000002020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff04028e0000ffffffff024ffa052a01000000160014c90bc8fb153c0e3b3f29b22c557579c5de3a66150000000000000000266a24aa21a9ed2344a7ae8ab795a5ad6eb3bba41b94dd828ee69283dc061b320efa301f94ab0101200000000000000000000000000000000000000000000000000000000000000000000000000200000000010129bd3270ed16270ce47c2805092fa1eec53c14d1c7578ade4a94b27e055b2ce70100000000fdffffff0200c2eb0b00000000160014c954fe00217d67c17ca66fef5be3564d1d96d57afc0e97e000000000160014feb7ceeba93825033eeba052b20e06cade2206b20247304402203b14698b61a5221b767031a9bb387c3b06a663be1a1b938ad996374568e94ad402205fa3740d9a14059183ad30ae45afc61fbc68b901aea7173d8b2fa1733a88054b012102a6bb270c4a8286324026abe3813f1c0fc7d3d96d4cb8ad8205094a46fa02e0ed8d000000", "00000020c4a5389fd2c439623a83cd064cd2cdad4f650e4e1991c0d36e3800a679c013314ac1c66646c2aa7e09575ef04f00cd3936f34abf28c92c55a98bd24de8b7db1bafa5cc68ffff7f200200000002020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff04028f0000ffffffff024ffa052a010000001600143fd97058af25df1328d9c659e64c5f9b476fbdaa0000000000000000266a24aa21a9ed2711adf5e20fc19b1a26f0e04f7f22859b83208b73cb619c95101ebed2122924012000000000000000000000000000000000000000000000000000000000000000000000000002000000000101e015fe181c95b721f24b20eb0525ae465e2afb6539b3deffb6d4b66a3aabc3ff0100000000fdffffff022d8278e00000000016001438808aa65d103058bc2e2bc96fb7b5abfb4a827080841e000000000016001441a0f71f1bc036ebae6222da7bf3b3f64e6ca3c70247304402201c87e5c3e89d60be8990f1b7df6af0c562efd9f05f3acaaf4eda7b116bf3f33402206ad5f78c4cccf17377fa759c18f5d38f3afaba0fe3416f05c165270df19062ca012102c85567bd8a9b23f6cce00eb863d0cc75422c68527f9995bc8c87a369be41787e8e000000", "00000030961b26ec1c8b838e5562872bc24c74b310b9b5e08f2724cadc4f236a21013a29419eb8db9af5946c6f216eef290b3f8fc4138674ba7115d3ef594680a4dd92c1b3a5cc68ffff7f200000000002020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff0402900000ffffffff023f05062a010000001600140886464dcad5e2e417dc0bb7a7e11f5c174283330000000000000000266a24aa21a9ed530ad3aa9a0141b92c4af82bfa2a5864a3a851fb1b73c0444a98a10a7e2847000120000000000000000000000000000000000000000000000000000000000000000000000000020000000001017bc96174b593b7742a744000f987be10f53ab347e07e3eae4a5a4dcab7a325740100000000fdffffff0240420f000000000022002093dedd0c265bca868576d3ee2e59eebbb20ebc296e58f7edca93d5eeaec08996012f0f00000000002251205bb43b7fda1715d0dd01416825a18522a2d7ecb16475b88780e8fafc1c73ef8902473044022047b124323f92a3cde79bd48e98e53312e4ab71dd673f69ec36d3ab02945de29602204ef36c24eb5e30407cb5063dd5fc40fd9ea15e69ddac254e222230ad11bbaa73012103f1840aa89c7fb63dc6cf758f001b31c3e204e4bb46aedeff80540d5cf60138878f000000", "0000003055050a6cfb45ec437a68d424e0f56a6211007831ff1f0310fcd88a5aa6a2de578773d3816c5c060cb55bc5c3643ad355fa6c1dc6e9ad29679191cd7768737c80b7a5cc68ffff7f200000000001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff0402910000ffffffff0200f2052a01000000160014a378a7ce37a4c82b2dd13ad8e1a590b580a1bc480000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", "00000030f2a07c1e8c3aa3159797ba0aab8ff40492ebfdcd4a7d9afded41741efb17c07f1754ac4399f4c38e8704df47e4fa369b823d8989f5e3f81442531d073478dfd1b7a5cc68ffff7f200100000001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff0402920000ffffffff0200f2052a01000000160014a378a7ce37a4c82b2dd13ad8e1a590b580a1bc480000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", "0000003042a3e5d5244e19ccf3a4a7a0c0f58301529306d5b82a1200b94cd2d47424e235e034c65ebb1a3c46196d417d6bc2c28ac78817c5edd213844b3812f0af3f43b7b7a5cc68ffff7f200300000001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff0402930000ffffffff0200f2052a01000000160014a378a7ce37a4c82b2dd13ad8e1a590b580a1bc480000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", "0000003016d854c63bf827f3c9830e228384febcd003c6709a8fd420334b83ea7c85c27fcded859e85c9dba07504c3a00fb891462efc14797ae28577a46a6c6b950d411bb7a5cc68ffff7f200000000001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff0402940000ffffffff0200f2052a01000000160014a378a7ce37a4c82b2dd13ad8e1a590b580a1bc480000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", "00000030982cb4998ec46e5db74ef938e15159d614f12915a2b4944f1ff7a70fce1cdf175eb7b9fe1963bb6b088b07fefc118e0b3bd9558d7d31e82ec966dd823c393d91b9a5cc68ffff7f200000000001020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff0402950000ffffffff0200f2052a01000000160014862f42be9aa80f9fbd3d83775120ada825d3fc160000000000000000266a24aa21a9ede2f61c3f71d1defd3fa999dfa36953755c690689799962b48bebd836974e8cf90120000000000000000000000000000000000000000000000000000000000000000000000000", "00000030a7da249b84808dac36a3a9388c04b3c3716aafbcd80492ea361c8c819e520c04d383fd1555da2ed45f76f955d878db6561aba8d1e19b9a259b6645fe7e82c819bca5cc68ffff7f200200000002020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff0402960000ffffffff027a240395000000001600144dabeb208a4835465fb0cb8775638d09f6a743ca0000000000000000266a24aa21a9edc5d7bbd5480c150870d8c70b35fa450df8fe0c9ea4f47f247bc48a50b7787cfd0120000000000000000000000000000000000000000000000000000000000000000000000000020000000001028c69f1817bfe5402d7759cd829ae89ed7b16f0004fec1f3df9f5a5d3961f5f290100000000fdffffff8c69f1817bfe5402d7759cd829ae89ed7b16f0004fec1f3df9f5a5d3961f5f2900000000000000000002e77c0d00000000002251208f8ed44627557dbccc42ae018a9c5474a991285792c4ca891c1f59c5665d3460e0c810000000000022002093dedd0c265bca868576d3ee2e59eebbb20ebc296e58f7edca93d5eeaec089960140b4c16f718b0c73e68094fe843c1cd250f06624365e19ed5b852d974354e302141f5eee6127999f8e768d880eb4179f6737a1ff5d012ee1799ca8a0f0967469fc040047304402201edd3127cbad74a1b517bccde1e0f96d6f2ddf1c95636d5d6bcbc0e75e44e71d0220039ec583080caad6d1a7d2a08ecf39f9be714394b247163eb55be6213df4111e014730440220340e23fdb7a0f74113e13c33269b685ea86d47b76be3f720712872e88e14a52002203518e84e9e42f0a694c677f78712d7e7f08a313de28da34b8d3c7e3b874523f20147522102570ec0b6eb545663302183a62eac75d08fdeeb64f31352192065d601c8ca521d210266867c342b8250ab6b4edac6dbae2fde53782b69cd17139949fbd4f208487ff252ae95000000", "000000300a2bc4415606df7df660be753ca47b9c4aa59275ceb0487ba1022f3169d22c61600ae345f8b5b52d28632b8932f677eb35cd21c9ba7a87eedc7db328325931cfbfa5cc68ffff7f200200000002020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff0402970000ffffffff02880c039500000000160014a248b3aeab1bb6b97eb61da2924896909d5a6a350000000000000000266a24aa21a9ed52cc9ef6566a052a4c78b21b75128ce4e4a968d3b20c0b69a45cb208ed4b9023012000000000000000000000000000000000000000000000000000000000000000000000000002000000000101a2a0a5c23d43ec04b12ed14919a3998752ea6a76d35609ad6488fa8de55185dd01000000000000000002a086010000000000225120c4d282415f9a81d18e08b619a19d116b8656cb1bf493e5f540bbf7b7a0584cdab82e0f000000000022002093dedd0c265bca868576d3ee2e59eebbb20ebc296e58f7edca93d5eeaec08996040047304402201db4aa7b6b30648e0d987f0277ff209cebb58294ef8d33a6dc39c56bc1748ea502200e932a413eb07a2ba6ff6b16dd64685f2cbacab08c8c274a9be211f423e049e901473044022023b3d720b1aa05ccc596ec2df868658c104b730526e4976a0d06a4db01219e1f02205852465855aa5053297b6f186e1181407b217320fb2d1dd17f76ccfeadd3cb620147522102570ec0b6eb545663302183a62eac75d08fdeeb64f31352192065d601c8ca521d210266867c342b8250ab6b4edac6dbae2fde53782b69cd17139949fbd4f208487ff252ae96000000", "000000309d273f069b8317253a3a81f1752f75b375af961de0bbd886174ba52f42814b2082850ee10901598126f3de79bc1c274fb6320bd691fc4d559ceae4121e7d44f0c5a5cc68ffff7f200000000002020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff0402980000ffffffff024f0103950000000016001487203de6682f25b5aff2b560e265a2898013a0c00000000000000000266a24aa21a9ed68efc088d6af204776200ea395927670d1b2074ce1fc3ae38fd5b20465d7ea590120000000000000000000000000000000000000000000000000000000000000000000000000020000000001017bc96174b593b7742a744000f987be10f53ab347e07e3eae4a5a4dcab7a325740000000000fdffffff028096980100000000160014ff8533eaf0b139bc073d2a22638e6ca0a0837cd55ee3dfde00000000160014dd437fb5baec4837e16db6492da15735d6bec53302473044022004b98e86e5421bc2bdf1210d1843e6522e326cde78a0a06ae8e73581b0f28417022009a2742d6b84f996d7eef39b45f2815f8cdf435610a39a6f17661948613a2b67012103fcd37f519890b3a52527e314b15983e89b0310a0c625182d3060579ceb83eed097000000", "00000030e5a65303c5e691e1730a356042d83a9fe40666a51db9c363af1a9fda5cef0e2e8dcdb14c57fa7d37becb12a46d91e6adef829e1db9aca7f9d94e0e748d18dbf1c8a5cc68ffff7f200200000003020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff0402990000ffffffff02091503950000000016001481341d8d290681ff33fdd15e7d7b7a99bcd037af0000000000000000266a24aa21a9ed2e9fec3bff82a91adde20c8f990b85b769efe381dca08b0dea5fe90bbb766fb4012000000000000000000000000000000000000000000000000000000000000000000000000002000000000101fb09d48388d44aded94a818b4d21499048958b804e44be571bd3d2710235b87a0000000000fdffffff020000000100000000220020adc5aed50bce13b21c47f3f0eb0148161ebf4cbc2878a8e8e5e5288bbb2ecec1418398000000000022512081da0d3e3051135a89e2f9d85e2eadf661f959bfb05e671097854672cfd0ac7d02473044022062631301eb755fddf09b385e63d3f5e31719eb36be8753ad5d8ab678d4a91124022040b7af0d98bf28df651f0d1f985f6ca21997790d1505fbea69538627084fbb59012102add4be7c37be9c50f27bb329ea2e8f68057a61e12097240cd4bca9924eaa894e98000000020000000001011e9779a9313702a91a6d48a813f3bdae967f61ae55f2409c83d6e822164fb1e80000000000ffffffff0136f7ff00000000002251201067fac13be81ae1909c1d725d74016ef7bf6edf1b03387d461b4925f836e8550400473044022058412332756db92618336fb8b535ed878f2bf0b06b6350d7afcc61a515c6afc1022057376ff733177a01a3f703ce23b3c20c5fe649fba1d4db3b630dc4c95b0bd4f30147304402202c1a993c7e25862af407cf3632d0aeb985c85815bb67e6171fac299f6eb71ef90220102475307e731a19b2d4b10c9ad27cdc21f787cd96a4fbecc1a496cb353bb68801475221035c517d5a56a85036c3a7618d126648347e3a3a9b51df6710df0895cc8960a7bd2103b2e68f3a0dcaddd1447bfae157120f90b850239f3c8696a16641c9c8c4bbf3e752ae00000000", "00000030d5cf377ca8f216ff4fc69a396b347bfedcd2db61cefa32cc7d9d9d107cead8693ac1042b3c50b4e1fcd855105717e79a531b620b950bb787d152b21f234090a4cda5cc68ffff7f200100000004020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff04029a0000ffffffff022e220395000000001600141dbe8083c2be520937fec315c5da8eb5e006c1b70000000000000000266a24aa21a9ed39e9bdbb98d6db0337d9fda0b574e3ebe40a6999819bff9b77a9546725d1776201200000000000000000000000000000000000000000000000000000000000000000000000000200000000010108090ec7f33379421f47fd271d060d0e29869bde5fac8230b3a47e7d89bd6c9f0000000000fdffffff0240420f0000000000220020c9ea2c65ca8cdc27bc130fe11f5e52e175475e0e31b645b1dcc3832dc4f7e78deaa2f00000000000225120774b1c2a9b4b0a9dce43b46395940da2001115d400fa3667909ec86a5d36518b0140eea8154882d655e277895ab6707c2e1e9dbc31d230e026e024a8a511a5e068526e84915d41a273789dd83a0bcea5103e10d8fd4475c8bffdb8b18b8a22beb6839900000002000000000101fb09d48388d44aded94a818b4d21499048958b804e44be571bd3d2710235b87a0100000000fdffffff0200c2eb0b0000000016001403cfec8715e1f404a36ec011e4238f86329f909c0613f4d200000000160014228c0ccc0395f711ce40ce181d2d9b67993aa1ed0247304402203e4b40e0bb3ef5f82e41ea718d5cd386112ae74334267d4c0962a4554ff540890220390880bff28fa0b29791b4594dc1bae1e20987527b05da29c3ccb57f29e29988012103f7fcd435e6037c3d3541e63d617d96dec0f6a9a30e342e1cee7e16d6680cc8af870000000200000000010155d53486d003c5ba4b8eb9a3f5da04333acdb5d0023204d507e3e09127feeb900000000000ffffffff0176390f000000000022512012536dbaa5e2457b5a31dd8fe7667e0397683d8fa0a83efee353e279efc3afa9040047304402206c9b5eb1d62f252227df6fe6b00cddde6b132e943fbbf4a6f4d4862ecc65d56b02204575a146e4680c53d3cea728945dc7333532b79713c9a072ac8d3ada60ef232c01473044022023c310e4b8ea1109ebc7c0942d287848b95b3440a90a9a907a961e5af8a01dea022055995572d95c5eefc73823246afdc3aead4964bb1126e40ce73e0b66683c6b500147522102c2348b962b1ec06490a1a9e68bd2f572c032359f4f40f188f0dd6fce479cc23d2103e1bfc7950318ddcbf165f83fd6553a88b91039a8575bfefa52e9d2fff6b5760b52ae00000000", "000000309a2aeafbe310ae77df8724f53b9dcbddf2395552bf5d20c05b50c14e29f528414eb7c43355524e6c1ed22a63601cc1fd009d502532cc7274d5757dd1bf6f147dd1a5cc68ffff7f200100000002020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff04029b0000ffffffff021e29039500000000160014bbd073208d0396ec7d5e1cc55edc01cb5678c5f50000000000000000266a24aa21a9ed8edb2f4eb00a806ba34f2f1cfa6f6bdde8d6f33b0b8d788057a6a54c6ef3d64a012000000000000000000000000000000000000000000000000000000000000000000000000002000000000101f1737831198bea43e932c824f5f3e2f96256a2d1a1bac86f2ff4975672899d9d0000000000fdffffff02620dcd0b00000000225120c9183ede9121f3c6fd1498822c47a760273227669c909508843bac5bbd813f6880841e0000000000220020c9bc5c063caefbf7a6c7814407b5627b4f81a8b56ecbe932c682f9cbac0d19df024730440220597e09404a25cb3003ff039eaccfad8a25a34934b947d126feb4781e2788c989022035ebdc110669625f918befe86a6f63876798bcd55d259082729477ef927f77dd012102473d79cf4a10e7ba834c026aac43ea18b0a7fb75ecda5184bfafa8c46615f6b79a000000", "00000030a27e8ef8cad7e697acae802fc8bf7280f26c1a75ca60a46b65458c3f93461a440ee92da0c26ed427789d46186f7a27c0d14cac2db2156e0ad7466469db3cf28ed5a5cc68ffff7f200000000006020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff04029c0000ffffffff021d41039500000000160014487ee1d9886aa86c7e53b8b23a86557bd72967050000000000000000266a24aa21a9ed100aa64d612b44be4dc1eff1d152862c32eba6ce432695e4e28a2ce9924f9f1e012000000000000000000000000000000000000000000000000000000000000000000000000002000000000102b6f77750c0aae7faf2aa6e4b38a14671adc8def298a0b89ced09596f002aa5ef0100000000fdffffffc54a87b4517d7daf033a11b21f2ccf114304487c4189599816f3e243569c600c0100000000fdffffff0240420f0000000000220020b41521751a8eb257315f73a531763071cc39b7cece470f630fd5149fe7b7057ac594eb0b00000000225120a5410daebf4fc3cba618a840af497fbec4c3a084534f2b7b6a7d30bf35f8f5660140528e20b424e1ac7f2ae067093552f424dade1321ec396a7d382866be7bba9ba5a3faf375dc9b39d676d8adab67c30df596bca1412c3871bb9538fc00265c35bf02473044022003304f0d559771fe9d4b06dccecacbef7eaef5a97c7618b567de1ba53e7146ef02207f7138b9cd7fca8ea13498e6fed96b225873131c45b5c46e4e78c7fe45d5b3e9012102c8a8f25ed135cd671c88bd4e407bb3746678cfacbcf65ce89f8efc2aa0abe5359b00000002000000000101f1f1c0f2d69ba8f0ae95220d8218dcd117603a33c50475a65a5e4abf06006d0a0000000000fdffffff01cbb3eb0b00000000220020752dd5af63b98ff64fedf94683b0306c43f6eec74fbfe917639735b305e1b6d9024730440220082e14f48e21020a18fa8076ede8d7fc459df2d13dafb55e84dfaeb53843cff30220342483bf1d343af8a5473383de0d128ea92f97ea48f86fc40c74061b106ed0ff0121024740cce0e548f4ffe80c9914e43444d8e66ee8991dc9d93ec56dff4c56b933159b00000002000000000101f1737831198bea43e932c824f5f3e2f96256a2d1a1bac86f2ff4975672899d9d0100000000fdffffff02ae23fecc000000001600148dce2fa6292e4a2711334c56ecd0fdef6b8174f000e1f5050000000016001406a704367e9af9d1e305d1f0280515f824d5c76202473044022064406925fcbb9ea37bfaad60e17d8d483b398c2c50cc550ee7873805897ccb42022048a0b07a3543fb26eec6c2eb0fb3976a37e5d71ad1c50df3f1a5b8704c6e1b7f0121038c91b1360adc350830ab6dc4eff0c9e0df19db675dd165fccf591a4d950185269b0000000200000000010170c3f4e6f37cb3796f4008fa5a2a521103b23b9268b08ccf72216644b7b6b6910000000000ffffffff0101abeb0b00000000225120d2cf398fe62961599e769a8aa80430c9854dc04fe198aacceca063d76bafe8f7040047304402205c48299c2d099d2207c162b84ad95894de3601c6e299e6a7399d29f07ac660b902205e0fbc919ca693d5692588e3771b225abcd3acc8c2e05ed2ff5832148a32a55c0147304402203ea0c647ef48be7727130208ce1a59e123f3e48a88b5bb6b167e41972ac6f056022044b72ee45a4b823ba6924343c9f48c498eeb882e7a7cce36003925aa02d0cb7a014752210248fdf258e62b2d58c89663148c205feec42e15954c8c28ea8fe4d1d61293caf22102a75fc9b044b267e4314d018587e9855ac2ae817f3a64835d194bc99959a79f4d52ae0000000002000000000101ec1a427b4378593afccf7af7352f9bd37d276459a7a1f63e805094bf6acae2f90000000000ffffffff0176390f0000000000225120ebc29bf1526b5c18e4d14bdc0c2425e683d81ea0036c6834b98f5b04cdcb9d95040047304402206bb171775ea5334c9e604505eccd5010025e0bbfd65186e2e4f976a15dbce329022072d784a17bb46a4439b90a45d18f8cf2c28d80ff4388f4fe94740919cc6db2cf014730440220719782d4dba4b5024b5d35d7d590f84df275b1b921ec77e71cd98e55d677d702022042c25f4975c8eece9e5d0a820eed0a91a87fa063f9f584316c9838542a3f850001475221030c3fc0add8628ae8acc7befa2b833c455db3868be6de7add97b945a1e506f7fe21036c8bee77fa3632abc7a5df76cf029650eea826896024a70eaa64cac8a0131c1c52ae00000000", "00000030b7d0d291b19b111f335766b01affce6f0a2d2b5c1ed9bee013914ab68b008b6306bbf65b18d303804cb360151faa055f3373d1d03f2db728dc94abaf4e956ce4d8a5cc68ffff7f200600000006020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff04029d0000ffffffff02d891039500000000160014794f344028be1a45e8f74597adf0c38c6891617f0000000000000000266a24aa21a9ed2930b86df8466ba86eee76393a70dcb57675e9b80283c5e6d61e2729ece36bae0120000000000000000000000000000000000000000000000000000000000000000000000000020000000001080ca195cdd7b29ead524961e05456441fa5e2c97c8262739ecdb6d2228b29353b0000000000fdffffff0ca195cdd7b29ead524961e05456441fa5e2c97c8262739ecdb6d2228b29353b0200000000fdffffff1b5909e9c919db035da2aa438471ee7937308aa05d32f786273bde7d3c27d7590000000000fdffffff1b5909e9c919db035da2aa438471ee7937308aa05d32f786273bde7d3c27d7590200000000fdffffff1b5909e9c919db035da2aa438471ee7937308aa05d32f786273bde7d3c27d7590700000000fdffffff9a8c6de235929d0b3850ec06560bf60d252718a1aadfe8e0718218af4878d1790100000000fdffffffb17766dac493e0b215e2255ae236477dd453cad94560d7f418face046fd6c3f80100000000fdffffffd7dbbaa1e20d2efed3c4241e554bd38be7b87b97dab1024d7880b72a862d584c0000000000fdffffff04204e000000000000220020369444aad3ac8c5452be625479f761587c42fbf66fecf644447daabc73c498223075000000000000220020d90c23ede7b77f89f4cae93da9326ba176d158a0b65faeaede5684c3c0f7c8392808440700000000220020f7bbe8f915381b4b9b1ca14cccbfd156eea19888550d01a5014f977e98c7fc8ca86100000000000022512018ece00b736f9ed77ed3a87426643c242223e3d6116a4cd6d90946f73de2ce71024730440220426dde8016515f8f897454cc37361219c5414f5e21cf91598047f12e3ad2fb8102202602d18876f20eb58a593b93e782b820cb68347d7beba839113a3a1d5b31a9400121028a599168d3c97debc71bc66e6270ecf054f300d888309ba05471a482175dd93002473044022069681451f9469ec6e7b4a62db78999e9ded9b2eb1682b0d90895f0fe67cedb8e02204d80c50638d043a9a8cdb34259774e7b9a474047c178b61ec4ded0ae186c1602012102272a9a25f1ffed52fab04a2cc88aeab135b53723856a8f1481c26417f88a922e0247304402204a2f0bb65bfafd85a6ffeaf9e75ec9dbe20f5d9bc50d8d98126942c00951aa2802203877c0326e64585cf4c767e57398eaff58a279542e9fd16a223d1f507d1bfdbb01210267f4468ffafe6f919ae871f57f09690467f494e83e0358dc64d10472f9072f4c01405cac3f8d65efa45a8e253c40cdfe97d8bc182e8ea04de2ecdd3fe488c6a9fe6508cf336ac742417a80ca805f069e088d4e8ad79575cf5d8dade454f69645ce6b0247304402206a5d75ef2bedb452594a97c52277b8532725cf5804b62669872d97c0cb499c03022011aff97f2c87ce8d99eda0f9a2f73f2668a82aea6e0acfe3b7b01893f05fc403012103d034f788f410c2ec2d89d161df3c3715f965248aa53eace463d10eca443eb1f20247304402203605a17cf717f57d125b999fac579064cb576c214a2204a4b8a106695607b4bd02201e41c14bcc19af1083d7a716a1aa33fe8b23b3b07eda3d30074146b4146834f60121029da47016812598be384212ce15793496c0ec2176a87e81c6432dae964f87c9870247304402201f4bb570df0095b4c5f1c35c5db787e9e2d289ae3cc9d0b75decbc7bb41e25c00220789c3d68621f25bf1fa30e72652591354c71aa8397fd1fa18442a0ffa037900f01210328cc8fc978e209f1695fa5b5655061db1aab2311b524176945bf1015ef2d4b89014024629ca4144d02f2f414e30644b1b7800d19d07ccf88e6c25cc3c5bd208f16c71c0deda1230d7df241f63a25b4e32a3036ff20168564e24b816693dda22b44d89c000000020000000001019a8c6de235929d0b3850ec06560bf60d252718a1aadfe8e0718218af4878d1790000000000fdffffff02343208c700000000160014a155ef8ee8d9dc9babc345e5a4cc43b351c15f8a00e1f5050000000016001443120e0f201f7d32d7949f4c9960fbd2d69ea45b0247304402203220cdbaef52d32acc5730091f93842f38ad1465e4767929d05205585d740e61022063735e8c9626616a4cbe7d39c767c12922c3eeb1af6fd1166bfa2a14efa92f710121036afa1e054d6668a44a68d9a8431b49fd26c1f39c7ad8436225a1048834b2ee6b9c000000020000000001011b0265d8119c737e120249d7d43f24d9b9112ceb6b5574cf05c2016402cee8340200000000ffffffff015eff430700000000225120725e8a69e72d2a6d3e6661c926a16dc1228dda186d83aa3c7bd9b54cd317f29e0400473044022011049fb20acdea1175000a01b2fb096d2332df46c70a17d9cb958df585f461dd022069cdf216b5a3cf98011b0ac14768f87ca91232b5ecde2a7579099678c0efad450147304402204dc680a92545b9ca5db43dcd40c16204db3c522e78d7849adcdbc4240b819151022074b7ec5af773e1c6419ecca535a2e5b6bc42e0ae476d9e558215d636b54432c30147522102f2f2eaac321a9f2be81dfc5d5b09b481fd1e3947b8de8bb426cb67ccf0aa475a210334650d3c6997bbb0ccfedcabc5364d89a43e5f7bd3a548e56800d9dcfe6a9b5652ae00000000020000000001011b0265d8119c737e120249d7d43f24d9b9112ceb6b5574cf05c2016402cee8340000000000ffffffff0156450000000000002251208de5a3aa566cb6dc9037206bc73530ce6d7d8ea2dd1c488aec5862cb8b8e860e04004730440220173a7f31ffc8ff5925c7b5248078acfcd484bb83ce0364ab18cca92dbe3be06202201516c8cb93e17d653c2bd66d02cb82635cb0ff12779c7062b5514f0ea65db3ea01473044022061f9b595763ffffd1c33e7fc3004fc8054031eedb45fe11941592d0f854dbfb5022043660a53fe00e56b93bd284e24337fff4501d06108b66cf07efd3cb13576dae30147522102f52c0210d5b05d38a0c01f316be27ad07fadb10015f497accfa78b7c3cdb5cb621038f2a5514a8fd540d306215ea47cded68140a4d1346f0b8dc35b4261701f7ec6952ae00000000020000000001011b0265d8119c737e120249d7d43f24d9b9112ceb6b5574cf05c2016402cee8340100000000ffffffff01666c000000000000225120db2dec31ac965ff2ad3e392d2cf6aa76128cea0ad98d018b07bc5de2e2346bfb040047304402203a54a92ae8a4749684e90a7497e63ecf9ff45487145ca9a11b7572ebba3ecdb50220508bf82e99bb7c33ed3599763b1f16e723d99b2148acacf7dc51faa467a078ac01473044022029a6230007ed6981d381bd137017962ace1421c9cbb32609a60814fc3926482b02207650a6f5ede957178621f082ffa4150c76f54a067144fb95df4021aed06b8e680147522102aa0272607ae73d86191e375e0239afb53d41044d47c908dcb6cd0b8ddb2ab0632102c9c19e9f4dacbf34bd2a3fbd98726050bd4a03a8c4b5eb56e936174f8063bf2a52ae00000000", "00000030264a2bd05fcd9a4169cba7b82a80f36bd61ccfe7775404158fa4520d3164715c6afce95c2440d24fdb58fa3ab33e42adc07a79ed883f58659631e50792c16834dca5cc68ffff7f200100000003020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff04029e0000ffffffff02931a039500000000160014717cb6dc9915d62346ea07ee61ea32da7970236d0000000000000000266a24aa21a9ed7836e7fce6f6dd279ca9854bfdca8e893064f45618b71416fee7fdf0a88f349c0120000000000000000000000000000000000000000000000000000000000000000000000000020000000001021b0265d8119c737e120249d7d43f24d9b9112ceb6b5574cf05c2016402cee8340300000000fdffffff7375f9b47d75c6e3af621018a50fa2c8b9094f08f4aae0873c7f183eb7941ec10000000000fdffffff0250c30000000000002200209bd3269fda069b7ee0584622d458bb437635b3a179265dee3843ef18f42f35c6ed84430700000000225120def24e878a66b695c4d5b414b42b7ce94471dac985bb0afb0367e8bbb92c5a5201403801494402ede78cdce356dbcef09aec5e2f27284d899a7f580392c4af28ec6de04447e5cac3549b3648a3a55e2e5eefeba4fe98d23d3a84f1e7c61265bf5e5e01406ec83566298057fd8b0d18e0056148e33ea2846e83086bc1d409191b0820c51a9f3e6e144d4eac7f2e1bea9ba1f60ba2cc43b0e1b0de3dff293f6ad577275d709d00000002000000000101dfeaa138772eb1cffa834baf9f04121ca9ed5cb70fa8b970b26bb29714819ca10000000000ffffffff0186ba000000000000225120d41c550d30a802d368917f215c86d3351f161ebf00fc495b98e87e67ca34487604004730440220553c369eb5841565b647a7265b35f2da256f2f13e9f28c09f46ab93eda6465ef0220511c719824ea5efd7f014ec8550bc6e372860bcec49aa13934b0479cfab917f30147304402202dbfda2835b84fe16916cb75b2f541848b073bf2675eafd6403104ee20e3be0f02202c2b7122246a974795b596ed65577f4abd8a79b5290deea6f6c253ec67e056a60147522102331879114f4a701a7d448286c11e54999754f9c85d4de4354b83c0496079e6632103b4fdbaf0f285ae4492f88b1b22af0d2a41c49817305bed84cece23ea0a6364ae52ae00000000", "00000030837acad2c530ba013912624397e2634e53c49f4762bd90b830d4074b100dc31c608dcee1788c72b1aeeada4482cfafb90aee8d657577b47eba5e5c22f0930ffedea5cc68ffff7f200000000003020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff04029f0000ffffffff02c9140395000000001600147ed893dd2d5243d6c97e57b0d5306a713da9c5a10000000000000000266a24aa21a9edc4fd9cc31bf0535eb39b3abaa09d9e38587f0cca32a7652adc5534197dccdca20120000000000000000000000000000000000000000000000000000000000000000000000000020000000001017b8f758774d07ebe19b8aafd98a3c2cafbffeca90e207329d3a0712d743459c40000000000fdffffff023a9de9c60000000016001457359343816e81dc2620824255266c220e99e65080841e00000000001600149edfbe21c9e3afb797debd0aeb518a9d97793ea80247304402203c3ba9c4904b8fefaa76ad4ae39a8a706c44b79581975ae433bef5b483e895db022036956a59af4d1012b9c80815eedf28c3e837a36a30a3ef9481503accb1944878012103c6b5c1825b0241be7b0fb6fe3e39c295e3514ee03cd14c544b707af2c2ffbc809e0000000200000000010155310c6239b1c691cda8c054f3933467fb75153dddbd83dabec5d621990ddc920100000000ffffffff02d195070000000000225120370bae2303e8b17792a34ee04ada86a6b2b84fd76a01143babd899c7ed9e837220a10700000000002251201363815039bd9e091221a14a2e831ed038583ed2ecad464f4d0636886dbd652d0400473044022007b4c1c74291ab4d111e69d3516bc2cf2e651ff9ee6458f62a809a5cdb67f409022072e8c1acaf103ad752887b4baf09c8173863f43abf2a11fe950728ffb60ff67a0147304402200cc5de9f93e44cf65cb05a7996bb943a8582377daed10ce6e0870736d54798430220783265e49e1c5e1f58b43f81696fcac06698b223774f3a7e2d44389b24644961014752210313ff4006d7125ca9d78131ea9f6110e2da76e91d80dcc569d9074348a12487ee210365bc80cc1d94ae366118c78248d14612d055d2f7a2673eaca191509cbd6b461152ae00000000", "00000030ce263c56fb2ca0fe4948a337f1b3505df1054f2605e743d6f70a7edf003c0b0aab66597ad9793125daaafb1b7d834670246aa53724cf78b40d3a99a17695a93ae2a5cc68ffff7f200500000002020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff0402a00000ffffffff02c911039500000000160014ec21bdc2ee84d2d3c508ac6197567ea5eea234370000000000000000266a24aa21a9ed04c8a28cd0a29196f7626c60197a23cd81347c31932d0828512b625610a305a70120000000000000000000000000000000000000000000000000000000000000000000000000020000000001020ca195cdd7b29ead524961e05456441fa5e2c97c8262739ecdb6d2228b29353b0100000000fdffffff1b5909e9c919db035da2aa438471ee7937308aa05d32f786273bde7d3c27d7590100000000fdffffff02d47b0e0000000000225120ec722e1af72c414e9967d22b9809e96127fea27702c78dd7821b1c5aa9f08f5940420f0000000000220020a12560bd8816f9582f5de801314cf599747037f3e955e54e79821bb113178df4014021a2de69ef760b1ef71796c1a8a2ebe5c469a8ee48e6bfa4d76415f17fbe55837d8ba2c7e649dde9b0a5dca6f4e61fee90af721824e55bb069b7bf9a798d80d10140153d07aa86839c30595f05e74c97ca37a586394252c95c7ff3a52c820bb2bb76cdb8d2a772935564445d74ae238f26453ed722f5c2f997a1668319f2516514889f000000"] \ No newline at end of file diff --git a/tests/data/autogenerate-bitcoind-wallet.dat b/tests/data/autogenerate-bitcoind-wallet.dat new file mode 100644 index 000000000000..2e5517f3ec5d Binary files /dev/null and b/tests/data/autogenerate-bitcoind-wallet.dat differ diff --git a/tests/fuzz/Makefile b/tests/fuzz/Makefile index d7cdd0c9dbd2..0898e335f213 100644 --- a/tests/fuzz/Makefile +++ b/tests/fuzz/Makefile @@ -33,6 +33,7 @@ FUZZ_COMMON_OBJS := \ common/configdir.o \ common/configvar.o \ common/codex32.o \ + common/clock_time.o \ common/cryptomsg.o \ common/daemon.o \ common/daemon_conn.o \ diff --git a/tests/fuzz/connectd_handshake.h b/tests/fuzz/connectd_handshake.h index 6412db8a95c8..da4be733585e 100644 --- a/tests/fuzz/connectd_handshake.h +++ b/tests/fuzz/connectd_handshake.h @@ -1,6 +1,6 @@ /* This header contains globals and helper functions used by all the * fuzz-connectd-handshake-act* fuzz targets. It also takes care of intercepting - * io_read(), io_write(), and randombytes_buf(), so that the actual fuzz targets + * io_read(), io_write(), and randbytes(), so that the actual fuzz targets * only need to implement the test_read() and test_write() interceptors and the * run() function. */ @@ -21,7 +21,7 @@ #include static void seeded_randombytes_buf(u8 *secret, size_t len); -#define randombytes_buf(secret, len) seeded_randombytes_buf((secret), (len)) +#define randbytes(secret, len) seeded_randombytes_buf((secret), (len)) struct handshake; diff --git a/tests/plugins/Makefile b/tests/plugins/Makefile index 826857db18a1..ed9f4ee0ab3d 100644 --- a/tests/plugins/Makefile +++ b/tests/plugins/Makefile @@ -44,6 +44,7 @@ tests/plugins/channeld_fakenet: \ common/channel_config.o \ common/channel_id.o \ common/channel_type.o \ + common/clock_time.o \ common/daemon.o \ common/daemon_conn.o \ common/derive_basepoints.o \ @@ -74,6 +75,7 @@ tests/plugins/channeld_fakenet: \ common/per_peer_state.o \ common/permute_tx.o \ common/pseudorand.o \ + common/randbytes.o \ common/setup.o \ common/sphinx.o \ common/status.o \ diff --git a/tests/test_misc.py b/tests/test_misc.py index 0a6aba28dabe..112c07065b7c 100644 --- a/tests/test_misc.py +++ b/tests/test_misc.py @@ -3668,8 +3668,6 @@ def test_version_reexec(node_factory, bitcoind): # We use a file to tell our openingd wrapper where the real one is with open(os.path.join(l1.daemon.lightning_dir, TEST_NETWORK, "openingd-real"), 'w') as f: f.write(os.path.abspath('lightningd/lightning_openingd')) - # Internal restart doesn't work well with --dev-save-plugin-io - del l1.daemon.opts['dev-save-plugin-io'] l1.start() # This is a "version" message verfile = os.path.join(l1.daemon.lightning_dir, TEST_NETWORK, "openingd-version") @@ -4545,11 +4543,7 @@ def test_setconfig_changed(node_factory, bitcoind): @unittest.skipIf(os.getenv('TEST_DB_PROVIDER', 'sqlite3') != 'sqlite3', "deletes database, which is assumed sqlite3") def test_recover_command(node_factory, bitcoind): - l1 = node_factory.get_node(start=False) - # Internal restart doesn't work well with --dev-save-plugin-io - del l1.daemon.opts['dev-save-plugin-io'] - l1.start() - l2 = node_factory.get_node() + l1, l2 = node_factory.get_nodes(2) l1oldid = l1.info['id'] diff --git a/tests/test_splicing.py b/tests/test_splicing.py index 996afcec3897..50d91b2f9303 100644 --- a/tests/test_splicing.py +++ b/tests/test_splicing.py @@ -556,3 +556,31 @@ def test_route_by_old_scid(node_factory, bitcoind): wait_for(lambda: only_one(l1.rpc.listpeers()['peers'])['connected'] is True) l1.rpc.sendpay(route, inv2['payment_hash'], payment_secret=inv2['payment_secret']) l1.rpc.waitsendpay(inv2['payment_hash']) + + +@pytest.mark.openchannel('v1') +@pytest.mark.openchannel('v2') +def test_splice_unannounced(node_factory, bitcoind): + l1, l2 = node_factory.line_graph(2, fundamount=1000000, wait_for_announce=False, opts={'experimental-splicing': None}) + + chan_id = l1.get_channel_id(l2) + + # add extra sats to pay fee + funds_result = l1.rpc.fundpsbt("109000sat", "slow", 166, excess_as_change=True) + result = l1.rpc.splice_init(chan_id, 100000, funds_result['psbt']) + result = l1.rpc.splice_update(chan_id, result['psbt']) + assert(result['commitments_secured'] is False) + result = l1.rpc.splice_update(chan_id, result['psbt']) + assert(result['commitments_secured'] is True) + result = l1.rpc.signpsbt(result['psbt']) + result = l1.rpc.splice_signed(chan_id, result['signed_psbt']) + + l2.daemon.wait_for_log(r'CHANNELD_NORMAL to CHANNELD_AWAITING_SPLICE') + l1.daemon.wait_for_log(r'CHANNELD_NORMAL to CHANNELD_AWAITING_SPLICE') + + bitcoind.generate_block(1, wait_for_mempool=1) + + l2.daemon.wait_for_log(r'CHANNELD_AWAITING_SPLICE to CHANNELD_NORMAL') + l1.daemon.wait_for_log(r'CHANNELD_AWAITING_SPLICE to CHANNELD_NORMAL') + bitcoind.generate_block(1) + sync_blockheight(bitcoind, [l1, l2]) diff --git a/tests/test_wallet.py b/tests/test_wallet.py index b26679b1856c..c2cd96aafafc 100644 --- a/tests/test_wallet.py +++ b/tests/test_wallet.py @@ -1887,6 +1887,34 @@ def test_onchain_missing_no_p2tr_migrate(node_factory, bitcoind): l2.daemon.wait_for_log('Rescan finished! 1 outputs recovered') +@pytest.mark.parametrize("restart", [False, True]) +def test_sendpsbt_confirm(node_factory, bitcoind, restart): + """We should see our sendpsbt in wallet, and that it gets confirmed""" + l1, l2 = node_factory.get_nodes(2) + l1.fundwallet(100000) + + psbt = l1.rpc.fundpsbt(satoshi=10000, + feerate=7500, + startweight=42)['psbt'] + psbt = l2.rpc.addpsbtoutput(10000, psbt)['psbt'] + psbt = l1.rpc.signpsbt(psbt)['signed_psbt'] + sent = l1.rpc.sendpsbt(psbt) + + # Unconfirmed + lt = only_one([t for t in l1.rpc.listtransactions()['transactions'] if t['rawtx'] == sent['tx']]) + assert lt['blockheight'] == 0 + + if restart: + l1.restart() + + bitcoind.generate_block(1, wait_for_mempool=sent['txid']) + sync_blockheight(bitcoind, [l1]) + + # Should be confirmed now! + lt = only_one([t for t in l1.rpc.listtransactions()['transactions'] if t['rawtx'] == sent['tx']]) + assert lt['blockheight'] == bitcoind.rpc.getblockcount() + + def test_old_htlcs_cleanup(node_factory, bitcoind): """We lazily delete htlcs from channel_htlcs table""" l1, l2 = node_factory.line_graph(2) diff --git a/tools/Makefile b/tools/Makefile index 6b92ebdd5555..3922ce0c8566 100644 --- a/tools/Makefile +++ b/tools/Makefile @@ -18,7 +18,7 @@ tools/headerversions: $(FORCE) tools/headerversions.o libccan.a tools/headerversions.o: ccan/config.h tools/check-bolt: tools/check-bolt.o $(TOOLS_COMMON_OBJS) -tools/hsmtool: tools/hsmtool.o $(TOOLS_COMMON_OBJS) $(BITCOIN_OBJS) common/amount.o common/autodata.o common/bech32.o common/bech32_util.o common/bigsize.o common/codex32.o common/configdir.o common/configvar.o common/derive_basepoints.o common/descriptor_checksum.o common/hsm_encryption.o common/key_derive.o common/node_id.o common/version.o wire/fromwire.o wire/towire.o +tools/hsmtool: tools/hsmtool.o $(TOOLS_COMMON_OBJS) $(BITCOIN_OBJS) common/amount.o common/autodata.o common/bech32.o common/bech32_util.o common/bigsize.o common/codex32.o common/configdir.o common/configvar.o common/derive_basepoints.o common/descriptor_checksum.o common/hsm_encryption.o common/key_derive.o common/node_id.o common/version.o common/memleak.o wire/fromwire.o wire/towire.o tools/lightning-hsmtool: tools/hsmtool cp $< $@ diff --git a/tools/bench-gossipd.sh b/tools/bench-gossipd.sh index 9b4ff5269b44..4bea1552ce22 100755 --- a/tools/bench-gossipd.sh +++ b/tools/bench-gossipd.sh @@ -78,7 +78,7 @@ if ! bitcoin-cli -regtest ping >/dev/null 2>&1; then while ! bitcoin-cli -regtest ping >/dev/null 2>&1; do sleep 1; done fi -LIGHTNINGD="./lightningd/lightningd --developer --network=regtest --dev-gossip-time=1550513768" +LIGHTNINGD="CLN_DEV_SET_TIME=1550513768 ./lightningd/lightningd --developer --network=regtest" LCLI1="./cli/lightning-cli --lightning-dir=$DIR -R" if [ -z "$DIR" ]; then diff --git a/tools/hsmtool.c b/tools/hsmtool.c index 7f2d30fb9d59..a6ba5435fcee 100644 --- a/tools/hsmtool.c +++ b/tools/hsmtool.c @@ -19,6 +19,7 @@ #include #include #include +#include #include #include #include @@ -35,6 +36,11 @@ #define ERROR_LANG_NOT_SUPPORTED 6 #define ERROR_TERM 7 +void randbytes_(void *bytes, size_t num_bytes, u64 *offset) +{ + abort(); +} + static void show_usage(const char *progname) { printf("%s [arguments]\n", progname); diff --git a/wallet/db.c b/wallet/db.c index eb0ae7bed94e..f0af4e989770 100644 --- a/wallet/db.c +++ b/wallet/db.c @@ -6,6 +6,7 @@ #include #include #include +#include #include #include #include @@ -16,7 +17,6 @@ #include #include #include -#include #include #include #include diff --git a/wallet/invoices.c b/wallet/invoices.c index 1655c8f96f85..ddbff6515146 100644 --- a/wallet/invoices.c +++ b/wallet/invoices.c @@ -1,5 +1,6 @@ #include "config.h" #include +#include #include #include #include @@ -179,7 +180,7 @@ static u64 *expired_ids(const tal_t *ctx, static void trigger_expiration(struct invoices *invoices) { u64 *inv_dbids; - u64 now = time_now().ts.tv_sec; + u64 now = clock_time().ts.tv_sec; struct db_stmt *stmt; /* Free current expiration timer */ @@ -214,7 +215,7 @@ static void install_expiration_timer(struct invoices *invoices) struct db_stmt *stmt; struct timerel rel; struct timeabs expiry; - struct timeabs now = time_now(); + struct timeabs now = clock_time(); assert(!invoices->expiration_timer); @@ -275,7 +276,7 @@ bool invoices_create(struct invoices *invoices, { struct db_stmt *stmt; u64 expiry_time; - u64 now = time_now().ts.tv_sec; + u64 now = clock_time().ts.tv_sec; if (invoices_find_by_label(invoices, inv_dbid, label)) { if (taken(msat)) @@ -609,7 +610,7 @@ bool invoices_resolve(struct invoices *invoices, /* Assign a pay-index. */ pay_index = get_next_pay_index(invoices->wallet->db); - paid_timestamp = time_now().ts.tv_sec; + paid_timestamp = clock_time().ts.tv_sec; /* Update database. */ stmt = db_prepare_v2(invoices->wallet->db, SQL("UPDATE invoices" diff --git a/wallet/test/Makefile b/wallet/test/Makefile index c986342dfbcf..5d2e6e598bc5 100644 --- a/wallet/test/Makefile +++ b/wallet/test/Makefile @@ -12,6 +12,7 @@ WALLET_TEST_COMMON_OBJS := \ common/blockheight_states.o \ common/channel_id.o \ common/channel_type.o \ + common/clock_time.o \ common/derive_basepoints.o \ common/features.o \ common/htlc_state.o \ @@ -24,6 +25,7 @@ WALLET_TEST_COMMON_OBJS := \ common/key_derive.o \ common/psbt_keypath.o \ common/pseudorand.o \ + common/randbytes.o \ common/setup.o \ common/timeout.o \ common/trace.o \ diff --git a/wallet/test/run-chain_moves_duplicate-detect.c b/wallet/test/run-chain_moves_duplicate-detect.c index fdf62145e64a..d8e236b9dfdd 100644 --- a/wallet/test/run-chain_moves_duplicate-detect.c +++ b/wallet/test/run-chain_moves_duplicate-detect.c @@ -162,10 +162,6 @@ struct invoices *invoices_new(const tal_t *ctx UNNEEDED, struct wallet *wallet UNNEEDED, struct timers *timers UNNEEDED) { fprintf(stderr, "invoices_new called!\n"); abort(); } -/* Generated stub for memleak_scan_outpointfilter */ -void memleak_scan_outpointfilter(struct htable *memtable UNNEEDED, - const struct outpointfilter *opf UNNEEDED) -{ fprintf(stderr, "memleak_scan_outpointfilter called!\n"); abort(); } /* Generated stub for new_channel */ struct channel *new_channel(struct peer *peer UNNEEDED, u64 dbid UNNEEDED, /* NULL or stolen */ diff --git a/wallet/test/run-db.c b/wallet/test/run-db.c index 106cd38026ae..86d6501463a3 100644 --- a/wallet/test/run-db.c +++ b/wallet/test/run-db.c @@ -170,10 +170,6 @@ struct invoices *invoices_new(const tal_t *ctx UNNEEDED, void logv(struct logger *logger UNNEEDED, enum log_level level UNNEEDED, const struct node_id *node_id UNNEEDED, bool call_notifier UNNEEDED, const char *fmt UNNEEDED, va_list ap UNNEEDED) { fprintf(stderr, "logv called!\n"); abort(); } -/* Generated stub for memleak_scan_outpointfilter */ -void memleak_scan_outpointfilter(struct htable *memtable UNNEEDED, - const struct outpointfilter *opf UNNEEDED) -{ fprintf(stderr, "memleak_scan_outpointfilter called!\n"); abort(); } /* Generated stub for mk_mvt_tags_ */ struct mvt_tags mk_mvt_tags_(enum mvt_tag tag UNNEEDED, ...) { fprintf(stderr, "mk_mvt_tags_ called!\n"); abort(); } diff --git a/wallet/test/run-migrate_remove_chain_moves_duplicates.c b/wallet/test/run-migrate_remove_chain_moves_duplicates.c index f9ed9699df27..67b7a20f7731 100644 --- a/wallet/test/run-migrate_remove_chain_moves_duplicates.c +++ b/wallet/test/run-migrate_remove_chain_moves_duplicates.c @@ -174,10 +174,6 @@ struct invoices *invoices_new(const tal_t *ctx UNNEEDED, void logv(struct logger *logger UNNEEDED, enum log_level level UNNEEDED, const struct node_id *node_id UNNEEDED, bool call_notifier UNNEEDED, const char *fmt UNNEEDED, va_list ap UNNEEDED) { fprintf(stderr, "logv called!\n"); abort(); } -/* Generated stub for memleak_scan_outpointfilter */ -void memleak_scan_outpointfilter(struct htable *memtable UNNEEDED, - const struct outpointfilter *opf UNNEEDED) -{ fprintf(stderr, "memleak_scan_outpointfilter called!\n"); abort(); } /* Generated stub for migrate_from_account_db */ void migrate_from_account_db(struct lightningd *ld UNNEEDED, struct db *db UNNEEDED) { fprintf(stderr, "migrate_from_account_db called!\n"); abort(); } diff --git a/wallet/test/run-wallet.c b/wallet/test/run-wallet.c index 5a6ad596c3b7..ea0eb1d8f968 100644 --- a/wallet/test/run-wallet.c +++ b/wallet/test/run-wallet.c @@ -264,6 +264,16 @@ void fatal(const char *fmt UNNEEDED, ...) /* Generated stub for fatal_vfmt */ void fatal_vfmt(const char *fmt UNNEEDED, va_list ap UNNEEDED) { fprintf(stderr, "fatal_vfmt called!\n"); abort(); } +/* Generated stub for find_txwatch_ */ +struct txwatch *find_txwatch_(struct chain_topology *topo UNNEEDED, + const struct bitcoin_txid *txid UNNEEDED, + enum watch_result (*cb)(struct lightningd *ld UNNEEDED, + const struct bitcoin_txid * UNNEEDED, + const struct bitcoin_tx * UNNEEDED, + unsigned int depth UNNEEDED, + void *arg) UNNEEDED, + void *arg UNNEEDED) +{ fprintf(stderr, "find_txwatch_ called!\n"); abort(); } /* Generated stub for force_peer_disconnect */ void force_peer_disconnect(struct lightningd *ld UNNEEDED, const struct peer *peer UNNEEDED, @@ -654,10 +664,6 @@ void lockin_complete(struct channel *channel UNNEEDED, void logv(struct logger *logger UNNEEDED, enum log_level level UNNEEDED, const struct node_id *node_id UNNEEDED, bool call_notifier UNNEEDED, const char *fmt UNNEEDED, va_list ap UNNEEDED) { fprintf(stderr, "logv called!\n"); abort(); } -/* Generated stub for memleak_scan_outpointfilter */ -void memleak_scan_outpointfilter(struct htable *memtable UNNEEDED, - const struct outpointfilter *opf UNNEEDED) -{ fprintf(stderr, "memleak_scan_outpointfilter called!\n"); abort(); } /* Generated stub for mk_mvt_tags_ */ struct mvt_tags mk_mvt_tags_(enum mvt_tag tag UNNEEDED, ...) { fprintf(stderr, "mk_mvt_tags_ called!\n"); abort(); } diff --git a/wallet/txfilter.c b/wallet/txfilter.c index 10ef774e41b0..0ce6f46a7a2c 100644 --- a/wallet/txfilter.c +++ b/wallet/txfilter.c @@ -128,12 +128,6 @@ void outpointfilter_remove(struct outpointfilter *of, struct outpointfilter *outpointfilter_new(tal_t *ctx) { struct outpointfilter *opf = tal(ctx, struct outpointfilter); - opf->set = tal(opf, struct outpointset); - outpointset_init(opf->set); + opf->set = new_htable(opf, outpointset); return opf; } - -void memleak_scan_outpointfilter(struct htable *memtable, const struct outpointfilter *opf) -{ - memleak_scan_htable(memtable, &opf->set->raw); -} diff --git a/wallet/txfilter.h b/wallet/txfilter.h index c9152bffd390..2e72b68e1b93 100644 --- a/wallet/txfilter.h +++ b/wallet/txfilter.h @@ -64,9 +64,6 @@ bool outpointfilter_matches(struct outpointfilter *of, void outpointfilter_remove(struct outpointfilter *of, const struct bitcoin_outpoint *outpoint); -void memleak_scan_outpointfilter(struct htable *memtable, - const struct outpointfilter *opf); - /* Useful for other callers */ size_t scriptpubkey_hash(const u8 *out); diff --git a/wallet/wallet.c b/wallet/wallet.c index 599e2f920ade..bb56b3a00c4a 100644 --- a/wallet/wallet.c +++ b/wallet/wallet.c @@ -1,14 +1,17 @@ #include "config.h" #include #include +#include #include #include #include #include #include +#include #include #include #include +#include #include #include #include @@ -181,8 +184,7 @@ static void our_addresses_add_for_index(struct wallet *w, u32 i) static void our_addresses_init(struct wallet *w) { w->our_addresses_maxindex = 0; - w->our_addresses = tal(w, struct wallet_address_htable); - wallet_address_htable_init(w->our_addresses); + w->our_addresses = new_htable(w, wallet_address_htable); our_addresses_add_for_index(w, w->our_addresses_maxindex); } @@ -462,7 +464,23 @@ bool wallet_update_output_status(struct wallet *w, return changes > 0; } -static struct utxo **gather_utxos(const tal_t *ctx, struct db_stmt *stmt STEALS) +static int cmp_utxo(struct utxo *const *a, + struct utxo *const *b, + void *unused) +{ + int ret = memcmp(&(*a)->outpoint.txid, &(*b)->outpoint.txid, + sizeof((*a)->outpoint.txid)); + if (ret) + return ret; + if ((*a)->outpoint.n < (*b)->outpoint.n) + return -1; + else if ((*a)->outpoint.n > (*b)->outpoint.n) + return 1; + return 0; +} + +static struct utxo **gather_utxos(const tal_t *ctx, + struct db_stmt *stmt STEALS) { struct utxo **results; @@ -474,6 +492,10 @@ static struct utxo **gather_utxos(const tal_t *ctx, struct db_stmt *stmt STEALS) } tal_free(stmt); + /* Make sure these are in order if we're trying to remove entropy */ + if (randbytes_overridden()) + asort(results, tal_count(results), cmp_utxo, NULL); + return results; } @@ -820,27 +842,53 @@ struct utxo *wallet_find_utxo(const tal_t *ctx, struct wallet *w, struct db_stmt *stmt; struct utxo *utxo; - stmt = db_prepare_v2(w->db, SQL("SELECT" - " prev_out_tx" - ", prev_out_index" - ", value" - ", type" - ", status" - ", keyindex" - ", channel_id" - ", peer_id" - ", commitment_point" - ", option_anchor_outputs" - ", confirmation_height" - ", spend_height" - ", scriptpubkey " - ", reserved_til" - ", csv_lock" - ", is_in_coinbase" - " FROM outputs" - " WHERE status = ?" - " OR (status = ? AND reserved_til <= ?)" - "ORDER BY RANDOM();")); + /* Make sure these are in order if we're trying to remove entropy! */ + if (w->ld->developer && getenv("CLN_DEV_ENTROPY_SEED")) { + stmt = db_prepare_v2(w->db, SQL("SELECT" + " prev_out_tx" + ", prev_out_index" + ", value" + ", type" + ", status" + ", keyindex" + ", channel_id" + ", peer_id" + ", commitment_point" + ", option_anchor_outputs" + ", confirmation_height" + ", spend_height" + ", scriptpubkey " + ", reserved_til" + ", csv_lock" + ", is_in_coinbase" + " FROM outputs" + " WHERE status = ?" + " OR (status = ? AND reserved_til <= ?)" + "ORDER BY prev_out_tx, prev_out_index;")); + } else { + stmt = db_prepare_v2(w->db, SQL("SELECT" + " prev_out_tx" + ", prev_out_index" + ", value" + ", type" + ", status" + ", keyindex" + ", channel_id" + ", peer_id" + ", commitment_point" + ", option_anchor_outputs" + ", confirmation_height" + ", spend_height" + ", scriptpubkey " + ", reserved_til" + ", csv_lock" + ", is_in_coinbase" + " FROM outputs" + " WHERE status = ?" + " OR (status = ? AND reserved_til <= ?)" + "ORDER BY RANDOM();")); + } + db_bind_int(stmt, output_status_in_db(OUTPUT_STATE_AVAILABLE)); db_bind_int(stmt, output_status_in_db(OUTPUT_STATE_RESERVED)); db_bind_u64(stmt, current_blockheight); @@ -4186,7 +4234,7 @@ void wallet_payment_set_status(struct wallet *wallet, u32 completed_at = 0; if (newstatus != PAYMENT_PENDING) - completed_at = time_now().ts.tv_sec; + completed_at = clock_time().ts.tv_sec; stmt = db_prepare_v2(wallet->db, SQL("UPDATE payments SET status=?, completed_at=?, updated_index=? " @@ -5189,9 +5237,16 @@ struct bitcoin_txid *wallet_transactions_by_height(const tal_t *ctx, struct db_stmt *stmt; struct bitcoin_txid *txids = tal_arr(ctx, struct bitcoin_txid, 0); int count = 0; - stmt = db_prepare_v2( - w->db, SQL("SELECT id FROM transactions WHERE blockheight=?")); - db_bind_int(stmt, blockheight); + + /* Note: blockheight=NULL is not the same as is NULL! */ + if (blockheight == 0) { + stmt = db_prepare_v2( + w->db, SQL("SELECT id FROM transactions WHERE blockheight IS NULL")); + } else { + stmt = db_prepare_v2( + w->db, SQL("SELECT id FROM transactions WHERE blockheight=?")); + db_bind_int(stmt, blockheight); + } db_query_prepared(stmt); while (db_step(stmt)) { @@ -5334,7 +5389,7 @@ void wallet_forwarded_payment_add(struct wallet *w, const struct htlc_in *in, if (state == FORWARD_SETTLED || state == FORWARD_FAILED) { resolved_time = tal(tmpctx, struct timeabs); - *resolved_time = time_now(); + *resolved_time = clock_time(); } else { resolved_time = NULL; } @@ -6911,13 +6966,6 @@ struct local_anchor_info *wallet_get_local_anchors(const tal_t *ctx, return anchors; } -void wallet_memleak_scan(struct htable *memtable, const struct wallet *w) -{ - memleak_scan_outpointfilter(memtable, w->utxoset_outpoints); - memleak_scan_outpointfilter(memtable, w->owned_outpoints); - memleak_scan_htable(memtable, &w->our_addresses->raw); -} - struct issued_address_type *wallet_list_addresses(const tal_t *ctx, struct wallet *wallet, u64 liststart, const u32 *listlimit) { diff --git a/wallet/wallet.h b/wallet/wallet.h index f956196b37cd..ccadb121e180 100644 --- a/wallet/wallet.h +++ b/wallet/wallet.h @@ -1928,8 +1928,4 @@ void wallet_datastore_save_payment_description(struct db *db, void migrate_setup_coinmoves(struct lightningd *ld, struct db *db); void migrate_remove_chain_moves_duplicates(struct lightningd *ld, struct db *db); -/** - * wallet_memleak_scan - Check for memleaks in wallet. - */ -void wallet_memleak_scan(struct htable *memtable, const struct wallet *w); #endif /* LIGHTNING_WALLET_WALLET_H */ diff --git a/wallet/walletrpc.c b/wallet/walletrpc.c index 677db8bab66f..ab011b553b4c 100644 --- a/wallet/walletrpc.c +++ b/wallet/walletrpc.c @@ -953,7 +953,6 @@ static void maybe_notify_new_external_send(struct lightningd *ld, wallet_save_chain_mvt(ld, take(mvt)); } - static void sendpsbt_done(struct bitcoind *bitcoind UNUSED, bool success, const char *msg, struct sending_psbt *sending) @@ -985,10 +984,14 @@ static void sendpsbt_done(struct bitcoind *bitcoind UNUSED, } wallet_transaction_add(ld->wallet, sending->wtx, 0, 0); + wally_txid(sending->wtx, &txid); /* Extract the change output and add it to the DB */ - wallet_extract_owned_outputs(ld->wallet, sending->wtx, false, NULL); - wally_txid(sending->wtx, &txid); + if (wallet_extract_owned_outputs(ld->wallet, sending->wtx, false, NULL) == 0) { + /* If we're not watching it for selfish reasons (i.e. pure send to + * others), make sure we're watching it so we can update depth in db */ + watch_unconfirmed_txid(ld, ld->topology, &txid); + } for (size_t i = 0; i < sending->psbt->num_outputs; i++) maybe_notify_new_external_send(ld, &txid, i, sending->psbt); diff --git a/wire/test/Makefile b/wire/test/Makefile index 997a72dae737..785fa5054293 100644 --- a/wire/test/Makefile +++ b/wire/test/Makefile @@ -13,6 +13,7 @@ WIRE_TEST_COMMON_OBJS := \ common/autodata.o \ common/base32.o \ common/pseudorand.o \ + common/randbytes.o \ common/setup.o \ common/utils.o \ common/wireaddr.o diff --git a/wire/test/run-peer-wire.c b/wire/test/run-peer-wire.c index 894920440a88..f8b17c32e60b 100644 --- a/wire/test/run-peer-wire.c +++ b/wire/test/run-peer-wire.c @@ -12,6 +12,7 @@ #include #include +#include #include #include #include diff --git a/wire/test/run-tlvstream.c b/wire/test/run-tlvstream.c index 68420fb900ed..2cb0c8ceb567 100644 --- a/wire/test/run-tlvstream.c +++ b/wire/test/run-tlvstream.c @@ -9,6 +9,7 @@ static const char *reason; #include #include #include +#include #include #include