fix: prevent main app from blocking notification extension (take 3) - WPB-23511#4738
fix: prevent main app from blocking notification extension (take 3) - WPB-23511#4738johnxnguyen wants to merge 4 commits into
Conversation
Test Results – WireSystem86 tests 83 ✅ 1s ⏱️ Results for commit 7628673. ♻️ This comment has been updated with latest results. |
Test Results – WireDomain 1 files 139 suites 15s ⏱️ Results for commit 7628673. ♻️ This comment has been updated with latest results. |
Test Results – WireShareEngine15 tests 15 ✅ 0s ⏱️ Results for commit 7628673. ♻️ This comment has been updated with latest results. |
Test Results – WireSyncEngine1 106 tests 1 106 ✅ 1m 20s ⏱️ Results for commit 7628673. ♻️ This comment has been updated with latest results. |
Test Results – WireRequestStrategy965 tests 965 ✅ 43s ⏱️ Results for commit 7628673. ♻️ This comment has been updated with latest results. |
Test Results – WireDataModel2 377 tests 2 377 ✅ 4m 25s ⏱️ Results for commit 7628673. ♻️ This comment has been updated with latest results. |
|



Issue
This is another attempt to fixing an issue where Core Crypto transactions can sometimes be suspended before completing, preventing CCs internal process locking mechanism from releasing the lock, resulting in other processes being unable to perform transactions.
The previous attempt #4689 used background tasks when performing Core Crypto transactions, but it was observed that it didn't always work. On top of that, the background task API was only available in the main app target and not the extensions.
This PR builds on the previous attempt by using the expiring activity API via
ExpiringActivityManager, which is available in all app processes.For more information about the issue and testing, see #4689 .
Checklist
[WPB-XXX].UI accessibility checklist
If your PR includes UI changes, please utilize this checklist: