---
docgen:
  source: npm/rules/lint/js/orchestrate.mjs
  crc: 2e5db1e7
  model: omlx/gemma-4-e4b-it-OptiQ-4bit
  score: 100
---

# orchestrate.mjs

## Огляд

Оркестратор `n-cursor lint` визначає, які правила лінтування застосовувати, керуючись двома ортогональними осями: консолідацією правил та уніфікацією режиму `readonly`. Вибір правил відбувається на основі конфігурацій, зокрема файлів `meta.json`, які визначають обсяг дії (`per-file` чи `full`) для кожного правила. Запуск лінтування може сканувати лише змінені файли відносно origin (за замовчуванням) або весь репозиторій при використанні прапорця `--full`.

## Поведінка

Поведінка
selectLintRules вибирає і сортує ідентифікатори правил на основі їхнього обсягу дії (`per-file` або `full`) та прапорця `--full`.
runLint запускає оркестрацію лінтування: або виконує перевірку конформності для заданих правил, або ітерує по алфавітно відсортованих правилах, запускаючи лінтер для змінених файлів (за замовчуванням), або виконує перевірку конформності всього репозиторію при використанні прапорця `--full`.

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

selectLintRules — Вибирає ідентифікатори правил для контексту в алфавітному порядку.
runLint — Запускає процес лінтування.
  full — Сканує весь репозиторій порівняно з початковим станом.
  readOnly — Виявляє проблеми без внесення змін.
  rules — Перевіряє лише відповідність заданого набору правил, ігноруючи повне сканування.

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

- Read-only: файл не виконує операцій запису у файлову систему.
- Не звертається до мережі.
