---
type: JS Module
title: env_dns.mjs
resource: npm/rules/abie/js/env_dns.mjs
docgen:
  crc: f2aff16b
  score: 100
---

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

## Поведінка

Алгоритм перевірки конфігурації середовища.

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

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

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