fix: e2ei identity certificate status (WPB-20235)#3840
Conversation
|
|
| Branch | fix/e2ei-certificate-status |
| Testbed | ubuntu-latest |
⚠️ WARNING: No Threshold found!Without a Threshold, no Alerts will ever be generated.
Click here to create a new Threshold
For more information, see the Threshold documentation.
To only post results if a Threshold exists, set the--ci-only-thresholdsflag.
Click to view all benchmark results
| Benchmark | Latency | microseconds (µs) |
|---|---|---|
| com.wire.kalium.benchmarks.logic.CoreLogicBenchmark.createObjectInFiles | 📈 view plot | 720.15 µs |
| com.wire.kalium.benchmarks.logic.CoreLogicBenchmark.createObjectInMemory | 📈 view plot | 502,951.41 µs |
| com.wire.kalium.benchmarks.persistence.MessagesNoPragmaTuneBenchmark.messageInsertionBenchmark | 📈 view plot | 1,351,158.98 µs |
| com.wire.kalium.benchmarks.persistence.MessagesNoPragmaTuneBenchmark.queryMessagesBenchmark | 📈 view plot | 21,191.06 µs |
Codecov Report✅ All modified and coverable lines are covered by tests. Additional details and impacted files@@ Coverage Diff @@
## develop #3840 +/- ##
===========================================
- Coverage 59.59% 59.58% -0.01%
===========================================
Files 1898 1898
Lines 59279 59282 +3
Branches 6420 6421 +1
===========================================
+ Hits 35325 35326 +1
Misses 21039 21039
- Partials 2915 2917 +2
... and 2 files with indirect coverage changes Continue to review full report in Codecov by Sentry.
🚀 New features to boost your workflow:
|



https://wearezeta.atlassian.net/browse/WPB-20235
Issue
When viewing another user's device details, the E2EI certificate status incorrectly shows "Not activated" even when the other user has a valid E2EI certificate.
Cause
The
GetMLSClientIdentityUseCasereturns a generic failure whenStorageFailure.DataNotFoundis encountered. This error occurs when there is no common MLS conversation between the current user and the user whose device is being viewed - CoreCrypto requires an MLS group to look up E2EI identities.The UI layer cannot distinguish between:
Solution
Introduced a new failure type
GetMLSClientIdentityResult.Failure.E2EINotAvailablethat is returned specifically whenStorageFailure.DataNotFoundoccurs. This allows the UI layer to distinguish between "E2EI not activated" and "E2EI data unavailable" scenarios and handle them appropriately.