From 672725c3cf64b1ee3b981d64398b97b1deb41a17 Mon Sep 17 00:00:00 2001 From: "devsy-app[bot]" <277138668+devsy-app[bot]@users.noreply.github.com> Date: Wed, 12 Aug 2026 12:29:12 +0000 Subject: [PATCH] test(e2e): cover no-such-container and broken-pipe SSH retry patterns The retryableSSHPatterns list in e2e/framework/retry.go declares 'no such container' and 'broken pipe' as transient SSH errors, but retry_test.go had zero coverage for either. Both feed isRetryableSSHError, which gates execWithSSHRetry (used by DevsySSH in the tunnel/ssh e2e suites to mask transient WSL/Windows runner flakiness). Add edge-case tests for these two uncovered patterns so the retry classification is regression-protected. --- e2e/framework/retry_test.go | 20 ++++++++++++++++++++ 1 file changed, 20 insertions(+) diff --git a/e2e/framework/retry_test.go b/e2e/framework/retry_test.go index 7503081b19..a5a753d446 100644 --- a/e2e/framework/retry_test.go +++ b/e2e/framework/retry_test.go @@ -71,6 +71,26 @@ func TestIsRetryableSSHError_WorkspaceNotFound(t *testing.T) { ) } +func TestIsRetryableSSHError_NoSuchContainer(t *testing.T) { + assert.True( + t, + isRetryableSSHError( + exitError(t, "1"), + "Error: no such container: devsy-workspace-abc123", + ), + ) +} + +func TestIsRetryableSSHError_BrokenPipe(t *testing.T) { + assert.True( + t, + isRetryableSSHError( + exitError(t, "1"), + "write: broken pipe", + ), + ) +} + func TestIsRetryableSSHError_ForkExecPermissionDenied(t *testing.T) { assert.True( t,