Tier 3 — Grammatik-Gate: Kalibrierung und Nulllinie¶
Stand 2026-08-10. Quelle: Chris' QA Runde 1 (lenny_qa_runde1.md, 346 Paare aus
kaputter Ausgabe + korrigierter Fassung).
Warum Detektoren statt Wortlaut-Vergleich¶
Chris' korrigierte Fassungen sind Prosa, und seine Fehler-Etiketten sind maschinell erzeugt (steht so in der QA — „sollten vor dem Festschreiben überflogen werden"). Ein Regressions-Tor auf exaktem Wortlaut wäre damit weder stabil noch ehrlich. Stattdessen: mechanisch sichere Detektoren, validiert am Korpus — ein Detektor taugt nur, wenn er beim kaputten Satz anschlägt und beim korrigierten schweigt.
Kalibrierung (346 Paare)¶
| Detektor | feuert auf kaputt | auf korrigiert (Fehlalarm) |
|---|---|---|
| lowercase_sentence_start | 57 | 3 (0,9 %) |
| article_without_noun | 54 | 17 (4,9 %) |
| bare_noun_after_copula | 4 | 0 (0,0 %) |
| repeated_sentence_opening | 17 | 10 (2,9 %) |
| glued_wordsalad | 8 | 3 (0,9 %) |
| encoding_junk | 0 | 0 |
| non_german | 0 | 0 |
Gesamt-Trennung: kaputte Fassungen 30,6 % defekt erkannt, korrigierte 9,2 % — Faktor ~3,3.
Zwei Detektoren mussten datengetrieben korrigiert werden, statt sie zu glauben:
- article_without_noun feuerte anfangs auf 91 % aller Texte (Regex-Bug:
IGNORECASE ließ die Kleinbuchstaben-Klasse auch Großbuchstaben matchen).
Case-sensitiv + Lücke 1 Wort → 54 vs. 17.
- glued_wordsalad hatte bei Schwelle 20 11,8 % Fehlalarm (lange echte
Wörter wie „aufeinanderfolgenden"). Schwelle 26 → 0,9 %.
Hinweis: das Sicherheits-Gate in api_server nutzt bewusst weiter 20 — dort
ist ein Fehlalarm harmlos (stuft nur auf Kandidat herab), hier verzerrt er die
Kennzahl.
Ehrliche Grenze¶
Das Gate fängt mechanische Fehler (Schreibung, fehlender Artikel, Kauderwelsch, Zeichenmüll). Die Mehrheit der Grammatikfehler im Korpus sind Kongruenz-/Kasus- Fehler („seine Inhalt", „an den Leistungsverlust merkt") — die erkennt keine Regex, dafür bräuchte es einen echten Parser (Language Brain, Loop B). Die Kennzahl misst also einen belegbaren Ausschnitt, nicht die ganze Sprachqualität. Sie ist trotzdem nützlich: sie bewegt sich nur, wenn sich wirklich etwas ändert.
Golden-Set¶
core/grammar_golden.jsonl — 86 Fälle mit sauberem Signal (Detektor feuert auf
broken, schweigt auf fixed). Selbst-validierend: der Test schlägt an, wenn ein
Detektor einen bekannten Fehler nicht mehr erkennt oder auf einem korrekten
Satz Fehlalarm gibt.
Nulllinie (Chris' QA, Stand vor den heutigen Fixes)¶
| Kennzahl | Wert |
|---|---|
| Antworten gesamt (eindeutig) | 354 |
| Urteil „gut" | 8 (2,3 %) |
| Urteil „teilweise" | 283 (79,9 %) |
| Urteil „problematisch" | 63 (17,8 %) |
| „Siegel passt nicht" | 87 (24,6 %) |
| aus dem deterministischen Renderer | 3 (0,8 %) |
Diese Zahlen sind die Vergleichsbasis für die nächste QA-Runde.