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.
AI review queuedupdate block heightby Peter D. Gray · 6691ba63 · Jul 31, 2026 · 1 fileMessage 28 · OpaqueInformational 15Details
Commit message · Peter D. Gray
update block height
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 updates a hardcoded Bitcoin block height number in a firmware file, moving it forward by two blocks. There is no code change that affects security, user funds, or device behavior beyond reflecting a slightly later point in time.
AI review queuedupdateby Peter D. Gray · 9b80afcc · Jul 31, 2026 · 2 filesMessage 0 · OpaqueInformational 15Details
Commit message · Peter D. Gray
update
0/100 · OpaqueMessage clarity
! Generic or placeholder 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 only updates two automatically generated files that store a fixed build date and firmware version number used for timestamps on files written to SD cards. The actual code logic did not change; only the hardcoded date and version constants were bumped from June 30, 2026 to July 30, 2026, and from 5.5.1/1.4.1Q to 5.5.2/1.4.2Q. There is no security-relevant change visible in the diff.
AI review queuedupdate block heightby Peter D. Gray · ea19aeef · Jul 31, 2026 · 1 fileMessage 28 · OpaqueInformational 15Details
Commit message · Peter D. Gray
update block height
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 updates a stored Bitcoin blockchain height number and its timestamp in a generated data file. It is a routine data refresh with no code changes and no apparent security relevance.
AI review queuedbetter bumpageby Peter D. Gray · ee36d35a · Jul 31, 2026 · 3 filesMessage 18 · OpaqueInformational 15Details
Commit message · Peter D. Gray
better bumpage
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 15/100
This commit only changes version numbers in the changelog and two build makefiles. It does not modify any code, fix any bug, or alter any behavior. The actual security-relevant fix for the 'limited entropy bug' is not present in this diff.
AI review queuededitsby Peter D. Gray · d9be4503 · Jul 31, 2026 · 1 fileMessage 0 · OpaqueCritical 90Details
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 only a wording edit to the COLDCARD firmware changelog, but the changelog text itself discloses a serious security problem: some COLDCARD devices generated wallet seeds with far less randomness than intended. Mk3 devices running firmware 4.0.1 or later produced seeds with only about 40 bits of entropy, while Mk4, Mk5 and Q devices produced seeds with as little as about 72 bits. Because wallet seeds protect cryptocurrency funds, low entropy means an attacker with knowledge of the bug could potentially guess a user's seed and steal funds. The vendor calls this an 'urgent hotfix' and tells affected users to regenerate their seeds. This edit does not change any code; it only clarifies and rewords the warning.
AI review queuednitby Peter D. Gray · 4ba45bc9 · Jul 31, 2026 · 1 fileMessage 0 · OpaqueInformational 15Details
Commit message · Peter D. Gray
nit
0/100 · OpaqueMessage clarity
! Very short subject! Too few words to establish purpose! No meaningful explanatory body
This commit only removes a period at the end of one changelog sentence. It is a trivial punctuation/typography fix with no code or security behavior change.
AI review queuedrelease notes udpatedby Peter D. Gray · c3f7529a · Jul 31, 2026 · 4 filesMessage 28 · OpaqueCritical 90Details
Commit message · Peter D. Gray
release notes udpated
28/100 · OpaqueMessage clarity
✓ Subject identifies a change! No meaningful explanatory body
This commit updates Coldcard's release notes to announce an urgent security fix for a 'limited entropy' bug in how the device generates wallet seeds. On older Mk3 hardware, seeds created after firmware 4.0.1 may have only about 40 bits of randomness—far weaker than the intended 256 bits—making them far easier for an attacker to guess. Newer Mk4, Mk5, and Q devices may also have seeds with only about 72 bits. The company is telling users to regenerate their seeds with the new firmware and to stop generating seeds on Mk3 devices. This specific commit only changes documentation; the actual code fix is in a different commit.
AI review queuedBump pillow from 12.1.1 to 12.3.0 in /misc/q1fontby dependabot[bot] · bcc2c382 · Jul 21, 2026 · 1 fileMessage 76 · AdequateInformational 12Details
Commit message · dependabot[bot]
Bump pillow from 12.1.1 to 12.3.0 in /misc/q1font
Bumps [pillow](https://github.com/python-pillow/Pillow) from 12.1.1 to 12.3.0. - [Release notes](https://github.com/python-pillow/Pillow/releases) - [Changelog](https://github.com/python-pillow/Pillow/blob/main/CHANGES.rst) - [Commits](https://github.com/python-pillow/Pillow/compare/12.1.1...12.3.0)
This is a routine automated update by Dependabot that bumps the Python Pillow image-processing library from version 12.1.1 to 12.3.0 inside a small helper tool used only for font generation. The commit itself does not describe any security problem, and the changed file is not part of the COLDCARD firmware that runs on the device. It is best treated as normal maintenance, though any dependency update can in principle include undisclosed fixes.
AI review queuedfix: can crash if scanner not initializedby scgbckbone · aaab8a78 · Jul 21, 2026 · 1 fileMessage 57 · ThinLow 33Details
Commit message · scgbckbone
fix: can crash if scanner not initialized
57/100 · ThinMessage clarity
✓ Descriptive subject✓ Names a concrete action or component✓ Uses a recognizable type or scope! No meaningful explanatory body
Why it was queued
second-pass: broader security terminology
AI analysis · Low 33/100
This is a small bug-fix in the COLDCARD hardware wallet's battery monitoring code. It prevents a crash that could occur if a background battery check runs before the QR-code scanner module has finished starting up. The change makes the code safely skip the check when the scanner isn't ready yet, rather than trying to read a value that doesn't exist and crashing.
AI review queuedyearby Peter D. Gray · a9c99a9b · Jul 2, 2026 · 1 fileMessage 0 · OpaqueInformational 15Details
Commit message · Peter D. Gray
year
0/100 · OpaqueMessage clarity
! Very short subject! Too few words to establish purpose! No meaningful explanatory body
This commit only corrects two placeholder release dates in the changelog from the year 2065 to 2026. There are no code changes, no functional changes, and no security relevance.
AI review queuedSigned for mk release.by Peter D. Gray · e2e5bbe1 · Jul 1, 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 file checksums for a COLDCARD firmware release (version 5.5.1 for the 'mk' model) and refreshes the PGP signature that covers the file. There is no code change, no bug fix, and no security patch in the diff itself.
AI review queuedupdate block heightby Peter D. Gray · 336b8968 · Jul 1, 2026 · 1 fileMessage 28 · OpaqueInformational 15Details
Commit message · Peter D. Gray
update block height
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 updates a hardcoded Bitcoin block height number in a single file by one block. There is no security issue visible in the change itself.
AI review queuedSigned for q1 release.by Peter D. Gray · 0212955c · Jul 1, 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 (signatures.txt). It refreshes SHA-256 hashes for changelog/history files and adds hashes for two new Q1 firmware release files, plus updates the PGP signature that covers the file. There is no source code change and nothing that directly affects device security.
AI review queuedupdate block heightby Peter D. Gray · 4a4442f1 · Jul 1, 2026 · 1 fileMessage 28 · OpaqueInformational 15Details
Commit message · Peter D. Gray
update block height
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 updates a hardcoded Bitcoin blockchain height number and its timestamp in a firmware file. It is a routine data refresh with no code changes and no apparent security implications.
AI review queueddate slipby Peter D. Gray · 0c8122f5 · Jul 1, 2026 · 1 fileMessage 0 · OpaqueInformational 15Details
Commit message · Peter D. Gray
date slip
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 a changelog file from June 30 to July 1, 2065. There are no code changes, no security fixes, and no functional changes of any kind.
AI review queuedupdates for Tahoeby Peter D. Gray · 02e054c8 · Jun 30, 2026 · 2 filesMessage 28 · OpaqueInformational 15Details
Commit message · Peter D. Gray
updates for Tahoe
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 updates build instructions and a Makefile for compiling the COLDCARD simulator on macOS. It removes a hardcoded PKG_CONFIG_PATH workaround and updates the README to tell users to install pkgconf and libffi themselves. There is no change to firmware code, wallet logic, cryptography, or anything that handles secrets or transactions.
AI review queuedmore editingby Peter D. Gray · 2303b47c · Jun 30, 2026 · 1 fileMessage 18 · OpaqueInformational 15Details
Commit message · Peter D. Gray
more editing
18/100 · OpaqueMessage clarity
✓ Subject identifies a change! Too few words to establish purpose! No meaningful explanatory body
This commit only edits the release changelog text. It reorders and rewords bugfix entries, adds one new NFC-related note, and removes some duplicate lines. No source code, firmware logic, or security behavior was changed.
AI review queuedupdate block heightby Peter D. Gray · 5081f8cc · Jun 30, 2026 · 1 fileMessage 28 · OpaqueInformational 15Details
Commit message · Peter D. Gray
update block height
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 updates a stored Bitcoin blockchain height number from 932,301 to 956,098, along with its timestamp. There is no code logic change, no bug fix, and no security-related content.
AI review queuedcorrect version!by Peter D. Gray · ec4c4853 · Jun 30, 2026 · 1 fileMessage 18 · OpaqueInformational 2Details
Commit message · Peter D. Gray
correct version!
18/100 · OpaqueMessage clarity
✓ Subject identifies a change! Too few words to establish purpose! No meaningful explanatory body
Why it was queued
parser or protocol pathsecond-pass: opaque commit messagesecond-pass: security-sensitive path
AI analysis · Informational 2/100
This commit appears to be a one-line version correction in a submodule reference (external/ckcc-protocol). No code changes are visible, and no security relevance is stated or inferable from the available information.
AI review queuedcleaner/better checkby Peter D. Gray · a4ae6c88 · Jun 30, 2026 · 1 fileMessage 28 · OpaqueInformational 15Details
Commit message · Peter D. Gray
cleaner/better check
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 simplifies a build-time check that verifies the correct versions of submodules are being used. It does not change what is being checked, only how the result is reported. There is no indication this is a security fix.
AI review queuedUpdated for todayby Peter D. Gray · 81cbc472 · Jun 30, 2026 · 2 filesMessage 28 · OpaqueInformational 15Details
Commit message · Peter D. Gray
Updated for today
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 updates two automatically-generated timestamp files used to set dates on files created by the COLDCARD hardware wallet. It changes the recorded build date from March 5, 2026 to June 30, 2026, and bumps the firmware version numbers from 5.5.0 to 5.5.1 (MK4) and 1.4.0Q to 1.4.1Q (Q1). There is no security-relevant code change.
AI review queueddebug helperby Peter D. Gray · e9552c5f · Jun 30, 2026 · 1 fileMessage 18 · OpaqueInformational 15Details
Commit message · Peter D. Gray
debug helper
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 15/100
This is a tiny build-script change for the COLDCARD hardware wallet firmware. It makes two Makefile adjustments: the release-candidate build target now depends on a submodule-check step, and a cleanup command is silenced so it doesn't print to the screen. There is nothing here that affects device security, user funds, or runtime behavior.
AI review queuedsymlinks, just in caseby Peter D. Gray · c4977564 · Jun 30, 2026 · 2 filesMessage 28 · OpaqueInformational 15Details
Commit message · Peter D. Gray
symlinks, just in case
28/100 · OpaqueMessage clarity
✓ Subject identifies a change! No meaningful explanatory body
This commit only adds two symbolic links (shortcuts) in the release-notes folder, pointing two old file names to a shared history file. It does not change any firmware code, wallet logic, or security behavior. There is no security relevance.
AI review queuedupdate release notesby Peter D. Gray · fe3b6b27 · Jun 30, 2026 · 5 filesMessage 28 · OpaqueModerate 59Details
Commit message · Peter D. Gray
update release notes
28/100 · OpaqueMessage clarity
✓ Subject identifies a change! No meaningful explanatory body
Why it was queued
parser or protocol pathsecond-pass: opaque commit messagesecond-pass: security-sensitive path
AI analysis · Moderate 59/100
This commit is a documentation-only update to Coldcard firmware release notes. It moves many bug-fix and feature descriptions from an unpublished 'Next-ChangeLog.md' into the published 'ChangeLog.md' and renames/reorganizes history files. The actual code changes were made in earlier commits that are not shown here. The notes describe several security-relevant fixes, most notably a fix for 'legacy input amount spoofing' in PSBT signing, plus many crash and usability fixes. Because we only see the changelog edits, we cannot directly verify the code fixes or tell how complete they are.
AI review queuedcleanupsby Peter D. Gray · defeda26 · Jun 30, 2026 · 1 fileMessage 0 · OpaqueInformational 15Details
Commit message · Peter D. Gray
cleanups
0/100 · OpaqueMessage clarity
! Very short subject! Too few words to establish purpose! No meaningful explanatory body
This commit only edits the release notes file (Next-ChangeLog.md). It rewords existing changelog entries, adds punctuation, fixes formatting, and updates planned release dates. No source code, build scripts, firmware binaries, or documentation outside the changelog were changed. There is no functional change to the COLDCARD firmware or its security behavior.