fix(config): partial TTS config warns + disables, not crashloop #90

Merged
jlxq0 merged 1 commit from fix/tts-partial-config-warns-instead-of-bails into main 2026-05-22 13:56:40 +00:00
Owner

Follow-up to #89. A partial (MATRIX_MCP_TTS_BASE_URL, MATRIX_MCP_TTS_BEARER_TOKEN) at boot used to bail out of Config::from_env(), which would crashloop the pod. Realistic cause is an ESO race during a rollout — one env var lands before the other — so a transient race shouldn't take the whole server down.

Now: log a warning, return Ok(None). send_tts_voice_message returns invalid_params for as long as the secret is incomplete; the rest of the server keeps serving.

Test plan

  • cargo fmt
  • cargo clippy --all-targets -- -D warnings
  • cargo test (161 passed)

🤖 Generated with Claude Code

Follow-up to #89. A partial `(MATRIX_MCP_TTS_BASE_URL, MATRIX_MCP_TTS_BEARER_TOKEN)` at boot used to bail out of `Config::from_env()`, which would crashloop the pod. Realistic cause is an ESO race during a rollout — one env var lands before the other — so a transient race shouldn't take the whole server down. Now: log a warning, return `Ok(None)`. `send_tts_voice_message` returns `invalid_params` for as long as the secret is incomplete; the rest of the server keeps serving. ## Test plan - [x] `cargo fmt` - [x] `cargo clippy --all-targets -- -D warnings` - [x] `cargo test` (161 passed) 🤖 Generated with [Claude Code](https://claude.com/claude-code)
fix(config): partial TTS config warns + disables, not crashloop
All checks were successful
CI / cargo (pull_request) Successful in 52s
CI / docker (pull_request) Successful in 1m6s
16cbc55a25
A partial (MATRIX_MCP_TTS_BASE_URL, MATRIX_MCP_TTS_BEARER_TOKEN) at
boot used to bail out of Config::from_env(), which crashlooped the
pod. The realistic cause is an ESO race during a rollout — one env
var lands before the other — so failing hard means a transient race
takes the whole server down rather than just disabling one tool.

Now: log a warning, return Ok(None). send_tts_voice_message returns
invalid_params for as long as the secret is incomplete; the rest of
the server keeps serving.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
jlxq0 merged commit dc350c51eb into main 2026-05-22 13:56:40 +00:00
jlxq0 deleted branch fix/tts-partial-config-warns-instead-of-bails 2026-05-22 13:56:40 +00:00
Sign in to join this conversation.
No description provided.