重构: 巨函数拆分 + 清理历史标记注释 + custom_prompt/停止按钮/tunnel 改进

This commit is contained in:
lxy
2026-07-31 21:36:12 +08:00
parent 365af554da
commit bd9031d35d
73 changed files with 1421 additions and 1064 deletions
+7 -7
View File
@@ -94,7 +94,7 @@ pub struct TaskRecord {
#[serde(skip_serializing_if = "Option::is_none")]
#[serde(default)]
pub output_json: Option<String>,
/// 关联灵感 ID(F-260619-01,1对1 单向,任务→灵感)。
/// 关联灵感 ID(1对1 单向,任务→灵感)。
/// 复用 projects.idea_id 模式(REFERENCES ideas(id) 外键),可空(任务可不关联灵感)。
/// 老任务无 idea_id → None。#[serde(default)] 兼容旧前端 JSON(无该字段时为 None)。
#[serde(default)]
@@ -291,7 +291,7 @@ pub struct AiProviderRecord {
pub base_url: String,
pub default_model: String,
pub models: Option<String>, // JSON array of model names
/// 模型能力配置数组(F-01 阶段1,4 维度 + 路由控制)。
/// 模型能力配置数组(4 维度 + 路由控制)。
/// DB TEXT 列存 JSON 字符串,from_row 经 deserialize_model_configs 解析。
/// 向后兼容:老库 NULL/空/老字符串数组 → 空 Vec 或转默认 ModelConfig。default_model 保留过渡。
#[serde(default, deserialize_with = "deserialize_model_configs")]
@@ -300,11 +300,11 @@ pub struct AiProviderRecord {
pub config: Option<String>, // JSON extra config
pub created_at: String,
pub updated_at: String,
/// provider 是否进入负载均衡池(F-260614-04)。false = 仅作为配置存在,不参与主链路由/选池。
/// provider 是否进入负载均衡池。false = 仅作为配置存在,不参与主链路由/选池。
/// 老库迁移默认 1(单 provider 路径零变化)。
#[serde(default = "default_enabled")]
pub enabled: bool,
/// provider 在负载均衡池中的选择权重(0-100,F-260614-04)。高权重优先被选为主;
/// provider 在负载均衡池中的选择权重(0-100)。高权重优先被选为主;
/// 同权重时退化近似轮询。老库迁移默认 50。
#[serde(default = "default_weight")]
pub weight: u32,
@@ -371,9 +371,9 @@ pub struct AiConversationRecord {
pub struct AiToolExecutionRecord {
pub id: String,
pub conversation_id: Option<String>,
/// 消息级溯源:工具调用所属的 ChatMessage.id(F-260619-04)
/// 消息级溯源:工具调用所属的 ChatMessage.id。
/// NULL = 老库行 / 消息级溯源未启用期的记录 / 无法关联的调用。
/// 升级后,audit 写入从 ContextManager 取当前 assistant 消息 id 填入(P1 接入,P0 只建列)
/// 升级后,audit 写入从 ContextManager 取当前 assistant 消息 id 填入。
#[serde(default, skip_serializing_if = "Option::is_none")]
pub message_id: Option<String>,
pub tool_call_id: String,
@@ -387,7 +387,7 @@ pub struct AiToolExecutionRecord {
pub decided_by: Option<String>, // human/auto
}
/// 消息记录(ai_messages 表,F-260619-03 消息拆分存储)。
/// 消息记录(ai_messages 表,消息拆分存储)。
///
/// 每条 ChatMessage 一行,替代 `ai_conversations.messages` 的整对话 JSON 列存。
/// 主键 `id` = ChatMessage.id(构造时 ULID 风格生成),(conversation_id, seq) UNIQUE