fix: preserve predicted_rating via UPSERT in savePlayerToDB (#11) #28
Reference in New Issue
Block a user
Delete Branch "fix/upsert-preserve-predicted-rating-11"
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?
Sammanfattning
savePlayerToDBanvändeINSERT OR REPLACE, vilket raderar hela raden och nollställer kolumner som saknas iVALUES(predicted_rating,std_dev,last_round_update,excluded_rounds_count,cutoff_rating). "Refresh all" anropade detta för varje spelare → predicted_rating wipades tabell-brett.pdga_numbersom uppdaterar endast de fyra skrapade kolumnerna in-place och lämnar predicted-kolumnerna + 24h-cooldown-stämpeln orörda.course.js-mönstret förlastID == 0(SELECT-fallback) så funktionen fortfarande returnerar ett riktigt spelar-id på update-vägen.Closes #11
Scope-granskning av övriga
INSERT OR REPLACEsaveRoundHistoryToDB(round_history): lämnad orörd — enda unika kolumnen är autoincrement-idsom aldrig anges, såOR REPLACEkan aldrig trigga; alla datakolumner listas ändå. Ingen wipe möjlig.course.jsanvänder redan korrekt UPSERT;layoutsanvänder avsiktligINSERT OR IGNORE. Båda OK.Test plan
—).last_round_updateöverlever → 24h-cooldownen för/api/refresh-round-history/:pdgaNumberhåller fortfarande.