---
docgen:
  source: npm/rules/abie/js/hc_pairing.mjs
  crc: 5627bda6
  score: 100
---

# hc_pairing.mjs

## Огляд

Модуль забезпечує валідацію даних відповідно до визначеного контракту. Функція check є публічною і є Read-only. Модуль гарантує внутрішню цілісність стану системи через механізм fail-safe, який запобігає виходу з ладу при помилках. Робота модуля стосується даних, визначених у (abie.mdc).

## Поведінка

1.  Запускається перевірка.
2.  Завантажується конфігурація пропусків шляхів.
3.  Зводяться всього список файлів Kubernetes YAML.
4.  Збираються директорії розгортань на основі знайдених YAML файлів.
5.  Перевіряється, чи існує хоча б одна директорія розгортань. Якщо директорій немає, видається повідомлення про пропуск перевірки.
6.  Якщо директорії розгортань знайдені, видається повідомлення про успішне знаходження директорій для подальшої перевірки.
7.  Для кожної знайденої директорії перевіряється наявність файлу hc.yaml у відповідній директорії. Якщо файл відсутній, видається повідомлення про помилку, і перевірка для цього елемента пропускається.
8.  Для кожного знайденого файлу hc.yaml відбувається спроба прочитати його вміст. У разі помилки читання, видається повідомлення про невдачу.
9.  Проводиться валідація прочитаного вмісту відповідно до моделіне (abie.mdc). У разі успішної валідації, видається повідомлення про успіх. У разі невдачі, видається повідомлення про помилку валідації.
10. Повертається код виходу перевірки.

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

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