Umlaut-Normalisierung an drei Stellen + auch articles im QC
Fix fuer ASCII-Umlaute in Headlines/Inhalten (Gespraeche statt Gespraeche). Zwei Quellen des Problems: 1. Quellen wie dpa-AFX, Telegram TASS/RIA liefern Headlines schon ASCII-fiziert 2. LLM-Uebersetzungen drift en gelegentlich zu ae/oe/ue trotz Prompt Aenderungen: - rss_parser.py: nach html_to_text auch normalize_german_umlauts auf title und summary anwenden (sicher, hunspell-Dict ignoriert englische Woerter wie Boeing/Business) - orchestrator.py:1418 Translation-INSERT: headline_de und content_de durch normalize_german_umlauts schicken (LLM-Drift abfangen) - post_refresh_qc.py: neue Funktion normalize_umlaut_articles als Sicher- heitsnetz analog zu normalize_umlaut_fields. Behandelt headline_de und content_de aller Artikel des Incidents; bei language=de zusaetzlich headline und content_original. Wird in run_post_refresh_qc nach normalize_umlaut_fields aufgerufen. Backfill: migrations/migrate_umlauts_2026-05-03.py (im Verwaltungs-Repo)
Dieser Commit ist enthalten in:
@@ -7,6 +7,7 @@ from datetime import datetime, timezone
|
||||
from config import TIMEZONE, MAX_ARTICLES_PER_DOMAIN_RSS
|
||||
from source_rules import _extract_domain
|
||||
from feeds.transcript_extractors._common import html_to_text
|
||||
from services.post_refresh_qc import normalize_german_umlauts
|
||||
|
||||
logger = logging.getLogger("osint.rss")
|
||||
|
||||
@@ -158,6 +159,10 @@ class RSSParser:
|
||||
# und KI-Agenten und Sprach-Heuristik werden gestoert.
|
||||
summary_raw = entry.get("summary", "")
|
||||
summary = html_to_text(summary_raw) if summary_raw else ""
|
||||
# ASCII-Umlaut-Normalisierung (z.B. dpa-AFX schreibt "Gespraeche").
|
||||
# Dictionary-basiert, sicher gegen englische Woerter wie "Boeing".
|
||||
title, _ = normalize_german_umlauts(title)
|
||||
summary, _ = normalize_german_umlauts(summary)
|
||||
text = f"{title} {summary}".lower()
|
||||
|
||||
# Adaptive Match-Schwelle:
|
||||
|
||||
In neuem Issue referenzieren
Einen Benutzer sperren