From c44632ed4d0fd4e52be01696a9ae3a85f7902c5d Mon Sep 17 00:00:00 2001 From: legop3 Date: Tue, 17 Mar 2026 16:35:53 -0400 Subject: [PATCH] error handler --- server/src/services/audioForwardService.js | 16 +++++++++++++++- 1 file changed, 15 insertions(+), 1 deletion(-) diff --git a/server/src/services/audioForwardService.js b/server/src/services/audioForwardService.js index 9462c8d4..25f14716 100644 --- a/server/src/services/audioForwardService.js +++ b/server/src/services/audioForwardService.js @@ -231,9 +231,23 @@ function buildClipWriterArgs(filePath) { function attachWriterPipe(worker, proc) { const writer = fs.createWriteStream(worker.fifoPath, { flags: 'w' }); + writer.on('error', (err) => { + const code = err?.code || 'unknown'; + // Broken pipe is expected when FIFO reader (publisher) restarts/exits. + if (code !== 'EPIPE') { + logger.warn('writer pipe error', { roverId: worker?.roverId, code, message: err?.message || String(err) }); + } + }); + proc.stdout.on('error', (err) => { + logger.warn('writer stdout error', { + roverId: worker?.roverId, + code: err?.code || 'unknown', + message: err?.message || String(err), + }); + }); proc.stdout.pipe(writer); proc.on('exit', () => { - writer.end(); + writer.destroy(); }); }