`New Recovery Method` modal shows on screen with unexpected timing, an outdated message and button text is a bit off?
Related to #29170 as it is same step to reproduce.
The recovery key has been changed by another EX client. Web is not reacting about it at all.
But long after, if you send a new message, suddenly there is this popup:
This appears to be triggered following an error when trying to upload key to backup
[PerSessionKeyBackupDownloader] Got current backup version from server: 25
rageshake.ts:69 [PerSessionKeyBackupDownloader] Version for which we have a decryption key (24) doesn't match the version we are backing up to (25)
Expected
I would have expected this popup to show just after the recovery was reset, instead of after sending the next message.
I would have expected to have a Yes it was me button?
Not sure to see why there is a Set up secure message? As per the text on the modal I should reset everything (including the account password?)
I noticed this is part of https://github.com/element-hq/element-meta/issues/2700 but not in the Crypto Backlog, so added to Qualification today.
We think this is a problem with key backup, not recovery.
If the user turns key backup off and on in EX, then EW does not tell the user, even though their key backup on EW is effectively not working any more.
And then later this confusing dialog pops up.
https://github.com/element-hq/element-meta/issues/2865 tracks the idea that we should sync the backup key more proactively
I would have expected this popup to show just after the recovery was reset, instead of after sending the next message.
This dialog is triggered when key backup is changed. We don't have a way of detecting when key backup changes until we try to upload a key. If recovery is reset, we could see the changes in the AccountData, but I don't think we do that yet.
I would have expected to have a
Yes it was mebutton? Not sure to see why there is aSet up secure message? As per the text on the modal I should reset everything (including the account password?)
Yeah, the buttons are confusing. "Set up secure message" allows you to enter the key backup key (which we don't show to the user any more), or the recovery key (if recovery has been set up). So the "Set up secure message" is the "Yes it was me" button, but not an intuitive one (and with extra steps). If we fix https://github.com/element-hq/element-meta/issues/2865, then we won't need to have the user enter the key.
One thing to note about this dialog is that it's triggered by a failure to upload a key to the backup, because the backup version has changed. However, that isn't the real problem, because (as long as the backup is signed by the master key) the client can just pull the public key and re-try uploading. The real problem is that the client doesn't have the matching private key, and so it can't recover from backup, nor give the key to other clients to recover from backup.
We should probably fix this (for situations where the fix to https://github.com/element-hq/element-meta/issues/2865 fails) by fixing the Encryption settings page to offer the user a way to fix the situation (https://github.com/element-hq/element-web/issues/29170#issuecomment-2988521309), and then make this dialog just bring the user to the Encryption settings page.