Skip to content

Deploy Checklist: New Expensify 2026-07-16 #96356

Closed

Description

@OSBotify

Release Version: 9.4.40-0
Compare Changes: production...staging
Mobile-Expensify Changes: https://github.com/Expensify/Mobile-Expensify/compare/production...staging

This release contains changes from the following pull requests:

Mobile-Expensify PRs:

Internal QA:

Deploy Blockers:

Chronologically ordered merged PRs (oldest first)
  1. [No QA] fix: do not save queueFlushedData on failed responses #96041
  2. Resolve OOM crash for high-traffic accounts caused by retryParams #95813
  3. Delete error only shows the updated message after opening Expensify Card #95640
  4. Prevent OOM tab reload when attaching multiple files on mWeb #93234
  5. [No QA] Skip short mentions list computation for public-domain users #96264
  6. refactor: extract queue-derived pending-request state into PendingRequests module #96040
  7. [Home Page] Empty For You section is only hidden after creating a workspace #95969
  8. restore invited login when OpenReport settles the participant without one #95594
  9. feat: add explicit terminal state to search snapshot #96043
  10. Add View transactions shortcut under Current balance #90402
  11. Make Mark as exported system message selectable on desktop web #96014
  12. [No QA] Skip empty cherry-picks instead of opening a conflict PR #95508
  13. Improve Form-SubmitButton INP #95783
  14. [Payment due @parasharrajat] Add None option to clear default custom unit category #95396
  15. [Sentry: APP-2D7] Web Notification illegal constructor crash #95341
  16. Fix: return home URL with backTo param for invalid reportID in getRoute #95637
  17. Replace getDisplayNameOrDefault with temporaryGetDisplayNameOrDefault - batch 9 #96113
  18. Don't pass the whole personal details list #96029
  19. Fix filter pill overflow by restoring the 256px max width cap #95943
  20. Pass ownerLogin as param to isViolationDismissed #3 #96022
  21. Update conciergeReportID to remove Onyx.connect - 30 #95760
  22. Remove Onyx.connect() usage for ONYXKEYS.COLLECTION.POLICY_TAGS from updateMoneyRequestAttendees #95795
  23. Remove Onyx.connect() usage for ONYXKEYS.COLLECTION.POLICY_TAGS from updateMoneyRequestBillable #95793
  24. Remove Onyx.connect() usage for ONYXKEYS.COLLECTION.POLICY_TAGS from updateMoneyRequestDistance #95800
  25. Remove Onyx.connect() usage for ONYXKEYS.COLLECTION.POLICY_TAGS from updateMoneyRequestReimbursable #95794
  26. [NoQA] Fix main CI failures: seatbelt, personalDetailsList, and PolicyMemberTest #96309
  27. Load full report when admins open a room from the Workspace Rooms list #93795
  28. [Payment due @FitseTLT] MergeTransaction: guard against requesting merge candidates with an empty transactionID #96194
  29. Mobile-Expensify submodule update to 9.4.35-2 — Adhoc Build
  30. Add Rillet integration multiple account export pages #95562
  31. [NoQA] feat: implement mergeReports() action #95182
  32. Mobile-Expensify submodule update to 9.4.35-3 — Adhoc Build
  33. [No QA] Add direct rsyslog logging to victory-chart-renderer #95102
  34. Pass hasReportActions to openReport (p2) #95796
  35. Mobile-Expensify submodule update to 9.4.35-4 — Adhoc Build
  36. Mobile-Expensify submodule update to 9.4.35-5 — Adhoc Build
  37. Removed the Onyx.connect from NextStepUtils.ts #96252
  38. Mobile-Expensify submodule update to 9.4.35-6 — Adhoc Build
  39. Shrink VirtualCFO horizontal chart's left-axis padding to fit label width #95995
  40. [No QA] Use expensify-common CLI for bumpVersion script #96333
  41. Fix distance waypoint "Not here" after Scan receipt then Track distan… #94772
  42. Fix outdated Certinia PSA bundle production install link #96340
  43. Fix overlapping category labels in VirtualCFO pie charts #95835
  44. Pin initially-selected items to the top of long search filter lists #95986
  45. Pin initially-selected items to the top of long BankAccount and Card filter lists #96031
  46. Add merchant rules spreadsheet import flow #95105
  47. Fix outdated Certinia PSA bundle production install link #96351
  48. Mobile-Expensify submodule update to 9.4.36-0 — Adhoc Build
    ↳ https://github.com/Expensify/Mobile-Expensify/pull/14015
  49. [No QA] Docs updates for E/A#93063 Add currency selection to card rules #94066
  50. [No QA] Parallelize deploy PR comments with PromisePool #96245
  51. [Onyx bump] Bump react-native-onyx from 3.0.86 to 3.0.88 #96268
  52. Mobile-Expensify submodule update to 9.4.36-2 — 22cb38e
  53. [CP Staging] Fix imported merchant rule tag corruption for X: Y (multi-level) tag format #96407
  54. Mobile-Expensify submodule update to 9.4.36-3 — 6953dfd
  55. [CP Staging, prod] Update EXPENSIFY_UK_EU_SUPPORTED_COUNTRIES #96429
  56. Mobile-Expensify submodule update to 9.4.36-4 — 4a2aaff
  57. Mobile-Expensify submodule update to 9.4.38-0 — 02ef413
  58. Mobile-Expensify submodule update to 9.4.38-1 — 3c0555a
  59. [CP staging, prod][Payment due @suneox] Key supported ECUK countries by currency, populate from onyx, alphabetize correctly #96447
  60. Mobile-Expensify submodule update to 9.4.40-0 — 9bffa9c

Deployer verifications:

  • I checked Sentry for this release version and verified that this release does not introduce any new crashes. More detailed instructions on this verification can be found here.
  • I checked Sentry for the previous release version and verified that the release did not introduce any new crashes. Because mobile deploys use a phased rollout, completing this checklist will deploy the previous release version to 100% of users. More detailed instructions on this verification can be found here.
  • I checked GitHub Status and verified there is no reported incident with Actions.
    cc @Expensify/applauseleads

Activity

  1. IuliiaHerets commented on Jul 17, 2026

    @IuliiaHerets

    Regression progress is at 80%

    PRs Failing:
    #94772 failed on Native app with #88183
    #95640 failed on iOS with #96369
    #95986 faced with #96367
    #96022 failed with #96371

    PRs Untested:
    #93795 pending validation on Android and iOS
    #95105 pending validation on Web, Android, iOS
    #95562 pending validation on Android and iOS
    #95594 pending validation on iOS
    #95793 pending validation on iOS
    #95794 pending validation on iOS
    #95795 pending validation on Web, Android, iOS
    #95796 pending validation on Web, Android, iOS
    #95800 pending validation on iOS
    #95813 pending validation on Web
    #95969 pending validation on iOS
    #95995 pending validation on Web, Android, iOS
    #96014 pending validation on iOS
    #96031 pending validation on Web, Android, iOS
    #96040 pending validation on Web, Android, iOS
    #96194 pending validation on Web, Android, iOS
    #96252 pending validation on Web, Android, iOS

  2. inimaga commented on Jul 17, 2026

    @inimaga
    Contributor

    Reassigned 95835 to Carlos

  3. kavimuru commented on Jul 17, 2026

    @kavimuru

    Regression is left with less than 2%

    PRs Failing:
    #94772 failed on Native app with #88183
    #95640 failed on iOS with #96369
    #96022 failed with #96371 repro in PROD checking it off
    #95813 failing on iOS with #96404

    PRs Untested:
    #96041 (comment)
    #95995 (comment)

  4. m-natarajan commented on Jul 17, 2026

    @m-natarajan

    @jasperhuangg @luacmartins The blockers reported for this regression haven't been updated/mentioned in the deployment checklist. Could you please look into this?

  5. luacmartins commented on Jul 17, 2026

    @luacmartins
    Contributor

    #95835 is a pass

  6. jasperhuangg commented on Jul 17, 2026

    @jasperhuangg
    Contributor

    @jasperhuangg @luacmartins The blockers reported for this regression haven't been updated/mentioned in the deployment checklist. Could you please look into this?

    @m-natarajan fixed the issue.. were there any issues where the deploy blocker label wasn't added on your end? Or was the issue only that the blockers weren't being added to the checklist?

  7. chuckdries commented on Jul 18, 2026

    @chuckdries
    Contributor

    Checked off #96429

  8. kavimuru commented on Jul 18, 2026

    @kavimuru

    Regression is completed

    PRs Failing:
    #94772 failed on Native app with #88183
    #95640 failed on iOS with #96369
    #96022 failed with #96371 repro in PROD checking it off
    #95813 failing on iOS with #96404

    PRs Untested:
    #96041 (comment)
    #95995 (comment)

  9. 3 remaining items

  10. self-assigned this
    on Jul 20, 2026
  11. yuwenmemon commented on Jul 20, 2026

    @yuwenmemon
    Contributor

    :shipit:

  12. yuwenmemon commented on Jul 20, 2026

    @yuwenmemon
    Contributor

    @jasperhuangg thanks for keeping this one moving on Friday - made today easy ❤️

  13. os-botify commented on Jul 20, 2026

    @os-botify

    This issue either has unchecked items or has not yet been marked with the :shipit: emoji of approval.
    Reopening!

  14. os-botify commented on Jul 21, 2026

    @os-botify

    This issue either has unchecked items or has not yet been marked with the :shipit: emoji of approval.
    Reopening!

  15. yuwenmemon commented on Jul 21, 2026

    @yuwenmemon
    Contributor

    :shipit:

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Type

No type

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions