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> |
||
|---|---|---|
| .. | ||
| .claude | ||
| api-gateway | ||
| infrastructure | ||
| mpc-system | ||
| scripts | ||
| services | ||
| .env.windows | ||
| docker-compose.windows.yml | ||