Repository navigation
Mate 4.14.2 — A password Leapmotor refuses is named, and Mate waits an hour
Mate 4.14.2 — A password Leapmotor refuses is named, and Mate waits an hour
A fix found in the diagnostics @DJ-Elo-Ostfriesland sent on
#411, with the meaning of the codes
from @arekm.
What changes
Since 4.x, when Leapmotor refuses a sign-in, Mate keeps only its number (API=302010108), not the
server's message. Mate tells a refused password from a passing failure by the words in the error, so
this one read as passing:
- the startup login asked again every 5 minutes, where a refused password waits an hour;
- the cloud-history worker asked on its own every 5 minutes as well;
- the Overview said "the Leapmotor cloud refuses the login", without pointing at the password.
On @DJ-Elo-Ostfriesland's install, after an internet outage made Mate sign in again, that came to 257
refused sign-ins on 10/10.
302010108 is "Incorrect account or password": @arekm found that message next to it in the 3.x
diagnostics of 17 issues, kerniger/leapmotor-ha#74 pairs them the same way, and in #338 it went away
the moment the right password was in.
- Mate now names the code: the error reads
API=302010108 (incorrect account or password). - The startup login waits an hour before offering the same password again, and the history worker
waits the same hour. - The Overview reads "the password was rejected" and "Check the Leapmotor account in Settings."; the
log says "check credentials". - A password changed in Settings restarts the poller and is tried at once, as before.
Upgrade impact
- Nothing is migrated or deleted. Only the wording of a refused sign-in and the wait after it change.
- Other refusals are unchanged,
302010107included. @arekm reads it as "password error limit
reached, try again in 2 minutes"; on #411 it came about one answer in ten. Fewer attempts with a
refused password should make it rarer: not measured.
Verification
- CI green on the tag: 5,510 passed, 1 skipped, plus 48 passed and 2 skipped on the Windows job;
the check that the released desktop shell still runs this Mate is green. - Locally, in the CI's image with Node.js and a MateDesktop checkout added — so that nothing is
skipped: 5,511 passed, none skipped. - Five new tests. On 4.14.1 three of them fail: a 302010108 refusal does not read as a password
problem, the startup login asks again after 5 seconds instead of an hour, and the history worker
after 5 minutes. The other two check that a refusal of unknown meaning (302010219) still reads as
passing and is asked again as before. Now all five pass. - Screenshots of the Overview's link tile, on synthetic data, after seven 302010108 refusals put
through the real bridge and the poller's own startup loop: 4.14.1 reads "the Leapmotor cloud refuses
the login", next attempt in 5 min; 4.14.2 reads "the password was rejected", next attempt in 60 min,
and "Check the Leapmotor account in Settings." - The Docker image, built from this release, ran on the test instance (one car) with a real database
before the tag: every page answers as on 4.14.1 (the fuel page sends a car without a tank
elsewhere, as before), and the log has no errors. Its sign-in was accepted, so the new wording was
not seen there. - Not tried: a real account whose password Leapmotor refuses, the add-on behind Home Assistant, a
phone.
Italiano
Mate 4.14.2 — Una password rifiutata da Leapmotor viene chiamata per nome, e Mate aspetta un'ora
Una correzione trovata nella diagnostica che @DJ-Elo-Ostfriesland ha mandato sulla
#411, con il significato dei codici
trovato da @arekm.
Cosa cambia
Dalla 4.x, quando Leapmotor rifiuta un accesso, Mate tiene solo il suo numero (API=302010108), non il
messaggio del server. Mate distingue una password rifiutata da un errore passeggero dalle parole
dell'errore, quindi questo veniva letto come passeggero:
- l'accesso all'avvio riprovava ogni 5 minuti, dove una password rifiutata aspetta un'ora;
- anche la parte che scarica lo storico dal cloud riprovava per conto suo ogni 5 minuti;
- la Panoramica diceva «il cloud Leapmotor rifiuta l'accesso», senza indicare la password.
Sull'installazione di @DJ-Elo-Ostfriesland, dopo che un guasto della connessione internet aveva
costretto Mate ad accedere di nuovo, sono stati 257 accessi rifiutati il 10/10.
302010108 è «Incorrect account or password» (account o password errati): @arekm ha trovato quel
messaggio accanto al codice nella diagnostica 3.x di 17 segnalazioni, kerniger/leapmotor-ha#74 li
abbina allo stesso modo, e nella #338 è sparito appena è stata inserita la password giusta.
- Mate ora dà un nome al codice: l'errore dice
API=302010108 (incorrect account or password). - L'accesso all'avvio aspetta un'ora prima di riprovare la stessa password, e la parte dello storico
aspetta la stessa ora. - La Panoramica dice «la password è stata rifiutata» e «Controlla l'account Leapmotor nelle
Impostazioni.»; il log dice «check credentials». - Una password cambiata nelle Impostazioni riavvia il poller e viene provata subito, come prima.
Impatto dell'aggiornamento
- Niente viene migrato o cancellato. Cambiano solo le parole di un accesso rifiutato e l'attesa dopo.
- Gli altri rifiuti non cambiano, compreso
302010107. @arekm lo legge come «raggiunto il limite di
errori della password, riprova fra 2 minuti»; sulla #411 arrivava circa una risposta su dieci. Meno
tentativi con una password rifiutata dovrebbero renderlo più raro: non misurato.
Verifica
- CI verde sul tag: 5.510 passati, 1 saltato, più 48 passati e 2 saltati sul job Windows; il
controllo che il guscio desktop pubblicato faccia ancora girare questa Mate è verde. - In locale, nell'immagine della CI con Node.js e una copia di MateDesktop aggiunti — così che non si
salti niente: 5.511 passati, nessuno saltato. - Cinque test nuovi. Sulla 4.14.1 tre falliscono: un rifiuto 302010108 non viene letto come un
problema di password, l'accesso all'avvio riprova dopo 5 secondi invece che dopo un'ora, e lo storico
dopo 5 minuti. Gli altri due controllano che un rifiuto di significato sconosciuto (302010219) venga
ancora letto come passeggero e riprovato come prima. Adesso passano tutti e cinque. - Schermate del riquadro del collegamento nella Panoramica, con dati inventati, dopo sette rifiuti
302010108 passati dal bridge vero e dal ciclo di avvio del poller: la 4.14.1 dice «il cloud Leapmotor
rifiuta l'accesso», prossimo tentativo fra 5 min; la 4.14.2 dice «la password è stata rifiutata»,
prossimo tentativo fra 60 min, e «Controlla l'account Leapmotor nelle Impostazioni.» - L'immagine Docker, costruita da questa versione, ha girato sull'istanza di prova (una sola auto) con
un database vero prima del tag: ogni pagina risponde come sulla 4.14.1 (la pagina del carburante
manda altrove un'auto senza serbatoio, come prima), e nel log non ci sono errori. Lì l'accesso è
stato accettato, quindi le parole nuove non si sono viste. - Non provati: un vero account di cui Leapmotor rifiuta la password, l'add-on dentro Home Assistant,
un telefono.