KS
← All projectsKeystone

Keystone 3 firmware

Open-source device firmware for Keystone 3 hardware wallets.

BitcoinHardware walletsNormal
Repository coverage

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

119security candidates294second-pass queue551AI analyses
7commits · 30 days
37commits · 60 days
279commits · 180 days
504commits · 365 days
Backfill bands
Aug 5 → Feb 6260 seen14 candidatesComplete
Feb 6 → Jun 6117 seen7 candidatesComplete
Jun 6 → Jul 639 seen4 candidatesComplete
Jul 6 → Aug 5115 seen4 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.

42/100 average clarity
35Strong · 80–100
72Adequate · 60–79
211Thin · 40–59
235Opaque · 0–39
39security 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.
soralit11634116248
Adam Tucker931193263
aaron30430248
Soralit959154
ww351268717652176026
willwang15215025
John Boyd626088
github-actions[bot]323076
Aaron Chen222068
Qkin-Keystone26126036
qkin12112050
Greg Pfeil414071
Analysis record

Published AI watches

Last scanned 52 minutes ago

Low 42 AI analysisMessage 58 · Thin
KS KeystoneKeystone 3 firmware BitcoinHardware wallets

Merge pull request #2293 from KeystoneHQ/merge/v3.1.0

This is a large firmware release merge (v3.1.0) for the Keystone 3 hardware wallet. The visible changes are mostly a major FreeRTOS kernel upgrade (from v10.x to v11.3.0), build-system improvements, and user-facing feature tweaks such as b…

FreeRTOS kernel major version upgrade (10.x -> 11.3.0) with MPU hardeningSwitch from ARM_CM4F non-MPU port to ARM_CM4_MPU portNew MPU configuration flags: configTOTAL_MPU_REGIONS=8, configENFORCE_SYSTEM_CALLS_FROM_KERNEL_ONLY=1, configALLOW_UNPRIVILEGED_CRITICAL_SECTIONS=0
0c0ae467by stone+59616−26981300 files
Vendor flagged security relevance
Informational 15 AI analysisMessage 48 · Thin
KS KeystoneKeystone 3 firmware BitcoinHardware wallets

chore: update ci (#2292)

This commit only updates a Git submodule pointer in a release-tracking file. The actual code change is a one-line pointer update from one commit hash to another in a file named 'keystone3-firmware-release'. There is no visible security-rel…

90d1c789by Soralit+1−11 file
No security note in commit
Informational 15 AI analysisMessage 40 · Thin
KS KeystoneKeystone 3 firmware BitcoinHardware wallets

chore: update ci

This commit only updates a Git submodule pointer (keystone3-firmware-release) from one commit hash to another. No source code, build scripts, CI configuration, or security-related files are changed in the visible diff. There is no evidence…

a7f6db29by Soralit+1−11 file
No security note in commit
Moderate 58 AI analysisMessage 28 · Opaque
KS KeystoneKeystone 3 firmware BitcoinHardware wallets

release 3.1.0

This is a large firmware release commit (version 3.1.0) for the Keystone 3 hardware wallet. The most significant change visible in the diff is a major upgrade of the FreeRTOS real-time operating system kernel from version 10.x to 11.3.0, c…

FreeRTOS major version upgrade (10.x → 11.3.0) with MPU port enabledNew MPU sandbox task/runtime/validator files addedconfigENFORCE_SYSTEM_CALLS_FROM_KERNEL_ONLY=1 and configALLOW_UNPRIVILEGED_CRITICAL_SECTIONS=0 set
2b007a29by Soralit+59615−26980300 files
Vendor flagged security relevance
Informational 15 AI analysisMessage 76 · Adequate
KS KeystoneKeystone 3 firmware BitcoinHardware wallets

Merge release v3.0.8 (#2291)

This commit is a routine version-bump merge for release v3.0.8. It only updates changelogs, a Git submodule pointer, and a build version number. There is no code change visible in the diff and nothing that suggests a security fix or vulner…

b5e8f9fcby github-actions[bot]+18−24 files
No security note in commit
Low 47 AI analysisMessage 76 · Adequate
KS KeystoneKeystone 3 firmware BitcoinHardware wallets

Merge release v3.0.6 (#2290)

This firmware update adds support for Solana's new V1 transaction format and changes how oversized or malformed transaction details are displayed. The code introduces a dedicated parser for V1 messages with strict size and structure checks…

New parser enforces hard limits on V1 message fields and rejects malformed 0x81-prefix payloads instead of falling back to message signingCompute-budget instructions in V1 are explicitly ignored to prevent fee-display spoofingUI pagination change for large transaction details reduces truncation risk
87b78ae1by github-actions[bot]+564−2812 files
No security note in commit
Informational 15 AI analysisMessage 68 · Adequate
KS KeystoneKeystone 3 firmware BitcoinHardware wallets

pin to new release config (#2285)

This commit only updates a Git submodule pointer (keystone3-firmware-release) from one commit hash to another. There is no code change visible in the diff, no description of what the new release config contains, and no security-related inf…

bc01c889by Aaron Chen+1−11 file
No security note in commit
Informational 15 AI analysisMessage 68 · Adequate
KS KeystoneKeystone 3 firmware BitcoinHardware wallets

update the release repo (#2282)

This commit simply updates a Git submodule pointer for the project's release repository. There is no visible code change, no description of any security issue, and no indication this is anything other than a routine release-tracking update.

3ac7e802by Aaron Chen+1−11 file
No security note in commit
Moderate 59 AI analysisMessage 76 · Adequate
KS KeystoneKeystone 3 firmware BitcoinHardware wallets

Merge release v3.0.4 (#2279)

This is a routine firmware release merge (v3.0.4) for the Keystone 3 hardware wallet. The bulk of the changes are UI tweaks, new feature support (Solana CLI, Lace Wallet), and hardening fixes found during an internal 'regular AI review'. T…

NUL-byte rejection in EIP-712 typed data parsingC-string conversion hardening against NUL bytesNull-pointer and UTF-8 validation added to UR parsing entry points
6ab436a2by github-actions[bot]+4960−548845 files
No security note in commit
Informational 13 AI analysisMessage 59 · Thin
KS KeystoneKeystone 3 firmware BitcoinHardware wallets

Build fix (#2273)

This commit is a routine build-system and code-formatting fix. It resets cached CMake build options so each build starts from known defaults, makes cbindgen header-generation failures visible instead of silently ignored, runs Rust formatti…

8568a657by stone wang+8−145 files
No security note in commit
Low 44 AI analysisMessage 36 · Opaque
KS KeystoneKeystone 3 firmware BitcoinHardware wallets

limit file count (#2272)

This commit adds a hard cap on how many files the device will list from its SD card when loading multi-signature Bitcoin wallet data. It also tightens up null-pointer and length checks while scanning directories. The likely goal is to prev…

Unbounded directory listing now bounded by FATFS_MAX_FILE_NUMBERNull-pointer guards added for fileName, number, and path parametersLength checks added before copying filenames into caller buffers
de6879c3by stone wang+31−146 files
No security note in commit
Low 46 AI analysisMessage 73 · Adequate
KS KeystoneKeystone 3 firmware BitcoinHardware wallets

Merge pull request #2268 from KeystoneHQ/regular-review-fix

This commit tightens which old-style Bitcoin-like transactions the Keystone hardware wallet will accept. It now rejects raw protobuf Bitcoin (BTC) and Dogecoin (DOGE) legacy UTXO transactions, allowing only Bitcoin Cash (BCH), Dash (DASH),…

Deprecation of raw-protobuf Bitcoin transaction handlingRejection of unsupported legacy UTXO variants at multiple entry pointsShift from coin_code string matching to protobuf variant matching for legacy path eligibility
1c70d3d4by Soralit+134−166 files
No security note in commit
Moderate 61 AI analysisMessage 62 · Adequate
KS KeystoneKeystone 3 firmware BitcoinHardware wallets

fix: mark legacy utxo transaction as deprecated and disable btc legacy transactions

This commit disables the older, raw-protobuf signing path for Bitcoin and Dogecoin transactions in the Keystone 3 hardware wallet firmware. It keeps the legacy path active only for Bitcoin Cash (BCH), Dash (DASH), and Litecoin (LTC). The c…

Disables a legacy transaction parsing/signing code path for Bitcoin and DogecoinAdds explicit rejection checks before raw transaction parsing, checking, signing, and view routingSwitches discriminator from coin_code string to protobuf transaction variant to prevent spoofing
1fcd2346by Soralit+134−166 files
No security note in commit
Moderate 63 AI analysisMessage 58 · Thin
KS KeystoneKeystone 3 firmware BitcoinHardware wallets

Merge pull request #2264 from KeystoneHQ/regular-review-fix

This firmware update is a routine 'regular review fix' that hardens how the Keystone 3 hardware wallet checks and displays several cryptocurrency transactions before signing. The most important security changes are: (1) the sign button is …

Sign slider disabled until parse success prevents premature approvalArweave DataItem tag-count mismatch now rejected in pre-checkAvalanche transaction re-validated by type in pre-check, tampered asset ID rejected
87c7e7e2by Soralit+623−20423 files
No security note in commit
Moderate 67 AI analysisMessage 58 · Thin
KS KeystoneKeystone 3 firmware BitcoinHardware wallets

Merge pull request #2263 from KeystoneHQ/driver-optimize

This commit updates the hardware random number generator (TRNG) driver in a cryptocurrency hardware wallet firmware. It adds detection for a physical fault/attack signal from the TRNG and, if triggered, wipes the random data and aborts via…

Added TRNG fault/attack status detection (TRNG_IT_RNG0_ATTACK)Zeroization of sensitive local buffer and output buffer on TRNG failureAssertion abort on detected TRNG attack condition
a409efe0by Soralit+29−51 file
No security note in commit
Moderate 59 AI analysisMessage 18 · Opaque
KS KeystoneKeystone 3 firmware BitcoinHardware wallets

driver optimzie

This commit updates the hardware random number generator (TRNG) driver in a cryptocurrency hardware wallet firmware. It adds detection for a physical tamper/attack signal from the TRNG chip and, if an attack is detected, wipes the random d…

New check of TRNG_IT_RNG0_ATTACK tamper/attack interrupt statusFailure path now zeroes output and local buffer before abortingAddition of ASSERT guards and secure memset_s usage
25f3d951by ww3512687+29−51 file
No security note in commit
Moderate 61 AI analysisMessage 57 · Thin
KS KeystoneKeystone 3 firmware BitcoinHardware wallets

fix: regular ai review fix

This firmware update for the Keystone 3 hardware wallet fixes several security and safety issues found during an internal AI-assisted review. The most important changes are: (1) the signing slider is now disabled until a transaction is ful…

Signing slider disabled until parse success prevents approval of malformed transactionsArweave DataItem tag-count mismatch rejected in pre-check before confirmation pageAvalanche transaction re-validated by type during fingerprint check
edbeae79by soralit+623−20423 files
No security note in commit
High 76 AI analysisMessage 58 · Thin
KS KeystoneKeystone 3 firmware BitcoinHardware wallets

Merge pull request #2262 from KeystoneHQ/regular-review-fix

This firmware update fixes several security and safety issues found during a regular AI-assisted code review. The most important changes are: (1) Zcash wallet data is now encrypted with a key derived from the wallet seed and a fresh random…

Zcash UFVK encryption key changed from sha256(password) to seed-derived BIP32 keyZcash UFVK IV changed from deterministic seed-derived value to fresh TRNG-generated IV per blobZcash UFVK storage format now uses magic-prefixed blob with embedded IV and rejects legacy blobs
04d942ffby Soralit+1852−52633 files
No security note in commit
High 80 AI analysisMessage 57 · Thin
KS KeystoneKeystone 3 firmware BitcoinHardware wallets

fix: regular AI review and fix

This firmware update fixes several security and safety issues found during an internal AI-assisted review. The most important changes are: (1) Zcash wallet data was being encrypted with a key derived from the user's login password and a fi…

Zcash UFVK encryption key changed from sha256(login password) to seed-derived BIP32 keyZcash UFVK IV changed from deterministic seed-derived value to fresh TRNG-generated IV per encryptionNew 'z2' UFVK blob format stores IV with ciphertext; legacy blobs rejected/migrated
776d8832by soralit+1852−52633 files
Vendor flagged security relevance
Moderate 59 AI analysisMessage 58 · Thin
KS KeystoneKeystone 3 firmware BitcoinHardware wallets

Merge pull request #2260 from KeystoneHQ/replace-lvgl-rand

This commit replaces the on-screen keyboard shuffle and a word-list randomizer so they use the device's true random-number generator (TRNG) instead of LVGL's weaker pseudo-random function. The change is defensive: it removes a source of pr…

Replaced pseudo-random generator with hardware TRNG in security-sensitive shuffle operationsRemoved fixed-range modulo reduction bias source (`lv_rand(0, 2048) % n`)Changed include from LVGL UI library to device TRNG driver in utility code
230abd77by Soralit+8−32 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 queuedfix: improve formatting for SOL_BIP44_PREFIX handling in generate_crypto_multi_accountsby ww3512687 · 16207624 · Feb 3, 2026 · 1 fileMessage 62 · AdequateInformational 15Details
Commit message · ww3512687

fix: improve formatting for SOL_BIP44_PREFIX handling in generate_crypto_multi_accounts

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
signing or wallet pathsecond-pass: security-sensitive path
AI analysis · Informational 15/100

This commit is purely a code-formatting cleanup. It rewrites a single match arm in a Rust function so the condition and function call are split across multiple lines, matching the style of the surrounding code. No logic, constants, or behavior changed.

AI review queuedfix: remove duplicate SOL_BIP44_PREFIX constantby ww3512687 · f07b5a80 · Feb 3, 2026 · 1 fileMessage 57 · ThinInformational 15Details
Commit message · ww3512687

fix: remove duplicate SOL_BIP44_PREFIX constant

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
signing or wallet pathsecond-pass: security-sensitive path
AI analysis · Informational 15/100

This commit removes an accidentally duplicated constant definition for Solana's BIP44 derivation path prefix. In Rust, defining the same constant twice in the same scope is a compile-time error, so the duplicate would have prevented the code from compiling. The fix simply deletes the extra line, restoring normal compilation. There is no runtime security risk.

AI review queuedfeat: update ada export to keystoneby soralit · 9940188d · Feb 2, 2026 · 2 filesMessage 57 · ThinInformational 15Details
Commit message · soralit

feat: update ada export to keystone

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
signing or wallet pathsecond-pass: security-sensitive path
AI analysis · Informational 15/100

This commit adds Cardano (ADA) support to the Keystone wallet connection/export feature. It simply includes an additional public key path and an icon in two UI lists. There is no security-relevant change visible in the diff.

AI review queuedfeat: add ADA to keystone nexusby soralit · ff5b52d6 · Feb 2, 2026 · 2 filesMessage 57 · ThinInformational 17Details
Commit message · soralit

feat: add ADA to keystone nexus

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
signing or wallet pathsecond-pass: security-sensitive path
AI analysis · Informational 17/100

This commit adds support for the Cardano (ADA) cryptocurrency to the Keystone hardware wallet's 'Keystone Connect' feature. It introduces a new derivation path and a helper function to format ADA extended public keys for wallet connection. There is no indication in the commit of a security bug or fix; it appears to be a routine feature addition.

Lower-priorityFix bugs in Japanese and German languagesby ww3512687 · 85eb43b6 · Feb 2, 2026 · 3 filesMessage 45 · ThinInformational 15Details
Commit message · ww3512687

Fix bugs in Japanese and German languages

45/100 · ThinMessage clarity
✓ Descriptive subject✓ Names a concrete action or component! No meaningful explanatory body
AI analysis · Informational 15/100

This commit fixes translation and font display issues for Japanese and German languages in the Keystone 3 hardware wallet firmware. It updates translated text strings, corrects a corrupted Japanese string, and adds a missing Japanese percent sign character to the font file. There is no security-relevant code change.

AI review queuedfix spanish bugby ww3512687 · 65119e48 · Feb 2, 2026 · 3 filesMessage 28 · OpaqueInformational 19Details
Commit message · ww3512687

fix spanish bug

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

This commit fixes Spanish-language display issues in the wallet's user interface. It updates several Spanish translations to be shorter or clearer, and slightly increases the height of two UI containers so the longer Spanish text fits without being cut off. There is no security vulnerability here—it's purely a localization and layout bug fix.

Security candidatefix: ci buildby soralit · 6e1e3119 · Jan 21, 2026 · 1 fileMessage 40 · ThinInformational 19Details
Commit message · soralit

fix: ci build

40/100 · ThinMessage clarity
✓ Subject identifies a change✓ Uses a recognizable type or scope! No meaningful explanatory body
Why it was queued
cryptography-sensitive path
AI analysis · Informational 19/100

This commit is a build-system fix, not a security patch. It wraps a Zcash-related condition in a compile-time feature flag so that firmware builds that do not include the Web3 feature can compile. There is no direct evidence in the commit that this change fixes a vulnerability; it appears intended to restore continuous integration builds.

AI review queuedbtc only language completeby ww3512687 · ecff8ede · Jan 21, 2026 · 5 filesMessage 35 · OpaqueInformational 15Details
Commit message · ww3512687

btc only language complete

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

This commit removes conditional code that previously hid Spanish, German, and Japanese language support when building a Bitcoin-only firmware variant. After the change, all firmware builds expose the same set of languages. There is no security-relevant change in the diff: no cryptographic, authentication, parsing, memory-handling, or access-control code is modified.

AI review queuedupdate the wallet list to support Naboxby ww3512687 · 50d0a669 · Jan 21, 2026 · 5 filesMessage 45 · ThinInformational 18Details
Commit message · ww3512687

update the wallet list to support Nabox

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

This commit adds support for the Nabox wallet app in Keystone 3 firmware. It changes which cryptocurrency account data is shared with Nabox, switches the data format to a newer 'Keystone Connect' style, and exposes the device's serial number and firmware version during pairing. There is no direct evidence this is a security fix or vulnerability; it appears to be a routine wallet-integration update.

AI review queuedadd 2.3.6 changelogby bianminyan · aae1dd50 · Jan 21, 2026 · 3 filesMessage 38 · OpaqueInformational 15Details
Commit message · bianminyan

add 2.3.6 changelog

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 only adds a new version entry to the changelog files and bumps the software build version number from 5 to 6. It does not change any functional code, fix any bug, or alter any security behavior. There is nothing here that affects the security of the device or its users.

AI review queuedfix: ci buildby soralit · 7533e107 · Jan 21, 2026 · 1 fileMessage 40 · ThinInformational 15Details
Commit message · soralit

fix: ci build

40/100 · ThinMessage clarity
✓ Subject identifies a change✓ Uses a recognizable type or scope! No meaningful explanatory body
Why it was queued
signing or wallet pathsecond-pass: security-sensitive path
AI analysis · Informational 15/100

This is a tiny code-movement patch that shifts a variable declaration earlier in a function so the code compiles under CI. It does not change what the program does, only where a local variable is declared. There is no security relevance visible in the commit.

AI review queuedstyle: run cargo fmtby soralit · ff1edce8 · Jan 21, 2026 · 2 filesMessage 28 · OpaqueInformational 15Details
Commit message · soralit

style: run cargo fmt

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 is purely a code-formatting cleanup. It removes one debug-print logging statement and adjusts brace style to match Rust's standard formatter. There is no functional change, no bug fix, and no security-relevant behavior change.

AI review queuedfeat: hide zcash on slip39 wallet for keystoneby soralit · 2443c20a · Jan 21, 2026 · 5 filesMessage 57 · ThinInformational 19Details
Commit message · soralit

feat: hide zcash on slip39 wallet for keystone

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
signing or wallet pathsecond-pass: security-sensitive path
AI analysis · Informational 19/100

This commit changes the Keystone hardware wallet firmware so that Zcash features are hidden or blocked when the wallet was created using a SLIP39 seed (a type of multi-share recovery phrase). The code now returns an 'unsupported' error for Zcash transaction checks on SLIP39 wallets and swaps in a wallet-list image that does not show Zcash. There is no evidence in the commit of a vulnerability being fixed; it reads as a product-level feature restriction.

Lower-prioritychore: bump versionby soralit · 5dfd85e4 · Jan 21, 2026 · 1 fileMessage 40 · ThinInformational 15Details
Commit message · soralit

chore: bump version

40/100 · ThinMessage clarity
✓ Subject identifies a change✓ Uses a recognizable type or scope! No meaningful explanatory body
AI analysis · Informational 15/100

This commit only changes one number in a version file, increasing the build version from 4 to 5. There is no code change that affects security, functionality, or user data. It is a routine housekeeping update.

Security candidatefix: keystone slip39 not support zcashby soralit · 2ff0478e · Jan 21, 2026 · 7 filesMessage 57 · ThinInformational 17Details
Commit message · soralit

fix: keystone slip39 not support zcash

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
cryptography-sensitive pathsigning or wallet path
AI analysis · Informational 17/100

This commit fixes a product limitation: Keystone 3 hardware wallets using a SLIP39-style recovery phrase could not connect to the Keystone mobile app for Zcash. The patch removes Zcash from the list of coins shared when a SLIP39 wallet is used, and it makes the underlying Rust code accept a missing Zcash seed fingerprint. There is no direct evidence this is a security vulnerability; it appears to be a compatibility/functional bug fix.

Lower-priorityfix: unit testsby soralit · e048d87e · Jan 21, 2026 · 1 fileMessage 50 · ThinInformational 15Details
Commit message · soralit

fix: unit tests

50/100 · ThinMessage clarity
✓ Subject identifies a change✓ Uses a recognizable type or scope✓ Mentions testing or verification! No meaningful explanatory body
Why it was queued
documentation-only discount
AI analysis · Informational 15/100

This commit only updates a single hash value in a text file used for image assets. There is no code change, no security fix, and no behavior change visible in the diff. It appears to be a routine update to make unit tests pass after image assets changed.

AI review queuedfix: zec logo issueby soralit · 09d86c89 · Jan 21, 2026 · 1 fileMessage 40 · ThinInformational 15Details
Commit message · soralit

fix: zec logo issue

40/100 · ThinMessage clarity
✓ Subject identifies a change✓ Uses a recognizable type or scope! No meaningful explanatory body
Why it was queued
signing or wallet pathsecond-pass: security-sensitive path
AI analysis · Informational 15/100

This commit fixes a display issue by adding the Zcash (ZEC) coin logo to the list of icons shown for the Keystone wallet connection screen. It also removes a few leftover blank lines and an outdated 'todo' comment. There is no security-relevant change in this patch.

Lower-priorityfeat: update keystone nexus connection imageby soralit · 0014939c · Jan 21, 2026 · 1 fileMessage 57 · ThinInformational 15Details
Commit message · soralit

feat: update keystone nexus connection image

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

This commit only changes a single hash value in a text file that tracks image assets. There is no code change, no user-facing behavior change beyond a possible image refresh, and no security relevance visible in the diff or commit message.

Security candidatefix: slip39 passphrase create failed issueby soralit · ee96e5a6 · Jan 21, 2026 · 1 fileMessage 57 · ThinLow 32Details
Commit message · soralit

fix: slip39 passphrase create failed issue

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
access controlcryptography-sensitive path
AI analysis · Low 32/100

This commit fixes a build-configuration bug that could prevent creating or saving public key information when using a SLIP39 passphrase. The old code accidentally skipped the normal key-derivation path for certain crypto types in non-Bitcoin-only builds, which could leave required public key data unset and cause account setup to fail. The patch restructures the conditional compilation so each build variant (Cypherpunk, Web3, Bitcoin-only) follows the correct derivation branch.

Lower-priorityfeat: check pczt transparent inputs with multi-coins firmwareby soralit · 200ee85f · Jan 21, 2026 · 7 filesMessage 62 · AdequateLow 42Details
Commit message · soralit

feat: check pczt transparent inputs with multi-coins firmware

62/100 · AdequateMessage clarity
✓ Specific, descriptive subject✓ Names a concrete action or component✓ Uses a recognizable type or scope! No meaningful explanatory body
AI analysis · Low 42/100

This commit changes how the Keystone hardware wallet checks Zcash transparent inputs when using multi-coin firmware. Previously, Zcash transaction checking was completely disabled for SLIP39/passphrase wallets via a 'disabled' flag. The patch removes that blanket disable and instead adds a runtime check that at least one transparent input actually belongs to the wallet account being used. If none do, it returns a new 'PcztNoMyInputs' error. The change also slightly lowers code-coverage thresholds for the Zcash Rust module.

AI review queuedfix: unit testsby soralit · 7966cfab · Jan 21, 2026 · 22 filesMessage 50 · ThinInformational 14Details
Commit message · soralit

fix: unit tests

50/100 · ThinMessage clarity
✓ Subject identifies a change✓ Uses a recognizable type or scope✓ Mentions testing or verification! No meaningful explanatory body
Why it was queued
signing or wallet pathsecond-pass: unusually broad changesecond-pass: security-sensitive path
AI analysis · Informational 14/100

This commit only fixes and adds unit tests. It changes test-only dependencies, adds new test cases for Bitcoin address encoding and Zcash address generation/PCZT signing, and slightly adjusts code-coverage thresholds in CI. There is no change to production firmware behavior, no bug fix in shipped code, and no security-relevant change visible in the diff.

Lower-priorityfix: zcash ui issueby soralit · 14a3e2ed · Jan 21, 2026 · 2 filesMessage 40 · ThinInformational 12Details
Commit message · soralit

fix: zcash ui issue

40/100 · ThinMessage clarity
✓ Subject identifies a change✓ Uses a recognizable type or scope! No meaningful explanatory body
AI analysis · Informational 12/100

This commit fixes a user-interface bug for Zcash in the Keystone 3 hardware wallet firmware. It adds a missing UI handler so the Zcash transaction overview screen can be displayed, and adds the Zcash icon to the status bar. There is no indication this changes security-sensitive code or fixes a vulnerability.

Lower-priorityfix: zcash seed fingerprint export issueby soralit · 8c61eb6d · Jan 21, 2026 · 1 fileMessage 57 · ThinLow 41Details
Commit message · soralit

fix: zcash seed fingerprint export issue

57/100 · ThinMessage clarity
✓ Descriptive subject✓ Names a concrete action or component✓ Uses a recognizable type or scope! No meaningful explanatory body
AI analysis · Low 41/100

This commit fixes a bug in how the Keystone 3 hardware wallet stores a Zcash 'seed fingerprint.' The function that saves the fingerprint forgot to record which account it belongs to. That could cause the wallet to mix up or misidentify which Zcash account the fingerprint is for, potentially leading to wrong address derivation, export of incorrect account data, or user confusion when verifying accounts. It is a data-association bug, not a classic remote exploit.

Lower-priorityfix: a macro typoby soralit · 1046935a · Jan 21, 2026 · 1 fileMessage 40 · ThinLow 26Details
Commit message · soralit

fix: a macro typo

40/100 · ThinMessage clarity
✓ Subject identifies a change✓ Uses a recognizable type or scope! No meaningful explanatory body
AI analysis · Low 26/100

This commit fixes a misspelled build flag (CYBERPUNK_VERSION vs CYPHERPUNK_VERSION) in the Zcash transaction handling code. Because the wrong flag was used, the Cypherpunk-specific Zcash code path was never compiled in, while the Web3 path may have been active instead. The commit also adds a debug printf showing the mnemonic type. The typo fix could affect which Zcash transaction parser and checker runs, potentially changing how Zcash transactions are validated or displayed, but the commit itself is small and does not show an active exploit.

AI review queuedchore: fix buildby soralit · 089c18ca · Jan 21, 2026 · 2 filesMessage 40 · ThinInformational 15Details
Commit message · soralit

chore: fix build

40/100 · ThinMessage clarity
✓ Subject identifies a change✓ Uses a recognizable type or scope! No meaningful explanatory body
Why it was queued
signing or wallet pathsecond-pass: security-sensitive path
AI analysis · Informational 15/100

This is a routine build-fix commit. It corrects a typo in a function name (GetXpubPath to GetXPubPath) and adds a missing newline at the end of a hash file. There is no security-relevant change.