Repository navigation
fix: merge PERMANENT card_type into LANDMARK_PERMANENT - #75
Merged
toxicity1985 merged 1 commit intoOct 6, 2026
Merged
Conversation
CardsData already folded these into one type after review ("PERMANENT
and LANDMARK_PERMANENT were the same design intent in practice"), but
that merge only ever touched CardsData's own reference CSVs - this
app's import pipeline (CardGroupBuilder::findOrCreateCardType) still
read the raw Equinox reference verbatim, so PERMANENT kept getting
recreated as a distinct card_type here.
Normalize PERMANENT -> LANDMARK_PERMANENT at the one place every
import path resolves a card type, and backfill existing CardGroup
rows via migration.
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Le problème
CardsData a déjà fusionné ces deux types après revue ("PERMANENT and
LANDMARK_PERMANENT were the same design intent in practice") — vérifié :
CardFamilies.csvde CardsData a 0 ligne àPERMANENTet 92 àLANDMARK_PERMANENT, la fusion y est donc totale.Mais côté API,
CardGroupBuilder::findOrCreateCardType()reprenait laréférence brute du JSON Equinox sans normalisation —
PERMANENTcontinuaitdonc d'être recréé comme un
card_typedistinct ici, jamais réconcilié avecla fusion actée côté CardsData.
Le fix
Normalisation
PERMANENT→LANDMARK_PERMANENTau point unique où toutchemin d'import résout un type de carte. Migration de backfill
(
Version20260911170000) qui réaffecte lescard_groupexistants pointantsur
PERMANENTversLANDMARK_PERMANENT, puis supprime la lignecard_typePERMANENTdevenue orpheline (no-op si l'un des deux types n'existe pas).À exécuter après merge
Rien de manuel pour la migration (automatique au déploiement).
Mais il faut jouer
php bin/console app:meilisearch:index --fields=card_typepourresynchroniser l'index de recherche (migration en SQL brut, les listeners
Doctrine ne se déclenchent pas).