feat(desktop): scannable QR on the connect card (v0.16.3) - #37
Merged
Conversation
connect_card now embeds a real scannable QR of the WalletConnect URI (black on a white tile so scanners read it against the dark card), alongside the copyable URI fallback. Rendered as inline SVG via qrcode's SvgPathImage factory — best-effort, falling back to URI-only on failure. Dependency: adds qrcode>=8.0 (BSD, Lincoln Loop), pinned WITHOUT the [pil] extra and used via SvgPathImage, so it pulls in no Pillow / no C extensions — pure-Python, zero transitive deps on macOS/Linux. Verified against OSV (no advisories). Verification: 4575 passed, 8 skipped; 100% line coverage (16,227 statements, 0 missing); ruff check + format clean; plugin.yaml byte-identical; tool count unchanged.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Adds a real scannable QR to the WalletConnect connect card (the last item from the desktop-UI backlog), after confirming the dependency is safe.
Change
connect_cardembeds a scannable QR of the WC URI as inline SVG (black on a white tile so wallet scanners read it against the dark card), alongside the existing copyable-URI fallback. Best-effort: falls back to URI-only if encoding fails (_qr_svgreturns"").Dependency safety (verified before adding)
qrcode>=8.0— BSD-licensed, maintained by Lincoln Loop, the de-facto standard Python QR lib.[pil]extra and used via theSvgPathImagefactory → no Pillow, no C extensions. Verified in a clean venv: onlyqrcodeinstalls, Pillow absent, SVG generates.coloramais Windows-only).Verification
ruff check+ruff formatcleanplugin.yamlbyte-identical (root +clawmes/)This closes out the desktop-UI backlog. Remaining deferred items (read-tool token links without an address+chain pair; per-toolset descriptions unsupported by the Hermes API) are documented as intentionally skipped.