Releases
v0.31.0
Compare
Sorry, something went wrong.
No results found
0.31.0 (2026-06-27)
Features
admin: add icons + light inactive bg to settings sidebar tabs (#653 ) (a8b51f7 )
admin: card-grid embedding provider picker for the library tagger (#649 ) (a61ed6b )
admin: card-grid LLM provider & TTS engine pickers + onboarding model dropdown (#645 ) (df052e7 )
admin: city-search location picker with auto timezone (#656 ) (c325995 )
admin: clear-archive button + DELETE /archives endpoint (#648 ) (189fe77 )
admin: radio-card TTS engine picker + voice preview (#151 ) (#640 ) (96b4116 )
admin: reorder theme tab, left-align create button, add theme removal (#651 ) (6d85600 )
admin: searchable model discovery dropdown for all providers (#615 ) (9936a4b )
tts: per-engine and per-persona speech-speed multipliers (#639 ) (fd5857a ), closes #626
Bug Fixes
admin: reflow theme buttons + reorder archive cards (#654 ) (5238a23 )
backup: restore from state/ to bypass proxy upload caps (#612 ) (#633 ) (8ad7862 )
broadcast: enforce max-track-length as a hard on-air cut (#447 ) (#636 ) (01e1606 )
picker: guard artist/title requests to searchLibrary; disambiguate identifyRequestedTrack from searchByLyrics (#631 ) (5237a0b )
picker: let agent identify songs from pasted lyrics via web search (#617 ) (bb3b4e6 )
picker: non-relaxable count-based no-repeat guard + recent-plays dedup (#638 ) (1533c23 )
request: dedup concurrent listener requests for the same track (#619 ) (#635 ) (9c2abe4 )
scheduler: respect active show genre/era/energy on the fallback playlist (#629 ) (#634 ) (0d3efae )
tts: existsSync Kokoro model/voices in isAvailable() (#655 ) (297eb55 )
web: gate backup tab's disk-list fetch on auth hydration (#404 ) (#647 ) (c8dd8ae )
web: make the volume knob touch-friendly with a relative vertical drag (#641 ) (bc6a526 ), closes #627
web: reduce admin/doctor horizontal padding on mobile (#644 ) (f5c93b5 )
Refactors
admin: move hourly archive card from danger zone to archives tab (#650 ) (22b6d6e )
admin: move jingle & sfx create/import into modals behind buttons (#652 ) (dcff131 )
You can’t perform that action at this time.