SS
← All projectsSeedSigner

SeedSigner

Stateless, air-gapped Bitcoin signing software for Raspberry Pi hardware.

BitcoinHardware walletsNormal
Repository coverage

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

168security candidates28second-pass queue223AI analyses
14commits · 30 days
40commits · 60 days
60commits · 180 days
204commits · 365 days
Backfill bands
Aug 5 → Feb 6150 seen8 candidatesComplete
Feb 6 → Jun 629 seen0 candidatesComplete
Jun 6 → Jul 60 seen0 candidatesComplete
Jul 6 → Aug 57 seen1 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.

49/100 average clarity
15Strong · 80–100
56Adequate · 60–79
92Thin · 40–59
66Opaque · 0–39
44security 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.
Nick Klockenga282324268
kdmukai141100141145
okaybro191619064
PROWLERx15101010020
alvroble12711055
FazleRabbbiferdaus172868061
biel414037
securesigner111050
Chaitanya-Keyal111057
Kshitij111033
Advait111060
S1DDHEY111045
Analysis record

Published AI watches

Last scanned 51 minutes ago

Informational 15 AI analysisMessage 73 · Adequate
SS SeedSignerSeedSigner BitcoinHardware wallets

Merge pull request #722 from Chaitanya-Keyal/psbt-huge-fee-warning

This commit adds a new user-facing safety feature: a warning screen when a Bitcoin transaction's fee is unusually high compared to the amount being sent. It does not fix a bug or vulnerability; it helps users notice potentially costly mist…

New user-facing warning for high transaction feesThreshold-based fee check computed from PSBT outputsVisual warning mark and color change on fee display
088b144eby Nick Klockenga+238−55 files
No security note in commit
Informational 20 AI analysisMessage 68 · Adequate
SS SeedSignerSeedSigner BitcoinHardware wallets

Settle is_high_fee once in parse()

This commit is a performance cleanup, not a security fix. It calculates the 'is this fee unusually high?' flag once during transaction parsing instead of recalculating it every time a screen asks. The actual fee-checking logic and warning …

No security-relevant logic change: the same fee threshold and calculation are usedPerformance optimization only: eliminates repeated transaction re-summationNo input validation, cryptography, or authorization changes
2195adfdby okaybro+32−53 files
No security note in commit
High 80 AI analysisMessage 88 · Strong
SS SeedSignerSeedSigner BitcoinHardware wallets

Merge pull request #1032 from kdmukai/psbt_output_ownership

This commit fixes a security flaw in SeedSigner, a small hardware-wallet-like device used to sign Bitcoin transactions. Previously, the software trusted the PSBT file's own claim about which 'change' outputs belong back to the user's walle…

Fixes change-output ownership verification against PSBT coordinator claimsAdds independent scriptPubKey reconstruction from seed-derived keysAdds rejection of contradictory ownership claims (claim-ours/pay-other and pay-ours/claim-other)
b225ae77by Nick Klockenga+1756−2636 files
Vendor flagged security relevance
Moderate 63 AI analysisMessage 83 · Strong
SS SeedSignerSeedSigner BitcoinHardware wallets

Count an unresolved output cosigner set as a mismatch

This commit fixes a bug in SeedSigner's PSBT parser that could misclassify a payment to a different multisig wallet as 'change' (money going back to the user's own wallet). The bug occurred when the output's cosigner list could not be reso…

Change-vs-spend misclassification in multisig PSBT parsingCosigner resolution failure previously skipped instead of treated as mismatchFingerprint matching removed in favor of derivation-path + derived-key verification
45a5eabbby kdmukai+102−462 files
Vendor flagged security relevance
Low 34 AI analysisMessage 100 · Strong
SS SeedSignerSeedSigner BitcoinHardware wallets

Compare cosigners before presuming multisig change

This commit tightens how SeedSigner decides whether a multisig payment back to the user is real 'change' or actually a payment to a different wallet. Before, if an output contained the user's key and looked like the same kind of multisig (…

Multisig change-output presumption logic changed to compare input vs output cosigner listsOptional/unauthenticated PSBT global xpubs used only as a hygiene check, not a hard security controlMismatch demotes output from change to spend rather than raising an error
ff133966by kdmukai+244−62 files
Vendor flagged security relevance
Informational 15 AI analysisMessage 58 · Thin
SS SeedSignerSeedSigner BitcoinHardware wallets

Rename is_change to is_presumed_change

This commit only renames a variable from 'is_change' to 'is_presumed_change' and updates comments/docstrings to make it clearer that multisig outputs are only suspected—not proven—to belong to the user's wallet. The code logic is unchanged…

No functional code changeVariable rename and documentation clarification onlyCommit message explicitly states 'No behavior change'
321bf14dby kdmukai+19−131 file
No security note in commit
Moderate 60 AI analysisMessage 83 · Strong
SS SeedSignerSeedSigner BitcoinHardware wallets

Match policy types exactly and refuse an unsupported one

This commit fixes a bug in how SeedSigner parses Bitcoin transaction outputs. Previously, the code guessed script types using partial string matches (like checking if 'pkh' appears anywhere in the type name) and had no fallback for unknown…

CWE-20: Improper Input Validation - substring matching allowed ambiguous/unsupported script type handlingCWE-248: Uncaught Exception - unsupported script types caused bare TypeError instead of controlled failureCWE-754: Improper Check for Unusual or Exceptional Conditions - missing else branch for unsupported policy types
a929b8b3by kdmukai+38−112 files
No security note in commit
Moderate 59 AI analysisMessage 85 · Strong
SS SeedSignerSeedSigner BitcoinHardware wallets

Set is_change only after each branch's own checks

This commit fixes a logic bug in how SeedSigner decides whether a Bitcoin transaction output is 'change' coming back to the user's wallet. Previously, the code marked an output as change as soon as it looked like it paid to the user's seed…

Logic bug: default-true flag inside a conditional arm with branches responsible for undoing itPotential UI deception: unverified output could be displayed as user changeDefensive refactor: flag set only after branch-specific verification
12c72391by kdmukai+23−71 file
Vendor flagged security relevance
High 79 AI analysisMessage 78 · Adequate
SS SeedSignerSeedSigner BitcoinHardware wallets

Verify that change outputs actually pay this seed

This commit fixes a security flaw in how SeedSigner decides whether a Bitcoin transaction's 'change' output really returns coins to the user's own wallet. Previously, the device trusted too much of what the transaction coordinator (or a ma…

Fixes insufficient verification of change output ownership in PSBT parsingAdds explicit rejection of ownership-claim/scriptPubKey contradictions treated as attacksAdds rejection of surplus derivation path entries and mixed ecdsa/taproot derivation maps
bb2471a6by kdmukai+1390−2406 files
Vendor flagged security relevance
Informational 15 AI analysisMessage 68 · Adequate
SS SeedSignerSeedSigner BitcoinHardware wallets

Clarify psbt_parser.py docstrings and comments

This commit only rewrites comments and docstrings in one file and renames a single function parameter for clarity. The commit message explicitly says 'No behavior change,' and the diff contains no changes to executable logic, control flow,…

0d374bc7by kdmukai+28−371 file
No security note in commit
High 78 AI analysisMessage 78 · Adequate
SS SeedSignerSeedSigner BitcoinHardware wallets

Merge pull request #1013 from kdmukai/psbt_parser_ownership_scan

This commit hardens SeedSigner's PSBT (Bitcoin transaction) parser so it no longer trusts a transaction's claim that an output belongs to the user's wallet. Previously, a malicious or buggy transaction could mark a payment to an attacker's…

Fixes fake-change / ownership-spoofing vulnerability in PSBT parsingAdds explicit rejection of false seed-ownership claims on outputs and inputsAdds user-facing warning screens for forged ownership claims
e4af6a7eby Nick Klockenga+994−516 files
Vendor flagged security relevance
Informational 15 AI analysisMessage 73 · Adequate
SS SeedSignerSeedSigner BitcoinHardware wallets

Merge pull request #1005 from kdmukai/psbt_parser_trust_vocabulary

This commit is a code cleanup that renames internal data fields from 'fingerprint' and 'derivation_path' to 'claimed_fingerprints' and 'claimed_derivation_paths'. It does not change how the software verifies Bitcoin transaction data or how…

No functional security change; only identifier renaming and documentationExpanded docstring explicitly distinguishes claimed_ vs verified_ dataNo new validation, no removed validation, no algorithm change
d70b322fby Nick Klockenga+62−383 files
No security note in commit
Informational 15 AI analysisMessage 28 · Opaque
SS SeedSignerSeedSigner BitcoinHardware wallets

Improve comment accuracy

This commit only rewrites comments and docstrings in a single Python file to make them more accurate. No code logic, behavior, or security properties were changed.

c7eacfbdby kdmukai+18−141 file
No security note in commit
Informational 15 AI analysisMessage 68 · Adequate
SS SeedSignerSeedSigner BitcoinHardware wallets

Pluralize change_data's claimed keys

This commit simply renames two internal data keys from singular to plural (e.g., 'claimed_fingerprint' becomes 'claimed_fingerprints') because they actually hold lists of values. It also removes a commented-out debug print line. There is n…

4f00d32fby kdmukai+14−153 files
No security note in commit
Informational 15 AI analysisMessage 28 · Opaque
SS SeedSignerSeedSigner BitcoinHardware wallets

Improve comment accuracy

This commit only changes a comment in the source code to make it more accurate. It does not modify any actual code behavior, so it has no security impact on its own.

622a9fedby kdmukai+2−11 file
No security note in commit
Informational 19 AI analysisMessage 73 · Adequate
SS SeedSignerSeedSigner BitcoinHardware wallets

Merge pull request #1002 from kdmukai/psbt_parser_derivation_cache

This commit is a performance improvement for parsing Bitcoin transaction files (PSBTs). It adds a cache so the wallet doesn't repeatedly recalculate the same cryptographic key derivations, and it avoids rebuilding the whole transaction obj…

Removed p2sh redeem-script handling path in change detectionNew derivation cache keyed by id(parent_key) with explicit rejection of fingerprint-based keying due to collision riskFingerprint recovery now uses root.my_fingerprint instead of root.child(0).fingerprint
861d6e3cby Nick Klockenga+419−352 files
No security note in commit
Informational 15 AI analysisMessage 68 · Adequate
SS SeedSignerSeedSigner BitcoinHardware wallets

Mark coordinator-supplied change data as claimed

This commit is a code cleanup and documentation change, not a security fix. It renames variables and dictionary keys from 'fingerprint' and 'derivation_path' to 'claimed_fingerprint' and 'claimed_derivation_path' to make it clearer that da…

Renames unverified coordinator-supplied metadata keys to 'claimed_' prefixAdds trust-boundary documentation and naming convention in class docstringExplicitly states no logic changes in commit message
fc21710bby kdmukai+47−273 files
No security note in commit
Informational 15 AI analysisMessage 78 · Adequate
SS SeedSignerSeedSigner BitcoinHardware wallets

Tighten the derivation cache guard tests

This commit only changes test code. It tightens an existing unit test so it actually exercises the cache read path, and improves comments and docstrings. No production code was modified, so it cannot introduce or fix a security vulnerabili…

65b1d3d9by kdmukai+22−131 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 candidateTry to pull version name from CI env varsby kdmukai · 97386fff · Dec 20, 2025 · 1 fileMessage 45 · ThinInformational 15Details
Commit message · kdmukai

Try to pull version name from CI env vars

45/100 · ThinMessage clarity
✓ Descriptive subject✓ Names a concrete action or component! No meaningful explanatory body
Why it was queued
seed or entropy pathsigning or wallet path
AI analysis · Informational 15/100

This commit changes how the SeedSigner software figures out its own version number when it cannot read version info from the local git repository. Instead of immediately giving up, it now checks whether it is running inside GitHub Actions and, if so, uses environment variables provided by GitHub to determine the version. There is no security issue visible in this change.

Security candidateRemove hard-coded VERSIONby kdmukai · 5ff2e25d · Dec 20, 2025 · 2 filesMessage 35 · OpaqueInformational 18Details
Commit message · kdmukai

Remove hard-coded VERSION

35/100 · OpaqueMessage clarity
✓ Descriptive subject! No meaningful explanatory body! Opaque security-relevant change
Why it was queued
seed or entropy pathsigning or wallet path
AI analysis · Informational 18/100

This commit removes a hard-coded version number from the SeedSigner software and instead reads the version from a generated file or git metadata. It also adds a debug print statement that exposes the device's hostname setting to standard output. There is no direct security vulnerability in the diff itself, but the change makes version reporting depend on build-time files and local git state, and it leaks an internal configuration value in logs or console output.

Security candidatebetter path handlingby kdmukai · 5eb8d08b · Dec 20, 2025 · 1 fileMessage 28 · OpaqueInformational 18Details
Commit message · kdmukai

better path handling

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

This commit is a small code-quality improvement that cleans up how a file path is constructed. It uses a standard function (os.path.normpath) to remove redundant '..' segments from a path and prints the actual resolved path instead of a hardcoded string. There is no direct evidence this fixes an exploitable security vulnerability.

Security candidateFix inadvertantly persistent test artifactsby kdmukai · d0b29d22 · Dec 20, 2025 · 2 filesMessage 55 · ThinInformational 15Details
Commit message · kdmukai

Fix inadvertantly persistent test artifacts

55/100 · ThinMessage clarity
✓ Descriptive subject✓ Names a concrete action or component✓ Mentions testing or verification! No meaningful explanatory body
Why it was queued
seed or entropy path
AI analysis · Informational 15/100

This commit only changes test files. It removes direct assignments to a shared Settings.HOSTNAME variable inside tests and replaces one with a temporary mock. This prevents test runs from accidentally leaving the simulated device hostname in an unexpected state for later tests. There is no change to the actual SeedSigner application or its security behavior.

Security candidateWrite src/version.jsonby kdmukai · 9b717624 · Dec 20, 2025 · 1 fileMessage 28 · OpaqueInformational 15Details
Commit message · kdmukai

Write src/version.json

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

This commit adds a helper that can write the project's version number and last source-edit time into a small JSON file. It is a build/infrastructure change with no apparent security relevance.

Security candidatedir handling improvementsby kdmukai · 722d9986 · Dec 20, 2025 · 1 fileMessage 35 · OpaqueInformational 15Details
Commit message · kdmukai

dir handling improvements

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

This commit is a small code cleanup in SeedSigner's version helper. It extracts a repeated file-path calculation into a shared method and updates a comment about where the version file is written. There is no security-relevant change: the same file is read/written, the same JSON parsing occurs, and no new inputs or trust decisions are introduced.

Security candidateMove version functionality to its own `helpers/version.py` fileby kdmukai · 60e11e9e · Dec 20, 2025 · 5 filesMessage 50 · ThinInformational 15Details
Commit message · kdmukai

Move version functionality to its own `helpers/version.py` file

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

This commit simply moves existing version-checking code from one file to a new dedicated helper file. It is a routine code cleanup with no visible security implications.

Lower-priorityBugfix: `Mock` persisted beyond intended test caseby kdmukai · 31d2d8bf · Dec 20, 2025 · 1 fileMessage 60 · AdequateInformational 15Details
Commit message · kdmukai

Bugfix: `Mock` persisted beyond intended test case

60/100 · AdequateMessage clarity
✓ Specific, descriptive subject✓ Names a concrete action or component✓ Mentions testing or verification! No meaningful explanatory body
AI analysis · Informational 15/100

This is a test-only cleanup. A developer fixed a unit test so that a fake version of `os.walk` is only active inside the test that needs it, instead of accidentally staying in place for later tests. It does not change any production code or affect real users.

Security candidateCleaner dir path approachby kdmukai · 28c1d928 · Dec 20, 2025 · 2 filesMessage 35 · OpaqueInformational 15Details
Commit message · kdmukai

Cleaner dir path approach

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

This commit is a small code cleanup that changes how the app finds the project root directory. It replaces a method based on the current working directory with one based on the location of the source file itself. There is no security issue visible in the change.

Lower-priorityTests fail w/root `pytest` but succeed if test file is run directly.by kdmukai · 3f0ece38 · Dec 20, 2025 · 1 fileMessage 60 · AdequateInformational 15Details
Commit message · kdmukai

Tests fail w/root `pytest` but succeed if test file is run directly.

60/100 · AdequateMessage clarity
✓ Specific, descriptive subject✓ Names a concrete action or component✓ Mentions testing or verification! No meaningful explanatory body
AI analysis · Informational 15/100

This commit adds a new test file to fix a test-suite quirk where tests passed when run individually but failed when run with the root `pytest` command. It is purely a testing/development change and does not alter any production code or security behavior.

Security candidateFix path construction to be compatible with CIby kdmukai · 483cb814 · Dec 20, 2025 · 1 fileMessage 45 · ThinInformational 17Details
Commit message · kdmukai

Fix path construction to be compatible with CI

45/100 · ThinMessage clarity
✓ Descriptive subject✓ Names a concrete action or component! No meaningful explanatory body
Why it was queued
seed or entropy pathsigning or wallet path
AI analysis · Informational 17/100

This commit changes how the app finds its own source-code folder so it works correctly in automated build environments. The old code assumed the project path always contained the literal text '/src' and used string splitting, which could fail or behave unexpectedly on some systems. The new code walks up a fixed number of parent directories. There is no direct security vulnerability here, but the old approach could have produced wrong paths in unusual environments.

AI review queuedFix "skip test" callby kdmukai · b1877e64 · Dec 20, 2025 · 1 fileMessage 38 · OpaqueInformational 15Details
Commit message · kdmukai

Fix "skip test" call

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

This commit fixes a minor test-only bug. The test file was calling a unittest method (self.skipTest) inside a pytest-based test, which does not work correctly. The change replaces it with pytest.skip and adjusts imports. It only affects how one test is skipped when there is no Git directory; it does not change any production code or security behavior.

Security candidateMinor editby kdmukai · 6229f027 · Dec 20, 2025 · 1 fileMessage 0 · OpaqueInformational 17Details
Commit message · kdmukai

Minor edit

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

This is a one-line tightening of a string comparison. The code previously accepted a tag file's commit hash if it merely began with the same characters as the git reference; now it requires an exact match. This prevents a partial-prefix match from being treated as a valid tag, which could in theory cause the wrong software version tag to be displayed or selected. There is no direct evidence this is exploitable for harm, and the commit message does not describe it as a security fix.

Security candidateCreate a 2nd screenshot for the bottom part of the main Settings menuby kdmukai · c5bff2ae · Dec 20, 2025 · 2 filesMessage 50 · ThinInformational 15Details
Commit message · kdmukai

Create a 2nd screenshot for the bottom part of the main Settings menu

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

This commit only changes how a settings menu screenshot is generated for documentation. It adds a way to pre-select a specific menu button so the screenshot can show the bottom of the settings list. There is no security-relevant change to user-facing behavior, cryptography, or private data handling.

Security candidateMatch git tag name to current commit; clean up latest src edit scanby kdmukai · 91dd5ff2 · Dec 20, 2025 · 1 fileMessage 50 · ThinInformational 15Details
Commit message · kdmukai

Match git tag name to current commit; clean up latest src edit scan

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

This commit is a minor cleanup and improvement to how the app displays its own version information. It makes the version label match an official git tag when one exists, and it tidies up a routine that checks when source files were last edited. There is no security-relevant change here.

Security candidateAdds "Version" option in Settings; pulls git branch or hash in local devby kdmukai · bb243034 · Dec 20, 2025 · 4 filesMessage 50 · ThinInformational 15Details
Commit message · kdmukai

Adds "Version" option in Settings; pulls git branch or hash in local dev

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

This commit adds a new 'Version' menu in Settings and updates the opening splash screen to show the software version. It is a straightforward user-interface feature with no security relevance.

Security candidateAdd get_last_src_editby kdmukai · 3a063334 · Dec 20, 2025 · 5 filesMessage 18 · OpaqueInformational 15Details
Commit message · kdmukai

Add get_last_src_edit

18/100 · OpaqueMessage clarity
✓ Subject identifies a change! Too few words to establish purpose! No meaningful explanatory body! Opaque security-relevant change
Why it was queued
seed or entropy pathsigning or wallet path
AI analysis · Informational 15/100

This commit is a routine UI enhancement for a Bitcoin hardware wallet project. It renames an internal method, adds a helper that finds the most recently modified source file, and displays that timestamp on the version/about screen. There is no security-relevant change.

Security candidatecomments updatesby kdmukai · 7c7ac3a6 · Dec 20, 2025 · 1 fileMessage 18 · OpaqueInformational 15Details
Commit message · kdmukai

comments updates

18/100 · OpaqueMessage clarity
✓ Subject identifies a change! Too few words to establish purpose! No meaningful explanatory body! Opaque security-relevant change
Why it was queued
seed or entropy pathsigning or wallet path
AI analysis · Informational 15/100

This commit only rewrites code comments and removes an early-return check that previously skipped git detection when running on the SeedSigner OS. The actual behavior of the version detection function is unchanged for the normal case, and no security-sensitive code is modified.

Security candidateFix inadvertantly persistent test artifactsby kdmukai · 85ab0fe3 · Dec 20, 2025 · 2 filesMessage 55 · ThinInformational 15Details
Commit message · kdmukai

Fix inadvertantly persistent test artifacts

55/100 · ThinMessage clarity
✓ Descriptive subject✓ Names a concrete action or component✓ Mentions testing or verification! No meaningful explanatory body
Why it was queued
seed or entropy path
AI analysis · Informational 15/100

This commit fixes a test-code-only cleanup issue. Some tests were directly changing a shared Settings.HOSTNAME value and leaving it changed for later tests, which could make later tests behave incorrectly. The patch removes those direct assignments in two test files and replaces one with a temporary mock that automatically restores the original value. There is no change to the actual SeedSigner application code that users run, so this does not affect real devices or user security.

AI review queuedCorrecting assert mistakeby biel · a1e47eb8 · Dec 19, 2025 · 1 fileMessage 35 · OpaqueInformational 15Details
Commit message · biel

Correcting assert mistake

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 is a one-line correction in a test file. The test was checking that a 'passphrase' setting was NOT included in parsed QR-code settings, but the intended behavior is that it SHOULD be included. The change fixes the test assertion to match the actual expected behavior. It does not change any production code and has no direct security impact on users.

Lower-priorityAdd a recognized setting for test_settingsqr_ignores_unrecognized_settingby biel · d31d819b · Dec 19, 2025 · 1 fileMessage 50 · ThinInformational 12Details
Commit message · biel

Add a recognized setting for test_settingsqr_ignores_unrecognized_setting

50/100 · ThinMessage clarity
✓ Specific, descriptive subject✓ Names a concrete action or component! No meaningful explanatory body
AI analysis · Informational 12/100

This commit only changes a test file. It adds one more unrecognized setting ('passphrase=E') to an existing test that checks the SettingsQR parser ignores unknown settings. There is no change to production code, no security fix, and no vulnerability introduced.

Lower-priorityBugfix: `Mock` persisted beyond intended test caseby kdmukai · 4a78c6f0 · Dec 18, 2025 · 1 fileMessage 60 · AdequateInformational 15Details
Commit message · kdmukai

Bugfix: `Mock` persisted beyond intended test case

60/100 · AdequateMessage clarity
✓ Specific, descriptive subject✓ Names a concrete action or component✓ Mentions testing or verification! No meaningful explanatory body
AI analysis · Informational 15/100

This is a test-only cleanup. A unit test was replacing the `os.walk` function with a fake version and not restoring it afterward, which could cause unrelated later tests to see the fake directory listing. The fix uses Python's `patch` helper that automatically undoes the change after the test. There is no effect on the actual SeedSigner application or its users.

AI review queuedChanging testsby biel · 02f9b8c9 · Dec 17, 2025 · 5 filesMessage 28 · OpaqueInformational 15Details
Commit message · biel

Changing tests

Change tests

Correcting tests

28/100 · OpaqueMessage clarity
✓ Subject identifies a change✓ Mentions testing or verification! Too few words to establish purpose! No meaningful explanatory body
Why it was queued
parser or protocol pathsecond-pass: opaque commit messagesecond-pass: security-sensitive path
AI analysis · Informational 15/100

This commit only updates test files to remove references to an obsolete 'xpub_export' setting. It does not change any production code, user-facing behavior, or security controls. There is no security issue in this patch.

Security candidateEliminate Export xpub settingsby biel · 2043918d · Dec 17, 2025 · 2 filesMessage 35 · OpaqueInformational 19Details
Commit message · biel

Eliminate Export xpub settings

35/100 · OpaqueMessage clarity
✓ Descriptive subject! No meaningful explanatory body! Opaque security-relevant change
Why it was queued
seed or entropy pathsigning or wallet path
AI analysis · Informational 19/100

This commit removes a user-facing setting that let advanced users disable the 'Export xpub' button. After the change, the Export xpub option is always shown in the seed options menu. This is a feature simplification, not a fix for a code vulnerability. It slightly reduces user-configurable privacy controls because a user can no longer hide the xpub export entry point, but it does not introduce a new exploit or change how xpub export actually works.

Security candidateRemove last "coord" Settings referencesby kdmukai · c49f644f · Dec 16, 2025 · 4 filesMessage 45 · ThinInformational 15Details
Commit message · kdmukai

Remove last "coord" Settings references

45/100 · ThinMessage clarity
✓ Descriptive subject✓ Names a concrete action or component! No meaningful explanatory body
Why it was queued
seed or entropy pathparser or protocol path
AI analysis · Informational 15/100

This commit only renames internal test variables and settings strings from 'coord' to 'xpub_qr'. It is a cleanup change with no effect on the actual wallet software users run, and no security relevance.