Skip to content

Commit 91cb8c1

Browse files
committed
fix(transport): address PR review feedback
- deprecate KeepAliveTimeout - harden tests
1 parent 2463369 commit 91cb8c1

3 files changed

Lines changed: 12 additions & 3 deletions

File tree

crates/rmcp/src/transport/streamable_http_server/session/local.rs

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -935,6 +935,9 @@ pub enum LocalSessionWorkerError {
935935
FailToSendInitializeRequest(SessionError),
936936
#[error("fail to handle message: {0}")]
937937
FailToHandleMessage(SessionError),
938+
#[deprecated(note = "idle timeout now surfaces as WorkerQuitReason::IdleTimeout")]
939+
#[error("keep alive timeout after {}ms", _0.as_millis())]
940+
KeepAliveTimeout(Duration),
938941
#[error("Transport closed")]
939942
TransportClosed,
940943
#[error("Tokio join error {0}")]

crates/rmcp/src/transport/worker.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,7 @@ pub enum WorkerQuitReason<E> {
2222
TransportClosed,
2323
#[error("Handler terminated")]
2424
HandlerTerminated,
25-
#[error("Worker idle timeout ({}ms)", _0.as_millis())]
25+
#[error("Worker idle timeout after {}ms", _0.as_millis())]
2626
IdleTimeout(Duration),
2727
}
2828

crates/rmcp/tests/test_streamable_http_idle_timeout_log.rs

Lines changed: 8 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -21,6 +21,7 @@ use common::calculator::Calculator;
2121

2222
struct CapturedEvent {
2323
level: tracing::Level,
24+
target: String,
2425
message: String,
2526
}
2627

@@ -38,6 +39,7 @@ impl<S: tracing::Subscriber> tracing_subscriber::Layer<S> for CapturingLayer {
3839
event.record(&mut visitor);
3940
self.events.lock().unwrap().push(CapturedEvent {
4041
level: *event.metadata().level(),
42+
target: event.metadata().target().to_string(),
4143
message: visitor.0,
4244
});
4345
}
@@ -142,7 +144,7 @@ async fn test_keep_alive_timeout_does_not_emit_error_log() {
142144

143145
let error_events: Vec<_> = captured
144146
.iter()
145-
.filter(|e| e.level == tracing::Level::ERROR)
147+
.filter(|e| e.level == tracing::Level::ERROR && e.target.starts_with("rmcp"))
146148
.collect();
147149
assert!(
148150
error_events.is_empty(),
@@ -153,7 +155,11 @@ async fn test_keep_alive_timeout_does_not_emit_error_log() {
153155

154156
let debug_events: Vec<_> = captured
155157
.iter()
156-
.filter(|e| e.level == tracing::Level::DEBUG && e.message.contains("IdleTimeout"))
158+
.filter(|e| {
159+
e.level == tracing::Level::DEBUG
160+
&& e.target.starts_with("rmcp")
161+
&& e.message.contains("IdleTimeout")
162+
})
157163
.collect();
158164
assert!(
159165
!debug_events.is_empty(),

0 commit comments

Comments
 (0)