Stabilisierung
Bugfixing
Was du vorbereiten solltest
- Fehlerbild, erwartetes Verhalten und möglichst ein reproduzierbarer Eingabefall mit relevanten Feldwerten.
- Die Codepfade, die den Zustand berechnen oder verändern; bei ABAP oft Mapper, Validierer, Statuslogik oder Datenbankselektion.
- Bekannte Nicht-Ziele: Bereiche, die nicht angefasst werden sollen, Performance-Pfade oder fachliche Sonderfälle, die unverändert bleiben müssen.
Empfohlener Ablauf
- Kontext bereitstellenLege die betroffenen Dateien, die Fehlermeldung und möglichst einen kurzen Reproduktionspfad in den Workspace. Wenn vorhanden, beschreibe die konkreten Werte, bei denen der Fehler auftritt.
- Aufgabe konkret formulierenBeschreibe Ist-Verhalten, Soll-Verhalten und Randfälle. Bitte den Assistenten zuerst um Ursachenhypothesen, danach um die kleinste Änderung mit Regressionstest.
- Änderungen prüfenPrüfe, ob der Fix den beschriebenen Fehler trifft und keine breitere Logik unbeabsichtigt verändert. Tests sind hier besonders wichtig, weil kleine Bedingungen in Statuslogik schnell andere Fälle verschieben.
Beispiel-Prompt
Ein Bugfix-Prompt sollte Fehlerbild, Erwartung und Grenzen enthalten.
In ZCL_ORDER_STATUS_MAPPER wird bei stornierten Positionen manchmal Status OPEN zurückgegeben. Erwartet ist CANCELLED, wenn LOEKZ gesetzt ist. Analysiere die Ursache, ändere nur den kleinsten notwendigen Bereich und ergänze einen Unit Test für diesen Fall.
Review-Checkliste
- Reproduziert der neue Test den ursprünglichen Fehlerfall und würde er ohne Fix fehlschlagen?
- Ist die Änderung lokal begrenzt, oder verändert sie versteckt eine allgemeinere Geschäftsregel?
- Sind Grenzfälle wie Initialwerte, gelöschte Positionen, Statusprioritäten oder fehlende Customizing-Daten berücksichtigt?
Erwartetes Ergebnis
Das Ergebnis sollte eine minimale Codeänderung plus Regressionstest sein. Die Begründung muss erklären, warum genau dieser Pfad den Fehler verursacht hat und welche ähnlichen Fälle bewusst nicht geändert wurden.