{"repo":"NousResearch/hermes-agent","public_id":"73530","display_label":"OpenAI TTS streaming ignores custom base_url config","summary":"Multiple reports and fixes address OpenAIStreamer not respecting the tts.openai.base_url (and related api_key) configuration, causing streaming TTS requests to go to api.openai.com instead of the configured endpoint.","subsystem":"skills","counts":{"members":5,"open_issues":0,"open_issues_distinct":0,"open_prs":0,"closed_issues":1,"merged_prs":1,"attempt_prs":3},"landed_fix":{"status":"merged_to_main","basis":"structural","pr":73512},"resolution":{"state":"unresolved","by":null},"freshness":{"state":"verified","last_verified_at":"2026-07-28T18:54:27+00:00","is_stale":false},"grouping":{"backbone":"STRUCTURAL_SPANNING","link_density":0.4},"fix_edges":[{"issue_number":26175,"pr_number":73512,"tier":"verified","basis":"closing_ref","confidence":0.95,"recoverable_from_timeline":true},{"issue_number":55171,"pr_number":73512,"tier":"verified","basis":"closing_ref","confidence":0.95,"recoverable_from_timeline":true},{"issue_number":73530,"pr_number":73512,"tier":"verified","basis":"superseded_ref","confidence":0.9,"recoverable_from_timeline":false}],"members":[{"kind":"issue","number":73530,"title":"OpenAIStreamer ignores tts.openai.base_url, so streaming TTS escapes to api.openai.com","url":null,"state":"closed"},{"kind":"pr","number":73512,"title":"fix(tts): honor config.yaml endpoints across all providers + bounded upstream buffering","url":null,"state":"merged","close_reason":{"category":"merged","implication":"superseded"},"merged":true,"is_fix_pr":true,"fix_tier":"verified","files_changed":["contributors/emails/[redacted:email]","contributors/emails/[redacted:email]","tests/tools/test_tts_model_cache_lru.py","tests/tools/test_tts_openai_config.py","tests/tools/test_tts_provider_base_urls.py","tests/tools/test_tts_response_body_cap.py","tests/tools/test_tts_streaming.py","tests/tools/test_tts_xai_speech_tags.py","tools/tts_streaming.py","tools/tts_tool.py"]},{"kind":"pr","number":73533,"title":"fix(tts): honor tts.openai.base_url/api_key in the streaming path (#73530)","url":null,"state":"closed","close_reason":{"refs":[{"kind":"commit","value":"7800bb1a2","number":0},{"kind":"commit","value":"7800bb1a2","number":0},{"kind":"pr","value":"#47588","number":47588},{"kind":"pr","value":"#73530","number":73530},{"kind":"pr","value":"#73530","number":73530}],"category":"implemented_elsewhere","implication":"superseded"},"merged":false},{"kind":"pr","number":73536,"title":"fix(tools): honour tts.openai.base_url in the streaming path","url":null,"state":"closed","close_reason":{"refs":[{"kind":"pr","value":"#73512","number":73512},{"kind":"pr","value":"#70307","number":70307},{"kind":"pr","value":"#73512","number":73512}],"category":"superseded_by_pr","implication":"superseded"},"merged":false},{"kind":"pr","number":73589,"title":"fix(tts): use tts.openai.base_url config in OpenAIStreamer","url":null,"state":"closed","close_reason":{"refs":[{"kind":"commit","value":"861c2fecd284de6c559836d5f388e24d02162251","number":0},{"kind":"pr","value":"#73530","number":73530}],"category":"implemented_elsewhere","implication":"superseded"},"merged":false}],"trust":{"default_tier":"verified","includes_suggested":false}}