Repository navigation
Deploy Checklist: New Expensify 2026-10-14 #103983
Copy link
Copy link
Closed
Labels
DailyKSv2KSv2StagingDeployCash🔐 LockCashDeploys 🔐Prevent new code from being deployed to stagingPrevent new code from being deployed to staging
Description
Release Version: 9.5.9-4
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:
- Show balance and remaining limit for Plaid company card feeds #94096
- Display user-friendly error messages for CTB settlement account selection failure #97737
- Make director signer-info chat notification copy actionable #98625
- Keep Payer row visible on Workflows after disconnecting bank account #99278
- Add the join-workspace onboarding intent and Concierge follow up tasks #99833
- Skip members pending deletion when building approval workflows #99988
- [No QA] Docs updates for E/A#99025 move travel billing settlements toggle to export page #100341
- refactor: thread hasCompletedGuidedSetupFlow through navigateToConciergeChat #100613
- feat: Add count and spend total selectors to the Spend footer #100674
- Prevent resubmission until report violations are acknowledged #101662
- Fix multi-message copy on desktop web chat rows. #102143
- Consolidate integration to one Connection screen #102265
- [Part 2.5] Remove Onyx.connect(ONYXKEYS.SESSION) in ReportActionsUtils: thread currentUserAccountID through isWhisperActionTargetedToOthers #102385
- refactor: remove allPolicies read from canMergeReports #102402
- Roll back optimistic split expenses when the split request fails #102414
- [No QA] Docs updates for E/A#101150 Describe group columns in grouped Current view CSV exports #102462
- Show an error above the Assign button when company card assignment fails #102693
- Keep the Concierge thread row visible while Concierge is thinking #102732
- Add page navigation to multi-page PDF receipts #102776
- Wait for the app to be active before requesting iOS Always location permission #102929
- Remove getReportTransactions callers' reliance on the deprecated default in prepareRejectMoneyRequestData (Part 6) #102940
- [Payment due @Krishna2323] [No QA] Bump socket.io-parser to 4.2.7 #103001
- [Payment due @Krishna2323] [No QA] Override serialize-javascript to 7.1.2 to fix Dependabot alerts #103016
- [No QA] Deprecate legacy non-composable
MenuItem#103034 - Allow resubmitting the non-USD bank account confirmation after an error #103123
- Allow changing the workspace on the confirmation page when scanning from the camera button #103130
- Send individual Per Diem rate updates #103229
- Limit calendar year and month navigation to minDate and maxDate #103246
- Add an audit trail for receipt additions #103279
- Show the invite Approver row on Dynamic External Workflow workspaces #103300
- Fix Category list shows excess space #103303
- Refactor Duplicate lib to remove onyx allTransactions subscription #103306
- ReportActionAvatars decomposition - RoomAvatar decomposition #103308
- [No QA] Add onDebouncedValueChange option to useDebouncedState #103318
- Refactor buildRetryPayload to remove currentUser Onyx subscription #103446
- Migrate tap and fling gestures to Gesture Handler 3 hooks #103454
- terminate responder on 'select' when text is actually selected #103460
- Extract useSignedMagnitudeEditingController and expand NumericField test suite #103474
- [No QA] Add a Cloudflare Worker that serves the web build with Workers Static Assets #103501
- Return to the intent list from work email Back after a refresh #103532
- Clear the merge-blocked onboarding flag when choosing Join Workspace #103537
- Fix Onboarding modal does not appear until clearing cache #103550
- Announce "Your review is required" on expense form rows in an error state #103573
- Keep the search router open when the window is resized #103577
- [NoQA] Fix iOS crash when RNS pushes the same view controller twice #103603
- Keep bulk actions available for expenses with a missing or unloaded IOU action #103668
- Add retake photo option for native #103685
- [No QA] [Wise] [Batch 2/4] Add the remaining DynamicForm field types and lone-field pages #103718
- [Insights] Support multiple series in chart data #103754
- [Payment due @ZhenjaHorbach] [No QA] Override tinypool to 2.1.2 to patch Dependabot alerts #103756
- [Performance] Wide pre-mount 3/5: reveal through the root router #103765
- Go straight to the Concierge step when copying workspace settings offline #103812
- [Refactor] Move PolicyUtils custom unit and tax helpers into customUnits.ts and tax.ts #103820
- Show the server error when adding a contact method fails #103832
- Block browser back from leaving onboarding after React Navigation bump #103837
- [No QA] Docs updates for E/A#97958 Mention cash back rows in Expensify Card reconciliation #103849
- [No QA] Update How-to-Delete-Expenses.md #103854
- [No QA]Update Expense-and-Report-Actions.md #103857
- [Payment due @ZhenjaHorbach] [No QA] [Wise] [Batch 3/4] Add the DynamicForm multi-page flow and confirmation page #103870
- Allow sorting the Expensify Card table on narrow layouts #103897
- Use provider terminology for accounting selectors #103911
- [Payment due @ikevin127] [CP stag] Show the support ticket title while creation is pending #103940
- [Payment due @mkhutornyi] [CP stag] Hide surveys after support ticket reassignment #103941
- [Payment due @mkhutornyi] [CP stag] Acknowledge support survey reactions #103948
- [No QA] Fix ESLint and typecheck failures on main #103949
- [No QA] Fix missing onboarding argument in LinkTest #103971
- [Payment due @abzokhattab] Allow optional last name after joining workspace #104016
Mobile-Expensify PRs:
Internal QA:
- [Payment due @abzokhattab] Add the join-workspace onboarding intent and Concierge follow up tasks #103652 - @iwiznia
- Show backend settlement account error on Expensify Card settings #103630 - @puneetlath
- Open the exitTo route after a supportal login #103414 - @danieldoglas
Deploy Blockers:
- Onboarding modal briefly shows blank page when reselecting Join my company workspace #104001
- [Due for payment 2026-10-23] [$175] Onboarding - Error message mentions "undefined" when work email is Expensifail account #104005
- Onboarding - "Accounting" option is shown when "Accounting" tab is no longer available #104009
- Spend - Right chevron on Currency row is highlighted when hovered when the row is disabled #104010
- Onboarding - Onboarding task shows "Click Accounting" when there is no Accounting tab #104011
- Connections - URL ends with /accounting after navigating from More features #104013
- Spend - Save button does not disappear after resetting currency on total spend footer #104014
- [Due for payment 2026-10-23] [$175] Onboarding - Device back button doesn´t return to previous step on join workspace intent #104023
- Spend - Filters selected in total spend footer are not displayed while saving a search. #104026
- Connections - Back button on Import page closes RHP after refreshing the page #104029
- Reset button is not shown when different selector is selected from footer on saved search #104030
- Spend - Inconsistent behavior with Total selector when reopening saved search #104031
- Connection- Click footer link navigates to admin instead of Concierge #104032
- [Due for payment 2026-10-22] Onboarding - Join workspace intent stuck on workspace list when last name is empty #104038
- Add BA-"What type of business is it?" screen is blank, not able to add UK bank account #104056
- [Due for payment 2026-10-23] Join my company workspace - Magic code step reappears after skipping, wrong back navigation #104061
- [Due for payment 2026-10-23] Onboarding - Add work email button loads infinitely after returning from magic code & readding #104062
- [Due for payment 2026-10-23] Magic code step is skipped after clicking Add work email when work email is existing account #104063
Chronologically ordered merged PRs (oldest first)
- Add the join-workspace onboarding intent and Concierge follow up tasks #99833
- Clear the merge-blocked onboarding flag when choosing Join Workspace #103537
- Return to the intent list from work email Back after a refresh #103532
- Fix Onboarding modal does not appear until clearing cache #103550
- [No QA] Docs updates for E/A#101150 Describe group columns in grouped Current view CSV exports #102462
- Block browser back from leaving onboarding after React Navigation bump #103837
- [No QA] [Wise] [Batch 2/4] Add the remaining DynamicForm field types and lone-field pages #103718
- terminate responder on 'select' when text is actually selected #103460
- Add page navigation to multi-page PDF receipts #102776
- feat: Add count and spend total selectors to the Spend footer #100674
- Show balance and remaining limit for Plaid company card feeds #94096
- [Payment due @ZhenjaHorbach] [No QA] Override tinypool to 2.1.2 to patch Dependabot alerts #103756
- [No QA] Add a Cloudflare Worker that serves the web build with Workers Static Assets #103501
- Open the exitTo route after a supportal login #103414
- Mobile-Expensify submodule update to
9.5.8-1— Adhoc Build - Extract useSignedMagnitudeEditingController and expand NumericField test suite #103474
- Prevent resubmission until report violations are acknowledged #101662
- Add an audit trail for receipt additions #103279
- Mobile-Expensify submodule update to
9.5.8-2— Adhoc Build - Consolidate integration to one Connection screen #102265
- ReportActionAvatars decomposition - RoomAvatar decomposition #103308
- Keep the Concierge thread row visible while Concierge is thinking #102732
- [NoQA] Fix iOS crash when RNS pushes the same view controller twice #103603
- [No QA] Docs updates for E/A#99025 move travel billing settlements toggle to export page #100341
- Show an error above the Assign button when company card assignment fails #102693
- Allow changing the workspace on the confirmation page when scanning from the camera button #103130
- refactor: remove allPolicies read from canMergeReports #102402
- Mobile-Expensify submodule update to
9.5.8-3— Adhoc Build - [Refactor] Move PolicyUtils custom unit and tax helpers into customUnits.ts and tax.ts #103820
- [Payment due @abzokhattab] Add the join-workspace onboarding intent and Concierge follow up tasks #103652
- [Insights] Support multiple series in chart data #103754
- Show backend settlement account error on Expensify Card settings #103630
- Limit calendar year and month navigation to minDate and maxDate #103246
- Show the server error when adding a contact method fails #103832
- [No QA] Add onDebouncedValueChange option to useDebouncedState #103318
- [No QA] Deprecate legacy non-composable
MenuItem#103034 - Migrate tap and fling gestures to Gesture Handler 3 hooks #103454
- Allow resubmitting the non-USD bank account confirmation after an error #103123
- Mobile-Expensify submodule update to
388c5ac— Adhoc Build
↳ https://github.com/Expensify/Mobile-Expensify/pull/14162 - Refactor buildRetryPayload to remove currentUser Onyx subscription #103446
- Refactor Duplicate lib to remove onyx allTransactions subscription #103306
- Go straight to the Concierge step when copying workspace settings offline #103812
- Display user-friendly error messages for CTB settlement account selection failure #97737
- Allow sorting the Expensify Card table on narrow layouts #103897
- [Payment due @Krishna2323] [No QA] Override serialize-javascript to 7.1.2 to fix Dependabot alerts #103016
- Use provider terminology for accounting selectors #103911
- [Part 2.5] Remove Onyx.connect(ONYXKEYS.SESSION) in ReportActionsUtils: thread currentUserAccountID through isWhisperActionTargetedToOthers #102385
- Fix Category list shows excess space #103303
- Mobile-Expensify submodule update to
9.5.8-4— Adhoc Build - [No QA]Update Expense-and-Report-Actions.md #103857
- [No QA] Update How-to-Delete-Expenses.md #103854
- Wait for the app to be active before requesting iOS Always location permission #102929
- Show the invite Approver row on Dynamic External Workflow workspaces #103300
- Add retake photo option for native #103685
- Roll back optimistic split expenses when the split request fails #102414
- [No QA] Docs updates for E/A#97958 Mention cash back rows in Expensify Card reconciliation #103849
- [No QA] Fix ESLint and typecheck failures on main #103949
- [Payment due @Krishna2323] [No QA] Bump socket.io-parser to 4.2.7 #103001
- Fix multi-message copy on desktop web chat rows. #102143
- Remove getReportTransactions callers' reliance on the deprecated default in prepareRejectMoneyRequestData (Part 6) #102940
- Send individual Per Diem rate updates #103229
- Keep bulk actions available for expenses with a missing or unloaded IOU action #103668
- Make director signer-info chat notification copy actionable #98625
- Keep the search router open when the window is resized #103577
- Announce "Your review is required" on expense form rows in an error state #103573
- Skip members pending deletion when building approval workflows #99988
- [Payment due @ZhenjaHorbach] [No QA] [Wise] [Batch 3/4] Add the DynamicForm multi-page flow and confirmation page #103870
- Mobile-Expensify submodule update to
9.5.8-5— Adhoc Build - [Performance] Wide pre-mount 3/5: reveal through the root router #103765
- Keep Payer row visible on Workflows after disconnecting bank account #99278
- refactor: thread hasCompletedGuidedSetupFlow through navigateToConciergeChat #100613
- [No QA] Fix missing onboarding argument in LinkTest #103971
- Mobile-Expensify submodule update to
9.5.9-0— Adhoc Build - [Payment due @abzokhattab] Allow optional last name after joining workspace #104016
- Mobile-Expensify submodule update to
9.5.9-1— f3bba47 - [Payment due @ikevin127] [CP stag] Show the support ticket title while creation is pending #103940
- Mobile-Expensify submodule update to
9.5.9-2— a2441da - [Payment due @mkhutornyi] [CP stag] Hide surveys after support ticket reassignment #103941
- Mobile-Expensify submodule update to
9.5.9-3— d79a83c - [Payment due @mkhutornyi] [CP stag] Acknowledge support survey reactions #103948
- Mobile-Expensify submodule update to
9.5.9-4— 8dc6067
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
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
DailyKSv2KSv2StagingDeployCash🔐 LockCashDeploys 🔐Prevent new code from being deployed to stagingPrevent new code from being deployed to staging
Activity
carlosmiceli commentedon Oct 14, 2026
Demoted #104001
melvin-bot commentedon Oct 14, 2026
If you are the assigned CME please investigate whether the linked PR caused a regression and leave a comment with the results.
If a regression has occurred and you are the assigned CM follow the instructions here.
If this regression could have been avoided please consider also proposing a recommendation to the PR checklist so that we can avoid it in the future.
carlosmiceli commentedon Oct 14, 2026
Demoted #104005
kavimuru commentedon Oct 14, 2026
Regression is at 77%
PRs failing:
#102265 failing with #104032
Unchecked PRs:
#97737 (comment)
#98625 android and iOS validations are pending
#99833 (comment) from the past build, okay to check it off?
#102265 - iOS validation is pending
#102940 - Android validation is pending
#103123 Android and iOS validations are pending
#103300 (comment)
#103306 web validation is pending
#103414 (comment)
#103573 (comment)
#103630 (comment)
#103812 Pending validation on all the platforms
https://github.com/Expensify/Mobile-Expensify/pull/14162 Pending validations
carlosmiceli commentedon Oct 14, 2026
Demoted #104023
carlosmiceli commentedon Oct 14, 2026
Closing #104038
kavimuru commentedon Oct 14, 2026
Regression is at 98%
PRs failing:
#102265 failing with #104032
#103306 failing with #104028
Unchecked PRs:
#97737 (comment)
#98625 iOS validations are pending
#102265 - iOS validation is pending
#99833 (comment) from the past build, okay to check it off?
#103123 Android and iOS validations are pending
#103300 (comment)
#103414 (comment)
#103573 (comment)
#103630 (comment)
https://github.com/Expensify/Mobile-Expensify/pull/14162 Pending validation on iOS
melvin-bot commentedon Oct 15, 2026
If you are the assigned CME please investigate whether the linked PR caused a regression and leave a comment with the results.
If a regression has occurred and you are the assigned CM follow the instructions here.
If this regression could have been avoided please consider also proposing a recommendation to the PR checklist so that we can avoid it in the future.
kavimuru commentedon Oct 15, 2026
Regression is completed
PRs failing:
#102265 failing with #104032
#103306 failing with #104028
#98625 failing with #104056 on iOS
#102265 - failing with #104032 on Web
#103123 failing with #104060 repro in PROD, okay to check it off?
Unchecked PRs:
#97737 (comment)
#103300 (comment)
#103414 (comment)
#103573 (comment)
#103630 (comment)
carlosmiceli commentedon Oct 15, 2026
Demoting
#104061
#104062
#104063
carlosmiceli commentedon Oct 15, 2026
Internal QA completed for #103652
danieldoglas commentedon Oct 15, 2026
Internal QA done for #103414
carlosmiceli commentedon Oct 15, 2026
Demoting #104056 (comment) - Seems like a corpay sandbox issue, only in staging.
Julesssss commentedon Oct 15, 2026
Testing for #103300 unblocked and in progress. Web passing, mobile in progress.
cristipaval commentedon Oct 15, 2026
melvin-bot commentedon Oct 18, 2026
If you are the assigned CME please investigate whether the linked PR caused a regression and leave a comment with the results.
If a regression has occurred and you are the assigned CM follow the instructions here.
If this regression could have been avoided please consider also proposing a recommendation to the PR checklist so that we can avoid it in the future.
melvin-bot commentedon Oct 18, 2026
If you are the assigned CME please investigate whether the linked PR caused a regression and leave a comment with the results.
If a regression has occurred and you are the assigned CM follow the instructions here.
If this regression could have been avoided please consider also proposing a recommendation to the PR checklist so that we can avoid it in the future.