---
type: JS Module
title: main.mjs
resource: npm/rules/image-compress/main.mjs
docgen:
  crc: abe40746
  model: omlx/gemma-4-e4b-it-OptiQ-4bit
  score: 90
---

## Огляд

Модуль забезпечує механізми для виконання та валідації контенту відповідно до визначених правил. Функція `run` виконує перевірку відповідності контенту визначеним критеріям у межах поточного контексту прогону. Функція `lint` виконує виявлення або стиснення зображень залежно від режиму `readOnly`.

## Поведінка

run виконує стандартну перевірку, використовуючи контекст прогону.
lint виконує перевірку або стиснення зображень, залежно від опцій: якщо `readOnly` встановлено, виконується лише детект, інакше виконується стиснення.

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

run — головна точка входу для виконання правил, де відбувається перевірка на відповідність вимогам (JS-занепокоєння $\rightarrow$ політика $\rightarrow$ посилання MDC).
lint — перевірка зображень за допомогою `@nitra/minify-image`, що може працювати у режимі лише читання або з можливістю автоматичного виправлення.

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

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