Add detailed logging for session runtime configuration and service resolution
This commit is contained in:
@@ -306,6 +306,29 @@ class Session:
|
||||
workflow_runtime = self._bootstrap_workflow(raw_metadata)
|
||||
server_runtime = await self._load_server_runtime_metadata(raw_metadata, workflow_runtime)
|
||||
client_runtime = self._sanitize_client_metadata(raw_metadata)
|
||||
requested_assistant_id = (
|
||||
workflow_runtime.get("assistantId")
|
||||
or raw_metadata.get("assistantId")
|
||||
or raw_metadata.get("appId")
|
||||
or raw_metadata.get("app_id")
|
||||
)
|
||||
if server_runtime:
|
||||
logger.info(
|
||||
"Session {} loaded trusted runtime config from backend "
|
||||
"(requested_assistant_id={}, resolved_assistant_id={}, configVersionId={}, has_services={})",
|
||||
self.id,
|
||||
requested_assistant_id,
|
||||
server_runtime.get("assistantId"),
|
||||
server_runtime.get("configVersionId") or server_runtime.get("config_version_id"),
|
||||
isinstance(server_runtime.get("services"), dict),
|
||||
)
|
||||
else:
|
||||
logger.warning(
|
||||
"Session {} missing trusted backend runtime config "
|
||||
"(requested_assistant_id={}); falling back to engine defaults + safe client overrides",
|
||||
self.id,
|
||||
requested_assistant_id,
|
||||
)
|
||||
metadata = self._merge_runtime_metadata(server_runtime, self._sanitize_untrusted_runtime_metadata(workflow_runtime))
|
||||
metadata = self._merge_runtime_metadata(metadata, client_runtime)
|
||||
|
||||
@@ -314,6 +337,27 @@ class Session:
|
||||
|
||||
# Apply runtime service/prompt overrides from backend if provided
|
||||
self.pipeline.apply_runtime_overrides(metadata)
|
||||
resolved_preview = self.pipeline.resolved_runtime_config()
|
||||
resolved_services = resolved_preview.get("services", {}) if isinstance(resolved_preview, dict) else {}
|
||||
llm_cfg = resolved_services.get("llm", {}) if isinstance(resolved_services, dict) else {}
|
||||
asr_cfg = resolved_services.get("asr", {}) if isinstance(resolved_services, dict) else {}
|
||||
tts_cfg = resolved_services.get("tts", {}) if isinstance(resolved_services, dict) else {}
|
||||
logger.info(
|
||||
"Session {} effective runtime services "
|
||||
"(assistantId={}, configVersionId={}, output_mode={}, "
|
||||
"llm={}/{}, asr={}/{}, tts={}/{}, tts_enabled={})",
|
||||
self.id,
|
||||
metadata.get("assistantId") or metadata.get("appId") or metadata.get("app_id"),
|
||||
metadata.get("configVersionId") or metadata.get("config_version_id"),
|
||||
(resolved_preview.get("output") or {}).get("mode") if isinstance(resolved_preview, dict) else None,
|
||||
llm_cfg.get("provider"),
|
||||
llm_cfg.get("model"),
|
||||
asr_cfg.get("provider"),
|
||||
asr_cfg.get("model"),
|
||||
tts_cfg.get("provider"),
|
||||
tts_cfg.get("model"),
|
||||
tts_cfg.get("enabled"),
|
||||
)
|
||||
|
||||
# Start duplex pipeline
|
||||
if not self._pipeline_started:
|
||||
|
||||
Reference in New Issue
Block a user