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
[Due for payment 2026-06-29] [HR Import] merge_hris "Complete Setup" GBR missing from the Workspaces LHN/nav-tab icon #93445
When a merge_hris connection needs "Complete Setup", a green-dot (GBR/INFO) indicator correctly appears on the Workspaces list row and the HR page menu row, but it is missing from the Workspaces LHN / nav-tab icon. The icon should show the same indicator.
Root cause
The green dot is driven by one predicate, isMergeHRCompleteSetupNeeded(policy). Three separate indicator computations exist, and only two of them call this predicate:
Workspaces list row (works):WorkspacesListPage.tsx:568 returns BRICK_ROAD_INDICATOR_STATUS.INFO (green) when isMergeHRCompleteSetupNeeded is true.
Workspaces LHN / nav-tab icon (broken): driven by useWorkspacesTabIndicatorStatus → usePolicyIndicatorChecks. This hook only checks error conditions (policy errors, custom units, employee list, sync errors, QBO export, Uber creds, card feed). It has no isMergeHRCompleteSetupNeeded / INFO branch, so the green "Complete Setup" state never reaches the icon.
Proposed fix (two parts)
Add a merge_hris "complete setup needed" check to usePolicyIndicatorChecks as a new INFO-type status (e.g. HAS_MERGE_HR_COMPLETE_SETUP), feeding off isMergeHRCompleteSetupNeeded.
Fix the color logic in useWorkspacesTabIndicatorStatus — today it is indicatorColor = status ? theme.danger : theme.success, so any status renders red. The new GBR status must render theme.success (green) while existing error statuses stay red.
@twisterdotcom what if there is both a workspace with error RBR and one with info GBR at the same time? do we not show the green dot then and prefer the red one? do we show 2 dots?
Good point, we should always prefer red over green if both exist. But if only one exists, we should show that one.
So, if you have an accounting connection that is broken and a HR connection which requires setup, it will show red. Once you fix the accounting connection, it will show green. Once you complete setup on the HR connection, it will not show any BR.
🟢 Status: PR Approved - I was tagged by the author as one of the C+ reviewers that are part of the HR prohect, so I completed the checklist and approved ✅
changed the title [-][HR Import] merge_hris "Complete Setup" GBR missing from the Workspaces LHN/nav-tab icon[/-][+][Due for payment 2026-06-29] [HR Import] merge_hris "Complete Setup" GBR missing from the Workspaces LHN/nav-tab icon[/+]on Jun 22, 2026
The solution for this issue has been 🚀 deployed to production 🚀 in version 9.4.16-5 and is now subject to a 7-day regression period 📆. Here is the list of pull requests that resolve this issue:
@mallenexpensify I will be due payment here for reviewing the PR mentioned above.
BugZero Checklist:
[Contributor] The offending PR has been commented on, pointing out the bug it caused and why, so the author and reviewers can learn from the mistake.
Link to comment: N/A - Result of the original design
[Contributor] If the regression was CRITICAL (e.g. interrupts a core flow) A discussion in #expensify-open-source has been started about whether any other steps should be taken (e.g. updating the PR review checklist) in order to catch this type of bug sooner.
Link to discussion: N/A
[Contributor] If it was decided to create a regression test for the bug, please propose the regression test steps using the template below to ensure the same bug will not reach production again.
[BugZero Assignee] Create a GH issue for creating/updating the regression test once above steps have been agreed upon.
Not sure we want to add regression test for this [NoQA] PR yet since it's part of a larger project that's ongoing - but I'll post the PR's test anyway below.
Make sure you have the mergeHRConnections beta enabled.
Open a workspace, enable HR in More features, go to the HR tab.
Connect a Merge HR provider (Bamboo/Workday/HiBob).
Wait for the first sync to end, until the "Complete setup" link appears.
Verify that when there is a GBR in the provider card, HR tab, workspace row in Workspaces list, there is now also a green dot in the Workspaces tab icon in the navigation tab bar.
Verify that when there is a workspace with RBR, the dot in the navigation tab bar is red, even when there is a workspace with GBR, because errors take precedence over infos.
Activity
mhawryluk commentedon Jun 15, 2026
I'll work on this today!
mhawryluk commentedon Jun 15, 2026
@twisterdotcom what if there is both a workspace with error RBR and one with info GBR at the same time? do we not show the green dot then and prefer the red one? do we show 2 dots?
twisterdotcom commentedon Jun 15, 2026
Good point, we should always prefer red over green if both exist. But if only one exists, we should show that one.
So, if you have an accounting connection that is broken and a HR connection which requires setup, it will show red. Once you fix the accounting connection, it will show green. Once you complete setup on the HR connection, it will not show any BR.
mhawryluk commentedon Jun 15, 2026
got it, thank you 🫡
melvin-bot commentedon Jun 17, 2026
Triggered auto assignment to @luacmartins, see https://stackoverflow.com/c/expensify/questions/7972 for more details.
ikevin127 commentedon Jun 17, 2026
🟢 Status: PR Approved - I was tagged by the author as one of the C+ reviewers that are part of the HR prohect, so I completed the checklist and approved ✅
[-][HR Import] merge_hris "Complete Setup" GBR missing from the Workspaces LHN/nav-tab icon[/-][+][Due for payment 2026-06-29] [HR Import] merge_hris "Complete Setup" GBR missing from the Workspaces LHN/nav-tab icon[/+]melvin-bot commentedon Jun 22, 2026
Reviewinglabel has been removed, please complete the "BugZero Checklist".melvin-bot commentedon Jun 22, 2026
The solution for this issue has been 🚀 deployed to production 🚀 in version 9.4.16-5 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-06-29. 🎊
For reference, here are some details about the assignees on this issue:
ikevin127 commentedon Jun 25, 2026
@mallenexpensify I will be due payment here for reviewing the PR mentioned above.
BugZero Checklist:
[Contributor] The offending PR has been commented on, pointing out the bug it caused and why, so the author and reviewers can learn from the mistake.
Link to comment: N/A - Result of the original design
[Contributor] If the regression was CRITICAL (e.g. interrupts a core flow) A discussion in #expensify-open-source has been started about whether any other steps should be taken (e.g. updating the PR review checklist) in order to catch this type of bug sooner.
Link to discussion: N/A
[Contributor] If it was decided to create a regression test for the bug, please propose the regression test steps using the template below to ensure the same bug will not reach production again.
[BugZero Assignee] Create a GH issue for creating/updating the regression test once above steps have been agreed upon.
Link to issue: https://github.com/Expensify/Expensify/issues/654834
Regression Test Proposal
Note
Not sure we want to add regression test for this [NoQA] PR yet since it's part of a larger project that's ongoing - but I'll post the PR's test anyway below.
mergeHRConnectionsbeta enabled.Do we agree 👍 or 👎.
Zapier Logs
Run ID: 00040eee-8f45-a9b4-6640-b79329294d54mallenexpensify commentedon Jul 1, 2026
Payment Summary
Contributor+: @ikevin127 due $250 via NewDot
^ Test case created. Thx
Assuming this isn't paid via project. Don't think anything else is needed, closing.
quinthar commentedon Jul 5, 2026
Approved $250 to @ikevin127