Nach dem Hinzufügen des PNG-Tabs (Walk-Through 2) funktioniert der MainButton in der AmountPrice-Komponente nicht mehr: Konfiguration wird nicht gespeichert, nicht an Shopware übergeben, der Konfigurator schließt sich nicht. Die Änderungen im PNG-Tab haben offensichtlich einen Fehler eingeführt.
Diese Session zeigt, wie eine Debugging-Aufgabe scheitert, wenn kein strukturierter Diagnose-Plan gefordert wird. Copilot springt zwischen verschiedenen Hypothesen, ändert Code, muss Änderungen zurückrollen, und verliert dabei immer mehr den Überblick über die tatsächliche Ursache.
Vager Auftrag: "find and fix it" ohne strukturierten Kontext
Copilot ändert async/await-Logik → löst das Problem nicht
"das hat den fehler nicht behoben, bitte mach die änderung rückgängig" → Copilot rollt zurück
Copilot untersucht Ladereihenfolge → auch kein Ergebnis
"suche erneut, versuche nicht, das frontend zu kompilieren" → Copilot rollt zurück
Tab-Index-Kollision, Action-Typ-Kollision, Race Condition – Session endet offen
triggerConfigValidation wird this.onAddToBasket() ohne await aufgerufen, und der Loading-State wird danach gesetzt statt davor.
onAddToBasket() das Promise nicht zurück.
getConf('reducers') aufgerufen wird bevor setConfiguration in CustomApplicationConfiguration ausgeführt wird.
CustomApplicationConfiguration als erster Import geladen wird... Lassen Sie mich die Ladereihenfolge prüfen.
galleryHasImages = true und pngGalleryHasImages = true: Tab 0 = Upload, Tab 1 = Gallery, Tab 2 = PNGgalleryHasImages = false: Tab 1 = PNG, aber Code prüft immer activeTabIndex === 2activeTabIndex === 2 && vectorize && !!maxColorAmount && colorAmount > maxColorAmount – wenn vectorize = true, wird continueButtonDisabled true... ABER das betrifft nur den ImageEditDialog, nicht AmountPrice.
Debugging mit Copilot braucht einen strukturierten Ansatz. "Find and fix it" ist für Copilot kein ausreichender Input – er öffnet einen zu großen Suchraum und führt zu unstrukturierten Hypothesen.
Schritt 1: git diff als Ausgangspunkt
Der git diff begrenzt den Suchraum auf das tatsächlich Geänderte. Copilot muss nicht die gesamte Codebasis durchsuchen.
Schritt 2: Plan vor Fix verlangen
Ein expliziter Diagnose-Plan verhindert das Springen zwischen Hypothesen. Copilot formuliert erst alle möglichen Ursachen – dann wird die wahrscheinlichste zuerst geprüft.
Schritt 3: Nach jedem Fehlversuch Hypothese eliminieren
Ohne explizites Eliminieren springt Copilot zu neuen Hypothesen, statt systematisch durch die bestehende Liste zu gehen.
Schritt 4: Konkretes Symptom beschreiben
Je präziser das Symptom, desto gezielter die Suche. "Funktioniert nicht" öffnet jeden möglichen Fehlertyp.
Diese Session scheitert an einem strukturellen Problem: "find and fix it" ist keine Debugging-Strategie. Es eröffnet für Copilot einen unkontrollierbaren Suchraum, in dem er zwischen Hypothesen springt, ohne eine systematisch zu eliminieren.
Drei Rückgängig-Aktionen in einer Session sind das deutlichste Warnsignal: Copilot hat sich verirrt. Der richtige Zeitpunkt für einen Neustart mit einem anderen Ansatz wäre nach dem ersten Fehlversuch gewesen.
Was hätte funktioniert: git diff als Eingabe, expliziter Hypothesen-Plan, Symptom präzise beschreiben (was genau passiert beim Klick?), und nach jedem Fehlversuch eine Hypothese von der Liste streichen.
"Find the bug" ohne Kontext gibt Copilot einen zu großen Suchraum. "Hier ist der git diff – welche Zeile könnte dieses Symptom verursachen?" gibt ihm den richtigen Ankerpunkt. Der diff begrenzt die Hypothesen auf das tatsächlich Geänderte.
"Liste zuerst deine Hypothesen auf, bevor du etwas änderst." Das erzwingt eine strukturierte Diagnose. Copilot muss alle Möglichkeiten nennen – dann prüfen wir sie der Reihe nach, statt zufällig zu springen.
"Mach die Änderung rückgängig. Streiche diese Hypothese und prüfe die nächste auf deiner Liste." Ohne explizites Eliminieren kehrt Copilot zu ähnlichen Hypothesen zurück oder beginnt von vorne.
Was genau passiert beim Klick? Kein Spinner? Spinner bleibt stehen? Konfigurator bleibt offen? Shopware bekommt keine Daten? Je präziser das Symptom, desto gezielter Copilots Suche.
Wenn man dreimal "mach es rückgängig, suche erneut" schreiben muss, ist die Session erschöpft. Ein Neustart mit einem anderen Ansatz (andere Eingabe, anderer Diagnose-Rahmen) ist effizienter als das Fortsetzen einer verlorenen Session.
| Element | Qualität | Warum |
|---|---|---|
| Erster Prompt ("find and fix it") | ⬇ Problematisch | Zu großer Suchraum, kein strukturierter Eingabepunkt |
| Kein git diff als Startpunkt | ⬇ Problematisch | Copilot muss die gesamte Codebasis durchsuchen |
| Rückgängig-Forderungen (×3) | ⚠ Nötig aber vermeidbar | Richtige Reaktion – aber jeder Fehlversuch kostet Zeit |
| Constraint "nicht kompilieren" | ⬆ Gut | Verhindert unnötige Tool-Nutzung |
| Symptom-Beschreibung | ⬇ Problematisch | "Funktioniert nicht" ohne konkretes Verhalten |
| Hypothesen-Management | ⬇ Problematisch | Kein Plan, kein Eliminieren, kein roter Faden |