Skip to content

fix(lint): resolve the 4 ESLint errors blocking CI on main - #542

Merged
johdanike merged 1 commit into
SwiftChainn:mainfrom
AdaBebe0:fix/lint-errors-ci
Sep 1, 2026
Merged

fix(lint): resolve the 4 ESLint errors blocking CI on main#542
johdanike merged 1 commit into
SwiftChainn:mainfrom
AdaBebe0:fix/lint-errors-ci

Conversation

@AdaBebe0

@AdaBebe0 AdaBebe0 commented Sep 1, 2026

Copy link
Copy Markdown
Contributor

Problem

CI has been failing on main for every recent push — including a commit that only edited README.md. The failure is at the Lint step: pnpm run lint exits 1 on 4 errors (the 254 warnings don't block). Because Lint runs first, Type Check, Test, and Build Verification have not run at all on any recent PR.

This means every open PR shows a red CI that has nothing to do with its own changes.

Fixes

File Rule Fix
components/mobile/MobileFooter.tsx parse error File was committed with every quote character stripped — the leading backtick opened a template literal that never closed, so the whole file failed to parse. Restored the string quoting.
app/page.tsx react/jsx-no-undef <KineticExplorer /> was rendered without being imported. Added the missing import.
hooks/useDriverReputation.ts react-hooks/set-state-in-effect The effect called setState synchronously. The settled result now carries the driverId it belongs to, so loading is derived rather than written back into state from the effect.
hooks/useTheme.ts react-hooks/immutability updateTheme was read by an effect declared above it. Hoisted into a useCallback keyed on userId and added to the effect deps.

MobileFooter.tsx is a pure restoration of the intended quoting — no behaviour change.

Verification

  • pnpm run lint0 errors, 254 warnings (was 4 errors)
  • DriverReputation.test.tsx and KineticExplorer.test.tsx pass

Known follow-up — this does not make CI fully green

With Lint unblocked, CI now advances to Type Check, which fails on roughly 300 pre-existing tsc --noEmit errors across 44 files (mostly test files, plus several hooks). Those are unrelated to this change and are deliberately out of scope here — this PR's job is to unblock the pipeline and make the real blocker visible. Happy to take the type errors on in a follow-up if that's wanted.

CI has been red on main for every recent push because `pnpm run lint`
exits 1 on 4 errors (the 254 warnings are non-blocking). Nothing after
the Lint step has been running as a result.

- components/mobile/MobileFooter.tsx: the file was committed with every
  quote character stripped, so the leading backtick opened a template
  literal that never closed and the whole file failed to parse. Restored
  the string quoting; no behaviour change intended.
- app/page.tsx: <KineticExplorer /> was rendered without being imported
  (react/jsx-no-undef). Added the missing import.
- hooks/useDriverReputation.ts: the effect called setState synchronously
  (react-hooks/set-state-in-effect). The settled result now carries the
  driverId it belongs to, so loading is derived rather than written back
  into state from the effect.
- hooks/useTheme.ts: updateTheme was read by an effect declared above it
  (react-hooks/immutability). Hoisted it into a useCallback keyed on
  userId and added it to the effect deps.

Lint now reports 0 errors. Type-check still fails on 280 pre-existing
errors across 44 files, which is out of scope here.
@johdanike
johdanike merged commit 3e9c8c0 into SwiftChainn:main Sep 1, 2026
0 of 2 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants