Every captured commit receives deterministic security triage and a separate communication-quality score. Security candidates and broader second-pass signals receive full-patch Ollama analysis.
Message quality measures whether a commit identifies its scope, purpose, rationale, testing, and supporting references. It does not change the security-severity score.
This commit simply adds a new person's PGP public-key fingerprint to the list of trusted release signers in two documentation files. It does not change any code, fix any bug, or alter any security behavior of the software itself.
This is a tiny internal fix to make a bookkeeping migration produce stable event ordering. It changes the timestamp used when creating historical 'deposit' records during a one-time database migration, so the records sort consistently with…
This commit is a documentation-only cleanup of the JSON-RPC command help files. It corrects which numeric error codes are listed for each command so the published schemas match what the software actually returns. No program logic, validati…
Documentation-only change with no executable code modificationsCorrects RPC schema error-code metadata to match actual handler behaviorNo change to input parsing, authorization, cryptography, or network behavior
This commit fixes a bug where a setting that controls whether unexpected transaction signatures are allowed was not initialized when the channel daemon starts. If a peer sent such signatures before the channel was fully ready, the program …
use of uninitialized variableundefined behavior (invalid bool load)network-triggered code path
This commit fixes the project's internal nightly code-coverage CI workflow. It changes how test coverage files are collected, ensures the same LLVM compiler version is used to generate and merge coverage data, and uploads a Codecov-compati…
This commit is a large cleanup of Core Lightning's API schemas, generated RPC bindings, and related plugin code. The stated goal is to make the documented 'required' fields match what the C code actually always produces or expects. In prac…
Large schema-only change with no accompanying security advisory or CVEOne semantic change to plugin hook response: invoice_payment hook can now reject with only failure_message and no resultMany fields change from optional to required in public RPC/protobuf interfaces
This commit only updates documentation. It adds error code 313 to the documented error lists for several Core Lightning commands (fundpsbt, utxopsbt, txprepare, multiwithdraw, and upgradewallet). The error code already existed in the code …
This commit fixes a release-script check that verifies the cryptographic signature on a file of checksums. Previously, the script only told GPG to verify the signature file itself. If someone replaced that signature file with an inline-sig…
Incorrect cryptographic verification logic in release toolingPotential false-positive signature verification with inline-signed .asc substitutionRelease-integrity hardening
This commit updates Core Lightning's release documentation to tell users and release managers to run gpg --verify with both the signature file and the manifest file named explicitly. The old one-argument form can silently succeed even if t…
Verification bypass risk in release artifact validationgpg --verify single-argument form can exit 0 without reading the intended manifestDocumentation-only hardening of release process
This commit is a routine update to the Rust dependency lock file (Cargo.lock), bumping many third-party libraries to newer patch or minor versions. The commit message gives no security reason for the update, and no verified references link…
Routine dependency refresh with no stated security rationaleUpdates to security-sensitive transitive crates (rustls, hyper, h2, tokio, webpki-roots) but no evidence these versions fix known vulnerabilitiesNo source-code changes or patch-specific fixes visible in the diff
This commit fixes a stack-overflow risk in Core Lightning's JSON parser. Before the fix, an attacker could send a valid JSON-RPC message containing thousands of nested brackets or braces. The parser's own helper functions used recursion fo…
Stack-overflow via deeply nested JSONRecursive JSON traversal without depth boundDenial-of-service vector in JSON-RPC input parsing
This commit only fixes typos and comment style. It changes two C-style comments from // to /* */ and corrects a grammar error in a documentation comment ('element' to 'elements'). There are no code behavior changes, no bug fixes, and no se…
This change fixes a test-infrastructure bug in Core Lightning's Python testing helpers. When running tests against a PostgreSQL database, very long test names could be silently shortened by PostgreSQL, causing different test runs or nodes …
No security-relevant signal: change is in test framework code onlyFixes a test reliability issue, not a runtime vulnerabilityNo input sanitization, authentication, cryptography, or network changes
This fix prevents Core Lightning from trying to use freshly created bitcoins (immature coinbase rewards) as emergency funds for fee-bump transactions. Such a transaction would be invalid under Bitcoin's rules and would be rejected by the n…
This commit fixes a bug in Core Lightning's askrene plugin that could prevent a node from restarting. When a saved routing layer contained a node bias with a description, the plugin accidentally freed the description's memory while using i…
Use-after-free / double-take of a tal-allocated string during plugin startupDenial-of-service-like symptom: lightningd aborts before replying to init, node cannot restartFixes publicly reported issue #9433 by endothermicdev
This commit only fixes a test case so it actually exercises the intended code path. It does not change any production code, so it cannot introduce or fix a real-world security vulnerability by itself. The test change is a reproducer for a …
This commit fixes a bug in Core Lightning's experimental dual-funded channel feature. When another node tried to open a channel, Core Lightning was not checking whether the proposed transaction fees were reasonable. A peer could request a …
Missing input validation on wire-parsed feerate fieldsPeer could induce signing and storage of feerate == 0RBF remote path allowed unbounded upward feerate walks
This commit adds regression tests for three related bugs where wildly wrong Bitcoin transaction feerates could enter Core Lightning. In the worst case, a malicious or broken fee source could make the node think a feerate was zero (due to a…
Integer overflow in feerate conversion (u32 wrap from 0xFFFFFFFF perkb to 0 perkw)Absurd feerate from external fee source bypassing sanity ceilingDatabase-stored out-of-range feerate causing startup abort/crash loop
This update fixes a crash bug in Core Lightning. When the software tried to list details of a channel opening in progress, it could crash if a stored fee rate was extremely large or zero. The crash happened because the code used an interna…
Integer overflow in RBF escalation (u32 * 25 / 24) leading to assertion failureAssertion failure in read-only introspection RPC (listpeerchannels) causing crash-loop at startupDatabase value treated as invariant despite originating from external fee estimator
This commit fixes a bug where Core Lightning nodes could get stuck in a crash loop. If a node had previously stored an extremely high or zero fee rate for an in-progress channel funding operation (a 'splice' or dual-funded channel RBF), a …
Integer overflow in fee-rate calculation (u32 overflow when multiplying by 25/24)Assertion failure leading to daemon crash loop at startupDatabase migration clamps out-of-range stored funding feerates
Expand any commit for its author, full message, clarity score, changed files, triage signals, analysis, and source link.
Lower-prioritygossipd: put common size restrictions on all maps.by Rusty Russell · 7c2d322f · Mar 29, 2026 · 1 fileMessage 73 · AdequateModerate 50Details
Commit message · Rusty Russell
gossipd: put common size restrictions on all maps.
We already limited pending_ann_map and early_ann_map to 10,000 entries: do the same for pending_nannounces, pending_cupdates and early_cupdates.
Add CI_UNEXPECTED so CI gets upset if this happens unexpectedly.
Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
73/100 · AdequateMessage clarity
✓ Specific, descriptive subject✓ Names a concrete action or component✓ Provides detailed explanatory context
AI analysis · Moderate 50/100
This change adds size caps to internal queues in the Lightning node's gossip subsystem, mirroring limits that already existed for some maps. It is a hardening/DoS-prevention patch: without limits, an attacker could potentially flood the node with gossip messages and consume unbounded memory. The patch also adds a CI_UNEXPECTED marker so the continuous-integration system flags unexpected flooding. There is no direct evidence in the commit of an active exploit or a specific vulnerability being fixed beyond resource-exhaustion risk.
Revert "connectd: add dev_uniform_padding to connectd_wire.csv"
This reverts commit 9e488a64668a3a25db9a09f4266cbdf2d4afdc6f.
65/100 · AdequateMessage clarity
✓ Specific, descriptive subject✓ Names a concrete action or component✓ Provides an explanatory body
AI analysis · Informational 11/100
This commit simply removes a developer-only experimental feature flag called 'dev_uniform_padding' from an internal message definition file. It is a clean revert of a previous commit that added the flag. There is no indication this change fixes or introduces a security vulnerability; it just undoes an unmerged or unwanted development experiment related to padding network messages for traffic-analysis defense.
Lower-priorityRevert "test: add flag to test_constant_packet_size"by Sangbida Chaudhuri · 118fecdc · Mar 27, 2026 · 1 fileMessage 75 · AdequateInformational 12Details
Commit message · Sangbida Chaudhuri
Revert "test: add flag to test_constant_packet_size"
This reverts commit c39c5055ee4e2e537424febfd73b73d2f8fe6b91.
75/100 · AdequateMessage clarity
✓ Specific, descriptive subject✓ Names a concrete action or component✓ Provides an explanatory body✓ Mentions testing or verification
AI analysis · Informational 12/100
This commit simply reverts a previous test-only change. It removes a special developer flag ('dev-uniform-padding') from a network traffic test, returning the test to its original state. There is no change to production code, no user-facing behavior change, and no security fix or vulnerability introduced by this patch.
Lower-priorityRevert "lightningd: add dev-uniform-padding flag to lightningd"by Sangbida Chaudhuri · 4787eb6f · Mar 27, 2026 · 6 filesMessage 65 · AdequateInformational 12Details
Commit message · Sangbida Chaudhuri
Revert "lightningd: add dev-uniform-padding flag to lightningd"
This reverts commit 5cb8ac43aaa7d2fb49b8a3eedbb4267b9858ceb3.
65/100 · AdequateMessage clarity
✓ Specific, descriptive subject✓ Names a concrete action or component✓ Provides an explanatory body
AI analysis · Informational 12/100
This commit removes a developer-only experimental feature called --dev-uniform-padding that padded peer network messages to fixed 1460-byte chunks. It is a clean revert of an earlier feature addition and does not fix any known security vulnerability. The change simply deletes the option and its wiring; no bug or exploit is present in the diff.
This reverts commit b5205f558d59a635130c33ff42413d41d05060f6.
65/100 · AdequateMessage clarity
✓ Specific, descriptive subject✓ Names a concrete action or component✓ Provides an explanatory body
AI analysis · Low 34/100
This commit removes a developer-only flag that made message padding optional, restoring uniform padding for all encrypted peer messages. Uniform padding hides the real length of messages, so reverting to always-on padding is a privacy improvement rather than a security bug. There is no direct evidence this change fixes an active vulnerability; it appears to be a design cleanup that strengthens traffic-analysis resistance.
Lower-prioritytest: add flag to test_constant_packet_sizeby Sangbida Chaudhuri · c39c5055 · Mar 27, 2026 · 1 fileMessage 67 · AdequateInformational 15Details
Commit message · Sangbida Chaudhuri
test: add flag to test_constant_packet_size
67/100 · AdequateMessage clarity
✓ Descriptive subject✓ Names a concrete action or component✓ Uses a recognizable type or scope✓ Mentions testing or verification! No meaningful explanatory body
AI analysis · Informational 15/100
This is a one-line change to a test file. It adds a developer-only flag ('dev-uniform-padding') when creating test nodes so that an existing test for constant TCP packet sizes actually exercises the uniform-padding feature. There is no change to production code, no bug fix, and no security-relevant behavior change.
Uniform padding (sending all messages as 1460-byte chunks) breaks peers running LND-based nodes: LND disconnects on receiving a ping(num_pong_bytes=65535) with "pong bytes exceeded" instead of ignoring it as required by BOLT #1. Gate the feature behind --dev-uniform-padding so it is opt-in rather than forced on all connections. Nodes that only peer with CLN can enable it for the traffic analysis defence. Changelog-Changed: uniform message padding is now opt-in via the --dev-uniform-padding flag.
81/100 · StrongMessage clarity
✓ Specific, descriptive subject✓ Names a concrete action or component✓ Provides detailed explanatory context✓ Links an issue, advisory, or supporting reference
AI analysis · Low 27/100
This change makes a message-padding feature optional instead of always-on. The always-on padding was causing Core Lightning nodes to be disconnected by LND-based peers because it sent oversized ping messages. The fix adds a developer flag so operators can turn padding on only when all their peers support it. It is a compatibility/operational fix, not a security patch for an exploitable vulnerability.
Lower-prioritylightningd: add dev-uniform-padding flag to lightningdby Sangbida Chaudhuri · 5cb8ac43 · Mar 27, 2026 · 6 filesMessage 50 · ThinInformational 15Details
Commit message · Sangbida Chaudhuri
lightningd: add dev-uniform-padding flag to lightningd
50/100 · ThinMessage clarity
✓ Specific, descriptive subject✓ Names a concrete action or component! No meaningful explanatory body
AI analysis · Informational 15/100
This commit adds a new hidden developer-only command-line flag called --dev-uniform-padding. When enabled, it tells the daemon to pad outgoing peer messages to fixed 1460-byte chunks as a defense against traffic analysis. The change only wires the flag through the daemon; the actual padding logic is not present in this commit. There is no security vulnerability here.
Lower-priorityconnectd: add dev_uniform_padding to connectd_wire.csvby Sangbida Chaudhuri · 9e488a64 · Mar 27, 2026 · 1 fileMessage 73 · AdequateInformational 15Details
Commit message · Sangbida Chaudhuri
connectd: add dev_uniform_padding to connectd_wire.csv
This boolean allows lightningd and connectd to be on the same page on whether the uniform padding experimental flag is enabled.
73/100 · AdequateMessage clarity
✓ Specific, descriptive subject✓ Names a concrete action or component✓ Provides detailed explanatory context
AI analysis · Informational 15/100
This commit adds a new internal flag called dev_uniform_padding to a wiring definition file so two parts of the Core Lightning software can agree on whether an experimental traffic-padding feature is turned on. It is a one-line metadata addition with no executable code changes and no security fix.
AI review queuedlightningd: initialize ECDH before replaying blinded HTLCsby michael1011 · 9737ef55 · Mar 24, 2026 · 3 filesMessage 83 · StrongLow 38Details
Commit message · michael1011
lightningd: initialize ECDH before replaying blinded HTLCs
Replay of stored blinded HTLCs can reach onion decoding before the hsmd-backed ecdh() wrapper is initialized, causing a startup crash. Set up ECDH earlier and add a regression test for blinded HTLC replay.
Changelog-Fixed: lightningd no longer crashes when replaying stored blinded HTLCs during startup.
83/100 · StrongMessage clarity
✓ Specific, descriptive subject✓ Names a concrete action or component✓ Provides detailed explanatory context✓ Mentions testing or verification
Why it was queued
fuzzing or regression evidencesecond-pass: broader security terminology
AI analysis · Low 38/100
This commit fixes a startup crash in Core Lightning. If the node had stored a special type of payment (a 'blinded HTLC') that needed to be replayed when restarting, the code could try to decode its encrypted onion before the secure key-handling helper was ready. The fix simply initializes that helper earlier in startup and adds a regression test. It is a reliability bug, not a code-execution or theft vulnerability.
Lower-prioritycontrib: update Fedora builder to use bitcoincore.org for Bitcoin 29.0by Sangbida Chaudhuri · b3accee9 · Mar 24, 2026 · 1 fileMessage 50 · ThinInformational 15Details
Commit message · Sangbida Chaudhuri
contrib: update Fedora builder to use bitcoincore.org for Bitcoin 29.0
50/100 · ThinMessage clarity
✓ Specific, descriptive subject✓ Names a concrete action or component! No meaningful explanatory body
AI analysis · Informational 15/100
This commit simply changes the download source for Bitcoin Core inside a Fedora build container, switching from a Google Cloud Storage bucket used by the project to the official bitcoincore.org website. There is no security-relevant code change and no indication of a vulnerability.
Lower-priorityschemas: make `direction` in `listpeerchannels` a u32by daywalker90 · b4a9dc51 · Mar 23, 2026 · 6 filesMessage 65 · AdequateInformational 19Details
Commit message · daywalker90
schemas: make `direction` in `listpeerchannels` a u32
everywhere else it's a u32 aswell, an `integer` makes it a i64 but possible values are only 0 and 1
Changelog-None
65/100 · AdequateMessage clarity
✓ Specific, descriptive subject✓ Names a concrete action or component✓ Provides an explanatory body
AI analysis · Informational 19/100
This commit is a minor API consistency fix. It changes the data type of the `direction` field returned by the `listpeerchannels` command from a signed 64-bit integer (`integer`/`sint64`) to an unsigned 32-bit integer (`u32`/`uint32`). The field only ever holds the values 0 or 1, so this simply aligns it with how the same field is represented in other parts of the API. It is not a security patch and does not fix a vulnerability.
AI review queuedv26.04rc1by Sangbida Chaudhuri · 93c9adb4 · Mar 23, 2026 · 11 filesMessage 0 · OpaqueInformational 15Details
Commit message · Sangbida Chaudhuri
v26.04rc1
Changelog-None
0/100 · OpaqueMessage clarity
! Very short subject! Too few words to establish purpose! No meaningful explanatory body
Why it was queued
second-pass: opaque commit message
AI analysis · Informational 15/100
This commit is a routine version bump to mark the v26.04rc1 release candidate of Core Lightning. It only updates version strings across packaging files, the changelog, a contributor credit script, and a lockfile. There are no code changes that alter how the software behaves or processes data.
Lower-prioritycurrencyrate: don't sleep for as long in background task.by Rusty Russell · e2770c81 · Mar 23, 2026 · 1 fileMessage 85 · StrongInformational 15Details
Commit message · Rusty Russell
currencyrate: don't sleep for as long in background task.
We process at least one stale entry per iteration (more if it has changed by +/- 1%), so we should sleep for less if we have more entries, in order to average hitting each source once per hour.
Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
85/100 · StrongMessage clarity
✓ Specific, descriptive subject✓ Names a concrete action or component✓ Provides detailed explanatory context✓ Explains rationale or failure mode
AI analysis · Informational 15/100
This commit adjusts how often a background currency-rate updater checks exchange-rate sources. Previously, the updater slept a fixed amount between runs; now it sleeps less when there are more sources, so each source gets queried about once per hour on average. This is a performance and freshness tuning change, not a security fix.
Lower-prioritycurrencyrate: fix cached currencies to still use median.by Rusty Russell · 31e7ee5f · Mar 23, 2026 · 2 filesMessage 65 · AdequateLow 38Details
Commit message · Rusty Russell
currencyrate: fix cached currencies to still use median.
It was using *only* the latest one, not all the fresh ones.
Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
65/100 · AdequateMessage clarity
✓ Specific, descriptive subject✓ Names a concrete action or component✓ Provides an explanatory body
AI analysis · Low 38/100
This commit fixes a bug in Core Lightning's currency-rate plugin. Previously, when exchange-rate data was cached, the plugin used only the most recent single source instead of combining all still-fresh sources and taking the median. Using a single source makes the converted bitcoin amount easier to manipulate if one price feed is wrong or malicious. The fix restores the intended median behavior across all fresh cached prices.
AI review queuedlibplugin: hand command, not plugin, to parsing functions.by Rusty Russell · 52299697 · Mar 23, 2026 · 9 filesMessage 73 · AdequateInformational 11Details
Commit message · Rusty Russell
libplugin: hand command, not plugin, to parsing functions.
In particular, for dynamic options we want to create an aux_command in the case of bookkeeper-currency.
Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
73/100 · AdequateMessage clarity
✓ Specific, descriptive subject✓ Names a concrete action or component✓ Provides detailed explanatory context
Why it was queued
parser or protocol pathsecond-pass: security-sensitive path
AI analysis · Informational 11/100
This is a straightforward internal code cleanup in Core Lightning's plugin library. It changes many plugin option-parsing functions so they receive a 'command' object instead of a 'plugin' object. The commit message says this is preparation for future 'dynamic options' work (specifically for a bookkeeper currency feature). There is no bug fix, security patch, or vulnerability visible in the diff itself.
Lower-prioritycli: remove \ in simple format.by Rusty Russell · 5b518917 · Mar 23, 2026 · 1 fileMessage 68 · AdequateLow 26Details
Commit message · Rusty Russell
cli: remove \ in simple format.
This does mostly the right thing, but this removes e.g. \" -> ", and \\ to \.
Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
68/100 · AdequateMessage clarity
✓ Descriptive subject✓ Names a concrete action or component✓ Provides detailed explanatory context
AI analysis · Low 26/100
This commit changes how the command-line tool 'lightning-cli' prints JSON strings in its simple human-readable output mode. Previously, backslashes used for escaping (like \" to show a quote, or \\ to show a backslash) were left in place, so users saw extra backslashes on screen. The patch now strips the backslash for any escape it does not explicitly handle (only \n newline and \t tab are still converted). This is a display/output formatting fix, not a change to how data is parsed or stored.
Lower-prioritycurrencyrate: make oracle store and serve the BTC price, not msat per fiat unit.by Rusty Russell · 952ffc2b · Mar 23, 2026 · 3 filesMessage 83 · StrongInformational 18Details
Commit message · Rusty Russell
currencyrate: make oracle store and serve the BTC price, not msat per fiat unit.
This is the first step in updating the API.
Subtly, the median of BTC prices is different from the median of msat-per-dollar, given it's the invoice. This changes our test:
Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
83/100 · StrongMessage clarity
✓ Specific, descriptive subject✓ Names a concrete action or component✓ Provides detailed explanatory context✓ Mentions testing or verification
AI analysis · Informational 18/100
This commit changes how a Core Lightning plugin stores and calculates Bitcoin exchange rates. Previously the plugin stored 'millisatoshis per fiat unit' and took the median of those inverted values. Now it stores the raw fiat price of one bitcoin and converts only at output time. The commit message explicitly notes this is a subtle change because the median of bitcoin prices is mathematically different from the median of inverted rates. The patch is described as the first step in updating the API, not as a security fix.
Lower-prioritybookkeeper: persist currency conversions in the datastore.by Rusty Russell · 49e99495 · Mar 23, 2026 · 2 filesMessage 73 · AdequateInformational 18Details
Commit message · Rusty Russell
bookkeeper: persist currency conversions in the datastore.
For now we simply save every one. Later we will get more efficient when they are duplicates (as often happens).
Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
73/100 · AdequateMessage clarity
✓ Specific, descriptive subject✓ Names a concrete action or component✓ Provides detailed explanatory context
AI analysis · Informational 18/100
This commit adds a feature to the bookkeeper plugin that saves fetched currency exchange rates to the node's internal datastore so they survive restarts. It is a functionality improvement, not a security fix. There is no indication in the commit or supplied references that this resolves a vulnerability or security issue.
Lower-prioritybookkeeper: implement flexible "bkpr-report" command.by Rusty Russell · 82a8be14 · Mar 23, 2026 · 14 filesMessage 73 · AdequateInformational 18Details
You can specify the format for each line in a flexible way, using format tags (inclding defaults if they are not set, recursively).
Changelog-Added: JSON-RPC: `bkpr-report` allows flexible summaries of bookkeeper income. Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
73/100 · AdequateMessage clarity
✓ Specific, descriptive subject✓ Names a concrete action or component✓ Provides detailed explanatory context
AI analysis · Informational 18/100
This commit adds a new bookkeeping command, bkpr-report, that lets users format their node's income events into custom text or CSV output. It is a feature addition, not a security fix. There is no indication in the commit or supplied references that it addresses a vulnerability or security issue.
Lower-prioritycurrencyrate: expose get_median_rate and do conversion in front-end for currencyconvert.by Rusty Russell · c832ebd0 · Mar 23, 2026 · 2 filesMessage 65 · AdequateInformational 15Details
Commit message · Rusty Russell
currencyrate: expose get_median_rate and do conversion in front-end for currencyconvert.
Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
65/100 · AdequateMessage clarity
✓ Specific, descriptive subject✓ Names a concrete action or component✓ Provides an explanatory body
AI analysis · Informational 15/100
This is a small internal code refactor in Core Lightning's currency-rate plugin. It moves the constant 'MSAT_PER_BTC' and the final arithmetic from the back-end oracle into the front-end handler, exposing a new 'get_median_rate' helper. The actual conversion formula is unchanged. There is no security issue visible in the diff.
Lower-prioritycurrencyrate: change `currencyrates` to `listcurrencyrates` which is more CLN-ish.by Rusty Russell · 8f5e2424 · Mar 23, 2026 · 6 filesMessage 73 · AdequateInformational 18Details
Commit message · Rusty Russell
currencyrate: change `currencyrates` to `listcurrencyrates` which is more CLN-ish.
And add a schema file.
Signed-off-by: Rusty Russell <rusty@rustcorp.com.au> Changelog-Added: JSON-RPC: `listcurrencyrates` API for examining the current values from the `currencyconvert` plugin's sources.
73/100 · AdequateMessage clarity
✓ Specific, descriptive subject✓ Names a concrete action or component✓ Provides detailed explanatory context
AI analysis · Informational 18/100
This commit renames a read-only exchange-rate API from 'currencyrates' to 'listcurrencyrates' and changes the response format from a flat map of millisatoshi-per-currency-unit values to a structured list of source names and BTC prices. It also adds the missing JSON schema and documentation. There is no security fix or vulnerability here; it is a normal API cleanup and documentation improvement.
Lower-prioritydoc: add missing schema for currencyconvert API.by Rusty Russell · 42b33e3a · Mar 23, 2026 · 4 filesMessage 60 · AdequateInformational 15Details
Commit message · Rusty Russell
doc: add missing schema for currencyconvert API.
Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
60/100 · AdequateMessage clarity
✓ Descriptive subject✓ Names a concrete action or component✓ Provides an explanatory body
AI analysis · Informational 15/100
This commit only adds missing documentation (a JSON schema and manual page references) for an existing RPC command called currencyconvert. It does not change any executable code, network behavior, or security logic. There is no security issue here.
Lower-prioritycurrencyrate: implement currencyrate command.by Rusty Russell · b05a249a · Mar 23, 2026 · 6 filesMessage 58 · ThinInformational 15Details
Commit message · Rusty Russell
currencyrate: implement currencyrate command.
For the simple case of offers conversion, converting a given amount of fiat to BTC is the desired API. But for almost everything else, we want to get the (median) per-BTC rate.
Signed-off-by: Rusty Russell <rusty@rustcorp.com.au> Changelog-Added: JSON-RPC: `currencyrate` API for getting the current median BTC conversion top a given fiat currency.
This commit adds a new public command called currencyrate to Core Lightning. It lets users ask the node for the current median exchange rate of one bitcoin into a chosen fiat currency. The change is purely a feature addition: it exposes data that the existing currencyrate plugin already collects, without altering security-sensitive logic such as wallet handling, network parsing, or cryptographic checks.
Lower-priorityplugins: simplify datastore interfaces now callers have mkdatastorekey.by Rusty Russell · 715295f9 · Mar 23, 2026 · 12 filesMessage 65 · AdequateInformational 18Details
Commit message · Rusty Russell
plugins: simplify datastore interfaces now callers have mkdatastorekey.
Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
65/100 · AdequateMessage clarity
✓ Specific, descriptive subject✓ Names a concrete action or component✓ Provides an explanatory body
AI analysis · Informational 18/100
This commit is a routine internal code cleanup. It replaces hand-built slash-separated datastore key strings with a new helper function, mkdatastorekey, that builds the same keys as a list of separate parts. There is no indication this fixes a security bug; it is a refactoring to make the code simpler and less error-prone.