From d6df78c9b92488a9d0b24247ea3fad37160a2fe8 Mon Sep 17 00:00:00 2001 From: Cian Johnston Date: Wed, 1 Apr 2026 10:00:50 +0100 Subject: [PATCH] chore: remove racy ChatStatusPending assertions after CreateChat (#23882) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Removes 6 fragile `require.Equal(t, codersdk.ChatStatusPending, chat.Status)` assertions from chat relay and creation tests. **Root cause**: In HA tests with two replicas sharing the same DB, the worker can acquire a just-created chat (flipping `pending → running` via `AcquireChats`) before the HTTP response reaches the test. All affected tests already synchronize via `require.Eventually` waiting for `running` status, making the initial assertion both redundant and racy. - Remove 5 assertions in `enterprise/coderd/exp_chats_test.go` (all `TestChatStreamRelay` subtests) - Remove 1 assertion in `coderd/exp_chats_test.go` (`TestPostChats`) - An existing comment in `TestPostChats/Success` already documents this exact race Fixes flake: https://github.com/coder/coder/actions/runs/23807597632/job/69385425724 > 🤖 Written by a Coder Agent. Will be reviewed by a human. --- coderd/exp_chats_test.go | 1 - enterprise/coderd/exp_chats_test.go | 5 ----- 2 files changed, 6 deletions(-) diff --git a/coderd/exp_chats_test.go b/coderd/exp_chats_test.go index e9525ca8af..b43407b65e 100644 --- a/coderd/exp_chats_test.go +++ b/coderd/exp_chats_test.go @@ -216,7 +216,6 @@ func TestPostChats(t *testing.T) { require.Equal(t, member.ID, chat.OwnerID) require.Equal(t, modelConfig.ID, chat.LastModelConfigID) require.Equal(t, "hello from chats route tests", chat.Title) - require.Equal(t, codersdk.ChatStatusPending, chat.Status) require.NotZero(t, chat.CreatedAt) require.NotZero(t, chat.UpdatedAt) require.Nil(t, chat.WorkspaceID) diff --git a/enterprise/coderd/exp_chats_test.go b/enterprise/coderd/exp_chats_test.go index a4d4abb00b..36609d8f4f 100644 --- a/enterprise/coderd/exp_chats_test.go +++ b/enterprise/coderd/exp_chats_test.go @@ -100,7 +100,6 @@ func TestChatStreamRelay(t *testing.T) { ModelConfigID: &model.ID, }) require.NoError(t, err) - require.Equal(t, codersdk.ChatStatusPending, chat.Status) var runningChat database.Chat require.Eventually(t, func() bool { @@ -289,7 +288,6 @@ func TestChatStreamRelay(t *testing.T) { ModelConfigID: &model.ID, }) require.NoError(t, err) - require.Equal(t, codersdk.ChatStatusPending, chat.Status) var runningChat database.Chat require.Eventually(t, func() bool { @@ -459,7 +457,6 @@ func TestChatStreamRelay(t *testing.T) { ModelConfigID: &model.ID, }) require.NoError(t, err) - require.Equal(t, codersdk.ChatStatusPending, chat.Status) var runningChat database.Chat require.Eventually(t, func() bool { @@ -631,7 +628,6 @@ func TestChatStreamRelay(t *testing.T) { ModelConfigID: &model.ID, }) require.NoError(t, err) - require.Equal(t, codersdk.ChatStatusPending, chat.Status) var runningChat database.Chat require.Eventually(t, func() bool { @@ -779,7 +775,6 @@ func TestChatStreamRelay(t *testing.T) { ModelConfigID: &model.ID, }) require.NoError(t, err) - require.Equal(t, codersdk.ChatStatusPending, chat.Status) var runningChat database.Chat require.Eventually(t, func() bool {