🍒 Cherry pick PR #91932 to staging 🍒#91997
Conversation
(cherry picked from commit 15680ed) (cherry-picked to staging by lakchote)
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: be31b42e26
ℹ️ 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".
| { | ||
| "name": "new.expensify", | ||
| "version": "9.3.88-1", | ||
| "version": "9.3.88-2", |
There was a problem hiding this comment.
Include the actual cherry-picked fix
This release bump creates 9.3.88-2, but the commit does not include any of the App code from PR #91932; the diff only changes versions and the Mobile-Expensify submodule pointer. I checked the parent of this commit, and the production guard for self-DM splits is still absent from the affected App files (for example src/libs/actions/SplitExpenses.ts and the secondary-action call sites), so merging this would publish a new staging build that still lacks the intended fix. Please reapply the cherry-pick changes from PR #91932 before bumping the version.
Useful? React with 👍 / 👎.
…or-selfDM-splits [CP Staging] Add production guard for selfDM splits (cherry picked from commit f20b3d5) (cherry-picked to staging by lakchote)
Reviewer Checklist
Screenshots/VideosAndroid: HybridAppAndroid: mWeb ChromeiOS: HybridAppiOS: mWeb SafariMacOS: Chrome / Safari |
|
🚀 Cherry-picked to staging by https://github.com/lakchote in version: 9.3.88-2 🚀
Bundle Size Analysis (Sentry): |
Help site review for E/A#91997No help site changes are required for this PR. Why:
If/when splits-in-selfDM are fully enabled for production users, the help article should be updated at that point to describe the selfDM experience — but that change belongs with the rollout PR, not with this guard. @lakchote, no draft help site PR was opened since no changes are needed. Let me know if you'd like me to draft documentation in anticipation of the production rollout instead. |
|
🚀 Deployed to production by https://github.com/mountiny in version: 9.3.88-2 🚀
|
🍒 Cherry pick #91932 to staging 🍒
This PR had conflicts when we tried to cherry-pick it to staging. You'll need to manually perform the cherry-pick, using the following steps:
Then manually resolve conflicts, and commit the change with
git cherry-pick --continue. Lastly, please run:This last part is important. It will help us keep track of who triggered this CP, and will ensure that version bumps are tracked correctly. Once all that's done, push your changes with
git push origin cherry-pick-staging-91932-26587539527-1, and then open this PR for review.Note that you must test this PR, and both the author and reviewer checklist should be completed, just as if you were merging the PR to main.
Important
This PR should ideally be merged by a member of the mobile-deployers team. If it is merged by someone who is not a deployer, the staging deploy triggered by the merge will fail and will need to be manually re-triggered (not just retried) via the deploy workflow.
Pro-tip: If this PR appears to have conflicts against the staging base, it means that the version on staging has been updated. The easiest thing to do if you see this is to close the PR and re-run the CP.
Test with production env set up in dev environment, the Split option is hidden in selfDM:
Screen.Recording.2026-05-28.at.19.33.10.mov
Test with development env set up in dev environment, the Split option is present in selfDM:
Screen.Recording.2026-05-28.at.19.34.45.mov
PR Author Checklist
### Fixed Issuessection aboveTestssectionOffline stepssectionQA stepssectiontoggleReportand notonIconClick)myBool && <MyComponent />.src/languages/*files and using the translation methodWaiting for Copylabel for a copy review on the original GH to get the correct copy.STYLE.md) were followedAvatar, I verified the components usingAvatarare working as expected)/** comment above it */thisproperly so there are no scoping issues (i.e. foronClick={this.submit}the methodthis.submitshould be bound tothisin the constructor)thisare necessary to be bound (i.e. avoidthis.submit = this.submit.bind(this);ifthis.submitis never passed to a component event handler likeonClick)StyleUtils.getBackgroundAndBorderStyle(themeColors.componentBG))Avataris modified, I verified thatAvataris working as expected in all cases)ScrollViewcomponent to make it scrollable when more elements are added to the page.mainbranch was merged into this PR after a review, I tested again and verified the outcome was still expected according to theTeststeps.