KS
← All projectsKeystone

Keystone 3 firmware

Open-source device firmware for Keystone 3 hardware wallets.

BitcoinHardware walletsNormal
Repository coverage

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

109security candidates287second-pass queue239AI analyses
117commits · 30 days
157commits · 60 days
274commits · 180 days
533commits · 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
64Adequate · 60–79
203Thin · 40–59
232Opaque · 0–39
37security 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.
Adam Tucker931134163
aaron3047148
ww35126871755198026
soralit1153465048
willwang1523025
John Boyd622088
Qkin-Keystone26113036
qkin12110050
Greg Pfeil412071
Daira-Emma Hopwood211085
Soralit210058
bianminyan4500032
Analysis record

Published AI watches

Last scanned 22 minutes ago

Informational 19 AI analysisMessage 85 · Strong
KS KeystoneKeystone 3 firmware BitcoinHardware wallets

fix(simulator): return password error on PIN mismatch in SimulatorLoadAccountSecret

This commit fixes a bug in the firmware's simulator (a software stand-in used for testing, not the real hardware wallet). When checking a stored account password/PIN, the simulator was accidentally returning 'success' even when the passwor…

Incorrect success return on authentication failure in simulator-only codeMismatch between simulator and real-device authentication error semanticsFunctional regression in multi-account PIN creation in simulator builds
6bec6930by soralit+4−11 file
No security note in commit
Informational 12 AI analysisMessage 47 · Thin
KS KeystoneKeystone 3 firmware BitcoinHardware wallets

chore: remove implementation plan

This commit only deletes a planning document from the repository's docs folder. No firmware code, build scripts, or cryptographic logic were changed. The deleted file described a previously completed security-hardening task about removing …

Deleted document references a prior security-hardening task (issue #2255 / PRNG fallback removal)No source-code or build-system changes in the diff
4620fe94by ww3512687+0−1041 file
No security note in commit
Moderate 64 AI analysisMessage 80 · Strong
KS KeystoneKeystone 3 firmware BitcoinHardware wallets

fix: remove insecure PRNG fallback

This commit removes a weak, predictable random-number generator that was bundled as a backup inside the firmware's SLIP-39 code. Previously, if the device's proper hardware random source was accidentally left out of a build, the firmware c…

Removal of deterministic LCG PRNG (random32)Removal of weak-symbol random_buffer fallbackRemoval of unused random helper APIs
17c78e30by ww3512687+108−693 files
Vendor flagged security relevance
Informational 10 AI analysisMessage 40 · Thin
KS KeystoneKeystone 3 firmware BitcoinHardware wallets

chore: update ci

This commit is described as a routine CI (continuous integration) update with only one line changed in a release-related file. No code changes affecting wallet security, cryptography, or user funds are visible, and no security relevance is…

39cfff13by soralit+1−11 file
No security note in commit
Moderate 63 AI analysisMessage 57 · Thin
KS KeystoneKeystone 3 firmware BitcoinHardware wallets

fix: regular AI code review and fix

This is a large, routine code-quality and hardening patch for the Keystone 3 hardware wallet firmware. It tightens how transactions are parsed and displayed for several cryptocurrencies (Arweave, Avalanche, Bitcoin, Cosmos, Ethereum, Solan…

Arweave: duplicate required tags now rejected, malformed/trailing Avro data now rejectedArweave: DataItem tag count mismatch now rejectedAvalanche: trailing transaction bytes now rejected via parsed_size checks
e2c0ef31by soralit+3998−142676 files
No security note in commit
Informational 15 AI analysisMessage 47 · Thin
KS KeystoneKeystone 3 firmware BitcoinHardware wallets

chore: upgrade rust version

This commit upgrades the Rust compiler toolchain from one nightly version to a newer one and adjusts code to keep the project building and tests passing. It does not fix a known security bug or change how user funds are protected. Most of …

82a48133by soralit+511−1321 files
No security note in commit
Low 36 AI analysisMessage 28 · Opaque
KS KeystoneKeystone 3 firmware BitcoinHardware wallets

support sol cli

This commit adds Solana CLI support to the Keystone 3 hardware wallet firmware. It introduces a new USB command that lets a connected computer request public keys for specific Solana derivation paths, and it reworks how USB responses are s…

New USB command exposes public-key export for a specific coin type and derivation pathAdded NULL/empty checks before returning generated UR data and before using cached passwordMoved several UR result sends from synchronous to asynchronous (task-queue based) dispatch
77833f49by ww3512687+282−2016 files
No security note in commit
Informational 17 AI analysisMessage 68 · Adequate
KS KeystoneKeystone 3 firmware BitcoinHardware wallets

Preserve Zcash account firmware version (#37)

This commit is a small, non-security code change. It updates a Zcash wallet test to verify that the firmware version string is preserved when account data is encoded and decoded, and it switches two Rust library dependencies from the publi…

Dependency source changed from crates.io to a third-party Git repository (valargroup/keystone-sdk-rust)No mention of vulnerability, CVE, security fix, or researcher attribution in commit message or diffChange is limited to a unit test assertion and dependency source pinning
20d7ea2dby Adam+11−73 files
No security note in commit
Low 28 AI analysisMessage 45 · Thin
KS KeystoneKeystone 3 firmware BitcoinHardware wallets

Preserve PCZT v1 response encoding

This commit changes how the Keystone hardware wallet handles Zcash PCZT (partially-created transaction) files. Previously, after checking and signing a transaction, the device always returned the result in the newer v2 format. Now it remem…

Behavioral change in serialization format selectionNew parsing helper reads wire version from raw bytesTest coverage added for v1 preservation
acf3611aby Adam Tucker+136−245 files
No security note in commit
Informational 15 AI analysisMessage 62 · Adequate
KS KeystoneKeystone 3 firmware BitcoinHardware wallets

refactor(zcash): use shielded pool display directly

This commit is a minor code cleanup in the Zcash shielded-transaction handling code. It removes temporary variables named `pool_label` and instead uses the existing `pool` value directly when building error messages. There is no change to …

9074e087by Adam Tucker+22−334 files
No security note in commit
Low 37 AI analysisMessage 57 · Thin
KS KeystoneKeystone 3 firmware BitcoinHardware wallets

fix(zcash): allow transparent-only V6 PCZTs

This commit changes how Keystone's Zcash transaction handling treats version 6 (V6) PCZTs. Previously, all V6 Zcash transactions were rejected in the non-cypherpunk (transparent-only) code path. The patch now allows V6 transactions as long…

Guard relaxation: V6 PCZTs no longer blanket-rejected in transparent-only buildsBoundary enforcement remains for shielded Sapling/Orchard/Ironwood contentUnknown transaction versions still rejected
ba4ecf28by Adam Tucker+127−954 files
No security note in commit
Informational 10 AI analysisMessage 40 · Thin
KS KeystoneKeystone 3 firmware BitcoinHardware wallets

chore: update ci

This commit is described as a routine CI (Continuous Integration) update with only one line changed in one file. No diff content is available, and there are no verified references suggesting any security relevance. It appears to be a munda…

7f2c4423by soralit+1−11 file
No security note in commit
Informational 14 AI analysisMessage 62 · Adequate
KS KeystoneKeystone 3 firmware BitcoinHardware wallets

refactor(zcash): simplify unsupported PCZT helpers

This is a simple code cleanup: three internal helper functions in the Zcash PCZT handling code are renamed to remove the word 'legacy' from their names. The actual behavior and security checks stay exactly the same. There is no functional …

0f0dc78aby Adam Tucker+6−63 files
No security note in commit
Informational 15 AI analysisMessage 57 · Thin
KS KeystoneKeystone 3 firmware BitcoinHardware wallets

refactor(zcash): display shielded pool names

This commit is a small code cleanup in the Zcash transaction handling code. It replaces a custom `label()` method on the `ShieldedPool` type with Rust's standard `Display` trait, so the pool name prints the same way in error messages. Ther…

83ac1e21by Adam Tucker+16−194 files
No security note in commit
Low 42 AI analysisMessage 62 · Adequate
KS KeystoneKeystone 3 firmware BitcoinHardware wallets

fix(zcash): defer checked batch cleanup after signing

This patch changes when a Zcash batch signing screen frees a sensitive internal data structure. Instead of destroying the data immediately when the page is cleared, it now schedules the cleanup to run after the signing operation has finish…

Use-after-free / premature-free risk in cryptographic signing pathAsync deferred cleanup introduced to avoid race with FIFO signing taskInline comment explicitly describes security-relevant ordering constraint
3b8995faby Adam Tucker+32−11 file
No security note in commit
Moderate 59 AI analysisMessage 57 · Thin
KS KeystoneKeystone 3 firmware BitcoinHardware wallets

fix(zcash): size UFVK buffers for terminators

This commit fixes a buffer sizing bug in the Keystone hardware wallet's Zcash support. The code previously treated the maximum string length and the buffer size as the same number, leaving no guaranteed room for the null terminator at the …

Off-by-one buffer sizing for null terminator in Zcash UFVK handlingUse of string-length constant instead of buffer-size constant in strcpy_s and memset_s callsInconsistent buffer declarations across account manager and GUI code
5f158dd3by Adam Tucker+14−136 files
No security note in commit
Low 35 AI analysisMessage 45 · Thin
KS KeystoneKeystone 3 firmware BitcoinHardware wallets

Release Zcash batch review widgets before signing

This commit fixes a potential memory/resource issue in the Zcash batch signing flow on the Keystone 3 hardware wallet. Before opening the signature view, the code now explicitly frees (destroys) the on-screen review widgets. Without this c…

Resource cleanup before sensitive signing operationUI object destruction to prevent memory pressure during cryptographic signing flowPotential UI state inconsistency mitigated by explicit widget release
2982da56by Adam Tucker+4−01 file
No security note in commit
Low 30 AI analysisMessage 50 · Thin
KS KeystoneKeystone 3 firmware BitcoinHardware wallets

fix the verifying ps hang on wrong password in btc only multi-sig

This commit fixes a user-interface bug in the Bitcoin-only multi-sig wallet screens of the Keystone 3 hardware wallet firmware. If a user entered the wrong device-unlock password while the lock screen was shown over these multi-sig views, …

UI lock-up / denial of usability on wrong passwordIncorrect routing of password verification result between overlapping viewsMissing handling for SIG_LOCK_VIEW_SCREEN_GO_HOME_PASS in password error path
2037a16aby aaron+20−02 files
No security note in commit
Moderate 64 AI analysisMessage 50 · Thin
KS KeystoneKeystone 3 firmware BitcoinHardware wallets

fix the issue of uvfk not changed if changed password

This commit fixes a bug in the Keystone 3 hardware wallet's Zcash support: when a user changed their login password, the encrypted Zcash 'unified full viewing key' (UFVK) was not re-encrypted with the new password. That meant the stored UF…

Credential/key material desynchronization after password changeZcash UFVK ciphertext keyed by login passwordAutomatic migration/recovery of stale encrypted key material
6d8e2d9dby aaron+137−464 files
No security note in commit
Informational 15 AI analysisMessage 40 · Thin
KS KeystoneKeystone 3 firmware BitcoinHardware wallets

feat: modify Lace Wallet

This commit is a routine user-interface update for the Lace wallet integration. It moves the Lace wallet icon into the 'Bitcoin Wallets' submenu, removes a separate Lace entry that previously showed both Bitcoin and Cardano support, and no…

468209b6by soralit+4−81 file
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.

Security candidatechore: update-ciby soralit · 68d90b66 · Apr 3, 2026 · 1 fileMessage 40 · ThinInformational 10Details
Commit message · soralit

chore: update-ci

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

This appears to be a routine CI (Continuous Integration) configuration update with no visible security relevance. Only one file was changed with a single-line addition and deletion, and the diff content is unavailable. There is no evidence of a security fix or vulnerability.

AI review queuedfmtby ww3512687 · 409c9c14 · Apr 3, 2026 · 5 filesMessage 0 · OpaqueTriage 0Details
Commit message · ww3512687

fmt

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 review queuedton unit testby ww3512687 · 3f743518 · Apr 3, 2026 · 4 filesMessage 38 · OpaqueTriage 0Details
Commit message · ww3512687

ton unit test

38/100 · OpaqueMessage clarity
✓ Subject identifies a change✓ Mentions testing or verification! No meaningful explanatory body
Why it was queued
second-pass: opaque commit message
Security candidateRemove the redundant code and comments related to TONby ww3512687 · abe8f0b7 · Apr 2, 2026 · 42 filesMessage 50 · ThinInformational 15Details
Commit message · ww3512687

Remove the redundant code and comments related to TON

50/100 · ThinMessage clarity
✓ Specific, descriptive subject✓ Names a concrete action or component! No meaningful explanatory body
Why it was queued
cryptography-sensitive pathsigning or wallet pathparser or protocol path
AI analysis · Informational 15/100

This commit removes the special 'TON-only wallet' feature from the Keystone 3 firmware. It deletes code that let users create or import a TON-native 24-word seed phrase separate from the normal BIP39 wallet. After this change, TON is handled like other coins using a standard BIP39-derived key. There is no security bug being fixed here; it is a feature-removal cleanup.

Security candidatechore: update ciby soralit · d719a2fd · Mar 31, 2026 · 1 fileMessage 40 · ThinInformational 2Details
Commit message · soralit

chore: update ci

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

This is a one-line change to a CI/release file titled 'chore: update ci'. No actual code changes are shown, and no security-relevant content can be identified from the available information.

Security candidateboot flagby ww3512687 · 0acb2d7d · Mar 31, 2026 · 1 fileMessage 0 · OpaqueLow 40Details
Commit message · ww3512687

boot flag

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
boot or update path
AI analysis · Low 40/100

This commit adds a small piece of code that writes a fixed 'magic number' marker to flash memory after a successful bootloader update. The marker is stored in the last 4 KB of the application flash region. This is likely intended as a flag so the system can later detect that a boot update has occurred. The change itself is not obviously malicious, but it modifies sensitive boot-update logic and writes to flash, so it deserves careful review in context.

Security candidatefeat: add web update pad functionalityby ww3512687 · 6f61612a · Mar 30, 2026 · 3 filesMessage 57 · ThinInformational 11Details
Commit message · ww3512687

feat: add web update pad functionality

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
boot or update path
AI analysis · Informational 11/100

This commit adds a small piece of firmware code that stores a fixed 15-byte pattern of bytes and a function that reads and mixes those bytes during device startup. On its own, the change does not appear to introduce a vulnerability; it looks like a compatibility or update-related marker. However, the purpose is not explained in the commit message, and the code is not obviously connected to any security-critical function, so its exact role is unclear from the diff alone.

Security candidatechore: update ciby soralit · bf12d17f · Mar 30, 2026 · 1 fileMessage 40 · ThinInformational 4Details
Commit message · soralit

chore: update ci

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

This is a one-line change to a CI/release file titled 'chore: update ci'. No diff content is available, and there are no verified references suggesting security relevance. Based solely on the metadata, there is no indication this commit fixes or introduces a security issue.

Security candidatechore: update ciby soralit · 14c2dc57 · Mar 30, 2026 · 1 fileMessage 40 · ThinInformational 10Details
Commit message · soralit

chore: update ci

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

This appears to be a routine CI (continuous integration) configuration update with no visible security relevance. Only one file was changed with a single-line addition and deletion. No diff content is available to inspect, and no security references were provided.

Security candidatefeat: improve update security, support X Layer, and refresh Zodl wallet integrationby ww3512687 · c42b3eeb · Mar 30, 2026 · 82 filesMessage 67 · AdequateModerate 61Details
Commit message · ww3512687

feat: improve update security, support X Layer, and refresh Zodl wallet integration

67/100 · AdequateMessage clarity
✓ Specific, descriptive subject✓ Names a concrete action or component✓ Uses a recognizable type or scope✓ Names security-relevant behavior explicitly! No meaningful explanatory body
Why it was queued
cryptography-sensitive pathsigning or wallet pathboot or update pathauthentication pathparser or protocol path
AI analysis · Moderate 61/100

This firmware update for the Keystone 3 hardware wallet is billed as a security improvement. The most important change is a complete rewrite of the bootloader/firmware update path: it now uses SHA-256 and a signed/length-prefixed 'bootupdate' envelope instead of the older MD5-based verification, and removes an old USB mass-storage auto-reboot behavior that could let a plugged-in host trigger a reboot just by copying a file. The patch also hardens the USB stack against malformed endpoint numbers and oversized control transfers, enables on-chip flash encryption for the external QSPI flash, and improves I2C and random-number error handling. However, the diff is very large and mixes many unrelated features (new wallet icons, X Layer chain support, UI tweaks), so it is hard to be certain every corner case is fixed.

Security candidateremove the eraseby ww3512687 · f065ed32 · Mar 27, 2026 · 1 fileMessage 28 · OpaqueModerate 56Details
Commit message · ww3512687

remove the erase

28/100 · OpaqueMessage clarity
✓ Subject identifies a change! No meaningful explanatory body! Opaque security-relevant change
Why it was queued
boot or update path
AI analysis · Moderate 56/100

This commit removes two lines from the bootloader update code. Previously, after a successful bootloader update, the firmware erased and overwrote a sector near the end of the application flash area, then cleared a memory buffer. Now it only clears the buffer in RAM and skips the flash erase/write. This could leave stale update data or metadata in flash, potentially allowing a previously-failed or old update marker to persist and affect future boot behavior. The change is small and its security implications depend heavily on why the erase was originally performed.

AI review queuedadd 2.4.0 changelogby bianminyan · 79c52dd7 · Mar 27, 2026 · 2 filesMessage 38 · OpaqueTriage 0Details
Commit message · bianminyan

add 2.4.0 changelog

38/100 · OpaqueMessage clarity
✓ Subject identifies a change✓ Names a concrete action or component! No meaningful explanatory body
Why it was queued
documentation-only discountsecond-pass: opaque commit message
Security candidate1. optimize the guidance update logic, and fix memory allocation 2. chore: update ciby ww3512687 · 92ae8bcf · Mar 27, 2026 · 4 filesMessage 65 · AdequateLow 41Details
Commit message · ww3512687

1. optimize the guidance update logic, and fix memory allocation
2. chore: update ci

65/100 · AdequateMessage clarity
✓ Specific, descriptive subject✓ Names a concrete action or component✓ Provides an explanatory body
Why it was queued
boot or update path
AI analysis · Low 41/100

This firmware update fixes a memory leak and cleans up boot-update logic in a hardware crypto wallet. The most concrete security-relevant change is adding a missing SRAM_FREE(buffer) call in BinarySearchBootHead, which prevents a small memory allocation from never being released. Other changes replace hardcoded 4096-byte values with a SECTOR_SIZE constant and remove a production-only conditional around NeedUpdateBoot. The commit message mentions 'fix memory allocation' but does not frame the change as a security fix.

Security candidatechore: update ciby soralit · 79481766 · Mar 26, 2026 · 1 fileMessage 40 · ThinInformational 0Details
Commit message · soralit

chore: update ci

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

This commit is described as a routine CI (continuous integration) update with only one line changed in a release-related file. No actual code changes are shown, and no security relevance is stated or visible.

Security candidateboot updateby ww3512687 · 4df8c325 · Mar 26, 2026 · 60 filesMessage 0 · OpaqueModerate 57Details
Commit message · ww3512687

boot update

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 pathboot or update pathauthentication pathparser or protocol path
AI analysis · Moderate 57/100

This commit is a large firmware update for the Keystone 3 hardware wallet, primarily adding a bootloader update mechanism and hardening the USB stack. It introduces a way to overwrite the device's bootloader from a specially formatted region of flash memory, enables hardware-level flash encryption for production builds, and adds many bounds checks and validation routines to the USB device driver to prevent malformed host requests from crashing or confusing the device. The commit also removes the MD5 checksum code entirely and improves I2C and secure-element error handling.

AI review queuedfix USD₮0 ui bugby ww3512687 · 512e2500 · Mar 24, 2026 · 2 filesMessage 38 · OpaqueInformational 19Details
Commit message · ww3512687

fix USD₮0 ui bug

38/100 · OpaqueMessage clarity
✓ Subject identifies a change✓ Names a concrete action or component! No meaningful explanatory body
Why it was queued
signing or wallet pathsecond-pass: opaque commit messagesecond-pass: security-sensitive path
AI analysis · Informational 19/100

This commit fixes a user-interface bug related to displaying the new USD₮0 (Tether) token symbol. It updates a generated font file so the ₮ glyph renders correctly, and corrects a function signature in the wallet connection screen so coin icons are passed as image descriptors instead of strings. There is no direct evidence of a security vulnerability being patched.

Lower-prioritySupport the X Layer network and its ERC20 contractby ww3512687 · c201d6cb · Mar 9, 2026 · 1 fileMessage 50 · ThinTriage 0Details
Commit message · ww3512687

Support the X Layer network and its ERC20 contract

50/100 · ThinMessage clarity
✓ Specific, descriptive subject✓ Names a concrete action or component! No meaningful explanatory body
AI review queuedudpate zodl wallet name & iconby ww3512687 · 3dc50300 · Mar 9, 2026 · 15 filesMessage 45 · ThinInformational 15Details
Commit message · ww3512687

udpate zodl wallet name & icon

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

This commit is a routine rebranding update: it changes the displayed name and icon of a wallet partner from 'Zashi' to 'Zodl' across the user interface. It also includes a tiny, unrelated code-style fix in a boot-parameter function so the simulator build path is properly wrapped in #ifdef/#else/#endif. There is no security-relevant change.

AI review queuedmodify changelogby bianminyan · 53c47e2e · Mar 4, 2026 · 1 fileMessage 18 · OpaqueTriage 0Details
Commit message · bianminyan

modify changelog

18/100 · OpaqueMessage clarity
✓ Subject identifies a change! Too few words to establish purpose! No meaningful explanatory body
Why it was queued
documentation-only discountsecond-pass: opaque commit message
AI review queuedmodify 2.3.10 changelogby bianminyan · 614d0740 · Mar 4, 2026 · 2 filesMessage 38 · OpaqueTriage 0Details
Commit message · bianminyan

modify 2.3.10 changelog

38/100 · OpaqueMessage clarity
✓ Subject identifies a change✓ Names a concrete action or component! No meaningful explanatory body
Why it was queued
documentation-only discountsecond-pass: opaque commit message
Security candidatefix: zcash transparent is not signingby soralit · 18300002 · Mar 4, 2026 · 1 fileMessage 57 · ThinInformational 20Details
Commit message · soralit

fix: zcash transparent is not signing

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 boundarysigning or wallet path
AI analysis · Informational 20/100

This is a one-line build-configuration fix for the Keystone hardware wallet's Zcash signing code. Previously, transparent Zcash transaction signing was only enabled when the 'multi_coins' feature was active. The change also enables it when the 'cypherpunk' feature is active. Without this fix, Zcash transparent signing simply fails to compile or run in cypherpunk-only builds. There is no direct evidence in the commit of a security vulnerability; it appears to be a missing-feature bug.

Security candidatefix: zcash transparent is not signingby soralit · 635fc76e · Mar 4, 2026 · 1 fileMessage 57 · ThinLow 41Details
Commit message · soralit

fix: zcash transparent is not signing

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 boundarysigning or wallet path
AI analysis · Low 41/100

This is a one-line build-configuration fix for the Keystone hardware wallet's Zcash transparent transaction signing. Previously, the code that signs the transparent (non-shielded) part of a Zcash PCZT transaction was only compiled when the 'multi_coins' feature was enabled. The change also enables that signing code when the 'cypherpunk' feature is enabled. Without this fix, a device built with only the 'cypherpunk' feature could produce an incomplete or invalid Zcash transaction signature, likely causing the transaction to be rejected by the network rather than stealing funds.

AI review queuedadd 2.3.10 changelogby bianminyan · 8529388d · Feb 25, 2026 · 3 filesMessage 38 · OpaqueTriage 0Details
Commit message · bianminyan

add 2.3.10 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
Security candidatesupport gero walletby ww3512687 · 254e8157 · Feb 25, 2026 · 12 filesMessage 28 · OpaqueInformational 15Details
Commit message · ww3512687

support gero wallet

28/100 · OpaqueMessage clarity
✓ Subject identifies a change! No meaningful explanatory body! Opaque security-relevant change
Why it was queued
cryptography-sensitive pathsigning or wallet path
AI analysis · Informational 15/100

This commit adds support for a new wallet partner called Gero Wallet in the Keystone 3 firmware. It is a routine feature addition: a new icon, a new entry in wallet lists, a tutorial link, and recognition of the wallet's origin name when handling key-derivation requests. There is no indication of a security fix or vulnerability.

AI review queuedUpdate version for testby bianminyan · af2d5b25 · Feb 6, 2026 · 1 fileMessage 38 · OpaqueTriage 0Details
Commit message · bianminyan

Update version for test

38/100 · OpaqueMessage clarity
✓ Subject identifies a change✓ Mentions testing or verification! No meaningful explanatory body
Why it was queued
second-pass: opaque commit message