From 9047e770c3eb857b1cb0b5ded12797a5d0b55497 Mon Sep 17 00:00:00 2001 From: Connor Peet Date: Fri, 19 Jun 2026 11:38:46 -0700 Subject: [PATCH] fix(rust): use valid crates.io category for ahp-ws; dry-run all crates before publish The 'network-programming::websocket' category slug is rejected by crates.io with HTTP 400 at publish time, which broke the 0.4.0 release after ahp-types and ahp had already published. Use the supported 'network-programming' slug instead. Add a 'Dry-run publish every crate' step to the publish-rust validate job so packaging/build problems in any crate are caught before the publish job ships any of them. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> --- .github/workflows/publish-rust.yml | 9 +++++++++ clients/rust/crates/ahp-ws/Cargo.toml | 2 +- 2 files changed, 10 insertions(+), 1 deletion(-) diff --git a/.github/workflows/publish-rust.yml b/.github/workflows/publish-rust.yml index 5ba30929..6cd88729 100644 --- a/.github/workflows/publish-rust.yml +++ b/.github/workflows/publish-rust.yml @@ -87,6 +87,15 @@ jobs: - name: Run tests run: cargo test --workspace + - name: Dry-run publish every crate + run: | + set -euo pipefail + for crate in ahp-types ahp ahp-ws; do + echo "::group::cargo publish -p $crate --dry-run" + cargo publish -p "$crate" --dry-run + echo "::endgroup::" + done + publish: needs: validate diff --git a/clients/rust/crates/ahp-ws/Cargo.toml b/clients/rust/crates/ahp-ws/Cargo.toml index f1037d20..1635b0b3 100644 --- a/clients/rust/crates/ahp-ws/Cargo.toml +++ b/clients/rust/crates/ahp-ws/Cargo.toml @@ -10,7 +10,7 @@ readme = "README.md" homepage = "https://microsoft.github.io/agent-host-protocol/" documentation = "https://docs.rs/ahp-ws" keywords = ["ahp", "agent", "websocket", "transport", "tokio"] -categories = ["api-bindings", "asynchronous", "network-programming::websocket"] +categories = ["api-bindings", "asynchronous", "network-programming"] [package.metadata.docs.rs] all-features = true