fix: Abbildungs-Gegenprobe ohne kopierbares Beispiel, Kennungen vereinheitlicht

- Prompt-Beispiel '1 → 2: 3' durch Schema 'A → B: Wert' ersetzt: eine Lesung hatte
  nur die Beispielzeile übernommen statt aller fünf Pfeile; alle Datenpunkte verlangt
- canonical_figure_id: '1' und 'Abbildung 1' gelten als dieselbe Abbildung – beim
  Vergleich, in der Pipeline und im Report (Formfehler im zweiten Testlauf)

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
This commit is contained in:
Dieter Schlüter 2026-09-17 18:09:52 +02:00
commit 89b61d8c62

View file

@ -236,9 +236,10 @@ def check_figure_readings(first, second) -> List[CheckIssue]:
fälschlich an: eine Lesung zählte zusätzlich „Knoten: 1, 2, 3, 4“ auf (test_Image.md, 17.09.2026).
Eine vertauschte Pfeilrichtung (2 → 3 statt 3 → 2) fällt auf; eine in BEIDEN Lesungen gleich falsche nicht.
"""
from understanding.figures import canonical_figure_id
issues = []
erste = {f.id: f for f in first}
zweite = {f.id: f for f in second}
erste = {canonical_figure_id(f.id): f for f in first}
zweite = {canonical_figure_id(f.id): f for f in second}
for kennung in sorted(set(erste) | set(zweite)):
if kennung not in erste or kennung not in zweite:
issues.append(CheckIssue(severity=CheckSeverity.ERROR, code="FIGURE_READINGS_DIFFER",