Toter Code, zweite Runde (B): nur noch von Tests aufgerufen #118
Labels
No labels
Kind
Bug
Kind
Enhancement
Kind
Maintenance
Priority
P1
Priority
P2
Priority
P3
Status
In Progress
Status
Need More Info
Status
Zur Abnahme
Änderungen Wettspielreglement
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference
sffs-tt-basel/sffs-tt-issues#118
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "%!s()"
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?
Aus dem Project-Review vom 20.10.2026 (quality/2 und Fundgrube), Fortsetzung von #45. Nach der Regel in CLAUDE.md („Kein Produktivcode nur für Tests“) wird alles hier gelöscht, und die Tests gehen den Weg der Produktion. Hier ändern sich Tests mit. Geprüft auf
main4e9c05c. Bei Endpunkten habe ich nach der URL gesucht: portal, content, homepage, shared, e2e undscripts/rufen sie nicht auf.Endpunkte
GET /api/players/pendingAdminPlayerResource.listPendingAdminPlayerResourceTestGET /api/competition/liga/match/{id}CompetitionLigaResource.matchCompetitionLigaResourceTest. Die Homepage nutzt/api/public/liga/match, alsoPublicLigaResourceGET /api/seasons/active/nameSeasonResource.getActiveSeasonNameSeasonActiveNameTest,SeasonActiveEmptyTest(beide ganz),SeasonResourceTest. Der letzte Frontend-Aufruf ist mit f88a3eb (02.08.) entfallenPUT /api/seasons/{id}SeasonResource.updateSeasonSeasonResourceTest,SeasonNameFormatTest(der PUT-Fall).requireLangformbleibt für das AnlegenGET /api/competition/elo/player/{playerId}EloResource.historyEloResourceTest. Danach ist auchEloService.historytotPOST /api/competition/elo/recalculate/{seasonId}EloResource.recalculateEloResourceTest. Folge: Eine Neuberechnung von Hand geht danach nur noch per Deploy. Eine Oberfläche oder ein Skript dafür gibt es nichtDurch die Endpunkte ändert sich
openapi.json, alsomvn -B clean verifyund das Schema mitcommitten.Zweig in
DELETE /api/competition/team-matchesDas Portal (
SchedulePage.tsx) schickt immercategoryIdundhalbseriemit. Den Zweig ohnecategoryId(ganze Saison löschen) nutzen nur Tests. Fällt er weg, verlierenMatchRepository.deleteBySeasonIdundScheduleLockRepository.countBySeasonIdihren einzigen Produktivaufrufer. Die Tests, die diese Methoden als Aufräumhilfe nutzen (TournamentTestFixtures,EloSnapshotRepositoryTest,MatchRepositoryTest), gehen dann über JPA.Repository- und Service-Methoden
MatchRepository.countBySeasonId: nurMatchRepositoryTest. Der Test zählt stattdessen über die Datenbank.HalbseriePublicationService.isPublished(seasonId, halbserie): nurHalbseriePublicationTestundScheduleLockServiceTest. Die Tests lesen dieSeasonHalbserie-Zeile.SeasonHalbserieService.halbserieOf(seasonId, date): nurSeasonHalbserieServiceTest. Wird mit seinen Testfällen gelöscht. Nicht zu verwechseln mitScheduleLockService.halbserieOf(RoundKind), das lebt.SeasonSetupService.ensureCategories: nurSeasonSetupServiceTest(zwei Fälle). Wird mit ihnen gelöscht.Frontend
cup-view.ts:positionStateund der TypCupPositionStateliest nurcup-view.test.ts. Löschen, samt Testblock.allowed-period.ts:allowedPeriodSentenceliest nurallowed-period.test.ts. Löschen, samt Testblock. Dazu:swissDatedupliziertlongDateausseason-phase.tsund wird dadurch ersetzt.Nicht hier
VenueRepository.findValidAtist ebenfalls ohne Produktivaufrufer. Es hängt aber an einem Fehler in der Spiellokal-Auswahl (#119) und bleibt, bis der entschieden ist.Abnahme
mvn -B clean verifyund generate grün; Builds von homepage, portal und content grün; E2E grün.metrics.py checksmeldet die Stellen unter quality/2 nicht mehr.