mirror of
https://github.com/dartdavros/chatballs.git
synced 2026-10-06 01:24:59 +03:00
Установка перезапускает сам бэкенд, который о ней и рассказывает, — и до сих пор человек об этом не узнавал: признак «идёт установка» жил в useRef и исчезал при перезагрузке страницы, прогресса не было вовсе (одна строка текста), а готовый результат карточка «Обновления» не показывала совсем. Запустив обновление, человек оставался перед экраном без единого признака того, что что-то происходит. Теперь ход установки — отдельный блок: шаги (запуск, файл релиза, образы, перезапуск) с отметками пройденного, текущий шаг с пульсом, номер шага и время с начала. Молчание бэкенда — это и есть перезапуск, так он и подписан. Метка установки живёт в sessionStorage, поэтому перезагрузка страницы (в том числе во время лежащих сервисов) ход не теряет, а время считается от момента запроса, а не от перезагрузки. Когда версия встала, карточка и полоса показывают итог с кнопкой «Обновить страницу» — и молчат, если страница уже открыта в новой версии. Прогресс появляется по нажатию кнопки, а не по ответу сервера. Полоса наверху молчит, пока карточка «Обновления» на экране. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>