my_voice_assistant_v3_jamulix/app/web
dschlueter e753788a23 feat(citations): Web-Such-Quellen unter der Antwort-Bubble anzeigen
Sonar liefert Citation-URLs; bisher verworfen, jetzt bis in die UI gereicht.

- ToolCallingLLM: _run_tool/_inject_forced_search geben Citations zurueck;
  stream() sammelt sie ueber einen on_citations-Callback.
- Orchestrator: chat_stream reicht on_citations durch (via _stream_supports)
  und legt die gesammelten URLs in PipelineTrace.citations.
- schemas: PipelineTrace.citations.
- ws.py: Citations im semantic-Event.
- Frontend (app.js): renderCitations() zeigt bis zu 4 Quellen-Links
  (Hostname, neuer Tab) unter der Antwort-Bubble.

Nur ueber den Streaming-Pfad (= Web-UI). Live verifiziert: "Wer ist
Bundeskanzler?" -> 15 Quellen gesammelt (Bundeskanzler.de, Wikipedia, ...).
Tests: 312 gruen; JS-Syntax geprueft. Doc §8.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-30 00:11:24 +02:00
..
app.js feat(citations): Web-Such-Quellen unter der Antwort-Bubble anzeigen 2026-06-30 00:11:24 +02:00
apple-touch-icon.png feat: Geräte-TTS, native Stimmen, Favicon, Auth-Gate, UI-Fixes 2026-06-20 13:12:04 +02:00
favicon-32.png feat: Geräte-TTS, native Stimmen, Favicon, Auth-Gate, UI-Fixes 2026-06-20 13:12:04 +02:00
favicon.svg feat: Geräte-TTS, native Stimmen, Favicon, Auth-Gate, UI-Fixes 2026-06-20 13:12:04 +02:00
index.html fix(i18n): NL auch in HTML-Sprach-Optionslisten (index.html) 2026-06-28 15:25:45 +02:00