Critical fixes to prevent app crashes when screens are kept open for extended periods: - Add repositoryScope with SupervisorJob for structured concurrency in TssRepository - Replace detached CoroutineScope(Dispatchers.IO).launch with repositoryScope.launch: - Session event subscription (line 206) - Session status polling (line 291) - Message routing (line 1508) - Add cleanup() method to properly cancel all jobs and repositoryScope - Update disconnect() to also cancel sessionStatusPollingJob - Update MainViewModel.onCleared() to call repository.cleanup() This ensures all background coroutines are properly cancelled when the ViewModel is cleared, preventing memory accumulation over time. 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com> |
||
|---|---|---|
| .. | ||
| account | ||
| message-router | ||
| server-party | ||
| server-party-api | ||
| server-party-co-managed | ||
| service-party-android | ||
| service-party-app | ||
| session-coordinator | ||
| tss-wasm | ||