Remove typed-settings migration scaffolding and rename _update_settings_from_typed to _update_settings.

Now that all services use typed `ServiceSettings` objects, this removes the interim scaffolding that supported both dict-based and typed settings paths in parallel. Specifically: removes old dict-based `_update_settings(settings: Mapping)` methods from base classes, removes `isinstance(self._settings, ServiceSettings)` guards, simplifies `process_frame` branching, and renames `_update_settings_from_typed` to `_update_settings` across all ~30 service implementations. Also renames the no-arg `_update_settings()` helper on realtime services to `_send_session_update()` to avoid collision, adds `from_mapping` overrides on `GoogleLLMSettings` and `AnthropicLLMSettings` for ThinkingConfig dict-to-object conversion, and replaces a broken no-arg `_update_settings()` call in Gemini Live with a TODO.
This commit is contained in:
Paul Kompfner
2026-02-13 14:30:49 -05:00
parent ab92a0e1d7
commit b08548af9d
57 changed files with 291 additions and 407 deletions

View File

@@ -75,7 +75,7 @@ def language_to_lmnt_language(language: Language) -> Optional[str]:
@dataclass
class LmntTTSSettings(TTSSettings):
"""Typed settings for LMNT TTS service.
"""Settings for LMNT TTS service.
Parameters:
format: Audio output format. Defaults to "raw".