-
Notifications
You must be signed in to change notification settings - Fork 1.6k
Description
In #11592 @valentinfernandez1 implemented the support account type in InjectedAccountExt. The side effect of this implementation is that the non ethereum account from all the extensions are not filtered. Previously the non ethereum account was filtered in keyring.loadAll because try to add these account generate an exception but now that we're providing an explicit account type the addFromAddress doesn't raise any exception for the standard polkadot accounts.
The practical issue is that you can find some accounts listed in "My Accounts/extension" that seam legit and connected but you cannot use. The user can thinks that are valid address and transfert some funds on these accounts that doesn't have any know private key. I'm really scared by this regression because the founds moved on these accounts are lost.
I've experimented this behavior on several chains (Moonbeam, Moonriver, VFlow,...) with several extensions connected (Polkadot.js, Talisman and Subwallet).
I wasn't able to find a fix and I cannot understand in depth if the filtering due the inject extension is just a lucky side effect or something on that the code relay on.
This is the commit that generate the issue
- 'Support for Extension Ethereum Signing (Support for Extension Ethereum Signing #11592)'
4ebe82b8defb3d8d81ab99db9fd384130db5cd83 - Video example that show the issue
Console on previous version, in the last version these errors disappear.
Api.tsx_+_3_modules:236 Keyring: Unable to inject {"address":"5D9txxK9DTvgCznTjJo7q1cxAgmWa83CzHvcz8zhBtLgaLBV","meta":{"name":"ZkVerify Sudo Testnet (talisman)","source":"talisman","whenCreated":0}}
eval @ bundle.js_+_11_modules:656
loadAll @ bundle.js_+_11_modules:650
loadOnReady @ Api.tsx_+_3_modules:236
await in loadOnReady
eval @ Api.tsx_+_3_modules:394
emit @ index.js:202
emit @ Api.js_+_127_modules:5647
#onProviderConnect @ Api.js_+_127_modules:6859
await in #onProviderConnect
eval @ Api.js_+_127_modules:6522
emit @ index.js:201
#emit @ index.js_+_1_modules:443
#onSocketOpen @ index.js_+_1_modules:559Understand this warning
Api.tsx_+_3_modules:236 Keyring: Unable to inject {"address":"5EhREncHsntgJaax9YQphk1xN3LxPu2Rzbz4A3g7Ut8cRXWq","meta":{"name":"Unknow Zkverify Testnet (talisman)","source":"talisman","whenCreated":1}}
eval @ bundle.js_+_11_modules:656
loadAll @ bundle.js_+_11_modules:650
loadOnReady @ Api.tsx_+_3_modules:236
await in loadOnReady
eval @ Api.tsx_+_3_modules:394
emit @ index.js:202
emit @ Api.js_+_127_modules:5647
#onProviderConnect @ Api.js_+_127_modules:6859
await in #onProviderConnect
eval @ Api.js_+_127_modules:6522
emit @ index.js:201
#emit @ index.js_+_1_modules:443
#onSocketOpen @ index.js_+_1_modules:559Understand this warning
...
Let mu know if I can help, Thanks