stanislav_dubich@dev:~$ cat file-backup-system/README.md
RPA-инструмент для аварийного восстановления файлов из облачного сервиса. Java (API) + Go (воркеры). Корректная браузерная автоматизация.
Проблема: Public API облачного сервиса не поддерживает экспорт нативных файлов. Команда из сотен человек рискует потерять работу при сбоях или блокировках аккаунта.
Решение: RPA (Robotic Process Automation). Playwright эмулирует действия пользователя: открывает файл → экспортирует → стримит в S3.
Соответствие правилам: Ограничение частоты (1 файл/воркер), паузы как у человека, корректное обращение к сервису. Инструмент для собственного контента компании, а не скрапинг чужих данных.
┌─────────────────┐ ┌─────────────────┐
│ Admin Panel │──REST──▶│ Java Backend │◀──OAuth2/JWT──▶ Keycloak
│ (Frontend) │ │ (Spring Boot) │
└─────────────────┘ └────────┬────────┘
│
┌────────────────────────────┼────────────────────────────┐
│ │ │
▼ ▼ ▼
┌───────────────┐ ┌───────────────┐ ┌───────────────┐
│ PostgreSQL │ │ Figma API │ │ Go Workers │
│ (metadata) │ │ (teams, │ │ (Playwright) │
└───────────────┘ │ projects) │ └───────┬───────┘
└───────────────┘ │
▼
┌───────────────┐
│ S3 / Yandex │
│ Object Store │
└───────────────┘
Изоляция ресурсов: Headless Chrome потребляет 500MB+ RAM на сессию и может утечь. OOM в браузере не должен убивать админку.
Пул воркеров с очередью задач на PostgreSQL:
Обработка ошибок: