docs(lint): the config comments say which rules can report, and count what is suppressed

eslint.config.js called every zero-hit React Compiler diagnostic a tripwire. Under
eslint-plugin-react-hooks 7.1.1 three cannot report anything: exhaustive-effect-dependencies (its
validation is compiled off), memoized-effect-dependencies (nothing emits its category) and
rule-suppression (lint mode passes no suppression rules). Probed: a missing effect dependency is
reported by exhaustive-deps only, and an inline disable is named by nothing. The header's
"33 suppressions" of exhaustive-deps is 0. reactPlugin.ts said one react-hooks rule was still
off; none is (three run at warn, which --max-warnings 0 fails).
This commit is contained in:
2026-10-04 03:00:49 +02:00
parent 5a74cf86b7
commit da4b19a39a
2 changed files with 16 additions and 6 deletions
+4 -2
View File
@@ -16,8 +16,10 @@ import reactCompiler from "babel-plugin-react-compiler";
// it. This comment used to say "its rules are also linted"; it was false while `react-hooks/refs` was
// off, and 95 functions sat uncompiled behind it (E32). What actually holds the line now is
// src/components/compilerCoverage.contract.test.ts, which runs THIS compiler over the shipped source
// and fails on any skip not on its list; the react-hooks lint rules are the early warning, with the
// one still switched off recorded in docs/gates.md. `target` follows the installed React major and
// and fails on any skip not on its list; the react-hooks lint rules are the early warning. None of
// them is off (three run at the preset's warn, which `--max-warnings 0` fails — docs/gates.md), but
// three of the compiler's diagnostics cannot report under the installed plugin (eslint.config.js
// says which), so the ratchet is the line, not the lint. `target` follows the installed React major and
// must move with it.
//
// The plugin is IMPORTED rather than named by the usual `"babel-plugin-react-compiler"` string. Two