From 75bb0cb133364812a2dce382105b1dd798598ed8 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 28 Sep 2026 13:13:55 +0000 Subject: [PATCH 1/2] feat(deps): bump the minor group with 14 updates Bumps the minor group with 14 updates: | Package | From | To | | --- | --- | --- | | [thiserror](https://github.com/dtolnay/thiserror) | `2.0.20` | `2.0.21` | | [rmcp](https://github.com/modelcontextprotocol/rust-sdk) | `3.4.0` | `3.4.1` | | [cc](https://github.com/rust-lang/cc-rs) | `1.4.7` | `1.5.0` | | [find-msvc-tools](https://github.com/rust-lang/cc-rs) | `0.1.13` | `0.1.14` | | [hyper-rustls](https://github.com/rustls/hyper-rustls) | `0.27.9` | `0.27.10` | | [hyper-util](https://github.com/hyperium/hyper-util) | `0.1.20` | `0.1.21` | | [rand](https://github.com/rust-random/rand) | `0.10.2` | `0.10.3` | | [rmcp-macros](https://github.com/modelcontextprotocol/rust-sdk) | `3.4.0` | `3.5.0` | | [rustls-platform-verifier](https://github.com/rustls/rustls-platform-verifier) | `0.7.0` | `0.7.1` | | [rustls-platform-verifier-android](https://github.com/rustls/rustls-platform-verifier) | `0.1.1` | `0.2.0` | | [smallvec](https://github.com/servo/rust-smallvec) | `1.16.1` | `1.16.2` | | [thiserror-impl](https://github.com/dtolnay/thiserror) | `2.0.20` | `2.0.21` | | [zerocopy](https://github.com/google/zerocopy) | `0.8.57` | `0.8.58` | | [zerocopy-derive](https://github.com/google/zerocopy) | `0.8.57` | `0.8.59` | Updates `thiserror` from 2.0.20 to 2.0.21 - [Release notes](https://github.com/dtolnay/thiserror/releases) - [Commits](https://github.com/dtolnay/thiserror/compare/2.0.20...2.0.21) Updates `rmcp` from 3.4.0 to 3.4.1 - [Release notes](https://github.com/modelcontextprotocol/rust-sdk/releases) - [Changelog](https://github.com/modelcontextprotocol/rust-sdk/blob/main/release-plz.toml) - [Commits](https://github.com/modelcontextprotocol/rust-sdk/compare/rmcp-v3.4.0...rmcp-v3.4.1) Updates `cc` from 1.4.7 to 1.5.0 - [Release notes](https://github.com/rust-lang/cc-rs/releases) - [Changelog](https://github.com/rust-lang/cc-rs/blob/main/CHANGELOG.md) - [Commits](https://github.com/rust-lang/cc-rs/compare/cc-v1.4.7...cc-v1.5.0) Updates `find-msvc-tools` from 0.1.13 to 0.1.14 - [Release notes](https://github.com/rust-lang/cc-rs/releases) - [Changelog](https://github.com/rust-lang/cc-rs/blob/main/CHANGELOG.md) - [Commits](https://github.com/rust-lang/cc-rs/compare/find-msvc-tools-v0.1.13...find-msvc-tools-v0.1.14) Updates `hyper-rustls` from 0.27.9 to 0.27.10 - [Release notes](https://github.com/rustls/hyper-rustls/releases) - [Commits](https://github.com/rustls/hyper-rustls/compare/v/0.27.9...v/0.27.10) Updates `hyper-util` from 0.1.20 to 0.1.21 - [Release notes](https://github.com/hyperium/hyper-util/releases) - [Changelog](https://github.com/hyperium/hyper-util/blob/master/CHANGELOG.md) - [Commits](https://github.com/hyperium/hyper-util/compare/v0.1.20...v0.1.21) Updates `rand` from 0.10.2 to 0.10.3 - [Release notes](https://github.com/rust-random/rand/releases) - [Changelog](https://github.com/rust-random/rand/blob/master/CHANGELOG.md) - [Commits](https://github.com/rust-random/rand/compare/0.10.2...0.10.3) Updates `rmcp-macros` from 3.4.0 to 3.5.0 - [Release notes](https://github.com/modelcontextprotocol/rust-sdk/releases) - [Changelog](https://github.com/modelcontextprotocol/rust-sdk/blob/main/release-plz.toml) - [Commits](https://github.com/modelcontextprotocol/rust-sdk/compare/rmcp-macros-v3.4.0...rmcp-macros-v3.5.0) Updates `rustls-platform-verifier` from 0.7.0 to 0.7.1 - [Release notes](https://github.com/rustls/rustls-platform-verifier/releases) - [Changelog](https://github.com/rustls/rustls-platform-verifier/blob/main/CHANGELOG) - [Commits](https://github.com/rustls/rustls-platform-verifier/compare/v/0.7.0...v/0.7.1) Updates `rustls-platform-verifier-android` from 0.1.1 to 0.2.0 - [Release notes](https://github.com/rustls/rustls-platform-verifier/releases) - [Changelog](https://github.com/rustls/rustls-platform-verifier/blob/main/CHANGELOG) - [Commits](https://github.com/rustls/rustls-platform-verifier/compare/v/0.1.1...v/0.2.0) Updates `smallvec` from 1.16.1 to 1.16.2 - [Release notes](https://github.com/servo/rust-smallvec/releases) - [Commits](https://github.com/servo/rust-smallvec/compare/v1.16.1...v1.16.2) Updates `thiserror-impl` from 2.0.20 to 2.0.21 - [Release notes](https://github.com/dtolnay/thiserror/releases) - [Commits](https://github.com/dtolnay/thiserror/compare/2.0.20...2.0.21) Updates `zerocopy` from 0.8.57 to 0.8.58 - [Release notes](https://github.com/google/zerocopy/releases) - [Commits](https://github.com/google/zerocopy/compare/v0.8.57...v0.8.58) Updates `zerocopy-derive` from 0.8.57 to 0.8.59 - [Release notes](https://github.com/google/zerocopy/releases) - [Commits](https://github.com/google/zerocopy/compare/v0.8.57...v0.8.59) --- updated-dependencies: - dependency-name: thiserror dependency-version: 2.0.21 dependency-type: direct:production update-type: version-update:semver-patch dependency-group: minor - dependency-name: rmcp dependency-version: 3.4.1 dependency-type: direct:production update-type: version-update:semver-patch dependency-group: minor - dependency-name: cc dependency-version: 1.5.0 dependency-type: indirect update-type: version-update:semver-minor dependency-group: minor - dependency-name: find-msvc-tools dependency-version: 0.1.14 dependency-type: indirect update-type: version-update:semver-patch dependency-group: minor - dependency-name: hyper-rustls dependency-version: 0.27.10 dependency-type: indirect update-type: version-update:semver-patch dependency-group: minor - dependency-name: hyper-util dependency-version: 0.1.21 dependency-type: indirect update-type: version-update:semver-patch dependency-group: minor - dependency-name: rand dependency-version: 0.10.3 dependency-type: indirect update-type: version-update:semver-patch dependency-group: minor - dependency-name: rmcp-macros dependency-version: 3.5.0 dependency-type: indirect update-type: version-update:semver-minor dependency-group: minor - dependency-name: rustls-platform-verifier dependency-version: 0.7.1 dependency-type: indirect update-type: version-update:semver-patch dependency-group: minor - dependency-name: rustls-platform-verifier-android dependency-version: 0.2.0 dependency-type: indirect update-type: version-update:semver-minor dependency-group: minor - dependency-name: smallvec dependency-version: 1.16.2 dependency-type: indirect update-type: version-update:semver-patch dependency-group: minor - dependency-name: thiserror-impl dependency-version: 2.0.21 dependency-type: indirect update-type: version-update:semver-patch dependency-group: minor - dependency-name: zerocopy dependency-version: 0.8.58 dependency-type: indirect update-type: version-update:semver-patch dependency-group: minor - dependency-name: zerocopy-derive dependency-version: 0.8.59 dependency-type: indirect update-type: version-update:semver-patch dependency-group: minor ... Signed-off-by: dependabot[bot] --- Cargo.lock | 63 +++++++++++++++++++++++++++--------------------------- 1 file changed, 32 insertions(+), 31 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index 4ce55f3b..48853d14 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -572,9 +572,9 @@ checksum = "fc652a48c352aef3ea3aed32080501cf3ef6ed5da78602a020c991775b0aff04" [[package]] name = "cc" -version = "1.4.7" +version = "1.5.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "54413ede23c2daf518f35156dfde027feb2374004d63bd497f983c8db9c0e313" +checksum = "f360145194ee8e21db5ee7f3fcd4fe52210864c75c985dae33218202c8bbe040" dependencies = [ "find-msvc-tools", "jobserver", @@ -985,9 +985,9 @@ checksum = "da7c62ceae207dd37ea5b845da6a0696c799f85e97da1ab5b7910be3c1c80223" [[package]] name = "find-msvc-tools" -version = "0.1.13" +version = "0.1.14" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ef25905e51abafe4dcea6c15fec58c57b601cdbd0ee53d22ea1d3016c587d39b" +checksum = "aedcfb3409746eddb02b9e19ebda1c3394f759a152e48ee875a0844d1b955484" [[package]] name = "fixedbitset" @@ -1280,9 +1280,9 @@ dependencies = [ [[package]] name = "hyper-rustls" -version = "0.27.9" +version = "0.27.10" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "33ca68d021ef39cf6463ab54c1d0f5daf03377b70561305bb89a8f83aab66e0f" +checksum = "dfa8e654703247911e29c23fbeaa261834bd9bb74efba2f9acddc37bfb127f53" dependencies = [ "http", "hyper", @@ -1295,16 +1295,17 @@ dependencies = [ [[package]] name = "hyper-util" -version = "0.1.20" +version = "0.1.21" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "96547c2556ec9d12fb1578c4eaf448b04993e7fb79cbaad930a656880a6bdfa0" +checksum = "ddc03d96684f9226b8a787cdb71488417b53ab5ea8fdb1dac946cb9431cc8bff" dependencies = [ - "base64 0.22.1", + "base64 0.23.1", "bytes", "futures-channel", "futures-util", "http", "http-body", + "httparse", "hyper", "ipnet", "libc", @@ -1955,7 +1956,7 @@ dependencies = [ "bytes", "getrandom 0.4.3", "lru-slab", - "rand 0.10.2", + "rand 0.10.3", "rand_pcg", "ring", "rustc-hash", @@ -2015,9 +2016,9 @@ dependencies = [ [[package]] name = "rand" -version = "0.10.2" +version = "0.10.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c7f5fa3a058cd35567ef9bfa5e75732bee0f9e4c55fa90477bef2dfcdbc4be80" +checksum = "65c9fb96cbc91e3478eaae79a69fcd3f1ae4ad052e471fe6732fff548984b4af" dependencies = [ "chacha20", "getrandom 0.4.3", @@ -2163,9 +2164,9 @@ dependencies = [ [[package]] name = "rmcp" -version = "3.4.0" +version = "3.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b23c62fe489ac1d401ab32688cfacac3737a8978dc3343e5361464c7724fd3cb" +checksum = "fae7019994ae0fe4ada40b732f798f3ff26f0f04facb1477f1bf37eb4f18a2d3" dependencies = [ "base64 0.23.1", "bytes", @@ -2192,9 +2193,9 @@ dependencies = [ [[package]] name = "rmcp-macros" -version = "3.4.0" +version = "3.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cd740c45d66ceb87e5579082abc27bd771665e464e9660a17a048c721b2a6025" +checksum = "c7e66877136e969d5a2d561ee5841b17717a0619aebd64abb47a2a2f46e34683" dependencies = [ "darling", "proc-macro2", @@ -2269,9 +2270,9 @@ dependencies = [ [[package]] name = "rustls-platform-verifier" -version = "0.7.0" +version = "0.7.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "26d1e2536ce4f35f4846aa13bff16bd0ff40157cdb14cc056c7b14ba41233ba0" +checksum = "1167586491e2b18b8bfbb293e8180ec17c201c4f076d7cb3070ca964e7598f98" dependencies = [ "core-foundation", "core-foundation-sys", @@ -2290,9 +2291,9 @@ dependencies = [ [[package]] name = "rustls-platform-verifier-android" -version = "0.1.1" +version = "0.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f87165f0995f63a9fbeea62b64d10b4d9d8e78ec6d7d51fb2125fda7bb36788f" +checksum = "eec689c0bc40ff2458a5977b6619cb718087084a18e02a131c599b62d05e1a5f" [[package]] name = "rustls-webpki" @@ -2591,9 +2592,9 @@ checksum = "0c790de23124f9ab44544d7ac05d60440adc586479ce501c1d6d7da3cd8c9cf5" [[package]] name = "smallvec" -version = "1.16.1" +version = "1.16.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ba467056f1b547ed52077911161fc86985becbc60e8e1857c8a144dab0def891" +checksum = "f9395f0f0eee849a9b707b2f06bb92a6a422090e2123bb2ef8e87a0e61892a8e" [[package]] name = "socket2" @@ -2710,18 +2711,18 @@ dependencies = [ [[package]] name = "thiserror" -version = "2.0.20" +version = "2.0.21" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ec86235f5fcc2a73650310756d2ac5b138a5780bbbdfae3eeccec992c435ba4f" +checksum = "09e52cb86a36cede5cb101bf8908837b3e4c6e5e59fe7fd85c23fb56200d189e" dependencies = [ "thiserror-impl", ] [[package]] name = "thiserror-impl" -version = "2.0.20" +version = "2.0.21" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bc04cd3e1236dd4a98afca4569f2deb3f120e5422a4023be2cb683f8486292af" +checksum = "fe5197923287db20a58125f0bc85c062f7f2c892de97b18c356f9efb14b28524" dependencies = [ "proc-macro2", "quote", @@ -3027,7 +3028,7 @@ dependencies = [ "http", "httparse", "log", - "rand 0.10.2", + "rand 0.10.3", "rustls", "rustls-pki-types", "sha1 0.11.0", @@ -3498,18 +3499,18 @@ dependencies = [ [[package]] name = "zerocopy" -version = "0.8.57" +version = "0.8.59" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d35102a9f36d089ccae9e4c6802bc118be4487b80aaffc0ab4e0cf5ce92d2873" +checksum = "6df92bf3d9227be3d53173901ddbffac2babc27ae50f397776ffd6dc33f800cb" dependencies = [ "zerocopy-derive", ] [[package]] name = "zerocopy-derive" -version = "0.8.57" +version = "0.8.59" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "146c01f5ab44258da43cf276c74a2763db2ff3969c9c652c3f2de07041d0b2bc" +checksum = "ac4f328cf2f05d084e496c3e9c3f33ed0a183656a16e1fcec4d464d8373aec82" dependencies = [ "proc-macro2", "quote", From 3176e628cb7eef37ce10b76482d37adeca1b5c31 Mon Sep 17 00:00:00 2001 From: Ben Brandt Date: Mon, 28 Sep 2026 15:48:08 +0200 Subject: [PATCH 2/2] test(conductor): normalize rmcp version in MCP trace snapshot rmcp 3.5.0 moved `ProtocolVersion::LATEST` to 2026-07-28, so the rmcp client in the trace now requests that revision in `initialize` and the server negotiates down to 2025-11-25 (the newest version that still has an `initialize` handshake). Update the snapshot to capture that. The snapshot also embedded the crate version rmcp reports for itself in `clientInfo`/`serverInfo`, which forced a manual snapshot edit on every rmcp release. Normalize it to "" alongside the existing ID and endpoint normalization. --- .../tests/trace_mcp_tool_call.rs | 27 ++++++++++++++++--- 1 file changed, 23 insertions(+), 4 deletions(-) diff --git a/src/agent-client-protocol-conductor/tests/trace_mcp_tool_call.rs b/src/agent-client-protocol-conductor/tests/trace_mcp_tool_call.rs index 48366ebf..e9b06118 100644 --- a/src/agent-client-protocol-conductor/tests/trace_mcp_tool_call.rs +++ b/src/agent-client-protocol-conductor/tests/trace_mcp_tool_call.rs @@ -33,6 +33,8 @@ use tokio_util::compat::{TokioAsyncReadCompatExt, TokioAsyncWriteCompatExt}; /// - Replaces session IDs with "session:0", etc. /// - Replaces loopback HTTP endpoints with "http:endpoint:0", etc. /// - Replaces MCP server and connection IDs with stable sequential IDs +/// - Replaces the crate version rmcp reports in MCP `clientInfo`/`serverInfo` +/// with "", so rmcp upgrades don't churn the snapshot struct EventNormalizer { id_map: HashMap, next_id: usize, @@ -126,7 +128,22 @@ impl EventNormalizer { .clone() } - /// Recursively normalize session IDs, MCP endpoints, and MCP IDs in JSON values. + /// Replace the version in rmcp's own implementation info. + /// + /// rmcp fills `clientInfo`/`serverInfo` from its `CARGO_PKG_VERSION`, so the + /// value tracks `Cargo.lock` rather than anything this test exercises. + fn normalize_rmcp_version(mut info: serde_json::Value) -> serde_json::Value { + if let Some(map) = info.as_object_mut() + && map.get("name").and_then(serde_json::Value::as_str) == Some("rmcp") + && let Some(version) = map.get_mut("version") + { + *version = serde_json::Value::String("".to_string()); + } + info + } + + /// Recursively normalize session IDs, MCP endpoints, MCP IDs, and rmcp + /// versions in JSON values. fn normalize_json(&mut self, value: serde_json::Value) -> serde_json::Value { match value { serde_json::Value::Object(map) => { @@ -163,6 +180,8 @@ impl EventNormalizer { } else { self.normalize_json(v) } + } else if k == "clientInfo" || k == "serverInfo" { + Self::normalize_rmcp_version(self.normalize_json(v)) } else { self.normalize_json(v) }; @@ -666,11 +685,11 @@ async fn test_trace_mcp_tool_call() -> Result<(), agent_client_protocol::Error> method: "initialize", session: None, params: Object { - "protocolVersion": String("2025-11-25"), + "protocolVersion": String("2026-07-28"), "capabilities": Object {}, "clientInfo": Object { "name": String("rmcp"), - "version": String("3.4.0"), + "version": String(""), }, }, }, @@ -689,7 +708,7 @@ async fn test_trace_mcp_tool_call() -> Result<(), agent_client_protocol::Error> }, "serverInfo": Object { "name": String("rmcp"), - "version": String("3.4.0"), + "version": String(""), }, "instructions": String("A simple test MCP server with an echo tool"), },