Qualitätssicherung

Übersicht der QA-Prozesse und Prüfungen für WvdS FPC RAD Studio.

Diese Checklisten gelten für alle Entwickler - sowohl für manuelle Reviews als auch für KI-gestützte Audits.

QA-Workflow

Jede Änderung durchläuft diese 5 Prüfschritte:

Schritt Prüfung Checkliste
1 Production-Ready Keine TODOs, Stubs, Mocks
2 Sicherheit KRITIS/NIS2, OWASP
3 Code-Qualität Naming, DRY, Error Handling
4 SSOT Common Libraries statt lokaler Kopien
5 Dokumentation PasDoc-Kommentare, API-Docs

Profil-Matrix

Welche Checklisten je nach Projekttyp anwenden:

Projekttyp Pflicht Optional
VSCode Extension Core, Cross-Platform, VSCode-Stack Sicherheit, Logging
Desktop App Core, Build, Logging i18n, Sicherheit
TUI/CLI Core, CLI-Stack, Cross-Platform Sicherheit, Performance
Library Core, Naming, Functions, Build Sicherheit, Cross-Platform
Web API Core, Sicherheit, Logging Performance, SQL

Checklisten im Detail

Dokument Inhalt Wann anwenden
Core-Checkliste Production-Ready, Error Handling, Logging Immer
Sicherheits-Checkliste KRITIS/NIS2, OWASP, Crypto Bei Netzwerk, Auth, Crypto
Codequalität-Checkliste Naming, Functions, DRY Bei API-Änderungen
Kommentierungsstandards PasDoc, XMLDoc, Principles Bei neuen Units
VSCode-Checkliste Extension-spezifisch, pas2js Bei Extension-Arbeit

Zero-Tolerance-Regeln

Diese Regeln sind nicht verhandelbar - Code mit Verstößen wird abgelehnt.

Verboten in Produktionscode

VERBOTEN                         ERFORDERLICH
─────────────────────────────────────────────────
// TODO: ...                  →  Vollständige Implementierung
// FIXME: ...                 →  Behobener Code
raise ENotImplemented         →  Funktionierender Code
Stub-Funktionen               →  Echte Implementierungen
Mock-Implementierungen        →  Produktionscode
Placeholder-Werte             →  Echte Werte
Hardcodierte Strings          →  Resourcestrings (i18n)
Leere Exception-Handler       →  Spezifische Fehlerbehandlung
Magic Numbers                 →  Benannte Konstanten

Sicherheits-Basics

VERBOTEN                         ERFORDERLICH
─────────────────────────────────────────────────
SQL-String-Konkatenation      →  Parametrisierte Queries
Secrets in Logs               →  Zeroization nach Verwendung
Hardcodierte Credentials      →  Environment Variables
Fehlermeldungen mit Pfaden    →  Sanitisierte Meldungen

Review-Ablauf

Schritt 1: Core-Checkliste

[ ] Keine TODO/FIXME-Kommentare
[ ] Keine Stub- oder Mock-Funktionen
[ ] Alle Funktionen vollständig implementiert
[ ] Keine leeren Exception-Handler
[ ] Fehler werden vor Behandlung geloggt
[ ] Ressourcen werden deterministisch freigegeben
[ ] Kein duplizierter Code (DRY)
[ ] Keine Magic Numbers

Schritt 2: Sicherheit (falls relevant)

[ ] Eingaben an allen Grenzen validiert
[ ] SQL parametrisiert (keine Konkatenation)
[ ] Keine Secrets in Logs
[ ] Fehlermeldungen sanitisiert (keine Pfade/Versionen)
[ ] Secrets nach Verwendung gelöscht (Zeroization)
[ ] Timeouts für externe Operationen

Schritt 3: SSOT-Prüfung

[ ] NodeJS-APIs via ~/sources/common/web/nodejs/
[ ] VSCode-APIs via ~/sources/common/web/vscode/
[ ] Logging via WvdS.System.Logging
[ ] Keine direkten require()-Aufrufe in Extensions
[ ] Keine Duplikate von Common-Units

Schritt 4: Dokumentation

[ ] Öffentliche API hat PasDoc-Kommentare
[ ] Kommentare erklären WARUM, nicht WAS
[ ] Keine veralteten Kommentare
[ ] Kommentare in Englisch

KI-gestützte Audits

Die gleichen Checklisten werden für automatisierte KI-Audits verwendet:

# Audit-Aufgaben (siehe docs/automated-test-tasks.txt)
 
1. IMPLEMENT ALL STUBS/MOCKS
   - Inventar aller Units erstellen
   - Stubs/Mocks identifizieren
   - Produktionsreif implementieren
 
2. EXECUTE QUALITY/SECURITY AUDIT
   - Sicherheitsrisiken identifizieren
   - SoC-Verstöße finden
   - Nach Standards beheben
 
3. ADD CODE COMMENTS
   - Fehlende Kommentare identifizieren
   - PasDoc-Kommentare schreiben
 
4. SSOT CHECK
   - Lokale require()-Aufrufe finden
   - Durch Common-Library-Aufrufe ersetzen
 
5. BUILD EXTENSIONS
   - Kompilieren und testen
   - VSIX erstellen

Protokollierung

Alle Audit-Schritte werden protokolliert nach dem Stack-Trace-Format:

[2026-01-13 10:30:22.001] Audit gestartet
   at TWvdSAudit.Initialize(Audit.Service.pas:42)
   Scope: sources/extensions/**

[2026-01-13 10:30:22.015] Gefunden: TODO-Kommentar
   at extension_main.pas:156
   Text: "// TODO: Implement error handling"
   Aktion: Implementierung erforderlich

[2026-01-13 10:30:22.042] Behoben: TODO-Kommentar entfernt
   at extension_main.pas:156
   Änderung: Vollständige Fehlerbehandlung implementiert

Siehe auch

Zuletzt geändert: den 29.01.2026 um 15:13