67 lines
2.1 KiB
Markdown
67 lines
2.1 KiB
Markdown
|
|
---
|
|||
|
|
mode: agent
|
|||
|
|
description: Definition of Done – vollständige Abnahme-Checkliste vor dem Merge
|
|||
|
|
tools:
|
|||
|
|
- codebase
|
|||
|
|
- runCommands
|
|||
|
|
- problems
|
|||
|
|
---
|
|||
|
|
|
|||
|
|
# Definition of Done – Abnahme-Check
|
|||
|
|
|
|||
|
|
**Task / Feature:** ${input:task:Was wurde implementiert?}
|
|||
|
|
|
|||
|
|
Führe alle Checks durch. Behebe gefundene Probleme bevor du abschließt.
|
|||
|
|
|
|||
|
|
---
|
|||
|
|
|
|||
|
|
## 1. Funktionalität
|
|||
|
|
- [ ] Alle Acceptance Criteria erfüllt (gegen ursprüngliche ACs prüfen)
|
|||
|
|
- [ ] Happy Path funktioniert
|
|||
|
|
- [ ] Edge Cases behandelt
|
|||
|
|
- [ ] Error Cases mit sinnvollen Fehlermeldungen
|
|||
|
|
|
|||
|
|
## 2. Code-Qualität
|
|||
|
|
- [ ] Kein roter Code (`problems`-Tool)
|
|||
|
|
- [ ] Kein Dead Code, keine auskommentierten Blöcke
|
|||
|
|
- [ ] Keine TODOs ohne zugehöriges Issue
|
|||
|
|
- [ ] Funktionen ≤ 50 Zeilen, Klassen ≤ 200 Zeilen
|
|||
|
|
- [ ] Naming: klar, konsistent, keine Abkürzungen
|
|||
|
|
|
|||
|
|
## 3. Tests
|
|||
|
|
- [ ] Unit-Tests für alle neuen/geänderten Funktionen
|
|||
|
|
- [ ] Integration-Tests wo Services zusammenspielen
|
|||
|
|
- [ ] Alle Tests grün
|
|||
|
|
- [ ] Keine Tests deaktiviert/übersprungen ohne Begründung
|
|||
|
|
- [ ] Coverage nicht gesunken
|
|||
|
|
|
|||
|
|
## 4. Security (OWASP Top 10)
|
|||
|
|
- [ ] Keine Secrets, API-Keys, Passwörter im Code
|
|||
|
|
- [ ] Alle Inputs an System-Grenzen validiert
|
|||
|
|
- [ ] SQL/Command-Injection nicht möglich
|
|||
|
|
- [ ] Auth/Authz korrekt
|
|||
|
|
- [ ] Keine neuen Abhängigkeiten mit bekannten CVEs
|
|||
|
|
|
|||
|
|
## 5. Dokumentation
|
|||
|
|
- [ ] Code-Kommentare erklären das WHY (nicht das WHAT)
|
|||
|
|
- [ ] Public APIs dokumentiert
|
|||
|
|
- [ ] README aktualisiert (wenn Verhalten sich ändert)
|
|||
|
|
- [ ] ADR erstellt (wenn architektonische Entscheidung getroffen wurde)
|
|||
|
|
- [ ] CHANGELOG.md aktualisiert (wenn Release-relevant)
|
|||
|
|
|
|||
|
|
## 6. Git
|
|||
|
|
- [ ] Commits atomar (ein Commit = eine logische Änderung)
|
|||
|
|
- [ ] Commit-Messages: Conventional Commits Format
|
|||
|
|
- [ ] Keine unrelated changes im Branch
|
|||
|
|
- [ ] Branch up-to-date mit main/master
|
|||
|
|
|
|||
|
|
## 7. Nicht-funktionale Anforderungen
|
|||
|
|
- [ ] Performance: keine Regression (bekannte Benchmarks)
|
|||
|
|
- [ ] Keine neuen Warnungen in Logs
|
|||
|
|
- [ ] Ressourcenverbrauch vertretbar (CPU, Memory, DB-Queries)
|
|||
|
|
|
|||
|
|
---
|
|||
|
|
|
|||
|
|
**Ergebnis:** Wenn alle Punkte ✓ → Task ist Done. Jeden offenen Punkt mit konkretem
|
|||
|
|
Problem und Fix-Vorschlag benennen.
|