diff --git a/.github/workflows/publish.yml b/.github/workflows/publish.yml index 9f787a5..4b34fb9 100644 --- a/.github/workflows/publish.yml +++ b/.github/workflows/publish.yml @@ -84,7 +84,7 @@ jobs: - name: Setup Node.js uses: actions/setup-node@v4 with: - node-version: "22" + node-version: "22.14.0" cache: "npm" registry-url: "https://registry.npmjs.org" @@ -184,7 +184,7 @@ jobs: - name: Setup Node.js uses: actions/setup-node@v4 with: - node-version: "22" + node-version: "22.14.0" registry-url: "https://registry.npmjs.org" - name: Download build artifacts @@ -267,7 +267,7 @@ jobs: - name: Setup Node.js uses: actions/setup-node@v4 with: - node-version: "22" + node-version: "22.14.0" cache: "npm" - name: Download build artifacts diff --git a/packages/dashboard-server/src/proxy-server.ts b/packages/dashboard-server/src/proxy-server.ts index 36ad5dc..cede5a6 100644 --- a/packages/dashboard-server/src/proxy-server.ts +++ b/packages/dashboard-server/src/proxy-server.ts @@ -518,7 +518,7 @@ export function createServer(options: DashboardServerOptions = {}): DashboardSer if (mode === 'mock') { handleMockWebSocket(ws, verbose); } else if (mode === 'proxy' && relayUrl) { - handleHybridWebSocket(ws, getRelaycastSnapshot, relayUrl, verbose); + handleHybridWebSocket(ws, getRelaycastSnapshot, relayUrl, verbose, brokerApiKey); } else { handleStandaloneWebSocket(ws, getRelaycastSnapshot, verbose); } diff --git a/packages/dashboard-server/src/websocket/standalone.ts b/packages/dashboard-server/src/websocket/standalone.ts index d4996b5..5288e8c 100644 --- a/packages/dashboard-server/src/websocket/standalone.ts +++ b/packages/dashboard-server/src/websocket/standalone.ts @@ -87,6 +87,7 @@ export function handleHybridWebSocket( getSnapshot: () => Promise, relayUrl: string, verbose: boolean, + brokerApiKey?: string, ): void { if (verbose) { console.log('[dashboard] Hybrid WebSocket client connected'); @@ -141,7 +142,7 @@ export function handleHybridWebSocket( console.log(`[dashboard] Connecting to broker WS: ${brokerWsUrl}`); } - const bws = new WebSocket(brokerWsUrl); + const bws = new WebSocket(brokerWsUrl, brokerApiKey ? { headers: { 'x-api-key': brokerApiKey } } : undefined); brokerWs = bws; bws.on('open', () => {