diff --git a/tools/historise-evcs.mjs b/tools/historise-evcs.mjs index 56517f2..63bed2c 100644 --- a/tools/historise-evcs.mjs +++ b/tools/historise-evcs.mjs @@ -1054,6 +1054,10 @@ async function ingererCellules(client) { // Un label household venu de ce chemin est donc un bug par construction : on // REFUSE et on signale, on n'applique pas. const HOUSEHOLD = new Set(['VW', 'JEEP']); +// Les canaux par lesquels un HUMAIN peut confirmer. Enumeres explicitement : +// un canal inconnu ne doit pas valoir confirmation par defaut. `regle-puissance` +// n'y est pas et n'y sera jamais — c'est une deduction, pas une parole. +const CANAUX_HUMAINS = new Set(['whatsapp', 'proprietaire']); const LABELS = new Set(['VW', 'JEEP', 'MEGANE', 'INVITE', 'ZERO']); let dernierBlancVu = null; // anti-repetition du journal en essai a blanc @@ -1180,7 +1184,7 @@ async function appliquerEtiquetteConcierge(sql, client, st) { { sessions: [...cibles], deja: contradiction }); } - const sur = source === 'whatsapp'; + const sur = CANAUX_HUMAINS.has(source); const detail = { origine: 'airtria', source_airtria: source, label, confirmed_at: confirmedAt, sessions: [...cibles], vehicule_sur: sur, @@ -1250,7 +1254,7 @@ async function appliquerEtiquettesEnAttente(sql, client) { WHERE branchement > now() - interval '48 hours' ORDER BY branchement`); let n = 0; for (const e of rows) { - const sur = e.source_airtria === 'whatsapp'; + const sur = CANAUX_HUMAINS.has(e.source_airtria); const { rowCount } = await sql( `UPDATE session_charge s SET vehicule = $2, vehicule_sur = $3 WHERE s.debut >= $1::timestamptz - interval '2 seconds'