---
docgen:
  source: npm/skills/doc-files/js/docgen-prompts.mjs
  crc: c454d2a6
---

# docgen-prompts

## Огляд

Промптовий шар local-only конвеєра файлових док: будує messages-набори для секційної генерації, критики й переписування, а секцію «Гарантії поведінки» формує детерміновано без LLM. Весь стиль документа (українська, поведінковість, заборона сигнатур) зашитий у спільний system-блок.

## Поведінка

1. Для кожної секції збирається мінімальний контекст: «Огляд» — лише людиночитний витяг фактів (без коду), «Поведінка» — єдина секція з повним кодом файлу у вікні, «Публічний API» — лише список експортів з їхніми описами. Анкори (URL, константи, маркери, приклади) додаються окремим блоком, коли вони є.
2. Факт-лист перекладається в негативні й позитивні твердження для моделі: свідомі пропуски шляхів, read-only, перехоплення помилок, явне «Кешування: НЕМАЄ — не згадуй кеш» — щоб відсікти типові галюцинації ще в промпті.
3. Критик отримує чорнетку секції і закритий список критеріїв дефектів (generic-фрази, пропущені анкори, граматика, підзаголовки, скопійовані сигнатури, вигадані факти); відповідь — список проблем або `NONE`. Переписувач отримує чорнетку разом зі списком проблем і повертає лише оновлений текст.
4. «Гарантії поведінки» складаються шаблоном з маркерів факт-листа (read-only, fail-safe, кешування, пропуски шляхів, відсутність мережі) — нуль запитів і нуль generic-фраз; за відсутності маркерів — твердження про детермінованість.

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

- `sectionMessages` — секційні набори messages з мінімальним контекстом під кожну секцію.
- `criticMessages` / `refineMessages` — пара критика й переписувача для одного циклу уточнення секції.
- `guaranteesFromMarkers` — детермінований текст секції гарантій з маркерів.
- `oneShotMessages` — один запит на весь документ для нестандартних структур файлів.
- `STYLE` — спільний system-блок стилю.

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

- Код файлу потрапляє лише у промпт секції «Поведінка» й у one-shot — решта секцій працюють на факт-листі.
- Формування промптів детерміноване: однакові факти й код → однакові messages.
- Не звертається до мережі й не виконує LLM-викликів — лише будує тексти.
