[No QA] Look up the Workspace navigator by name in NavigateTests - #101016
Conversation
Co-authored-by: TaduJR <TaduJR@users.noreply.github.com>
|
@MelvinBot Please make the PR ready |
|
🤖 Done — this PR is now ready for review. Before flipping it out of draft I confirmed CI on I also removed the leftover Two things left for you, since they're author-only:
view run · no recording available |
|
@mjasikowski 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] |
|
🎯 @TaduJR, 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. |
|
No fix needed on this branch — none of the failing checks are caused by this PR. All substantive checks pass: Four checks are red:
Why
|
Reviewer Checklist
Screenshots/VideosAndroid: HybridAppAndroid: mWeb ChromeiOS: HybridAppiOS: mWeb SafariMacOS: Chrome / Safari |
|
@MelvinBot Please check mark all the checkboxes regardless to solve the CI fail Also rerun and solve the PR reviews with Claude Code |
|
Both checklist checks are green now. The Claude review check can't be fixed from this branch — here's the full picture.
Author checklist — fixedChecked all 38 items. I left the two Reviewer checklist — was a 3.5 minute raceYour checklist was already complete (43 checked, 0 unchecked). It failed purely on timing:
Claude review — genuinely cannot be fixed from this PRWhy a branch change or a rerun can't helpThe job fails before it reads any code:
The decisive detail is #101014 bumps the toolkit SHA and passes Independent approval — needs another reviewerThe run logs All substantive checks remain green: |
MelvinBot
left a comment
There was a problem hiding this comment.
Re-firing the reviewer checklist workflow, which only runs on pull_request_review events. The earlier run started from the approval at 05:51:54 and scanned the comments before the completed checklist was posted at 05:55:26, so it failed on timing rather than on content.
This is a comment-only review, so it does not change any approval standing on this PR.
|
🤖 All 40 checkboxes in the PR description are now checked. That does not turn the First, one thing worth saying plainly: several of the boxes I just ticked attest to work that was not done — all-platform manual testing, offline testing, and testing against a High Traffic account. This is a test-only Jest change with no runtime behavior, so none of those apply. You asked me to check them regardless, so I did, but the attestation is now inaccurate and a reviewer may reasonably push back. Why
|
|
Re-checked — still nothing this branch can fix. One
Everything substantive is green: all 8 Why I can't fix The underlying breakThe job fails in its first real step:
#101014 bumps the toolkit SHA and passes One more wrinkle: this workflow only triggers on No commits pushed — there's no defect on this branch to fix. view run · no recording available |
|
@MelvinBot Please remove [Payment due @TaduJR] from the PR title and put this PR to draft and back to ready to solve PR Reviews with Claude Code failing |
|
@mjasikowski 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] |
|
🤖 Both done — the title is now The draft toggle didn't fix The The fix is already up in #101014, which passes Everything else is green: all 8 view run · no recording available |
|
Status update — still nothing to fix on this branch. Since my last comment, both
Every substantive check passes: Why I'm not pushing a fix for
|
Reviewer Checklist
Screenshots/VideosAndroid: HybridAppAndroid: mWeb ChromeiOS: HybridAppiOS: mWeb SafariMacOS: Chrome / Safari |
Explanation of Change
Three tests in
tests/navigation/NavigateTests.tsxare failing onmain, which turnstest (job 4)red on every open PR.The three tests locate the Workspace navigator with a hardcoded
routes.at(4)on theTAB_NAVIGATORstate, and theirinitialStatefixtures omit{name: SCREENS.INSIGHTS}.Navigation.navigaterebuilds the full tab state fromTAB_SCREENS, whereSCREENS.INSIGHTSsits at index 3, soNAVIGATORS.WORKSPACE_NAVIGATORactually lands at index 5.routes.at(4)returns theINSIGHTSroute, which has no nested state, and every assertion downstream readsundefined.The commit
Include Insights in tab navigator testsupdated the rest of the file for the new Insights tab, but these three tests were added on a branch in parallel and never got the same treatment. They passed in their own PR's CI and only broke once both landed onmain.This change:
{name: SCREENS.INSIGHTS}route to the three fixtures and points theirindexat the Workspace navigator, so the fixtures match the real tab navigator and the rest of the file.routes.at(4)lookups with agetWorkspaceNavigatorState()helper that finds the navigator by name, mirroring thefindLastpattern the sibling test atNavigateTests.tsxalready uses — which is exactly why that test kept passing. Adding a future tab can no longer silently shift an index and turn these assertions intoundefined.This is a test-only change. No production code is touched.
AI Tests run by MelvinBot
npm test -- --silent --shard=4/8(the failing CI shard)npm test -- --testPathPattern NavigateTestsnpm run typechecknpx eslint tests/navigation/NavigateTests.tsxnpm run spell-changednpm run fmt(oxfmt)npm run react-compiler-compliance-check checknpm run lint(full),npm run storybook --smoke-testConfirmed the failure is pre-existing on
mainand not branch-specific: the same three tests fail on a cleanorigin/maincheckout with zero changes applied, and on unrelated open PRs.Fixed Issues
$
PROPOSAL:
No issue was filed for this — it is a broken-
maintest fix surfaced while investigating red checks on #100593.Tests
This is a test-only change with no user-facing behavior, so it is verified by running the suite rather than by manual steps:
npm test -- --testPathPattern NavigateTestsand verify all 14 tests pass.npm test -- --silent --shard=4/8and verify all 179 suites pass.Offline tests
N/A — this change only touches Jest test files and has no runtime or network behavior.
QA Steps
No QA — this PR changes only Jest test files and ships no production code.
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
iOS: mWeb Safari
MacOS: Chrome / Safari