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
This commit only edits a README file in the hardware documentation folder. It reformats a list of spreadsheet filenames and updates a sentence from singular to plural. There are no code changes, no firmware changes, and no security-related content.
AI review queuedMk5 hardware detailsby Peter D. Gray · 717a3f59 · Mar 12, 2026 · 3 filesMessage 28 · OpaqueInformational 15Details
Commit message · Peter D. Gray
Mk5 hardware details
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 simply adds public hardware documentation for the COLDCARD Mk5 (a schematic image and a bill-of-materials spreadsheet) and updates the README to list them. There is no code change, no firmware change, and nothing that alters security behavior.
AI review queuedmk5 now publicby Peter D. Gray · 50b1704c · Mar 10, 2026 · 4 filesMessage 28 · OpaqueInformational 15Details
Commit message · Peter D. Gray
mk5 now public
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 is a routine documentation and asset update announcing that the COLDCARD Mk5 hardware is now publicly supported. It updates the README to reference Mk5 images and wording, adds a changelog note that firmware 5.5.0 supports both Mk4 and Mk5, and replaces/adds simulator background images for the Mk5. There is no code change and no security-relevant behavior is modified.
Security candidatetesting: add BIP-322 POR signed with WIF Store testby scgbckbone · 1e9338c5 · Mar 10, 2026 · 3 filesMessage 60 · AdequateInformational 15Details
Commit message · scgbckbone
testing: add BIP-322 POR signed with WIF Store test
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
cryptography-sensitive path
AI analysis · Informational 15/100
This commit only adds new automated tests for an existing feature: signing BIP-322 Proof of Reserves messages using private keys stored via WIF (Wallet Import Format) on a COLDCARD. It does not change the firmware's actual signing code, user interface, or security behavior. The changes are confined to test files and test helpers.
✓ Subject identifies a change! No meaningful explanatory body! Opaque security-relevant change
Why it was queued
secret or key materialdocumentation-only discount
AI analysis · Informational 15/100
This commit only updates a documentation example, changing the displayed currency ticker from 'XTN' (a testnet symbol) to 'BTC' (mainnet Bitcoin) in a proof-of-reserves guide. No firmware code, behavior, or security logic was changed.
AI review queuedupdate logsby Peter D. Gray · 6f6563c2 · Mar 5, 2026 · 4 filesMessage 0 · OpaqueInformational 15Details
Commit message · Peter D. Gray
update logs
0/100 · OpaqueMessage clarity
! Very short subject! Too few words to establish purpose! No meaningful explanatory body
This commit only edits release notes and changelogs. It moves completed feature and bugfix descriptions from an unpublished 'Next-ChangeLog' file into the published 'ChangeLog' and historic release notes, and resets the draft file to placeholder 'tbd' entries. No source code, firmware logic, or security behavior is changed.
AI review queuedSigned for mk release.by Peter D. Gray · 1ea83d9b · Mar 5, 2026 · 1 fileMessage 28 · OpaqueInformational 15Details
Commit message · Peter D. Gray
Signed for mk 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 hashes for recently built firmware files and refreshes the PGP signature that covers the 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 · 6541812e · Mar 5, 2026 · 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. It adds cryptographic hashes and a PGP signature for a new COLDCARD firmware release (version 1.4.0Q for the Q1 hardware model) and updates the hash for the Next-ChangeLog.md file. There are no code changes, bug fixes, or security patches in this commit.
AI review queuedmby Peter D. Gray · 2604f4d0 · Mar 5, 2026 · 1 fileMessage 0 · OpaqueInformational 15Details
Commit message · Peter D. Gray
m
0/100 · OpaqueMessage clarity
! Very short subject! Too few words to establish purpose! No meaningful explanatory body
This commit only updates placeholder release dates in a changelog file (from '2065-03-xx' to '2065-03-05'). It makes no code changes and has no security relevance.
AI review queuedhandle WIF import duplicatesby scgbckbone · c6da2612 · Mar 5, 2026 · 2 filesMessage 35 · OpaqueLow 27Details
Commit message · scgbckbone
handle WIF import duplicates
35/100 · OpaqueMessage clarity
✓ Descriptive subject! No meaningful explanatory body
Why it was queued
second-pass: opaque commit message
AI analysis · Low 27/100
This commit fixes a bug in the COLDCARD hardware wallet's WIF (Wallet Import Format) key import feature. Previously, if a user tried to import a file containing the same private key twice, the code could incorrectly count it as a duplicate of an already-saved key rather than as a duplicate within the import file itself. This could cause the import to fail with a misleading 'duplicate WIF(s)' error even when no keys were actually saved yet. The fix properly distinguishes between duplicates inside the import file and duplicates of already-stored keys. There is no direct evidence this is a security vulnerability—it's primarily a usability/robustness fix.
AI review queuedrc2+factoryby Peter D. Gray · 538b1a6d · Mar 5, 2026 · 1 fileMessage 0 · OpaqueInformational 15Details
Commit message · Peter D. Gray
rc2+factory
0/100 · OpaqueMessage clarity
! Very short subject! Too few words to establish purpose! No meaningful explanatory body
Why it was queued
second-pass: opaque commit message
AI analysis · Informational 15/100
This commit adds a build-system step that creates an additional release file for factory programming. It does not change any firmware code, cryptographic checks, or user-facing behavior. There is no indication of a security vulnerability.
AI review queuednitsby Peter D. Gray · 2edf3c72 · Mar 5, 2026 · 1 fileMessage 0 · OpaqueInformational 15Details
Commit message · Peter D. Gray
nits
0/100 · OpaqueMessage clarity
! Very short subject! Too few words to establish purpose! No meaningful explanatory body
Why it was queued
second-pass: opaque commit message
AI analysis · Informational 15/100
This commit makes only cosmetic changes to the COLDCARD firmware: it changes a screen title from 'WIF' to 'WIF Key' and adds a few blank lines for readability. There is no functional code change and no security impact.
Lower-priorityVisualize WIF with ability to import to WIF storeby scgbckbone · 5e3f7a93 · Mar 5, 2026 · 3 filesMessage 45 · ThinLow 29Details
Commit message · scgbckbone
Visualize WIF with ability to import to WIF store
45/100 · ThinMessage clarity
✓ Descriptive subject✓ Names a concrete action or component! No meaningful explanatory body
AI analysis · Low 29/100
This commit adds a feature to COLDCARD Q1 hardware wallets that lets users scan a QR code containing a private key (in WIF format), view its details, and optionally save it to the device's WIF Store. The change itself is a user-facing feature addition, not a bug fix. There is no direct evidence in the commit or supplied references that this is a security patch or addresses a vulnerability. However, any feature that imports and stores private keys carries inherent security and usability risks, such as users importing untrusted or leaked keys, or accidentally exposing keys via QR codes.
AI review queuedbump ccc_min_blockby scgbckbone · 00beed7b · Mar 5, 2026 · 1 fileMessage 18 · OpaqueInformational 19Details
Commit message · scgbckbone
bump ccc_min_block
18/100 · OpaqueMessage clarity
✓ Subject identifies a change! Too few words to establish purpose! No meaningful explanatory body
Why it was queued
second-pass: opaque commit message
AI analysis · Informational 19/100
This commit simply updates a date-based block-height threshold in the COLDCARD firmware from a November 2025 value to a March 2026 value. It appears to be a routine scheduling change for a feature tied to a specific Bitcoin block height, not a security fix in itself. There is no evidence in the commit of a vulnerability being patched.
AI review queuedWIF store testingby scgbckbone · 12e0af3f · Mar 5, 2026 · 8 filesMessage 38 · OpaqueInformational 15Details
Commit message · scgbckbone
WIF store testing
38/100 · OpaqueMessage clarity
✓ Subject identifies a change✓ Mentions testing or verification! 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 purely a test-code reorganization. It moves existing WIF-store-related test cases from several scattered test files into a single dedicated test file (test_wif.py), updates test runner configuration, and removes duplicate imports. There is no change to the actual firmware or security-sensitive code.
Lower-priorityWIF tests, support paper wallet formatby Peter D. Gray · 01629e13 · Mar 5, 2026 · 4 filesMessage 55 · ThinInformational 23Details
Commit message · Peter D. Gray
WIF tests, support paper wallet format
55/100 · ThinMessage clarity
✓ Descriptive subject✓ Names a concrete action or component✓ Mentions testing or verification! No meaningful explanatory body
AI analysis · Informational 23/100
This commit updates the COLDCARD firmware's WIF (Wallet Import Format) import feature so it can read paper wallet backup files and is more forgiving of extra text or formatting. It also moves and expands the related tests. The main code change is a usability improvement, not a clear security fix, but it does make the import parser ignore invalid lines instead of stopping with an error. That change could hide a corrupted or malicious file, though it does not obviously create a new vulnerability.
AI review queuedbumpby Peter D. Gray · d893575e · Mar 5, 2026 · 2 filesMessage 0 · OpaqueInformational 15Details
Commit message · Peter D. Gray
bump
0/100 · OpaqueMessage clarity
! Very short subject! Too few words to establish purpose! No meaningful explanatory body
Why it was queued
second-pass: opaque commit message
AI analysis · Informational 15/100
This commit is a routine version and date bump for two auto-generated files. It updates copyright year, build date, firmware version number, and a corresponding timestamp constant used when the device writes files to a microSD card. There is no code logic change and no security relevance visible in the diff.
Lower-priorityfix WIF store ownership showing QR addressby scgbckbone · 0cc68187 · Mar 5, 2026 · 2 filesMessage 45 · ThinLow 43Details
Commit message · scgbckbone
fix WIF store ownership showing QR address
45/100 · ThinMessage clarity
✓ Descriptive subject✓ Names a concrete action or component! No meaningful explanatory body
AI analysis · Low 43/100
This commit fixes a bug in the COLDCARD hardware wallet where scanning or verifying a QR code for an address stored in the WIF (Wallet Import Format) store could display or encode the wrong QR address format. Previously, the code assumed all WIF-store addresses used the wallet's default address format, which could cause a mismatch when showing the QR code. The fix correctly tracks the address format for WIF-stored keys and adds a test to verify the QR code matches the expected address.
AI review queuedtextby Peter D. Gray · b7bc6143 · Mar 5, 2026 · 1 fileMessage 0 · OpaqueInformational 15Details
Commit message · Peter D. Gray
text
0/100 · OpaqueMessage clarity
! Very short subject! Too few words to establish purpose! No meaningful explanatory body
Why it was queued
second-pass: opaque commit message
AI analysis · Informational 15/100
This commit fixes two typos in a comment inside a build Makefile. It changes no code, commands, or build behavior. There is no security relevance.
Security candidatenew bootloaderby Peter D. Gray · 02b5a756 · Mar 5, 2026 · 5 filesMessage 18 · OpaqueInformational 0Details
Commit message · Peter D. Gray
new bootloader
18/100 · OpaqueMessage clarity
✓ Subject identifies a change! Too few words to establish purpose! No meaningful explanatory body! Opaque security-relevant change
Why it was queued
update trustboot or update path
AI analysis · Informational 0/100
This commit adds a new pre-built bootloader release (version 3.3.0) for the COLDCARD Mk4 hardware wallet. It consists of binary firmware files and a hash manifest, plus a disassembly listing. There is no source code change, no vulnerability description, and no indication of a security fix or bug. It appears to be a routine release artifact drop.
Security candidateversion bumpsby Peter D. Gray · e35f60ed · Mar 5, 2026 · 4 filesMessage 18 · OpaqueInformational 15Details
Commit message · Peter D. Gray
version bumps
18/100 · OpaqueMessage clarity
✓ Subject identifies a change! Too few words to establish purpose! No meaningful explanatory body! Opaque security-relevant change
Why it was queued
boot or update path
AI analysis · Informational 15/100
This commit only changes version numbers and release dates in build files and a changelog. It does not modify any code that handles secrets, cryptography, user input, or device behavior. There is no security issue here.
Security candidatefix: file picker in import BIP-322 msg needs vdisk and slot_b argsby scgbckbone · 0b425b86 · Mar 5, 2026 · 1 fileMessage 62 · AdequateInformational 20Details
Commit message · scgbckbone
fix: file picker in import BIP-322 msg needs vdisk and slot_b args
62/100 · AdequateMessage clarity
✓ Specific, descriptive subject✓ Names a concrete action or component✓ Uses a recognizable type or scope! No meaningful explanatory body
Why it was queued
authentication path
AI analysis · Informational 20/100
This is a small bug fix in the COLDCARD hardware wallet firmware. When importing a BIP-322 message from a file, the file picker was not being told which storage source to use (virtual disk or SD card slot). This could cause the file picker to look in the wrong place or fail to find files, making the feature unreliable rather than directly stealing funds.
AI review queuedEditsby Peter D. Gray · 43ef951d · Mar 4, 2026 · 1 fileMessage 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 is a trivial documentation edit. It expands the abbreviation 'WIF' to 'Wallet Import Format' in an upcoming release changelog. No code, cryptographic logic, or security behavior was changed.
Security candidateMk hardwareby Peter D. Gray · 38553d1a · Mar 4, 2026 · 43 filesMessage 0 · OpaqueInformational 21Details
Commit message · Peter D. Gray
Mk hardware
0/100 · OpaqueMessage clarity
! Very short subject! Too few words to establish purpose! No meaningful explanatory body! Opaque security-relevant change
Why it was queued
cryptography-sensitive pathsigning or wallet pathboot or update pathauthentication path
AI analysis · Informational 21/100
This commit adds support for a new COLDCARD hardware revision, the Mk5. It is a routine product-enablement patch: it teaches the firmware, bootloader, build system, simulator, and signing tools to recognize and run on Mk5 devices. There is no indication of a security vulnerability being fixed or introduced; the changes are about hardware detection, display initialization, graphics, and test coverage.
! Very short subject! Too few words to establish purpose! No meaningful explanatory body! Opaque security-relevant change
Why it was queued
signing or wallet pathauthentication pathparser or protocol path
AI analysis · Moderate 59/100
This commit adds a new 'WIF Store' feature to the COLDCARD firmware. It lets users import external Bitcoin private keys (in WIF format) and use them to sign PSBT transactions and messages, alongside the device's normal seed-derived keys. The change is a deliberate new feature, not a hidden bug, but it touches sensitive code paths: private key storage, PSBT signing, address ownership checks, and message signing. There is no vendor statement in the commit or supplied references calling this a security fix or vulnerability.