Front : la courbe relie deux points de part et d'autre d'un trou et fait passer une panne pour une droite #211
Labels
No labels
Compat/Breaking
EC01
EC02
EC03
EC04
EC05
EC06
Kind/BDD
Kind/Back
Kind/Bug
Kind/CICD
Kind/Cloud
Kind/Contenu
Kind/Data
Kind/Documentation
Kind/Enhancement
Kind/Feature
Kind/Front
Kind/IA
Kind/Infra
Kind/Monitoring
Kind/Security
Kind/Testing
Portée/Post-jury
Priority
Critical
Priority
High
Priority
Low
Priority
Medium
Reviewed
Confirmed
Reviewed
Duplicate
Reviewed
Invalid
Reviewed
Won't Fix
Status
Abandoned
Status
Blocked
Status
Need More Info
ops/alerte
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set
Reference
g2/enervision#211
Loading…
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Exigence couverte
EF-04 · la valeur brute et la méthode restent lisibles à côté. EF-11 · vue d'un site.
Épreuve servie
EC05 · Data, ETL et BI
Charge estimée
une demi-journée
Ce qu'on veut obtenir
Une heure sans mesure disparaît de la courbe au lieu d'y creuser un trou, et le trait relie les deux heures qui l'encadrent. Une panne de trois heures se lit comme une droite.
Mesuré en production ce matin :
Cinq sites sur sept. Leur courbe passe de 07:00 à 09:00 par un segment droit, et l'axe des abscisses n'affiche même pas 08:00 : les étiquettes sont construites depuis les points reçus, donc l'axe devient silencieusement irrégulier. Rien à l'écran ne dit qu'il manque une heure.
Deux causes, une de chaque côté.
SQL_SERIE_HEUREetSQL_SERIE_JOURportentand h.moyenne_kw is not null. Le seau existe dansmesure_horaire, sa moyenne est nulle parce que toutes ses minutes ont été écartées, et la requête le supprime de la réponse au lieu de le rendre avec une valeur nulle.Côté front,
GraphiqueSite.vueconstruitlabelsetdatadepuis les points reçus. Un point absent n'est pas un trou, c'est un point qui n'existe pas : Chart.js relie ses voisins et l'axe se resserre.C'est le même défaut que le #199, un cran plus loin. Le #199 a corrigé la tuile et la fiche ; la courbe est restée. Elle était explicitement hors périmètre, avec la raison suivante : « un seau vide de
mesure_horaireest une heure sans donnée, pas une panne d'une minute ». C'était vrai et ça ne suffit pas : une heure sans donnée mérite aussi d'être vue.Critères d'acceptation
moyenne_kwànull, au lieu de l'écarterfloat | NoneGraphiqueSite.vueetGraphiqueConsommation.vuene relient pas deux points de part et d'autre d'une valeur nulle (spanGaps: false)Comment on le vérifie
tests/unit/api/test_dashboard_parc.py: une fenêtre dont une heure n'a pas de moyenne rend un point de plus, avecmoyenne_kwnul, et non un point de moins.Côté front,
GraphiqueSite.test.js: une série portant unnullau milieu produit un jeu Chart.js avecspanGapsà faux.À l'écran, sur SITE001 en fenêtre 24 h : le creux de 08:00 doit se voir.
Hors périmètre
Le rattrapage des heures manquantes. Ce ticket les MONTRE, il ne les comble pas — combler serait exactement l'erreur que le #199 a corrigée ailleurs.
La fraîcheur de l'agrégat, qui est le #205.