EL
← All projectsElectrum

Electrum

Long-running lightweight Bitcoin wallet for desktop and mobile platforms.

BitcoinSoftware walletsNormal
Repository coverage

924 commits in the local evidence base

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.

64security candidates205second-pass queue164AI analyses
55commits · 30 days
108commits · 60 days
454commits · 180 days
924commits · 365 days
Backfill bands
Aug 5 → Feb 6470 seen11 candidatesComplete
Feb 6 → Jun 6346 seen10 candidatesComplete
Jun 6 → Jul 653 seen2 candidatesComplete
Jul 6 → Aug 554 seen3 candidatesComplete
Commit communication

Does the history explain itself?

Message quality measures whether a commit identifies its scope, purpose, rationale, testing, and supporting references. It does not change the security-severity score.

65/100 average clarity
191Strong · 80–100
409Adequate · 60–79
285Thin · 40–59
39Opaque · 0–39
2security candidates with opaque commit messaging
Read the scoring rubric →
Developer activity

Who is changing the project?

Public Git author strings; identities are not independently verified.

DeveloperCommitsCandidatesAnalyzedHigh riskMessage avg.
ThomasV72213156
SomberNight3492559063
f321x3712166070
Sander van Grieken981018057
user322062
Roman Zeyde511053
Sasha Zykov413076
Aaron Fiore411068
Ferdinando Ametrano111096
Oren200043
Ilya Artemov200050
Felipe Micaroni Lalli100050
Analysis record

Published AI watches

Last scanned 45 minutes ago

Informational 19 AI analysisMessage 96 · Strong
EL ElectrumElectrum BitcoinSoftware wallets

wallet: sign_message: strip whitespaces in GUIs, do not strip in CLI

This commit tidies up how Electrum handles extra spaces around Bitcoin addresses, messages, and signatures when signing or verifying messages. Previously, different parts of the program (desktop GUI, mobile-style GUI, command line) behaved…

Behavior normalization across GUI and CLI interfacesNo cryptographic primitive changedNo privilege boundary crossed
4c3064f5by SomberNight+27−185 files
No security note in commit
Informational 22 AI analysisMessage 50 · Thin
EL ElectrumElectrum BitcoinSoftware wallets

wallet: decrypt_message: nicer error msg if pubkey is unrelated

This commit improves the error handling in Electrum's message decryption feature. Previously, if a user tried to decrypt a message using a public key that did not belong to their wallet, the code could proceed and likely fail with a confus…

Input validation added for public key before cryptographic operationUser-facing exception replaces potential internal failureDefensive check prevents use of unrelated key material
92e938f4by SomberNight+5−01 file
No security note in commit
Low 29 AI analysisMessage 35 · Opaque
EL ElectrumElectrum BitcoinSoftware wallets

wallet: sign_message: force kwargs

This commit changes how Electrum's message-signing function is called so that callers must explicitly name each argument (address, message, password) rather than passing them by position. The main practical effect is to prevent accidental …

API hardening: keyword-only arguments prevent positional argument swapNo explicit security bug fix or vulnerability disclosure in commit message or diffNo changes to cryptographic logic, password handling, or message parsing
e1eb2a34by SomberNight+9−44 files
No security note in commit
Low 39 AI analysisMessage 45 · Thin
EL ElectrumElectrum BitcoinSoftware wallets

wallet: sign_message: consolidate checks from UIs

This commit moves input-validation checks for signing, verifying, encrypting, and decrypting messages out of the user-interface code and into the shared wallet logic. It also adds type checks so that non-text inputs are rejected earlier. T…

Input validation moved from UI controllers into core wallet logicType checks added at the CLI command entry points for message-crypto operationsUserFacingException used consistently for address, wallet, script-type, and key-format errors
48893760by SomberNight+89−396 files
No security note in commit
Low 27 AI analysisMessage 50 · Thin
EL ElectrumElectrum BitcoinSoftware wallets

wallet: decrypt_message: consolidate checks from UIs

This commit moves input-validation and wallet-type checks for message decryption out of the user-interface and command-line layers and into the core wallet code. It also removes a faster, separate decryption path for imported wallets so al…

Input validation consolidated into a single core methodWatching-only wallet check moved from UI to wallet layerMultisig wallet unsupported-operation check moved from UI to wallet layer
9a0cc0d6by SomberNight+25−173 files
No security note in commit
Informational 15 AI analysisMessage 50 · Thin
EL ElectrumElectrum BitcoinSoftware wallets

wallet: refactor: add encrypt_message method, consolidated from UIs

This commit is a simple code cleanup: it moves the message-encryption logic from two separate places (the command-line tool and the Qt graphical interface) into a single shared method on the wallet class. The actual encryption behavior is …

No change to cryptographic primitives or parametersNo change to trust boundaries or input sourcesPure refactor consolidating duplicate code
5e9c8df0by SomberNight+26−183 files
No security note in commit
Informational 13 AI analysisMessage 50 · Thin
EL ElectrumElectrum BitcoinSoftware wallets

wallet: refactor: add verify_message method, consolidated from UIs

This commit is a routine code cleanup: it moves message-signature verification out of three user-interface files into a single shared helper method in the wallet module. There is no security-relevant behavior change visible in the diff. Th…

No security-relevant functional changeRefactoring only: code deduplicationException handling broadened safely (ValueError covers binascii.Error and unicode errors)
ff5bbb04by SomberNight+26−304 files
No security note in commit
Informational 19 AI analysisMessage 96 · Strong
EL ElectrumElectrum BitcoinSoftware wallets

qml: strip whitespace from message before signing, as in qt gui

This commit fixes a minor consistency bug in Electrum's newer QML (mobile-style) user interface. When signing a message, the app now removes accidental spaces at the start or end of the message and address, just like the older desktop Qt i…

Behavioral inconsistency between GUI implementations could cause user confusion or failed verificationNo cryptographic weakness introduced; change is input normalizationNo memory-unsafe code, no privilege changes, no network changes
72507328by Ferdinando Ametrano+3−01 file
No security note in commit
Moderate 52 AI analysisMessage 93 · Strong
EL ElectrumElectrum BitcoinSoftware wallets

lnwallet: don't blacklist htlc failures without channel update

This change fixes how Electrum's Lightning wallet reacts when a payment route fails but the failing node no longer provides a channel update message, as now allowed by the Lightning protocol spec. Previously, Electrum would permanently bla…

Denial-of-service via over-blacklisting: prior behavior could cause legitimate channels to be blacklisted, degrading payment success and potentially isolating the wallet from usable routes.Spec compliance fix: aligns Electrum with updated Lightning BOLT protocol behavior.No cryptographic bypass or funds theft signal: the change is about routing policy, not key leakage or transaction authorization.
a865e336by f321x+48−142 files
No security note in commit
Informational 15 AI analysisMessage 35 · Opaque
EL ElectrumElectrum BitcoinSoftware wallets

hww/qt: followup 898a4c270

This commit simply renames an internal variable from `dialog_label` to `_dialog_label` to mark it as private. It is a minor code cleanup with no visible behavior change and no security relevance.

f3af41deby f321x+4−41 file
No security note in commit
Low 25 AI analysisMessage 68 · Adequate
EL ElectrumElectrum BitcoinSoftware wallets

trezor: drop session after closing it

This commit fixes a bug in Electrum's support for Trezor hardware wallets. After a Trezor session times out or is closed, Electrum now forgets the old session ID. Previously it kept the stale session ID, so the next attempt to sign a trans…

Fixes a stale-session reference that caused InvalidSessionError on re-authenticationEnsures PIN re-prompt after session timeout/closureFailure mode was denial-of-service (transaction signing crash), not unauthorized signing
071b1e24by f321x+8−51 file
No security note in commit
Informational 12 AI analysisMessage 83 · Strong
EL ElectrumElectrum BitcoinSoftware wallets

test_lnwallet: add unittest for unchanged channel update from failed htlc

This commit only adds a new unit test to Electrum's Lightning wallet test suite. It checks that when a payment fails due to a temporary lack of liquidity (TEMPORARY_CHANNEL_FAILURE) and the accompanying channel policy update is identical t…

Lightning payment routing failure handling behavior is being testedTEMPORARY_CHANNEL_FAILURE no longer (or is confirmed not to) blacklist channels when the channel update is unchangedLiquidity hints are used as an alternative to blacklisting for retry amounts
1f5b9adbby f321x+61−21 file
No security note in commit
Informational 15 AI analysisMessage 83 · Strong
EL ElectrumElectrum BitcoinSoftware wallets

test_lnwallet: add unittest for single channel mpp split config

This commit adds a new automated test to the Electrum project. It does not change any production wallet or Lightning code. The test verifies that when Electrum splits a multi-part payment across a single channel, all payment parts actually…

14f7fa0bby f321x+22−01 file
No security note in commit
Low 47 AI analysisMessage 80 · Strong
EL ElectrumElectrum BitcoinSoftware wallets

json_db: set_modified after incomplete data

This commit fixes a bug in Electrum's wallet storage recovery. If a wallet file was partially corrupted (a 'patch' was cut off mid-write), the app could recover the old data but then fail to mark the wallet as changed. As a result, later u…

Data-loss / integrity failure in wallet storage recovery pathMissing dirty flag after fallback data recoveryAppend-only storage file not rewritten after corruption cleanup
f75f1958by f321x+22−12 files
No security note in commit
Low 44 AI analysisMessage 58 · Thin
EL ElectrumElectrum BitcoinSoftware wallets

wallet_db: register onion_keys converter

This commit fixes a bug in Electrum's Lightning wallet database handling. After a wallet restart, a specific type of encryption key used in Lightning payments was being loaded as a text string instead of raw bytes. This mismatch could caus…

Type confusion between str and bytes in cryptographic key handlingLightning payment error path affected after wallet restartMissing data converter in wallet database layer
5b2eb060by f321x+2−02 files
No security note in commit
Informational 18 AI analysisMessage 58 · Thin
EL ElectrumElectrum BitcoinSoftware wallets

qml: update ConfirmTxDialog onValidChanged

This is a small user-interface fix for the Electrum mobile/QML app. When sweeping private keys, the confirmation dialog that shows how much money will be moved initially displayed an amount of 0 because it did not refresh after the transac…

bd776e24by f321x+3−01 file
No security note in commit
Informational 18 AI analysisMessage 73 · Adequate
EL ElectrumElectrum BitcoinSoftware wallets

qml: emit a single dataChanged when updating blockchain height

This change is a performance cleanup in Electrum's mobile/QML user interface. When the wallet learns that the Bitcoin blockchain has grown taller, it now refreshes the transaction list with a single 'everything changed' signal instead of s…

No security-relevant logic changePerformance/efficiency optimization onlyNo input validation, parsing, cryptography, or network changes
fbe9e2d8by f321x+8−41 file
No security note in commit
Informational 20 AI analysisMessage 85 · Strong
EL ElectrumElectrum BitcoinSoftware wallets

qml: don't compute notification balance delta for large tx batches

This commit is a performance fix, not a security patch. It stops the Electrum mobile/QML wallet from calculating the total balance change when more than 20 new transactions arrive at once, because that calculation could freeze the user int…

No security-relevant signal present in the diff or commit messagePerformance/DoS mitigation against accidental UI freezing from large transaction batches
7b4759c5by f321x+5−21 file
No security note in commit
Informational 15 AI analysisMessage 60 · Adequate
EL ElectrumElectrum BitcoinSoftware wallets

qml: change event callback logs to debug

This commit simply changes two logging messages from 'info' level to 'debug' level in the mobile/QML wallet interface. It reduces routine log output when many transactions occur. There is no security-relevant change.

a6cc4e08by f321x+2−21 file
No security note in commit
Informational 18 AI analysisMessage 73 · Adequate
EL ElectrumElectrum BitcoinSoftware wallets

qml: don't force-build address model from tx event handlers

This is a performance and responsiveness fix for the Electrum mobile/QML wallet. It stops the app from doing heavy work (building the address coin list) every time a new transaction arrives, which was causing the user interface to freeze. …

35fc4a13by f321x+4−21 file
No security note in commit
Repository ledger

Explore captured commits

Expand any commit for its author, full message, clarity score, changed files, triage signals, analysis, and source link.

Lower-priorityonion_message: move round-robin logic in Request methodby f321x · 5a0c0523 · Apr 24, 2026 · 1 fileMessage 50 · ThinTriage 0Details
Commit message · f321x

onion_message: move round-robin logic in Request method

50/100 · ThinMessage clarity
✓ Specific, descriptive subject✓ Names a concrete action or component! No meaningful explanatory body
Lower-priorityBump minimum required version of ledger_bitcoin (build-time and runtime)by Ilya Artemov · 44570bfa · Apr 24, 2026 · 2 filesMessage 50 · ThinTriage 0Details
Commit message · Ilya Artemov

Bump minimum required version of ledger_bitcoin (build-time and runtime)

50/100 · ThinMessage clarity
✓ Specific, descriptive subject✓ Names a concrete action or component! No meaningful explanatory body
AI review queuedqml: deduplicate wallet name validationby f321x · d34129ef · Apr 23, 2026 · 4 filesMessage 60 · AdequateLow 29Details
Commit message · f321x

qml: deduplicate wallet name validation

Deduplicates the wallet name validation between wizard and daemon.

60/100 · AdequateMessage clarity
✓ Descriptive subject✓ Names a concrete action or component✓ Provides an explanatory body
Why it was queued
signing or wallet pathsecond-pass: security-sensitive path
AI analysis · Low 29/100

This commit cleans up duplicate wallet-name checking code in Electrum's mobile-style QML interface and moves the validation into one shared place. It also slightly changes when the 'rename' button is enabled. The changes look like a defensive hardening/refactoring rather than a fix for a known active attack, but they do strengthen checks against path-traversal-style wallet names.

Lower-priorityrm 'received orphan channnel' log line (too verbose)by ThomasV · 7c433c56 · Apr 23, 2026 · 1 fileMessage 50 · ThinTriage 0Details
Commit message · ThomasV

rm 'received orphan channnel' log line (too verbose)

50/100 · ThinMessage clarity
✓ Specific, descriptive subject✓ Names a concrete action or component! No meaningful explanatory body
Lower-priorityregtest: increase timeouts 30s -> 120sby f321x · 14f20294 · Apr 22, 2026 · 1 fileMessage 60 · AdequateTriage 0Details
Commit message · f321x

regtest: increase timeouts 30s -> 120s

I suspect the timeouts are a bit too short for the slow ci machine.

60/100 · AdequateMessage clarity
✓ Descriptive subject✓ Names a concrete action or component✓ Provides an explanatory body
Lower-prioritylnpeer: channel_reestablish: further restrict states for msg handlerby SomberNight · 46eadbf4 · Apr 22, 2026 · 1 fileMessage 73 · AdequateTriage 0Details
Commit message · SomberNight

lnpeer: channel_reestablish: further restrict states for msg handler

re REQUESTED_FCLOSE and WE_ARE_TOXIC (as per f321x):
> There is no reason for the peer to send channel_reestablish after we
> have sent the force close request (error) and I assume we don't
> want to give surface to the peer to attempt finding out if we really lost state?

re FORCE_CLOSING:
the peer might not have realised we started force-closing but we probably don't want to run the message-handler even in that case

73/100 · AdequateMessage clarity
✓ Specific, descriptive subject✓ Names a concrete action or component✓ Provides detailed explanatory context
Lower-priorityregtest: make fw_fail_htlc less flakyby f321x · 36e9f185 · Apr 22, 2026 · 1 fileMessage 78 · AdequateTriage 0Details
Commit message · f321x

regtest: make fw_fail_htlc less flaky

On master fw_fail_htlc is, especially on the CI, flaky.
We mine 100 blocks, then wait fixed 5 seconds, then check if bob has
failed back the htlcs to alice.
However if the test runs slowly (CI) 5 seconds can be too short
for bob to catch up to the new 100 mined blocks.
Instead we should just use the wait_until_htlcs_settled helper function
which polls Alice local_unsettled_sent with 30 sec timeout, allowing bob
to take a bit longer (or be faster) than 5 s.

```
.***** test_fw_fail_htlc ******
initializing alice
funding alice
a101c8c4c22043ff42029bcab2f0bf6ce5482a60d656294cbec3a4df557e2687
initializing bob
funding bob
d323d572c54817116d185c91f15e449550c651eb4ed76891d3011e0a8eb4ef9a
initializing carol
funding carol
bbf3503663876a4ae00f70c7e58ad49318e83d5cf99d6effe692e113d10910c2
mining 1 blocks
starting daemon (PID 5559)
/tmp/alice/regtest/wallets/default_wallet
true
starting daemon (PID 5577)
/tmp/bob/regtest/wallets/default_wallet
true
starting daemon (PID 5595)
/tmp/carol/regtest/wallets/default_wallet
true
alice and carol open channels with bob
mining 3 blocks
wait until alice sees channel open.
wait until alice sees channel open..
wait until alice sees channel open...
alice pays carol
Daemon stopped
mining 1 blocks
mining 150 blocks
wait until 99ad1d44b9054f5a85c2fb45e9a9b93eb13c785104ed0664be5cf866d79d38fc:2 is spent.
...
wait until 99ad1d44b9054f5a85c2fb45e9a9b93eb13c785104ed0664be5cf866d79d38fc:2 is spent............................
mining 1 blocks
mining 100 blocks
alice htlc was not failed
FDaemon stopped
```

78/100 · AdequateMessage clarity
✓ Descriptive subject✓ Names a concrete action or component✓ Provides detailed explanatory context✓ Mentions testing or verification
AI review queuedappimage: update Dockerfile dependenciesby Roman Zeyde · 8e49eb80 · Apr 22, 2026 · 1 fileMessage 35 · OpaqueTriage 0Details
Commit message · Roman Zeyde

appimage: update Dockerfile dependencies

35/100 · OpaqueMessage clarity
✓ Descriptive subject! No meaningful explanatory body
Why it was queued
second-pass: opaque commit message
Lower-priorityandroid: remove unneeded dl-ndk-ci.shby Sander van Grieken · 83b67700 · Apr 22, 2026 · 1 fileMessage 45 · ThinTriage 0Details
Commit message · Sander van Grieken

android: remove unneeded dl-ndk-ci.sh

45/100 · ThinMessage clarity
✓ Descriptive subject✓ Names a concrete action or component! No meaningful explanatory body
AI review queuedp4a ref 1098be6964cfc2156959e435e81c2c50f8398586by Sander van Grieken · 29b5e167 · Apr 22, 2026 · 1 fileMessage 35 · OpaqueTriage 0Details
Commit message · Sander van Grieken

p4a ref 1098be6964cfc2156959e435e81c2c50f8398586

35/100 · OpaqueMessage clarity
✓ Descriptive subject! No meaningful explanatory body
Why it was queued
second-pass: opaque commit message
Lower-priorityandroid: hash-pin hostpython prerequisites for pyqt6sip and sipby Sander van Grieken · 7b7d7028 · Apr 22, 2026 · 2 filesMessage 50 · ThinTriage 0Details
Commit message · Sander van Grieken

android: hash-pin hostpython prerequisites for pyqt6sip and sip

50/100 · ThinMessage clarity
✓ Specific, descriptive subject✓ Names a concrete action or component! No meaningful explanatory body
AI review queuedqml: remove unused componentsby Sander van Grieken · 8e78d747 · Apr 22, 2026 · 2 filesMessage 35 · OpaqueInformational 15Details
Commit message · Sander van Grieken

qml: remove unused components

35/100 · OpaqueMessage clarity
✓ Descriptive subject! No meaningful explanatory body
Why it was queued
signing or wallet pathsecond-pass: opaque commit messagesecond-pass: security-sensitive path
AI analysis · Informational 15/100

This commit simply deletes two unused user-interface files from Electrum's mobile/QML GUI. There is no indication of a security fix, vulnerability, or behavior change that affects users. It appears to be routine code cleanup.

AI review queuedqml: don't add navigationbar padding when on-screen keyboard is visible, also allow stackview pages to override navigationbar background color to allow correct color runoff below buttonsby Sander van Grieken · 738992ac · Apr 22, 2026 · 12 filesMessage 73 · AdequateInformational 15Details
Commit message · Sander van Grieken

qml: don't add navigationbar padding when on-screen keyboard is visible,
also allow stackview pages to override navigationbar background color to
allow correct color runoff below buttons

73/100 · AdequateMessage clarity
✓ Specific, descriptive subject✓ Names a concrete action or component✓ Provides detailed explanatory context
Why it was queued
signing or wallet pathsecond-pass: security-sensitive path
AI analysis · Informational 15/100

This commit is a user-interface polish change for Electrum's mobile/QML layout. It stops adding extra bottom padding when the on-screen keyboard is visible, and lets individual pages set the background color of the navigation-bar area so the screen looks consistent. There is no security issue visible in the changes.

AI review queuedqml: FlatButton: show indicator for press-and-hold functionalityby Sander van Grieken · 31b19740 · Apr 22, 2026 · 2 filesMessage 50 · ThinInformational 15Details
Commit message · Sander van Grieken

qml: FlatButton: show indicator for press-and-hold functionality

50/100 · ThinMessage clarity
✓ Specific, descriptive subject✓ Names a concrete action or component! No meaningful explanatory body
Why it was queued
signing or wallet pathsecond-pass: security-sensitive path
AI analysis · Informational 15/100

This commit adds a small visual progress bar to buttons in Electrum's mobile-style QML interface that have a hidden 'press and hold' action. It is purely a user-experience change to help users discover that long-pressing certain buttons does something extra. There is no security-relevant change in the code.

Security candidateqml: wizard styling, password dialog stylingby Sander van Grieken · e99b3023 · Apr 22, 2026 · 3 filesMessage 45 · ThinInformational 15Details
Commit message · Sander van Grieken

qml: wizard styling, password dialog styling

45/100 · ThinMessage clarity
✓ Descriptive subject✓ Names a concrete action or component! No meaningful explanatory body
Why it was queued
seed or entropy path
AI analysis · Informational 15/100

This commit is purely a user-interface styling update for Electrum's QML (mobile-style) screens. It changes how password prompts and wallet setup wizards look—moving labels into placeholder text, adjusting margins, and making buttons a consistent touch-friendly height. There is no change to security logic, cryptography, or how passwords/seeds are handled.

Security candidateandroid: use plain 'build' dependency (using 'venv') instead of 'build[virtualenv]', remove setuptools as its use is now pinned via hostpython_prerequisites where applicable, update depends asserts in pyqt6sip, sip, pyqt_builderby Sander van Grieken · 9d5b4a7c · Apr 22, 2026 · 8 filesMessage 73 · AdequateInformational 14Details
Commit message · Sander van Grieken

android: use plain 'build' dependency (using 'venv') instead of 'build[virtualenv]',
remove setuptools as its use is now pinned via hostpython_prerequisites where applicable,
update depends asserts in pyqt6sip, sip, pyqt_builder

73/100 · AdequateMessage clarity
✓ Specific, descriptive subject✓ Names a concrete action or component✓ Provides detailed explanatory context
Why it was queued
cryptography-sensitive path
AI analysis · Informational 14/100

This commit updates how Electrum's Android build system installs Python packaging tools. It switches from a feature-rich 'build[virtualenv]' dependency to a simpler 'build' dependency, removes a custom pinned recipe for setuptools, and moves setuptools into a new 'hostpython_prerequisites' mechanism for some recipes. It also updates version assertions for packaging, pyqt6sip, sip, and pyqt_builder to match a newer python-for-android version. There is no direct security fix visible in the diff; it appears to be build-system maintenance.

AI review queuedandroid: openssl 3.0.18by Sander van Grieken · 854f95b7 · Apr 22, 2026 · 1 fileMessage 38 · OpaqueTriage 0Details
Commit message · Sander van Grieken

android: openssl 3.0.18

38/100 · OpaqueMessage clarity
✓ Subject identifies a change✓ Names a concrete action or component! No meaningful explanatory body
Why it was queued
second-pass: opaque commit message
Security candidateqml: additional styling updatesby Sander van Grieken · 28f744f7 · Apr 22, 2026 · 25 filesMessage 35 · OpaqueInformational 15Details
Commit message · Sander van Grieken

qml: additional styling updates

35/100 · OpaqueMessage clarity
✓ Descriptive subject! No meaningful explanatory body! Opaque security-relevant change
Why it was queued
seed or entropy pathsigning or wallet path
AI analysis · Informational 15/100

This commit is purely a user-interface styling refresh for Electrum's QML (mobile/desktop) GUI. It swaps some visual components (highlight panes, button containers, padding, colors) and introduces a new shared 'DialogHighlightPane' control. There is no change to transaction handling, cryptography, wallet logic, networking, or any security-sensitive behavior.

Lower-priorityqml: use standard Button for buttons outside of buttoncontainerby Sander van Grieken · 87bb63e4 · Apr 22, 2026 · 3 filesMessage 50 · ThinTriage 0Details
Commit message · Sander van Grieken

qml: use standard Button for buttons outside of buttoncontainer

50/100 · ThinMessage clarity
✓ Specific, descriptive subject✓ Names a concrete action or component! No meaningful explanatory body
Lower-priorityandroid: upgrade to androidx.core:core:1.16.0 from com.android.support:support-compat:28.0.0by Sander van Grieken · 4d55b049 · Apr 22, 2026 · 1 fileMessage 50 · ThinTriage 0Details
Commit message · Sander van Grieken

android: upgrade to androidx.core:core:1.16.0 from com.android.support:support-compat:28.0.0

50/100 · ThinMessage clarity
✓ Specific, descriptive subject✓ Names a concrete action or component! No meaningful explanatory body
Lower-priorityandroid: update Qt6 to 6.10.2, PyQt6 to 6.10.2by f321x · 32318987 · Apr 22, 2026 · 3 filesMessage 45 · ThinTriage 0Details
Commit message · f321x

android: update Qt6 to 6.10.2, PyQt6 to 6.10.2

45/100 · ThinMessage clarity
✓ Descriptive subject✓ Names a concrete action or component! No meaningful explanatory body
Security candidateandroid: pin hostpython3 PyProjectRecipe versions, pin android and pyjnius recipes Cython versionby Sander van Grieken · 74f3c042 · Apr 22, 2026 · 4 filesMessage 65 · AdequateInformational 18Details
Commit message · Sander van Grieken

android: pin hostpython3 PyProjectRecipe versions,
pin android and pyjnius recipes Cython version

65/100 · AdequateMessage clarity
✓ Specific, descriptive subject✓ Names a concrete action or component✓ Provides an explanatory body
Why it was queued
access control
AI analysis · Informational 18/100

This commit tightens the Android build process for the Electrum Bitcoin wallet by pinning exact versions of build tools (like Cython, pip, setuptools) and their cryptographic hashes. It also updates the version of python-for-android used. There is no direct vulnerability fix in the application code; instead, it is a supply-chain hardening change to make the build more reproducible and prevent unexpected or malicious tool updates during compilation.

Security candidateandroid: build pyqt_builder and sip ourselves, hash pin all hostpython_prerequisitesby Sander van Grieken · c8f5798d · Apr 22, 2026 · 6 filesMessage 50 · ThinLow 28Details
Commit message · Sander van Grieken

android: build pyqt_builder and sip ourselves, hash pin all hostpython_prerequisites

50/100 · ThinMessage clarity
✓ Specific, descriptive subject✓ Names a concrete action or component! No meaningful explanatory body
Why it was queued
access control
AI analysis · Low 28/100

This commit updates the Android build setup for the Electrum Bitcoin wallet. It switches to a newer version of the python-for-android build tool, starts building two PyQt-related packages (pyqt_builder and sip) from source instead of relying on pre-built wheels, and adds cryptographic hash checks for build-time Python tools like setuptools and pip. These are supply-chain hardening changes: they make it harder for a malicious or compromised upstream package to sneak bad code into Electrum's Android app during compilation.

Lower-priorityqml: styling History, ProxyConfig and NostrConfigDialogby Sander van Grieken · 895679a6 · Apr 22, 2026 · 3 filesMessage 50 · ThinTriage 0Details
Commit message · Sander van Grieken

qml: styling History, ProxyConfig and NostrConfigDialog

50/100 · ThinMessage clarity
✓ Specific, descriptive subject✓ Names a concrete action or component! No meaningful explanatory body
AI review queuedqml: various styling updatesby Sander van Grieken · 3c5dc660 · Apr 22, 2026 · 3 filesMessage 35 · OpaqueTriage 0Details
Commit message · Sander van Grieken

qml: various styling updates

35/100 · OpaqueMessage clarity
✓ Descriptive subject! No meaningful explanatory body
Why it was queued
second-pass: opaque commit message