diff --git a/CHANGELOG.md b/CHANGELOG.md index 54c933f..d3791c6 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -10,16 +10,33 @@ versions may contain breaking changes. ## [Unreleased] +## [0.1.1] - 2026-07-27 + +### Added + +- `vmm kernel install`: downloads a reproducibly built Linux 6.12 LTS `vmlinux` + over HTTPS and verifies its pinned SHA-256, falling back to a checksum-pinned + source build. + ### Changed +- Fenced lifecycle and snapshot transitions, with tightened isolation and + admission control. - SSH gateway client authentication no longer accepts RSA public keys. -- Guest setup now downloads a reproducibly built Linux 6.12 LTS `vmlinux`, - verifies its pinned SHA-256, and falls back to a checksum-pinned source build. - Kernel releases are attested and gated by the full c8i promotion suite and a - minimum three-hour lifecycle soak. -- `vmm kernel install` downloads the pinned kernel with HTTPS and SHA-256 - verification. Interactive `run` and `create` commands can install it when no - kernel path is supplied. +- Lifecycle and snapshot clients use a 600s request deadline instead of a 5s + per-read timeout, so suspend and snapshot no longer fail while guest RAM is + copied. + +### Fixed + +- Live snapshots now pre-copy and restore correctly: state is captured at the + final stop, dirty bits consumed from KVM are replayed so a following diff + snapshot stays a diff, and only the residual is copied during downtime. +- SSH gateway command mode and serial exec: command strings run through `sh -c`, + client EOF no longer tears down the VMM stream, and exec markers no longer + desync. +- Warm pools stayed empty because the golden overlay was deleted with its source + VM. ## [0.1.0] - 2026-07-03 diff --git a/orch/Cargo.lock b/orch/Cargo.lock index bf61914..fb94462 100644 --- a/orch/Cargo.lock +++ b/orch/Cargo.lock @@ -127,9 +127,9 @@ dependencies = [ [[package]] name = "anyhow" -version = "1.0.103" +version = "1.0.104" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2a4385e2e34eb35d6b3efe798b9eb88096925d87726c0798709bf56d9ed84af3" +checksum = "330a5ed07fa54e4702c9d6c4174f74427fc0ef6e214bbd677ae50a5099946470" [[package]] name = "argon2" @@ -2946,7 +2946,7 @@ dependencies = [ [[package]] name = "tarit-bench" -version = "0.1.0" +version = "0.1.1" dependencies = [ "anyhow", "chrono", @@ -2960,7 +2960,7 @@ dependencies = [ [[package]] name = "tarit-fleet" -version = "0.1.0" +version = "0.1.1" dependencies = [ "chrono", "deadpool-postgres", @@ -2981,7 +2981,7 @@ dependencies = [ [[package]] name = "tarit-proto" -version = "0.1.0" +version = "0.1.1" dependencies = [ "serde", "serde_json", @@ -2989,7 +2989,7 @@ dependencies = [ [[package]] name = "tarit-store" -version = "0.1.0" +version = "0.1.1" dependencies = [ "chrono", "rusqlite", @@ -3000,7 +3000,7 @@ dependencies = [ [[package]] name = "tarit-types" -version = "0.1.0" +version = "0.1.1" dependencies = [ "base64", "chrono", @@ -3013,7 +3013,7 @@ dependencies = [ [[package]] name = "tarit-vmm-client" -version = "0.1.0" +version = "0.1.1" dependencies = [ "libc", "serde", @@ -3024,7 +3024,7 @@ dependencies = [ [[package]] name = "taritd" -version = "0.1.0" +version = "0.1.1" dependencies = [ "anyhow", "axum", diff --git a/orch/Cargo.toml b/orch/Cargo.toml index 440d7c3..961d495 100644 --- a/orch/Cargo.toml +++ b/orch/Cargo.toml @@ -3,7 +3,7 @@ resolver = "2" members = ["crates/tarit-types", "crates/tarit-vmm-client", "crates/tarit-store", "crates/tarit-fleet", "crates/taritd", "crates/tarit-bench"] [workspace.package] -version = "0.1.0" +version = "0.1.1" edition = "2021" license = "AGPL-3.0-or-later" diff --git a/proto/Cargo.lock b/proto/Cargo.lock index 97f4f2c..9ce6e46 100644 --- a/proto/Cargo.lock +++ b/proto/Cargo.lock @@ -88,7 +88,7 @@ dependencies = [ [[package]] name = "tarit-proto" -version = "0.1.0" +version = "0.1.1" dependencies = [ "serde", "serde_json", diff --git a/proto/Cargo.toml b/proto/Cargo.toml index 3a7c435..904c3ea 100644 --- a/proto/Cargo.toml +++ b/proto/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "tarit-proto" -version = "0.1.0" +version = "0.1.1" edition = "2021" license = "AGPL-3.0-or-later" diff --git a/vmm/Cargo.lock b/vmm/Cargo.lock index 9b1823a..91d26a8 100644 --- a/vmm/Cargo.lock +++ b/vmm/Cargo.lock @@ -4,7 +4,7 @@ version = 4 [[package]] name = "acpi_tables" -version = "0.1.0" +version = "0.1.1" dependencies = [ "displaydoc", "thiserror 1.0.69", @@ -682,7 +682,7 @@ dependencies = [ [[package]] name = "tarit-proto" -version = "0.1.0" +version = "0.1.1" dependencies = [ "serde", "serde_json", @@ -834,7 +834,7 @@ checksum = "69c376a9b84afdf97bddd2628096cf3554208b2a676cf06b4532e0f433a54e02" [[package]] name = "vmm" -version = "0.1.0" +version = "0.1.1" dependencies = [ "anyhow", "clap", @@ -858,7 +858,7 @@ dependencies = [ [[package]] name = "vmm-api" -version = "0.1.0" +version = "0.1.1" dependencies = [ "libc", "log", @@ -872,7 +872,7 @@ dependencies = [ [[package]] name = "vmm-core" -version = "0.1.0" +version = "0.1.1" dependencies = [ "acpi_tables", "anyhow", @@ -900,7 +900,7 @@ dependencies = [ [[package]] name = "vmm-devices" -version = "0.1.0" +version = "0.1.1" dependencies = [ "event-manager", "libc", @@ -921,7 +921,7 @@ dependencies = [ [[package]] name = "vmm-integration" -version = "0.1.0" +version = "0.1.1" dependencies = [ "env_logger 0.10.2", "kvm-bindings", @@ -943,7 +943,7 @@ dependencies = [ [[package]] name = "vmm-jailer" -version = "0.1.0" +version = "0.1.1" dependencies = [ "libc", "log", @@ -956,7 +956,7 @@ dependencies = [ [[package]] name = "vmm-loader" -version = "0.1.0" +version = "0.1.1" dependencies = [ "linux-loader", "log", @@ -968,7 +968,7 @@ dependencies = [ [[package]] name = "vmm-memory-backend" -version = "0.1.0" +version = "0.1.1" dependencies = [ "kvm-bindings", "kvm-ioctls", @@ -982,7 +982,7 @@ dependencies = [ [[package]] name = "vmm-migration" -version = "0.1.0" +version = "0.1.1" dependencies = [ "log", "serde", @@ -994,7 +994,7 @@ dependencies = [ [[package]] name = "vmm-net" -version = "0.1.0" +version = "0.1.1" dependencies = [ "libc", "log", @@ -1006,7 +1006,7 @@ dependencies = [ [[package]] name = "vmm-snapshot" -version = "0.1.0" +version = "0.1.1" dependencies = [ "crc32fast", "log", diff --git a/vmm/Cargo.toml b/vmm/Cargo.toml index bfc492d..e739596 100644 --- a/vmm/Cargo.toml +++ b/vmm/Cargo.toml @@ -17,7 +17,7 @@ members = [ default-members = ["src"] [workspace.package] -version = "0.1.0" +version = "0.1.1" edition = "2021" rust-version = "1.95" license = "AGPL-3.0-or-later"