---
type: JS Module
title: fix-eslint.mjs
resource: npm/rules/js/eslint/fix-eslint.mjs
docgen:
  crc: e354d939
---

## Огляд

T0-autofix для `js/eslint`: детермінований прогін лінтерів у fix-режимі
(`oxlint --fix` + `eslint --fix`) по файлах, де детектор знайшов порушення. Виправляє лише
авто-fixable правила; усе інше лишається детектору на повторну перевірку, а далі — LLM-ладдеру.
Запис незворотний (поза rollback).

## Поведінка

- Збирає унікальні файли з порушень концерну, лишає лише js-сімейство (`.mjs/.cjs/.js/.jsx/.ts/.tsx/.vue`).
- Послідовно застосовує `oxlint --fix` (CLI) і `eslint --fix` (через API з `outputFixes`).
- До списку змінених потрапляють лише файли, чий вміст фактично змінився (порівняння до/після).

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

- `patterns` — масив T0-патернів (`id` / `test` / `apply`), що його споживає центральний fix-pipeline.
  Єдиний патерн `js-eslint-autofix` спрацьовує, якщо є порушення з прив'язкою до файлу.

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

- Якщо серед порушень немає js-файлів — лінтери не запускаються, змін немає.
- Повертаються лише фактично змінені файли; перед записом кожен реєструється через `recordWrite`.
- Межа CI: модуль належить fix-фазі; у `--no-fix` (CI) не запускається — узгоджено із
  забороною `oxlint --fix`/`eslint --fix` у CI.
