KX
← All projectsKrux

Krux

Open-source signing firmware for Kendryte K210 devices.

BitcoinHardware walletsNormal
Repository coverage

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

58security candidates41second-pass queue216AI analyses
5commits · 30 days
41commits · 60 days
97commits · 180 days
200commits · 365 days
Backfill bands
Aug 5 → Feb 6116 seen6 candidatesComplete
Feb 6 → Jun 639 seen3 candidatesComplete
Jun 6 → Jul 622 seen1 candidatesComplete
Jul 6 → Aug 538 seen5 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.

65/100 average clarity
60Strong · 80–100
66Adequate · 60–79
81Thin · 40–59
16Opaque · 0–39
6security 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.
Odudex291429272
odudex902989159
Tads361036063
qlrd18216082
kdmukai424066
tadeubas414038
kkdao12012083
Jean Do1006072
Naman015505060
bitcoisas505066
Naman Gupta202079
SatsCzar202062
Analysis record

Published AI watches

Last scanned 28 minutes ago

Moderate 66 AI analysisMessage 45 · Thin
KX KruxKrux BitcoinHardware wallets

Merge branch 'release-26.08.0'

This is a routine release merge for Krux firmware (version 26.08.0). It includes several genuine security fixes: a heap buffer overflow in camera-based entropy generation for a discontinued device, stricter fee calculation when signing Bit…

Heap buffer overflow fix in camera entropy module (discontinued Maix Bit only)PSBT fee calculation stricter checks and unverified-input-amount warningStored mnemonic file corruption now preserved instead of overwritten
be5eda28by odudex+4335−3028123 files
Vendor flagged security relevance
Informational 15 AI analysisMessage 40 · Thin
KX KruxKrux BitcoinHardware wallets

docs: update CHANGELOG

This commit only updates three date lines in the CHANGELOG.md file, changing '2025' to '2026' for three release entries. It does not modify any source code, build scripts, or documentation with security implications. The change is purely c…

ec058d86by odudex+3−31 file
No security note in commit
Moderate 66 AI analysisMessage 85 · Strong
KX KruxKrux BitcoinHardware wallets

fix: bind BBQr parts to the first part of the stream

This commit fixes Krux's QR code scanner so that when it reads a series of animated BBQr codes, every later frame must match the encoding and file type announced by the first frame, must agree on the total number of frames, and cannot over…

Input validation added for multi-part BBQr streamsMemory exhaustion mitigation via accumulated payload capAnti-splicing: parts must agree with first part's encoding and file type
0b3e01b7by odudex+86−13 files
No security note in commit
Informational 15 AI analysisMessage 40 · Thin
KX KruxKrux BitcoinHardware wallets

docs: update CHANGELOG

This commit only updates the project's CHANGELOG.md file. It adds text describing several bug fixes and improvements that were apparently made in prior code changes, but no actual code is changed in this commit. By itself, this documentati…

4c05cefbby odudex+9−11 file
No security note in commit
Informational 0 AI analysisMessage 40 · Thin
KX KruxKrux BitcoinHardware wallets

chore(Maixpy): bump cUR

This commit appears to be a routine version bump of a component called 'cUR' inside the MaixPy firmware build. No actual code changes are visible in the provided diff, and the commit message gives no indication of a security fix or vulnera…

74d6ed40by odudex+1−11 file
No security note in commit
Informational 15 AI analysisMessage 57 · Thin
KX KruxKrux BitcoinHardware wallets

chore: bump version to 26.08.0

This commit is a routine version bump from 26.04.0 to 26.08.0. It only updates version strings in documentation, build files, and source metadata. No code behavior changes. The changelog text mentions a previously fixed heap buffer overflo…

Changelog references a prior heap buffer overflow in Shannon entropy module (camera frame copy into fixed 320x240 RGB565 buffer)No actual code or security fix present in this commit
dea991dfby odudex+5−55 files
Vendor flagged security relevance
Informational 2 AI analysisMessage 57 · Thin
KX KruxKrux BitcoinHardware wallets

chore: bump MaixPy with updated glyphs

This commit appears to update a submodule or dependency called MaixPy to a newer version that includes updated visual glyphs (small icons/symbols). The title and message describe it as a routine maintenance chore, not a security fix. No ac…

a9329228by odudex+1−11 file
No security note in commit
Informational 15 AI analysisMessage 85 · Strong
KX KruxKrux BitcoinHardware wallets

fix: register embed_fire in the bdftokff device list

This commit fixes a build-time font-generation script so that a newly supported device ('embed_fire') is recognized. Before the fix, the script printed an error but still produced the same font files. There is no security issue.

f15308e4by odudex+1−01 file
No security note in commit
Moderate 63 AI analysisMessage 57 · Thin
KX KruxKrux BitcoinHardware wallets

docs: add PSBT input amount fixes to CHANGELOG

This commit only updates the project's CHANGELOG.md to document earlier fixes related to PSBT (Partially Signed Bitcoin Transaction) fee and amount handling. It does not contain any code changes itself. The changelog entries describe secur…

Changelog documents prior PSBT fee/amount validation fixesMentions insufficient coordinator data as a security concernNo actual code or test changes in this commit
48920c31by odudex+4−01 file
Vendor flagged security relevance
High 78 AI analysisMessage 95 · Strong
KX KruxKrux BitcoinHardware wallets

fix: verify PSBT input amounts before showing the fee

This commit fixes a security flaw in Krux, a Bitcoin signing device. Before the fix, an attacker could trick the device into showing a low transaction fee on screen while actually signing a much higher fee. The fix makes the device verify …

Fixes fee-display/sighash amount mismatchAdds prevout txid hash verification for non_witness_utxoMandates non_witness_utxo for legacy inputs
fc808059by odudex+353−122 files
Vendor flagged security relevance
Moderate 66 AI analysisMessage 85 · Strong
KX KruxKrux BitcoinHardware wallets

fix: reject a PSBT whose outputs exceed its inputs

This commit fixes a bug in Krux, a Bitcoin signing device, where a malformed transaction whose outputs spend more than its inputs could be loaded and shown to the user. Normally such a transaction is impossible on the Bitcoin network, but …

Input validation gap in PSBT parsingUI rendering bug masking invalid transaction economicsPotential social-engineering / user-confusion attack
d6813d88by odudex+52−02 files
Vendor flagged security relevance
Informational 15 AI analysisMessage 50 · Thin
KX KruxKrux BitcoinHardware wallets

i18n: translate the unverified input amounts warning

This commit only adds translations for two existing warning messages in the Krux Bitcoin hardware wallet software. It does not change any code logic, security behavior, or fix any vulnerability. The messages warn users that displayed fees …

bdaed1a1by odudex+46−023 files
No security note in commit
Moderate 62 AI analysisMessage 90 · Strong
KX KruxKrux BitcoinHardware wallets

feat: warn when PSBT input amounts cannot be verified

This commit adds a warning screen to Krux, a hardware signing device, when it is asked to sign a multi-input Bitcoin transaction where the amounts of some inputs cannot be independently verified. The risk is that a malicious transaction co…

New user-facing warning for unverified multi-input SegWit amountsDetection logic tied to BIP143 signature semantics and inp.is_verifiedDoes not enforce previous-transaction inclusion; user can still proceed
518b3314by odudex+159−24 files
Vendor flagged security relevance
Low 27 AI analysisMessage 85 · Strong
KX KruxKrux BitcoinHardware wallets

fix: render negative amounts correctly in format_btc

This commit fixes a display bug in how Krux formats negative Bitcoin amounts. Previously, a value like -1000 satoshis was shown incorrectly as roughly -1.99 bitcoins instead of -0.00001 bitcoins, because the code split the number before ha…

UI/display bug in financial amount renderingNo cryptographic, authorization, or memory-safety changesNo input validation, parsing, or serialization of untrusted data changed
c7e48ae1by odudex+22−12 files
No security note in commit
Moderate 53 AI analysisMessage 62 · Adequate
KX KruxKrux BitcoinHardware wallets

docs: add Maix Bit removal and Shannon calc fix to CHANGELOG

This commit is a documentation update to the project's changelog. It describes two security-related changes that were apparently made in earlier code: a heap buffer overflow in the camera-based entropy (randomness) module that could only b…

Heap buffer overflow in camera entropy / Shannon entropy moduleOut-of-bounds write of 49,152 bytes on discontinued Maix Bit deviceRemoval of deterministic os.urandom() PRNG from firmware
b0a7357eby odudex+7−01 file
Vendor flagged security relevance
Moderate 55 AI analysisMessage 82 · Strong
KX KruxKrux BitcoinHardware wallets

chore: bump MaixPy with Shannon changes and RNG removal

This commit updates a bundled firmware component called MaixPy. The commit message says it fixes a 'Shannon heap overflow,' removes an unused random-number binding, and drops support for one hardware variant (Maix Bit). A heap overflow is …

Commit message explicitly mentions fixing a heap overflowRemoval of an unused cryptographic/randomness binding (os.urandom)Submodule bump only; no source-level patch visible in this commit
5c4ece9aby odudex+1−11 file
Vendor flagged security relevance
Moderate 52 AI analysisMessage 85 · Strong
KX KruxKrux BitcoinHardware wallets

fix: remove Maix Bit and CIF camera support

This commit removes support for an old, discontinued hardware device called the Maix Bit from the Krux Bitcoin wallet firmware. The commit message says the Maix Bit's camera resolution (CIF) was the only one that fed frames larger than QVG…

Buffer overflow / scratch buffer overflow claimed in commit message (49,152 bytes)Removal of vulnerable hardware code path rather than hardening the entropy moduleDiscontinuation of affected device reduces real-world exposure
8090ac73by odudex+11−1279 files
Vendor flagged security relevance
Informational 15 AI analysisMessage 90 · Strong
KX KruxKrux BitcoinHardware wallets

refactor: use native uUR on tests and simulator

This commit is a routine engineering cleanup: it removes a Python-only compatibility layer (a 'shim') used for testing and simulation, and makes the test environment use the same C-language UR encoder/decoder module that the real hardware …

2fe2f5f5by odudex+108−24919 files
No security note in commit
Low 34 AI analysisMessage 62 · Adequate
KX KruxKrux BitcoinHardware wallets

refactor: catch Exception, not bare except, in parse_wallet fallbacks

This commit tightens error handling in Krux's wallet parsing. Previously, the code used bare 'except:' clauses that would catch everything, including KeyboardInterrupt and SystemExit. Those special exceptions should normally be allowed to …

Bare except clauses replaced with except Exception to avoid swallowing KeyboardInterrupt/SystemExitNew regression test ensures KeyboardInterrupt propagates through all parse_wallet fallback branchesComments explicitly call out untrusted input and interrupt propagation behavior
6f617710by kkdao+42−72 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 queuedMnemonics XOR Docs Review (#746)by Odudex · c6c43469 · Oct 21, 2025 · 9 filesMessage 68 · AdequateInformational 15Details
Commit message · Odudex

Mnemonics XOR Docs Review (#746)

* XOR: docs review

---------

Co-authored-by: Tads <tadeubas@gmail.com>

68/100 · AdequateMessage clarity
✓ Descriptive subject✓ Names a concrete action or component✓ Provides an explanatory body✓ Links an issue, advisory, or supporting reference
Why it was queued
signing or wallet pathsecond-pass: security-sensitive path
AI analysis · Informational 15/100

This commit is a documentation and screenshot update for a feature called Mnemonic XOR. It rewrites user-facing help pages, adds new images, and updates simulator test scripts so the feature is documented and visually shown. There are no code changes that affect security, and nothing in the commit fixes or introduces a vulnerability.

AI review queuedupdate pylint IIby odudex · 0cec63ff · Oct 20, 2025 · 4 filesMessage 28 · OpaqueInformational 15Details
Commit message · odudex

update pylint II

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 updates the Pylint static-analysis tool from version 3 to version 4 and makes a small, matching cleanup in the project's internationalization helper script. It does not change any user-facing security behavior, fix a vulnerability, or alter how the application handles secrets, keys, or untrusted data.

AI review queuedupdate pylintby odudex · 8f1156f7 · Oct 20, 2025 · 2 filesMessage 18 · OpaqueInformational 15Details
Commit message · odudex

update pylint

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 is a routine maintenance update for the project's Python linting tool (pylint) and its dependency lock file. It changes configuration settings to match a newer pylint version and records updated package versions. There is no change to the actual application code that users interact with, and nothing in the commit suggests a security fix or vulnerability.

AI review queuedupdate beta versionby odudex · e07b7977 · Oct 11, 2025 · 4 filesMessage 28 · OpaqueInformational 15Details
Commit message · odudex

update beta version

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 bumps the project's beta version number from 25.10.beta0 to 25.10.beta1 in four files. It also removes two harmless code comments about touch settings. There are no functional code changes and no security implications.

AI review queuedfeat: add Mnemonic XOR (SeedXOR) (#727)by qlrd · cc32f6d1 · Oct 11, 2025 · 34 filesMessage 80 · StrongLow 28Details
Commit message · qlrd

feat: add Mnemonic XOR (SeedXOR) (#727)

* feat: add `Mnemonic XOR` (SeedXOR) as menu entry in `Wallet` settings

80/100 · StrongMessage clarity
✓ Descriptive subject✓ Names a concrete action or component✓ Uses a recognizable type or scope✓ Provides an explanatory body✓ Links an issue, advisory, or supporting reference
Why it was queued
second-pass: unusually broad change
AI analysis · Low 28/100

This commit adds a new 'Mnemonic XOR' (SeedXOR) feature to Krux, a Bitcoin hardware wallet. It lets users combine two seed phrases using a mathematical XOR operation to create a new seed, or split an existing seed into two parts. The code also refactors existing mnemonic-loading code into a shared base class. There is no indication this is a security fix; it is a new feature implementation.

Lower-prioritytest: add `wonder_k` board to tests (#740)by qlrd · 88aa2213 · Oct 8, 2025 · 6 filesMessage 98 · StrongInformational 15Details
Commit message · qlrd

test: add `wonder_k` board to tests (#740)

This commit add `board_wonder_k` function to `conftest.py` as well adapt
some tests to cover cases when `multiple_devices` fixture is used.

98/100 · StrongMessage clarity
✓ Descriptive subject✓ Names a concrete action or component✓ Uses a recognizable type or scope✓ Provides detailed explanatory context✓ Mentions testing or verification✓ Links an issue, advisory, or supporting reference
AI analysis · Informational 15/100

This commit only adds a new hardware board ('wonder_k') to the project's test suite. It introduces mock definitions, test fixtures, and expected test outputs for the new board. There are no changes to the actual application code that users run, and nothing in the commit fixes or introduces a security vulnerability.

Lower-prioritypr_737 removed EncryptedQR because it was no longer needed, (#739)by Jean Do · 03d6037c · Sep 30, 2025 · 1 fileMessage 100 · StrongInformational 15Details
Commit message · Jean Do

pr_737 removed EncryptedQR because it was no longer needed, (#739)

but some of the tests contained useful hard-coded intermediate
bytestrings for testing basic ECB/CBC/CTR/GCM modes. This
commit recovers these tests -- using kef directly.

100/100 · StrongMessage clarity
✓ Specific, descriptive subject✓ Names a concrete action or component✓ Provides detailed explanatory context✓ Explains rationale or failure mode✓ Mentions testing or verification✓ Links an issue, advisory, or supporting reference
AI analysis · Informational 15/100

This commit only adds and updates unit tests for encryption code. It does not change any production code that users run. The tests verify that an existing encryption helper (kef) can still create and decode encrypted QR codes in ECB, CBC, CTR, and GCM modes after a previous cleanup removed a wrapper class. There is no security vulnerability here.

Security candidateupdate Maixpy: SPIFFS load and save cleanupby odudex · e94029a3 · Sep 30, 2025 · 1 fileMessage 45 · ThinInformational 2Details
Commit message · odudex

update Maixpy: SPIFFS load and save cleanup

45/100 · ThinMessage clarity
✓ Descriptive subject✓ Names a concrete action or component! No meaningful explanatory body
Why it was queued
boot or update path
AI analysis · Informational 2/100

This commit updates a submodule called MaixPy with a one-line change described as 'SPIFFS load and save cleanup.' No actual code diff is available, and there are no verified references indicating this fixes or introduces a security problem. Based solely on the provided materials, nothing can be determined about security impact.

AI review queuedAdd Vulture to detect dead code (#737)by Tads · dbc344ad · Sep 30, 2025 · 18 filesMessage 53 · ThinInformational 15Details
Commit message · Tads

Add Vulture to detect dead code (#737)

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

This commit adds a development tool called Vulture that finds unused ('dead') code and removes the dead code it detected. It is a routine code-cleanup change, not a security fix or vulnerability patch. There is no indication it introduces a security issue or addresses one.

Lower-prioritychore: remove unused `Login._encrypted_qr_code` from `src/krux/pages/login.py` (#736)by qlrd · 065174d3 · Sep 30, 2025 · 1 fileMessage 70 · AdequateInformational 15Details
Commit message · qlrd

chore: remove unused `Login._encrypted_qr_code` from `src/krux/pages/login.py` (#736)

70/100 · AdequateMessage clarity
✓ Specific, descriptive subject✓ Names a concrete action or component✓ Uses a recognizable type or scope✓ Links an issue, advisory, or supporting reference! No meaningful explanatory body
AI analysis · Informational 15/100

This commit simply deletes an unused internal helper method called _encrypted_qr_code from the login page code. There is no functional change to the app, no bug fix, and no security-relevant behavior altered. It is routine code cleanup.

AI review queuedWork to optimize DatumTool: don't die on contents >30K (#731)by Jean Do · 59df8881 · Sep 30, 2025 · 26 filesMessage 58 · ThinLow 32Details
Commit message · Jean Do

Work to optimize DatumTool: don't die on contents >30K (#731)

58/100 · ThinMessage clarity
✓ Specific, descriptive subject✓ Names a concrete action or component✓ Links an issue, advisory, or supporting reference! No meaningful explanatory body
Why it was queued
second-pass: unusually broad change
AI analysis · Low 32/100

This commit improves a file-viewing tool in Krux (a Bitcoin hardware-wallet firmware) so it no longer crashes when opening large files. It adds memory cleanup, caps expensive encoding checks to small samples, and shows a user-friendly error if a format conversion fails. There is no direct evidence this fixes a security vulnerability; it appears to be a robustness and user-experience improvement.

Lower-prioritybattery check fix (#735)by Odudex · 7bd59066 · Sep 29, 2025 · 3 filesMessage 51 · ThinInformational 19Details
Commit message · Odudex

battery check fix (#735)

* battery check fix
moves the check further in time to allow ADC to properly get battery voltage.

51/100 · ThinMessage clarity
✓ Subject identifies a change✓ Provides an explanatory body✓ Links an issue, advisory, or supporting reference
AI analysis · Informational 19/100

This commit fixes a timing issue in how Krux detects whether the device has a battery. Previously, the battery check ran too early during power manager setup, before the analog-to-digital converter (ADC) had stabilized, which could cause the device to incorrectly decide it had no battery. The fix moves the check later, to the login screen, giving the ADC time to read the battery voltage correctly. The only visible effect is whether a 'Shutdown' menu item appears. There is no direct security vulnerability here; it is a reliability/usability bug fix.

Lower-priorityre-enable vertical swipe to leave QR Viewby odudex · 1aab19ab · Sep 27, 2025 · 2 filesMessage 45 · ThinInformational 15Details
Commit message · odudex

re-enable vertical swipe to leave QR View

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

This commit restores the ability to swipe up or down to exit a QR code display screen in the Krux hardware wallet. Previously, those same up/down swipes were being used to cycle through display modes, which accidentally trapped the user on the screen. There is no security issue here; it is a straightforward user-interface bug fix.

Security candidateRefactor btn turbo and other small changes (#734)by Tads · b447216e · Sep 26, 2025 · 21 filesMessage 78 · AdequateInformational 18Details
Commit message · Tads

Refactor btn turbo and other small changes (#734)

* Refactor btn turbo and other small changes

* Added tests to increase coverage of input

78/100 · AdequateMessage clarity
✓ Descriptive subject✓ Names a concrete action or component✓ Provides an explanatory body✓ Mentions testing or verification✓ Links an issue, advisory, or supporting reference
Why it was queued
seed or entropy path
AI analysis · Informational 18/100

This commit is a routine user-interface cleanup. It centralizes how 'fast-forward' and 'fast-backward' button-hold navigation works across keypads, menus, QR transcribe, and seed editors. It also adds swipe gestures in more places and tweaks how the Yahboom device's extra page button behaves. There is no indication it fixes a security vulnerability or introduces a clear one.

AI review queuedDatum info-box adjust (#733)by Odudex · 9ccf3890 · Sep 26, 2025 · 25 filesMessage 68 · AdequateInformational 15Details
Commit message · Odudex

Datum info-box adjust (#733)

---------

Co-authored-by: Tads <tadeubas@gmail.com>

68/100 · AdequateMessage clarity
✓ Descriptive subject✓ Names a concrete action or component✓ Provides an explanatory body✓ Links an issue, advisory, or supporting reference
Why it was queued
second-pass: unusually broad change
AI analysis · Informational 15/100

This commit is a user-interface polish change for the Krux hardware wallet's 'Datum' tool. It splits a single translated label like 'binary: 123 bytes' into two parts ('binary:' and '123 bytes') so the device can highlight the label prefix differently in an on-screen info box. It also moves a content preview into the same info box. There is no security bug being fixed here.

Lower-priorityBetter testing of kef compression to prove importance of wbits=-10 (#728)by Jean Do · 6fcc3942 · Sep 24, 2025 · 3 filesMessage 91 · StrongInformational 24Details
Commit message · Jean Do

Better testing of kef compression to prove importance of wbits=-10 (#728)

* better testing of kef compression (same as bbqr) to prove that wbits=-10
demanded in KEF Specifications is truly a necessary detail.
See unit-test test_brute_force_compression_check()'s docstring
to provoke errors w/ bad wbits values during compression.

* Emphasize that KEF is strict about wbits=-10 for compress,
but that implementations may use larger windows during decompress.
* expressed in tests comments (as well as by-hand tests of decompressing
with wbits=-11 to -15, for 100K samples, each having size greater than
wbits.
* expressed in `On compressed versions` section of KEF Specifications

91/100 · StrongMessage clarity
✓ Specific, descriptive subject✓ Names a concrete action or component✓ Provides detailed explanatory context✓ Mentions testing or verification✓ Links an issue, advisory, or supporting reference
AI analysis · Informational 24/100

This commit is a documentation and testing-only change for Krux's encrypted backup format (KEF). It adds unit tests and clarifies in the specification that compression must use a very specific deflate window size (wbits=-10). The change itself does not alter any production encryption or compression code; it only makes the existing requirement stricter to document and proves with tests why that exact setting matters. There is no direct security vulnerability being patched here, but it guards against a future interoperability or data-recovery failure if an implementer used a larger compression window.

Security candidateincreased SD Card compatibilityby odudex · bb084dbb · Sep 24, 2025 · 2 filesMessage 35 · OpaqueInformational 15Details
Commit message · odudex

increased SD Card compatibility

35/100 · OpaqueMessage clarity
✓ Descriptive subject! No meaningful explanatory body! Opaque security-relevant change
Why it was queued
boot or update path
AI analysis · Informational 15/100

This commit is a routine changelog update describing improved SD card support in Krux. The actual code change in the MaixPy submodule is not shown in the supplied diff, so no security issue can be identified from the materials provided.

Lower-priorityremove "Reboot" from Login page (#732)by Odudex · 9b035563 · Sep 24, 2025 · 6 filesMessage 68 · AdequateInformational 19Details
Commit message · Odudex

remove "Reboot" from Login page (#732)

* remove "Reboot" from Login page
remove "status bar" when empty
cache has_battery on kboard for performance

68/100 · AdequateMessage clarity
✓ Descriptive subject✓ Names a concrete action or component✓ Provides an explanatory body✓ Links an issue, advisory, or supporting reference
AI analysis · Informational 19/100

This commit removes the 'Reboot' button from the device's Login screen on models that have no battery. It also hides the empty status bar on the Login menu when there is no wallet loaded and no battery. The change is a user-interface cleanup, not a fix for an exploitable security flaw. It slightly reduces the chance a user accidentally reboots instead of shutting down on a battery-less device, which could matter for secure erase assumptions on some hardware.

Security candidateClean up touch checks (#730)by Tads · c47eb0af · Sep 23, 2025 · 12 filesMessage 53 · ThinLow 27Details
Commit message · Tads

Clean up touch checks (#730)

53/100 · ThinMessage clarity
✓ Descriptive subject✓ Names a concrete action or component✓ Links an issue, advisory, or supporting reference! No meaningful explanatory body
Why it was queued
seed or entropy path
AI analysis · Low 27/100

This commit is a code cleanup that centralizes touchscreen checks across the Krux firmware. It replaces scattered checks of `self.ctx.input.touch is not None` with a single flag `kboard.has_touchscreen`, and allows touch settings to remain accessible even when the touch input object is temporarily disabled. There is no direct evidence in the commit of a security vulnerability being fixed, but the change touches input-handling logic and could affect behavior if the flag gets out of sync with the actual touch object state.

Security candidateremoved unsused/deprecated files (#729)by Tads · 86a6bb8f · Sep 23, 2025 · 3 filesMessage 53 · ThinInformational 15Details
Commit message · Tads

removed unsused/deprecated files (#729)

Remove Vagrant file

53/100 · ThinMessage clarity
✓ Descriptive subject✓ Names a concrete action or component✓ Links an issue, advisory, or supporting reference! No meaningful explanatory body
Why it was queued
boot or update path
AI analysis · Informational 15/100

This commit simply deletes three unused or deprecated files: a Vagrant virtual-machine configuration, a font-build helper script, and the README section that described the deprecated script. There is no change to the actual Krux firmware, wallet logic, or security-sensitive code, so it does not introduce or fix a security vulnerability.

Lower-priorityRefactor key_strength check for simplification and optimization (#725)by Tads · 4a6bbfef · Sep 22, 2025 · 1 fileMessage 58 · ThinInformational 15Details
Commit message · Tads

Refactor key_strength check for simplification and optimization (#725)

58/100 · ThinMessage clarity
✓ Specific, descriptive subject✓ Names a concrete action or component✓ Links an issue, advisory, or supporting reference! No meaningful explanatory body
AI analysis · Informational 15/100

This commit is a straightforward code cleanup in the password-strength meter. It replaces four separate scans over the password with a single loop and adds an early-exit optimization once all four character categories have been found. The actual strength rules (minimum length of 8 and presence of uppercase, lowercase, digit, and special characters) are unchanged. There is no security bug being fixed here.

Lower-prioritydecompress wbits- update changelog update docs command on "dan" boardsby odudex · f82e4279 · Sep 22, 2025 · 2 filesMessage 65 · AdequateInformational 15Details
Commit message · odudex

decompress wbits- update changelog
update docs command on "dan" boards

65/100 · AdequateMessage clarity
✓ Specific, descriptive subject✓ Names a concrete action or component✓ Provides an explanatory body
Why it was queued
documentation-only discount
AI analysis · Informational 15/100

This commit only updates the changelog and installation documentation. It does not change any executable code, cryptographic parameters, or security behavior. The changelog mentions a prior deflate decompression window-size change (wbits=10) to match a specification, but the actual code change is not present in this diff. The documentation change simply corrects the example device folder name used with a flashing tool.

Security candidateMaixpy deflateIO: Change decompress wbits to 10by odudex · cfda040b · Sep 22, 2025 · 1 fileMessage 45 · ThinInformational 24Details
Commit message · odudex

Maixpy deflateIO: Change decompress wbits to 10

45/100 · ThinMessage clarity
✓ Descriptive subject✓ Names a concrete action or component! No meaningful explanatory body
Why it was queued
boot or update path
AI analysis · Informational 24/100

This commit changes a single setting (wbits from an unknown value to 10) in the MaixPy firmware's deflateIO decompression code. The wbits parameter controls the size of the compression window. Without seeing the actual diff or any vendor explanation, we cannot tell whether this fixes a security bug, improves compatibility, or is just a tuning change. The change is too small and lacks context to confidently classify as a security fix.

Security candidateTools > Device Tests > Touchscreen (#721)by Tads · 0fbdab18 · Sep 22, 2025 · 13 filesMessage 78 · AdequateInformational 18Details
Commit message · Tads

Tools > Device Tests > Touchscreen (#721)

* Tools > Device Tests > Touchscreen

* Fix simulator crash on certain computers (tip from qlrd)

78/100 · AdequateMessage clarity
✓ Descriptive subject✓ Names a concrete action or component✓ Provides an explanatory body✓ Mentions testing or verification✓ Links an issue, advisory, or supporting reference
Why it was queued
seed or entropy path
AI analysis · Informational 18/100

This commit adds a new touchscreen diagnostic tool under Tools > Device Tests and fixes a simulator crash on some computers. It also moves the definition of the PRESSED constant from the input module to a new buttons module across several files. There is no obvious security vulnerability in the changes; it reads mainly as a feature addition and minor code cleanup.

Lower-priorityAdded play btn + chinese videos to docs (#726)by Tads · b82e5a34 · Sep 22, 2025 · 2 filesMessage 53 · ThinInformational 15Details
Commit message · Tads

Added play btn + chinese videos to docs (#726)

53/100 · ThinMessage clarity
✓ Descriptive subject✓ Names a concrete action or component✓ Links an issue, advisory, or supporting reference! No meaningful explanatory body
Why it was queued
documentation-only discount
AI analysis · Informational 15/100

This commit only updates the project's documentation website. It adds a visual play button overlay on YouTube video thumbnails and adds a new 'Chinese' section with two Chinese-language tutorial videos. There is no change to the Krux application, wallet firmware, build system, or any executable code.