Skip to content

fix: résoudre la collision des logicalId des groupes en multi-hubs et gérer le retour false de l'API#44

Open
jkurz78 wants to merge 1 commit intojeedom:betafrom
jkurz78:beta
Open

fix: résoudre la collision des logicalId des groupes en multi-hubs et gérer le retour false de l'API#44
jkurz78 wants to merge 1 commit intojeedom:betafrom
jkurz78:beta

Conversation

@jkurz78
Copy link

@jkurz78 jkurz78 commented Mar 20, 2026

Résout #43
Changements

  1. Préfixage du logicalId des groupes (Bug 1)
    Le logicalId passe de {groupId} à {hubId}_{groupId} pour garantir l'unicité entre hubs.
    L'ID Ajax brut est stocké dans configuration.group_id pour les appels API.
  2. Migration automatique
    Si un groupe existe avec l'ancien format de logicalId, il est automatiquement migré vers le nouveau format lors de la prochaine synchronisation. Un log info est émis pour tracer la migration.
  3. Validation du retour API (Bug 2)
    Avant d'itérer sur $groups, le code vérifie que la réponse est bien un tableau avec is_array(). Si ce n'est pas le cas, un log warning est émis au lieu d'un échec silencieux.
  4. Support du refresh pour les groupes (Bug 3)
    refreshData() gère maintenant le type group en récupérant la liste des groupes du hub et en filtrant par group_id.
  5. Mise à jour de execute()
    Les commandes de groupe utilisent configuration.group_id au lieu du logicalId pour construire les URLs API, avec fallback sur le logicalId pour la rétrocompatibilité.
    Impact

Utilisateurs mono-hub : aucun changement fonctionnel visible, juste un logicalId plus long
Utilisateurs multi-hubs : les groupes seront enfin correctement distincts après re-synchronisation
Groupes existants : migrés automatiquement, aucune intervention manuelle requise
Rétrocompatibilité : le fallback sur logicalId dans execute() assure le fonctionnement même sans re-sync immédiate

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant