Merge pull request #2140 into stage-344
Preserve fallback provider credential hints (closes #2133) # Conflicts: # CHANGELOG.md
This commit is contained in:
commit
a06952ab00
2 changed files with 20 additions and 0 deletions
|
|
@ -2770,6 +2770,8 @@ def _run_agent_streaming(
|
|||
'model': _fb_entry.get('model', ''),
|
||||
'provider': _fb_entry.get('provider', ''),
|
||||
'base_url': _fb_entry.get('base_url'),
|
||||
'api_key': _fb_entry.get('api_key'),
|
||||
'key_env': _fb_entry.get('key_env'),
|
||||
}
|
||||
|
||||
# Build kwargs defensively — guard newer params so the WebUI
|
||||
|
|
|
|||
|
|
@ -70,3 +70,21 @@ def test_fallback_resolved_initialized_to_none():
|
|||
assert "_fallback_resolved = None" in block, (
|
||||
"_fallback_resolved must be initialized to None so callers can rely on its presence"
|
||||
)
|
||||
|
||||
|
||||
def test_fallback_resolved_preserves_credential_hints():
|
||||
"""Fallback entries must keep credential hints for AIAgent fallback activation."""
|
||||
block = _extract_fallback_block()
|
||||
resolved_start = block.find("_fallback_resolved = {")
|
||||
assert resolved_start != -1, "_fallback_resolved dict not found"
|
||||
resolved_end = block.find("}", resolved_start)
|
||||
resolved_dict = block[resolved_start:resolved_end]
|
||||
|
||||
assert "'api_key': _fb_entry.get('api_key')" in resolved_dict, (
|
||||
"WebUI must preserve fallback_model/fallback_providers api_key so "
|
||||
"AIAgent._try_activate_fallback can authenticate the fallback."
|
||||
)
|
||||
assert "'key_env': _fb_entry.get('key_env')" in resolved_dict, (
|
||||
"WebUI must preserve fallback_model/fallback_providers key_env so "
|
||||
"AIAgent._try_activate_fallback can resolve env-backed fallback keys."
|
||||
)
|
||||
|
|
|
|||
Loading…
Reference in a new issue