You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Menu item. Define the search in SearchSuggestionUtils, like the approve search: type trip, status outstanding, to the current user. Add it to the Travel section with its empty state, the same way the approve item is added. Add the key to App's search keys. It's a built-in search, so its Status and To filters show without an X.
Strings.search.tabs.approveTrips: "Needs approval". search.searchResults.emptyApproveTripsResults.title: "No trips to approve". ...subtitle: "Zero trips. Maximum chill. Well done!"
Sidebar badge. Add a branch in getSectionBadgeText. It counts trips, not bookings.
Columns. Release 1 columns plus Approver. The deadline shows as a line under the row in normal text colour. The Action column shows Review.
Rows after a decision. While a request is in flight, Review shows a spinner. On success the row leaves the list if no booking on the trip is still waiting on this approver. On failure the spinner clears and the row shows an error. On other lists the row stays and its status updates.
Empty state.EmptySearchView only shows fireworks for to-do keys; add approveTrips to that check now (#104421 makes it a real to-do key).
Offline. Shows the last loaded list. Review stays enabled. Approve and Reject stay blocked.
Everything user-facing here is behind the TRAVEL_APPROVAL beta (Release 1, step 0).
Manual Test Steps
As an approver with trips waiting, open Spend → Travel. Verify Needs approval shows with a badge counting trips.
Open it. Verify one row per trip, with Approver, a deadline line, and Review.
Review a trip and approve its only outstanding booking. Verify the row leaves the list and the badge drops.
Approve every trip. Verify the empty state with fireworks.
As a user who isn't an approver on any trip, verify Needs approval doesn't show.
Automated Tests
Needs approval lists only trips waiting on the signed-in user.
Activity
melvin-bot commentedon Oct 19, 2026
Triggered auto assignment to Design team member for new feature review - @dubielzyk-expensify (
NewFeature)[-][Approve Travel R4] Spend → Travel → Needs approval[/-][+][$250] [Approve Travel R4] Spend → Travel → Needs approval[/+]melvin-bot commentedon Oct 28, 2026