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:
fawney19
2026-02-06 16:37:06 +08:00
parent e01dfee41d
commit b88fb6273b
112 changed files with 5193 additions and 1992 deletions

View File

@@ -13,9 +13,12 @@ async def test_enrich_auth_config_antigravity_adds_project_id_and_email() -> Non
token_response: dict[str, object] = {}
with (
patch("src.core.provider_oauth_utils.fetch_google_email", AsyncMock(return_value="u@example.com")),
patch(
"src.services.antigravity.client.load_code_assist",
"src.core.provider_oauth_utils.fetch_google_email",
AsyncMock(return_value="u@example.com"),
),
patch(
"src.services.provider.adapters.antigravity.client.load_code_assist",
AsyncMock(
return_value={
"cloudaicompanionProject": "project-1",
@@ -34,5 +37,4 @@ async def test_enrich_auth_config_antigravity_adds_project_id_and_email() -> Non
assert out["email"] == "u@example.com"
assert out["project_id"] == "project-1"
assert out["tier"] == "PAID"
assert out["tier"] == "Pro"