mirror of
https://github.com/katanemo/plano.git
synced 2026-06-17 15:25:17 +02:00
Fix listener defaults to avoid mutating config dicts
Use dict merge ({**defaults, **listener}) instead of setdefault() to
provide address/timeout defaults for the Envoy template without
mutating the original listener dicts. This prevents extra fields
(timeout: 30s) from leaking into the rendered plano config YAML.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
parent
2a10517144
commit
7a0b775276
1 changed files with 3 additions and 6 deletions
|
|
@ -147,10 +147,6 @@ def convert_legacy_listeners(
|
|||
|
||||
model_provider_set = False
|
||||
for listener in listeners:
|
||||
# Ensure address and timeout defaults for all listeners
|
||||
listener.setdefault("address", "0.0.0.0")
|
||||
listener.setdefault("timeout", "30s")
|
||||
|
||||
if listener.get("type") == "model":
|
||||
if model_provider_set:
|
||||
raise ValueError(
|
||||
|
|
@ -158,9 +154,10 @@ def convert_legacy_listeners(
|
|||
)
|
||||
listener["model_providers"] = model_providers or []
|
||||
model_provider_set = True
|
||||
llm_gateway_listener = listener
|
||||
# Merge user listener values into defaults for the Envoy template
|
||||
llm_gateway_listener = {**llm_gateway_listener, **listener}
|
||||
elif listener.get("type") == "prompt":
|
||||
prompt_gateway_listener = listener
|
||||
prompt_gateway_listener = {**prompt_gateway_listener, **listener}
|
||||
if not model_provider_set:
|
||||
listeners.append(llm_gateway_listener)
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue