From 79db00cc3ec56205a3838c591cf67afe9750277b Mon Sep 17 00:00:00 2001 From: BootIntel Agent Date: Fri, 25 Sep 2026 10:44:26 +0000 Subject: [PATCH] Release 0.4.0 Ships the correctness batch. The reason this is urgent: v0.3.1 is still what downloads/bootintel.com and the GitHub release page hand people, and it contains the --log-file bug that writes zero bytes unless the session exits through the clean path. Anyone capturing today can lose the whole log while believing they have it. The fix has been sitting on main unreleased. Numbered 0.4.0, not 1.0.0. The project's own policy calls an exit-code change MAJOR and this batch changes one, but the crate is pre-1.0, so the leading zero is the major component and a breaking change moves the minor. Releasing 1.0.0 would assert an API-stability commitment this project has not made. The rationale is recorded in the changelog so the next reader does not have to re-derive it. Callers upgrading a CI job should read the exit-code note: scan now exits 2 for an empty or unusable capture and 3 when nothing was recognized, where it previously exited 0 for both. That is the point of the change, since a job whose UART never came up used to report green. Verified: 274 tests pass, clippy clean under -D warnings, rustfmt clean, and cargo audit reports no vulnerabilities. Co-Authored-By: Claude Opus 5 (1M context) --- CHANGELOG.md | 12 +++++++++++- Cargo.lock | 4 ++-- Cargo.toml | 2 +- 3 files changed, 14 insertions(+), 4 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 2c00cc4..5981aa8 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -8,6 +8,15 @@ All notable changes to bootintel-cli are documented here. Format follows [Keep a ## [Unreleased] +## [0.4.0] — 2026-09-25 — correctness batch: capture loss, CI gates, detector robustness + +Numbered 0.4.0 rather than 1.0.0. The policy above calls an exit-code +change MAJOR, and this batch changes one, but the crate is pre-1.0: the +leading zero is the major component, so a breaking change moves the +minor. Releasing 1.0.0 would assert an API-stability commitment this +project has not made. Treat 0.3.x to 0.4.0 as breaking and read the +exit-code note below before upgrading a CI job. + Correctness batch from an SME review that installed the v0.3.1 release binary and exercised it against socat PTY pairs. Every item below was reproduced by running, not by reading. @@ -297,7 +306,8 @@ Initial release. All six subcommands live; five branch-based milestones (M1-M5) - PDF report download subcommand — server-side endpoint exists but no client-side wrapper yet. - Windows support — the Rust code compiles for Windows and the release workflow builds it, but install.sh doesn't handle Windows yet (`.ps1` installer is a follow-up). -[Unreleased]: https://github.com/bootintel/cli/compare/cli-v0.3.1...HEAD +[Unreleased]: https://github.com/bootintel/cli/compare/cli-v0.4.0...HEAD +[0.4.0]: https://github.com/bootintel/cli/releases/tag/cli-v0.4.0 [0.3.1]: https://github.com/bootintel/cli/releases/tag/cli-v0.3.1 [0.3.0]: https://github.com/bootintel/cli/releases/tag/cli-v0.3.0 [0.2.0]: https://github.com/bootintel/cli/releases/tag/cli-v0.2.0 diff --git a/Cargo.lock b/Cargo.lock index 68ae75f..b67cacd 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -131,7 +131,7 @@ checksum = "b588b76d00fde79687d7646a9b5bdf3cc0f655e0bbd080335a95d7e96f3587da" [[package]] name = "bootintel-cli" -version = "0.3.1" +version = "0.4.0" dependencies = [ "anyhow", "arboard", @@ -154,7 +154,7 @@ dependencies = [ [[package]] name = "bootintel-detectors" -version = "0.3.1" +version = "0.4.0" dependencies = [ "regex", ] diff --git a/Cargo.toml b/Cargo.toml index 1622bc7..6a697b0 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -19,7 +19,7 @@ members = ["crates/detectors", "crates/cli"] resolver = "2" [workspace.package] -version = "0.3.1" +version = "0.4.0" edition = "2021" rust-version = "1.90" license = "Apache-2.0"