Add upload wait timer and progress explanation

This commit is contained in:
“Naeel”
2026-09-06 12:23:58 +03:00
parent 8768fd96ec
commit 87de22306f
6 changed files with 119 additions and 17 deletions
@@ -0,0 +1,26 @@
# 2026-09-06: UX-индикация ожидания первого файла
## Наблюдение
При начале загрузки пользователь мог увидеть длительное отсутствие визуального прогресса на первом файле. Причина: первый PUT ещё не успел вызвать событие `XHR upload.onprogress`, а цепочка дополнительно выполняет первичное установление соединений и передачу файла в буфер ВМ.
Это не является зависанием, но без пояснения пользователь может нажать «Отмена».
## Изменение
В demo `site/templates/index.html` добавлены:
- отдельный блок текущей фазы загрузки;
- пояснение, что выполняются соединение с буфером ВМ, PUT, перенос в RAM и очистка буфера;
- таймер `Прошло: MM:SS`, запускающийся до первого сетевого ответа;
- остановка таймера при завершении, ошибке или отмене;
- сообщение о том, что уже переданные до отмены файлы остаются в RAM сессии.
В `PLAN.md` добавлен TODO следующей UX-правки: отдельные этапы `PUT`, `GET`, `DELETE`, прогресс пачки, обратная связь при ретраях и проверка мобильного сценария.
## Проверка
- `node build.mjs` выполнен успешно.
- `node --test tests/test_upload_layer2.test.mjs`: 9 тестов пройдены.
- `python3 -m pytest tests/ -v`: 10 тестов пройдены.
- Версия приложения повышена до `0.2.1` в `package.json` и `site/app.py`.