Fix people admin workspace access pages#95338
Conversation
Codecov Report✅ Changes either increased or maintained existing code coverage, great job!
|
Reviewer Checklist
Screenshots/VideosAndroid: HybridAppAndroid: mWeb ChromeiOS: HybridAppiOS: mWeb SafariMacOS: Chrome / SafariScreen.Recording.2026-07-06.at.19.14.44.movScreen.Recording.2026-07-06.at.11.27.28.mov |
It is still showing notFound page for invite message approver page, we need to pass shouldShowNotFoundView={false} here. App/src/pages/workspace/WorkspaceInviteMessageApproverPage.tsx Lines 113 to 116 in e05d40a |
|
🚧 flodnv has triggered a test Expensify/App build. You can view the workflow run here. |
|
✋ This PR was not deployed to staging yet because QA is ongoing. It will be automatically deployed to staging after the next production release. |
|
🧪🧪 Use the links below to test this adhoc build on Android, iOS, and Web. Happy testing! 🧪🧪
|
|
🚀 Deployed to staging by https://github.com/flodnv in version: 9.4.29-0 🚀
|
|
🤖 Help site review: no changes required I reviewed the changes in this PR against the help-site articles under Why: This PR is a pure access-control bug fix. It corrects the internal write-access checks so that:
These changes restore the intended behavior of pages that already exist — they don't add, remove, or rename any user-facing feature, tab, setting, or button. The help-site articles that touch these areas (member custom fields, approval workflows) already describe the correct working behavior that this fix delivers, so they remain accurate as written. There is no "people admin" access matrix documented on the help site that would need revising, and no UI copy changed. Since no help-site content becomes inaccurate as a result of this PR, I have not created a draft docs PR. @ShridharGoel, please review the linked help site PR and confirm it reflects the current behavior. Then mark the linked help site PR (Note: no help site PR was created because no documentation changes are required for this access-control fix. If you believe a specific article should be updated, let me know which behavior it should describe and I'll draft the change.) |
|
QA team has a different behavior now. As a people admin, we get the Recording.1063.mp4 |
|
😕 @ShridharGoel can you check what's up with that? |
|
@flodnv @ShridharGoel Sorry, my mistake. I commented on the wrong PR. This PR has already been tested and passed by the QA team. |
|
🚀 Deployed to staging by https://github.com/flodnv in version: 9.4.31-0 🚀
|
|
🤖 Help site review: no docs changes required. I reviewed the changes in this PR against the help site articles under
Since the PR only makes the product match what the docs already imply admins can do, no help site update is needed.
|
|
🚀 Deployed to production by https://github.com/grgia in version: 9.4.31-0 🚀
Bundle Size Analysis (Sentry): |

Explanation of Change
This PR fixes two people admin access issues in workspace settings.
People admins can now open member custom field editors because the page uses the same
MEMBERSwrite access check as the member details page.It also avoids showing "Not here" on workflow approver picker pages while policy data is still loading. The pages now wait until policy data is loaded before blocking on missing
WORKFLOWS_APPROVALSwrite access.Fixed Issues
$ #95090
$ #95091
Tests
Offline tests
N/A. These changes only update access checks for already-loaded workspace settings pages.
QA Steps
Same as tests.
PR Author Checklist
### Fixed Issuessection aboveTestssectionOffline stepssectionQA stepssectiontoggleReportand notonIconClick)Avatar, I verified the components usingAvatarare working as expected)StyleUtils.getBackgroundAndBorderStyle(theme.componentBG))npm run compress-svg)Avataris modified, I verified thatAvataris working as expected in all cases)Designlabel and/or tagged@Expensify/designso the design team can review the changes.mainbranch was merged into this PR after a review, I tested again and verified the outcome was still expected according to theTeststeps.Screenshots/Videos
Android: Native
Android: mWeb Chrome
iOS: Native
iOS: mWeb Safari
MacOS: Chrome / Safari