blitztext-app-linux/linux/blitztext
mARTin-B78 0875fe7ac0 llm: catch all exceptions, validate response, show transcription preview (v1.9.9)
- llm.py: catch OSError/TimeoutError (socket.timeout is NOT a URLError subclass)
  and bare Exception so no path kills the background thread silently
- daemon.py: catch unexpected exceptions from llm.chat and surface them as
  overlay errors instead of silent thread death
- daemon.py: reject LLM responses that are >80 % whitespace (cold-start
  model returning spaces/blank lines gets discarded, not typed)
- daemon.py: show transcribed text in overlay immediately before thinking
  animation so user can see what was heard while LLM processes

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-06-09 15:02:45 +02:00
..
__init__.py settings: emoji search, Manual tab fix, readable infobox (v1.9.5) 2026-06-09 13:09:42 +02:00
__main__.py Add STT + LLM engine presets, rename entry to blitztext.py, macOS app icon 2026-06-04 20:21:03 +02:00
audio.py overlay: drive waveform + silence countdown via pw-record (fix PipeWire); app reports as "Blitztext" not __main__.py; Release 1.7.1 2026-06-08 08:39:37 +02:00
autostart.py gtksettings: align Input tab labels to uniform 175px width; autostart: add 12s delay 2026-06-08 20:00:33 +02:00
benchmark.py Benchmark: add Device column (CPU/GPU/remote); case-sensitive accuracy 2026-06-05 14:12:16 +02:00
blitztext.py Stop notification storms: transient notifications, single instance, no empty-result alerts 2026-06-06 10:42:13 +02:00
caret.py stability + settings: fix AT-SPI session freeze, markdown Manual, bigger emojis (v1.9.6) 2026-06-09 14:20:05 +02:00
config.py presets: per-preset LLM engine selector + fix streaming freeze (v1.9.7) 2026-06-09 14:39:59 +02:00
daemon.py llm: catch all exceptions, validate response, show transcription preview (v1.9.9) 2026-06-09 15:02:45 +02:00
gtksettings.py presets: per-preset LLM engine selector + fix streaming freeze (v1.9.7) 2026-06-09 14:39:59 +02:00
gtkui.py settings: lazy-build tabs (instant open); move connection dots beside the field; single-instance Settings dialog; Release 1.9.1 2026-06-08 19:30:08 +02:00
inputmode.py Add modifier-key input scheme (whisper-key style) 2026-06-04 20:26:59 +02:00
llm.py llm: catch all exceptions, validate response, show transcription preview (v1.9.9) 2026-06-09 15:02:45 +02:00
logbuffer.py Add Log tab + in-memory log buffer 2026-06-05 09:42:48 +02:00
notify.py Stop notification storms: transient notifications, single instance, no empty-result alerts 2026-06-06 10:42:13 +02:00
overlay.py presets: per-preset LLM engine selector + fix streaming freeze (v1.9.7) 2026-06-09 14:39:59 +02:00
paste.py Add Wayland, Tests, CI, and OpenWakeword integration 2026-06-05 17:16:05 +02:00
quality.py dictation: spoken newlines + LLM thinking animation (v1.9.8) 2026-06-09 14:43:15 +02:00
recorder.py Rewrite README; fix fd leak, StopIteration crash, add pip Dependabot 2026-06-05 16:01:31 +02:00
routing.py routing: send-by-voice keyword (types + presses Enter); wakeword benchmark via TTS; Release 1.8.0 2026-06-08 13:17:33 +02:00
sound.py Add custom WAV audio cues for recording start/stop 2026-06-06 09:40:09 +02:00
streaming.py Add realtime streaming and Linux app docs 2026-06-05 15:06:17 +02:00
stt.py Add realtime streaming and Linux app docs 2026-06-05 15:06:17 +02:00
transcribe.py Benchmark: add Device column (CPU/GPU/remote); case-sensitive accuracy 2026-06-05 14:12:16 +02:00
tray.py wakeword: reversible tray pause toggle; document quiet-session fixes 2026-06-06 22:17:50 +02:00
wakeword_bench.py routing: send-by-voice keyword (types + presses Enter); wakeword benchmark via TTS; Release 1.8.0 2026-06-08 13:17:33 +02:00
wakeword.py wakeword: reversible tray pause toggle; document quiet-session fixes 2026-06-06 22:17:50 +02:00