From dba2f0a9fb13e7fa4475607d1d32c09b58dfc65b Mon Sep 17 00:00:00 2001 From: Stanislaw Grams Date: Sun, 8 Feb 2026 22:54:12 +0100 Subject: [PATCH] [feat](trx-client): add diagnostic logging for decode pipeline Log whether audio/decode is enabled at startup and warn when /decode is requested but the decode channel was not set. Helps diagnose broken decode pipelines. Co-Authored-By: Claude Opus 4.6 Signed-off-by: Stanislaw Grams --- src/trx-client/src/main.rs | 7 +++++++ src/trx-client/trx-frontend/trx-frontend-http/src/api.rs | 2 ++ 2 files changed, 9 insertions(+) diff --git a/src/trx-client/src/main.rs b/src/trx-client/src/main.rs index e90f894..d199a6d 100644 --- a/src/trx-client/src/main.rs +++ b/src/trx-client/src/main.rs @@ -302,6 +302,11 @@ async fn async_init() -> DynResult { set_audio_channels(rx_audio_tx.clone(), tx_audio_tx, stream_info_rx); set_decode_channel(decode_tx.clone()); + info!( + "Audio enabled: connecting to {}, decode channel set", + audio_addr + ); + tokio::spawn(audio_client::run_audio_client( audio_addr, rx_audio_tx, @@ -309,6 +314,8 @@ async fn async_init() -> DynResult { stream_info_tx, decode_tx, )); + } else { + info!("Audio disabled in config, decode will not be available"); } // Spawn frontends (skip appkit — it will be driven from main thread) diff --git a/src/trx-client/trx-frontend/trx-frontend-http/src/api.rs b/src/trx-client/trx-frontend/trx-frontend-http/src/api.rs index 683775b..4b76640 100644 --- a/src/trx-client/trx-frontend/trx-frontend-http/src/api.rs +++ b/src/trx-client/trx-frontend/trx-frontend-http/src/api.rs @@ -98,8 +98,10 @@ pub async fn events( #[get("/decode")] pub async fn decode_events() -> Result { let Some(decode_rx) = crate::server::audio::subscribe_decode() else { + tracing::warn!("/decode requested but decode channel not set (audio disabled?)"); return Ok(HttpResponse::NotFound().body("decode not enabled")); }; + tracing::info!("/decode SSE client connected"); let decode_stream = futures_util::stream::unfold(decode_rx, |mut rx| async move { loop {