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-10-21] Allow workspace admins to set a member's display name when one isn't set #100343
Admins regularly ask to set a display name for members who don't have one — most often when the member signed up with a phone number, or when their email doesn't make their first and last name obvious. Today the display name is an account-level setting only the member can change.
HR integrations already set a member's display name when none exists. This brings the same capability to the Members page so admins can do it manually.
Scope
On the workspace member profile (RHP, opened from the Members page), let an admin set the member's Display name when the member doesn't already have one.
Only when no name is set. If one already exists — set by the member, by an HR integration, or by Clearbit — the row is read-only and the caret goes away.
The name saves at the account level, so it applies across every workspace the member belongs to.
Audit trail: post a system message in that member's default expense chat confirming the change. The message marks the chat unread only for the member whose name has changed.
Mockups
Out of scope
Setting display names through CSV import — a good follow-up.
Open item
The audit-trail message repeats admin-supplied text back to the member, so before release, we should confirm with the fraud and spam team that they will now be screening for this field.
[Contributor] The offending PR and associated issue have been commented on, pointing out the bug it caused and why, so the author and reviewers can learn from the mistake.
No, this is new feature
[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.
No
Regression Test Proposal
Precondition:
Admin account has at least 1 workspace
Test:
Sign in as an admin of a workspace that has a member who signed up with a phone number
Go to that workspace, open Members, and open that member
Click Profile and verify a Display name row showing their phone number, with a caret
Click the row, enter a first and last name, and click Save
Verify the Display name row now shows the name and has no caret
Verify the member's name updates everywhere it is shown, including the Members list
Open that member's expense chat and verify the admin does not see any message about it
Sign in as the member and verify their expense chat is unread, with a whisper naming the new display name, what it was before, and an Only visible to you note
Click Edit in your profile in that whisper and verify it opens the account Display name page
Open a member who already has a name as the admin and verify the Display name row has no caret
@gijoe0295 this issue and/or PR mention a deploy blocker or a regression. Before the payment date, post one of the three options in step 20 of the C+ doc: it was a regression, it was not, or you did not review the offending PR. If you don't post, the default is to reduce payment.
HOW_TO_BECOME_A_CONTRIBUTOR_PLUS.md:8 cuts C+ pay by 50% for each regression that should have been caught. Three regressions would wipe out the full $175.
Activity
melvin-bot commentedon Sep 3, 2026
Triggered auto assignment to Design team member for new feature review - @dubielzyk-expensify (
NewFeature)flaviadefaria commentedon Sep 3, 2026
Unassigning @dubielzyk-expensify since he's already assigned to the parent issue.
melvin-bot commentedon Sep 7, 2026
@allgandalf Whoops! This issue is 2 days overdue. Let's get this updated quick!
flaviadefaria commentedon Sep 8, 2026
@allgandalf I updated the mockups, so we're good to go here. Let me know in case you have any questions.
allgandalf commentedon Sep 8, 2026
nice, i'll get to these tomorrow
allgandalf commentedon Sep 10, 2026
Assigning @Valforte here since pullerbear assigned them for review on the PR
27 remaining items
allgandalf commentedon Oct 16, 2026
Assigned @gijoe0295 for payment here, @gijoe0295 can you please add checklist here ? thanks !
gijoe0295 commentedon Oct 16, 2026
Contributor+ Checklist:
[Contributor] The offending PR and associated issue have been commented on, pointing out the bug it caused and why, so the author and reviewers can learn from the mistake.
No, this is new feature
[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.
No
Regression Test Proposal
Precondition:
Test:
Do we agree 👍 or 👎
melvin-bot commentedon Oct 20, 2026
Triggered auto assignment to @mallenexpensify (
Awaiting Payment)melvin-bot commentedon Oct 20, 2026
Payment Summary
Resolving PRs:
Allow workspace admins to set a member's display name #100727
Contributor: @allgandalf does not require payment (Contractor)
Reviewer: @gijoe0295 owed $175 via NewDot
BugZero Checklist (@mallenexpensify)
mallenexpensify commentedon Oct 21, 2026
@gijoe0295 this issue and/or PR mention a deploy blocker or a regression. Before the payment date, post one of the three options in step 20 of the C+ doc: it was a regression, it was not, or you did not review the offending PR. If you don't post, the default is to reduce payment.
gijoe0295 commentedon Oct 22, 2026
Yes, It was a regression
gijoe0295 commentedon Oct 22, 2026
mallenexpensify commentedon Oct 22, 2026
@MelvinBot for this job and payment, how many regressions were there that would/should reduce payment?
MelvinBot commentedon Oct 22, 2026
3 regressions count against this payment. All three came from Allow workspace admins to set a member's display name, which
gijoe0295reviewed as C+.gijoe0295also confirmed above that it was a regression.The fourth link, Expense - Expense is not duplicated in source report when it is duplicated via bulk select, does not count. Its offending PR is Keep duplicated expenses on the source report when it can accept them, which
gijoe0295did not review.HOW_TO_BECOME_A_CONTRIBUTOR_PLUS.md:8 cuts C+ pay by 50% for each regression that should have been caught. Three regressions would wipe out the full $175.
Notes
view run
mallenexpensify commentedon Oct 22, 2026
Payment Summary
Contributor+: @gijoe0295 due $50 via NewDot
Multiple regressions, the floor is 25% so $50 is due.