diff --git a/app/routers_v2/teams.py b/app/routers_v2/teams.py index 74956ca..dc7265c 100644 --- a/app/routers_v2/teams.py +++ b/app/routers_v2/teams.py @@ -1544,8 +1544,8 @@ async def list_team_evolutions( Joins EvolutionCardState → EvolutionTrack (for card_type filtering and threshold context) and EvolutionCardState → Player (for player_name), both eager-loaded in a single query. Results are paginated via - page/per_page (1-indexed pages); items are ordered by player_id for - stable ordering. + page/per_page (1-indexed pages); items are ordered by current_tier DESC, + current_value DESC so the most-progressed cards appear first. Query parameters: card_type -- filter to states whose track.card_type matches (e.g. 'batter', 'sp') @@ -1572,7 +1572,10 @@ async def list_team_evolutions( .switch(EvolutionCardState) .join(Player) .where(EvolutionCardState.team == team_id) - .order_by(EvolutionCardState.player_id) + .order_by( + EvolutionCardState.current_tier.desc(), + EvolutionCardState.current_value.desc(), + ) ) if card_type is not None: