"""Offline-Prüfer für eine fiktive Testantwort; startet keinen API-Aufruf.
Verwendung: python validator.py antwort.json
Prüft Sollwerte und Quellenkennungen, keine Modellqualität oder echten Belege.
"""
import json, sys
with open(sys.argv[1], encoding="utf-8") as f:
    answer = json.load(f)
expected = {"artikel": "M7", "menge": 12, "nettowarenwert": 114,
            "waehrung": "EUR", "lieferzeit_werktage": 4, "versandkosten": None}
errors = [name for name, value in expected.items()
          if name not in answer or answer[name] != value or isinstance(answer[name], bool)]
sources = answer.get("quellen")
if not isinstance(sources, list) or set(sources) != {"A", "B"}:
    errors.append("quellen")
if errors:
    print("Abweichung:", ", ".join(errors))
    raise SystemExit(1)
print("Sollwerte passen. Fundstellen und Wortlaut trotzdem am Original prüfen.")
