修复: aichat P0 三项(AR-2 新建对话守卫 + AR-3 审批卡片可读化 + AR-4 create_project 双审)
- AR-2 ai_conversation_create 加 generating 守卫(clear 前,防审批态新建清空 session 致 generating 永不复位卡死) - AR-3 audit.rs build_approval_reason 按 9 工具特化拼对象名(id/field/path/title/name)+ ToolCard resultSummary 补 restore/purge case + ARG_LABEL_MAP id 加友好标签 + i18n 双语补 4 key - AR-4 create_project schema 加 path/stack + handler 有 path 时合并绑定(spawn_blocking 探测栈,复用 bind_directory 逻辑,消除双审双 API) - cargo check / vue-tsc 0 error - 审查 boundary 全误判(并行同工作区 git diff 污染),主代理独立核查三任务全正确
This commit is contained in:
@@ -366,6 +366,11 @@ pub async fn ai_conversation_create(state: State<'_, AppState>) -> Result<serde_
|
||||
let now = now_millis();
|
||||
|
||||
let mut session = state.ai_session.lock().await;
|
||||
// 生成中(含审批等待态)禁止新建对话:否则 clear 会清空 pending_approvals,
|
||||
// 用户审批时 ai_approve 找不到 pending → generating 永不复位 → 面板卡死需重启
|
||||
if session.generating {
|
||||
return Err("生成中无法新建对话,请先停止或等待完成".to_string());
|
||||
}
|
||||
session.active_conversation_id = Some(id.clone());
|
||||
session.active_conv_created_at = Some(now);
|
||||
session.messages.clear();
|
||||
|
||||
Reference in New Issue
Block a user