mirror of
https://github.com/software-mansion/argent.git
synced 2026-09-14 19:27:14 +08:00
6ccfc36aa8
Introduce type-aware linting across the workspace. - eslint.config.mjs: flat config. recommendedTypeChecked runs on the TS sources via an explicit project list (each package keeps tests in a separate tsconfig.test.json that projectService can't auto-discover); type-checked rules are disabled for plain JS build/dev scripts. The argent-private submodule and build artifacts are ignored. - Bug-catching rules are kept on (no-floating-promises, no-misused-promises, only-throw-error, no-base-to-string, ...). High-volume style/any-family rules (no-unsafe-*, require-await, no-unnecessary-type-assertion, ...) are parked off as documented debt to ratchet back to error in follow-ups. - Add lint / lint:fix scripts and a Lint CI workflow (build, then eslint; Node 24 per ESLint 10's engine requirement). - Fix all resulting findings: dead code/imports, error-cause chaining, three genuine floating promises, non-Error throws, and unsafe stringification; remove stale unused eslint-disable directives. Verified locally: eslint clean, tsc --build, typecheck:tests/scripts, full vitest suite, and prettier --check all pass.