Files
selfpost/docs/documentation-plan.md
T
mixeme c304c92955
test / test (push) Has been cancelled
docs: split README into overview and operator guide for release
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-08 10:36:24 +03:00

5.4 KiB
Raw Blame History

План документации SelfPost

Статус: закрыт (D1–D9, август 2026). Проход выполнен; история задач и находок — в CHANGELOG.md и git log. Этот файл дальше держит состав пакета, метод сверки с кодом и правила, чтобы документация не разошлась снова.

Живые документы (вместо архивного ТЗ):

Дом Файл
Пользовательская поставка README.md + guide.md
Границы продукта product.md
As-built устройство architecture.md
Процесс разработки development.md
Безопасность security.md
Исторический снимок v1.0 archive/specification-v1.0.md

Отложенная полировка v1.x (тег образа в compose) — roadmap.md § «v1.x — хвост документации и деплоя». Пункты про Quick start и docs/logo закрыты.


1. Состав пакета

Поставляемое пользователю

Артефакт Состояние
README.md Краткий обзор, требования, quick start, ссылки на документацию, reference deploy, лицензия
guide.md Прокси, env, DNS, прогрев IP, эксплуатация, rate limiting, бэкап, порты, тег образа
LICENSE AGPL-3.0, полный текст
deploy/docker-compose.yml + прокси Apache + nginx/Caddy/Traefik в deploy/
deploy/.env.example Публичные переменные; полный справочник в guide.md
CHANGELOG.md Keep a Changelog

Рабочие документы

progress.md, implementation-plan.md, roadmap.md, этот файл.

Вне объёма v1.x: CONTRIBUTING.md, man-страницы, отдельный сайт документации.


2. Метод сверки с кодом

Правило: у каждого утверждения в документации есть источник истины в дереве; сверка идёт от кода к тексту.

Класс утверждений Источник истины
Env-переменные, дефолты loadConfigcmd/panel/main.go; ${VAR:-…} в build/
Почтовый тракт build/postfix-config.sh
Маршруты панели internal/web/web.go
Бэкап/restore, экспорт домена internal/backup/, cmd/selfpost-backup/
Сессии internal/store/sessions.go, internal/web/session.go
Ротация лога, reload build/logrotate-mail.conf, build/logrotate-loop.sh, build/postfix-cert-reload.sh
Деплой deploy/docker-compose.yml, build/Dockerfile
Чеклист README таблица «Поставляемое пользователю» выше; детали — guide.md
Продукт, out of scope product.md
As-built architecture.md
Обязательная безопасность security.md

Порядок: перечислить фактическое в коде → найти в guide.md / architecture.md. Перед каждым тегом — короткий проход по этой таблице, не полная ревизия текста.


3. Правила поддержки

  1. Правило шага: новая/переименованная env-переменная, маршрут панели или наблюдаемое поведение почтового тракта закрываются вместе с guide.md / .env.example и записью в CHANGELOG (протокол — progress.md).
  2. Регресс env (D7): cmd/panel/envdoc_test.go — падает на недокументированном ключе loadConfig или build-скриптов.
  3. Новые расхождения дописываются в roadmap.md или implementation-plan.md, а не исправляются молча.

4. Гейт релиза (документация)

Документационный проход D1D9 закрыт. До тега релиза остаётся общий гейт: e2e (готов, development.md) и ревизия безопасности (implementation-plan.md § D) — см. progress.md.