Sonos media_player.play_media support for the announce option was added in 2023.5 and TTS services automatically use this under the hood. The new announce behavior avoids the need to snapshot/regroup/etc and will play over any currently playing music without interruption.
The tradeoff is that you need to explicitly target all rooms/speakers where you’d like the announcement to play and they are called individually, so audio playback may not be perfectly synced. On the other hand, your announcements do not need to care about the current playback or grouping and most scripts/automations can be replaced with a single service call.
See Sonos - Home Assistant for more details, like how to set the volume of the announcement independently of the current music volume.