Repository navigation
Move floating counter copy subscriptions out of the message list - #106159
Conversation
|
@codex review |
Codex Review SummaryThis comment shows the latest Codex review activity on this pull request.
ℹ️ About Codex in GitHubYour team has set up Codex to review pull requests in this repo. Reviews are triggered when you
Codex reacts with 👀 while any review is running, comments if it has suggestions, and reacts with 👍 once all reviews finish with no findings. |
|
Codex Review: Didn't find any major issues. 🚀 Reviewed commit: ℹ️ About Codex in GitHubCodex has been enabled to automatically review pull requests in this repo. Reviews are triggered when you
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". |
|
@tylerkaraszewski 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] |
|
@roryabraham - best test steps I've seen in a while, thanks! |
Reviewer Checklist
Screenshots/VideosAndroid: HybridAppAndroid: mWeb ChromeiOS: HybridAppiOS: mWeb SafariMacOS: Chrome / Safari |
|
🚧 roryabraham 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/roryabraham in version: 9.5.34-0 🚀
|
|
No FullStory changes needed — this PR only moves existing floating-counter subscriptions into a wrapper, preserving the same labels and click behavior without adding new user-facing functionality. |
|
No help site update needed — this PR only moves existing data subscriptions into a separate component, without changing user-facing behavior, releasing a beta, or making any existing article sentence incorrect. |
|
🚀 Deployed to production by https://github.com/yuwenmemon in version: 9.5.34-1 🚀
Bundle Size Analysis (Sentry): |
Explanation of Change
The message list subscribed to workspace policy, approval rules, and onboarding intent just to choose the floating counter's “Mark as done” label. Those reads now live in a small counter wrapper, so their updates do not directly rerender the list content. That said, this is more motivated as a small cleanup than as a perf improvement (I didn't benchmark).
I'm trying to simplify the main chat list data -> render pipeline because it's super complicated (to the point where it's really hard to review changes to it!), so I'm just whittling away with small targeted cleanups when I have spare cycles.
Fixed Issues
Follow-up to #105473. No separate issue.
Tests
Offline 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
Android: Native
Not tested.
Android: mWeb Chrome
Not tested.
iOS: Native
Not tested.
iOS: mWeb Safari
Not tested.
MacOS: Chrome / Safari
Desktop Chromium. Final verification after review, using a UI-created account, workspace, expense, and comments.
Floating “Submit” with approvals enabled:
Clicking the pill returns to the draft report card and exposes “Latest messages”:
Disabling approvals in a second tab updates the open conversation to “Mark as done” without a reload:
The same label remains after reloading:
Conversation verification recording:
counter-final.webm
Second-tab workspace approval change:
counter-final-1.webm
Cached navigation while offline:
offline-navigation.webm