mirror of
https://github.com/fawney19/Aether.git
synced 2026-09-03 01:40:21 +08:00
refactor: Antigravity/Codex 服务重构为插件化适配器架构
- 将 Antigravity 和 Codex 从独立模块迁移至 src/services/provider/adapters/ 插件体系 - 新增 provider_types 和 oauth_token 模块,移除 maintenance_scheduler 中的 OAuth 定时刷新 - 增强 admin API:扩展 keys 和 provider_query 端点,新增 dashboard 路由 - 大幅增强 ProviderDetailDrawer 组件,新增 AntigravityQuotaDialog - 改进 handler 基类(chat/cli)和错误分类器 - 优化 fetch_scheduler 和 upstream_fetcher - 前端 UI 组件清理和优化 - 更新测试以匹配新模块结构
This commit is contained in:
@@ -311,7 +311,9 @@ class GeminiNormalizer(FormatNormalizer):
|
||||
)
|
||||
if not has_thought:
|
||||
try:
|
||||
from src.services.antigravity.constants import DUMMY_THOUGHT_SIGNATURE
|
||||
from src.services.provider.adapters.antigravity.constants import (
|
||||
DUMMY_THOUGHT_SIGNATURE,
|
||||
)
|
||||
|
||||
dummy_sig = DUMMY_THOUGHT_SIGNATURE
|
||||
except Exception:
|
||||
@@ -1285,8 +1287,8 @@ class GeminiNormalizer(FormatNormalizer):
|
||||
|
||||
signature: str | None = None
|
||||
try:
|
||||
from src.services.antigravity.constants import DUMMY_THOUGHT_SIGNATURE
|
||||
from src.services.antigravity.signature_cache import signature_cache
|
||||
from src.services.provider.adapters.antigravity.constants import DUMMY_THOUGHT_SIGNATURE
|
||||
from src.services.provider.adapters.antigravity.signature_cache import signature_cache
|
||||
|
||||
cached_or_dummy = signature_cache.get_or_dummy(model, text_val)
|
||||
|
||||
|
||||
@@ -336,6 +336,7 @@ def build_upstream_headers_for_endpoint(
|
||||
endpoint_headers: dict[str, str] | None = None,
|
||||
extra_headers: dict[str, str] | None = None,
|
||||
drop_headers: frozenset[str] | None = None,
|
||||
header_rules: list[dict[str, Any]] | None = None,
|
||||
) -> dict[str, str]:
|
||||
"""
|
||||
新模式:构建发送给上游 Provider 的请求头(基于 endpoint signature)。
|
||||
@@ -343,8 +344,9 @@ def build_upstream_headers_for_endpoint(
|
||||
优先级(后者覆盖前者):
|
||||
1. 原始头部(排除 drop_headers)
|
||||
2. endpoint 配置头部
|
||||
3. extra_headers
|
||||
4. 认证头(最高优先级,始终设置)
|
||||
3. header_rules(用户自定义的请求头规则,支持 set/drop/rename)
|
||||
4. extra_headers
|
||||
5. 认证头(最高优先级,始终设置)
|
||||
"""
|
||||
if drop_headers is None:
|
||||
drop_headers = UPSTREAM_DROP_HEADERS
|
||||
@@ -363,6 +365,10 @@ def build_upstream_headers_for_endpoint(
|
||||
if endpoint_headers:
|
||||
builder.add_protected(endpoint_headers, protected_keys)
|
||||
|
||||
# 应用用户自定义的请求头规则(认证头受保护)
|
||||
if header_rules:
|
||||
builder.apply_rules(header_rules, protected_keys)
|
||||
|
||||
if extra_headers:
|
||||
builder.add_many(extra_headers)
|
||||
|
||||
|
||||
Reference in New Issue
Block a user