Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
28 commits
Select commit Hold shift + click to select a range
d24fa9e
multiwithdraw: use unique ids on requests.
rustyrussell May 18, 2026
2bbcbd7
libplugins: JSON ids are always strings.
rustyrussell May 19, 2026
0adfc37
libplugin: json_id: guard against weird prefixes
Lagrang3 Jul 14, 2026
6864cc3
lightningd: internal cleanups since all non-command JSON IDs are stri…
rustyrussell May 19, 2026
0c91ada
common: hoist hash_str helper into its own header.
rustyrussell May 19, 2026
81c4e02
common: implement str_to_u64, make json_to_u64 use it.
rustyrussell May 19, 2026
13e2efc
Add unit tests for str_to_u64
Lagrang3 Jun 17, 2026
cb5f972
common: hoist amount+currency parsing into common code.
rustyrussell May 19, 2026
e58646d
askrene: add APIs for "impressions" which are *relative* constraints.
rustyrussell May 20, 2026
0229ddc
downgrade: we need to remove "impressions" from askrene datastore whe…
rustyrussell May 20, 2026
a78aee3
downgrade tool: fix invalid memory bug
Lagrang3 Jul 15, 2026
28440c2
xpay: fakenet test: skip temporarily
Lagrang3 Jul 6, 2026
e565d27
xpay: actually tell askrene when a payment succeeded.
rustyrussell May 20, 2026
6b6aaa8
askrene: correctly order constraints.
rustyrussell May 20, 2026
02baec0
common: add helper to remove a range of elements
Lagrang3 Jun 18, 2026
d6c6e75
askrene: don't leak channel intel entries
Lagrang3 Jun 18, 2026
3fa7cfe
xpay: trim constraints: small optimization
Lagrang3 Jun 25, 2026
665a92a
askrene: safer iterating over changing htable
Lagrang3 Jul 14, 2026
8020b10
pytest: add tests for what we want askrene to do.
rustyrussell May 20, 2026
c961731
askrene: give clearer error codes.
rustyrussell May 20, 2026
7b03906
xpay: tests should expect the new error messages
Lagrang3 Jun 22, 2026
30a9121
askrene: explain failure: add known enabled case
Lagrang3 Jun 26, 2026
fd45ff7
offers: limit invoices to 10 minutes for recurring offers in other cu…
rustyrussell May 20, 2026
785de2d
offers: limit expiry to offer limit, or 10 minutes with currency conv…
rustyrussell May 20, 2026
7a1b43c
fetchinvoice: don't bother with checking recurrence timing.
rustyrussell May 20, 2026
b255d01
lightningd: don't do previous invoice checking in createinvoicerequest.
rustyrussell May 20, 2026
1146dc1
fetchinvoice: handle weird labels in recurrence_label parameter.
rustyrussell May 20, 2026
96a567d
askrene: test explain: fix flake
Lagrang3 Jul 6, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions .github/workflows/ci.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -465,6 +465,7 @@ jobs:
LIGHTNINGD_POSTGRES_NO_VACUUM: 1
VALGRIND: ${{ matrix.VALGRIND }}
PREV_LIGHTNINGD: old-cln/usr/bin/lightningd
CLN_PREV_VERSION: v26.06
PYTEST_OPTS: ${{ env.PYTEST_OPTS_BASE }}
run: |
env
Expand Down
73 changes: 72 additions & 1 deletion .msggen.json
Original file line number Diff line number Diff line change
Expand Up @@ -760,6 +760,7 @@
"AskRene-Create-Layer.layers[].created_channels[]": 5,
"AskRene-Create-Layer.layers[].disabled_channels[]": 4,
"AskRene-Create-Layer.layers[].disabled_nodes[]": 3,
"AskRene-Create-Layer.layers[].impressions[]": 10,
"AskRene-Create-Layer.layers[].layer": 1,
"AskRene-Create-Layer.layers[].node_biases[]": 9,
"AskRene-Create-Layer.layers[].persistent": 2
Expand Down Expand Up @@ -789,6 +790,11 @@
"AskRene-Create-Layer.layers[].created_channels[].short_channel_id": 3,
"AskRene-Create-Layer.layers[].created_channels[].source": 1
},
"Askrene-create-layerLayersImpressions": {
"AskRene-Create-Layer.layers[].impressions[].amount_msat": 1,
"AskRene-Create-Layer.layers[].impressions[].short_channel_id_dir": 2,
"AskRene-Create-Layer.layers[].impressions[].timestamp": 3
},
"Askrene-create-layerLayersNodeBiases": {
"AskRene-Create-Layer.layers[].node_biases[].description": 4,
"AskRene-Create-Layer.layers[].node_biases[].in_bias": 2,
Expand Down Expand Up @@ -821,6 +827,12 @@
"AskRene-Inform-Channel.constraints[].short_channel_id_dir": 1,
"AskRene-Inform-Channel.constraints[].timestamp": 3
},
"Askrene-inform-channelImpressions": {
"AskRene-Inform-Channel.impressions[].amount_msat": 1,
"AskRene-Inform-Channel.impressions[].layer": 2,
"AskRene-Inform-Channel.impressions[].short_channel_id_dir": 3,
"AskRene-Inform-Channel.impressions[].timestamp": 4
},
"Askrene-inform-channelRequest": {
"AskRene-Inform-Channel.amount_msat": 7,
"AskRene-Inform-Channel.direction": 3,
Expand All @@ -833,7 +845,8 @@
},
"Askrene-inform-channelResponse": {
"AskRene-Inform-Channel.constraint": 1,
"AskRene-Inform-Channel.constraints[]": 2
"AskRene-Inform-Channel.constraints[]": 2,
"AskRene-Inform-Channel.impressions[]": 3
},
"Askrene-listlayersLayers": {
"AskRene-ListLayers.layers[].biases[]": 8,
Expand All @@ -842,6 +855,7 @@
"AskRene-ListLayers.layers[].created_channels[]": 3,
"AskRene-ListLayers.layers[].disabled_channels[]": 6,
"AskRene-ListLayers.layers[].disabled_nodes[]": 2,
"AskRene-ListLayers.layers[].impressions[]": 10,
"AskRene-ListLayers.layers[].layer": 1,
"AskRene-ListLayers.layers[].node_biases[]": 9,
"AskRene-ListLayers.layers[].persistent": 5
Expand Down Expand Up @@ -880,6 +894,11 @@
"AskRene-ListLayers.layers[].created_channels[].short_channel_id": 3,
"AskRene-ListLayers.layers[].created_channels[].source": 1
},
"Askrene-listlayersLayersImpressions": {
"AskRene-ListLayers.layers[].impressions[].amount_msat": 1,
"AskRene-ListLayers.layers[].impressions[].short_channel_id_dir": 2,
"AskRene-ListLayers.layers[].impressions[].timestamp": 3
},
"Askrene-listlayersLayersNodeBiases": {
"AskRene-ListLayers.layers[].node_biases[].description": 4,
"AskRene-ListLayers.layers[].node_biases[].in_bias": 2,
Expand Down Expand Up @@ -4897,6 +4916,22 @@
"added": "v24.11",
"deprecated": null
},
"AskRene-Create-Layer.layers[].impressions[]": {
"added": "v26.09",
"deprecated": null
},
"AskRene-Create-Layer.layers[].impressions[].amount_msat": {
"added": "v26.09",
"deprecated": null
},
"AskRene-Create-Layer.layers[].impressions[].short_channel_id_dir": {
"added": "v26.09",
"deprecated": null
},
"AskRene-Create-Layer.layers[].impressions[].timestamp": {
"added": "v26.09",
"deprecated": null
},
"AskRene-Create-Layer.layers[].layer": {
"added": "v24.11",
"deprecated": null
Expand Down Expand Up @@ -5005,6 +5040,26 @@
"added": "v24.11",
"deprecated": null
},
"AskRene-Inform-Channel.impressions[]": {
"added": "v26.09",
"deprecated": null
},
"AskRene-Inform-Channel.impressions[].amount_msat": {
"added": "v26.09",
"deprecated": null
},
"AskRene-Inform-Channel.impressions[].layer": {
"added": "v26.09",
"deprecated": null
},
"AskRene-Inform-Channel.impressions[].short_channel_id_dir": {
"added": "v26.09",
"deprecated": null
},
"AskRene-Inform-Channel.impressions[].timestamp": {
"added": "v26.09",
"deprecated": null
},
"AskRene-Inform-Channel.inform": {
"added": "v24.11",
"deprecated": null
Expand Down Expand Up @@ -5169,6 +5224,22 @@
"added": "v24.11",
"deprecated": null
},
"AskRene-ListLayers.layers[].impressions[]": {
"added": "v26.09",
"deprecated": null
},
"AskRene-ListLayers.layers[].impressions[].amount_msat": {
"added": "v26.09",
"deprecated": null
},
"AskRene-ListLayers.layers[].impressions[].short_channel_id_dir": {
"added": "v26.09",
"deprecated": null
},
"AskRene-ListLayers.layers[].impressions[].timestamp": {
"added": "v26.09",
"deprecated": null
},
"AskRene-ListLayers.layers[].layer": {
"added": "v24.11",
"deprecated": null
Expand Down
22 changes: 22 additions & 0 deletions cln-grpc/proto/node.proto

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

40 changes: 40 additions & 0 deletions cln-grpc/src/convert.rs

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

30 changes: 29 additions & 1 deletion cln-rpc/src/model.rs

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

1 change: 1 addition & 0 deletions common/Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -121,6 +121,7 @@ COMMON_HEADERS_NOGEN := $(COMMON_SRC_NOGEN:.c=.h) \
common/ecdh.h \
common/errcode.h \
common/gossip_constants.h \
common/hash_str.h \
common/hsm_version.h \
common/htlc.h \
common/jsonrpc_errors.h \
Expand Down
11 changes: 11 additions & 0 deletions common/hash_str.h
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
#ifndef LIGHTNING_COMMON_HASH_STR_H
#define LIGHTNING_COMMON_HASH_STR_H
#include "config.h"
#include <common/pseudorand.h>

static inline size_t hash_str(const char *str)
{
return siphash24(siphash_seed(), str, strlen(str));
}

#endif /* LIGHTNING_COMMON_HASH_STR_H */
Loading
Loading