31 lines
1.4 KiB
Markdown
31 lines
1.4 KiB
Markdown
# План v3.1 — пофайловая обработка + прогресс в таблице (2026-07-12)
|
|
|
|
## Проблема
|
|
Фронтенд v3.0 отправляет все файлы одним запросом → долгий LLM-вызов → таймаут.
|
|
Нужно: обрабатывать по одному, прогресс в таблице, все результаты → один ZIP.
|
|
|
|
## Решение
|
|
|
|
### Фронтенд (index.html)
|
|
1. **XHR** вместо fetch — надёжнее для blob, явный timeout
|
|
2. **Колонка «Статус»** в таблице файлов
|
|
3. **По одному файлу:** цикл, каждый файл → отдельный XHR → ZIP
|
|
4. **Прогресс в таблице:** ⏳ → ✓ 2.1 сек (или ✗ ошибка)
|
|
5. **JSZip** — склеивает все полученные ZIP'ы в один
|
|
6. **Скачивание** — один файл `drhider_output.zip` в конце
|
|
|
|
### Статусы в таблице
|
|
| Статус | Отображение |
|
|
|---|---|
|
|
| Ожидание | ⏳ |
|
|
| Успех | ✓ 2.1 сек |
|
|
| Ошибка | ✗ сообщение |
|
|
|
|
### Бэкенд
|
|
Без изменений. API уже принимает один файл.
|
|
|
|
### НЕ трогать
|
|
- gunicorn не нужен (файлы по одному, каждый запрос ≤10 сек)
|
|
- app.run() — остаётся
|
|
- drhider пакет — без изменений
|