---
type: JS Module
title: main.mjs
resource: npm/rules/abie/hc_pairing/main.mjs
docgen:
  crc: 8aa393da
  model: omlx/gemma-4-e4b-it-OptiQ-4bit
  tier: local-min-retry
  score: 100
  issues: judge:inaccurate:0.98
  judgeModel: openai-codex/gpt-5.4-mini
---

## Огляд

Функція `lint` аналізує каталоги, що містять конфігураційні файли для анімованих деплоїв. Вона перевіряє наявність файлу `hc.yaml` у кожному такому каталозі та валідацію його вмісту відповідно до структури `abieHcModeline`. Результати перевірки надаються у виводі, вказуючи на відповідність або деталізуючи знайдені порушення. Функція є read-only і не виконує операцій з файловою системою чи базами даних. Вона забезпечує fail-safe поведінку, перехоплюючи всі потенційні помилки замість того, щоб викидати винятки, і не використовує механізму кешування. У поведінці обов'язково згадуються маркери повідомлень відповідно до `abie.mdc`.

## Поведінка

Поведінка:
1. Визначає кореневу директорію для аналізу.
2. Збирає списки директорій з анімованими деплойментами та відповідних YAML-файлів, ігноруючи закриті шляхи, визначені в конфігурації.
3. Якщо деплойменти не знайдено, повідомляє про пропуск перевірки `hc.yaml` та завершує роботу.
4. Для кожної знайденої директорії деплоймента виконує наступне:
    а. Визначає повний та відносний шлях до файлу `hc.yaml`.
    б. Перевіряє, чи існує файл `hc.yaml` поруч із деплойментом. Якщо ні, фіксує порушення та рекомендує додати `HealthCheckPolicy` (abie.mdc).
    в. Намагається прочитати вміст `hc.yaml`. У разі невдачі з читанням, фіксує це як порушення.
    г. Якщо файл прочитано успішно, валідує його вміст на відповідність моделі `abieHcModeline`. У разі успішної валідації, підтверджує відповідність. У разі виявлення помилки, фіксує це порушення.
5. Повертає зведений результат усіх перевірок.

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

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