You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
Chat - #admins room is marked as read after completing onboarding via /concierge link #104391
Version Number: 9.5.14-0 Reproducible in staging?: Yes Reproducible in production?: No If this was caught during regression testing, add the test name, ID and link from BrowserStack:#103681 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: Mac 26.5 / Chrome App Component: Left Hand Navigation (LHN)
Action Performed:
Go to staging.new.expensify.com/concierge
Log in with new Gmail account.
Complete onboarding with Submit to my employers intent.
→ #admins room is auto marked as read.
Go to Account > Troubleshoot > Clear cache and restart > Reset and refresh.
Go back to LHN.
→ #admins room is unread after reset app.
Expected Result:
In Step 3, #admins room should remain unread as the report is not opened.
Actual Result:
In Step 3, #admins room is marked as the report is not opened.
In Step 5, #admins room is unread after reset app.
👋 Friendly reminder that deploy blockers are time-sensitive ⏱ issues! Check out the open `StagingDeployCash` deploy checklist to see the list of PRs included in this release, then work quickly to do one of the following:
Identify the pull request that introduced this issue and revert it.
Before this PR, a user who signed up through /concierge and chose "Submit to my employer" landed on Expenses with #admins open in the side panel. Opening #admins marked it read on the server, which hid an older bug. The PR now opens the Concierge chat instead, so #admins is never opened and the older bug shows. No later commits touch the PR's files, so the revert should be clean.
Creating the workspace builds #admins locally with lastReadTime equal to lastVisibleActionCreated (ReportUtils.ts:9392-9393).
Server responses to write requests are applied only when the request queue empties (SequentialQueue.ts:321). In the PR's review thread, the author found that the welcome message arrives first, and older CreateWorkspace data then overwrites #admins as "read." The server still has it unread, so it shows unread after Clear cache and restart (step 5).
Other notes
The PR merged on 2026-10-17 and is in 9.5.14-0. That matches a staging-only report.
Fix instead of revert: In navigateToSubmitWorkspaceAfterOnboarding, don't let a held /concierge link override the Submit landing. This is small and restores the intended landing. Fixing the queue-ordering bug at its source is the right long-term fix, but it is risky to cherry-pick to staging.
Demote is possible, because the bug is already in production on mobile web and fixes itself after a reload. However, desktop users on this path lose the #admins welcome, so I recommend reverting.
I didn't reproduce this live, because the web test session couldn't sign in. These findings come from the PR diff, the current code and the PR review thread.
Since this is a dupe, it seems we can close this one. But the not repro in prod part is confusing. It sounds like there's two pieces here conflicting according to melvin. I'm going to comment in the thread
Activity
applause-bot commentedon Oct 19, 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/5dea810d26a97d071527a38a7b1c2515f4770731270def57a2ed5755ba7c649a
melvin-bot commentedon Oct 19, 2026
You have been assigned to this deploy blocker because you recently merged this PR: #103681
melvin-bot commentedon Oct 19, 2026
@pecanoro @luacmartins @eh2077 you have been assigned to this deploy blocker because you reviewed the offending PR: #103681
melvin-bot commentedon Oct 19, 2026
💬 A slack conversation has been started in #expensify-open-source
github-actions commentedon Oct 19, 2026
👋 Friendly reminder that deploy blockers are time-sensitive ⏱ issues! Check out the open `StagingDeployCash` deploy checklist to see the list of PRs included in this release, then work quickly to do one of the following:
MelvinBot commentedon Oct 19, 2026
🔍 Investigation Summary
Classification: Frontend bug
Causing PR: Reapply opening a deep link captured before onboarding, without the Concierge regressions by
mukhrr. I have high confidence it triggers this. The wrong read state underneath it is an older bug that is already in production.Related issues: [$175] LHN - #admin room already read after signed up as "submit expense to my employer" intention (open, reproducible in production on mobile web) and Chat - #admins room opens briefly after completing onboarding via /concierge link (closed).
Recommendation: Revert
Before this PR, a user who signed up through
/conciergeand chose "Submit to my employer" landed on Expenses with #admins open in the side panel. Opening #admins marked it read on the server, which hid an older bug. The PR now opens the Concierge chat instead, so #admins is never opened and the older bug shows. No later commits touch the PR's files, so the revert should be clean.You can reland the PR after one of these:
📋 Detailed analysis
Trigger (this PR)
useAutoCreateSubmitWorkspace.ts:134.navigateAfterOnboarding.ts:201-203. It runs beforenavigateAfterOnboarding.ts:210-212, which sets theRHP_ADMINS_ROOMside-panel mode, goes to Expenses and opens the side panel. The same early return is atnavigateAfterOnboarding.ts:119-122./concierge, the held link callsnavigateToConciergeChat(Link.ts:653-662). The side panel only shows #admins when that mode is set (SidePanelContextProvider.tsx:88-96).Older bug that now shows
lastReadTimeequal tolastVisibleActionCreated(ReportUtils.ts:9392-9393).SequentialQueue.ts:321). In the PR's review thread, the author found that the welcome message arrives first, and olderCreateWorkspacedata then overwrites #admins as "read." The server still has it unread, so it shows unread after Clear cache and restart (step 5).Other notes
9.5.14-0. That matches a staging-only report.navigateToSubmitWorkspaceAfterOnboarding, don't let a held/conciergelink override the Submit landing. This is small and restores the intended landing. Fixing the queue-ordering bug at its source is the right long-term fix, but it is risky to cherry-pick to staging.view run
luacmartins commentedon Oct 19, 2026
Seems like a duplicate of #101182. @jponikarchuk can you please confirm?
grgia commentedon Oct 20, 2026
Since this is a dupe, it seems we can close this one. But the not repro in prod part is confusing. It sounds like there's two pieces here conflicting according to melvin. I'm going to comment in the thread
grgia commentedon Oct 20, 2026
Closing as dupe