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.
36/100 average clarity
10Strong · 80–100
45Adequate · 60–79
195Thin · 40–59
218Opaque · 0–39
42security candidates with opaque commit messaging
This commit tightens how COLDCARD reads PSBTv2 (Partially Signed Bitcoin Transaction version 2) files. It now rejects several malformed or ambiguous encodings that could previously be accepted: extra key data attached to fields that should…
PSBT parser hardeningrejection of non-canonical compact-size encodingsenforcement of singleton key-data emptiness
This commit adds support in the COLDCARD firmware for a newer Bitcoin transaction format feature (PSBTv2) that lets each input specify its own required lock time. Before this change, the device did not correctly compute the final transacti…
PSBTv2 per-input locktime parsing and validation addedBIP-370 required locktime computation implementedIncompatible height/time locktime requirements rejected with assertion
This commit only adds a new automated test to the COLDCARD firmware test suite. The test checks that when a user tries to sign a text file containing valid JSON that is not a JSON object (for example, a plain number, string, null, or list)…
Regression test for input validation of JSON message-signingTest comment explicitly references avoiding a device crash on malformed JSON inputTest requested during review of pull request #808, suggesting prior related code change
This commit is a defensive hygiene fix in the COLDCARD hardware wallet's 'trick PIN' duress-wallet feature. It moves a memory-wipe routine so that it runs before the device looks up the duress wallet slot. The change reduces the window in …
This firmware update fixes a cleanup issue in the COLDCARD wallet's transaction signing code. Before finalizing a new Bitcoin transaction, the device now clears out leftover 'change output' records that may have been captured during a prev…
State not reset between signing attemptsStale change-output metadata reused in transaction finalizationOVC (Output Value Check) validation may be affected by leftover data
This commit removes a human-readable error message from a ValueError exception to reduce the amount of flash storage used by the firmware. It is a minor code cleanup and does not change the security behavior of the code. The function still…
This commit only adds a changelog note saying a previous fix stopped the COLDCARD hardware wallet from crashing when a message-signing request was valid JSON but not a JSON object (for example, a number or string instead of a dictionary). …
Device crash on malformed message-signing inputInput vector includes NFC, QR, and SD card JSON filesValid JSON but wrong type (non-object) bypasses simple format checks
This commit fixes a bug where the COLDCARD firmware's message-signing feature would crash with an uncaught error if a user supplied valid JSON that wasn't a structured object (for example, a plain number, string, list, or null). The fix ch…
uncaught exception in message parsing pathinput validation gap on JSON typepotential denial-of-service via malformed request
This commit only updates the release signature file (signatures.txt) for the COLDCARD firmware. It adds two new file hashes for a v5.6.2-mk release and refreshes the PGP signature covering the file. There are no code changes, no bug fixes,…
This commit only updates a release signature file. It refreshes SHA-256 hashes for changelog files and adds hashes for two new firmware release files, then re-signs the file with a PGP signature. There are no code changes, no bug fixes, an…
This commit simply updates a stored Bitcoin blockchain height number from 965,337 to 965,338. It is a routine, automatically generated data refresh with no code logic changes and no apparent security relevance.
This commit only edits the project's internal release notes file. It replaces a detailed list of upcoming changes with placeholder 'tbd' entries and adds a note asking contributors to leave blank lines between additions. There are no code …
This commit is a release-notes-only update for the COLDCARD hardware wallet firmware. It moves many security-relevant bug fixes and hardening items from the current changelog into the historical release notes for versions 5.6.1 and 1.5.1Q,…
USB protocol encryption upgrade (ncry v3) with direction-separated keys and replay protectionPSBT tampering detection: re-verify staged bytes before signing after Virtual Disk overwriteFirmware update integrity: abort if staged image overwritten, reject images extending past world-checksum region
This commit simply updates a stored Bitcoin blockchain height number from 963,314 to 965,337, along with its timestamp. It is an automatic, routine data refresh with no code logic changes and no apparent security relevance.
This commit fixes a bug in the COLDCARD firmware upgrade process. Previously, if someone tampered with the staged firmware after the user saw the approval prompt but before they confirmed, the device would crash with a bare internal error …
Tamper-detection failure path hardened: assert replaced with user-facing failure storyDefense-in-depth assertion added to PIN-changing flowTest coverage added for tamper-abort message
This commit only updates a linked external code library (a Git submodule called ckcc-protocol) to a newer version. The actual code changes inside that library are not shown in the commit diff, and no security-related information was provid…
This commit only edits the draft release changelog file. It rewords two upcoming feature descriptions and fixes line wrapping for another entry. No source code, firmware logic, or security behavior was changed.
This update fixes a bug where COLDCARD wallets would accept BIP-39 passphrases containing non-ASCII characters (like accented letters or emojis) or non-printable characters. Because different wallet software normalizes such characters diff…
Behavioral fix that prevents silent derivation of incompatible wallet seedsInput validation added for BIP-39 passphrase across USB, UI, saved-passphrase restore, and note/password lanesRejection of non-printable ASCII and non-ASCII Unicode characters
This commit fixes two related security bugs in the COLDCARD hardware wallet's protection against a known 'BIP-143 amount swap' attack. First, the wallet was recording the claimed amount of a segwit input to its secure cache as soon as a tr…
Fixes deferred persistence of UTXO amount cache until after successful signingFixes missing capture of single-sig segwit change outputs (p2wpkh and p2sh-p2wpkh)Prevents cache poisoning by cancelled/malicious PSBT previews
This update fixes a bug in how the COLDCARD wallet reads PSBT files (the standard format for passing Bitcoin transactions between devices). Previously, if a PSBT contained the same special 'singleton' key twice in the same section, the dev…
PSBT parser now rejects duplicate singleton keysNew test cases for duplicate keys in global/input/output mapsChangelog labels the change as a bugfix
Expand any commit for its author, full message, clarity score, changed files, triage signals, analysis, and source link.
Security candidateaddress format matching from PSBT witness/redeem script instead of PSBT_XPUBs derivation pathsby scgbckbone · ef0ba6a5 · Oct 29, 2025 · 4 filesMessage 50 · ThinModerate 63Details
Commit message · scgbckbone
address format matching from PSBT witness/redeem script instead of PSBT_XPUBs derivation paths
50/100 · ThinMessage clarity
✓ Specific, descriptive subject✓ Names a concrete action or component! No meaningful explanatory body
Why it was queued
signing boundarysigning or wallet path
AI analysis · Moderate 63/100
This change fixes how COLDCARD figures out the address format for multisig transactions. Previously it guessed based on the derivation path numbers in the PSBT's XPUB records, which can be misleading or attacker-controlled. Now it looks directly at the actual witness/redeem script in the transaction input, which is harder to fake. A wrong address format could make the wallet think it is signing one type of address while the transaction really pays to another, potentially tricking the user into approving a payment they did not intend.
AI review queuedbugfix: exiting custom backup password text form causes yikesby scgbckbone · a08550cf · Oct 29, 2025 · 3 filesMessage 50 · ThinLow 31Details
Commit message · scgbckbone
bugfix: exiting custom backup password text form causes yikes
50/100 · ThinMessage clarity
✓ Specific, descriptive subject✓ Names a concrete action or component! No meaningful explanatory body
Why it was queued
second-pass: broader security terminology
AI analysis · Low 31/100
This commit fixes a bug in the COLDCARD hardware wallet where cancelling out of the 'Custom Backup Password' text-entry screen during a backup restore would cause a crash (internally called a 'yikes'). The fix adds a simple check so that if the user exits without entering a password, the restore process stops gracefully instead of continuing with an empty value and crashing.
Lower-priorityremove unused import from SSSP menu constructorby scgbckbone · 3e818cbb · Oct 5, 2025 · 1 fileMessage 45 · ThinInformational 15Details
Commit message · scgbckbone
remove unused import from SSSP menu constructor
45/100 · ThinMessage clarity
✓ Descriptive subject✓ Names a concrete action or component! No meaningful explanatory body
AI analysis · Informational 15/100
This commit simply removes two unused import statements from a menu-building function. It does not change any behavior, fix any bug, or alter security logic. It is a routine code cleanup.
AI review queuedbump dateby Peter D. Gray · fe0041f9 · Sep 30, 2025 · 1 fileMessage 0 · OpaqueInformational 15Details
Commit message · Peter D. Gray
bump date
0/100 · OpaqueMessage clarity
! Very short subject! Too few words to establish purpose! No meaningful explanatory body
This commit only updates two release dates in the project's changelog file. It does not change any source code, configuration, or documentation that affects how the product works. There is no security relevance.
AI review queuedSigned for mk4 release.by Peter D. Gray · 36521dfe · Sep 30, 2025 · 1 fileMessage 28 · OpaqueInformational 15Details
Commit message · Peter D. Gray
Signed for mk4 release.
28/100 · OpaqueMessage clarity
✓ Subject identifies a change! No meaningful explanatory body
Why it was queued
signing or wallet pathdocumentation-only discountsecond-pass: opaque commit messagesecond-pass: security-sensitive path
AI analysis · Informational 15/100
This commit only updates the release signature file. It adds two new cryptographic signatures for COLDCARD Mk4 firmware version 5.4.4 and refreshes the PGP signature that covers the entire file. There are no code changes, no bug fixes, and no security-relevant behavior changes in the firmware itself.
AI review queuedSigned for q1 release.by Peter D. Gray · be1328c7 · Sep 30, 2025 · 1 fileMessage 28 · OpaqueInformational 15Details
Commit message · Peter D. Gray
Signed for q1 release.
28/100 · OpaqueMessage clarity
✓ Subject identifies a change! No meaningful explanatory body
Why it was queued
signing or wallet pathdocumentation-only discountsecond-pass: opaque commit messagesecond-pass: security-sensitive path
AI analysis · Informational 15/100
This commit only updates the release signature file (signatures.txt) for the COLDCARD firmware. It adds two new file hashes for a Q1 hardware model firmware release (version 1.3.4Q) and refreshes the PGP signature that covers the entire file. There are no code changes, no bug fixes, and no security-related content in the commit message or diff.
AI review queuedundo-gold-rcby Peter D. Gray · 8d6ce99c · Sep 30, 2025 · 1 fileMessage 28 · OpaqueInformational 15Details
Commit message · Peter D. Gray
undo-gold-rc
28/100 · OpaqueMessage clarity
✓ Subject identifies a change! No meaningful explanatory body
Why it was queued
signing or wallet pathdocumentation-only discountsecond-pass: opaque commit messagesecond-pass: security-sensitive path
AI analysis · Informational 15/100
This commit simply removes the digital signatures and file hashes for a previously listed firmware release (version 5.4.4 for Mk4 and 1.3.4Q for Q1) from the project's release signatures file, and updates the PGP signature covering that file. It is a release-management rollback of a 'gold' release candidate, not a code change. There is no firmware source code modification, no bug fix, and no security patch in this commit.
Security candidatedeltamode timing fixby Peter D. Gray · fcd848d8 · Sep 29, 2025 · 1 fileMessage 28 · OpaqueHigh 80Details
Commit message · Peter D. Gray
deltamode timing fix
28/100 · OpaqueMessage clarity
✓ Subject identifies a change! No meaningful explanatory body! Opaque security-relevant change
Why it was queued
access controlsigning or wallet path
AI analysis · High 80/100
This commit fixes a bug in COLDCARD's 'deltamode' duress feature. Delta mode is meant to let a thief who knows a slightly wrong PIN sign transactions with corrupted signatures that look valid but don't actually protect any bitcoin. The bug was that the fake signature was produced from a fixed, predictable placeholder instead of from the real transaction data. A security research team claims this predictability could let an attacker who captures two such signatures recover the wallet's private keys, potentially stealing all funds. The patch makes the corrupted signature depend on the real transaction hash, removing that mathematical shortcut.
AI review queuedspellingby Peter D. Gray · 203394a7 · Sep 29, 2025 · 1 fileMessage 0 · OpaqueInformational 15Details
Commit message · Peter D. Gray
spelling
0/100 · OpaqueMessage clarity
! Very short subject! Too few words to establish purpose! No meaningful explanatory body
This commit only fixes two spelling mistakes in the project's release changelog document. It changes 'trival' to 'trivial' and 'Wife' to 'Wipe' in user-facing text. No source code, firmware logic, or security behavior is modified.
AI review queuedtest_sssp.py more sleepsby scgbckbone · 284616d5 · Sep 29, 2025 · 1 fileMessage 28 · OpaqueInformational 15Details
Commit message · scgbckbone
test_sssp.py more sleeps
28/100 · OpaqueMessage clarity
✓ Subject identifies a change! No meaningful explanatory body
Why it was queued
second-pass: opaque commit message
AI analysis · Informational 15/100
This commit only adds tiny 0.1-second delays inside a test file. It does not change any production firmware code, user-facing behavior, or security logic. It is purely a test stability tweak to avoid race conditions during automated testing.
AI review queuedSigned for mk4 release.by Peter D. Gray · 47430cb2 · Sep 26, 2025 · 1 fileMessage 28 · OpaqueInformational 15Details
Commit message · Peter D. Gray
Signed for mk4 release.
28/100 · OpaqueMessage clarity
✓ Subject identifies a change! No meaningful explanatory body
Why it was queued
signing or wallet pathdocumentation-only discountsecond-pass: opaque commit messagesecond-pass: security-sensitive path
AI analysis · Informational 15/100
This commit only updates the release signature file for COLDCARD Mk4 firmware. It adds two new signed hashes for version 5.4.4 and refreshes the PGP signature that covers the file. There are no code changes, no bug fixes, and no security-related content in the diff itself.
AI review queuedSigned for q1 release.by Peter D. Gray · 2aea18ba · Sep 26, 2025 · 1 fileMessage 28 · OpaqueInformational 15Details
Commit message · Peter D. Gray
Signed for q1 release.
28/100 · OpaqueMessage clarity
✓ Subject identifies a change! No meaningful explanatory body
Why it was queued
signing or wallet pathdocumentation-only discountsecond-pass: opaque commit messagesecond-pass: security-sensitive path
AI analysis · Informational 15/100
This commit updates a signed release manifest file (signatures.txt) for the COLDCARD hardware wallet firmware. It adds cryptographic hashes for two new Q1 firmware files and updates the hash and PGP signature for the ChangeLog. There are no code changes, no bug fixes, and no security-related content in the diff itself.
AI review queuedanother day, another RCby Peter D. Gray · 3c4922e3 · Sep 26, 2025 · 1 fileMessage 28 · OpaqueInformational 15Details
Commit message · Peter D. Gray
another day, another RC
28/100 · OpaqueMessage clarity
✓ Subject identifies a change! No meaningful explanatory body
This commit only updates two release dates in the ChangeLog file (from 2025-09-25 to 2025-09-26). It makes no code changes and has no security relevance.
AI review queuedundo-rcby Peter D. Gray · c6ec1020 · Sep 26, 2025 · 1 fileMessage 0 · OpaqueInformational 15Details
Commit message · Peter D. Gray
undo-rc
0/100 · OpaqueMessage clarity
! Very short subject! Too few words to establish purpose! No meaningful explanatory body
Why it was queued
signing or wallet pathdocumentation-only discountsecond-pass: opaque commit messagesecond-pass: security-sensitive path
AI analysis · Informational 15/100
This commit updates a signed release manifest file (signatures.txt). It removes the file hashes for firmware versions 5.4.4 (Mk4) and 1.3.4Q (Q1) and replaces the ChangeLog.md hash. The commit title 'undo-rc' suggests this is reverting a release-candidate or release that was previously added to the manifest. There is no code change, no vulnerability fix, and no security-relevant behavior change visible in the diff.
AI review queuedcleanupsby Peter D. Gray · 88a9f471 · Sep 26, 2025 · 2 filesMessage 0 · OpaqueInformational 12Details
Commit message · Peter D. Gray
cleanups
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 12/100
This commit is a minor code cleanup in the COLDCARD firmware's file picker. It moves the validation of filename suffixes earlier in the function and slightly changes the wording of an on-screen message shown when no matching files are found. There is no indication this fixes a security bug or introduces a vulnerability.
AI review queuedbugfix: only list files with proper extension delimited by dot; fix UX showing suffixes in file_picker when no suitable files foundby scgbckbone · 6a3eec50 · Sep 26, 2025 · 5 filesMessage 50 · ThinLow 40Details
Commit message · scgbckbone
bugfix: only list files with proper extension delimited by dot; fix UX showing suffixes in file_picker when no suitable files found
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 fixes a file-picker bug in the COLDCARD hardware wallet firmware. Previously, callers passed file extensions without a leading dot (e.g., 'txt' or 'psbt'), so the picker would match any filename ending in those characters, not just proper dotted extensions. A file named 'backuptxt' could be treated as a .txt file, and 'backup7z' as a .7z backup. The patch forces every extension to start with a dot and updates all callers. The main risk is that a maliciously named file on the SD card could be offered to the user as if it were a valid PSBT, backup, text message, or other sensitive file type, potentially tricking the user into signing or restoring from the wrong data.
AI review queuedadd heartbeats, cleanupsby Peter D. Gray · 722facf0 · Sep 26, 2025 · 2 filesMessage 28 · OpaqueInformational 17Details
Commit message · Peter D. Gray
add heartbeats, cleanups
28/100 · OpaqueMessage clarity
✓ Subject identifies a change! No meaningful explanatory body
Why it was queued
second-pass: opaque commit message
AI analysis · Informational 17/100
This commit is a small cleanup and user-experience improvement for the COLDCARD's spending-policy settings. It renames an internal function and parameter, adds 'Saving...' progress messages so users know the device is busy, and simplifies a couple of checks. There is no direct evidence in the diff of a security vulnerability being fixed.
AI review queuedtweakby Peter D. Gray · 0a9d9942 · Sep 26, 2025 · 1 fileMessage 0 · OpaqueInformational 15Details
Commit message · Peter D. Gray
tweak
0/100 · OpaqueMessage clarity
! Generic or placeholder subject! Too few words to establish purpose! No meaningful explanatory body
This commit only edits a changelog text file. It rewords a description of an existing product feature (a 'forever calculator' mode that activates after too many failed PIN attempts) and removes a mention of 'bricked' devices. No source code, firmware logic, or security behavior was changed.
Lower-prioritydont show "allow notes" on mk4by Peter D. Gray · d8c13ddc · Sep 25, 2025 · 3 filesMessage 45 · ThinInformational 18Details
Commit message · Peter D. Gray
dont show "allow notes" on mk4
45/100 · ThinMessage clarity
✓ Descriptive subject✓ Names a concrete action or component! No meaningful explanatory body
AI analysis · Informational 18/100
This commit hides the 'Allow Notes' option from a security feature called SSSP on older COLDCARD devices (mk4) that lack a qwerty keyboard. It is a UI cleanup, not a security fix. The change prevents users from seeing a setting that does not apply to their hardware, but does not alter how notes are actually protected.
AI review queuedSigned for mk4 release.by Peter D. Gray · 57640738 · Sep 25, 2025 · 1 fileMessage 28 · OpaqueInformational 15Details
Commit message · Peter D. Gray
Signed for mk4 release.
28/100 · OpaqueMessage clarity
✓ Subject identifies a change! No meaningful explanatory body
Why it was queued
signing or wallet pathdocumentation-only discountsecond-pass: opaque commit messagesecond-pass: security-sensitive path
AI analysis · Informational 15/100
This commit only updates the release signature file (signatures.txt) for the COLDCARD Mk4 hardware wallet. It adds SHA-256 hashes for two new firmware files (normal and factory versions of v5.4.4) and refreshes the PGP signature that covers the file. There are no code changes, no bug fixes, and no security-relevant behavior changes in this commit.
AI review queuedSigned for q1 release.by Peter D. Gray · 248e0b56 · Sep 25, 2025 · 1 fileMessage 28 · OpaqueInformational 15Details
Commit message · Peter D. Gray
Signed for q1 release.
28/100 · OpaqueMessage clarity
✓ Subject identifies a change! No meaningful explanatory body
Why it was queued
signing or wallet pathdocumentation-only discountsecond-pass: opaque commit messagesecond-pass: security-sensitive path
AI analysis · Informational 15/100
This commit only updates the release signature file (releases/signatures.txt). It refreshes SHA-256 hashes for several changelog files and adds hashes for two new Q1 hardware firmware files (v1.3.4Q), plus a new PGP signature over the whole file. There is no source code change, no bug fix, and no security patch in the diff itself.
AI review queuedEditsby Peter D. Gray · ca00ee07 · Sep 25, 2025 · 5 filesMessage 0 · OpaqueInformational 15Details
Commit message · Peter D. Gray
Edits
0/100 · OpaqueMessage clarity
! Very short subject! Too few words to establish purpose! No meaningful explanatory body
This commit only edits documentation and release notes. It moves changelog entries from an upcoming-release file into the published changelog and history files, and rewords a BIP-21 extension description. No source code, firmware logic, or security behavior is changed.
✓ Subject identifies a change! No meaningful explanatory body
Why it was queued
second-pass: opaque commit message
AI analysis · Informational 15/100
This commit adds a single 'Wait...' loading screen while the COLDCARD searches its ownership cache for a Bitcoin address. It is purely a user-interface improvement to indicate that work is happening; there is no security-relevant code change.
✓ Descriptive subject✓ Names a concrete action or component✓ Mentions testing or verification! No meaningful explanatory body
AI analysis · Moderate 57/100
This commit fixes a bug in the COLDCARD firmware's 'SSSP test drive' feature. Previously, the code that checks whether the feature is enabled did not properly recognize the special 'test drive' mode, and it called the wrong method when approving transactions. The fix makes the test drive mode correctly activate the feature and uses the intended transaction-approval routine. In practical terms, a user in test-drive mode might have been unable to use the feature as designed, or the wrong internal path could have led to an approval that did not enforce the intended spending policy.
✓ Descriptive subject✓ Names a concrete action or component! No meaningful explanatory body
Why it was queued
access control
AI analysis · Moderate 64/100
This update prevents a COLDCARD hardware wallet from accepting an empty BIP-39 passphrase when the command comes over the USB connection. A BIP-39 passphrase is an extra word or phrase users can add to their seed to create a separate wallet. Previously, an empty passphrase could be sent through USB, which might let software on the connected computer silently access the user's default/no-passphrase wallet without the user typing anything on the device. Now the device rejects empty passphrases over USB, so the user must intentionally enter a passphrase on the device itself.