Skip to content

Contributions


Pull requests recorded during the audit

Statuses were rechecked against GitHub on August 16, 2026. PR #911 is marked complete for the programme; its upstream merge is still pending in the live GitHub record.

PR Title Status Week Relationship to audit
#853 flash_success() method Merged Week 0 Pre-program contribution, not an audit finding
#879 Improve default theme contrast Merged Week 5 Direct contrast finding
#894 Add Home Settings shortcut Closed Week 7 Review evidence for navigation finding N2
#811 Add QR scanning to text keypads Open Draft Week 10 Separate keypad-design collaboration, not an audit finding
#909 Simplify generated mnemonic actions Integrated; PR closed Week 10 Selected implementation for navigation finding N3
#911 Show units and ranges for numeric settings Complete; merge pending Week 11 Second audit-derived implementation direction
#922 Make mnemonic loading format-first Open Draft Week 12 Third audit-derived implementation direction

PR #879

PR #879 is the direct implementation result from the contrast audit. It fixed the clean Light-theme, network-label, and CypherPink frame cases. It also added tests for text, status, frame, and network-colour contrast.

The final patch preserved the Amigo info-panel override after a device test showed that simply removing it made visibility worse. Amigo info-panel contrast therefore remains a hardware-gated audit finding rather than a fix claimed by the merged PR.

PR #894 and issue #790

PR #894 tested a narrow Home Settings entry exposing Printer and Encryption. Review identified an important product cost: both settings are already available before wallet loading, while a Home row would consume attention on every wallet visit.

The PR is closed and issue #790 remains open. The audit uses this review as evidence that screen fit alone does not justify a permanent choice.

PR #909 and issue #829

Maintainer review selected the wallet-summary hierarchy as the smallest useful implementation from the corrected navigation audit. PR #909 changed the summary after generating a mnemonic to show Continue and Wallet Options. Passphrase and Customize move into the nested options menu. Loading an existing mnemonic keeps the current action menu.

The work addressed issue #829, which GitHub closed on August 2. Code, translation, simulator, CI, and TZT checks passed. Review prompted a cleaner separation of feature, test, translation, and documentation commits, followed by a dedicated generated-mnemonic sequence and new documentation captures.

Review then questioned whether familiar wallet wording should be retained and whether both flows should share the same hierarchy. The generated flow remains Continue and Wallet Options; loading an existing mnemonic keeps its current menu.

Maintainers integrated the work after rebasing it onto develop on July 27. The GitHub PR record is closed rather than marked as merged because of that route. A maintainer follow-up commit then extracted the duplicated wallet-information menu code into a shared helper.

PR #911 numeric-setting context

PR #911 implements the second audit-derived direction. Screensaver Time, Shutdown Time, and Buttons Debounce show units and accepted ranges in the existing numeric editor. A review follow-up also adds range-only context to Touch Threshold.

The header keeps the full context when it fits, then falls back to the value and unit or the raw value before long input can wrap into the M5StickV keypad. Stored values, validation, defaults, input behaviour, and keypad geometry are unchanged.

The first review round also led to simpler focused test assertions. Simulator checks covered M5StickV, TZT, and Amigo, and the physical TZT smoke test passed. qlrd gave the change an informal LGTM on the first re-review, then requested a rebase onto current develop before further checks. The branch was rebased on August 12 without changing its feature, test, and documentation scope.

The implementation, review follow-up, and verification are complete for the programme. In the August 16 live check, the PR is still open, non-Draft, clean, and mergeable at a3f32a01; all replacement checks pass and upstream merge is planned for the same day.

Draft PR #922 format-first mnemonic loading

Draft PR #922 implements the third audit-derived direction. Load Mnemonic starts with QR Code, Words, From Storage, and Other Formats. The six specialist formats remain available in one flat submenu with the existing two-level Back behaviour.

The change reuses the current handlers and does not alter decoders, storage, keypads, validation, cryptographic behaviour, public APIs, or the settings schema. The common QR Code and Words paths are shorter, while specialist formats move one level deeper. The PR remains a Draft so maintainers can review that information-architecture trade-off. The design reference records the proposed hierarchy and device layouts.

Simulator acceptance covered TZT, M5StickV, and Amigo, and physical TZT touch and button checks passed. All 11 translations were checked against the M5StickV's wrapping rules. Four locales wrap cleanly without clipping or paging: es-MX, ko-KR, pt-BR, and tr-TR.

Translation review exposed a hard-coded Other Formats label. The follow-up restored its existing translation key, added regression coverage, and refreshed the locale captures. A later documentation review restored the guide's existing paragraph style and fixed two punctuation details. The Draft is open, clean, and mergeable at 993acc65, and all current-head checks pass.

Draft PR #811 design collaboration

PR #811 is separate from the audit-derived directions. The collaboration moved QR scanning out of a separate Type/Scan choice and into the shared text keypad. The action sits on the final special-character page, preserving the 5x6 grid and key size. It asks before replacing existing text, returns scanned content to the editable buffer, and restores the old value after cancellation or failure.

All four implementation commits credit Naman Gupta as a co-author for the layout, interaction, and QR-glyph design. The PR is Draft and remains under review, so it is not counted as a completed audit implementation.

On August 11, the PR author reported follow-up fixes that reject binary payloads across the keypad scan paths, generate the QR glyph from the BDF font sources, and prevent the Overwrite prompt from drawing over the keypad. The author also reported building and flashing the latest branch on a TZT. The corresponding baked-font update still needs a decision in the separate MaixPy repository, so the integration remains under review. The August 16 live record is an open, mergeable Draft at c21409a8.

Overlapping work

These open items overlap areas recorded by the navigation audit.

Item State Audit relevance
#771 Open PR; conflicting Menu context and visual overlap
#797 Open PR; mergeable Touch and swipe behaviour
#806 Open PR; mergeable Exit-prompt context overlaps N4
#829 Closed issue; PR #909 work integrated Wallet-summary wording overlaps N3
#839 Open Draft; conflicting Stackbit camera format overlaps N5
#862 Open PR; approved Stackbit vertical input overlaps N5