[Chore] ESLint MDX config targets an empty directory, leaving 1,138 MDX files unlinted
@Ayush-1812 is already working on this.
Since Sep 9, 2026.
- Dominant language
- JavaScript
- Stars
- 1.1k
- Forks
- 1.6k
- Avg merge
- 2d 10h
- Merged PRs (30d)
- 18
Description
Description
eslint.config.js:148 registers eslint-mdx for two globs:
{
files: ["content-learn/**/*.mdx", "src/pages/**/*.mdx"],
languageOptions: { parser: mdxParser, ... },
processor: mdxPlugin.createRemarkProcessor(),
...
}
Neither glob reflects where the site's MDX actually lives today:
| Glob / tree | .mdx files matched |
|---|---|
content-learn/**/*.mdx |
61 |
src/pages/**/*.mdx |
0 |
src/collections/**/*.mdx (unmatched) |
1,138 (138 of them Sistent component docs) |
src/pages contains no MDX at all, and src/collections — blog posts, workshops, programs, and all Sistent component documentation — matches no files entry in the flat config. Under ESLint v9 flat config, files not matched by any config object are skipped when linting a directory, so npm run checklint never inspects them.
Two consequences:
- No linting where most of the content is. Over a thousand MDX files, including every Sistent component doc, are exempt from lint entirely.
- Confusing parse errors for contributors and review bots. ESLint does lint files passed explicitly on the command line, even unmatched ones — falling back to the default JS parser, which cannot parse MDX. Anyone running
eslint <changed-file>.mdx, and automated reviewers that lint changed files, get threeAssigning to rvalueparse errors per file. This surfaced on #7990, where it was reported as a failure against new documentation despite reproducing identically on existing docs already merged tomaster(e.g.src/collections/sistent/components/table/code.mdx).
Expected Behavior
The MDX config block covers the trees that actually contain MDX — at minimum adding src/collections/**/*.mdx — and the dead src/pages/**/*.mdx glob is dropped or corrected.
This should be treated as its own change rather than folded into a content PR: switching 1,138 files from unlinted to linted will surface a backlog of findings, and the rule set for the MDX block will likely need tuning (the current block only disables four react/* rules) before it can pass CI. A staged approach — enable the glob, assess the output, tune rules or add narrowly-scoped ignores, then wire it into checklint — is probably the sanest path.
Screenshots
N/A
Environment:
- Host OS: any
- Browser: N/A (build tooling)
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Assessment
This issue has not been assessed yet.