🤖 AI-Generated Changelog
Added
- Clone stream feature with user feedback improvements
- Sortable table on the Users page
Changed
- Stream credentials are now masked by default in the streams table view, even for administrators
- Improved backend stream health checking using the same Unified Detection Thread (UDT) state as the frontend
- Improved stream status reporting using UDT state
- Updated npm dependencies
Fixed
- Stabilized timeline playback and keyboard navigation
- Buffered PCM samples in AVAudioFifo before AAC encoding to fix audio encoding issues
- Improved playback speed feedback when using keyboard navigation
- Fixed test runner
- Trimmed leading/trailing whitespace from stream names on save
- Added missing
common.alli18n translation key - Fixed stream status reporting accuracy
Security
- Applied multiple Copilot Autofix suggestions across C backend and JavaScript frontend components
- Addressed all clang-tidy warnings from CI report
- Applied code quality fixes to
mp4_writer_utils.c,unified_detection_thread.c,api_handlers_recordings_backend_agnostic.c, and various frontend components
🔗 Full Changelog: 0.31.0...0.31.1