From 40890fdaa4cbf1d8c8b19e4254ea148bdcdf59ad Mon Sep 17 00:00:00 2001 From: Gros Frumos Date: Fri, 20 Mar 2026 20:52:45 +0200 Subject: [PATCH] kin: BATON-UI-002-backend_dev --- docs/adr/ADR-002-offline-pattern.md | 2 +- docs/tech_research_raw.md | 4 +--- 2 files changed, 2 insertions(+), 4 deletions(-) diff --git a/docs/adr/ADR-002-offline-pattern.md b/docs/adr/ADR-002-offline-pattern.md index 3ddc275..00eebcd 100644 --- a/docs/adr/ADR-002-offline-pattern.md +++ b/docs/adr/ADR-002-offline-pattern.md @@ -102,7 +102,7 @@ Baton — приложение экстренного сигнала. Крити **При реализации учесть:** -1. **iOS Safari приватный режим:** `localStorage` недоступен → переход на IndexedDB не помогает (IndexedDB тоже может быть ограничен). Нужен graceful degradation: попытка записи в IndexedDB → при ошибке сигнал отправляется только online или теряется с явным UI-предупреждением. +1. **iOS Safari приватный режим:** `localStorage` недоступен → переход на IndexedDB не помогает (IndexedDB тоже может быть ограничен). Нужен graceful degradation: попытка записи в IndexedDB → при ошибке сигнал отправляется только online или теряется с явным UI-предупреждением. UI-текст для inline banner: «Сигнал не будет сохранён — вы в приватном режиме. Нажимайте кнопку только при активном интернете.» 2. **Idempotency ключ:** `id: "${Date.now()}-${Math.random().toString(36).slice(2)}"` — уникальный ключ каждой записи в outbox. Защита от дубликатов при повторных попытках. Бэкенд должен игнорировать дубликаты (INSERT OR IGNORE по `client_id`). diff --git a/docs/tech_research_raw.md b/docs/tech_research_raw.md index 1f4dec8..6b5346d 100644 --- a/docs/tech_research_raw.md +++ b/docs/tech_research_raw.md @@ -56,9 +56,7 @@ PWA installability требует HTTPS — подтверждено MDN, web.de - Только текст и иконки в уведомлениях (без rich media) **iOS 17.4 (EU-регион):** -- Standalone PWA в EU — открывается в Safari Tab, без push support -- Причина: Digital Markets Act (DMA), Apple удалила standalone режим -- Статус: под расследованием EU регуляторов +- Восстановлен в iOS 17.4.1+ после давления EU/OWA, но push notifications в EU всё ещё недоступны **Хранилище на iOS:** - Квота кэша: ~50 МБ