Repository navigation
[No QA] Fix eslint-seatbelt drift from HeaderWithBackButton migration rule - #102689
luacmartins merged 2 commits into
Conversation
PR Expensify#98601 added a no-restricted-imports restriction for HeaderWithBackButton, but the seatbelt baseline for files that already had an unrelated no-restricted-imports violation (isPaidGroupPolicy) was never bumped to account for the new second violation, and one new file (WorkArrangementPage.tsx) was left unbaselined entirely. Both break `npm run lint` on main regardless of what a PR touches. - DynamicTravelUpgrade.tsx, WalletPage/index.tsx, WorkspaceUpgradePage.tsx: bump no-restricted-imports baseline 1->2 (isPaidGroupPolicy usages there are genuinely billing-only checks) - WorkArrangementPage.tsx: add missing no-restricted-imports baseline for its still-unmigrated HeaderWithBackButton usage
…-fork into fix/seatbelt-header-migration-drift
|
@abdulrahuman5196 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] |
Reviewer Checklist
Screenshots/VideosAndroid: HybridAppAndroid: mWeb ChromeiOS: HybridAppiOS: mWeb SafariMacOS: Chrome / Safari |
|
🚧 luacmartins 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! 🧪🧪
|
|
✋ This PR was not deployed to staging yet because QA is ongoing. It will be automatically deployed to staging after the next production release. |
|
🚀 Deployed to staging by https://github.com/luacmartins in version: 9.5.0-0 🚀
|
|
@Guccio163 can you provide QA steps for Applause QA team? |
|
@kavimuru nothing to test here, marking with |
|
🚀 Deployed to production by https://github.com/Julesssss in version: 9.5.0-5 🚀
Bundle Size Analysis (Sentry): |
Explanation of Change
PR #98601 added a
no-restricted-importsrestriction onHeaderWithBackButton(migrating to the composedHeader). That restriction is counted under the sameno-restricted-importsseatbelt bucket as other restricted-import rules, so any file that already had a baselinedno-restricted-importsviolation for an unrelated reason (isPaidGroupPolicy) now has two violations for that rule, but the seatbelt baseline was never bumped to account for it. One additional file (WorkArrangementPage.tsx) still importsHeaderWithBackButtonand was never baselined for it at all.Both cause
npm run lintto fail onmainregardless of what a given PR touches, since the lint CI job always lints the whole repo, not just the diff.This PR only updates
config/eslint/eslint.seatbelt.tsv:DynamicTravelUpgrade.tsx,WalletPage/index.tsx,WorkspaceUpgradePage.tsx: bumpno-restricted-importsbaseline 1 → 2 (theisPaidGroupPolicyusages in these files are genuinely billing-only checks, not the workspace-feature-gating mistake that rule guards against)WorkArrangementPage.tsx: add the missingno-restricted-importsbaseline (1) for its still-unmigratedHeaderWithBackButtonusageNo source files are modified.
Fixed Issues
$ #102686
PROPOSAL:
Tests
npm run lint(or open this PR and watch thelint / ESLint checkGitHub Action).DynamicTravelUpgrade.tsx,WalletPage/index.tsx,WorkspaceUpgradePage.tsx, orWorkArrangementPage.tsx.Offline tests
N/A — config-only change (
config/eslint/eslint.seatbelt.tsv), no runtime behavior affected.QA Steps
Same as tests.
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
N/A — config-only change, no UI affected.
Android: mWeb Chrome
N/A — config-only change, no UI affected.
iOS: Native
N/A — config-only change, no UI affected.
iOS: mWeb Safari
N/A — config-only change, no UI affected.
MacOS: Chrome / Safari
N/A — config-only change, no UI affected.