---
type: JS Module
title: main.mjs
resource: npm/rules/npm-module/header_doc_pointer/main.mjs
docgen:
  crc: ab65b5d3
  model: omlx/gemma-4-e4b-it-OptiQ-4bit
  score: 100
  issues: judge:inaccurate:0.98
  judgeModel: openai-codex/gpt-5.4-mini
---

## Огляд

Файл забезпечує валідацію відповідності конвенціям документації для файлів правил, розташованих у директорії `.cursor/rules/`, та файлів навичок у `.cursor/skills/`. Він сканує кодову базу у директорії `js/` для пошуку файлів документації, перевіряючи, чи не перевищує JSDoc-блок довжину одного рядка для опису поведінки кожного файлу правила або навички.

## Поведінка

Поведінка:

1. Викликається `main`.
2. Створюється репортер.
3. Для сегментів `npm/rules` та `npm/skills` сканується кожен піддиректорія правил або скілів.
4. Для кожної піддиректорії перевіряється її каталог `js/`.
5. У каталозі `js/` скануються всі файли з розширенням `.mjs`, окрім тестів.
6. Для кожного знайденого файлу:
   а. Визначається відповідний файл документації у `docs/`, використовуючи ім'я без розширення.
   б. Якщо такий файл документації існує, аналізується перше заголовочне JSDoc-блоку у коді.
   в. Якщо JSDoc-блок відсутній, перехід до наступного файлу.
   г. Якщо JSDoc-блок присутній, рахується кількість непустіших рядків у його тілі, ігноруючи відступ.
   д. Якщо ця кількість перевищує один, це реєструється як порушення, оскільки документ повинен лише посилатися на поведінку.
7. Після обробки всіх файлів повертається код виходу репортера.

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

main — сканує файли правил у директоріях `npm/rules/*\/js/*.mjs` та `npm/skills/*\/js/*.mjs`, а також керує генерацією документації, посилаючись на існуючі файли `docs/<stem>.md`.

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

- Read-only: не виконує операцій запису (ФС/БД).
