food-market/src
nns 560d52e8cd
Some checks are pending
Auto-tag / Create date-tag (push) Waiting to run
CI / Backend (.NET 8) (push) Waiting to run
CI / Web (React + Vite) (push) Waiting to run
CI / POS (WPF, Windows) (push) Waiting to run
Docker API / Build + push API (push) Waiting to run
Docker API / Deploy API on stage (push) Blocked by required conditions
Docker Web / Build + push Web (push) Waiting to run
Docker Web / Deploy Web on stage (push) Blocked by required conditions
feat(notifications): Web Push (VAPID) — браузерный push о минусах
Канал Web Push для центра уведомлений (item 5). Ключи VAPID генерируются один раз
и хранятся в platform_settings (без ручной настройки секретов); публичный отдаётся
фронту. Таблица web_push_subscriptions (Phase42) + /api/web-push/{public-key,
subscribe,unsubscribe}. Отправка через web-push-csharp из фонового джоба минусов
(best-effort, протухшие подписки чистятся). SW: обработчики push/notificationclick
(am-v3→am-v4), клик открывает нужный путь. Кнопка «Вкл. push» в колокольчике.
Работает в т.ч. в iOS Safari для PWA на домашнем экране.

Тесты: integration — публичный ключ стабилен, подписка идемпотентна, 400/unsubscribe
(4/4 группы); unit 299/299.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-10-09 03:49:32 +05:00
..
food-market.api feat(notifications): Web Push (VAPID) — браузерный push о минусах 2026-10-09 03:49:32 +05:00
food-market.application feat(notifications): Web Push (VAPID) — браузерный push о минусах 2026-10-09 03:49:32 +05:00
food-market.domain feat(notifications): Web Push (VAPID) — браузерный push о минусах 2026-10-09 03:49:32 +05:00
food-market.infrastructure feat(notifications): Web Push (VAPID) — браузерный push о минусах 2026-10-09 03:49:32 +05:00
food-market.pos feat(pos): предупреждения о минусе на кассе — в строке + индикатор в шапке (офлайн) 2026-10-09 03:38:50 +05:00
food-market.pos.core feat(pos): предупреждения о минусе на кассе — в строке + индикатор в шапке (офлайн) 2026-10-09 03:38:50 +05:00
food-market.public copy(site): /pos — убран оставшийся «Светлая, быстрая касса» 2026-10-09 01:00:20 +05:00
food-market.shared feat(pos): избранные товары (плитки) + переключатель тёмной темы 2026-10-08 13:35:56 +05:00
food-market.web feat(notifications): Web Push (VAPID) — браузерный push о минусах 2026-10-09 03:49:32 +05:00