---
type: JS Module
title: check.mjs
resource: npm/rules/js-lint/js/check.mjs
docgen:
  crc: f61768f2
  model: omlx/gemma-4-e4b-it-OptiQ-4bit
  score: 100
---

## Огляд

Модуль виконує перевірку конфігураційних файлів проєкту, забезпечуючи їхню відповідність встановленим стандартам. Він читає та аналізує конфігураційні файли, включаючи `package.json`, `.oxlintrc.json`, `knip.json`, `knip-canonical.json` та `.eslintrc.json`. Перевірка ґрунтується на логіці, визначеній у (js-lint.mdc) та (text.mdc). Функціонал реалізований у режимі лише читання, що означає відсутність змін у файловій системі чи базах даних. При виявленні проблем, система перехоплює помилки, працюючи у режимі fail-safe. Свідомо ігноруються шляхи `.github` та `.git`.

## Поведінка

1. Викликає `check` для початку перевірки.
2. Перевіряє наявність та відповідність конфігурації ESLint.
3. Перевіряє конфігурацію `package.json` для всіх робочих просторів:
    а. Перевіряє, чи має `package.json` `"type": "module"`.
    б. Перевіряє, чи містить `package.json` `engines.node` з версією не менше 24.
    в. Перевіряє, чи містить `package.json` `engines.bun` з версією не менше 1.3.
4. Перевіряє конфігураційний файл `.oxlintrc.json` на відповідність канонічному шаблону.
5. Перевіряє файли робочих процесів у `.github/workflows/`:
    а. Перевіряє наявність `lint-js.yml`.
    б. Перевіряє, чи не дублює `lint.yml` кроки лінтінгу JS.
6. Перевіряє наявність файлу `knip.json` у корені проєкту. Якщо він відсутній, копіює канонічний шаблон.
7. Перевіряє наявність застарілих конфігурацій ESLint (`.eslintrc`, `.eslintrc.js`, `.eslintrc.json`, `.eslintrc.yml`) та повідомляє про їхнє існування.
8. Повертає код виходу, що відображає загальний статус перевірки.

## Публічний API

check — забезпечує відповідність проєкту вимогам, описаним у js-lint.mdc.

## Гарантії поведінки

- Read-only: не виконує операцій запису (ФС/БД).
- Перехоплює помилки і не пропускає винятків назовні (fail-safe).
- Свідомо пропускає шляхи: `.github`, `.git`.
