Переименование фракции в админке откатывается при каждом перезапуске приложения (#72) #94

Merged
NotBigGhost merged 1 commits from issue-72-faction-rename into dev 2026-09-19 00:10:57 +03:00
Collaborator

Что сделано

seed_reference_data идёт при каждом старте: в prod — через entrypoint.sh, в dev — через lifespan. Раньше он перезаписывал name_ru существующих фракций значением из кода, поэтому переименование из админки жило только до ближайшего рестарта.

Теперь имя из кода получает только новая фракция. У существующих name_ru не трогается: его правит админка, источник правды — БД. expansion_id и sort_order синхронизируются как раньше. У дополнений ничего не изменилось: переименования в админке у них нет.

Цена решения: исправление имени фракции в коде больше не доедет до существующих БД — только через админку или миграцию. Это записано в докстринг сидинга.

Коммиты

  • 1bc3940 Справочники: сидинг не откатывает имя фракции, заданное админом

Проверки

  • pytest — 211 passed.
  • test_faction_rename_survives_restart_seeding — переименование через API, затем повторный сидинг (то же, что рестарт); имя сохраняется. На старом reference_data.py тест падает.
  • test_seeding_is_complete_and_idempotent — сидинг пустой БД дважды; все фракции из FACTIONS на месте с именами из кода.

Отклонения от плана

Нет.

Closes #72

🤖 Generated with Claude Code

https://claude.ai/code/session_01LqSoRj99iwVEH5U5fnZgsd

## Что сделано `seed_reference_data` идёт при каждом старте: в prod — через `entrypoint.sh`, в dev — через lifespan. Раньше он перезаписывал `name_ru` существующих фракций значением из кода, поэтому переименование из админки жило только до ближайшего рестарта. Теперь имя из кода получает только **новая** фракция. У существующих `name_ru` не трогается: его правит админка, источник правды — БД. `expansion_id` и `sort_order` синхронизируются как раньше. У дополнений ничего не изменилось: переименования в админке у них нет. Цена решения: исправление имени фракции в коде больше не доедет до существующих БД — только через админку или миграцию. Это записано в докстринг сидинга. ## Коммиты - `1bc3940` Справочники: сидинг не откатывает имя фракции, заданное админом ## Проверки - `pytest` — 211 passed. - `test_faction_rename_survives_restart_seeding` — переименование через API, затем повторный сидинг (то же, что рестарт); имя сохраняется. На старом `reference_data.py` тест падает. - `test_seeding_is_complete_and_idempotent` — сидинг пустой БД дважды; все фракции из `FACTIONS` на месте с именами из кода. ## Отклонения от плана Нет. Closes #72 🤖 Generated with [Claude Code](https://claude.com/claude-code) https://claude.ai/code/session_01LqSoRj99iwVEH5U5fnZgsd
Agent added 1 commit 2026-09-19 00:01:33 +03:00
seed_reference_data идёт при каждом старте (entrypoint.sh, lifespan) и
перезаписывал name_ru существующих фракций значением из кода — переименование
из админки жило до ближайшего рестарта. Теперь имя из кода получает только
новая фракция; дополнение и порядок синхронизируются как раньше. #72

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01LqSoRj99iwVEH5U5fnZgsd
NotBigGhost merged commit 643a9f1795 into dev 2026-09-19 00:10:57 +03:00
NotBigGhost deleted branch issue-72-faction-rename 2026-09-19 00:10:57 +03:00
Sign in to join this conversation.