
# Autonomer Master-Auftrag für Claude Code beziehungsweise Aria

## SupplierPulse QAF Comparator, Strangler-V2 auf dem vorhandenen deterministischen Kern

### Rolle

Arbeite als Principal Software Architect, Senior TypeScript Engineer, Excel- und QAF-Domain-Engineer, Data Contract Designer, Test Architect, Security Engineer und BMW-UX-System-Designer in einer Person.

Führe den Auftrag vollständig autonom in wiederholten Qualitäts-Loops aus. Beginne nicht mit einem Rewrite und beginne nicht mit kosmetischen UI-Änderungen. Lies zuerst das Repository, reproduziere den aktuellen Stand und beweise, welche Teile erhalten, korrigiert, zerlegt oder ersetzt werden müssen.

### Verbindliche Eingaben

Lies in dieser Reihenfolge vollständig:

1. `00_README_QAF_Comparator_Knowledge_Package_v1.0.md`
2. `01_QAF_Comparator_Master_Specification_v1.0.md`
3. `05_Current_State_Code_Audit_v1.0.md`
4. `06_Autonomous_Loop_Roadmap_v1.0.md`
5. `07_Requirements_Traceability_Matrix_v1.0.md`
6. `09_ADR_Strangler_V2_Decision_v1.0.md`
7. `03_QAF_Comparison_Canonical_Schema_v1.0.json`
8. `04_SupplierPulse_QAF_Web_Design_Tokens_v1.0.json`
9. `08_Current_Module_Inventory_v1.0.csv`
10. `QAF-Vergleich-Architektur.md`
11. `QAF-Vergleich-Stand-und-Plan.md`
12. `QAF-Vergleich-Quellcode.md`
13. das echte Repository mit Tests, Migrationen und Konfiguration
14. die QAF-Vorlagen, QAF-Beispiele, den User Guide und die HTML-Referenzen
15. das BMW Group Design System

### Ausgangsentscheidung

Die Arbeitsannahme lautet:

> Strangler-V2 auf dem vorhandenen deterministischen Kern.

Diese Annahme darf nur verworfen werden, wenn der ausführbare Repository-Audit einen konkreten, reproduzierbaren und nicht wirtschaftlich behebbaren Kernmangel nachweist. Ein Gefühl, eine Präferenz für Greenfield oder eine hohe Dateigröße reichen nicht.

### Nicht verhandelbare Regeln

1. Der fachliche Vergleich bleibt vollständig deterministisch.
2. Ein LLM berechnet keine Zahlen, Deltas, Formeln, Zuordnungen, Einheiten oder Währungen.
3. Identische Eingaben und identische Versionsstände erzeugen denselben kanonischen Content Hash.
4. Originaldateien werden niemals überschrieben.
5. Keine Zelle, Formel, Tabelle, ausgeblendete Struktur oder nicht erkannte Information wird still verworfen.
6. `empty_verified`, `not_computed`, `not_applicable`, `blocked` und `failed` bleiben getrennte Zustände.
7. Eine nicht schließende Preisbrücke wird nicht gezeichnet.
8. Kein Restbalken kaschiert eine nicht erklärte Differenz.
9. Jede Aussage ist über Difference IDs und Source References bis zu Datei, Blatt, Zelle, Formel und Wertzustand rückverfolgbar.
10. Keine V1-Funktion wird ohne Paritätsnachweis entfernt.
11. Keine neue parallele kanonische Feldregistry wird angelegt.
12. UI-Komponenten rechnen nicht.
13. Keine Zelladresse wird als fachliche Wahrheit in UI-Komponenten fest verdrahtet.
14. Rot und Grün sind nicht die alleinige Informationscodierung.
15. Rot wird nur für echte kritische Zustände verwendet, nicht pauschal für jede Kostenerhöhung.
16. Die neue UI folgt dem BMW Group Design System, Sentence Case, BMW Teal, weißen Flächen, quadratischen Ecken, Hairline Rules, minimalen Schatten und zahlenorientierter Sprache.
17. Keine Fontdateien werden aus dem Repository oder Paket an Nutzer weitergegeben.
18. Alle Änderungen werden durch Tests, Gegenproben, Golden Outputs und aktualisierte Dokumentation belegt.
19. Keine breite Umbenennung oder Migration ohne reversible Zwischenschritte.
20. Keine Rückfrage nach jedem normalen Arbeitsschritt.

## Zielzustand

### A. Deterministischer Kern

Erhalte und konsolidiere die vorhandenen Parser-, Matching-, Formula-, Security-, Reconciliation-, Data-Quality-, Multi-QAF- und Provenienzmodule.

Schließe mindestens folgende bestätigte Lücken:

- Materialdifferenzen in den zentralen Differenzkatalog
- Fertigungsdifferenzen in den zentralen Differenzkatalog
- vollständige Source-Artefakt-Persistenz und Reparse-Fähigkeit
- D15, D16 und D17
- R-03 Vergleichsklassifikation
- `scope_removed`
- stabile, evidenzbasierte Action IDs
- explizite Kosten- und Strukturstatus bei Nullkosten-Zugängen
- einheitliche kanonische Feldregistry ohne konkurrierende Wahrheiten
- vollständige Capability-Migration verbleibender harter Gates

### B. Kanonischer JSON-Vertrag

Implementiere `03_QAF_Comparison_Canonical_Schema_v1.0.json` als UI-unabhängige Systemgrenze.

Der Export enthält genau 24 fachliche Bereiche. Jeder Bereich besitzt einen expliziten Zustand. Keine UI-Komponente und kein Präsentationsexport darf eine parallele Rechenlogik besitzen.

Erzeuge mindestens:

- vollständigen Domain Export
- kompakten AI Export
- Presentation Package
- Run Manifest
- Source Artifact Manifest
- Determinism Manifest
- Validation Report
- Schema Validation
- Content Hash ohne volatile Felder

Der heutige ViewModel-Export darf als Legacy-Export weiterbestehen, muss aber klar als nicht-kanonisch gekennzeichnet werden.

### C. Ein bis sechs eigenständige QAFs

Implementiere einen `ComparisonSet` für ein bis sechs Dokumente A bis F.

Unterstütze:

- Baselinevergleich
- Zeitreihe
- frei wählbaren Paar-Detailvergleich
- Vergleichsmatrix
- optionalen Lieferantenbenchmark
- optionalen Variantenbenchmark

Verwende globale Mappinggruppen für Material, Fertigung, Werkzeuge und kanonische Kennzahlen. Speichere nicht 15 unabhängige Paarwahrheiten.

Die vorhandene Multi-QAF-Variantencontainerlogik bleibt erhalten. Sie ist ein eigener Vergleichstyp und darf nicht mit dem neuen Dokument-ComparisonSet vermischt werden.

### D. Neue V2-Oberfläche

Baue die neue Oberfläche ausschließlich gegen den kanonischen Vertrag.

Primäre Navigation, sofern fachlich verfügbar:

1. Überblick
2. Zusammenfassung
3. Material
4. Fertigungskosten
5. SBM, Vorrichtungen und Folgewerkzeuge
6. Logistik und Zoll
7. Rohstoffrisiken
8. Zusatzmodule
9. Qualität und Maßnahmen
10. Technischer Nachweis

Anforderungen:

- maximal drei sichtbare Hauptaktionen im Kopfbereich
- primäre Aktion, Exportmenü, Weitere-Aktionen-Menü
- A-bis-F-Dokumentleiste mit Rollen, Datum, Qualität und Baseline
- progressive Offenlegung
- Standardfilter `Nur relevante Änderungen`
- Suche, Filter, Sortierung, Pagination oder Virtualisierung
- Sidepanel für Quellzellen, Formeln, Matching und Reconciliation
- responsive Desktop-, Tablet- und Mobilansicht
- keine horizontale Seitenscrollfläche
- kein deaktiviertes Nutzer-Zoomen
- Tastaturbedienung, Focus States und Screenreader-Semantik
- verständliche `Einfach erklärt`-Blöcke, deren Zahlen nur aus Facts stammen

### E. BMW Design System

Nutze `04_SupplierPulse_QAF_Web_Design_Tokens_v1.0.json` als Webvertrag.

Verbindlich:

- BMW Teal `#035970`
- Weiß `#FFFFFF`
- Schwarz `#000000`
- Gray Blue `#92A2BD`
- unterstützende Teal-Skala `#548D9E`, `#85ACB9`, `#ABC4CF`, `#C8D7E0`, `#DEE5EC`, `#E8EBF1`
- BMWGroupTN, BMWGroup, Arial als Fallbackkette
- Sentence Case
- All Caps nur für kleine Eyebrow-Labels
- quadratische Standardradien
- Hairline Rules
- minimale Schatten
- monochromes Wordmark oben rechts, sofern offizielles Asset vorhanden
- keine dekorativen Verläufe
- keine warmen Beige- oder Consumer-Tech-Flächen
- keine Emoji, Ausrufezeichen oder Marketingadjektive

### F. Migration

Erhalte die heutige V1 als Paritätsreferenz.

Jede V1-Funktion erhält in der Requirements Traceability Matrix einen Status:

- unverändert übernommen
- auf kanonischen Vertrag migriert
- bewusst verbessert
- bewusst verworfen mit fachlicher Genehmigung
- noch offen

Schalte V1 erst ab, wenn:

- Kernparität belegt ist
- Exportparität belegt ist
- Golden Corpus grün ist
- reale Referenzfälle grün sind
- Source Provenance vollständig ist
- keine kritische oder hohe offene Abweichung besteht

## Autonomer Loop

Führe die Loops aus `06_Autonomous_Loop_Roadmap_v1.0.md` in Reihenfolge aus.

Für jeden Loop:

1. lies den Ist-Zustand
2. aktualisiere die Requirement IDs
3. formuliere eine prüfbare Hypothese
4. wähle den kleinsten fachlich vollständigen Schnitt
5. implementiere
6. führe Typecheck und Lint aus
7. führe fokussierte Tests aus
8. führe die vollständige Testsuite aus
9. führe eine Mutationsprobe aus
10. führe eine negative Gegenprobe aus
11. vergleiche Golden Outputs und Content Hashes
12. prüfe Security und Performance
13. rendere relevante UI-Zustände
14. aktualisiere ADR, Audit, Matrix und Changelog
15. committe atomar
16. starte den nächsten Loop automatisch

## Pflichtartefakte im Repository

Erzeuge und pflege:

- `docs/qaf-v2/master-specification.md`
- `docs/qaf-v2/current-state-audit.md`
- `docs/qaf-v2/requirements-traceability.md`
- `docs/qaf-v2/data-contract.md`
- `docs/qaf-v2/migration-parity.md`
- `docs/qaf-v2/security-model.md`
- `docs/qaf-v2/performance-baseline.md`
- `docs/qaf-v2/decisions/`
- `docs/qaf-v2/loop-reports/`
- `schemas/qaf-comparison-canonical-v1.0.json`
- `schemas/qaf-comparison-canonical-v1.0.examples.json`
- `tests/fixtures/qaf-golden/`
- `tests/golden/qaf-comparison/`
- `tests/determinism/`
- `tests/security/qaf-workbooks/`

## Stop-Regeln

Stoppe nur bei einem echten externen Blocker:

- notwendiger Zugriff oder Secret fehlt
- benötigte Quelldatei fehlt
- zwei verbindliche Anforderungen widersprechen sich und keine reversible konservative Lösung ist möglich
- irreversible Datenmigration ohne Backup wäre notwendig
- ein Security-Fund verhindert jede sichere Fortsetzung

Bei einem Blocker:

1. exakt dokumentieren
2. geprüfte Alternativen auflisten
3. reversible Zwischenlösung implementieren, soweit möglich
4. alle nicht blockierten Loops fortsetzen

## Definition of Done

Der Auftrag ist erst abgeschlossen, wenn:

- der echte Repository-Stand reproduzierbar gebaut und getestet wurde
- die Kernlücken geschlossen sind
- der kanonische JSON-Vertrag produktiv und validiert ist
- ein bis sechs QAFs global verglichen werden können
- die neue V2-Oberfläche die vollständige Fachparität besitzt
- Source Artifact und Provenienz durchgängig sind
- Golden Corpus, Security und Determinismus in CI laufen
- alle V1-Funktionen in der Paritätsmatrix entschieden sind
- BMW Design System und Accessibility verifiziert sind
- JSON-, Excel-, PDF-, Präsentations- und AI-Exporte aus derselben kanonischen Wahrheit entstehen
- der Abschlussbericht verbleibende Grenzen ehrlich benennt

Beginne jetzt mit Loop 0. Arbeite bis zur Definition of Done autonom weiter.
