Skip to content

[Due for payment 2026-04-30] LHN - Completed task is highlighted when opening #admins room #85659

Closed

Description

@jponikarchuk

If you haven’t already, check out our contributing guidelines for onboarding and email contributors@expensify.com to request to join our Slack channel!


Version Number: 9.3.40-0
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: #85192
Email or phone of affected tester (no customers): sjodinjsonjinodisjniod@gmail.com
Issue reported by: Applause Internal Team
Bug source: Exploratory - Significant User Experience Deterioration
Device used: Mac 26.2 / Chrome
App Component: Chat Report View

Action Performed:

  1. Go to staging.new.expensify.com
  2. Create a new Gmail account.
  3. Complete onboarding with Something else intent.
  4. Create a workspace.
  5. Go to workspace chat.
  6. Go to #admins room.

Expected Result:

The first incomplete task will be highlighted.

Actual Result:

The completed task will be highlighted.

Workaround:

Unknown

Platforms:

  • Android: App
  • Android: mWeb Chrome
  • iOS: App
  • iOS: mWeb Safari
  • iOS: mWeb Chrome
  • Windows: Chrome
  • MacOS: Chrome / Safari

Screenshots/Videos

Video.mp4

View all open jobs on GitHub

Issue OwnerCurrent Issue Owner: @hoangzinh

Activity

  1. added
    DeployBlockerCashThis issue or pull request should block deployment
    BugSomething is broken. Auto assigns a BugZero manager.
    on Mar 18, 2026
  2. melvin-bot commented on Mar 18, 2026

    @melvin-bot

    You have been assigned to this deploy blocker because you recently merged this PR: #85192

  3. melvin-bot commented on Mar 18, 2026

    @melvin-bot

    💬 A slack conversation has been started in #expensify-open-source

  4. github-actions commented on Mar 18, 2026

    @github-actions
    Contributor

    👋 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:

    1. Identify the pull request that introduced this issue and revert it.
    2. Find someone who can quickly fix the issue.
    3. Fix the issue yourself.
  5. OSBotify commented on Mar 18, 2026

    @OSBotify
    Contributor

    Investigation Summary

    Classification: Frontend bug
    Causing PR: #85192 - "feat: deep link to report preview or message that caused GBR/RBR" by @aimane-chnaif (High confidence)
    Related Issues: None

    Recommendation: REVERT

    The PR introduces a feature to deep-link to specific report actions when clicking LHN rows. The feature is intentionally disabled in production via an isProduction gate but enabled on staging. The bug is caused by incorrect logic that selects the wrong task to highlight.

    Labels: No label changes needed - this is a frontend bug in the App repo, so DeployBlockerCash should remain.

    Detailed Analysis

    Evidence

    The PR #85192 was merged on 2026-03-18 at 12:28:55Z and is included in version 9.3.40-0, matching the affected version in this issue. The bot (melvin-bot) also identified this PR as the cause.

    Verification

    The bug occurs in the #admins room where tasks are displayed. I verified the PR modifies:

    • src/libs/ReportUtils.ts - Adds actionTargetReportActionID logic
    • src/pages/inbox/sidebar/SidebarLinks.tsx - Uses the new deep-linking with production gate
    • src/libs/SidebarUtils.ts - Updates report action selection logic

    The PR description explicitly states: "I intentionally disabled this feature in production yet to avoid PR being reverted."

    Root Cause

    In src/libs/ReportUtils.ts at line 4333, when determining which report action to deep-link to for tasks, the code uses:

    reportAction: Object.values(reportActions).find((action) => action.childType === CONST.REPORT.TYPE.TASK),

    This returns the first task found during object iteration, which has no guaranteed order. When there are multiple tasks (both completed and incomplete), this can select a completed task instead of the first incomplete task that should be highlighted.

    The issue manifests on staging because:

    1. Line 76 in SidebarLinks.tsx: isProduction ? undefined : option.actionTargetReportActionID
    2. On staging (isProduction = false), the buggy actionTargetReportActionID is used
    3. On production (isProduction = true), the feature is disabled entirely

    Why REVERT?

    1. The author anticipated potential issues and added a production gate expecting possible reversion
    2. The logic needs to be fixed to select the first incomplete task, not just any task
    3. Clean revert path - the PR is self-contained and recent
    4. No dependent PRs have been identified
  6. aimane-chnaif commented on Mar 18, 2026

    @aimane-chnaif
    Contributor

    Let me investigate. Btw let's demote this as feature is only available in staging

  7. 29 remaining items

  8. lanitochka17 commented on Apr 22, 2026

    @lanitochka17

    Deploy Blocker ##88544 was identified to be related to the PR ##87166 that attempted to fix this issue.

  9. melvin-bot commented on Apr 23, 2026

    @melvin-bot

    ⚠️ Looks like this issue was linked to a Deploy Blocker here

    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.

  10. melvin-bot commented on Apr 23, 2026

    @melvin-bot

    Reviewing label has been removed, please complete the "BugZero Checklist".

  11. changed the title [-]LHN - Completed task is highlighted when opening #admins room[/-] [+][Due for payment 2026-04-30] LHN - Completed task is highlighted when opening #admins room[/+] on Apr 23, 2026
  12. melvin-bot commented on Apr 23, 2026

    @melvin-bot

    The solution for this issue has been 🚀 deployed to production 🚀 in version 9.3.61-4 and is now subject to a 7-day regression period 📆. Here is the list of pull requests that resolve this issue:

    If no regressions arise, payment will be issued on 2026-04-30. 🎊

    For reference, here are some details about the assignees on this issue:

    • @hoangzinh requires payment through NewDot Manual Requests
    • @aimane-chnaif requires payment (Needs manual offer from BZ)
  13. melvin-bot commented on Apr 23, 2026

    @melvin-bot

    @hoangzinh / @aimane-chnaif The PR fixing this issue has been merged! The following checklist (instructions) will need to be completed before the issue can be closed. Please copy/paste the BugZero Checklist from here into a new comment on this GH and complete it. If you have the K2 extension, you can simply click: [this button]

  14. hoangzinh commented on Apr 24, 2026

    @hoangzinh
    Contributor

    @aimane-chnaif, should we close this issue?

  15. aimane-chnaif commented on Apr 24, 2026

    @aimane-chnaif
    Contributor

    @MelvinBot close this issue

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

Metadata

Metadata

Labels

BugSomething is broken. Auto assigns a BugZero manager.DailyKSv2Engineering

Type

No type

Projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions