Problem
Das Intent-/Positions-Matching ist rein substring-basiert (kein Fuzzy/
phonetisches Matching). Eine einzelne STT-Fehlhörung bricht die Erkennung —
ein falsches Wort, ganze Dialogkette kaputt.
Beispiel aus dem Live-Log (OpenAI-Modus, EDNY):
Pilot sagt „am Vorfeld", Whisper transkribiert „am Fahrfeld".
Folge: detect_has_position() findet den Marker vorfeld nicht →
has_position = false → ATC antwortet fälschlich „Sagen Sie Ihre Position",
obwohl die Position gemeldet wurde.
Whisper: "... November Shark am Fahrfeld VFR Platzrunde Information Bravo"
ATC: "... guten Tag, Sagen Sie Ihre Position. Information Bravo, Piste 06, QNH 1020."
Bereits umgesetzt (Quick-Fix)
data/atc_profiles/de/intent_rules.json → normalize: fahrfeld/fahrtfeld → vorfeld
(läuft in intent_rules::preprocess() vor der Feature-Extraction → repariert
Intent-Matching und Positions-Erkennung in einem).
airport_ctx in src/atc/atc_session.cpp: kompaktes deutsches VFR-Vokabular
als STT-Bias über alle drei Backends.
Ziel dieses Issues: Fehlhörungen sammeln
Bitte reale STT-Fehlhörungen hier melden — Format:
- gesprochen: "am Vorfeld"
- transkribiert: "am Fahrfeld"
- Backend: OpenAI | Mistral | Local
- Kontext: Flugplatz / Phase / Intent
Folgeschritte (datengetrieben)
Bei 3–5 weiteren Fällen strukturiert ausbauen:
normalize-Map erweitern (deterministisch, backend-agnostisch).
- STT-Biasing ausbauen (kuratierte VFR-Vokabelliste).
- Re-Eval scoped Fuzzy-Matching (Kölner Phonetik / bounded Levenshtein
NUR gegen kuratierte Positions-/Facility-Vokabel) — bewusst aufgeschoben
wegen globaler False-Positive-Gefahr; erst wenn die Daten den Bedarf zeigen.
Nicht verfolgt: LM-basierte Transkript-Reparatur (backend-abhängig, widerspricht
der deterministisch-bevorzugt-Linie).
Problem
Das Intent-/Positions-Matching ist rein substring-basiert (kein Fuzzy/
phonetisches Matching). Eine einzelne STT-Fehlhörung bricht die Erkennung —
ein falsches Wort, ganze Dialogkette kaputt.
Beispiel aus dem Live-Log (OpenAI-Modus, EDNY):
Pilot sagt „am Vorfeld", Whisper transkribiert „am Fahrfeld".
Folge:
detect_has_position()findet den Markervorfeldnicht →has_position = false→ ATC antwortet fälschlich „Sagen Sie Ihre Position",obwohl die Position gemeldet wurde.
Bereits umgesetzt (Quick-Fix)
data/atc_profiles/de/intent_rules.json→normalize:fahrfeld/fahrtfeld → vorfeld(läuft in
intent_rules::preprocess()vor der Feature-Extraction → repariertIntent-Matching und Positions-Erkennung in einem).
airport_ctxinsrc/atc/atc_session.cpp: kompaktes deutsches VFR-Vokabularals STT-Bias über alle drei Backends.
Ziel dieses Issues: Fehlhörungen sammeln
Bitte reale STT-Fehlhörungen hier melden — Format:
Folgeschritte (datengetrieben)
Bei 3–5 weiteren Fällen strukturiert ausbauen:
normalize-Map erweitern (deterministisch, backend-agnostisch).NUR gegen kuratierte Positions-/Facility-Vokabel) — bewusst aufgeschoben
wegen globaler False-Positive-Gefahr; erst wenn die Daten den Bedarf zeigen.
Nicht verfolgt: LM-basierte Transkript-Reparatur (backend-abhängig, widerspricht
der deterministisch-bevorzugt-Linie).