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

feat: Enable Ledger clear signing feature #28909

Merged
merged 22 commits into from
Jan 9, 2025
Merged

Conversation

dawnseeker8
Copy link
Contributor

@dawnseeker8 dawnseeker8 commented Dec 4, 2024

Description

This PR enable the clear signing feature in metamask extension.

Please refer to this feature requests for detail: https://github.com/MetaMask/accounts-planning/issues/544

Open in GitHub Codespaces

Related issues

Fixes: https://github.com/MetaMask/accounts-planning/issues/544

Manual testing steps

  • Test the clear signing using this dapp provided by ledger team: https://clear-signing-tester.vercel.app/
  • EIP712 sign message (Polygon mainnet or Ethereum mainnet).
  • Sign transaction (Linea testnet).
  • Swap in a layer 2 chain like Linea or Polygon.

Pre-merge author checklist

Pre-merge reviewer checklist

  • I've manually tested the PR (e.g. pull and build branch, run the app, test code being changed).
  • I confirm that this PR addresses all acceptance criteria described in the ticket it closes and includes the necessary testing evidence such as recordings and or screenshots.

Copy link
Contributor

github-actions bot commented Dec 4, 2024

CLA Signature Action: All authors have signed the CLA. You may need to manually re-run the blocking PR check if it doesn't pass in a few minutes.

Copy link

socket-security bot commented Dec 4, 2024

No dependency changes detected. Learn more about Socket for GitHub ↗︎

👍 No dependency changes detected in pull request

@dawnseeker8 dawnseeker8 changed the title Feat: ledger clear signing feat: Enable Ledger clear signing feature Dec 4, 2024
@dawnseeker8
Copy link
Contributor Author

@SocketSecurity ignore npm/[email protected]

@Akaryatrh Akaryatrh force-pushed the feat/ledger-clear-signing branch from 844163a to 93d3a8c Compare December 17, 2024 10:29
@Akaryatrh Akaryatrh added the needs-qa Label will automate into QA workspace label Dec 17, 2024
@Akaryatrh Akaryatrh marked this pull request as ready for review December 17, 2024 10:35
@Akaryatrh Akaryatrh requested review from a team as code owners December 17, 2024 10:35
@metamaskbot metamaskbot added the INVALID-PR-TEMPLATE PR's body doesn't match template label Dec 17, 2024
@Akaryatrh Akaryatrh force-pushed the feat/ledger-clear-signing branch from 93d3a8c to 717c864 Compare December 17, 2024 11:39
@danjm
Copy link
Contributor

danjm commented Dec 17, 2024

@metamaskbot update-policies

@metamaskbot
Copy link
Collaborator

Policy update failed. You can review the logs or retry the policy update here

@Akaryatrh Akaryatrh force-pushed the feat/ledger-clear-signing branch from ed517c9 to aec3d12 Compare December 18, 2024 08:44
@Akaryatrh
Copy link
Contributor

@metamaskbot update-policies

@metamaskbot
Copy link
Collaborator

Policies updated.
👀 Please review the diff for suspicious new powers.

🧠 Learn how: https://lavamoat.github.io/guides/policy-diff/#what-to-look-for-when-reviewing-a-policy-diff

@metamaskbot
Copy link
Collaborator

Builds ready [32e5e57]
Page Load Metrics (1700 ± 93 ms)
PlatformPageMetricMin (ms)Max (ms)Average (ms)StandardDeviation (ms)MarginOfError (ms)
ChromeHomefirstPaint35720041611336161
domContentLoaded14232055167418890
load14682094170019493
domInteractive238142199
backgroundConnect977262110
firstReactRender1781442412
getState54711126
initialActions01000
loadScripts10241515123915775
setupStore610811
uiStartup165523851966236113
Bundle size diffs [🚨 Warning! Bundle size has increased!]
  • background: 71.09 KiB (1.30%)
  • ui: 0 Bytes (0.00%)
  • common: 0 Bytes (0.00%)

@vivek-consensys
Copy link

vivek-consensys commented Dec 20, 2024

Tested on local build using Ledger Nano X and Ledger Stax. Flows tested on the clear signing test dapp include:-

  • Send ETH (Linea Sepolia)
  • Sign EIP-712 : Pemit 2 & 1inch Fusion typed messages (Polygon Mainnet)

Also, regular flows tested on test-dapp include:-

  • Personal sign
  • Sign typed data
  • Sign typed data v4
  • Sign permit
  • SIWE

@dawnseeker8
Copy link
Contributor Author

@metamaskbot update-policies

@metamaskbot
Copy link
Collaborator

Policies updated.
👀 Please review the diff for suspicious new powers.

🧠 Learn how: https://lavamoat.github.io/guides/policy-diff/#what-to-look-for-when-reviewing-a-policy-diff

@metamaskbot
Copy link
Collaborator

Builds ready [440bc2f]
Page Load Metrics (1558 ± 37 ms)
PlatformPageMetricMin (ms)Max (ms)Average (ms)StandardDeviation (ms)MarginOfError (ms)
ChromeHomefirstPaint1451172115607737
domContentLoaded1422165915316833
load1431171815587837
domInteractive22176433718
backgroundConnect871322210
firstReactRender16103382813
getState535963
initialActions01000
loadScripts1027125911266531
setupStore687142010
uiStartup16492436178316579

gantunesr

This comment was marked as off-topic.

@vivek-consensys
Copy link

LGTM. Did @vivek-consensys tests include both iOS and Android? We should also test swaps

Hey @gantunesr , this is the PR for MM extension. Mobile PR has already been merged and included in the 7.38.0 RC

@gantunesr
Copy link
Member

gantunesr commented Jan 8, 2025

Hey @gantunesr , this is the PR for MM extension. Mobile PR has already been merged and included in the 7.38.0 RC

My bad @vivek-consensys, will hide the other comment as it irrelevant. Were you able to test swaps?

Copy link
Contributor

@ccharly ccharly left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Code-wise LGTM. I haven't tested myself, but this feature has been QA'd already.

@vivek-consensys vivek-consensys added this pull request to the merge queue Jan 9, 2025
@dawnseeker8 dawnseeker8 removed this pull request from the merge queue due to a manual request Jan 9, 2025
@dawnseeker8 dawnseeker8 added this pull request to the merge queue Jan 9, 2025
@dawnseeker8 dawnseeker8 removed this pull request from the merge queue due to a manual request Jan 9, 2025
@metamaskbot
Copy link
Collaborator

Builds ready [fc9aa89]
Page Load Metrics (1656 ± 63 ms)
PlatformPageMetricMin (ms)Max (ms)Average (ms)StandardDeviation (ms)MarginOfError (ms)
ChromeHomefirstPaint27420301529392188
domContentLoaded14771934162611354
load14912027165613163
domInteractive25198574823
backgroundConnect899312914
firstReactRender16100403115
getState589172211
initialActions01000
loadScripts10791491121510249
setupStore683252612
uiStartup167726661968295142

@metamaskbot
Copy link
Collaborator

Builds ready [71ae932]
Page Load Metrics (1663 ± 90 ms)
PlatformPageMetricMin (ms)Max (ms)Average (ms)StandardDeviation (ms)MarginOfError (ms)
ChromeHomefirstPaint13682244166419192
domContentLoaded13622167163917885
load13702236166318790
domInteractive20155523718
backgroundConnect77126209
firstReactRender1586372412
getState387182211
initialActions01000
loadScripts10041678123315273
setupStore65113136
uiStartup152125481919243116

@dawnseeker8 dawnseeker8 added this pull request to the merge queue Jan 9, 2025
@github-merge-queue github-merge-queue bot removed this pull request from the merge queue due to failed status checks Jan 9, 2025
@dawnseeker8 dawnseeker8 added this pull request to the merge queue Jan 9, 2025
Merged via the queue into main with commit 2d443ff Jan 9, 2025
77 checks passed
@dawnseeker8 dawnseeker8 deleted the feat/ledger-clear-signing branch January 9, 2025 17:16
@github-actions github-actions bot locked and limited conversation to collaborators Jan 9, 2025
@metamaskbot metamaskbot added the release-12.11.0 Issue or pull request that will be included in release 12.11.0 label Jan 9, 2025
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
INVALID-PR-TEMPLATE PR's body doesn't match template QA Passed release-12.11.0 Issue or pull request that will be included in release 12.11.0 team-hardware-wallets
Projects
Archived in project
Development

Successfully merging this pull request may close these issues.

7 participants