Bug-Fix-Workflow
Du behebst einen Bug in der Speicher Analyse Tauri-App. Das Problem liegt IMMER im Quellcode.
Argument
$ARGUMENTS = Bug-Beschreibung ODER Verweis auf ein Issue in docs/issues/issue.md
Phase 1: Issue & Kontext erfassen
- Issue-Tracker prüfen: Lies
docs/issues/issue.md - Git-Historie prüfen:
git log --oneline -10undgit diff - Betroffene Module identifizieren: Welche Dateien sind involviert?
Phase 2: Tiefenanalyse (OBERSTE DIREKTIVE)
Verfolge den vollständigen Datenfluss durch alle Schichten:
React-View (src/views/*.tsx)
→ API-Aufruf (import { foo } from '../api/tauri-api')
→ tauri-api.ts: invoke('command_name', { params })
→ Tauri-Command (src-tauri/src/commands/cmd_*.rs)
→ PowerShell (src-tauri/src/ps.rs)
→ Rückweg: JSON → commands/ → tauri-api.ts → React-State → JSX
Prüfe zusätzlich:
- CSS-Regeln in
src/style.css - React State + useEffect Dependencies
- useEffect Cleanup (Timer, Listener, Observer)
- Property-Namen: Backend vs. Frontend (z.B.
name/detailvs.label/message) - PowerShell-Escaping und UTF-8-Encoding
Phase 3: Fix implementieren
- Minimaler Fix: Nur die Wurzelursache beheben, kein Refactoring
- Security beachten:
- PowerShell-Parameter escapen:
.replace("'", "''") - Pfade vom Frontend validieren
- Kein
dangerouslySetInnerHTML(JSX escaped automatisch)
- PowerShell-Parameter escapen:
- React-Konventionen einhalten:
- Async/Await mit try/catch
- State-Updates über
useStateSetter - Side-Effects in
useEffectmit Cleanup-Return - Deutsche UI-Texte mit korrekten Umlauten
- Keine Zwischenlösungen: Fix muss ohne User-Aktion wirken
Phase 4: Verifizierung
- Datenfluss nochmal durchgehen
- Seiteneffekte prüfen: Könnte der Fix andere Features beeinträchtigen?
- Edge Cases: Leere Daten, Fehler, Timeouts
- Visuell prüfen:
/visual-verifybei UI-Änderungen (PFLICHT)
Phase 5: Dokumentation
- Git Commit:
git add . && git commit -m "fix: <Beschreibung>" && git push - Änderungsprotokoll:
/changelog fix <Beschreibung> - Issue aktualisieren: Status auf "In Prüfung" (NICHT erledigt — nur Simon darf das)
Ausgabeformat
## Bug-Fix: [Titel]
### Symptom
Was der User sieht/erlebt
### Wurzelursache
Die ECHTE Ursache im Code (mit Datei:Zeile)
### Fix
Was geändert wurde (mit Datei:Zeile)
### Geänderte Dateien
- datei.rs:123 - Beschreibung
- datei.tsx:456 - Beschreibung
### Risiko-Bewertung
Welche anderen Features könnten betroffen sein
Verbotene Aussagen
- "Bitte F5 drücken" / "Bitte die App neu starten"
- "Bei mir funktioniert es" / "Der Code sieht korrekt aus"
- "Das sollte jetzt funktionieren" (ohne Beweis)