import { defineConfig, globalIgnores } from "eslint/config"; import nextVitals from "eslint-config-next/core-web-vitals"; import nextTs from "eslint-config-next/typescript"; const eslintConfig = defineConfig([ ...nextVitals, ...nextTs, { rules: { // Project-wide discipline: files stay under 1,250 lines and no // deferred-work markers ever land (mirrors ci/check-*.sh gates). "max-lines": ["error", { max: 1250, skipBlankLines: false, skipComments: false }], "no-warning-comments": [ "error", { terms: ["todo", "fixme", "xxx", "hack"], location: "anywhere" }, ], }, }, // Override default ignores of eslint-config-next. globalIgnores([ // Default ignores of eslint-config-next: ".next/**", "out/**", "build/**", "next-env.d.ts", // Forensic capture of our own deployed app — minified assets + one-off // scripts, not part of the product source. "tools/wc-capture/**", ]), ]); export default eslintConfig;