diff --git a/docs/development/DECISIONS_020_DEV3.md b/docs/development/DECISIONS_020_DEV3.md index 732d417..7ff28c2 100644 --- a/docs/development/DECISIONS_020_DEV3.md +++ b/docs/development/DECISIONS_020_DEV3.md @@ -112,6 +112,12 @@ La date cible reste distincte de la date opérationnelle. L'anticipation réutil **HORS PÉRIMÈTRE** : aucune consommation avancée, contrat/quota photocopieur, moteur comptable ou C4. +## D-014 — Compléments C3 + +Les périodicités DAY/WEEK/MONTH réutilisent le même agrégateur. Les métriques contextuelles répartissent proportionnellement la quantité selon le nombre de jours du contexte et sont présentées comme analytiques, jamais comme une mesure physique directe. La médiane et le seuil d’écart configurable (défaut 30 %) sont réservés à l’anomalie statistique ; l’estimation d’un sous-compteur utilise la moyenne journalière des derniers intervalles fiables. L’eau en m³ ne déclenche jamais la conversion gaz : seul `meter_type == "gaz"` peut utiliser un coefficient. + +Les preuves d’alerte sont uniques par alerte et intervalle. Les conclusions `CONFIRMED_LEAK` et `READING_ERROR` excluent leurs preuves de la baseline ; `BAD_THRESHOLD` et `NORMAL_EXPLAINED` ne les excluent pas automatiquement. Les régimes chauffage restent liés au compteur avec `network_name` : cette solution permet plusieurs réseaux sans duplication obligatoire d’une nouvelle entité, et reste remplaçable par une alimentation GTB future. + ## D-009 — Rattachement explicite des compteurs **CONTEXTE** : les compteurs historiques étaient obligatoirement rattachés à `Equipment`, alors que l'exploitation nécessite aussi des compteurs de bâtiment, zone, local et logement. diff --git a/docs/development/ROADMAP_020_DEV3.md b/docs/development/ROADMAP_020_DEV3.md index ab48072..9965cb2 100644 --- a/docs/development/ROADMAP_020_DEV3.md +++ b/docs/development/ROADMAP_020_DEV3.md @@ -84,6 +84,10 @@ Alban, watchdogs, ENT, Outlook, Pronote, Yeastar, IA, secrets, données TEST_UI_ - [ ] consommation, coefficients gaz, alertes et coûts : C3 ; - [ ] contrats et quotas photocopieurs : C4. +### C3-COMPLETE — finalisation analytique + +La finalisation C3 ajoute les agrégations DAY/WEEK/MONTH, les métriques contextuelles à répartition temporelle approximative, les seuils statistiques et preuves idempotentes, l’exclusion de baseline, la détection zero/low, la facture gaz, les coûts informatifs, les alertes informatives dans « Ma journée » et les graphiques locaux. La version reste `0.2.0-dev.2` jusqu’à validation indépendante. C4 (contrats, quotas et consommables photocopieurs) reste non commencé. + ### D — Graphe technique générique - [ ] décision et migration non destructive ; diff --git a/docs/development/STATUS_020_DEV3.md b/docs/development/STATUS_020_DEV3.md index f80d8d9..3ea82fd 100644 --- a/docs/development/STATUS_020_DEV3.md +++ b/docs/development/STATUS_020_DEV3.md @@ -1,12 +1,12 @@ CURRENT VERSION: 0.2.0-dev.2 -CURRENT CHECKPOINT: C3 — implémentation en cours de validation -CURRENT COMMIT: socle C3 local en cours de validation -CURRENT MIGRATION: p1e2f3g4h5i6 (down_revision o0d1e2f3g4h5) +CURRENT CHECKPOINT: C3-COMPLETE — validation finale +CURRENT COMMIT: correctifs C3-COMPLETE en cours de validation +CURRENT MIGRATION: q2f3g4h5i6j7 (down_revision p1e2f3g4h5i6) DOCKER VERSION: gmao-college:0.2.0-dev.2 (reconstruite, healthy, MariaDB connectée) -LAST FULL TEST: 186 passed, 1 failed, 1 error ; les deux anomalies historiques restent visibles -LAST TARGETED TEST: 9 passed (C2 service, HTTP, fréquences, idempotence, calendrier, Ma journée, traitements, remplacement, tournée, permissions) +LAST FULL TEST: 195 passed, 1 failed, 1 error avant C3-COMPLETE ; les deux anomalies historiques restent visibles +LAST TARGETED TEST: 30 passed (C1/C2/C3) BLOCKERS: validation responsive visuelle non exécutée ; aucun défaut fonctionnel B restant -NEXT ACTION: terminer les tests C3, appliquer la migration et effectuer la revue indépendante ; ne pas commencer C4 +NEXT ACTION: terminer pytest C3-COMPLETE, appliquer q2f3g4h5i6j7, puis revue indépendante ; ne pas commencer C4 ## C3 — socle analytique @@ -17,7 +17,11 @@ NEXT ACTION: terminer les tests C3, appliquer la migration et effectuer la revue - [x] règles et alertes persistées, niveaux WARNING/CRITICAL, médiane et déduplication des alertes ouvertes ; - [x] conversions gaz datées, priorité manuelle, tarifs facultatifs et coût informatif au tarif du relevé final ; - [x] tableau de surveillance et fiche analytique ; -- [ ] migration et pytest complet C3 à finaliser ; +- [x] agrégations DAY/WEEK/MONTH, seuil d’écart, minimum comparable et zero/low ; +- [x] preuves idempotentes et exclusions baseline pour fuite/erreur de relevé ; +- [x] conversion gaz issue de facture et règle eau m³ sans conversion kWh ; +- [x] alertes informatives dans Ma journée et graphiques locaux responsives ; +- [ ] migration q2 et pytest complet C3 à finaliser ; - [ ] validation Playwright/base vide non effectuée ; - [ ] C4 non commencé.