-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy patheslint.config.js
More file actions
54 lines (52 loc) · 2.2 KB
/
Copy patheslint.config.js
File metadata and controls
54 lines (52 loc) · 2.2 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
import kerfjs from "eslint-plugin-kerfjs";
import tsParser from "@typescript-eslint/parser";
export default [
{
ignores: [
"dist/**",
"node_modules/**",
"coverage/**",
"tests/output/**",
"tests/cache/**",
"external/**",
"src/capture/script.generated.ts",
// Native-helper CMake build dirs (git-ignored, but ESLint flat config
// doesn't read nested .gitignore). They hold compiler artifacts like
// `compiler_depend.ts` that aren't real TypeScript.
"tools/**/build/**",
// Everything below is git-ignored but was NOT ESLint-ignored, and ESLint
// flat config does not read .gitignore. That gap made `npm run lint` a
// very different command on a working dev machine than in a fresh CI
// checkout — measured on the maintainer's Mac, a full run covered ~7,400
// files against 864 in a clean tree, and reported errors sourced entirely
// from throwaway scratch code and from OTHER commits checked out in
// sibling worktrees. A CI gate that is green while the same command is
// unusable locally trains people to stop running it, so the ignore list
// has to make the two agree.
//
// Throwaway probe scripts (the "put scratch probes here" convention).
// ~430 lintable files locally, none of them project code.
"tools/scratch/**",
// Ad-hoc debug scripts from earlier sessions; same category as scratch.
".tmp/**",
// Agent git worktrees live INSIDE the repo, so `eslint .` descends into
// full second copies of the project — ~6,000 lintable files across ~6
// checkouts, each pinned to a different commit. Linting them reports
// problems from code that is not even checked out here.
".claude/worktrees/**",
// Container-run artifacts redirected out of tests/output.
"tests/output-*/**",
// Vendored third-party build output (committed, but not our code, and
// regenerated from HarfBuzz rather than hand-edited).
"vendor/**",
],
},
{
files: ["**/*.ts", "**/*.tsx"],
languageOptions: {
parser: tsParser,
parserOptions: { ecmaFeatures: { jsx: true } },
},
},
kerfjs.configs.recommended,
];