Conversation
CLA Assistant Lite All Contributors have signed the CLA. |
ESLint Summary View Full Report
Report generated by eslint-plus-action |
Pull Request Test Coverage Report for Build 1768545612
💛 - Coveralls |
E2E Tests Failed Failed tests:
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Looks good to me!
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thanks Mikhail!
We should probably re-evaluate why we're even throwing only a subset of errors when signing.
It's probably worthwhile if @mikheevm added some comments for this reason. |
The whole off-chain signing flow works by calling different signing methods until it finds one that works/is implemented in the wallet. Therefore, we ignore thrown errors and move to the next signing function or fall back to the on-chain approval. I also added a handler for an error when the user rejects the signing proposal in metamask because, in this situation, we don't want to continue the signing process at all. I'm not sure why we throw in the case with keystone wallet. We can add a console.log to the catch block to not swallow an error, but not |
Is it good to go, or do we want to wait for QA? |
Let's wait for QA. We agreed this morning to add it to the code freeze for Wednesday's release. |
Looks good to me. Did a bunch of different tx using the Brave wallet (that becomes MM for some reason, I think is for the onboard thing since I even uninstalled MM in brave) |
What it solves
May solve #3388, but I couldn't reproduce the issue
Fixes error thrown while signing in brave (was reported internally in Slack)
The error is only thrown when sending a native token. If you send ERC20 tokens, the error isn't thrown. There seems to be a problem with Brave wallet's EIP712 implementation.
How this PR fixes it
When signing a transaction with brave wallet, if you try to sign with a non-supported signing method (
eth_signTypedData
), brave wallet throws a custom error that is not an instance of JS built-inError
class, but one of our error checkers expects error to be an instance ofError
classHow to test it
Test signing transactions in brave wallet, both tokens and native currency
Screenshots