Strukturelle Analyse der Codebase #59
Labels
No labels
agent:done
agent:ready
agent:working
enhancement
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set
Reference
frank/forgecli#59
Loading…
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Auftrag: Strukturelle Codebase-Analyse und gezielte Refaktorierung
Analysiere die gesamte Codebase systematisch hinsichtlich:
Führe anschließend konkrete Verbesserungen direkt im Repository durch.
Ziel
Die Codebase soll nach der Bearbeitung:
Arbeite evidenzbasiert. Verändere keinen Code ausschließlich aufgrund persönlicher Stilpräferenzen.
Phase 1: Repository und System verstehen
Untersuche zunächst:
Erstelle daraus ein kompaktes Architekturmodell.
Identifiziere insbesondere:
Phase 2: Strukturelle Analyse
Prüfe die Codebase auf folgende Probleme.
Wartbarkeit
Performance
Optimiere nur dort, wo die Verbesserung nachvollziehbar ist. Vermeide spekulative Mikrooptimierungen.
Security
Prüfe unter anderem auf:
Berücksichtige die konkrete Technologie und das tatsächliche Bedrohungsmodell des Projekts.
Phase 3: Findings priorisieren
Dokumentiere jedes relevante Finding mit:
Verwende folgende Prioritäten:
Ordne Findings nicht allein nach theoretischer Schwere ein. Berücksichtige:
Phase 4: Verbesserungsplan
Erstelle vor größeren Änderungen einen konkreten Plan.
Der Plan soll enthalten:
Bevorzuge kleine, logisch getrennte Änderungen.
Phase 5: Umsetzung
Setze die identifizierten Verbesserungen direkt um.
Regeln für Änderungen
Wartbarkeitsverbesserungen
Nutze bei Bedarf:
Vermeide Abstraktionen, die nur einmal verwendet werden und keinen erkennbaren strukturellen Nutzen liefern.
Performanceverbesserungen
Bei Performanceänderungen:
Security-Fixes
Bei Security-Fixes:
Phase 6: Tests und Verifikation
Führe alle verfügbaren Prüfungen aus:
Ergänze Tests insbesondere für:
Falls Tests oder Tools nicht ausführbar sind, dokumentiere:
Behaupte keine erfolgreiche Prüfung, die nicht tatsächlich ausgeführt wurde.
Phase 7: Abschlussbericht
Erstelle am Ende einen strukturierten Bericht mit:
1. Architekturübersicht
2. Wichtigste Findings
Je Finding:
3. Durchgeführte Änderungen
4. Verifikation
5. Verbleibende Risiken
6. Änderungssicherheit
Bewerte abschließend:
Arbeitsweise
Arbeite in dieser Reihenfolge:
Beginne nicht sofort mit großflächigen Refactorings.
Teile frühzeitig konkrete Findings mit, sobald sie eindeutig belegt sind. Arbeite danach weiter, bis Analyse, Umsetzung und Verifikation abgeschlossen sind.
Falls mehrere unabhängige Probleme existieren, bearbeite zuerst:
Erwartetes Ergebnis
Das Endergebnis soll aus folgenden Bestandteilen bestehen:
Führe die Analyse und die Änderungen jetzt im aktuell geöffneten Repository durch.