Public Access
feat(library): let auditors correct game data
An AUDITOR corrects name, header image, speedrun link, moods, endless and genres of a game for every user (V20 game_correction, PUT/DELETE /api/library/games/{appid}/corrections/{field}). The value is also written into the cached row, so reads stay unchanged; the Steam sync, the image repair, the IGDB add and the mood and speedrun upserts skip corrected fields. SteamGame gets @DynamicUpdate so a sync no longer writes back columns it did not change.
This commit is contained in:
1 parent
2596df609e
commit
3c2f40036d
30 files changed
+1066
-20
No files matched your search
@@ -0,0 +1,13 @@
|
||||
-- An auditor's correction of shared game data. The value is also written into the cached row (steam_game,
|
||||
-- game_speedrun, game_mood), so reads need no join; the refresh writers skip a corrected field. value and
|
||||
-- source_value are JSON (a string, a string list, a boolean or null); source_value is what the source had at the
|
||||
-- first correction, written back by "back to source".
|
||||
CREATE TABLE game_correction (
|
||||
appid BIGINT NOT NULL,
|
||||
field VARCHAR(16) NOT NULL,
|
||||
value TEXT,
|
||||
source_value TEXT,
|
||||
corrected_by BIGINT NOT NULL,
|
||||
corrected_at TIMESTAMPTZ NOT NULL,
|
||||
PRIMARY KEY (appid, field)
|
||||
);
|
||||
Reference in new issue
Block a user