--- 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.