Что уже есть в коде
Bonsite имеет основу копирования и редактирования сайтов, но она ещё не образует генератор минисайтов по запросу.
Сохранить репозиторий сайта в хранилище — не то же самое, что опубликовать его на пользовательском домене.
Проверено чтением кода на базе f96ae27 от 28 сентября 2026 года. API и production-контейнер в рамках этой проверки не запускались.
Переиспользуемая основа
| Часть | Наблюдение по коду | Ограничение для нового продукта |
|---|---|---|
| Проект | Владелец, публичный ID, название, бриф, история копирований, собственный ключ репозитория | Модель ещё ориентирована на исходный URL и импорт страниц |
| Работа со страницами | Копирование, правки, пересборка и история | Не подтверждает создание страницы с нуля |
| Репозиторий сайта | Экспорт фиксируется в Git и записывается через storage gateway | Нет доказательства атомарной публичной версии на домене |
| Хранилище | Реализованы local и S3-совместимый драйверы; local — по умолчанию | Подключение конкретного production-bucket не проверено |
| Долгие операции | Очереди копирования и демо находятся в памяти процесса | Перезапуск не даёт надёжного возобновления очереди; это не распределённый планировщик |
| Проверка здоровья | /health возвращает статус и время | Не проверяет базу, хранилище или выполнение заданий |
S3-драйвер пишет объекты как приватные. Служебные Git-репозитории и снимки не следует делать публичными ради короткой ссылки. Для публикаций нужен отдельный путь выдачи проверенной версии.
Что это означает для запуска
Сначала проверяем, как существующие проекты и история принимают результат генерации без обязательного копирования чужого сайта. Затем добавляем устойчивые задания и версии публикаций. Простое увеличение количества API-процессов не решает ограничения очередей в памяти.
В текущем репозитории не обнаружена папка .github/workflows. Это не доказывает отсутствие внешних проверок, но не позволяет заявлять, что CI приложения уже настроен. Автодеплой документации проверен через DigitalOcean.
Источники
Пути ниже — справочник по проверенной реализации, не обещание доступности функций в production.
| Источник в репозитории | Что проверять |
|---|---|
api/src/slices/site/copy/siteCopy.prisma | Проекты и запуски копирования |
api/src/slices/site/copy/siteProjects.controller.ts | Создание проекта, перенос демо, ветка правок |
api/src/slices/site/repo/domain/repoPublisher.service.ts | Сохранение Git-истории через хранилище |
api/src/slices/service/storage/storage.module.ts | Выбор local/S3 |
api/src/slices/service/storage/data/s3Storage.gateway.ts | Параметры S3 и приватные объекты |
api/src/slices/site/copy/data/inProcessCopyQueue.gateway.ts | Очередь копирования и пересборки |
api/src/slices/demo/demo/data/inProcessQueue.gateway.ts | Очередь демо |
api/src/slices/setup/health/health.controller.ts | Фактическая проверка здоровья |