mirror of
https://github.com/fawney19/Aether.git
synced 2026-09-02 01:10:23 +08:00
refactor: 移除 Python 后端源码,全面迁移至 Rust gateway 架构
- 删除全部 Python 源码 (src/) 及 Alembic 迁移脚本,归档至 _deprecated_py_src/ - 重构 Rust gateway ai_pipeline: 拆分 planner/finalize 模块,新增 contracts/adaptation 层 - 重组 handlers 模块为 admin/public/proxy/internal/shared 子模块结构 - 新增 executor 模块,引入 Rust 原生数据库迁移 (aether-data/migrations) - 简化 CI/Docker 构建流程,移除 base image 二级构建,统一为单一 app image - 移除 Python 相关基础设施文件 (entrypoint.sh, gunicorn_conf.py, Dockerfile.base)
This commit is contained in:
@@ -6,24 +6,25 @@ use axum::http::Response;
|
||||
use base64::Engine as _;
|
||||
use tracing::warn;
|
||||
|
||||
use crate::gateway::ai_pipeline::contracts::implicit_sync_finalize_report_kind;
|
||||
use crate::gateway::api::response::{
|
||||
attach_control_metadata_headers, build_client_response, build_client_response_from_parts,
|
||||
};
|
||||
use crate::gateway::constants::{CONTROL_CANDIDATE_ID_HEADER, CONTROL_REQUEST_ID_HEADER};
|
||||
#[cfg(test)]
|
||||
use crate::gateway::execution_runtime::remote_compat::post_sync_plan_to_remote_execution_runtime;
|
||||
use crate::gateway::execution_runtime::submission::submit_local_core_error_or_sync_finalize;
|
||||
use crate::gateway::execution_runtime::transport::DirectSyncExecutionRuntime;
|
||||
use crate::gateway::request_candidates::{
|
||||
use crate::gateway::scheduler::{
|
||||
current_unix_secs as current_request_candidate_unix_secs,
|
||||
ensure_execution_request_candidate_slot, execution_error_details,
|
||||
record_local_request_candidate_status,
|
||||
};
|
||||
use crate::gateway::scheduler::{
|
||||
resolve_core_sync_error_finalize_report_kind, should_fallback_to_control_sync,
|
||||
should_finalize_sync_response, should_retry_next_local_candidate_sync,
|
||||
record_local_request_candidate_status, resolve_core_sync_error_finalize_report_kind,
|
||||
should_fallback_to_control_sync, should_finalize_sync_response,
|
||||
should_retry_next_local_candidate_sync,
|
||||
};
|
||||
use crate::gateway::usage::{spawn_sync_report, submit_sync_report};
|
||||
use crate::gateway::video_tasks::VideoTaskSyncReportMode;
|
||||
use crate::gateway::{
|
||||
attach_control_metadata_headers, build_client_response, build_client_response_from_parts,
|
||||
maybe_build_sync_finalize_outcome, AppState, GatewayControlDecision, GatewayError,
|
||||
GatewaySyncReportRequest,
|
||||
};
|
||||
@@ -498,19 +499,6 @@ pub(crate) async fn execute_execution_runtime_sync(
|
||||
)?))
|
||||
}
|
||||
|
||||
fn resolve_implicit_sync_finalize_report_kind(plan_kind: &str) -> Option<&'static str> {
|
||||
match plan_kind {
|
||||
"openai_chat_sync" => Some("openai_chat_sync_finalize"),
|
||||
"claude_chat_sync" => Some("claude_chat_sync_finalize"),
|
||||
"gemini_chat_sync" => Some("gemini_chat_sync_finalize"),
|
||||
"openai_cli_sync" => Some("openai_cli_sync_finalize"),
|
||||
"openai_compact_sync" => Some("openai_compact_sync_finalize"),
|
||||
"claude_cli_sync" => Some("claude_cli_sync_finalize"),
|
||||
"gemini_cli_sync" => Some("gemini_cli_sync_finalize"),
|
||||
_ => None,
|
||||
}
|
||||
}
|
||||
|
||||
#[allow(clippy::too_many_arguments)] // mirrors sync execution context
|
||||
fn maybe_build_implicit_sync_finalize_outcome(
|
||||
trace_id: &str,
|
||||
@@ -527,7 +515,7 @@ fn maybe_build_implicit_sync_finalize_outcome(
|
||||
return Ok(None);
|
||||
}
|
||||
|
||||
let Some(report_kind) = resolve_implicit_sync_finalize_report_kind(plan_kind) else {
|
||||
let Some(report_kind) = implicit_sync_finalize_report_kind(plan_kind) else {
|
||||
return Ok(None);
|
||||
};
|
||||
|
||||
|
||||
@@ -5,12 +5,10 @@ use axum::body::Body;
|
||||
use axum::http::Response;
|
||||
use serde_json::json;
|
||||
|
||||
use crate::gateway::api::response::build_client_response_from_parts;
|
||||
use crate::gateway::video_tasks::{LocalVideoTaskSnapshot, VideoTaskSyncReportMode};
|
||||
use crate::gateway::VideoTaskService;
|
||||
use crate::gateway::{
|
||||
build_client_response_from_parts, GatewayControlDecision, GatewayError,
|
||||
GatewaySyncReportRequest,
|
||||
};
|
||||
use crate::gateway::{GatewayControlDecision, GatewayError, GatewaySyncReportRequest};
|
||||
|
||||
pub(crate) struct LocalVideoSyncSuccessOutcome {
|
||||
pub(crate) response: Response<Body>,
|
||||
|
||||
Reference in New Issue
Block a user