Skip to content

Conversation

@sbakhtiarov
Copy link
Contributor

@sbakhtiarov sbakhtiarov commented Feb 4, 2026

https://wearezeta.atlassian.net/browse/WPB-20235

What's new in this PR?

Issue

When User A views User B's device details (both from the same team with E2EI enabled), the UI shows:

  1. "Not activated" status in the E2EI certificate section
  2. Red error icon next to the device name in OtherUserDevicesScreen and DeviceDetailsScreen

This happens even when User B has a valid E2EI certificate.

Cause

Users A and B only have Proteus conversations, no MLS conversations. E2EI identity lookup via CoreCrypto requires an MLS group ID, so when there's no common MLS conversation, the lookup fails with StorageFailure.DataNotFound.

Previously, all failures from GetMLSClientIdentityUseCase were treated the same, resulting in mlsClientIdentity = null. The UI then displayed this as "Not activated" with an error icon, which is incorrect - the E2EI data is simply unavailable, not "not activated".

Solution

Handle the E2EINotAvailable failure case separately and hide E2EI-related UI elements when E2EI identity data cannot be retrieved due to lack of common MLS conversation.

@sonarqubecloud
Copy link

sonarqubecloud bot commented Feb 9, 2026

@sbakhtiarov sbakhtiarov force-pushed the fix/e2ei-certificate-status branch from ca31217 to ee6cfc7 Compare February 9, 2026 16:48
@sonarqubecloud
Copy link

sonarqubecloud bot commented Feb 9, 2026

@codecov
Copy link

codecov bot commented Feb 9, 2026

Codecov Report

❌ Patch coverage is 61.53846% with 5 lines in your changes missing coverage. Please review.
✅ Project coverage is 48.64%. Comparing base (9d1ef9a) to head (ee6cfc7).
⚠️ Report is 2 commits behind head on develop.

Files with missing lines Patch % Lines
...roid/ui/settings/devices/DeviceDetailsViewModel.kt 0.00% 4 Missing and 1 partial ⚠️
Additional details and impacted files
@@             Coverage Diff             @@
##           develop    #4565      +/-   ##
===========================================
- Coverage    48.65%   48.64%   -0.01%     
===========================================
  Files          576      576              
  Lines        19942    19950       +8     
  Branches      3335     3336       +1     
===========================================
+ Hits          9702     9705       +3     
- Misses        9214     9218       +4     
- Partials      1026     1027       +1     
Files with missing lines Coverage Δ
...i/home/newconversation/NewConversationViewModel.kt 69.54% <100.00%> (+0.35%) ⬆️
...id/ui/settings/devices/model/DeviceDetailsState.kt 100.00% <100.00%> (ø)
...roid/ui/settings/devices/DeviceDetailsViewModel.kt 68.42% <0.00%> (-2.68%) ⬇️

Continue to review full report in Codecov by Sentry.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update dd15ef0...ee6cfc7. Read the comment docs.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

@sbakhtiarov sbakhtiarov added this pull request to the merge queue Feb 9, 2026
Merged via the queue into develop with commit 1092a3c Feb 9, 2026
23 of 26 checks passed
@sbakhtiarov sbakhtiarov deleted the fix/e2ei-certificate-status branch February 9, 2026 17:48
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants