Description
13 eslint-disable-next-line comments suppress legitimate warnings:
react-hooks/exhaustive-deps in ChallengeMode.tsx (potential stale closures)
react-hooks/set-state-in-effect in context.tsx, DailyQuiz.tsx
@typescript-eslint/no-require-imports in profiler.ts, reporter.ts, baseline.ts (6 instances)
Affected Files
components/challenge/ChallengeMode.tsx
lib/i18n/context.tsx
components/challenge/DailyQuiz.tsx
lib/performance/profiler.ts
lib/performance/reporter.ts
lib/performance/baseline.ts
Proposed Solution
- For
exhaustive-deps: add missing deps or use ref-based patterns
- For
set-state-in-effect: restructure to avoid state setting in effects
- For
no-require-imports: migrate require() calls to dynamic import()
- Document any suppressions that truly cannot be resolved
Acceptance Criteria
Description
13
eslint-disable-next-linecomments suppress legitimate warnings:react-hooks/exhaustive-depsinChallengeMode.tsx(potential stale closures)react-hooks/set-state-in-effectincontext.tsx,DailyQuiz.tsx@typescript-eslint/no-require-importsinprofiler.ts,reporter.ts,baseline.ts(6 instances)Affected Files
components/challenge/ChallengeMode.tsxlib/i18n/context.tsxcomponents/challenge/DailyQuiz.tsxlib/performance/profiler.tslib/performance/reporter.tslib/performance/baseline.tsProposed Solution
exhaustive-deps: add missing deps or use ref-based patternsset-state-in-effect: restructure to avoid state setting in effectsno-require-imports: migraterequire()calls to dynamicimport()Acceptance Criteria
exhaustive-depssuppressions eliminated