Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[Bug]: Not observing QR progress bar as expected in RC11.11.0 #22931

Closed
plasmacorral opened this issue Feb 14, 2024 · 4 comments
Closed

[Bug]: Not observing QR progress bar as expected in RC11.11.0 #22931

plasmacorral opened this issue Feb 14, 2024 · 4 comments
Labels
hardware-qr regression-RC DEPRECATED: Please use "regresssion-RC-x.y.z" label instead regression-RC-11.11.0 release-11.11.0 Issue or pull request that will be included in release 11.11.0 Sev3-low Low severity; minimal to no impact upon users team-hardware-wallets type-bug

Comments

@plasmacorral
Copy link
Contributor

plasmacorral commented Feb 14, 2024

Describe the bug

Tested in Light and dark mode, and adding new device as well as signing and sending. Not once did I observe this progress bar in either the signature request or initial wallet binding. Firefox shows a console error when getting a signature request, but no errors appear in Chrome.

Chrome 117.0.5938.92 (no console errors observed)
&
Firefox 122.0.1 (console error below observed when trying to scan QR from hardware back to extension)
in Mac Sonoma 14.2.1
Using Keystone V3 with Firmware 1.2.6
Dist build of commit 6d34630

Expected behavior

With PR 20947 included, I was expecting to see a progress bar when scanning the signed TX of the PSD with Extension.

Screenshots/Recordings

Chrome: https://recordit.co/jF0Y7DmuTE
Firefox: https://recordit.co/lns6OUFVTs

Screenshots from signature request:

Yellow spinner on open Accessing your camera with no progress bar

Screenshot from initial pairing:
Initial pairing

Steps to reproduce

  1. Setup wallet
  2. Import QR hardware
  3. Attempt to send or sign with test dapp
  4. Scan QR from MetaMask with QR hardware
  5. Sign on QR hardware
  6. Tap Get signature
  7. Grant camera permission if needed
  8. Note that progress bar does not appear when scanning the QR from hardware back to MetaMask

Error messages or log output

e.mediaStreamIsTorchCompatible@moz-extension://42c8a8ca-a8c3-4c63-a815-41b0d0b9157d/ui-0.js:1:85743
e.prototype.decodeFromStream/d</<@moz-extension://42c8a8ca-a8c3-4c63-a815-41b0d0b9157d/ui-0.js:1:94343
i</u/</<@moz-extension://42c8a8ca-a8c3-4c63-a815-41b0d0b9157d/ui-0.js:1:84245
i</u/<@moz-extension://42c8a8ca-a8c3-4c63-a815-41b0d0b9157d/ui-0.js:1:84350
a@moz-extension://42c8a8ca-a8c3-4c63-a815-41b0d0b9157d/ui-0.js:1:83064
promise callback*s@moz-extension://42c8a8ca-a8c3-4c63-a815-41b0d0b9157d/ui-0.js:1:83229
o</<@moz-extension://42c8a8ca-a8c3-4c63-a815-41b0d0b9157d/ui-0.js:1:83240
o<@moz-extension://42c8a8ca-a8c3-4c63-a815-41b0d0b9157d/ui-0.js:1:83007
e.prototype.decodeFromStream@moz-extension://42c8a8ca-a8c3-4c63-a815-41b0d0b9157d/ui-0.js:1:93226
e.prototype.decodeFromConstraints/d</<@moz-extension://42c8a8ca-a8c3-4c63-a815-41b0d0b9157d/ui-0.js:1:93048
i</u/</<@moz-extension://42c8a8ca-a8c3-4c63-a815-41b0d0b9157d/ui-0.js:1:84245
i</u/<@moz-extension://42c8a8ca-a8c3-4c63-a815-41b0d0b9157d/ui-0.js:1:84350
a@moz-extension://42c8a8ca-a8c3-4c63-a815-41b0d0b9157d/ui-0.js:1:83064
promise callback*s@moz-extension://42c8a8ca-a8c3-4c63-a815-41b0d0b9157d/ui-0.js:1:83229
o</<@moz-extension://42c8a8ca-a8c3-4c63-a815-41b0d0b9157d/ui-0.js:1:83240
o<@moz-extension://42c8a8ca-a8c3-4c63-a815-41b0d0b9157d/ui-0.js:1:83007
e.prototype.decodeFromConstraints@moz-extension://42c8a8ca-a8c3-4c63-a815-41b0d0b9157d/ui-0.js:1:92825
e.prototype.decodeFromVideoDevice/d</<@moz-extension://42c8a8ca-a8c3-4c63-a815-41b0d0b9157d/ui-0.js:1:95082
i</u/</<@moz-extension://42c8a8ca-a8c3-4c63-a815-41b0d0b9157d/ui-0.js:1:84245
i</u/<@moz-extension://42c8a8ca-a8c3-4c63-a815-41b0d0b9157d/ui-0.js:1:84350
o</<@moz-extension://42c8a8ca-a8c3-4c63-a815-41b0d0b9157d/ui-0.js:1:83262
o<@moz-extension://42c8a8ca-a8c3-4c63-a815-41b0d0b9157d/ui-0.js:1:83007
e.prototype.decodeFromVideoDevice@moz-extension://42c8a8ca-a8c3-4c63-a815-41b0d0b9157d/ui-0.js:1:94890
p/<@moz-extension://42c8a8ca-a8c3-4c63-a815-41b0d0b9157d/ui-3.js:1:388463
wl@moz-extension://42c8a8ca-a8c3-4c63-a815-41b0d0b9157d/ui-1.js:33:264532
zu@moz-extension://42c8a8ca-a8c3-4c63-a815-41b0d0b9157d/ui-1.js:33:289097
n.unstable_runWithPriority@moz-extension://42c8a8ca-a8c3-4c63-a815-41b0d0b9157d/ui-2.js:1:224240
Yi@moz-extension://42c8a8ca-a8c3-4c63-a815-41b0d0b9157d/ui-1.js:33:232192
Fu@moz-extension://42c8a8ca-a8c3-4c63-a815-41b0d0b9157d/ui-1.js:33:288853
Bu/<@moz-extension://42c8a8ca-a8c3-4c63-a815-41b0d0b9157d/ui-1.js:33:288764
D@moz-extension://42c8a8ca-a8c3-4c63-a815-41b0d0b9157d/ui-2.js:1:223623
x.port1.onmessage@moz-extension://42c8a8ca-a8c3-4c63-a815-41b0d0b9157d/ui-2.js:1:222367
EventHandlerNonNull*@moz-extension://42c8a8ca-a8c3-4c63-a815-41b0d0b9157d/ui-2.js:1:222291
setupProxy/n/e[t]@moz-extension://42c8a8ca-a8c3-4c63-a815-41b0d0b9157d/sentry-install.js:1:693
internalRequire@moz-extension://42c8a8ca-a8c3-4c63-a815-41b0d0b9157d/runtime-lavamoat.js:12900:27
requireRelative@moz-extension://42c8a8ca-a8c3-4c63-a815-41b0d0b9157d/runtime-lavamoat.js:12945:42
requireRelativeWithContext@moz-extension://42c8a8ca-a8c3-4c63-a815-41b0d0b9157d/runtime-lavamoat.js:12913:18
@moz-extension://42c8a8ca-a8c3-4c63-a815-41b0d0b9157d/ui-2.js:1:225727
setupProxy/n/e[t]@moz-extension://42c8a8ca-a8c3-4c63-a815-41b0d0b9157d/sentry-install.js:1:693
internalRequire@moz-extension://42c8a8ca-a8c3-4c63-a815-41b0d0b9157d/runtime-lavamoat.js:12900:27
requireRelative@moz-extension://42c8a8ca-a8c3-4c63-a815-41b0d0b9157d/runtime-lavamoat.js:12945:42
requireRelativeWithContext@moz-extension://42c8a8ca-a8c3-4c63-a815-41b0d0b9157d/runtime-lavamoat.js:12913:18
@moz-extension://42c8a8ca-a8c3-4c63-a815-41b0d0b9157d/ui-1.js:33:186509
setupProxy/n/e[t]@moz-extension://42c8a8ca-a8c3-4c63-a815-41b0d0b9157d/sentry-install.js:1:693
internalRequire@moz-extension://42c8a8ca-a8c3-4c63-a815-41b0d0b9157d/runtime-lavamoat.js:12900:27
requireRelative@moz-extension://42c8a8ca-a8c3-4c63-a815-41b0d0b9157d/runtime-lavamoat.js:12945:42
requireRelativeWithContext@moz-extension://42c8a8ca-a8c3-4c63-a815-41b0d0b9157d/runtime-lavamoat.js:12913:18
@moz-extension://42c8a8ca-a8c3-4c63-a815-41b0d0b9157d/ui-1.js:33:303866
setupProxy/n/e[t]@moz-extension://42c8a8ca-a8c3-4c63-a815-41b0d0b9157d/sentry-install.js:1:693
internalRequire@moz-extension://42c8a8ca-a8c3-4c63-a815-41b0d0b9157d/runtime-lavamoat.js:12900:27
requireRelative@moz-extension://42c8a8ca-a8c3-4c63-a815-41b0d0b9157d/runtime-lavamoat.js:12945:42
requireRelativeWithContext@moz-extension://42c8a8ca-a8c3-4c63-a815-41b0d0b9157d/runtime-lavamoat.js:12913:18
@moz-extension://42c8a8ca-a8c3-4c63-a815-41b0d0b9157d/ui-7.js:1:87814
setupProxy/n/e[t]@moz-extension://42c8a8ca-a8c3-4c63-a815-41b0d0b9157d/sentry-install.js:1:693
internalRequire@moz-extension://42c8a8ca-a8c3-4c63-a815-41b0d0b9157d/runtime-lavamoat.js:12900:27
requireRelative@moz-extension://42c8a8ca-a8c3-4c63-a815-41b0d0b9157d/runtime-lavamoat.js:12945:42
requireRelativeWithContext@moz-extension://42c8a8ca-a8c3-4c63-a815-41b0d0b9157d/runtime-lavamoat.js:12913:18
@moz-extension://42c8a8ca-a8c3-4c63-a815-41b0d0b9157d/ui-11.js:26:156219
setupProxy/n/e[t]@moz-extension://42c8a8ca-a8c3-4c63-a815-41b0d0b9157d/sentry-install.js:1:693
internalRequire@moz-extension://42c8a8ca-a8c3-4c63-a815-41b0d0b9157d/runtime-lavamoat.js:12900:27
runModule@moz-extension://42c8a8ca-a8c3-4c63-a815-41b0d0b9157d/runtime-lavamoat.js:13273:12
loadBundle/entryExports<@moz-extension://42c8a8ca-a8c3-4c63-a815-41b0d0b9157d/runtime-lavamoat.js:13263:14
loadBundle@moz-extension://42c8a8ca-a8c3-4c63-a815-41b0d0b9157d/runtime-lavamoat.js:13262:46
@moz-extension://42c8a8ca-a8c3-4c63-a815-41b0d0b9157d/ui-11.js:1:10
sentry-install.js:1:693
    t moz-extension://42c8a8ca-a8c3-4c63-a815-41b0d0b9157d/sentry-install.js:1
    _ moz-extension://42c8a8ca-a8c3-4c63-a815-41b0d0b9157d/sentry-install.js:1
    logError moz-extension://42c8a8ca-a8c3-4c63-a815-41b0d0b9157d/runtime-lavamoat.js:6912
    logSubErrors moz-extension://42c8a8ca-a8c3-4c63-a815-41b0d0b9157d/runtime-lavamoat.js:6833
    levelMethod moz-extension://42c8a8ca-a8c3-4c63-a815-41b0d0b9157d/runtime-lavamoat.js:6931
    newValue moz-extension://42c8a8ca-a8c3-4c63-a815-41b0d0b9157d/runtime-lavamoat.js:12462
    mediaStreamIsTorchCompatibleTrack moz-extension://42c8a8ca-a8c3-4c63-a815-41b0d0b9157d/ui-0.js:1
    mediaStreamIsTorchCompatible moz-extension://42c8a8ca-a8c3-4c63-a815-41b0d0b9157d/ui-0.js:1
    d moz-extension://42c8a8ca-a8c3-4c63-a815-41b0d0b9157d/ui-0.js:1
    u moz-extension://42c8a8ca-a8c3-4c63-a815-41b0d0b9157d/ui-0.js:1
    u moz-extension://42c8a8ca-a8c3-4c63-a815-41b0d0b9157d/ui-0.js:1
    a moz-extension://42c8a8ca-a8c3-4c63-a815-41b0d0b9157d/ui-0.js:1
    (Async: promise callback)
    s moz-extension://42c8a8ca-a8c3-4c63-a815-41b0d0b9157d/ui-0.js:1
    o moz-extension://42c8a8ca-a8c3-4c63-a815-41b0d0b9157d/ui-0.js:1
    o moz-extension://42c8a8ca-a8c3-4c63-a815-41b0d0b9157d/ui-0.js:1
    decodeFromStream moz-extension://42c8a8ca-a8c3-4c63-a815-41b0d0b9157d/ui-0.js:1
    d moz-extension://42c8a8ca-a8c3-4c63-a815-41b0d0b9157d/ui-0.js:1
    u moz-extension://42c8a8ca-a8c3-4c63-a815-41b0d0b9157d/ui-0.js:1
    u moz-extension://42c8a8ca-a8c3-4c63-a815-41b0d0b9157d/ui-0.js:1
    a moz-extension://42c8a8ca-a8c3-4c63-a815-41b0d0b9157d/ui-0.js:1
    (Async: promise callback)
    s moz-extension://42c8a8ca-a8c3-4c63-a815-41b0d0b9157d/ui-0.js:1
    o moz-extension://42c8a8ca-a8c3-4c63-a815-41b0d0b9157d/ui-0.js:1
    o moz-extension://42c8a8ca-a8c3-4c63-a815-41b0d0b9157d/ui-0.js:1
    decodeFromConstraints moz-extension://42c8a8ca-a8c3-4c63-a815-41b0d0b9157d/ui-0.js:1
    d moz-extension://42c8a8ca-a8c3-4c63-a815-41b0d0b9157d/ui-0.js:1
    u moz-extension://42c8a8ca-a8c3-4c63-a815-41b0d0b9157d/ui-0.js:1
    u moz-extension://42c8a8ca-a8c3-4c63-a815-41b0d0b9157d/ui-0.js:1
    o moz-extension://42c8a8ca-a8c3-4c63-a815-41b0d0b9157d/ui-0.js:1
    o moz-extension://42c8a8ca-a8c3-4c63-a815-41b0d0b9157d/ui-0.js:1
    decodeFromVideoDevice moz-extension://42c8a8ca-a8c3-4c63-a815-41b0d0b9157d/ui-0.js:1
    p moz-extension://42c8a8ca-a8c3-4c63-a815-41b0d0b9157d/ui-3.js:1
    wl moz-extension://42c8a8ca-a8c3-4c63-a815-41b0d0b9157d/ui-1.js:33
    zu moz-extension://42c8a8ca-a8c3-4c63-a815-41b0d0b9157d/ui-1.js:33
    unstable_runWithPriority moz-extension://42c8a8ca-a8c3-4c63-a815-41b0d0b9157d/ui-2.js:1
    Yi moz-extension://42c8a8ca-a8c3-4c63-a815-41b0d0b9157d/ui-1.js:33
    Fu moz-extension://42c8a8ca-a8c3-4c63-a815-41b0d0b9157d/ui-1.js:33
    Bu moz-extension://42c8a8ca-a8c3-4c63-a815-41b0d0b9157d/ui-1.js:33
    D moz-extension://42c8a8ca-a8c3-4c63-a815-41b0d0b9157d/ui-2.js:1
    onmessage moz-extension://42c8a8ca-a8c3-4c63-a815-41b0d0b9157d/ui-2.js:1
    (Async: EventHandlerNonNull)
    <anonymous> moz-extension://42c8a8ca-a8c3-4c63-a815-41b0d0b9157d/ui-2.js:1
    t moz-extension://42c8a8ca-a8c3-4c63-a815-41b0d0b9157d/sentry-install.js:1
    internalRequire moz-extension://42c8a8ca-a8c3-4c63-a815-41b0d0b9157d/runtime-lavamoat.js:12900
    requireRelative moz-extension://42c8a8ca-a8c3-4c63-a815-41b0d0b9157d/runtime-lavamoat.js:12945
    requireRelativeWithContext moz-extension://42c8a8ca-a8c3-4c63-a815-41b0d0b9157d/runtime-lavamoat.js:12913
    <anonymous> moz-extension://42c8a8ca-a8c3-4c63-a815-41b0d0b9157d/ui-2.js:1
    t moz-extension://42c8a8ca-a8c3-4c63-a815-41b0d0b9157d/sentry-install.js:1
    internalRequire moz-extension://42c8a8ca-a8c3-4c63-a815-41b0d0b9157d/runtime-lavamoat.js:12900
    requireRelative moz-extension://42c8a8ca-a8c3-4c63-a815-41b0d0b9157d/runtime-lavamoat.js:12945
    requireRelativeWithContext moz-extension://42c8a8ca-a8c3-4c63-a815-41b0d0b9157d/runtime-lavamoat.js:12913
    <anonymous> moz-extension://42c8a8ca-a8c3-4c63-a815-41b0d0b9157d/ui-1.js:33
    t moz-extension://42c8a8ca-a8c3-4c63-a815-41b0d0b9157d/sentry-install.js:1
    internalRequire moz-extension://42c8a8ca-a8c3-4c63-a815-41b0d0b9157d/runtime-lavamoat.js:12900
    requireRelative moz-extension://42c8a8ca-a8c3-4c63-a815-41b0d0b9157d/runtime-lavamoat.js:12945
    requireRelativeWithContext moz-extension://42c8a8ca-a8c3-4c63-a815-41b0d0b9157d/runtime-lavamoat.js:12913
    <anonymous> moz-extension://42c8a8ca-a8c3-4c63-a815-41b0d0b9157d/ui-1.js:33
    t moz-extension://42c8a8ca-a8c3-4c63-a815-41b0d0b9157d/sentry-install.js:1
    internalRequire moz-extension://42c8a8ca-a8c3-4c63-a815-41b0d0b9157d/runtime-lavamoat.js:12900
    requireRelative moz-extension://42c8a8ca-a8c3-4c63-a815-41b0d0b9157d/runtime-lavamoat.js:12945
    requireRelativeWithContext moz-extension://42c8a8ca-a8c3-4c63-a815-41b0d0b9157d/runtime-lavamoat.js:12913
    <anonymous> moz-extension://42c8a8ca-a8c3-4c63-a815-41b0d0b9157d/ui-7.js:1
    t moz-extension://42c8a8ca-a8c3-4c63-a815-41b0d0b9157d/sentry-install.js:1
    internalRequire moz-extension://42c8a8ca-a8c3-4c63-a815-41b0d0b9157d/runtime-lavamoat.js:12900
    requireRelative moz-extension://42c8a8ca-a8c3-4c63-a815-41b0d0b9157d/runtime-lavamoat.js:12945
    requireRelativeWithContext moz-extension://42c8a8ca-a8c3-4c63-a815-41b0d0b9157d/runtime-lavamoat.js:12913
    <anonymous> moz-extension://42c8a8ca-a8c3-4c63-a815-41b0d0b9157d/ui-11.js:26
    t moz-extension://42c8a8ca-a8c3-4c63-a815-41b0d0b9157d/sentry-install.js:1
    internalRequire moz-extension://42c8a8ca-a8c3-4c63-a815-41b0d0b9157d/runtime-lavamoat.js:12900
    runModule moz-extension://42c8a8ca-a8c3-4c63-a815-41b0d0b9157d/runtime-lavamoat.js:13273
    entryExports moz-extension://42c8a8ca-a8c3-4c63-a815-41b0d0b9157d/runtime-lavamoat.js:13263
    loadBundle moz-extension://42c8a8ca-a8c3-4c63-a815-41b0d0b9157d/runtime-lavamoat.js:13262
    <anonymous> moz-extension://42c8a8ca-a8c3-4c63-a815-41b0d0b9157d/ui-11.js:1

Version

11.11.0

Build type

None

Browser

Chrome, Firefox

Operating system

MacOS

Hardware wallet

Keystone

Additional context

No response

Severity

No response

@plasmacorral plasmacorral added type-bug hardware-qr team-hardware-wallets regression-RC DEPRECATED: Please use "regresssion-RC-x.y.z" label instead release-11.11.0 Issue or pull request that will be included in release 11.11.0 Sev3-low Low severity; minimal to no impact upon users labels Feb 14, 2024
@renfengshi
Copy link
Contributor

@plasmacorral You should scan an animated QR code by changing the derivation path to "Ledger Live". The progress bar dose not appear when scan static QR code.

@plasmacorral
Copy link
Contributor Author

plasmacorral commented Feb 21, 2024

Manual testing steps
Connect a hardware wallet.
Connect your QR hardware wallet.
Scan QR code.

I see reference to large data in the PR description, but the manual testing steps outlined in PR 20947 were not sufficient. For the sake of posterity, I will go back and add these important missing steps. Going forward, please make sure to include all necessary testing steps within the PR.

I can now confirm that when the QR being scanned from Keystone back into MetaMask is animated that there is a progress bar presented. I was able to confirm this by changing the derivation path in Keystone through 3 dots>Connect Software wallet>MetaMask>3dots>change derivation path and selecting Ledger Live

@plasmacorral
Copy link
Contributor Author

QR must be animated on Keystone display to see this progress bar.

Notably, even large data like deploying an ERC721 from the test dapp that is animated when scanning into Keystone, presents a static QR when scanning the signature back into MetaMask.

@github-project-automation github-project-automation bot moved this from To be fixed to Fixed in Bugs by severity Feb 21, 2024
@plasmacorral
Copy link
Contributor Author

Reported this during retest: KeystoneHQ/keystone3-firmware#556

@plasmacorral plasmacorral closed this as not planned Won't fix, can't repro, duplicate, stale Feb 22, 2024
@github-project-automation github-project-automation bot moved this to To be fixed in Bugs by team Apr 9, 2024
@github-project-automation github-project-automation bot moved this to To be fixed in Bugs by team May 15, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
hardware-qr regression-RC DEPRECATED: Please use "regresssion-RC-x.y.z" label instead regression-RC-11.11.0 release-11.11.0 Issue or pull request that will be included in release 11.11.0 Sev3-low Low severity; minimal to no impact upon users team-hardware-wallets type-bug
Projects
Archived in project
Development

No branches or pull requests

3 participants