From f7e70e954e08da4c458ecff2fb25fd735bfe9632 Mon Sep 17 00:00:00 2001 From: teknium1 <127238744+teknium1@users.noreply.github.com> Date: Wed, 16 Sep 2026 22:14:16 -0700 Subject: [PATCH] test(ui-tui): the no-heartbeat check expects the capability advertisement Every gateway.ready now puts one client.capabilities frame on the wire, so "no frames" is no longer the invariant; "no gateway.ping" is. --- ui-tui/src/__tests__/gatewayClient.test.ts | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/ui-tui/src/__tests__/gatewayClient.test.ts b/ui-tui/src/__tests__/gatewayClient.test.ts index fcf6dea238..b5905b012b 100644 --- a/ui-tui/src/__tests__/gatewayClient.test.ts +++ b/ui-tui/src/__tests__/gatewayClient.test.ts @@ -625,7 +625,10 @@ describe('GatewayClient websocket attach mode', () => { ) await vi.advanceTimersByTimeAsync(WS_HEARTBEAT_DEAD_MS + WS_HEARTBEAT_INTERVAL_MS) expect(socket.readyState).toBe(FakeWebSocket.OPEN) - expect(socket.sent).toEqual([]) + // The one frame on the wire is the client.capabilities advertisement every gateway.ready triggers. + const methods = socket.sent.map(text => (JSON.parse(text) as { method: string }).method) + + expect(methods).toEqual(['client.capabilities']) expect(FakeWebSocket.instances).toHaveLength(1) } finally { gw.kill()