Version de Home Assistant
Méthode d'installation
Home Assistant OS
Core
2026.7.2
Supervisor
2026.07.3
Operating System
17.3
Interface utilisateur
20260624.5
Version de l'intégration
v1.1.11 et v1.1.13
Etat du système
No response
Checklist
Décrire le problème
Après avoir résolu un premier blocage QCM (QCMException: Vérifiez le qcm de connexion, le nombre d'essais est épuisé) en nettoyant le fichier ecoledirecte_qcm.json pour ne garder qu'une seule réponse correcte par question (format vérifié correct : liste à un seul élément par question, valeurs identiques aux propositions d'origine), l'intégration ne remonte plus l'erreur QCM mais échoue systématiquement avec une nouvelle erreur à chaque tentative du coordinator.
L'entrée de configuration passe en état setup_retry avec la raison : 'EDApiClient' object has no attribute 'ed_client'.
Le bug est reproductible à 100%, sur plusieurs tentatives, avec le debug logging complet activé (custom_components.ecole_directe: debug, ecoledirecte_api: debug) — sans qu'aucun détail supplémentaire sur l'exception réelle n'apparaisse.
J'ai testé un downgrade vers la v1.1.11 : le bug est identique, donc ce n'est pas une régression de la v1.1.13.
Le message "Unknow error on login" (log critique, coordinator/base.py:167) n'affiche jamais l'exception réelle levée pendant login() — même en debug complet — ce qui empêche de diagnostiquer plus loin côté utilisateur. L'exception semble survenir avant que self.ed_client soit assigné dans EDApiClient.aenter/constructeur, ce qui casse ensuite close() dans aexit.
Ce pattern rappelle l'issue #144 (conn_state.cn resté à None), mais dans le coordinator plutôt que le config_flow, et présent sur au moins 2 versions (v1.1.11, v1.1.13).
Étapes de reproduction
Intégration bloquée par un QCMException (essais épuisés)
Édition du fichier ecoledirecte_qcm.json pour ne laisser qu'une seule réponse (format liste à un élément) par question
Rechargement de la config entry
L'erreur QCM disparaît, mais le login échoue silencieusement et provoque une AttributeError au nettoyage — reproductible en v1.1.11 et v1.1.13
Debug logs
2026-07-16 23:41:36.211 DEBUG (MainThread) [custom_components.ecole_directe] loading QCM file
2026-07-16 23:41:36.212 CRITICAL (MainThread) [custom_components.ecole_directe] Unknow error on login
2026-07-16 23:41:36.212 ERROR (MainThread) [custom_components.ecole_directe] Unexpected error fetching ecole_directe data
Traceback (most recent call last):
File "/config/custom_components/ecole_directe/coordinator/base.py", line 153, in _async_update_data
async with EDApiClient(
...
File "/config/custom_components/ecole_directe/api/client.py", line 143, in __aexit__
await self.close()
File "/config/custom_components/ecole_directe/api/client.py", line 147, in close
if self.ed_client is not None:
^^^^^^^^^^^^^^
AttributeError: 'EDApiClient' object has no attribute 'ed_client'
2026-07-16 23:41:36.213 INFO (MainThread) [custom_components.ecole_directe] Config entry 'timeo06' for ecole_directe integration not ready yet: 'EDApiClient' object has no attribute 'ed_client'; Retrying in 5 seconds
Diagnostics dump
No response
Version de Home Assistant
Méthode d'installation
Home Assistant OS
Core
2026.7.2
Supervisor
2026.07.3
Operating System
17.3
Interface utilisateur
20260624.5
Version de l'intégration
v1.1.11 et v1.1.13
Etat du système
No response
Checklist
Décrire le problème
Après avoir résolu un premier blocage QCM (QCMException: Vérifiez le qcm de connexion, le nombre d'essais est épuisé) en nettoyant le fichier ecoledirecte_qcm.json pour ne garder qu'une seule réponse correcte par question (format vérifié correct : liste à un seul élément par question, valeurs identiques aux propositions d'origine), l'intégration ne remonte plus l'erreur QCM mais échoue systématiquement avec une nouvelle erreur à chaque tentative du coordinator.
L'entrée de configuration passe en état setup_retry avec la raison : 'EDApiClient' object has no attribute 'ed_client'.
Le bug est reproductible à 100%, sur plusieurs tentatives, avec le debug logging complet activé (custom_components.ecole_directe: debug, ecoledirecte_api: debug) — sans qu'aucun détail supplémentaire sur l'exception réelle n'apparaisse.
J'ai testé un downgrade vers la v1.1.11 : le bug est identique, donc ce n'est pas une régression de la v1.1.13.
Le message "Unknow error on login" (log critique, coordinator/base.py:167) n'affiche jamais l'exception réelle levée pendant login() — même en debug complet — ce qui empêche de diagnostiquer plus loin côté utilisateur. L'exception semble survenir avant que self.ed_client soit assigné dans EDApiClient.aenter/constructeur, ce qui casse ensuite close() dans aexit.
Ce pattern rappelle l'issue #144 (conn_state.cn resté à None), mais dans le coordinator plutôt que le config_flow, et présent sur au moins 2 versions (v1.1.11, v1.1.13).
Étapes de reproduction
Intégration bloquée par un QCMException (essais épuisés)
Édition du fichier ecoledirecte_qcm.json pour ne laisser qu'une seule réponse (format liste à un élément) par question
Rechargement de la config entry
L'erreur QCM disparaît, mais le login échoue silencieusement et provoque une AttributeError au nettoyage — reproductible en v1.1.11 et v1.1.13
Debug logs
Diagnostics dump
No response