docfy check

Проверяет, что все контроллеры задокументированы полностью, ещё до мержа. При любом расхождении завершается с кодом 1. Сделано под CI.

Использование

bash
npx nestjs-docfy check [options]

Параметры

OptionDefaultDescription
--root <path>.Project root directory
--tsconfig <path>auto-detectedPath to tsconfig.json
--pattern <glob>**/*.controller.tsGlob pattern to find controllers
--format <format>tsФормат docs-файлов, которые нужно искать: ts или js
--jsonfalseВыводить один объект JSON вместо форматированного текста: { controllersChecked, issues, docfyUiPin, versionDrift, passed }. Так бот pr-check.yml разбирает результат, а не вычитывает вывод из терминала.
--quietfalseSuppress all output except errors

Что проверяется

  • Контроллеры с HTTP-методами, но без companion-файла документации
  • Контроллеры, у которых с момента последнего generate появились новые методы
  • Docs-файлы с отметкой более старой версии nestjs-docfy, чем установленная (это просто к сведению, обновить можно через generate --overwrite)

Пример вывода

text
✖ UsersController, undocumented methods: updateProfile, deleteAccount
  → run nestjs-docfy generate --force to merge new methods

✖ 2 controller(s) out of sync.

Интеграция с CI

.github/workflows/*.yml
# GitHub Actions example
- name: Check docs are up to date
  run: npx nestjs-docfy check

Либо в виде npm-скрипта:

json
{
  "scripts": {
    "docs:check": "nestjs-docfy check"
  }
}