Ryan Malloy d10eb9ab57 Fix graceful shutdown: let consumer finish audio on SIGTERM
speak()'s CancelledError handler was calling queue.cancel() which killed
pw-play mid-sentence during container restarts. Now it just re-raises,
letting the consumer finish naturally. Explicit cancel_speech() still
kills playback immediately.

Also override FastMCP's timeout_graceful_shutdown=0 in uvicorn config
so request handlers get shutdown_timeout seconds before cancellation.
2026-03-02 18:12:31 -07:00
Description
No description provided
946 KiB
Languages
Python 95.9%
Dockerfile 2%
Swift 1.4%
Makefile 0.7%