From 73804ac8ba7a836b435dc1fe95ca58241e353f3a Mon Sep 17 00:00:00 2001 From: Stephen Waits Date: Fri, 30 Oct 2026 05:58:11 -0600 Subject: [PATCH] test: the archive check's own git gets a plain Windows path (P11c) local.rs's archive_git handed git the canonical \\?\ path the product's git already no longer sees. Same helper (root::plain_path). The other Command::new("git") tests are Unix-only files (backups.rs, format_upgrade, open_while_held) or use paths from tempfile, not canonicalize. Co-Authored-By: Claude Fable 5.1 Claude-Session: https://claude.ai/code/session_01HS8WZziDnyxunC23MUxrLp --- crates/ledger-mcp/src/local.rs | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/crates/ledger-mcp/src/local.rs b/crates/ledger-mcp/src/local.rs index 4a59158..56f60a6 100644 --- a/crates/ledger-mcp/src/local.rs +++ b/crates/ledger-mcp/src/local.rs @@ -3171,7 +3171,11 @@ mod tests { /// git, on the books' own archive: what it said. fn archive_git(dir: &Path, args: &[&str]) -> String { let out = std::process::Command::new("git") - .arg(format!("--git-dir={}", dir.join("archive.git").display())) + .arg(format!( + "--git-dir={}", + // A canonical path on Windows carries `\\?\`, which git refuses. + ledger_store::root::plain_path(&dir.join("archive.git")).display() + )) .args(args) .output() .unwrap();