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

## Огляд

Модуль забезпечує керування якістю, метаданими та актуальністю документації. Він дозволяє встановлювати мінімальний поріг якості за допомогою `QUALITY_THRESHOLD`, обчислювати та зчитувати контрольні суми (CRC32) за допомогою `crc32` та `readDocCrc`, а також парсити та генерувати метадані документації за допомогою `parseDocFrontmatter` та `buildDocFrontmatter`.

## Поведінка

Поведінка:
QUALITY_THRESHOLD — Встановлює поріг якості документації, нижче якого доки вважаються неякісними.
crc32 — Обчислює та повертає CRC32 вмісту у вигляді 8-символьного шестнадцяткового рядка.
parseDocFrontmatter — Розбирає вміст markdown-файлу, виділяючи метадані з блоку frontmatter та повертаючи тіло документа.
buildDocFrontmatter — Формує YAML-блок frontmatter, сумісний з OKF, для посилання на джерело та його метаданих.
stampDoc — Генерує повний markdown-документ, вставляючи новостворений frontmatter у тіло документа.
readDocCrc — Зчитує та повертає CRC32, збережений у frontmatter markdown-документа.
readDocQuality — Зчитує зі frontmatter markdown-документа оцінку якості та пов'язані з нею помилки.
readDocModel — Зчитує зі frontmatter markdown-документа ідентифікатор моделі, яка створила документ.
readDocTier — Зчитує зі frontmatter markdown-документа рівень моделі-генератора.
staleness — Визначає, чи застарілий markdown-документ порівняно з його вихідним джерелом за допомогою CRC32.

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

QUALITY_THRESHOLD — визначає нижню межу якості документа; оцінки нижче цієї межі вважаються неякісними.
crc32 — генерує хеш вмісту документа у 8-символьтному hex-форматі, використовуючи нативний модуль `node:zlib.crc32`.
parseDocFrontmatter — витягує метадані з початку документа. Якщо метаданих немає, повертає порожні дані та вхідний текст.
buildDocFrontmatter — створює блок метаданих, сумісний зі стандартом OKF. Він містить основні поля OKF та вкладений блок `docgen:` з інформацією про CRC, модель та якість.
stampDoc — додає інформацію про створення або оновлення документа (наприклад, CRC та метки) до самого вмісту.
readDocCrc — зчитує хеш документа з метаданих. Повертає `null`, якщо метадані відсутні або хеш не знайдено.
readDocQuality — зчитує оцінку якості документа з його метаданих.
readDocModel — зчитує назву моделі, яка генерувала документ, із метаданих. Повертає `null`, якщо це поле не визначено.
readDocTier — зчитує рівень (tier) моделі-генератора з метаданих. Повертає `null`, якщо поле відсутнє.
staleness — визначає, чи є документ актуальним порівняно з його джерелом. Позначає як `missing` (якщо документа немає), `crc-mismatch` (якщо хеш у документа не збігається з хешем джерела) або "свіжий" (інакше).

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

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