mirror of
https://fastgit.cc/github.com/openclaw/openclaw
synced 2026-04-21 21:31:39 +08:00
* fix(microsoft,elevenlabs): add enabledByDefault so speech providers register at runtime * fix(tts): route generic directive tokens to the explicitly declared provider Addresses the P2 Codex review on #62846 that flagged auto-enabling ElevenLabs as a product regression for MiniMax users. Both providers claim the generic `speed` token, and parseTtsDirectives walked providers in autoSelectOrder with first-match-wins, so inputs like `[[tts:provider=minimax speed=1.2]]` silently routed speed to providerOverrides.elevenlabs once elevenlabs participated in every parse pass. The parser now pre-scans for `provider=` (honoring legacy last-wins semantics) and routes generic tokens with the declared provider tried first, falling back to autoSelectOrder when it doesn't handle the key. Token order inside the directive no longer matters: `speed=1.2` before or after `provider=minimax` both resolve to MiniMax. Adds a regression test suite covering the exact ElevenLabs/MiniMax speed collision plus fallback, mixed-token, last-wins, and allowProvider-disabled cases. parseTtsDirectives had no prior test coverage. * fix(tts): prefer active provider for generic directives * fix: register bundled TTS providers safely (#62846) (thanks @stainlu) * fix: use exported TTS SDK seam (#62846) (thanks @stainlu) --------- Co-authored-by: Ayaan Zaidi <hi@obviy.us>
22 lines
405 B
JSON
22 lines
405 B
JSON
{
|
|
"id": "elevenlabs",
|
|
"enabledByDefault": true,
|
|
"contracts": {
|
|
"speechProviders": ["elevenlabs"]
|
|
},
|
|
"configContracts": {
|
|
"compatibilityMigrationPaths": [
|
|
"talk.voiceId",
|
|
"talk.voiceAliases",
|
|
"talk.modelId",
|
|
"talk.outputFormat",
|
|
"talk.apiKey"
|
|
]
|
|
},
|
|
"configSchema": {
|
|
"type": "object",
|
|
"additionalProperties": false,
|
|
"properties": {}
|
|
}
|
|
}
|