From e961e02f7167b4599150e2418366d5fe92245fce Mon Sep 17 00:00:00 2001 From: Peter Steinberger Date: Mon, 12 Jan 2026 20:38:16 +0000 Subject: [PATCH] fix(gateway): quiet loopback ws closes --- src/gateway/server.ts | 14 +++++++++++++- 1 file changed, 13 insertions(+), 1 deletion(-) diff --git a/src/gateway/server.ts b/src/gateway/server.ts index 1897eb090..5035e405c 100644 --- a/src/gateway/server.ts +++ b/src/gateway/server.ts @@ -1397,6 +1397,15 @@ export async function startGatewayServer( ); close(); }); + const isNoisySwiftPmHelperClose = ( + userAgent: string | undefined, + remote: string | undefined, + ) => + Boolean( + userAgent?.toLowerCase().includes("swiftpm-testing-helper") && + isLoopbackAddress(remote), + ); + socket.once("close", (code, reason) => { const durationMs = Date.now() - openedAt; const closeContext = { @@ -1413,7 +1422,10 @@ export async function startGatewayServer( ...closeMeta, }; if (!client) { - logWsControl.warn( + const logFn = isNoisySwiftPmHelperClose(requestUserAgent, remoteAddr) + ? logWsControl.debug + : logWsControl.warn; + logFn( `closed before connect conn=${connId} remote=${remoteAddr ?? "?"} fwd=${forwardedFor ?? "n/a"} origin=${requestOrigin ?? "n/a"} host=${requestHost ?? "n/a"} ua=${requestUserAgent ?? "n/a"} code=${code ?? "n/a"} reason=${reason?.toString() || "n/a"}`, closeContext, );