refactor(mcp): preserve TOML formatting when syncing to Codex
Switch from `toml` to `toml_edit` crate for incremental TOML editing, preserving user-written comments, whitespace, and key ordering in Codex config.toml. Changes: - Add toml_edit 0.22 dependency for preserving-style TOML editing - Refactor sync_enabled_to_codex() to use toml_edit::DocumentMut API - Implement smart style detection: inherit existing mcp.servers or mcp_servers style, with fallback to sensible defaults - Add deduplication logic to prevent both styles coexisting - Add tests for format preservation and style inheritance - Fix unused_mut and nonminimal_bool compiler warnings - Apply cargo fmt to all modified files Benefits: - User comments and formatting are no longer lost during sync - Respects user's preferred TOML structure (nested vs toplevel) - Non-MCP fields in config.toml remain untouched - Minimal surprise principle: only modifies necessary sections Testing: - All 47 tests passing (unit + integration) - Clippy clean (0 warnings, 0 errors) - Release build successful - New tests verify comment preservation and style detection
This commit is contained in:
@@ -35,6 +35,7 @@ tauri-plugin-dialog = "2"
|
||||
tauri-plugin-store = "2"
|
||||
dirs = "5.0"
|
||||
toml = "0.8"
|
||||
toml_edit = "0.22"
|
||||
reqwest = { version = "0.12", default-features = false, features = ["rustls-tls", "json"] }
|
||||
tokio = { version = "1", features = ["macros", "rt-multi-thread", "time"] }
|
||||
futures = "0.3"
|
||||
|
||||
Reference in New Issue
Block a user