Logpy-AgentOne/pipe
Jeuner 00176916d7 fix: Notfall-Sicherheitsnetz, Board-Refresh-Bug, Verbindungsverlust-Anzeige
Notfall-Sicherheitsnetz (categorize.py): qwen3:8b stufte "starke
Brustschmerzen ... kriege kaum Luft" reproduzierbar (3/3 Testlaeufe) nur als
"hoch" statt "notfall" ein, obwohl es selbst "Brustschmerzen"+"Atemnot" als
Stichworte erkannte und der Prompt genau diese als Notfall-Beispiele nennt.
Bei Notfall-Erkennung darf man sich nicht allein aufs LLM verlassen -
_notfall_sicherheitsnetz() prueft den rohen Transkripttext deterministisch
gegen die im Prompt selbst genannten Symptome (Atemnot, Brustschmerz,
Bewusstlosigkeit, starke Blutung) und eskaliert nur nach oben, nie runter.

Board-Refresh-Bug (server.py): der Audio-Fix aus einem frueheren Commit
("audio:not([paused])") pruefte ein HTML-Attribut, das <audio> nie gesetzt
hat - der Selektor traf auf JEDES Audio-Element zu, egal ob es lief. Das
Board hat sich seitdem praktisch nie mehr neu gezeichnet, sobald irgendeine
Karte eine Aufnahme hatte (also fast immer) - erklaert "Dashboard
aktualisiert manchmal nicht". Jetzt echte .paused-DOM-Eigenschaft geprueft.

Verbindungsverlust-Anzeige: bisher schluckte hole() Netzwerkfehler still,
das Board blieb unbemerkt eingefroren. Neues Banner ab 2 aufeinanderfolgenden
fehlgeschlagenen Poll-Versuchen (~6s), zeigt Zeitpunkt der letzten
erfolgreichen Aktualisierung, verschwindet automatisch bei Erholung.

Bereits gespeicherter Peter-Fuchs-Fall (Brustschmerz+Atemnot) manuell auf
notfall/notfall nachkorrigiert.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_015vtvcyNkapuDh583643hNs
2026-08-24 22:08:38 +02:00
..
__init__.py Praxis-Telefon-Agent: Anrufannahme, Transkription, Triage — vollständig on-prem 2026-08-22 22:37:17 +02:00
audit.py feat: Leitstand-Fixes, Sicher-Modus, Notfall-Alarm, Audit-Log + Loeschfristen 2026-08-24 19:13:09 +02:00
categorize.py fix: Notfall-Sicherheitsnetz, Board-Refresh-Bug, Verbindungsverlust-Anzeige 2026-08-24 22:08:38 +02:00
config.py feat: OpenRouter-Backend + Modell-Dropdown im Leitstand, Live-Log fuer Dauer/Tokens/Kosten 2026-08-24 21:43:30 +02:00
dashboard.py Praxis-Telefon-Agent: Anrufannahme, Transkription, Triage — vollständig on-prem 2026-08-22 22:37:17 +02:00
deck.py Praxis-Telefon-Agent: Anrufannahme, Transkription, Triage — vollständig on-prem 2026-08-22 22:37:17 +02:00
kontakte.py feat: Kontakt-Abgleich gegen Nextcloud-Adressbuch bei eingehenden Anrufen 2026-08-23 02:18:51 +02:00
loeschen.py docs+feat: Loeschung selbstgesteuert statt Cron, README auf aktuellen Stand 2026-08-24 19:32:31 +02:00
modellwahl.py feat: OpenRouter-Backend + Modell-Dropdown im Leitstand, Live-Log fuer Dauer/Tokens/Kosten 2026-08-24 21:43:30 +02:00
process_call.py feat: OpenRouter-Backend + Modell-Dropdown im Leitstand, Live-Log fuer Dauer/Tokens/Kosten 2026-08-24 21:43:30 +02:00
protokoll.py feat: Leitstand-Fixes, Sicher-Modus, Notfall-Alarm, Audit-Log + Loeschfristen 2026-08-24 19:13:09 +02:00
resync.py feat: Kontakt-Abgleich gegen Nextcloud-Adressbuch bei eingehenden Anrufen 2026-08-23 02:18:51 +02:00
server.py fix: Notfall-Sicherheitsnetz, Board-Refresh-Bug, Verbindungsverlust-Anzeige 2026-08-24 22:08:38 +02:00
stapel.py feat: "Tag archivieren"-Button im Leitstand (simuliert) 2026-08-23 01:35:22 +02:00
store.py feat: Leitstand-Fixes, Sicher-Modus, Notfall-Alarm, Audit-Log + Loeschfristen 2026-08-24 19:13:09 +02:00
transcribe.py fix: bekannte Whisper-Halluzinationen filtern statt als Anliegen zu werten 2026-08-24 20:50:30 +02:00
watch.py docs+feat: Loeschung selbstgesteuert statt Cron, README auf aktuellen Stand 2026-08-24 19:32:31 +02:00