Wenn User während laufender Verarbeitung tippt, erschien "Denkt nach"
zweimal: einmal in der leeren Assistant-Message und nochmal als
separater Block. Jetzt wird der separate Block nur gezeigt wenn
nirgends eine leere Assistant-Message existiert.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
OpenAI komplett entfernt. Voice läuft jetzt offline mit lokalen Binaries:
- whisper-cli (whisper-cpp 1.8.3) für Speech-to-Text
- piper-tts mit Thorsten-Stimme (Deutsch) für Text-to-Speech
- GStreamer + PipeWire in shell.nix für WebKitGTK Mikrofon-Zugriff
- VoicePanel: Echtgespräch mit VAD-Stille-Erkennung, Interrupt, Loop
- Models in .gitignore (~250MB)
[appimage]
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Die Lock-Datei war in .gitignore ausgeschlossen - damit scheitert
npm ci im CI-Build ("can only install with an existing package-lock.json").
Fix: Datei aus .gitignore raus und committen. Ist ohnehin Best Practice
damit Installs reproduzierbar sind.
- mysql_async mit chrono-Feature für NaiveDateTime-Support
- 7 SELECTs in knowledge.rs von String auf NaiveDateTime umgestellt
- Timestamps werden jetzt korrekt formatiert statt Panic
Getestet:
- Wissens-Suche funktioniert ohne Crash
- Handlanger-Modus Chat-Antwort erscheint
- VSCodium-Extension Verbindung OK
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>