bestTeamName and canonicalTeamName were checking tag_name/short_name/long_name
(SQB API fields) which don't exist on TSS team objects. Every team resolved to
an empty string so fetchRecentTssGames bailed out immediately with no matches.
Also clean up all other references to those dead fields throughout the component.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
- Remove teams_points, clanrating, tag/short/long name, description, region,
guild_id, clan_id — none of these exist in the TSS DB schema
- Rename long_name → name throughout (TSS teams have one name, not long+short)
- Cross-tournament stat queries now use team_name (string) from player_games_hist
instead of team_id, since team_id is assigned per-tournament by Spectra
- Leaderboard deduplicates teams_data by name with GROUP BY, MAX(team_id) for roster ref
- team_members roster still uses team_id (correct within a single tournament)
- Fix player_teams_for: was grouping by non-existent team_tag column, now team_id
- Fix games_for: winning_team/losing_team → winning_slot/losing_slot; add mission_name
- Remove joined_unix, points, sqb_points from PlayerSummary; nick resolved from battles_db
- Remove rating_hourly from HistoryResponse (teams_points never existed)
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>