refactor: 拆分 gateway 单体为独立 crate,新增 systemd 部署方案

将 gateway 内部的 model-fetch、provider-transport、scheduler-core、
usage-runtime、video-tasks-core 模块提取为独立 crate;重构 gateway
内部模块结构(state/router/cache/data/query 等);移除大量遗留模块
文件;新增 systemd 二进制部署骨架及相关文档;更新前端 usage 相关
API 和组件。
This commit is contained in:
fawney19
2026-04-05 20:23:16 +08:00
parent cbc811f6ce
commit 763ff03a7b
777 changed files with 42659 additions and 21469 deletions

View File

@@ -4,6 +4,10 @@ import type { EndpointAPIKey, AllowedModels } from './types'
// Re-export types for convenience
export type { EndpointAPIKey, AllowedModels }
interface KeyRequestOptions {
timeout?: number
}
/**
* 能力定义类型
*/
@@ -179,9 +183,14 @@ export async function updateProviderKey(
model_include_patterns: string[] // 模型包含规则
model_exclude_patterns: string[] // 模型排除规则
proxy: import('./types').ProxyConfig | null // Key 级别代理配置
}>
}>,
requestOptions?: KeyRequestOptions,
): Promise<EndpointAPIKey> {
const response = await client.put(`/api/admin/endpoints/keys/${keyId}`, data)
const response = await client.put(
`/api/admin/endpoints/keys/${keyId}`,
data,
requestOptions,
)
return response.data
}

View File

@@ -8,6 +8,10 @@ import type {
ProxyConfig,
} from './types'
interface ProviderRequestOptions {
timeout?: number
}
/**
* 获取 Providers 摘要(分页)
*/
@@ -73,9 +77,10 @@ export async function updateProvider(
claude_code_advanced: ClaudeCodeAdvancedConfig | null
pool_advanced: PoolAdvancedConfig | null
failover_rules: FailoverRulesConfig | null
}>
}>,
requestOptions?: ProviderRequestOptions,
): Promise<ProviderWithEndpointsSummary> {
const response = await client.patch(`/api/admin/providers/${providerId}`, data)
const response = await client.patch(`/api/admin/providers/${providerId}`, data, requestOptions)
return response.data
}