SW
← All projectsSparrow

Sparrow Wallet

Desktop Bitcoin wallet focused on security, privacy, multisignature, and hardware signers.

BitcoinHardware integrationSoftware walletsNormal
Repository coverage

411 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.

71security candidates271second-pass queue399AI analyses
88commits · 30 days
152commits · 60 days
250commits · 180 days
405commits · 365 days
Backfill bands
Aug 5 → Feb 6100 seen9 candidatesComplete
Feb 6 → Jun 6128 seen15 candidatesComplete
Jun 6 → Jul 67 seen1 candidatesComplete
Jul 6 → Aug 546 seen8 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.

48/100 average clarity
0Strong · 80–100
35Adequate · 60–79
325Thin · 40–59
51Opaque · 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.
Craig Raw39767385648
doblon8313048
nzb-tuxxx212060
Michele Balistreri212048
nroktib111050
Liz Lightning202045
PeterXMR101045
Ian McKenzie101050
ottosch101050
craigraw101060
Analysis record

Published AI watches

Last scanned 38 minutes ago

Informational 17 AI analysisMessage 50 · Thin
SW SparrowSparrow Wallet BitcoinHardware integrationSoftware wallets

remove the surplus signatures progress bar segments a finalized multisig transaction discards

This commit fixes a UI display bug in Sparrow Wallet's signature progress bar. When a multi-signature Bitcoin transaction becomes finalized, extra signatures beyond the required threshold are discarded. Previously, the progress bar did not…

UI state desynchronization after multisig finalizationProgress bar segment count mismatch with actual signature setNo change to cryptographic or transaction validation code
40f77206by Craig Raw+9−12 files
No security note in commit
Informational 15 AI analysisMessage 38 · Opaque
SW SparrowSparrow Wallet BitcoinHardware integrationSoftware wallets

bump to v2.5.6

This commit is a routine version bump from 2.5.5 to 2.5.6. It only changes version strings in four files (build configuration, documentation, macOS app metadata, and a Java source constant). There are no code logic changes, no bug fixes, a…

f7f36d00by Craig Raw+4−44 files
No security note in commit
Informational 17 AI analysisMessage 50 · Thin
SW SparrowSparrow Wallet BitcoinHardware integrationSoftware wallets

use a framerate-capped interpolated timeline for the server toggle and wallet tab loading pulse animations, and stop any running server toggle pulse before starting a new one

This commit tweaks two visual animations in the Sparrow Wallet desktop app: the server connection toggle pulse and the wallet loading pulse. It caps how often the screen is redrawn during the pulse and makes sure any already-running pulse …

Resource-consumption / performance hardening: capped animation framerate reduces CPU/GPU load from continuous 60 Hz redraws.State-management hardening: stopping an existing pulse before starting a new one prevents accumulation of running Timelines.No direct security flaw is present in the diff; signals are defensive-hardening in nature.
4da29f4eby Craig Raw+7−132 files
No security note in commit
Low 45 AI analysisMessage 50 · Thin
SW SparrowSparrow Wallet BitcoinHardware integrationSoftware wallets

cut pasted amounts to the unit precision in the send tab and send to many, and stop the csv import skipping fractional sats and exponent amounts

This commit fixes how Sparrow Wallet handles pasted or imported Bitcoin amounts. Previously, very small or oddly formatted amounts (like scientific notation '1e-8' or fractional satoshis) could be misread or silently skipped during CSV imp…

Amount parsing inconsistency between UI paste and CSV importSilent swallowing of NumberFormatException could skip payment rowsUse of Double.parseDouble for monetary amounts
9e999d3fby Craig Raw+39−362 files
No security note in commit
Informational 15 AI analysisMessage 50 · Thin
SW SparrowSparrow Wallet BitcoinHardware integrationSoftware wallets

add a system theme option that follows the os light or dark setting, and make it the default for new installs

This commit adds a new 'System' theme option to the Sparrow Wallet desktop app that automatically follows the operating system's light or dark mode setting, and makes it the default for new installations. It also updates various UI compone…

a573f22aby Craig Raw+90−3215 files
No security note in commit
Low 36 AI analysisMessage 50 · Thin
SW SparrowSparrow Wallet BitcoinHardware integrationSoftware wallets

refuse bitbox02 keystore import and discovery for legacy p2sh and p2pkh wallets it cannot sign for, and hide those script types from the device import menus

This commit tightens how Sparrow Wallet handles BitBox02 hardware wallets when working with older Bitcoin address formats (legacy P2PKH and P2SH). Previously, the app could let a user import or discover a wallet that the BitBox02 cannot ac…

Prevents user from configuring a signing device for wallet types the device cannot sign forCould avoid funds becoming unspendable or requiring complex recovery if a user unknowingly imported an unsupported legacy script typeReplaces hard-coded device-specific logic with a generic capability model, reducing future similar issues
de169b18by Craig Raw+23−73 files
No security note in commit
Low 37 AI analysisMessage 50 · Thin
SW SparrowSparrow Wallet BitcoinHardware integrationSoftware wallets

reject unknown command line options and values given to flags with an error and exit code instead of starting on the default network, and accept the --option=value form

This commit tightens how Sparrow Wallet handles command-line arguments. Previously, typos or unexpected values could silently be ignored, causing the wallet to start on the default Bitcoin network instead of the one the user intended. Now,…

Command-line argument parsing now rejects unknown options instead of silently ignoring themBoolean flags now reject `--flag=value` forms that would otherwise silently pass the value through as a file/URI argumentProgram now exits with non-zero status on argument errors, reducing risk of unintended default-network startup
46197586by Craig Raw+26−12 files
No security note in commit
Low 37 AI analysisMessage 50 · Thin
SW SparrowSparrow Wallet BitcoinHardware integrationSoftware wallets

ignore amount digits beyond the selected unit precision in the send tab amount and fee fields and the send to many grid, instead of truncating them in the payment

This commit fixes a UI bug in the Sparrow Bitcoin wallet where typing or pasting too many decimal digits into amount or fee fields could be silently truncated, potentially causing a user to send a different amount than they saw on screen. …

Precision-loss / truncation bug in financial input fieldsUser-facing amount/fee mismatch between displayed value and parsed valueInput validation now tied to unit-specific precision (satoshis indivisible)
6cde97adby Craig Raw+48−315 files
No security note in commit
Low 41 AI analysisMessage 50 · Thin
SW SparrowSparrow Wallet BitcoinHardware integrationSoftware wallets

derive public keys from the seed when importing a sparrow wallet file

This commit changes how Sparrow Wallet restores its own wallet files. Previously, when importing a Sparrow wallet file, the public keys (used to find transactions and addresses) might not be correctly rebuilt from the seed phrase. The fix …

Correctness fix for key material restoration during wallet importAdds test coverage for encrypted and unencrypted seed-based wallet importAdds test coverage for watch-only wallet import
1fb4e8bbby Craig Raw+149−23 files
No security note in commit
Informational 21 AI analysisMessage 50 · Thin
SW SparrowSparrow Wallet BitcoinHardware integrationSoftware wallets

add file import of the xpub descriptor jade writes to usb storage

This commit adds the ability to import a Bitcoin wallet's extended public key (xpub) into Sparrow Wallet from a file written by a Blockstream Jade hardware wallet via USB storage. Previously, Jade only supported QR-code import. The change …

New file import path parses external descriptor data and converts it to a keystoreScript type mismatch is explicitly rejected with an IllegalArgumentExceptionSilent payments policy (SINGLE_SP) is explicitly rejected
c4b53879by Craig Raw+74−44 files
No security note in commit
Low 34 AI analysisMessage 50 · Thin
SW SparrowSparrow Wallet BitcoinHardware integrationSoftware wallets

include the non-witness utxo in psbts for krux keystores, and in the qr display when the psbt has more than one input

This commit changes how Sparrow Wallet builds QR codes for partially-signed Bitcoin transactions (PSBTs). For certain hardware wallets (Krux), it now includes extra data (the full previous transaction, called 'non-witness utxo') in the QR …

Hardware wallet signing correctness: missing non-witness UTXO data can cause some signers to reject or mis-handle multi-input segwit PSBTsQR payload size increase: larger QR codes may be harder to scan reliably, potentially affecting usabilitySubproject update (drongo) likely contains related serialization logic changes
0e2c402fby Craig Raw+4−32 files
No security note in commit
Low 35 AI analysisMessage 50 · Thin
SW SparrowSparrow Wallet BitcoinHardware integrationSoftware wallets

clear a scanned wallet when a file, text payload or unrecognised qr is imported in the same pane

This commit fixes a UI state bug in Sparrow Wallet's import pane. Previously, when a user scanned or imported a wallet and then imported a non-wallet file, text payload, or unrecognized QR code in the same pane, the previously loaded walle…

Stale UI state could mislead users about which wallet is loadedCross-import state retention in single import paneUser interface consistency fix with security-relevant consequences
d7ded1e7by Craig Raw+4−21 file
No security note in commit
Low 35 AI analysisMessage 50 · Thin
SW SparrowSparrow Wallet BitcoinHardware integrationSoftware wallets

lock the cormorant store against client connection reads and serve history as a copy, and close the client socket however its handler exits

This commit fixes two reliability issues in Sparrow Wallet's built-in Electrum server (Cormorant). First, it makes sure the internal transaction store is locked while being read or updated, and returns a fresh copy of a wallet's history so…

Concurrency: shared mutable store accessed by client handler and polling threads now synchronizedData consistency: history returned as a defensive copy to avoid iterator seeing concurrent modificationsResource leak: client socket now closed in finally block regardless of exception path
6cc4d50aby Craig Raw+57−94 files
No security note in commit
Low 44 AI analysisMessage 50 · Thin
SW SparrowSparrow Wallet BitcoinHardware integrationSoftware wallets

ensure cormorant responses and notifications are always serialized per client connection

This commit fixes a race condition in Sparrow Wallet's built-in Electrum server (Cormorant). Previously, a response to a wallet client and an asynchronous notification (like a new block or a balance update) could be written to the same net…

Race condition on shared socket output streamConcurrent writes from RPC response path and event-bus notification pathPotential interleaving/framing of JSON-RPC messages on same TCP connection
6d9d3014by Craig Raw+146−303 files
No security note in commit
Low 27 AI analysisMessage 50 · Thin
SW SparrowSparrow Wallet BitcoinHardware integrationSoftware wallets

wake a silent payments history waiter when a failed widening restores a completed scan, rather than leaving it parked for the session

This commit fixes a bug in Sparrow Wallet's silent-payments scanning cache. If a background scan had already finished, then a later 'widening' request to extend the scan failed and rolled back, any history request that arrived during the f…

Concurrency / condition-variable waiter starvationSilent-payments history lookup hang / wallet UI unresponsivenessFailure-recovery path missing signal on rollback
7868a94dby Craig Raw+100−122 files
No security note in commit
Informational 18 AI analysisMessage 60 · Adequate
SW SparrowSparrow Wallet BitcoinHardware integrationSoftware wallets

guard a short server.version response in the desktop and terminal connection tests

This commit fixes a minor crash bug in Sparrow Wallet's connection-test screens. Previously, if a Bitcoin Electrum server answered the version request with an unusually short response, the wallet would try to read list items that didn't ex…

Input validation hardening for external server responseIndexOutOfBoundsException prevented in UI feedback pathNo cryptographic, authentication, or transaction logic touched
66348fafby Craig Raw+4−42 files
No security note in commit
Low 37 AI analysisMessage 50 · Thin
SW SparrowSparrow Wallet BitcoinHardware integrationSoftware wallets

omit a paynym contact whose payment code does not parse rather than keeping it with a null code or failing the whole paynym response

This commit fixes a bug in Sparrow Wallet's PayNym (BIP47 reusable payment code) contact handling. Previously, if a single contact in your PayNym following/followers list had a malformed payment code, the app either kept a broken contact w…

Null payment code previously stored in contact objectPotential NullPointerException or downstream dereference of null PaymentCode in contact lists/searchWhole PayNym response could fail on one malformed contact
94ebb849by Craig Raw+43−114 files
No security note in commit
Informational 19 AI analysisMessage 50 · Thin
SW SparrowSparrow Wallet BitcoinHardware integrationSoftware wallets

skip the exchange currencies request in offline mode in the desktop and terminal general settings

This change stops Sparrow Wallet from trying to fetch live fiat-currency exchange rates when the user has explicitly chosen 'offline mode'. Instead of making a network request that is doomed to fail, it now reuses the currency already save…

Avoids unnecessary network egress in offline modeReduces error/warning noise for expected offline behavior
b91f7993by Craig Raw+15−12 files
No security note in commit
Low 37 AI analysisMessage 50 · Thin
SW SparrowSparrow Wallet BitcoinHardware integrationSoftware wallets

skip addresses already given out under a label and widen the gap limit on an explicit advance in the terminal receive dialog

This commit fixes two related Bitcoin wallet behaviors in Sparrow. First, when you ask for a new receive address, the wallet now skips any address that already has a label, because a label means that address was already given to someone. P…

Address reuse prevention: labeled-but-empty addresses are now skipped consistently across desktop and terminal receive flowsGap-limit widening on explicit advance reduces risk of missing funds during wallet recovery/rescanLogic centralized in WalletForm to reduce UI-specific divergence
cae870ceby Craig Raw+85−164 files
No security note in commit
Low 44 AI analysisMessage 50 · Thin
SW SparrowSparrow Wallet BitcoinHardware integrationSoftware wallets

cap bbqr display and pdf encodings at the 1295 parts the header can number, using larger parts for data that needs more rather than emitting a sequence that cannot be reassembled

This commit fixes a bug in Sparrow Wallet's BBQ QR code format. Previously, if a large transaction or data blob needed more than 1,295 QR-code-sized pieces, the app would generate pieces with impossible sequence numbers that could not be r…

Integer/sequence-number overflow-like limit violation in a data-encoding protocolPotential denial-of-service or data-integrity failure when exporting large transactions via QRRound-trip unit test added to prevent regression
4b5326d8by Craig Raw+27−12 files
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.

AI review queuedadd wallet labels import and export unit testby Craig Raw · 0b819994 · Jul 4, 2026 · 1 fileMessage 55 · ThinInformational 15Details
Commit message · Craig Raw

add wallet labels import and export unit test

55/100 · ThinMessage clarity
✓ Descriptive subject✓ Names a concrete action or component✓ Mentions testing or verification! No meaningful explanatory body
Why it was queued
signing or wallet pathsecond-pass: security-sensitive path
AI analysis · Informational 15/100

This commit only adds a new unit test file for importing and exporting wallet labels. It does not change any production code, so it cannot introduce a security vulnerability on its own. It is a routine test addition.

AI review queuedfix regression from jdk25 update causing silent skips when importing jsonl wallet label linesby Craig Raw · f697aa61 · Jul 3, 2026 · 1 fileMessage 60 · AdequateLow 25Details
Commit message · Craig Raw

fix regression from jdk25 update causing silent skips when importing jsonl wallet label lines

60/100 · AdequateMessage clarity
✓ Specific, descriptive subject✓ Names a concrete action or component✓ Mentions testing or verification! No meaningful explanatory body
Why it was queued
signing or wallet pathsecond-pass: security-sensitive path
AI analysis · Low 25/100

This commit fixes a bug where importing wallet labels from a JSONL file could silently skip some lines after a Java runtime update. The fix adds a required empty constructor for a label class and corrects how key derivation data is copied so it can be safely reused after the original source data is no longer available.

AI review queuedbump to v2.5.3by Craig Raw · d5b119e3 · May 31, 2026 · 4 filesMessage 38 · OpaqueInformational 15Details
Commit message · Craig Raw

bump to v2.5.3

38/100 · OpaqueMessage clarity
✓ Subject identifies a change✓ Names a concrete action or component! 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 is a routine version bump from 2.5.2 to 2.5.3. It only changes version strings in four files: the build configuration, macOS packaging metadata, application code, and build documentation. There are no code logic changes, bug fixes, or security-related modifications visible in the diff.

AI review queuedrevise wording for non-default sighash warningsby Craig Raw · b457caa5 · May 31, 2026 · 2 filesMessage 45 · ThinInformational 15Details
Commit message · Craig Raw

revise wording for non-default sighash warnings

45/100 · ThinMessage clarity
✓ 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 only changes the wording of a warning message shown to users when a Bitcoin transaction file (PSBT) uses a non-standard signature hash type. The old message said the PSBT 'may be unsafe to sign,' and the new message tells the user to 'Review this PSBT carefully before signing.' The underlying security check and behavior are unchanged; only the label and explanatory text were softened.

AI review queuedmake date axis formatter tests locale-stableby Craig Raw · 9a603d75 · May 30, 2026 · 1 fileMessage 55 · ThinInformational 15Details
Commit message · Craig Raw

make date axis formatter tests locale-stable

55/100 · ThinMessage clarity
✓ Descriptive subject✓ Names a concrete action or component✓ Mentions testing or verification! No meaningful explanatory body
Why it was queued
signing or wallet pathsecond-pass: security-sensitive path
AI analysis · Informational 15/100

This commit only changes a test file to make date-formatting unit tests stable across different computer locales. It does not modify the actual wallet application code, so it has no security impact on users.

AI review queuedshow full year on balance chart x-axisby PeterXMR · ac666545 · May 30, 2026 · 2 filesMessage 45 · ThinInformational 15Details
Commit message · PeterXMR

show full year on balance chart x-axis

45/100 · ThinMessage clarity
✓ 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 changes how dates are displayed on the wallet's balance chart. It switches the multi-year axis label from a two-digit year (like 'Aug 24') to a four-digit year (like 'Aug 2024') and adds unit tests. There is no security relevance in the code change itself.

AI review queueduse configured unit format in send to many dialog instead of jvm defaultby Craig Raw · c4c77d84 · May 30, 2026 · 2 filesMessage 50 · ThinInformational 19Details
Commit message · Craig Raw

use configured unit format in send to many dialog instead of jvm default

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 19/100

This commit fixes a formatting bug in Sparrow Wallet's 'send to many' dialog. Previously, the dialog ignored the user's chosen number format (for example, comma vs. dot as the decimal separator) and used the Java default. This could cause confusion or errors when entering or importing Bitcoin amounts, especially from CSV files. The change makes the dialog consistently use the wallet's configured unit format.

AI review queuedfix potential off by 1 sat rounding error on imported send to many dialog amountsby Craig Raw · 8d126869 · May 30, 2026 · 1 fileMessage 50 · ThinLow 42Details
Commit message · Craig Raw

fix potential off by 1 sat rounding error on imported send to many dialog amounts

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 · Low 42/100

This commit fixes a small rounding bug when importing a 'send to many' payment list in Sparrow Wallet. When amounts were entered in whole bitcoins (BTC), the app converted them to satoshis by multiplying with a large constant using normal decimal math. Because computers can store decimal fractions imprecisely, the result could be off by one satoshi (the smallest Bitcoin unit). The fix uses a dedicated helper that handles the conversion more safely. A one-satoshi error is tiny in dollar terms, but could cause a transaction to be slightly wrong or, in edge cases, fail validation.

AI review queuedfix potential npes resulting from get transactionsby Craig Raw · 79517da1 · May 28, 2026 · 1 fileMessage 50 · ThinLow 35Details
Commit message · Craig Raw

fix potential npes resulting from get transactions

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 · Low 35/100

This commit fixes a bug where Sparrow Wallet could crash with a NullPointerException when it tried to process a Bitcoin transaction that it expected to receive from an Electrum server but did not actually get. The patch now checks if the transaction is missing, marks it as unfetchable, and skips it instead of crashing. It also adds a safety check so the wallet is not accessed when it is not available. This is a reliability fix that prevents the application from failing unexpectedly during transaction history loading.

AI review queuedfollowup for precomputed sp outputsby Craig Raw · 08629743 · May 26, 2026 · 1 fileMessage 45 · ThinLow 35Details
Commit message · Craig Raw

followup for precomputed sp outputs

45/100 · ThinMessage clarity
✓ 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 · Low 35/100

This commit is a small follow-up fix for a previous change that added support for 'silent payment' outputs. Silent payments are a privacy feature where the actual recipient address is computed later, so the transaction output temporarily has no readable address and a non-zero amount. Before this fix, Sparrow would warn users about these outputs as if they were unknown or possibly suspicious scripts. The change tells the wallet: 'If this output is a silent payment we already know about, don't show that warning.' It is a refinement to avoid unnecessary user warnings rather than a fix for a critical security flaw.

AI review queuedwarn on loading transactions with non-zero outputs of unknown script typeby Craig Raw · d69e274b · May 26, 2026 · 1 fileMessage 50 · ThinLow 40Details
Commit message · Craig Raw

warn on loading transactions with non-zero outputs of unknown script type

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 · Low 40/100

This commit adds a warning when a user tries to load a Bitcoin transaction that sends money to an unusual or unrecognised address/script type. Previously, Sparrow would silently open such transactions and not show those outputs in its visual transaction diagram, which could mislead a user into signing or broadcasting a transaction without realising where some funds were going. Now the user is warned and asked whether to proceed.

AI review queuedupdate lark for hid4javaby Craig Raw · d1e67ad4 · May 24, 2026 · 1 fileMessage 28 · OpaqueInformational 24Details
Commit message · Craig Raw

update lark for hid4java

28/100 · OpaqueMessage clarity
✓ Subject identifies a change! No meaningful explanatory body
Why it was queued
second-pass: opaque commit message
AI analysis · Informational 24/100

This commit updates a dependency called 'lark' to a newer version that uses 'hid4java' (a library for talking to USB devices like hardware wallets). The actual code change is only one line, and the diff content is not available, so we cannot see what changed inside the dependency. It may be a routine compatibility update, but it could also include security fixes for how Sparrow Wallet communicates with hardware wallets over USB.

AI review queuedimplement dust detection for sp wallets on received utxos at a higher default limitby Craig Raw · 37ca98c2 · May 24, 2026 · 3 filesMessage 50 · ThinLow 30Details
Commit message · Craig Raw

implement dust detection for sp wallets on received utxos at a higher default limit

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 · Low 30/100

This commit changes how Sparrow Wallet flags tiny, unwanted incoming bitcoin payments ('dust attack' UTXOs). For single-signature software wallets (PolicyType.SINGLE_SP), it now uses a higher default threshold (5000 satoshis instead of 1000) and no longer requires the same address to appear more than once before marking a tiny payment as suspicious. For other wallet types, the old logic remains unchanged. The change is defensive: it makes dust attacks more visible to affected users, but it is not a fix for a vulnerability that lets an attacker steal funds.

AI review queuedbump to v2.5.2by Craig Raw · 24e9c39c · May 22, 2026 · 4 filesMessage 38 · OpaqueInformational 15Details
Commit message · Craig Raw

bump to v2.5.2

38/100 · OpaqueMessage clarity
✓ Subject identifies a change✓ Names a concrete action or component! 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 is a routine version bump from 2.5.1 to 2.5.2. It only changes version strings in four files: the build configuration, macOS app metadata, the app's main Java file, and the reproducible build documentation. There are no code logic changes, no bug fixes, and no security-related modifications visible in the diff.

AI review queuedfix incorrect script type selected in settings on p2tr wallet loadby Craig Raw · 754ebf7b · May 22, 2026 · 1 fileMessage 50 · ThinInformational 17Details
Commit message · Craig Raw

fix incorrect script type selected in settings on p2tr wallet load

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 17/100

This commit fixes a UI bug in Sparrow Wallet's settings screen. When loading a wallet that uses Taproot (P2TR), the settings dialog was incorrectly showing the default script type rather than the wallet's actual script type. The fix moves the default-selection logic so it only runs during initial setup, not when an existing wallet is being loaded. There is no direct evidence this is a security vulnerability.

AI review queuedfix potential npe on transaction entry tooltipby Craig Raw · 87af1ed9 · May 22, 2026 · 1 fileMessage 45 · ThinInformational 16Details
Commit message · Craig Raw

fix potential npe on transaction entry tooltip

45/100 · ThinMessage clarity
✓ 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 16/100

This is a small bug-fix patch that prevents a crash (NullPointerException) when displaying a tooltip on a wallet transaction entry. The tooltip shows estimated confirmation time based on current network fee conditions. If a transaction had no fee rate data, the old code would crash while trying to use that missing value. The fix checks for the missing value and safely returns nothing instead. There is no indication this can be exploited by an attacker to steal funds or compromise the wallet.

AI review queuedbump to v2.5.1by Craig Raw · da476c9d · May 21, 2026 · 4 filesMessage 38 · OpaqueInformational 15Details
Commit message · Craig Raw

bump to v2.5.1

38/100 · OpaqueMessage clarity
✓ Subject identifies a change✓ Names a concrete action or component! 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 is a routine version bump from 2.5.0 to 2.5.1. It only changes version strings in four files and contains no security-related code changes.

AI review queuedminor ui tweaks followupby Craig Raw · d8e4582b · May 21, 2026 · 1 fileMessage 28 · OpaqueInformational 15Details
Commit message · Craig Raw

minor ui tweaks followup

28/100 · OpaqueMessage clarity
✓ Subject identifies a change! 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 changes the width of a dropdown menu in the wallet settings screen from 170 pixels to 180 pixels. It is purely a cosmetic user-interface tweak with no security relevance.

AI review queuedminor ui tweaksby Craig Raw · ad5c6959 · May 21, 2026 · 2 filesMessage 28 · OpaqueInformational 15Details
Commit message · Craig Raw

minor ui tweaks

28/100 · OpaqueMessage clarity
✓ Subject identifies a change! 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 makes two tiny user-interface changes: it shortens an error message so it doesn't show a full silent payment address, and it widens a dropdown box by 10 pixels. There is no security issue here.

AI review queuedbump to v2.5.0by Craig Raw · 3150a96a · May 21, 2026 · 3 filesMessage 38 · OpaqueInformational 15Details
Commit message · Craig Raw

bump to v2.5.0

38/100 · OpaqueMessage clarity
✓ Subject identifies a change✓ Names a concrete action or component! 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 is a routine version bump from 2.4.3 to 2.5.0. It only changes three version number strings in build files and application metadata. There are no code logic changes, no bug fixes, and no security-related modifications visible in the diff.

AI review queuedupdate wallet settings help labelsby Craig Raw · 28521cbc · May 20, 2026 · 1 fileMessage 45 · ThinInformational 15Details
Commit message · Craig Raw

update wallet settings help labels

45/100 · ThinMessage clarity
✓ 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 only changes user-facing help text in the wallet settings screen. It updates the descriptions for wallet policy types (single signature, multisignature, silent payments) and script types (Segwit, Taproot, Legacy). There are no code logic changes, no security fixes, and no behavior changes.

AI review queuedextend post-broadcast mempool poll timeout to support bitcoin core privatebroadcastby Craig Raw · e339c9f5 · May 19, 2026 · 2 filesMessage 50 · ThinInformational 18Details
Commit message · Craig Raw

extend post-broadcast mempool poll timeout to support bitcoin core privatebroadcast

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 18/100

This commit simply increases how long Sparrow Wallet waits after broadcasting a transaction before giving up on seeing it in the Bitcoin memory pool (mempool). The change is from 3 polling iterations to 12, with the stated goal of supporting Bitcoin Core's 'privatebroadcast' feature, which can delay when a transaction becomes visible. There is no indication this fixes a security vulnerability; it is a compatibility/timeout adjustment.

AI review queuedupdate jzbar to v0.4.0by Craig Raw · 6dd1bda0 · May 19, 2026 · 1 fileMessage 38 · OpaqueInformational 15Details
Commit message · Craig Raw

update jzbar to v0.4.0

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
AI analysis · Informational 15/100

This commit simply updates a third-party barcode scanning library called jzbar from version 0.3.1 to 0.4.0. There is no information in the commit itself indicating what changed in the new library version or whether it fixes any security issue.

AI review queuedadd frigate.2140.dev public electrum server and auto-select based on requirements for open walletsby Craig Raw · 9fe0d17a · May 19, 2026 · 5 filesMessage 50 · ThinLow 33Details
Commit message · Craig Raw

add frigate.2140.dev public electrum server and auto-select based on requirements for open wallets

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 · Low 33/100

This commit adds a new default public Electrum server (frigate.2140.dev) to the Sparrow Bitcoin wallet and changes how the app picks a public server when a connection fails. The new server is advertised as supporting 'Silent Payments' (a newer Bitcoin address type), and the app now tries to choose only servers that can handle the types of wallets currently open. There is no direct evidence in the commit of a security vulnerability, but adding a new third-party server and changing server-selection logic can affect user privacy and reliability.

AI review queuedpersist silent payment address mappings for safe rbf of sp-sending transactionsby Craig Raw · e985a03a · May 18, 2026 · 10 filesMessage 50 · ThinLow 30Details
Commit message · Craig Raw

persist silent payment address mappings for safe rbf of sp-sending transactions

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 · Low 30/100

This commit adds a safety feature for a new Bitcoin privacy technology called 'silent payments.' It records the relationship between a regular-looking payment address and its silent-payment counterpart in the wallet's database. The main goal is to prevent users from accidentally breaking silent-payment outputs when they later modify (RBF) a transaction, such as by removing inputs. The commit also blocks one risky UI action with a warning dialog when such a change would be unsafe.