Skip to content

Deploy Checklist: New Expensify 2026-04-23 #88633

@OSBotify

Description

@OSBotify

Release Version: 9.3.62-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. [CP Staging] fix: Downgrade Onyx to v3.0.45 #85767
  2. Onyx bump to v3.0.61 #85919
  3. Use a larger button for multi-select on web #88146
  4. Fix unread marker flash at chat beginning after sign-in #87518
  5. fix: RBR is not close to chevron #86646
  6. Fix Report- Something when wrong when resize to fullscreen in bar or line view of expense report #87084
  7. Mobile-Expensify submodule update to ec7d84fAdhoc Build
  8. follow up: default new WS to Control if user is in annual subscription #86301
  9. Mobile-Expensify submodule update to 9.3.61-1Adhoc Build
  10. Part 1: Remove Onyx.connect() for the key: ONYXKEYS.PERSONAL_DETAILS_LIST in src/libs/actions/Report.ts #86840
  11. [Performance] Extend dismiss-first navigation fast paths + deferred writes #87768
  12. Fix SLO on web #86416
  13. Show action badge in LHN for individual expense reports #88294
  14. feat: Add inline editing for tables on desktop #83127
  15. perf: navigate before optimistic writes in Search onSelectRow #87982
  16. Mobile-Expensify submodule update to cbc9c0eAdhoc Build
    https://github.com/Expensify/Mobile-Expensify/pull/13921
  17. [NO QA] Consolidate accounting export travel invoicing translations into workspace.common #88371
  18. Update copy from 'Reports' to 'All Reports' #88421
  19. Hide Switch to Classic button when classicRedirect nudge is over a month old #88393
  20. migrate netSuite part2 v2 #87749
  21. [NO QA] Remove NetSuite travel invoicing vendor selector #88467
  22. Fix date filter reset not persisting cleared values to Onyx #87079
  23. [NoQA] Deprecate 'Send Reassure Performance Tests to Graphite' workflow #88461
  24. [Payment due @huult] [CP Staging] Revert "Fix: Filter ineligible reports in useOutstandingReports hook" #88439
  25. Fix: Time expenses are created with tax #87993
  26. [No QA] Migrate all macOS GitHub runners to blacksmith-12vcpu-macos-latest #88475
  27. [No QA] Remove unnecessary artifact download step #88481
  28. [Payment due @Ollyws] Display recurrence count for de-duplicated sync failure messages #88008
  29. Remove test drive option from Global Create FAB menu #88208
  30. Fix crash when attendee email is undefined in getPersonalDetailByEmail #87955
  31. Mobile-Expensify submodule update to 9.3.61-2Adhoc Build
  32. [No QA] [NO QA] Docs updates for E/A#87552 Clarify payment options for non-reimbursable reports #88031
  33. [NO QA] Docs updates for E/A#87577 Update Spend over time widget visibility criteria #88030
  34. [NO QA] Docs updates for E/A#86760 Add PDF rotation to receipt help article #88027
  35. [No QA] Upgrade Ruby to 3.4.1 and fix CocoaPods on Blacksmith runners #88492
  36. Remove Onyx.connect() for the key: ONYXKEYS.STASHED_SESSION #87985
  37. fix: Wrong tax rate is used when selecting a distance rate that doesn't have a tax rate associated with it #87911
  38. docs: Update help articles for non-reimbursable expense payment #86995
  39. Fix arrow key focus wrapping on Reports page #88330
  40. [Payment due @ahmedGaber93] Bypass suggestedFollowups beta for MANAGE_TEAM + MICRO cohort #87282
  41. Preserve IOU action param in distance rate upgrade flow #88201
  42. refactor buildOptimisticAnnounceChat to use currentUserAccountID from useOnyx #87774
  43. Build full navigation state for stacked dynamic routes on refresh #87089
  44. refactor: PureReportActionItem, CardBrokenConnectionContent #88326
  45. [No QA] Update Home Overview help article for Getting started section #87572
  46. refactor: PureReportActionItem, ReportActionItemEmojiReactions #88324
  47. Remove unnecessary custom types from translations - Batch 13 #84271
  48. [NoQA] Add agent-device glue-code skill for mobile testing #87662
  49. [No QA][Sentry] Enable experimental profiling option #87560
  50. fix: Mark as unread doesn’t work with IOU report #87041
  51. [Payment due @daledah] [No QA] Fix React Compiler compliance in WorkspaceCompanyCardDetailsPage #88485
  52. Remove Onyx.connect() usage for ONYXKEYS.COLLECTION.POLICY_TAGS from changeTransactionsReport() in src/libs/actions/Transaction.ts #86517
  53. feat: add bulk duplicate report action to Reports search page #87728
  54. help site icon update #88325
  55. Hide empty custom field columns in workspace members list #88205
  56. Fix "Not here" page opening in background for Business BA payments in offline mode #87690
  57. Revert "fix: show inline member row error when workspace role update fails" #88531
  58. Limit re-renders after a merchant change while on the Search page #88417
  59. Fix stale expense report totals after offline mixed-currency moves #87238
  60. Revert "Revert "fix: show inline member row error when workspace role update fails"" #88533
  61. [NO QA] Fix types on main #88537
  62. Update README with Expensify engineer instructions #88163
  63. perf: Decompose MoneyRequestParticipantsSelector into render boundaries #88430
  64. [Odometer] Improvement to DiscardChangesConfirmation usage #87269
  65. [NoQA] Remove unused exports (batch 4) #88283
  66. [NoQA] Remove unused exports (batch 5) #88284
  67. Fix trip missing gap between two rows on a trip card #88203
  68. extract useResetIOUType hook to deduplicate tab logic #87959
  69. [NoQA] Remove unused exports (batch 6) #88285
  70. fix: prevent Concierge redirect and LHN disappearance when vacation delegate splits expense #86869
  71. Hide three-dot menu for locked bank accounts in Wallet #88254
  72. refactor updateSplitTransactionsFromSplitExpensesFlow to use isOffline from hook #88401
  73. [No QA] Report SendMoney new account creation to fraud protection backend #88064
  74. Refactor draft restoration logic #87881
  75. Mobile-Expensify submodule update to 9.3.61-3Adhoc Build
  76. Fix subscription settings UI branch for legacy Collect #88115
  77. 87517: LHN - LHN displays more items than original account after Onyx import #88149
  78. Show rules in RHP #87682
  79. [No QA] Add SmartScan troubleshooting articles and refractor close account articles #88161
  80. [No QA] Fix standalone NewDot debug builds to use debug compilation flags #88517
  81. [No QA] Auto-fix ESLint warnings, adjust max warning count #88553
  82. Fix distance receipt remaining zoomed in #88209
  83. [Domain Control] [Release 4] Create DomainSecurityGroupDetailsPage RHP with domain name #82934
  84. [No QA] perf: avoid mapping all personal details in ReportWelcomeText #88511
  85. Fix browser tab title on Spend page to show Spend instead of Search #88565
  86. Fix search content is cut off when there are filter bars #88573
  87. fix: exclude modifiedAmount NOTICE from LHN RBR for submitted reports #88230
  88. Mobile-Expensify submodule update to 9.3.61-4Adhoc Build
  89. Fix ReferralProgramCTA text tap not responsive #88274
  90. Decompose scan pr1 selectors getters #87083
  91. Fix: "Pay with personal account" does nothing in QAB expense flow #88390
  92. Block reports export for deleted expenses #88518
  93. [No QA] Change file extension #88548
  94. Add displays section in save search page #88448
  95. Show migrated user welcome modal immediately and navigate to Home on dismiss #86733
  96. fix: App blinks when Attachment error modal shows up #87848
  97. fix: Expense - Map expense is shown instead scan expense #88585
  98. [Odometer] Blob URL loss detection #86023
  99. fix: prevent overlay dismiss during in-flight RHP transitions #88367
  100. [NoQA] Remove unused exports (batch 1) #88280
  101. [NoQA] Run Claude PR reviewer when a Contributor+ approves a PR #88584
  102. Migrate SearchFiltersChatsSelector.tsx from useOptionsList to useFilteredOptions #88186
  103. [NoQA] Add the HR page Gusto card #88466
  104. [Landscape] Fix popup content is not fully shown #88191
  105. refactor getReasonAndReportActionThatHasRedBrickRoad to use isOffline from useNetwork #88343
  106. Mobile-Expensify submodule update to 9.3.62-0Adhoc Build

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

Metadata

Metadata

Type

No type
No fields configured for issues without a type.

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions