Conversation
Codecov Report✅ Changes either increased or maintained existing code coverage, great job!
|
…compose/money-request-report-transactions-a3
…compose/money-request-report-transactions-a3
…compose/money-request-report-transactions-a3
|
@codex review |
|
Codex Review: Didn't find any major issues. Delightful! 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". |
ReviewThe extraction is faithful — I verified the moved logic is behaviorally identical to what it replaced. No blocking issues. Two nits below. Verification I ran locally on
1.
|
|
Check are failing but do not seem to be related |
|
I'm starting to take a look at this PR |
|
I'm still troubleshooting an issue where messages don't fully load after clearing the cache or performing a fresh login. Since this is also reproducing on latest staging (v9.4.78-0), we can track it as a separate issue. CleanShot.2026-09-15.at.20.42.42.1.mp4 |
Reviewer Checklist
Screenshots/VideosAndroid: HybridAppCleanShot.2026-09-15.at.21.14.02.4.mp4Android: mWeb ChromeCleanShot.2026-09-15.at.21.10.28.3.mp4iOS: HybridAppCleanShot.2026-09-15.at.21.07.45.2.mp4iOS: mWeb SafariCleanShot.2026-09-15.at.21.00.25.1.mp4MacOS: Chrome / SafariCleanShot.2026-09-15.at.20.53.16.1.mp4 |
Regarding this bug I'll investigate further and report it in the Slack bug channel soon. |
|
Moving the component logic into the hook still keep the existing behavior LGTM. We're just waiting on a merge from main to fix the failed pipeline |
|
Main is merged. Waiting for checks to pass 🤞 |
dylanexpensify
left a comment
There was a problem hiding this comment.
Product input not needed here
|
🚧 mountiny 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/mountiny in version: 9.4.82-0 🚀
|
|
🤖 No help site changes required. I did not create a docs PR. This PR is an internal refactor only. It moves the existing pagination logic out of Why no docs update is neededI checked the three things that would make a help site change necessary:
Because there is nothing to write, Since no docs PR exists, there is nothing to review or mark |
|
🚀 Deployed to staging by https://github.com/mountiny in version: 9.4.86-0 🚀
|
|
🤖 No help site changes are required for this PR — so I did not create a docs draft PR. This PR moves existing pagination logic out of What I checkedChanged files (3):
Why no docs are needed:
This is PR 4 of the 10-PR stack under [Perf] Investigate Money Request Report performance. Refactor-only slices in this stack won't need docs updates; if a later PR in the stack changes what a user actually sees or does, tag me on that one and I'll draft the help site changes.
|
|
🚀 Deployed to staging by https://github.com/mountiny in version: 9.4.89-0 🚀
|
|
🚀 Deployed to production by https://github.com/luacmartins in version: 9.4.89-0 🚀
Bundle Size Analysis (Sentry): |
Explanation of Change
This is PR 4 of a 10-PR stack decomposing the MoneyRequestReport list components (
MoneyRequestReportActionsList/MoneyRequestReportTransactionList) into focused hooks and presentational sub-components.This slice extracts the pagination behavior into a dedicated hook.
No performance movement in this PR

Fixed Issues
$ #99919
PROPOSAL:
Tests
npx jest tests/ui/MoneyRequestReportActionsListRejectModalTest.tsxand verify it passesOffline tests
QA Steps
PR Author Checklist
### Fixed Issuessection aboveTestssectionOffline stepssectionQA stepssectionAvatar, 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
Nagranie.z.ekranu.2026-09-9.o.14.42.22.mov
iOS: mWeb Safari
MacOS: Chrome / Safari
Nagranie.z.ekranu.2026-09-9.o.14.41.22.mov