-
Notifications
You must be signed in to change notification settings - Fork 6
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
fix(proteus): prevent missing messages by using transactions [WPB-10873] #2992
Merged
vitorhugods
merged 3 commits into
release/candidate
from
fix/proteus/use-transactions-for-cryptobox
Sep 12, 2024
Merged
fix(proteus): prevent missing messages by using transactions [WPB-10873] #2992
vitorhugods
merged 3 commits into
release/candidate
from
fix/proteus/use-transactions-for-cryptobox
Sep 12, 2024
Conversation
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Some clients reported missing messages. We found that it is not that hard to kill the app by swiping it away between decryption and DB insertion. CoreCrypto doesn't support transactions yet. So we're only tackling CryptoBox at the moment, but the API changes are adapting CoreCrypto for the future as well. By not saving the session before inserting the messages into the DB, we can try to process this event again and recover this message.
vitorhugods
requested review from
a team,
typfel,
alexandreferris,
borichellow,
ohassine and
saleniuk
and removed request for
a team
September 4, 2024 11:24
echoes-hq
bot
added
the
echoes: unplanned
Any work item that isn’t part of the product or technical roadmap.
label
Sep 4, 2024
JS Cryptobox doesn't have it. iOS uses CoreCrypto
Datadog ReportBranch report: ✅ 0 Failed, 3088 Passed, 107 Skipped, 12.08s Total Time |
It seems that CryptoBox has static data across instances on JVM, so it can't be tested there either
Quality Gate passedIssues Measures |
MohamadJaara
approved these changes
Sep 4, 2024
borichellow
approved these changes
Sep 11, 2024
6 tasks
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Labels
echoes: unplanned
Any work item that isn’t part of the product or technical roadmap.
👕 size: L
type: bug / fix 🐞
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
PR Submission Checklist for internal contributors
The PR Title
SQPIT-764
The PR Description
What's new in this PR?
Issues
Some clients reported missing messages.
We found that it is not that hard to kill the app by swiping it away between decryption and DB insertion.
Solutions
By not saving the session before inserting the messages into the DB, we can try to process this event again and recover this message.
Changed the API so instead of returning ByteArray, the Proteus clients will accept a lambda to process the output.
After allowing processing the output, the Proteus clients will persist the session.
CoreCrypto (that doesn't support saving session later) will decrypt and call the lambda normally.
Testing
Test Coverage
PR Post Merge Checklist for internal contributors
References
feat(conversation-list): Sort conversations by most emojis in the title #SQPIT-764
.