Настройка процесса генерации документации

This commit is contained in:
2026-04-14 16:40:30 +03:00
parent 02eaab6bce
commit 88987abaa6
180 changed files with 9397 additions and 33226 deletions
+67
View File
@@ -0,0 +1,67 @@
# Правила определения путей файлов
Текущая happy-path реализация строит путь документа по фиксированному шаблону:
`docs/<domain>/<platform>/<doc_type>/<doc_id>.md`
Пример:
`docs/orders/pprb/ui_page/orders.ui.list.md`
## Источники атрибутов
Для построения пути используются четыре основных атрибута:
- `domain`
- `application`
- `platform`
- `doc_type`
- `id` как `doc_id`
Если атрибуты явно указаны в подразделе `6.x`, нужно использовать их.
Если атрибут не указан, он может быть взят из общих метаданных аналитики или определен fallback-логикой.
## Нормализация сегментов
Каждый сегмент пути нормализуется одинаково:
- значение переводится в lowercase;
- все символы, кроме `a-z`, `0-9`, `.`, `_`, `-`, заменяются на `-`;
- ведущие и хвостовые `.` и `-` удаляются.
Примеры нормализации:
- `Payment Status` -> `payment-status`
- `UFS Orders` -> `ufs-orders`
- `crm.mobile` -> `crm.mobile`
## Значения по умолчанию
Если после нормализации сегмент пустой, используются fallback-значения:
- корневая папка: `domain`, иначе `application`, иначе `common`
- `platform` -> `web`
- `doc_type` -> `misc`
- `doc_id` -> `untitled`
## Что важно в текущей версии
- для корневой папки сначала используется `domain`;
- если `domain` не задан, используется `application`;
- `sub_domain` сейчас не участвует в построении пути;
- операции `create`, `update`, `delete` работают с одним и тем же правилом вычисления пути;
- специальных исключений для разных типов документов пока нет;
- отдельные каталоги для `pprb`, `ufs`, `web` задаются только через значение `platform`.
## Практическое правило для агента
Если нужно предложить или определить путь новой страницы, агент должен:
1. определить `application`;
2. определить `domain`;
3. определить `platform`;
4. определить `doc_type`;
5. определить стабильный `doc_id`;
6. взять корневую папку как `domain`, а если он пустой, то `application`;
7. нормализовать все сегменты;
8. собрать путь по шаблону `docs/<root>/<platform>/<doc_type>/<doc_id>.md`.