{"repo":"NousResearch/hermes-agent","public_id":"2885","display_label":"Local STT CUDA failures and CPU fallback handling","summary":"These items concern local speech-to-text crashing or failing to fall back to CPU when CUDA or cuBLAS libraries are unavailable, misconfigured, or unsupported (e.g., Apple Silicon, WSL2, Blackwell GPUs). Several also touch TUI voice mode stability and related transcription robustness issues.","subsystem":"agent","counts":{"members":12,"open_issues":0,"open_issues_distinct":0,"open_prs":0,"closed_issues":6,"merged_prs":2,"attempt_prs":4},"landed_fix":{"status":"merged_to_main","basis":"structural","pr":20897},"resolution":{"state":"partially_resolved","by":"pr-20897,pr-73510"},"freshness":{"state":"verified","last_verified_at":"2026-07-28T18:53:37+00:00","is_stale":false},"grouping":{"backbone":"STRUCTURAL_PARTIAL","link_density":0.1387878787878788},"fix_edges":[{"issue_number":8319,"pr_number":73510,"tier":"verified","basis":"closing_ref","confidence":0.95,"recoverable_from_timeline":true},{"issue_number":15462,"pr_number":20897,"tier":"verified","basis":"closing_ref","confidence":0.95,"recoverable_from_timeline":true},{"issue_number":17526,"pr_number":73510,"tier":"verified","basis":"closing_ref","confidence":0.95,"recoverable_from_timeline":true},{"issue_number":28622,"pr_number":73510,"tier":"verified","basis":"closing_ref","confidence":0.95,"recoverable_from_timeline":true},{"issue_number":53259,"pr_number":73510,"tier":"verified","basis":"closing_ref","confidence":0.95,"recoverable_from_timeline":true},{"issue_number":55167,"pr_number":73510,"tier":"verified","basis":"closing_ref","confidence":0.95,"recoverable_from_timeline":true},{"issue_number":68719,"pr_number":73510,"tier":"verified","basis":"closing_ref","confidence":0.95,"recoverable_from_timeline":true}],"members":[{"kind":"issue","number":2885,"title":"[Bug]: Local STT crashes with RuntimeError on systems without system-wide CUDA 12 libs (WSL2, venv-only CUDA)","url":null,"state":"closed"},{"kind":"issue","number":6102,"title":"Question: should local STT retry on CPU int8 when faster-whisper hits cuBLAS runtime errors?","url":null,"state":"closed"},{"kind":"issue","number":13568,"title":"[Bug]: Local STT should reuse CPU fallback after cuBLAS runtime failure","url":null,"state":"closed"},{"kind":"issue","number":15462,"title":"TUI voice mode: Python crash on 2nd transcription (cTranslate2/OpenBLAS threading conflict)","url":null,"state":"closed"},{"kind":"issue","number":17526,"title":"STT: faster-whisper CUBLAS_STATUS_NOT_SUPPORTED on RTX 5090 (Blackwell sm_120) bypasses CPU fallback","url":null,"state":"closed"},{"kind":"issue","number":28622,"title":"Gateway voice notes crash Python on Apple Silicon/Rosetta local STT","url":null,"state":"closed"},{"kind":"pr","number":2890,"title":"fix: graceful CUDA fallback for local STT (fixes #2885)","url":null,"state":"closed","close_reason":{"category":"stale_abandoned","implication":"active"},"merged":false},{"kind":"pr","number":13571,"title":"fix(stt): reuse CPU fallback after CUDA runtime failure","url":null,"state":"closed","close_reason":{"category":"uncategorized","implication":"needs_llm"},"merged":false,"is_fix_pr":true,"fix_tier":"suggested","fix_detail_withheld":true},{"kind":"pr","number":16189,"title":"fix(tui): restore classic CLI voice push-to-talk parity","url":null,"state":"closed","close_reason":{"category":"uncategorized","implication":"needs_llm"},"merged":false},{"kind":"pr","number":20897,"title":"fix(tui): restore voice push-to-talk parity","url":null,"state":"merged","close_reason":{"category":"merged","implication":"superseded"},"merged":true,"is_fix_pr":true,"fix_tier":"verified","files_changed":["hermes_cli/voice.py","tests/hermes_cli/test_voice_wrapper.py","tests/test_tui_gateway_server.py","tui_gateway/server.py","ui-tui/src/__tests__/useInputHandlers.test.ts","ui-tui/src/app/useInputHandlers.ts","ui-tui/src/gatewayTypes.ts"]},{"kind":"pr","number":28624,"title":"fix: avoid local STT crash on Apple Silicon","url":null,"state":"closed","close_reason":{"refs":[{"kind":"commit","value":"c0c5dac531","number":0},{"kind":"pr","value":"#73510","number":73510}],"category":"merged_via","implication":"superseded"},"merged":false},{"kind":"pr","number":73510,"title":"fix(stt): provider robustness — device config, CUDA fallbacks, container normalization (SILK/m4a), lazy-install recovery","url":null,"state":"merged","close_reason":{"category":"merged","implication":"superseded"},"merged":true,"is_fix_pr":true,"fix_tier":"verified","files_changed":["contributors/emails/[redacted:email]","contributors/emails/[redacted:email]","contributors/emails/[redacted:email]","contributors/emails/[redacted:email]","contributors/emails/[redacted:email]","contributors/emails/[redacted:email]","gateway/run.py","tests/gateway/test_stt_config.py","tests/tools/test_managed_media_gateways.py","tests/tools/test_transcription_command_providers.py","tests/tools/test_transcription_plugin_dispatch.py","tests/tools/test_transcription_tools.py","tests/tools/test_tts_pythonpath_fallback.py","tests/tools/test_voice_mode.py","tools/lazy_deps.py","tools/transcription_tools.py","tools/tts_tool.py","tools/voice_mode.py"]}],"trust":{"default_tier":"verified","includes_suggested":false}}