修复: PowerShell 路径转义 + shell 失败提示 + 标题合并同 role + L0 防抖
- run_command 路径反斜杠传递修正 - 命令失败追加 PowerShell 适配提示引导 LLM 改正 - 标题生成前合并连续同 role 消息避免 Anthropic 1214 - V33 迁移追加 workflow_executions.updated_at 列 - ai-client-ready 3 秒防抖避免重复握手
This commit is contained in:
@@ -937,6 +937,25 @@ fn migrate_v33(conn: &Connection) -> Result<()> {
|
||||
} else {
|
||||
tracing::info!("v33: pending_approvals 列已存在,跳过");
|
||||
}
|
||||
// 任务4: workflow_executions.updated_at 列 —— 工作流执行记录更新时间戳(用于排序/增量同步/中文)。
|
||||
// 同样用 PRAGMA 探测列存在性(同 v4 模式),缺失才 ALTER;若表本身不存在(极端坏库),跳过该列不阻断迁移。
|
||||
let has_updated_at: bool = conn
|
||||
.query_row(
|
||||
"SELECT COUNT(*) > 0 FROM pragma_table_info('workflow_executions') WHERE name = 'updated_at'",
|
||||
[],
|
||||
|row| row.get(0),
|
||||
)
|
||||
.unwrap_or(false);
|
||||
if !has_updated_at {
|
||||
// workflow_executions 表在 V1 建表,此处仅加列。若表不存在(理论上 V1 必建,但坏库防御)
|
||||
// pragma_table_info 返 0 行,has_updated_at 为 false,会尝试 ALTER → 报错被跳过(下面 match)。
|
||||
match conn.execute_batch("ALTER TABLE workflow_executions ADD COLUMN updated_at TEXT;") {
|
||||
Ok(_) => tracing::info!("v33: workflow_executions 加 updated_at 列"),
|
||||
Err(e) => tracing::warn!("v33: workflow_executions.updated_at 加列失败(表不存在?)跳过: {}", e),
|
||||
}
|
||||
} else {
|
||||
tracing::info!("v33: workflow_executions.updated_at 列已存在,跳过");
|
||||
}
|
||||
conn.execute("INSERT INTO schema_version (version) VALUES (?)", [33])?;
|
||||
tracing::info!("迁移 v33 完成");
|
||||
Ok(())
|
||||
|
||||
Reference in New Issue
Block a user