[No QA] Treat existing release as success in deploy create-release retry loop - #94213
Merged
Conversation
blimpich
requested review from
Julesssss and
roryabraham
and removed request for
rojiphil
June 22, 2026 19:58
Julesssss
reviewed
Jun 25, 2026
Julesssss
previously approved these changes
Jun 25, 2026
roryabraham
approved these changes
Jun 25, 2026
Contributor
|
✋ This PR was not deployed to staging yet because QA is ongoing. It will be automatically deployed to staging after the next production release. |
Contributor
|
🚀 Deployed to staging by https://github.com/blimpich in version: 9.4.21-2 🚀
|
Contributor
|
🚀 Deployed to production by https://github.com/mountiny in version: 9.4.21-9 🚀
Bundle Size Analysis (Sentry): |
This file contains hidden or 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
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
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.
Explanation of Change
A transient
502from GitHub's API during the🚀 Create release 🚀step can create the release server-side while still returning an error to the runner. The retry loop then hits422 Release.tag_name already existson every subsequent attempt and exits non-zero, so the deploy is marked failed even though the release was created successfully.This makes the create-release retry loop treat an "already exists" outcome as success: after a failed
gh release create, it checks whether the release now exists and breaks out of the loop if so, rather than retrying until it gives up.Reported in Slack: https://expensify.slack.com/archives/C07J32337/p1782154845057649
Fixed Issues
$ #94211
PROPOSAL:
Tests
This is a change to a GitHub Actions deploy workflow; there is no in-app behavior to manually test.
Offline tests
N/A — CI deploy workflow change with no app-facing behavior.
QA Steps
N/A — CI deploy workflow change only.
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
N/A — CI deploy workflow change.
Android: mWeb Chrome
N/A — CI deploy workflow change.
iOS: Native
N/A — CI deploy workflow change.
iOS: mWeb Safari
N/A — CI deploy workflow change.
MacOS: Chrome / Safari
N/A — CI deploy workflow change.
– written by Claude on Ben's behalf