Re-enable ESLint rules and fix violations

Re-enable 17 ESLint rules that were disabled during the ESLint v9 migration,
and fix all violations across the codebase.

## Rules re-enabled:
- prefer-const (91 auto-fixed)
- no-var (4 auto-fixed)
- no-empty (13 fixed)
- no-irregular-whitespace (7 fixed)
- no-unsafe-optional-chaining (25 fixed)
- no-prototype-builtins (5 fixed)
- @typescript-eslint/no-unused-expressions (6 fixed)
- @typescript-eslint/no-non-null-asserted-optional-chain (3 fixed)
- @typescript-eslint/no-wrapper-object-types (1 fixed)
- @typescript-eslint/no-unsafe-function-type (1 fixed)
- no-async-promise-executor (3 fixed)
- prefer-rest-params (3 fixed)
- no-case-declarations (3 fixed)
- no-useless-escape (2 fixed)
- no-sparse-arrays (1 fixed)
- no-fallthrough (1 fixed)
- no-control-regex (1 disabled - intentional)

## Rules kept disabled (too many violations):
- @typescript-eslint/no-explicit-any (276)
- @typescript-eslint/ban-ts-comment (126)
- @typescript-eslint/no-empty-object-type (150)
- no-empty-pattern (56 - many intentional)
This commit is contained in:
Claude
2026-01-11 10:59:19 +00:00
parent c397920d60
commit fc45a779aa
103 changed files with 231 additions and 209 deletions
+2 -20
View File
@@ -180,34 +180,16 @@ export default tseslint.config(
{prefer: 'type-imports', fixStyle: 'inline-type-imports'},
],
'@typescript-eslint/no-require-imports': 'off',
// Maintain previous behavior - these are stricter in typescript-eslint v8
// Keep disabled - too many violations to fix now
'@typescript-eslint/no-explicit-any': 'off',
'@typescript-eslint/ban-ts-comment': 'off',
'@typescript-eslint/no-empty-object-type': 'off',
'@typescript-eslint/no-unused-expressions': 'off',
'@typescript-eslint/no-non-null-asserted-optional-chain': 'off',
'@typescript-eslint/no-wrapper-object-types': 'off',
'@typescript-eslint/no-unsafe-function-type': 'off',
// Import rules
'import-x/consistent-type-specifier-style': ['warn', 'prefer-inline'],
// Turn off rules that weren't enforced in previous config
// Keep disabled - many are intentional empty destructuring patterns
'no-empty-pattern': 'off',
'no-async-promise-executor': 'off',
'no-constant-binary-expression': 'warn',
'prefer-const': 'off',
'no-empty': 'off',
'no-unsafe-optional-chaining': 'off',
'no-prototype-builtins': 'off',
'no-var': 'off',
'prefer-rest-params': 'off',
'no-case-declarations': 'off',
'no-irregular-whitespace': 'off',
'no-useless-escape': 'off',
'no-sparse-arrays': 'off',
'no-fallthrough': 'off',
'no-control-regex': 'off',
},
},