feat: improve Bose SoundTouch parity, Spotify integration, and data reliability (#138)

feat: improve Bose SoundTouch parity, Spotify integration, and data
reliability

- Update XML marshaling for ServicePreset and ServiceRecent to match
Bose parity requirements.
- Add support for adding music sources via
`/streaming/account/{account}/source`.
- Implement HandleBoseAccountToken for Spotify OAuth code exchange and
token persistence.
- Implement atomic file writes in the datastore to prevent data
corruption.
- Add startup logic to initialize default sources for existing devices.
- Expand test coverage with new parity regression and Spotify
integration tests.

---------

Co-authored-by: Junie <junie@jetbrains.com>
Co-authored-by: Copilot Autofix powered by AI <62310815+github-advanced-security[bot]@users.noreply.github.com>
This commit is contained in:
Tobias Gesellchen
2026-04-01 21:55:52 +02:00
committed by GitHub
co-authored by Junie lnx01
parent 8ef8d71121
commit aa7b2c28ab
37 changed files with 2616 additions and 449 deletions
+1
View File
@@ -125,6 +125,7 @@ test-http-client:
/workdir/power_on.http \
/workdir/get_provider_settings.http \
/workdir/tunein_playback_station.http \
/workdir/set_preset_6.http \
/workdir/get_full_account.http \
/workdir/get_group.http \
/workdir/unregister_device.http \