diff --git a/crates/g3-cli/src/commands.rs b/crates/g3-cli/src/commands.rs index cb2d91f..650026f 100644 --- a/crates/g3-cli/src/commands.rs +++ b/crates/g3-cli/src/commands.rs @@ -198,7 +198,13 @@ pub async fn handle_command( } match std::fs::write(&dump_path, &dump_content) { - Ok(_) => output.print(&format!("📄 Context dumped to: {}", dump_path.display())), + Ok(_) => { + G3Status::complete_with_path( + "context dumped to", + &dump_path.display().to_string(), + Status::Done, + ); + } Err(e) => output.print(&format!("❌ Failed to write dump: {}", e)), } Ok(true) diff --git a/crates/g3-cli/src/g3_status.rs b/crates/g3-cli/src/g3_status.rs index 01065fe..9a92f59 100644 --- a/crates/g3-cli/src/g3_status.rs +++ b/crates/g3-cli/src/g3_status.rs @@ -289,6 +289,23 @@ impl G3Status { Self::complete(&format!("{} ... {}%", scope_desc, result.before_percentage), Status::NoChanges); } } + + /// Print a complete status message with a path highlighted in cyan. + /// Format: "g3: [status]" + /// - "g3:" is bold green + /// - path is cyan + /// - status is formatted per Status type + pub fn complete_with_path(message: &str, path: &str, status: Status) { + print!( + "{} {} {}{}{}", + Self::format_prefix(), + message, + SetForegroundColor(Color::Cyan), + path, + ResetColor + ); + Self::status(&status); + } } #[cfg(test)]