You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
⚠️Ne pas fusionner dans la migration de #113. Removal avec impact sur le contrat fédéré. À traiter isolément, après validation du méta-modèle.
Périmètre exact (confirmé sur main)
Points de couplage FoundryVTT / GameSystem à retirer ou neutraliser :
suddenly/games/models.py — modèle GameSystem (« synced from the official Foundry package registry », champs git_url, is_deprecated, synced_at) et FK Game.game_system_ref. Décider : suppression complète, ou conservation de GameSystem vidé de sa sémantique Foundry (table de tags libres) ?
suddenly/games/tasks.py — sync_foundry_systems (tâche Celery, scrape de https://foundryvtt.com/packages/systems/) + helpers _parse_total_pages, _extract_systems. À supprimer.
suddenly/games/management/commands/sync_foundry_systems.py — commande de sync. À supprimer.
tests/games/test_tasks.py — tests de la tâche de sync. À retirer/adapter.
suddenly/core/services.py — get_distinct_game_systems() (facette explorer) + suddenly/core/cache_invalidation.pyinvalidate_explorer_game_systems + enregistrement des signaux dans suddenly/core/apps.py.
templates/games/game_form.html — picker « système catalogue vs custom » (game_system_slug / game_system_custom) + front_views.py (~l.229-232) qui résout GameSystem.objects.filter(slug=...).
CHANGELOG.md — entrées Foundry.
Décision à trancher dans l'issue
Game.game_system (CharField texte libre) : conservé (label libre, cohérent avec la nouvelle approche) ou retiré au profit des seuls tags ? Recommandation : conserver comme champ texte libre, retirer seulement game_system_ref + le catalogue.
Definition of Done
Tâche Celery + commande de sync supprimées.
GameSystem / game_system_ref retirés ou réduits selon décision.
Facette explorer « systèmes distincts » retirée ou reconvertie en tags.
Type : refactor / removal · App :
games,core,activitypub· Priorité : moyennePérimètre exact (confirmé sur
main)Points de couplage FoundryVTT /
GameSystemà retirer ou neutraliser :suddenly/games/models.py— modèleGameSystem(« synced from the official Foundry package registry », champsgit_url,is_deprecated,synced_at) et FKGame.game_system_ref. Décider : suppression complète, ou conservation deGameSystemvidé de sa sémantique Foundry (table de tags libres) ?suddenly/games/tasks.py—sync_foundry_systems(tâche Celery, scrape dehttps://foundryvtt.com/packages/systems/) + helpers_parse_total_pages,_extract_systems. À supprimer.suddenly/games/management/commands/sync_foundry_systems.py— commande de sync. À supprimer.tests/games/test_tasks.py— tests de la tâche de sync. À retirer/adapter.suddenly/activitypub/serializers.py(~l.101) —data["gameSystem"] = game.game_system. Décider du sort de ce champ AP (voir Meta #F — Extension JSON-LDsuddenly:traitSet(fédération) — DIFFÉRÉE #118 : bascule éventuelle vers extensionsuddenly:).suddenly/core/services.py—get_distinct_game_systems()(facette explorer) +suddenly/core/cache_invalidation.pyinvalidate_explorer_game_systems+ enregistrement des signaux danssuddenly/core/apps.py.templates/games/game_form.html— picker « système catalogue vs custom » (game_system_slug/game_system_custom) +front_views.py(~l.229-232) qui résoutGameSystem.objects.filter(slug=...).CHANGELOG.md— entrées Foundry.Décision à trancher dans l'issue
Game.game_system(CharField texte libre) : conservé (label libre, cohérent avec la nouvelle approche) ou retiré au profit des seuls tags ? Recommandation : conserver comme champ texte libre, retirer seulementgame_system_ref+ le catalogue.Definition of Done
GameSystem/game_system_refretirés ou réduits selon décision.gameSystemtraité (retiré ou déféré à Meta #F — Extension JSON-LDsuddenly:traitSet(fédération) — DIFFÉRÉE #118).foundryvtt.comni au registry.