diff --git a/.beans/nuzlocke-tracker-5tac--enable-naming-generator-for-genlockes.md b/.beans/nuzlocke-tracker-5tac--enable-naming-generator-for-genlockes.md index 5c7b3c2..fff1144 100644 --- a/.beans/nuzlocke-tracker-5tac--enable-naming-generator-for-genlockes.md +++ b/.beans/nuzlocke-tracker-5tac--enable-naming-generator-for-genlockes.md @@ -1,11 +1,11 @@ --- # nuzlocke-tracker-5tac title: Enable naming generator for Genlockes -status: in-progress +status: completed type: task priority: normal created_at: 2026-02-11T21:14:21Z -updated_at: 2026-02-14T08:37:11Z +updated_at: 2026-02-14T08:52:16Z --- ## Overview diff --git a/backend/src/app/alembic/versions/f7a8b9c0d1e2_add_naming_scheme_to_genlockes.py b/backend/src/app/alembic/versions/f7a8b9c0d1e2_add_naming_scheme_to_genlockes.py index 54404d6..6287855 100644 --- a/backend/src/app/alembic/versions/f7a8b9c0d1e2_add_naming_scheme_to_genlockes.py +++ b/backend/src/app/alembic/versions/f7a8b9c0d1e2_add_naming_scheme_to_genlockes.py @@ -9,7 +9,6 @@ Create Date: 2026-02-14 00:00:00.000000 from collections.abc import Sequence import sqlalchemy as sa - from alembic import op # revision identifiers, used by Alembic. diff --git a/backend/src/app/api/runs.py b/backend/src/app/api/runs.py index d2e9d73..2ea9dda 100644 --- a/backend/src/app/api/runs.py +++ b/backend/src/app/api/runs.py @@ -8,6 +8,7 @@ from sqlalchemy.orm import joinedload, selectinload from app.core.database import get_session from app.models.boss_result import BossResult from app.models.encounter import Encounter +from app.models.evolution import Evolution from app.models.game import Game from app.models.genlocke import GenlockeLeg from app.models.genlocke_transfer import GenlockeTransfer @@ -19,10 +20,13 @@ from app.schemas.run import ( RunResponse, RunUpdate, ) -from app.models.evolution import Evolution -from app.models.genlocke import Genlocke from app.services.families import build_families -from app.services.naming import get_naming_categories, strip_roman_suffix, suggest_names, to_roman +from app.services.naming import ( + get_naming_categories, + strip_roman_suffix, + suggest_names, + to_roman, +) router = APIRouter() diff --git a/backend/src/app/services/naming.py b/backend/src/app/services/naming.py index 87cca8f..6372be8 100644 --- a/backend/src/app/services/naming.py +++ b/backend/src/app/services/naming.py @@ -1,6 +1,6 @@ import json -import re import random +import re from functools import lru_cache from pathlib import Path @@ -28,12 +28,24 @@ def get_words_for_category(category: str) -> list[str]: _ROMAN_NUMERALS = [ - (1000, "M"), (900, "CM"), (500, "D"), (400, "CD"), - (100, "C"), (90, "XC"), (50, "L"), (40, "XL"), - (10, "X"), (9, "IX"), (5, "V"), (4, "IV"), (1, "I"), + (1000, "M"), + (900, "CM"), + (500, "D"), + (400, "CD"), + (100, "C"), + (90, "XC"), + (50, "L"), + (40, "XL"), + (10, "X"), + (9, "IX"), + (5, "V"), + (4, "IV"), + (1, "I"), ] -_ROMAN_SUFFIX_RE = re.compile(r"\s+(M{0,3}(?:CM|CD|D?C{0,3})(?:XC|XL|L?X{0,3})(?:IX|IV|V?I{0,3}))$") +_ROMAN_SUFFIX_RE = re.compile( + r"\s+(M{0,3}(?:CM|CD|D?C{0,3})(?:XC|XL|L?X{0,3})(?:IX|IV|V?I{0,3}))$" +) def to_roman(n: int) -> str: