====== Profile Matrix ====== **Version:** 2.1\\ **Zweck:** Schnelle und konsistente Auswahl von Checklists basierend auf Projekttyp. ===== Legende ===== * **MUSS:** Diese Checklists standardmäßig anwenden * **FALLS RELEVANT:** Anwenden wenn der Änderungssatz den Bereich berührt * **HINWEISE:** Typische Fallstricke und Review-Fokus ===== Profile ===== ==== Crypto Modul ==== **MUSS** * [[.:core|Core]] * [[.:sicherheit:kritis|Security KRITIS/NIS2]] * [[.:sicherheit:crypto|Crypto]] * [[.:infrastruktur:logging|Logging]] * [[.:infrastruktur:konfiguration|Configuration]] * [[.:projekt:build-metadata|Build Metadata]] * [[.:infrastruktur:dokumentation|Dokumentation]] * [[.:projekt:dokumentation|Projekt-Dokumentation]] **FALLS RELEVANT** * [[.:code:performance|Performance]] * [[.:infrastruktur:crossplatform|Crossplatform]] **HINWEISE** * Missbrauchsresistenz schlägt "saubere API". Design für correct-by-default. * Behandle Logs und Errors als potentielle Orakel. ---- ==== WebAPI ==== **MUSS** * [[.:core|Core]] * [[.:sicherheit:kritis|Security KRITIS/NIS2]] * [[.:infrastruktur:logging|Logging]] * [[.:infrastruktur:konfiguration|Configuration]] * [[.:projekt:build-konfiguration|Build Configuration]] * [[.:infrastruktur:dokumentation|Dokumentation]] * [[.:projekt:dokumentation|Projekt-Dokumentation]] **FALLS RELEVANT** * [[.:code:performance|Performance]] * [[.:infrastruktur:crossplatform|Crossplatform]] * [[.:stacks:sql|SQL]] (bei DB-Zugriff) * [[.:sicherheit:crypto|Crypto]] (bei Auth/Crypto/Custom Tokens) **HINWEISE** * Parametrisierung für DB-Zugriff erforderlich; jeden Input als feindlich behandeln. * Verfügbarkeit: Rate Limits, Timeouts, begrenzter Speicher, vorhersehbares Error Mapping. ---- ==== Library (shared DLL / NuGet / Package) ==== **MUSS** * [[.:core|Core]] * [[.:code:naming|Naming]] * [[.:code:funktionen|Functions]] * [[.:projekt:build-metadata|Build Metadata]] * [[.:infrastruktur:dokumentation|Dokumentation]] * [[.:projekt:dokumentation|Projekt-Dokumentation]] **FALLS RELEVANT** * [[.:sicherheit:kritis|Security KRITIS/NIS2]] * [[.:code:performance|Performance]] * [[.:infrastruktur:crossplatform|Crossplatform]] **HINWEISE** * Public API Stabilität und Semantic Versioning sind primär. * Transitive Dependency-Überraschungen vermeiden. ---- ==== Desktop App (WinForms/WPF/Delphi/Qt) ==== **MUSS** * [[.:core|Core]] * [[.:projekt:build-konfiguration|Build Configuration]] * [[.:infrastruktur:logging|Logging]] * [[.:infrastruktur:konfiguration|Configuration]] * [[.:infrastruktur:dokumentation|Dokumentation]] **FALLS RELEVANT** * [[.:infrastruktur:i18n|i18n]] (User-facing Strings) * [[.:sicherheit:kritis|Security KRITIS/NIS2]] (Network/Crypto/Licensing) * [[.:infrastruktur:crossplatform|Crossplatform]] (bei Multi-OS) **HINWEISE** * UI-Threading-Regeln und Resource Cleanup sind häufige Fehlerquellen. * Settings-Pfade und Per-User Datenhandling prüfen. ---- ==== VSCode Extension ==== **MUSS** * [[.:core|Core]] * [[.:infrastruktur:crossplatform|Crossplatform]] * [[.:projekt:build-metadata|Build Metadata]] * [[.:infrastruktur:dokumentation|Dokumentation]] * [[.:stacks:vscode-extension|VSCode Extension Stack]] **FALLS RELEVANT** * [[.:sicherheit:kritis|Security KRITIS/NIS2]] (Remote Calls, Auth, Downloads) * [[.:infrastruktur:logging|Logging]] * [[.:infrastruktur:konfiguration|Configuration]] **HINWEISE** * Activation Events, Contribution Points und Settings Schema müssen kohärent bleiben. * Extension Host niemals blockieren; lange Arbeit muss abbrechbar sein. ---- ==== Outlook AddIn (VSTO / Office.js) ==== **MUSS** * [[.:core|Core]] * [[.:sicherheit:kritis|Security KRITIS/NIS2]] * [[.:infrastruktur:logging|Logging]] * [[.:infrastruktur:konfiguration|Configuration]] * [[.:stacks:outlook-addin|Outlook AddIn Stack]] **FALLS RELEVANT** * [[.:sicherheit:crypto|Crypto]] (Sign/Encrypt Workflows) * [[.:infrastruktur:crossplatform|Crossplatform]] (Office.js Multi-Platform) **HINWEISE** * COM Lifetime (Release), Explorer vs Inspector Context, UI State Sync sind kritisch. * Sensible Datenlecks in Outlook Item Properties und Logs vermeiden. ---- ==== TUI / CLI Application ==== **MUSS** * [[.:core|Core]] * [[.:infrastruktur:cli-tui|CLI/TUI]] * [[.:infrastruktur:crossplatform|Crossplatform]] * [[.:infrastruktur:logging|Logging]] * [[.:infrastruktur:konfiguration|Configuration]] **FALLS RELEVANT** * [[.:sicherheit:kritis|Security KRITIS/NIS2]] * [[.:code:performance|Performance]] **HINWEISE** * Exit Codes, stdout vs stderr, Pipe-freundliche Ausgabe und deterministisches Verhalten sind wichtig. ---- ==== SQL Server Algorithms ==== **MUSS** * [[.:core|Core]] * [[.:stacks:sql|SQL Stack]] * [[.:sicherheit:kritis|Security KRITIS/NIS2]] **FALLS RELEVANT** * [[.:code:performance|Performance]] * [[.:infrastruktur:dokumentation|Dokumentation]] **HINWEISE** * Query Plans, Indexing Strategy, Transaktions-Semantik und Parametrisierung sind Kern-Review-Ziele. ---- ==== Inno Setup Projects ==== **MUSS** * [[.:core|Core]] * [[.:stacks:innosetup|InnoSetup Stack]] * [[.:projekt:build-metadata|Build Metadata]] * [[.:sicherheit:kritis|Security KRITIS/NIS2]] **FALLS RELEVANT** * [[.:infrastruktur:logging|Logging]] * [[.:infrastruktur:konfiguration|Configuration]] **HINWEISE** * Upgrade/Uninstall-Verhalten und Code Signing sind häufige Fehlerpunkte. ---- ==== MS Access VBA Projects ==== **MUSS** * [[.:core|Core]] * [[.:stacks:access-vba|Access VBA Stack]] * [[.:sicherheit:kritis|Security KRITIS/NIS2]] * [[.:infrastruktur:dokumentation|Dokumentation]] **FALLS RELEVANT** * [[.:projekt:build-metadata|Build Metadata]] **HINWEISE** * Deterministische Builds (ACCDE), References und robustes Error Handling sind Schlüssel. ---- ==== DokuWiki Plugin ==== **MUSS** * [[.:core|Core]] * [[.:stacks:dokuwiki-php|DokuWiki/PHP Security]] * [[.:sicherheit:kritis|Security KRITIS/NIS2]] * [[.:infrastruktur:logging|Logging]] * [[.:infrastruktur:konfiguration|Configuration]] * [[.:infrastruktur:dokumentation|Dokumentation]] **HINWEISE** * Allen Page/User Content als feindlich behandeln; DokuWiki APIs für Escaping/ACL folgen. ---- //Version: 2.1 (Split)//\\ //Autor: Wolfgang van der Stille// ~~DISCUSSION:off~~