From a101f0e3be905e2da362812b58cb195a1018d774 Mon Sep 17 00:00:00 2001 From: Nathan Hangen Date: Sun, 10 May 2026 21:24:58 -0400 Subject: [PATCH] fix(mcp): call shutdownMetrics on serve graceful shutdown The supported scrape target (gitnexus serve) was leaking the Prometheus exporter HTTP server on SIGINT/SIGTERM, leading to EADDRINUSE on restart. Mirror the existing pattern in mcp/server.ts. --- gitnexus/src/server/api.ts | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/gitnexus/src/server/api.ts b/gitnexus/src/server/api.ts index 2d49fabc4..d5e735a97 100644 --- a/gitnexus/src/server/api.ts +++ b/gitnexus/src/server/api.ts @@ -1832,6 +1832,10 @@ export const createServer = async (port: number, host: string = '127.0.0.1') => await cleanupMcp(); await closeLbug(); await backend.disconnect(); + try { + const { shutdownMetrics } = await import('../mcp/metrics.js'); + await shutdownMetrics(); + } catch {} const { flushLoggerSync } = await import('../core/logger.js'); flushLoggerSync(); process.exit(0);