refactor(kiro): 拆分 auth_region/api_region,统一 region 解析逻辑

KiroAuthConfig 新增 auth_region(token 刷新端点)和 api_region(q.{region} 服务端点)字段,
通过 effective_auth_region() / effective_api_region() 方法统一各处散落的 region 回退逻辑,
与 kiro.rs 的 region 语义对齐。
This commit is contained in:
fawney19
2026-02-21 16:54:03 +08:00
parent f470ab6ec8
commit 19dd297138
6 changed files with 57 additions and 22 deletions

View File

@@ -358,11 +358,12 @@ class HandlerAdapterBase(ApiAdapter):
# ---- URL ----
if is_kiro:
from src.services.provider.adapters.kiro.constants import (
DEFAULT_REGION,
KIRO_GENERATE_ASSISTANT_PATH,
)
from src.services.provider.adapters.kiro.models.credentials import KiroAuthConfig
region = (decrypted_auth_config or {}).get("region") or DEFAULT_REGION
_kiro_cfg = KiroAuthConfig.from_dict(decrypted_auth_config or {})
region = _kiro_cfg.effective_api_region()
effective_base_url = (
base_url.replace("{region}", region) if "{region}" in base_url else base_url
)
@@ -401,7 +402,7 @@ class HandlerAdapterBase(ApiAdapter):
from src.services.provider.adapters.kiro.token_manager import generate_machine_id
kiro_cfg = KiroAuthConfig.from_dict(decrypted_auth_config or {})
region = kiro_cfg.region or DEFAULT_REGION
region = kiro_cfg.effective_api_region()
machine_id = generate_machine_id(kiro_cfg)
kiro_headers = build_generate_assistant_headers(
host=f"q.{region}.amazonaws.com",