[Payment due @hoangzinh] Fixed Attendee type to match with BE#94784
Conversation
|
@hoangzinh 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] |
| * Replaces the imperative `emailToPersonalDetailsCache` login lookup that was built via `Onyx.connect` | ||
| * in `PersonalDetailsUtils` (see issue #66391). Keys are lowercased since logins/emails are case-insensitive. |
|
@mountiny @hoangzinh This is a pre-requisite PR before I land my final page refactor. This PR aligns the type with BE response type. |
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: 9eda05785e
ℹ️ About Codex in GitHub
Codex has been enabled to automatically review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
When you sign up for Codex through ChatGPT, Codex can also answer questions or update the PR, like "@codex address that feedback".
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.
|
Reviewer Checklist
Screenshots/VideosAndroid: HybridAppScreen.Recording.2026-06-30.at.18.06.14.movAndroid: mWeb ChromeiOS: HybridAppScreen.Recording.2026-06-30.at.18.39.02.moviOS: mWeb SafariMacOS: Chrome / SafariScreen.Recording.2026-06-30.at.17.34.02.mov |
@shubham1206agra can you clarify this so I can pick up this issue quickly? |
See the stored attendee in your onyx. You will see only 3 fields. I just adjusted type to make sure we don't make mistakes. |
Applied equivalent logic to match previous behavior
JmillsExpensify
left a comment
There was a problem hiding this comment.
No product review required.
|
🎯 @hoangzinh, thanks for reviewing and testing this PR! 🎉 A payment issue will be created for your review once this PR is deployed to production. If payment is not needed (e.g., regression PR review fix etc), react with 👎 to this comment to prevent the payment issue from being created. |
|
all yours @mountiny |
| @@ -192,27 +192,6 @@ type Attendee = { | |||
|
|
|||
| /** IOU attendee avatar url */ | |||
| avatarUrl: string; | |||
There was a problem hiding this comment.
the BE has email as required, noting it here as if we want to really match the type, we should also make it required 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. |
|
🚧 mountiny has triggered a test Expensify/App build. You can view the workflow run here. |
|
🧪🧪 Use the links below to test this adhoc build on Android, iOS, and Web. Happy testing! 🧪🧪
|
|
🚀 Deployed to staging by https://github.com/mountiny in version: 9.4.26-0 🚀
|
|
🤖 Help site review: no changes required I reviewed the changes in this PR and no updates to the help site files under This is a purely internal type refactor — it aligns the
None of this changes user-facing behavior. Attendees are still added, edited, and displayed exactly as before — only the internal data structure and how the app looks up account IDs changed. The existing Adding attendees to expenses article still accurately describes the feature, so no draft docs PR was created.
|
|
This PR causes this issue - https://github.com/Expensify/Expensify/issues/655280. The loginToAccountIDMap can be massive with a lot of emails and then it will throw errors on our server and it should be addressed. Otherwise this can be noisy once it goes live. |
Aligns expectations with the reverted Attendee fields restored in IOUUtils after reverting PR #94784. Co-authored-by: Cursor <cursoragent@cursor.com>
Reverting the merge commit of PR #94784 also reverted the submodule gitlink to its pre-94784 value. Reset it to origin/main so the PR contains no submodule diff. Co-authored-by: Cursor <cursoragent@cursor.com>
[CP Staging] Revert PR #94784 to stop loginToAccountIDMap massive logs
Removes the loginToAccountIDMap derived Onyx key and restores the pre-94784 Attendee type/shape. Resolves conflicts with Expensify#94299 by keeping the flaggedExpenses hook migration. Co-authored-by: Cursor <cursoragent@cursor.com>
|
🚀 Deployed to production by https://github.com/grgia in version: 9.4.27-2 🚀
Bundle Size Analysis (Sentry): |
Explanation of Change
Fixed Issues
$ #82191
Tests
Offline tests
Same as Tests
QA Steps
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
Screen.Recording.2026-06-28.at.6.21.08.PM.mov