# Changelog

All notable changes to this project will be documented in this file.

The format is based on [Keep a Changelog](https://keepachangelog.com/).

## [Unreleased]

### Fixed
- Audio volume silently zeroed after switching output devices
- Device switch not persisted to database across restarts
- Device restore path passes invalid device name to SDL
- Stop() no-op when audio toggled off mid-playback
- Active device highlight incorrect when using default device
- Play() deadlocks when called before device is open

### Added
- Human-readable audio device names (Built-in Speakers, HDMI/TV/Monitor)
- Unit tests for mixer package (parseSinks, parseSinkLine, ConvertVolume)

### Changed (Major Refactors)
- Mixer package: inject audio backend dependencies for testability
- Mixer package: extract wpctl calls behind an interface

## [Audio Bugs v0.1] - 2026-07-10

### Fixed
- Audio volume silently zeroed after switching output devices
- Device switch not persisted to database across restarts
- Device restore path passes invalid device name to SDL
- Stop() no-op when audio toggled off mid-playback
- Active device highlight incorrect when using default device
- Play() deadlocks when called before device is open

### Added
- Human-readable audio device names (Built-in Speakers, HDMI/TV/Monitor)
- Unit tests for mixer package (parseSinks, parseSinkLine, ConvertVolume)
