Files
Aether/apps/aether-gateway/src/video_tasks/store.rs
fawney19 8f26e1a31f refactor: 移除独立 hub/proxy/executor/gateway crate,统一为 gateway tunnel 架构
- 删除 aether-hub、aether-proxy 独立项目及其 Dockerfile/配置
- 删除 crates/aether-executor 和 crates/aether-gateway 全部模块
- 新增 apps/ 目录作为应用入口
- 将 hub 概念重构为 gateway tunnel transport
- 将 executor 重构为 execution runtime
- 新增 tunnel.rs 合约定义和 testkit tunnel/execution_runtime 模块
- 更新 Python 服务层和测试适配新架构命名
2026-04-03 14:59:58 +08:00

21 lines
942 B
Rust

use super::*;
mod backend;
mod registry;
pub(crate) use self::backend::{FileVideoTaskStore, InMemoryVideoTaskStore};
use self::registry::VideoTaskRegistry;
pub(super) trait VideoTaskStore: std::fmt::Debug + Send + Sync {
fn insert(&self, snapshot: LocalVideoTaskSnapshot);
fn read_openai(&self, task_id: &str) -> Option<LocalVideoTaskReadResponse>;
fn read_gemini(&self, short_id: &str) -> Option<LocalVideoTaskReadResponse>;
fn clone_openai(&self, task_id: &str) -> Option<OpenAiVideoTaskSeed>;
fn clone_gemini(&self, short_id: &str) -> Option<GeminiVideoTaskSeed>;
#[cfg(test)]
fn list_active_snapshots(&self, limit: usize) -> Vec<LocalVideoTaskSnapshot>;
fn apply_mutation(&self, mutation: LocalVideoTaskRegistryMutation);
fn project_openai(&self, task_id: &str, provider_body: &Map<String, Value>) -> bool;
fn project_gemini(&self, short_id: &str, provider_body: &Map<String, Value>) -> bool;
}