Problem: Client JavaScript/Blazor WebAssembly errors were logged but NOT sent to Telegram because ClientLogsController used LogWarning instead of LogError.
Solution: ClientLogsController now checks entry.Level:
- level='error' → LogError → Telegram alert ✓
- level='warning'/'info' → LogWarning → Log file only
Result: Browser console errors now trigger Telegram notifications:
- Blazor WebAssembly init failures
- JavaScript exceptions
- Unhandled promise rejections
- Custom client errors
This closes the monitoring gap for client-side issues.
Co-Authored-By: Claude Haiku 4.5 <noreply@anthropic.com>