rename long_name → name in TSS teams schema
teams_data and team_name_history used long_name (an SRE concept for teams with both a long and short name). TSS teams have one name only. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
+17
-17
@@ -126,14 +126,14 @@ _PLAYER_GAMES_INDEXES = [
|
||||
_TEAMS_DATA_SQL = """
|
||||
CREATE TABLE IF NOT EXISTS teams_data (
|
||||
team_id INTEGER PRIMARY KEY,
|
||||
long_name TEXT NOT NULL,
|
||||
name TEXT NOT NULL,
|
||||
members INTEGER NOT NULL DEFAULT 0,
|
||||
captain_uid TEXT
|
||||
)
|
||||
"""
|
||||
|
||||
_TEAMS_DATA_INDEXES = [
|
||||
"CREATE INDEX IF NOT EXISTS idx_teams_data_long_name ON teams_data(long_name COLLATE NOCASE)",
|
||||
"CREATE INDEX IF NOT EXISTS idx_teams_data_name ON teams_data(name COLLATE NOCASE)",
|
||||
]
|
||||
|
||||
|
||||
@@ -155,15 +155,15 @@ _TEAM_MEMBERS_INDEXES = [
|
||||
_TEAM_NAME_HISTORY_SQL = """
|
||||
CREATE TABLE IF NOT EXISTS team_name_history (
|
||||
team_id INTEGER NOT NULL,
|
||||
long_name TEXT NOT NULL,
|
||||
name TEXT NOT NULL,
|
||||
first_seen INTEGER,
|
||||
last_seen INTEGER,
|
||||
PRIMARY KEY (team_id, long_name)
|
||||
PRIMARY KEY (team_id, name)
|
||||
)
|
||||
"""
|
||||
|
||||
_TEAM_NAME_HISTORY_INDEXES = [
|
||||
"CREATE INDEX IF NOT EXISTS idx_team_name_history_name ON team_name_history(long_name COLLATE NOCASE)",
|
||||
"CREATE INDEX IF NOT EXISTS idx_team_name_history_name ON team_name_history(name COLLATE NOCASE)",
|
||||
]
|
||||
|
||||
|
||||
@@ -250,7 +250,7 @@ async def _init_teams_db() -> None:
|
||||
await conn.execute(_TEAM_NAME_HISTORY_SQL)
|
||||
await conn.execute("DROP TABLE IF EXISTS teams_points")
|
||||
await _rebuild_table(conn, "teams_data", _TEAMS_DATA_SQL, [
|
||||
"team_id", "long_name", "members", "captain_uid",
|
||||
"team_id", "name", "members", "captain_uid",
|
||||
])
|
||||
await _rebuild_table(conn, "team_members", _TEAM_MEMBERS_SQL, [
|
||||
"team_id", "uid", "role",
|
||||
@@ -463,10 +463,10 @@ async def upsert_tss_teams(game: Dict[str, Any]) -> None:
|
||||
]
|
||||
await conn.execute(
|
||||
"""
|
||||
INSERT INTO teams_data (team_id, long_name, members, captain_uid)
|
||||
INSERT INTO teams_data (team_id, name, members, captain_uid)
|
||||
VALUES (?, ?, ?, ?)
|
||||
ON CONFLICT(team_id) DO UPDATE SET
|
||||
long_name = excluded.long_name,
|
||||
name = excluded.name,
|
||||
members = excluded.members,
|
||||
captain_uid = excluded.captain_uid
|
||||
""",
|
||||
@@ -474,9 +474,9 @@ async def upsert_tss_teams(game: Dict[str, Any]) -> None:
|
||||
)
|
||||
await conn.execute(
|
||||
"""
|
||||
INSERT INTO team_name_history (team_id, long_name, first_seen, last_seen)
|
||||
INSERT INTO team_name_history (team_id, name, first_seen, last_seen)
|
||||
VALUES (?, ?, ?, ?)
|
||||
ON CONFLICT(team_id, long_name) DO UPDATE SET last_seen = excluded.last_seen
|
||||
ON CONFLICT(team_id, name) DO UPDATE SET last_seen = excluded.last_seen
|
||||
""",
|
||||
(team_id, team_name, seen_unix, seen_unix),
|
||||
)
|
||||
@@ -512,10 +512,10 @@ async def resolve_team(name_or_id: str) -> Optional[Dict[str, Any]]:
|
||||
conn.row_factory = aiosqlite.Row
|
||||
async with conn.execute(
|
||||
"""
|
||||
SELECT team_id, long_name
|
||||
SELECT team_id, name
|
||||
FROM teams_data
|
||||
WHERE team_id = ?1
|
||||
OR long_name = ?2 COLLATE NOCASE
|
||||
OR name = ?2 COLLATE NOCASE
|
||||
LIMIT 1
|
||||
""",
|
||||
(as_id, text),
|
||||
@@ -532,8 +532,8 @@ async def search_teams(query: str, limit: int = 25) -> List[Dict[str, Any]]:
|
||||
if not q:
|
||||
async with conn.execute(
|
||||
"""
|
||||
SELECT team_id, long_name FROM teams_data
|
||||
ORDER BY members DESC, long_name COLLATE NOCASE
|
||||
SELECT team_id, name FROM teams_data
|
||||
ORDER BY members DESC, name COLLATE NOCASE
|
||||
LIMIT ?
|
||||
""",
|
||||
(limit,),
|
||||
@@ -543,10 +543,10 @@ async def search_teams(query: str, limit: int = 25) -> List[Dict[str, Any]]:
|
||||
like = f"%{q}%"
|
||||
async with conn.execute(
|
||||
"""
|
||||
SELECT team_id, long_name FROM teams_data
|
||||
WHERE long_name LIKE ?1 COLLATE NOCASE
|
||||
SELECT team_id, name FROM teams_data
|
||||
WHERE name LIKE ?1 COLLATE NOCASE
|
||||
ORDER BY CASE
|
||||
WHEN long_name = ?2 COLLATE NOCASE THEN 0
|
||||
WHEN name = ?2 COLLATE NOCASE THEN 0
|
||||
ELSE 1
|
||||
END
|
||||
LIMIT ?3
|
||||
|
||||
Reference in New Issue
Block a user