From 2dca85c88116cf87c008540a255217a0c995c7e5 Mon Sep 17 00:00:00 2001 From: Jason Date: Fri, 5 Sep 2025 14:48:03 +0800 Subject: [PATCH] refactor(migration): run dedupe only during first-time migration; remove startup dedupe - Remove per-startup dedupe; keep it limited to migration - Call dedupe at end of migrate_copies_into_config, then write marker - Avoid unintended changes on every app launch --- src-tauri/src/lib.rs | 5 ----- src-tauri/src/migration.rs | 6 ++++++ 2 files changed, 6 insertions(+), 5 deletions(-) diff --git a/src-tauri/src/lib.rs b/src-tauri/src/lib.rs index 5a6f299..077b029 100644 --- a/src-tauri/src/lib.rs +++ b/src-tauri/src/lib.rs @@ -66,11 +66,6 @@ pub fn run() { // 确保两个 App 条目存在 config_guard.ensure_app(&app_config::AppType::Claude); config_guard.ensure_app(&app_config::AppType::Codex); - // 启动去重:名称(忽略大小写)+API Key - let removed = migration::dedupe_config(&mut *config_guard); - if removed > 0 { - log::info!("已去重重复供应商 {} 个", removed); - } } // 保存配置 diff --git a/src-tauri/src/migration.rs b/src-tauri/src/migration.rs index 35f3f29..4170dce 100644 --- a/src-tauri/src/migration.rs +++ b/src-tauri/src/migration.rs @@ -395,6 +395,12 @@ pub fn migrate_copies_into_config(config: &mut MultiAppConfig) -> Result 0 { + log::info!("迁移阶段已去重重复供应商 {} 个", removed); + } + fs::write(&marker, b"done").map_err(|e| format!("写入迁移标记失败: {}", e))?; Ok(true) }