27 lines
1.9 KiB
Markdown
27 lines
1.9 KiB
Markdown
# 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`.
|