Repository navigation
fix: retain newer outgoing delivery status from history - #259
Conversation
|
Warning Review limit reachedYou've used all free OSS reviews for now. Wait for the free limit to reset to keep reviewing this public repository. Next included review available in 51 minutes. View limit details
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
|
@codex review |
Codex Review SummaryThis comment shows the latest Codex review activity on this pull request.
ℹ️ About Codex in GitHubYour team has set up Codex to review pull requests in this repo. Reviews are triggered when you
Codex reacts with 👀 while any review is running, comments if it has suggestions, and reacts with 👍 once all reviews finish with no findings. |
|
Codex Review: Didn't find any major issues. 🚀 Reviewed commit: ℹ️ About Codex in GitHubYour team has set up Codex to review pull requests in this repo. Reviews are triggered when you
If Codex has suggestions, it will comment; otherwise it will react with 👍. Codex can also answer questions or update the PR. Try commenting "@codex address that feedback". |
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: 6f0ce42f51
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
[Medium impact] The PR appears safe to merge; no actionable issues were found.
|
Dismissed because a newer commit was pushed; Greptile will re-review the current head.
An outgoing message already stored as server-acknowledged ignores a later history copy carrying explicit delivery/read/played status. It therefore keeps one tick after reopening even though that history supplied stronger evidence.
Advance successful outgoing status after account/chat/sender identity resolution, independently of stale history content. The insertion helper now distinguishes explicit
WebMessageInfohistory status from placeholder defaults, so an undecryptable own-message fanout cannot promote an existing send. Preserve live content, terminal failures, revoked rows and newer states. Server ACK alone remains Sent; this does not establish the cause of an incident without receipt/history evidence.Validation on
2379295: 55 focused store tests passed (6 delivery/reopen/provenance, 7 history, 29 receipt and 13 message/placeholder tests); one existing history benchmark ignored. The newer-history and PN/LID regressions failed before the fix, while ordinary delivery → file-backed DB reopen already passed. The own-placeholder non-promotion regression also failed before the provenance correction. Tests cover direct/group identity, account isolation, older events, failed/incoming collisions and early unowned receipts. Chat-store all-target/all-feature clippy with-D warnings, fmt and diff checks passed. Two unchanged hydration/chat-preview tests and session/GUI lint passed on the initial PR head. Full exact-head workspace/platform validation remains with CI.All fixtures are synthetic and tests used temporary data roots. No real account, outgoing messages or receipts were exercised. No migrations, external protocol/core changes or separately pending audio follow-up changes.