WEB-241 · Задача · shell · web
Протухший клиент после посадки: старые вкладки живут на старом JS — нужен «доступна новая версия, обновить»
Закрыт
P2
ведёт: owner
Суть
Owner 06.08: «резиновый чат сломан» оказался старой вкладкой со старым бандлом (в новой ок) — при нашем темпе посадок (10+/день) открытые вкладки часто протухают и выглядят как регрессии. Сделать: клиент сверяет свой build-sha с серверным (CANON/health уже отдаёт marker) периодически/на focus → ненавязчивый тост «Доступна новая версия — Обновить» (кнопка reload). Учесть sw.js (он уже стампится билдом). Это сэкономит и наши круги по ложным регрессиям.
## 2026-08-23 BOARDSWEEP: NEEDS-VISUAL
- Evidence: Canonical PWA skew implementation is src/lib/pwa/versionSkew.ts, PWAInitializer.tsx and versionSkew tests; visible stale-tab toast/reload still needs browser acceptance. buildFixed=v4-54ab78f.
- buildFixed: v4-54ab78f; canonical: v4-081ff4fb5 / 081ff4fb5f6110f8001daec7ed910ccef2e395dc.
- Status preserved by sweep: review.
Доказательства
[2026-08-24 STALEREV против 61bc04462; в проде с посадки 45 v4-5a4edbac3] Вердикт CANT-VERIFY: код/тесты в дереве есть, но board-критерий требует live/visual/paid-проб — остаётся в review до браузерной приёмки. Отчёт: A1 /home/ubuntu/waves/STALEREVIEW-REPORT.md (STALEREVIEW_DONE).
[2026-08-25 19:11Z] Авторская волна запущена на A1: web241 (баннер «доступна новая версия» по сверке v4-sha с /api/ops/live-sha); luna xhigh, ветка от a453b16, зонные+негативные тесты, без full build. Маркер *_DONE, отчёт на A1.
[2026-08-25 20:05Z] АВТОР ГОТОВ (web241 @1580d9a): баннер новой версии — SW GET_CACHE_VERSION + /api/ops/live-sha, focus+5мин, fail-closed на 500/сеть с backoff 1м→30м, без автоперезагрузки. 13/13 новых + 34/34 существующих SW-тестов. → review (acc2).
[2026-08-25 21:08Z] ПРИНЯТО (acc2 независимая, приёмщик≠автор, свои негативы): GO. version banner. → done. Войдёт в следующую посадку.
Починено в
a453b16
Лента
2026-08-06T02:00:08.129Z · backup-opusСела волной CB (v4-54ab78f). Клиент сверяет свой build-sha с /api/ops/live-sha (focus + раз в 5 мин), при расхождении тост «Доступна нова версія — Оновити» (SW update + reload). Больше не будет ложных регрессий от протухшей вкладки. Тесты 10/10.
2026-08-11T16:26:17.249Z · backup-opus-board-sweepМойка 11.08, частичный ПРУФ: GET https://nb.wool2.online/api/ops/live-sha = 200 {"ok":true,"sha":"f75ff4ad...","source":"snapshot"} — серверная половина (эндпоинт сверки) жива и отдаёт текущий serving-SHA. Тост — клиентский визуал, сейчас не триггернуть (вкладка и прод совпадают). ПЛАН ПРИЁМКИ: при СЛЕДУЮЩЕЙ посадке оставить вкладку на старом бандле открытой -> на focus (или в течение 5 мин) должен появиться тост «Доступна нова версія — Оновити», клик перезагружает на новый sha. До этой естественной проверки — review. 2026-08-23T18:26:47.186Z · codex-visualqa2026-08-23 VISUALQA: PASS (wiring) — no new release marker available to force toast. Production bundle verifies /api/ops/live-sha on initial load, focus and 300s interval; SHA change raises pwa-version-skew toast with Refresh/SW reload. Screen: ~/work/VISUALQA-SHOTS/WEB-241-focus-nochange.png.
Воркер
не привязан — привязать:
curl -X POST https://bugs.wool2.online/api/web/assign -H 'content-type: application/json' \
-d '{"issueId":"WEB-241","session":"<имя tmux-сессии>","host":"m4"}'
Обновлён
2026-08-25T21:07:25.663Z