[No QA] Client drops writes rejected with jsonCode 503 instead of retrying with backoff - #100918
[No QA] Client drops writes rejected with jsonCode 503 instead of retrying with backoff#100918dukenv0307 wants to merge 4 commits into
Conversation
@dmkt9 I don't think we can do it on the staging server, so you can just review my code change. I already verified it locally 👍 |
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: 94c9643f78
ℹ️ About Codex in GitHub
Codex has been enabled to automatically 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 👍.
When you sign up for Codex through ChatGPT, Codex can also answer questions or update the PR, like "@codex address that feedback".
|
@MelvinBot Are the failing unit test & ts check related to this PR? |
|
No — both failures are pre-existing breakage on Both trace to the same file, Evidence: the same two failures are hitting other unrelated open PRs right now — for example #100917 and #100908 fail Details on each failure1. A collision between two PRs that landed on
Neither PR's own CI caught it because each passed in isolation. 2. Failing assertion is I confirmed this is pre-existing but did not isolate the culprit commit. Also failing, but ignorable: These need a fix on |
@dukenv0307 Ty. I'll take a look. |
|
@dukenv0307 Should we log the failure? App/src/libs/Middleware/Logging.ts Lines 149 to 153 in 85cbfbe |
|
@codex review |
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: 85cbfbe364
ℹ️ About Codex in GitHub
Codex has been enabled to automatically 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 👍.
When you sign up for Codex through ChatGPT, Codex can also answer questions or update the PR, like "@codex address that feedback".
Reviewer Checklist
Screenshots/VideosAndroid: HybridAppAndroid: mWeb ChromeiOS: HybridAppiOS: mWeb SafariMacOS: Chrome / Safarichrome.mp4 |
dmkt9
left a comment
There was a problem hiding this comment.
The changes look good to me
mountiny
left a comment
There was a problem hiding this comment.
Thanks! @dukenv0307 can you check the failing CI please?
Explanation of Change
Throw on jsonCode 503 in processHTTPRequest so the SequentialQueue rolls back and retries with backoff instead of dropping the write and stamping the error on the message
Fixed Issues
$ #100132
PROPOSAL:
Tests
jsonCode: 503for write commandsOffline tests
QA Steps
// TODO: These must be filled out, or the issue title must include "[No QA]."
PR Author Checklist
### Fixed Issuessection aboveTestssectionOffline stepssectionQA stepssectiontoggleReportand notonIconClick)Avatar, I verified the components usingAvatarare working as expected)StyleUtils.getBackgroundAndBorderStyle(theme.componentBG))npm run compress-svg)Avataris modified, I verified thatAvataris working as expected in all cases)Designlabel and/or tagged@Expensify/designso the design team can review the changes.mainbranch was merged into this PR after a review, I tested again and verified the outcome was still expected according to theTeststeps.Screenshots/Videos
Android: Native
Android: mWeb Chrome
iOS: Native
iOS: mWeb Safari
MacOS: Chrome / Safari
Before:
Screen.Recording.2026-09-11.at.09.41.50.mov
After:
Screen.Recording.2026-09-11.at.09.42.25.mov