From 48ade1919c27dd7d9febf0047571a8c2a1a495a4 Mon Sep 17 00:00:00 2001 From: Coffee <95295094+hanakannzashi@users.noreply.github.com> Date: Tue, 21 Jul 2026 14:24:37 +0800 Subject: [PATCH 1/2] fix(release): synchronize WiX package description --- crates/ironclaw_reborn_cli/Cargo.toml | 2 +- crates/ironclaw_reborn_cli/tests/smoke.rs | 11 +++++++++++ 2 files changed, 12 insertions(+), 1 deletion(-) diff --git a/crates/ironclaw_reborn_cli/Cargo.toml b/crates/ironclaw_reborn_cli/Cargo.toml index 74570c53909..755afc7f79d 100644 --- a/crates/ironclaw_reborn_cli/Cargo.toml +++ b/crates/ironclaw_reborn_cli/Cargo.toml @@ -3,7 +3,7 @@ name = "ironclaw" version = "1.0.0-rc.1" edition = "2024" rust-version.workspace = true -description = "Standalone IronClaw Reborn binary" +description = "Secure personal AI assistant that protects your data and expands its capabilities on the fly" authors = ["NEAR AI "] license = "MIT OR Apache-2.0" homepage = "https://github.com/nearai/ironclaw" diff --git a/crates/ironclaw_reborn_cli/tests/smoke.rs b/crates/ironclaw_reborn_cli/tests/smoke.rs index bd04f690016..6bf777e69f5 100644 --- a/crates/ironclaw_reborn_cli/tests/smoke.rs +++ b/crates/ironclaw_reborn_cli/tests/smoke.rs @@ -6969,6 +6969,17 @@ fn release_ci_publishes_reborn_without_enabling_legacy_or_docker_paths() { && !root.join("wix/main.wxs").exists(), "the MSI definition must install only the canonical Reborn executable" ); + let cli_description = cli_manifest + .lines() + .find_map(|line| { + line.strip_prefix("description = \"") + .and_then(|value| value.strip_suffix('"')) + }) + .expect("Reborn CLI manifest must define a package description"); + assert!( + wix_manifest.contains(&format!("Description='{cli_description}'")), + "the checked-in WiX package description must match the Cargo package metadata" + ); let reborn_cli_selector = code_style_workflow .lines() .find(|line| line.contains("grep -Eq") && line.contains("crates/ironclaw_reborn_cli/")) From 72028607f8820454658e6fb0f0a185517082d274 Mon Sep 17 00:00:00 2001 From: Coffee <95295094+hanakannzashi@users.noreply.github.com> Date: Tue, 21 Jul 2026 14:29:45 +0800 Subject: [PATCH 2/2] test(release): scope WiX metadata contract --- crates/ironclaw_reborn_cli/tests/smoke.rs | 24 ++++++++++++++++++++--- 1 file changed, 21 insertions(+), 3 deletions(-) diff --git a/crates/ironclaw_reborn_cli/tests/smoke.rs b/crates/ironclaw_reborn_cli/tests/smoke.rs index 6bf777e69f5..866ddf02d8b 100644 --- a/crates/ironclaw_reborn_cli/tests/smoke.rs +++ b/crates/ironclaw_reborn_cli/tests/smoke.rs @@ -6969,15 +6969,33 @@ fn release_ci_publishes_reborn_without_enabling_legacy_or_docker_paths() { && !root.join("wix/main.wxs").exists(), "the MSI definition must install only the canonical Reborn executable" ); - let cli_description = cli_manifest + let cli_package_section = cli_manifest + .split_once("[package]\n") + .map(|(_, remainder)| remainder) + .and_then(|remainder| remainder.split_once("\n[").map(|(section, _)| section)) + .expect("Reborn CLI manifest must define a [package] section"); + let cli_description = cli_package_section .lines() .find_map(|line| { line.strip_prefix("description = \"") .and_then(|value| value.strip_suffix('"')) }) .expect("Reborn CLI manifest must define a package description"); - assert!( - wix_manifest.contains(&format!("Description='{cli_description}'")), + let wix_package_element = wix_manifest + .split_once("").map(|(element, _)| element)) + .expect("Reborn WiX manifest must define a Package element"); + let wix_description = wix_package_element + .lines() + .find_map(|line| { + line.trim() + .strip_prefix("Description='") + .and_then(|value| value.strip_suffix('\'')) + }) + .expect("Reborn WiX Package element must define a Description attribute"); + assert_eq!( + wix_description, cli_description, "the checked-in WiX package description must match the Cargo package metadata" ); let reborn_cli_selector = code_style_workflow