From 1c23c8ce1ab2a053c160f03290fb4d437ff1b1c1 Mon Sep 17 00:00:00 2001 From: owen Date: Mon, 15 Jun 2026 09:57:07 -0400 Subject: [PATCH 1/2] Fix community race leaderboard showing DNF players on cleared runs. Only include completed instance_player rows and sort roster players by kills, matching other team leaderboards. Co-authored-by: Cursor --- src/services/leaderboard/team/custom.ts | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/services/leaderboard/team/custom.ts b/src/services/leaderboard/team/custom.ts index aaffa00..64c194a 100644 --- a/src/services/leaderboard/team/custom.ts +++ b/src/services/leaderboard/team/custom.ts @@ -34,11 +34,12 @@ export const getPantheonCustomRaceTeamLeaderboard = async ({ 'isPrivate', is_private, 'cheatLevel', cheat_level ) - ORDER BY instance_player.completed DESC, instance_player.time_played_seconds DESC + ORDER BY instance_player.kills DESC ) as "players" FROM instance_player INNER JOIN player USING (membership_id) WHERE instance_player.instance_id = team_pantheon_custom_race_leaderboard.instance_id + AND instance_player.completed ) as "lateral" ON true WHERE position > $1 AND position <= ($1 + $2) ORDER BY position ASC`, From ffcfd413d7e4cf5319c17aa71e6ebf3e131d9a1c Mon Sep 17 00:00:00 2001 From: owen Date: Mon, 15 Jun 2026 10:01:32 -0400 Subject: [PATCH 2/2] Align community race player query with other team leaderboards. Drop kills ordering to match contest and first leaderboard services. Co-authored-by: Cursor --- src/services/leaderboard/team/custom.ts | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/src/services/leaderboard/team/custom.ts b/src/services/leaderboard/team/custom.ts index 64c194a..ecf3be4 100644 --- a/src/services/leaderboard/team/custom.ts +++ b/src/services/leaderboard/team/custom.ts @@ -21,7 +21,7 @@ export const getPantheonCustomRaceTeamLeaderboard = async ({ "lateral".players FROM team_pantheon_custom_race_leaderboard LEFT JOIN LATERAL ( - SELECT + SELECT JSONB_AGG( JSONB_BUILD_OBJECT( 'membershipId', membership_id::text, @@ -34,7 +34,6 @@ export const getPantheonCustomRaceTeamLeaderboard = async ({ 'isPrivate', is_private, 'cheatLevel', cheat_level ) - ORDER BY instance_player.kills DESC ) as "players" FROM instance_player INNER JOIN player USING (membership_id)