Tech-Debt-Cleanup: Doku, Security-Hardening, Server-Validierung, Client-Stabilitaet #2
Reference in New Issue
Block a user
Delete Branch "feature/techdebt-cleanup"
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?
Doku/Repo:
Server:
Client:
Code-Review-Findings
P1 – Challenge kann spielübergreifend angelegt werden
SlipItIn.Server/Services/GameService.cs:197übernimmtchallengingPlayerIdohne Prüfung, ob der Spieler zumgameIdgehört. Der Hub prüft inSlipItIn.Server/Hubs/GameHub.cs:258nur, ob die Spieler-ID dem authentifizierten Benutzer gehört. Dadurch kann ein Benutzer als Spieler aus Spiel A eine Karte in Spiel B challengen; die Challenge wird dann in Spiel B gespeichert und kann dort Spielstand/Kartenbesitz verändern.Bitte im Service zusätzlich sicherstellen, dass
challengingPlayerIdzugameIdgehört, z. B. über eine Abfrage mitp.Id == challengingPlayerId && p.GameId == gameId. Die Prüfung sollte im Service bleiben und durch einen Test für diesen Cross-Game-Fall abgesichert werden.P2 – CI baut MAUI ohne explizite Workload-Installation
.github/workflows/build.yml:34baut das MAUI-Projekt direkt nachactions/setup-dotnet, ohne den erforderlichen MAUI-Workload zu installieren. Auf einem frischen Runner kann der Build deshalb mitNETSDK1147fehlschlagen.Bitte vor dem Client-Build explizit
dotnet workload install mauiausführen oder den benötigten Plattform-Workload gezielt installieren und den Workflow auf einem frischen Runner verifizieren.Die lokalen 78 Server-Tests sowie der lokale MAUI-Build waren erfolgreich; der MAUI-Build meldet jedoch bestehende Warnungen.