From 60eabea19adaf65888428b922f71179cb1eec4fe Mon Sep 17 00:00:00 2001 From: Hare Date: Wed, 21 Oct 2026 06:13:16 +0900 Subject: [PATCH 1/2] fix: assert retained remote session close diagnostics --- crates/workspace-server/src/hosts.rs | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/crates/workspace-server/src/hosts.rs b/crates/workspace-server/src/hosts.rs index 4027b221a..18fe40e22 100644 --- a/crates/workspace-server/src/hosts.rs +++ b/crates/workspace-server/src/hosts.rs @@ -8866,7 +8866,14 @@ mod tests { }) .await .expect_err("closed session must reject local operation without another request"); - assert!(matches!(error, WorkdirError::Unavailable(_))); + assert!(matches!( + error.classification_source(), + WorkdirError::Unavailable(_) + )); + assert_eq!( + error.failure_reason(), + Some(workdir::WorkdirFailureReason::SessionClosed) + ); server.join().expect("mock remote server finished"); } From 6181426abd675f4313d6300c6a01ddeb2ccdd6df Mon Sep 17 00:00:00 2001 From: Hare Date: Wed, 21 Oct 2026 06:27:54 +0900 Subject: [PATCH 2/2] fix: assert retained checkout outcome diagnostics --- crates/workspace-server/src/server.rs | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/crates/workspace-server/src/server.rs b/crates/workspace-server/src/server.rs index a1b36997f..9bd590949 100644 --- a/crates/workspace-server/src/server.rs +++ b/crates/workspace-server/src/server.rs @@ -37791,10 +37791,15 @@ mod tests { ))) .unwrap(); } + let error = write.await.unwrap().unwrap_err(); assert!(matches!( - write.await.unwrap(), - Err(workdir::WorkdirError::OutcomeUnknown(_)) + error.classification_source(), + workdir::WorkdirError::OutcomeUnknown(_) )); + assert_eq!( + error.failure_reason(), + lose_response.then_some(workdir::WorkdirFailureReason::ProviderUnavailable) + ); } }