Device verification fails if verification events are received/decrypted out of order. #21488
Labels
A-E2EE
O-Uncommon
Most users are unlikely to come across this or unexpected workflow
S-Major
Severely degrades major functionality or product features, with no satisfactory workaround
T-Defect
Z-WTF
Steps to reproduce
This is because the verification code incorrectly assumes that it's invalid to receive an
ready
event when you have already started verification and received astart
event - but in practice, it's completely legitimate, as the events can decrypt out of order (caused by the megolm store racing with receiving the ready timeline event in this example).Currently the behaviour is to cancel the whole verification(!) rather than attempt to reorder the verification events back into a sensible order (or ignore no-ops, such as a ready arriving after a start).
Outcome
What did you expect?
Verification to be reliable
What happened instead?
Verification was flakey, and cancelled a valid verification on seeing a transient UISI (in the E2E tests)
The text was updated successfully, but these errors were encountered: