[Policy Change Logs] Implement policy change log for: Workflows - Adding or modifying workflows#76260
Conversation
|
Hey, I noticed you changed If you want to automatically generate translations for other locales, an Expensify employee will have to:
Alternatively, if you are an external contributor, you can run the translation script locally with your own OpenAI API key. To learn more, try running: npx ts-node ./scripts/generateTranslations.ts --helpTypically, you'd want to translate only what you changed by running |
Codecov Report❌ Looks like you've decreased code coverage for some files. Please write tests to increase, or at least maintain, the existing level of code coverage. See our documentation here for how to interpret this table.
|
|
@ahmedGaber93 Please copy/paste the Reviewer Checklist from here into a new comment on this PR and complete it. If you have the K2 extension, you can simply click: [this button] |
trjExpensify
left a comment
There was a problem hiding this comment.
Has @jamesdeanexpensify final approved the copy for these?
Yes, Discussion is here |
|
Great, thanks for confirming! |
|
Resolved merge conflicts |
|
Resolved merge conflicts |
Reviewer Checklist
Screenshots/VideosAndroid: HybridAppScreen.Recording.2025-12-10.at.10.41.17.PM.movAndroid: mWeb ChromeScreen.Recording.2025-12-10.at.10.43.08.PM.moviOS: HybridAppScreen.Recording.2025-12-10.at.10.43.57.PM.moviOS: mWeb SafariScreen.Recording.2025-12-10.at.10.40.11.PM.mov |
eh2077
left a comment
There was a problem hiding this comment.
Looks good overall, still doing tests and preparing recordings
| previousForwardsTo?: {email: string; name: string; accountID: number}; | ||
| }; | ||
|
|
||
| function formatMemberListWithAnd(members: Array<{email: string; name: string}>): string { |
This comment was marked as resolved.
This comment was marked as resolved.
Sorry, something went wrong.
There was a problem hiding this comment.
We're showing the email/phone number, just as we already do in the policy change log when inviting a member to the workspace
|
✋ This PR was not deployed to staging yet because QA is ongoing. It will be automatically deployed to staging after the next production release. |
|
🚀 Deployed to staging by https://github.com/mjasikowski in version: 9.2.78-0 🚀
|
|
🚀 Deployed to production by https://github.com/AndrewGable in version: 9.2.78-8 🚀
|







Explanation of Change
Auth PR:
Web-E PR:
Fixed Issues
$ https://github.com/Expensify/Expensify/issues/568305
PROPOSAL:
Tests
Prerequisites
Test Cases
Test 1: Change Default Approver
Expected Results:
changed the default approver to [new_approver_email] (previously [old_approver_email])Screeenshot:
Recording:
1.mov
Test 2: Create New Approval Workflow - Single Member
Expected Results:
changed the approval workflow for [member_a_email] to submit reports to [member_b_email] (previously default approver [default_approver_email])Screeenshot:
Recording:
2.mov
Test 3: Create New Approval Workflow - Two Members
Expected Results:
changed the approval workflow for [member_a_email] and [member_b_email] to submit reports to [member_c_email] (previously default approver [default_approver_email])Screeenshot:
Recording:
3.mov
Test 4: Create New Approval Workflow - Three or More Members
Expected Results:
changed the approval workflow for [member1], [member2], and [member3] to submit reports to [approver] (previously default approver [default_approver_email])Screeenshot:
Recording:
4.mov
Test 5: Create Multi-Level Approval Workflow (forwardsTo)
Steps:
Expected Results:
changed the approval workflow for [member_a_email] to submit reports to [member_b_email] (previously default approver [default_approver_email])changed the approval workflow for [member_b_email] to forward approved reports to [member_c_email] (previously final approved reports)Screeenshot:
Recording:
5.mov
Test 6: Edit Workflow - Change Approver
Precondition: An existing non-default approval workflow exists.
Steps:
Expected Results:
changed the approval workflow for [member_emails] to submit reports to [new_approver_email] (previously [old_approver_email])Screeenshot:
Recording:
6.mov
Test 7: Edit Workflow - Add Additional Approver
Precondition: An existing approval workflow with only one approver.
Steps:
Expected Results:
changed the approval workflow for [first_approver_email] to forward approved reports to [new_second_approver_email] (previously final approved reports)Screeenshot:
Recording:
7.mov
Test 8: Edit Workflow - Remove Additional Approver
Precondition: An existing approval workflow with two or more approvers.
Steps:
Expected Results:
changed the approval workflow for [approver_email] to stop forwarding approved reports (previously forwarded to [old_forwardsTo_email])Screeenshot:
Recording:
8.mov
Test 9: Edit Workflow - Change ForwardsTo Approver
Precondition: An existing approval workflow with two approvers.
Steps:
Expected Results:
changed the approval workflow for [first_approver_email] to forward approved reports to [new_second_approver_email] (previously forwarded to [old_second_approver_email])Screeenshot:
Recording:
9.mov
Test 10: Move Members Back to Default Approver
Precondition: An existing non-default approval workflow with members.
Steps:
Expected Results:
changed the approval workflow for [member_emails] to submit reports to the default approver [default_approver_email] (previously [old_approver_email])Screeenshot:
Recording:
10.mov
Offline tests
QA Steps
// TODO: These must be filled out, or the issue title must include "[No QA]."
Same as tests
PR Author Checklist
### Fixed Issuessection aboveTestssectionOffline stepssectionQA stepssectioncanBeMissingparam foruseOnyxtoggleReportand notonIconClick)src/languages/*files and using the translation methodSTYLE.md) were followedAvatar, 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.ScrollViewcomponent to make it scrollable when more elements are added to the page.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