More Agent Autonomy Needs Stronger Guardrails: React 19 Linting on ESLint 10
The more autonomy I give coding agents, the more of a repository's expectations need to be executable. I do not want manual review to be the first place a predictable failure is discovered. My projects now have more pre-commit hooks, tests, deterministic checks for project conventions, and small reviewable commits. The checks turn expectations into pass/fail results an agent can act on; the…
The story revolves around the challenges faced when upgrading ESLint from version 9 to version 10, specifically regarding the React linting layer. The author, who maintains multiple React applications, encountered issues with the eslint-plugin-react package after upgrading to ESLint 10. The upgrade stopped at the eslint-plugin-react@7.37.5 release, which declared support only through ESLint 9 and could crash under ESLint 10 due to the removal of deprecated rule-context APIs.
The author decided to release an independent fork called @ternaus/eslint-plugin-react, providing support for ESLint 10 and React 19. This fork aims to add more guardrails and deterministic checks to ensure predictable failures are caught early during the development process. The author started from the upstream repository while preserving the Git history, MIT license, and attribution.
After reviewing the rules, they narrowed the original 102 active rules down to 11, focusing on React 19 correctness and useful React-specific performance warnings. The final release of @ternaus/eslint-plugin-react contains 11 rules, all of which are in the recommended category.
Written by urgent.news from Dev.to's reporting — not their text. Machine-written — may contain errors; check the original before relying on it.