[Exploratory] Expense-Scan expense from Inbox briefly shows Inbox with growl before redirecting to workspac #102858
Description
If you haven’t already, check out our contributing guidelines for onboarding. To join our Slack channel, fill out this form.
Version Number: V9.5.1-1
Reproducible in staging?: Yes
Reproducible in production?: N/A - new feature, doesn't exist in prod
If this was caught during regression testing, add the test name, ID and link from BrowserStack: #100015
Email or phone of affected tester (no customers): [email protected]
Issue reported by: Applause Internal Team
Bug source: Exploratory - Significant User Experience Deterioration
Device used: Redmi note 10s android 13
App Component: Money Requests
Action Performed:
- Launch app -onboarding via track business expenses
- From inbox , create a scan expense via camera image entering description
- Note user directed to workspace chat and growl is shown
- Go to workspace settings and create new workspace
- Go to inbox
- Tap fab - create expense - scan
- Select new workspace created and create a scan expense via camera image entering description
- Note user directed to inbox briefly with growl displayed before directed to workspace chat
Expected Result:
Scan expense created from inbox must direct to workspace chat and growl must be shown.
Actual Result:
Scan expense created from inbox directed to growl in inbox briefly before directed to workspace chat.
Workaround:
Unknown
Platforms:
- Android: App
- Android: mWeb Chrome
- iOS: App
- iOS: mWeb Safari
- iOS: mWeb Chrome
- Windows: Chrome
- MacOS: Chrome Safari
Screenshots/Videos
Bug7275004_1790927481630.Screenrecorder-2026-10-02-13-09-16-239.1.mp4
Applause Internal Information
Exported by: Julia Ponikarchuk
Bug ID: 7275004
Metadata
Metadata
Assignees
Labels
Type
Projects
- StatusShow more project fieldsNo status
Activity
applause-bot commentedon Oct 2, 2026
While Applause doesn't embed attachments for this bug, here are the links for quick view:
https://platform.applause.com/services/links/v1/external/be7a3886c2dce0d46409a687a8a4fb46ef5003abdca0ad4afeefd700d01b61f2
situchan commentedon Oct 4, 2026
cc: @mhawryluk
Though, this is already happening in production. cc: @MelvinBot to confirm
The prod's
dismissModalWithReport'sdismissModalreveals whatever sits under the modal (the Inbox) and only then navigates. The growl just makes the intermediate frame legible.App/src/libs/Navigation/Navigation.ts
Lines 1052 to 1056 in 285ed64
MelvinBot commentedon Oct 4, 2026
Confirmed from code: the intermediate Inbox frame is already in production (
9.5.0-5) on narrow layouts. Confirm new expenses with a “View” toast instead of scrolling to and highlighting the row v2 didn't change the navigation. It only added the growl, which makes that frame noticeable.Evidence
The production commit is
285ed64. The submit navigation code is the same there, at the commit just before the PR, and on main (fb04231).dismissNarrowWithReportcallsdismissModalWithReport. The RHP closes first and shows the Inbox. The report is pushed only after the close animation.DEFAULThandler):navigateAfterExpenseCreatecallsdismissModalAndOpenReportInInboxTab, which then callsdismissModalWithReport. This gives the same Inbox frame on any layout.getSubmitHandler.ts,REPORT_PRE_INSERT) and the wide path for a loaded report (dismissWideToNewReport) insert the report under the RHP before closing it.Why it went unnoticed in production:
highlightTransactionOnSearchRouteIfNeededreturns early on the Inbox, so nothing appeared during the frame. On main,signalExpenseAddedGrowlfires for every global-create expense. The write is queued on the same close transition, so the growl appears while the Inbox is showing.Not confirmed: why the new workspace's chat wasn't pre-inserted in the reporter's run. The
reportPreInsert/dismissModal/defaultlabel on the submit telemetry span for that session would show which handler fired. I didn't reproduce this live, because the web dev build only runs main.view run
mhawryluk commentedon Oct 12, 2026
@GCyganek will work on this one
GCyganek commentedon Oct 13, 2026
@MelvinBot please assign me
MelvinBot commentedon Oct 13, 2026
Done. I assigned you to this issue,
GCyganek.view run