``` 2026-01-20T05:25:55.4465729Z with pytest.raises(RpcError, match=r"Unknown invoice") as excinfo: 2026-01-20T05:25:55.4466111Z > l1.rpc.call("renepay", {"invstring": inv2}) 2026-01-20T05:25:55.4466310Z 2026-01-20T05:25:55.4466402Z tests/test_renepay.py:423: ... 2026-01-20T05:25:55.4489732Z elif "error" in resp: 2026-01-20T05:25:55.4490005Z > raise RpcError(method, payload, resp['error']) 2026-01-20T05:25:55.4492135Z E pyln.client.lightning.RpcError: RPC call failed: method: renepay, payload: {'invstring': 'lnbcrt100n1p5k7yfqsp5g072rrl6jn7wu8nlxk279zpkacz34hr22n089j4elguccfxmg0gqpp5s3r4jtwr0pkrrqt5d0tm79l7n6zd8h3alluy070jhrq6vhpd8lmqdqgw3jhxapjxqyjw5qcqp99qxpqysgq6dd74sj0vpyjy9he8pep73tt8pljhv6mc74y28rr8995yjyahgh9kc2jqwqz62h6u6jpqz0u9x6gcahdw3pe2x8r5eyppp53mlpru8sp4p4nf6'}, error: {'code': -4, 'message': 'Plugin terminated before replying to RPC call.'} ```
Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
✓ Descriptive subject✓ Names a concrete action or component✓ Provides detailed explanatory context✓ Mentions testing or verification
The short version
What changed, and why it matters
This commit only adds a test-flakiness marker to an existing automated test. It does not change any production code, and the commit message treats the underlying crash as a low-priority test reliability issue rather than a security problem.
Recommended action
No immediate security action required. If the underlying plugin crash is concerning, investigate renepay's handling of malformed `sendpay_failure` onion replies separately from this test-only commit.
Security signals we found
01
Plugin crash (cln-renepay) observed in test logs, but not patched
02
Malformed onion reply handling may be a latent robustness issue, though not demonstrated to be exploitable
03
Change is test-only; no runtime behavior is altered
Technical analysis
Evidence from the diff
The diff adds @pytest.mark.flaky(reruns=2) to test_self_pay in tests/test_renepay.py. The commit message shows that the renepay plugin sometimes crashes when it receives a sendpay_failure notification containing a malformed onion reply, causing the plugin to terminate before replying to the RPC call. However, the patch does not fix the crash; it merely retries the test up to two times. No production code is modified.
Changed components
tests/test_renepay.pycln-renepay plugin (referenced in logs only, not modified)
This commit is a simple documentation revert. It undoes a previous change that told macOS users to install GNU make and GNU patch from Homebrew and to put those tools first in their command path. The reverted instructions now omit gpatch a…
This commit re-adds an old-style 'x' prefix to a string comparison in a test helper script. It is a test-only change with no effect on the actual Core Lightning node software, user funds, network behavior, or security. The change simply re…
This commit only updates macOS installation instructions in the documentation. It tells macOS users to install newer GNU versions of 'make' and 'patch' from Homebrew because Apple's built-in tools are too old for building and running sourc…