Звонки:
- IncomingCallActivity — полноэкранный UI входящего звонка поверх lock screen
- fullScreenIntent на нотификации для Android 12+
- ForegroundService синхронизируется при смене фазы и имени
- Запрос fullScreenIntent permission на Android 14+
- dispose() PeerConnection при завершении звонка
- Защита от CREATE_ROOM без ключей (звонок на другом устройстве)
- Дедупликация push + WebSocket сигналов
- setIncomingFromPush — CallManager сразу в INCOMING по push
- Accept ждёт до 5 сек если WebSocket не доставил сигнал
- Decline работает во всех фазах (не только INCOMING)
- Баннер активного звонка внутри диалога
Уведомления:
- Аватарки и имена по publicKey в уведомлениях (message + call)
- Настройка "Avatars in Notifications" в разделе Notifications
UI:
- Ограничение fontScale до 1.3x (вёрстка не ломается на огромном тексте)
- Новые обои: Light 1-3 для светлой темы, убраны старые back_*
- ContentScale.Crop для превью обоев (без растяжения)
CI/CD:
- NDK/CMake в CI, local.properties, ANDROID_NDK_HOME
- Ограничение JVM heap для CI раннера
Диагностика:
- Логирование call notification flow в crash_reports (rosettadev1)
- FCM токен в crash_reports
- CREATE_ROOM без ключей шифрования — сброс (звонок принят на другом устройстве)
- dispose PeerConnection при завершении звонка (фикс зависания портов ~30с)
- Сохранение FCM токена в crash_reports для rosettadev1
close() alone does not free native WebRTC resources (ICE agent,
ports, threads). Without dispose() the old PC holds ports for ~30s,
blocking the next call from connecting.
- Enable diag file for all builds (was DEBUG-only)
- Add native frame count + bad streak query methods (JNI)
- Add periodic E2EE-HEALTH log with enc/dec frame counts
- Reduce scan receivers spam (only log on state change)
- Log E2EE state on call connected
- Log when attachSender/attachReceiver skips due to missing key
- Revert CallManager to 1.3.6 base (fix broken call encryption)
- Add 45s incoming ring timeout with proper peer notification
- Add verified badge on call history and active call screens
- Add dark wallpapers to theme selector
- Fix wallpaper selector item sizing
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>