Дата анализа: 2025-11-08
Проект: marketplace-mvp (mp1)
.env (секреты)requirements.txt (зависимости)alembic/ (миграции БД).gitignore (есть но неполный)Что должно быть:
- Как развернуть локально (есть частично в README)
- Как развернуть на production сервере
- Systemd service файл (если запускается как сервис)
- Nginx конфигурация (если за прокси)
- Процедура обновления без downtime
- Rollback процедура
- Environment variables описание (есть в .env но без документации)
Почему важно:
- Сейчас непонятно как деплоить на production
- Если что-то сломается - непонятно как откатить
- Нет checklist перед deploy
Приоритет: 🟡 MEDIUM (нужен когда пойдём в production)
Что должно быть:
- На каком сервере запускается (IP, hostname)
- Какие порты используются
- Systemd конфигурация
- Nginx конфигурация
- Автозапуск при перезагрузке сервера
- Файловая структура на сервере
Почему важно:
- Сейчас информация размазана по разным местам
- Непонятно как настроен production
Приоритет: 🟡 MEDIUM
Что должно быть:
- Где смотреть логи (/var/log/mp1/, journalctl)
- Какие метрики отслеживать (CPU, RAM, disk, requests/min)
- Health check endpoint (/health)
- Алерты (когда слать уведомления)
- Dashboard (Grafana/простой HTML)
Почему важно:
- Сейчас нет способа понять что приложение умерло
- Нет алертов при проблемах
- Логи не ротируются
Приоритет: 🟡 MEDIUM (для production)
Что должно быть:
- Стратегия бэкапов БД (как часто, куда)
- Скрипт backup (scripts/backup.sh)
- Процедура восстановления
- Тестирование восстановления (раз в месяц)
- Retention policy (хранить N дней)
Почему важно:
- КРИТИЧНО! Сейчас НЕТ автоматических бэкапов
- Если БД сломается - потеряем все данные
- Нет процедуры восстановления
Приоритет: 🔴 HIGH (КРИТИЧНО для production!)
Что должно быть:
- Диаграммы компонентов (Mermaid/PlantUML)
- Sequence diagrams (как работают основные flow)
- ER диаграмма БД (визуальная)
- Data flow диаграммы
- Технические решения (почему выбран Streamlit, SQLite vs PostgreSQL)
Почему важно:
- Сейчас архитектура только текстом в PROJECT-MASTER
- Нет визуальных диаграмм
- Новому разработчику сложно понять как всё работает
Приоритет: 🟢 LOW (nice to have, но не критично)
Что должно быть:
- Описание КАЖДОГО поля в КАЖДОЙ таблице
- Что значит каждый статус (awaiting_packaging, shipped и т.д.)
- Enum значения (fulfillment_scheme: fbo/fbs/realfbs - что это значит)
- Бизнес-правила (когда меняется статус)
Почему важно:
- Сейчас значения полей описаны в PROJECT-MASTER, но не полностью
- Непонятно что значит realfbs_type = "pvz" vs "courier"
- Новому разработчику надо лезть в код
Приоритет: 🟢 LOW (есть частично в PROJECT-MASTER)
Что должно быть:
- Security checklist (SQL injection защита, XSS, CSRF)
- Как хранятся пароли (если будет авторизация)
- API key protection
- Rate limiting (защита от bruteforce)
- HTTPS настройка
- Secrets management (не коммитить .env)
- GDPR compliance (если работаем с персональными данными покупателей)
Почему важно:
- КРИТИЧНО! Работаем с данными покупателей (адреса, телефоны)
- Работаем с API ключами маркетплейсов
- Нет security audit
Приоритет: 🔴 HIGH (КРИТИЧНО если есть персональные данные!)
Что должно быть:
- .env.example с ВСЕМИ переменными
- Комментарии где взять значения
- Какие обязательные, какие опциональные
- Дефолтные значения для dev
Почему важно:
- Сейчас нет .env.example
- Непонятно какие переменные нужны
- Каждый раз надо спрашивать
Приоритет: 🟡 MEDIUM
Что должно быть:
- Стратегия тестирования (unit/integration/e2e)
- Как запускать тесты (pytest tests/)
- Coverage требования (минимум 70%?)
- CI/CD pipeline (автоматически тесты при push)
- Test data (seed data для тестов)
Почему важно:
- Сейчас нет тестов (или очень мало)
- Непонятно как тестировать
- Нет автоматического запуска тестов
Приоритет: 🟡 MEDIUM (для качества кода)
Что должно быть:
- Бенчмарки (сколько заказов/сек обрабатывает)
- Узкие места (медленные запросы)
- Оптимизации (индексы, кеширование)
- Load testing результаты
Почему важно:
- Сейчас нет понимания производительности
- Непонятно сколько пользователей можно обслужить
- Нет профилирования
Приоритет: 🟢 LOW (оптимизировать когда появятся проблемы)
Что должно быть:
- Руководство для конечных пользователей (не разработчиков)
- Скриншоты интерфейса
- Пошаговые инструкции (как подключить Ozon, как загрузить заказы)
- FAQ для пользователей
- Troubleshooting (что делать если...)
Почему важно:
- Если это для других пользователей (не только вы)
- Уменьшает количество вопросов
- Можно дать вместо объяснений
Приоритет: 🟢 LOW (если это не для внешних пользователей)
Что должно быть:
- Часто задаваемые вопросы
- Типичные проблемы и решения
- "Как сделать X?"
Почему важно:
- База знаний для пользователей
- Можно дать ссылку вместо объяснения
Приоритет: 🟢 LOW
Что должно быть:
- Как начать контрибьютить
- Code review процесс
- Git workflow (feature branches, PR process)
- Coding standards (ссылка на CODE-GUIDE)
- Как предложить новую фичу
Почему важно:
- Если будут другие разработчики
- Если open-source
- Стандартизация процесса
Приоритет: 🟢 LOW (если только вы разработчик)
Что должно быть:
- Детальная настройка для разработчиков
- Установка всех зависимостей
- Настройка IDE (VSCode/PyCharm)
- Pre-commit hooks
- Troubleshooting установки
Почему важно:
- README покрывает quick start
- Но нет детальной настройки
- Новому разработчику может понадобиться больше деталей
Приоритет: 🟢 LOW (README достаточно для simple setup)
Что должно быть:
- Лицензия проекта (MIT, GPL, proprietary)
Почему важно:
- Юридическая защита
- Если код будет публичным
Приоритет: 🟡 MEDIUM (если планируется публикация)
Что должно быть:
- Какие данные собираются
- Как используются
- Кому передаются
- GDPR compliance
- 152-ФЗ compliance (РФ закон о персональных данных)
Почему важно:
- КРИТИЧНО! Обрабатываем персональные данные покупателей
- Юридическое требование
- Штрафы за нарушение
Приоритет: 🔴 HIGH (если есть персональные данные!)
Что должно быть:
- Автоматический запуск тестов при push
- Lint проверка
- Deploy на staging при merge в develop
- Deploy на production при создании tag
Почему важно:
- Автоматизация рутины
- Меньше ошибок
- Быстрее deployment
Приоритет: 🟡 MEDIUM (для качества и скорости)
Что должно быть:
- Как мигрировать данные из старой системы
- Скрипты миграции
- Маппинг полей (старая БД → новая БД)
- Проверка после миграции
Почему важно:
- Если переносим из Excel/старой БД
- One-time процесс но критичный
Приоритет: ⚪ N/A (если нет миграции)
Что должно быть:
- Скрипт для заполнения тестовыми данными
- Данные для локальной разработки
- Данные для демо
Почему важно:
- Удобно для тестирования
- Можно быстро развернуть dev окружение
- Не надо вручную создавать данные
Приоритет: 🟢 LOW (nice to have)
BACKUP.md + скрипт backup
- Почему: Нет бэкапов = можем потерять все данные
- Время: 2-3 часа
- Действие: Создать скрипт backup БД, настроить cron
SECURITY.md + .env.example
- Почему: Работаем с персональными данными и API ключами
- Время: 3-4 часа
- Действие: Security audit, создать .env.example
PRIVACY.md (если требуется по закону)
- Почему: 152-ФЗ требует
- Время: 2-3 часа
- Действие: Написать политику конфиденциальности
DEPLOYMENT.md
- Почему: Нужно задокументировать deployment
- Время: 3-4 часа
- Действие: Описать процесс deployment, rollback
MONITORING.md + health check
- Почему: Нужно видеть что приложение работает
- Время: 2-3 часа
- Действие: Добавить /health endpoint, настроить логи
INFRASTRUCTURE.md
- Почему: Задокументировать где и как запущено
- Время: 1-2 часа
- Действие: Описать сервер, порты, конфиги
.env.example
- Почему: Непонятно какие переменные нужны
- Время: 30 минут
- Действие: Скопировать .env, удалить значения, добавить комментарии
ARCHITECTURE.md с диаграммами
- Время: 2-3 часа
- Действие: Нарисовать диаграммы в Mermaid
TESTING.md + тесты
- Время: 4-6 часов
- Действие: Написать тесты, документировать стратегию
USER-GUIDE.md (если нужно)
Q: Как планируете деплоить mp1 на production?
- [ ] Запускать вручную (streamlit run app.py)
- [ ] Systemd service (автозапуск при перезагрузке)
- [ ] Docker контейнер
- [ ] Другое?
Влияет на: DEPLOYMENT.md, INFRASTRUCTURE.md
Q: Как часто нужны бэкапы?
- [ ] Каждый час
- [ ] Каждый день
- [ ] Каждую неделю
Q: Куда сохранять бэкапы?
- [ ] На том же сервере (/backup/)
- [ ] На отдельном сервере
- [ ] В облако (S3, Google Drive)
Влияет на: BACKUP.md
Q: Какие персональные данные обрабатываются?
- [ ] ФИО покупателей
- [ ] Адреса доставки
- [ ] Телефоны
- [ ] Email
- [ ] Паспортные данные (вряд ли)
Q: Требуется ли GDPR/152-ФЗ compliance?
- [ ] Да, обязательно (продаём в РФ/ЕС)
- [ ] Нет, только для себя
Влияет на: SECURITY.md, PRIVACY.md
Q: Как хотите мониторить приложение?
- [ ] Простые логи в файл
- [ ] Grafana dashboard
- [ ] Алерты в Telegram
- [ ] Email уведомления
Влияет на: MONITORING.md
Q: Кто будет использовать mp1?
- [ ] Только вы
- [ ] Ваша команда (2-5 человек)
- [ ] Внешние пользователи (клиенты)
Влияет на: USER-GUIDE.md, CONTRIBUTING.md
Q: Нужны ли автоматические тесты?
- [ ] Да, обязательно (планируем активную разработку)
- [ ] Желательно но не критично
- [ ] Нет, не нужны (маленький проект)
Влияет на: TESTING.md
День 1-2: Безопасность и бэкапы
- [ ] Создать SECURITY.md
- [ ] Создать .env.example
- [ ] Создать BACKUP.md
- [ ] Написать скрипт backup.sh
- [ ] Настроить cron для автоматических бэкапов
День 3-4: Deployment
- [ ] Создать DEPLOYMENT.md
- [ ] Задокументировать процесс deployment
- [ ] Создать systemd service (если нужно)
- [ ] Задокументировать rollback процедуру
День 5: Мониторинг
- [ ] Создать MONITORING.md
- [ ] Добавить /health endpoint
- [ ] Настроить логирование
Неделя 2: Тестирование
- [ ] TESTING.md
- [ ] Написать unit тесты
- [ ] Настроить CI/CD
Неделя 3: Документация для пользователей
- [ ] USER-GUIDE.md (если нужно)
- [ ] FAQ.md
- [ ] Скриншоты
Неделя 4: Архитектура
- [ ] ARCHITECTURE.md с диаграммами
- [ ] DATA-DICTIONARY.md
| Документ | Приоритет | Время | Для чего |
|---|---|---|---|
| BACKUP.md + скрипт | 🔴 HIGH | 2-3ч | Защита от потери данных |
| SECURITY.md | 🔴 HIGH | 3-4ч | Защита персональных данных |
| .env.example | 🔴 HIGH | 30мин | Документация переменных |
| DEPLOYMENT.md | 🟡 MEDIUM | 3-4ч | Процесс deployment |
| MONITORING.md | 🟡 MEDIUM | 2-3ч | Мониторинг production |
| INFRASTRUCTURE.md | 🟡 MEDIUM | 1-2ч | Описание инфраструктуры |
| PRIVACY.md | 🔴/🟡 | 2-3ч | Compliance (если нужно) |
| ARCHITECTURE.md | 🟢 LOW | 2-3ч | Визуальные диаграммы |
| TESTING.md | 🟢 LOW | 4-6ч | Стратегия тестирования |
| USER-GUIDE.md | 🟢 LOW | 3-4ч | Для пользователей |
| LICENSE | 🟡 MEDIUM | 10мин | Юридическая защита |
Итого критичных задач: 3-4 документа (~10-12 часов работы)
Итого важных задач: 4 документа (~8-10 часов работы)
Итого опциональных: 4 документа (~11-15 часов работы)
Последнее обновление: 2025-11-08
Автор: Claude Code Analysis