# Project Knowledge ## Zweck Article Data Manager erzeugt, validiert und pflegt langfristig die Artikeldaten fuer den bestehenden Roll Calculator. ## Abgrenzung Das Projekt ist ein eigenstaendiges Repository. RollCalc konsumiert spaeter nur die generierte `article-data.json`. ## Zentrale Datenquellen - ERP-CSV-Export als primaere Quelle fuer fachlich eindeutige Stammdaten. - Bestehende RollCalc-JSON als Quelle fuer vorhandene Berechnungsparameter. - Manuelle CSV-Daten fuer Zusatzdaten und explizite Korrekturen. ## Artikelnummer `nr` und ERP-Artikelnummern werden immer als Strings behandelt. Fuehrende Nullen muessen erhalten bleiben. ## Einheiten - `width`: Meter - `thickness`: Millimeter - `area_weight`: Gramm pro Quadratmeter - `core_diameter`: Millimeter - `core_type`: separater Wert, nicht mit Durchmesser vermischen ## Merge-Prioritaeten 1. ERP-Stammdaten 2. bestehende RollCalc-Berechnungsdaten 3. manuelle Ergaenzungen und ausdruecklich erlaubte Overrides Konflikte duerfen nicht stillschweigend ueberschrieben werden. ## Sicherheitsregeln Produktive ERP-Daten, lokale Quelldaten, generierte Dateien und Reports sind per `.gitignore` ausgeschlossen. Nur reduzierte oder anonymisierte Beispiele werden versioniert. ## Aktueller Stand Phase 0: Struktur, Dokumentation, Fixtures, minimale Python-Bausteine und Tests. ## Offene fachliche Fragen Siehe `docs/data-model.md` und `docs/merge-rules.md`. ## Naechste Schritte - Importer fuer RollCalc-JSON, ERP-CSV und manuelle CSV-Datei implementieren. - Validierungs- und Merge-Regeln produktiv ausbauen. - Reports und deterministischen Export ergaenzen. ## Wichtige Dateien - `docs/data-dictionary.md` - `docs/merge-rules.md` - `tests/fixtures/` - `src/article_data_manager/`