No description
  • Python 59.1%
  • JavaScript 14.8%
  • Vue 11.5%
  • Shell 10.8%
  • HCL 2.8%
  • Other 0.9%
Find a file
Repository files (latest commit first)
Filename Latest commit message Latest commit date
marvin a701582c55
All checks were successful
Intégration / Contrôles statiques du dépôt (push) Successful in 9s
Intégration / Terraform — format, validité et lint (push) Successful in 30s
Intégration / Tableau de bord — dépendances, tests et construction (push) Successful in 46s
Intégration / Workflows — lint et audit de sécurité (push) Successful in 19s
Intégration / Checkov — audit de la configuration (push) Successful in 45s
Intégration / Tableau de bord — dépendances, tests et construction (pull_request) Successful in 46s
Intégration / Contrôles statiques du dépôt (pull_request) Successful in 9s
Intégration / Terraform — format, validité et lint (pull_request) Successful in 13s
Intégration / Checkov — audit de la configuration (pull_request) Successful in 17s
Intégration / Workflows — lint et audit de sécurité (pull_request) Successful in 17s
Intégration / Python — qualité, tests et dépendances (push) Successful in 6m31s
Intégration / Python — qualité, tests et dépendances (pull_request) Successful in 7m0s
Merge pull request 'api : le seuil du seau reconstitué se calcule sur le type que la base rend (#267)' (#272) from gabriel/267-seau-impute-decimal into develop
Reviewed-on: https://10.105.200.41/g2/enervision/pulls/272
Reviewed-by: marvin <marvin@noreply.10.105.200.41>
2026-09-10 20:21:27 +00:00
.claude/skills docs: réaligne PRD et BACKLOG sur l'état réel de la forge 2026-09-04 10:10:43 +02:00
.forgejo ci : Trivy n'analysait rien, faute de curl dans l'image du job (#269) 2026-09-10 18:54:13 +02:00
bin etl: la chaine passe aux dix minutes, l agregat continu suit (#246) 2026-09-09 15:19:03 +02:00
db Merge pull request 'recommandations : un moteur de regles charge sans redeploiement (#116)' (#241) from olivier/116-moteur-regles-generique into develop 2026-09-09 14:35:02 +00:00
docs Merge branch 'develop' into lenaic/269-docs-epreuves-et-trivy 2026-09-10 17:15:33 +00:00
infra Merge branch 'develop' into justine/237-iam-azure 2026-09-10 15:45:10 +02:00
packages/contracts [37] Ajout prévision et branchement front 2026-09-08 10:43:58 +02:00
services api : le seuil du seau reconstitué se calcule sur le type que la base rend (#267) 2026-09-10 22:02:36 +02:00
tests api : le seuil du seau reconstitué se calcule sur le type que la base rend (#267) 2026-09-10 22:02:36 +02:00
.coveragerc ci: mesure la couverture sur tout le code, pas sur les fichiers importés 2026-09-01 16:16:20 +02:00
.gitattributes [28] Ajout installation mc 2026-09-02 10:32:07 +02:00
.gitignore Merge pull request 'recommandations : un moteur de regles charge sans redeploiement (#116)' (#241) from olivier/116-moteur-regles-generique into develop 2026-09-09 14:35:02 +00:00
.mailmap docs: étends le manuel de l'ETL à la zone or et rends la documentation exacte 2026-09-06 10:38:41 +02:00
CODEOWNERS outillage: ancre les motifs de CODEOWNERS et dit ce qu'il ne fait pas 2026-09-03 15:14:28 +02:00
pytest.ini Merge branch 'develop' into olivier/36-entrainement-modele (#36) 2026-09-07 15:09:16 +02:00
README.md docs: un document d'entrée par épreuve, et Trivy dans la chaîne (#269) 2026-09-10 16:27:35 +02:00
requirements-dev.txt etl: agrège la zone argent en zone or, la charge en base et la contrôle (#35) 2026-09-03 15:40:25 +02:00

EnerVision — Smart Energy Optimizer

Plateforme de collecte, de prévision et de recommandation sur la consommation énergétique de sept sites industriels. Projet EADL, groupe 2, Nantes.

Organisation du dépôt

Dépôt unique. Le chemin est l'unité d'appartenance : chaque épreuve individuelle correspond à un répertoire, et la chaîne d'intégration ne rejoue que ce qui a changé.

Chemin Contenu Épreuve servie
services/collector/ Relève à la minute, rattrapage, zone bronze EC05
services/etl/ Transformations du médaillon : imputation, qualité, zones argent et or, chargement en base EC05
services/api/ Interface REST, authentification, moteur de règles EC05
services/inference/ Modèle, service de prévision, surveillance de dérive EC06
services/dashboard/ Interface web et sa couche serveur EC05
packages/contracts/ Modèles partagés entre l'API et l'inférence socle
infra/compose/ Composition Docker, proxy, un seul plan de déploiement EC04
infra/terraform/ Ressources Azure, état distant, budget EC04
infra/ansible/ Configuration du serveur de la salle EC04
db/migrations/ Migrations SQL : zone or dans public, socle d'authentification dans ops EC05
tests/ Unitaire et intégration ; contrôles de la chaîne dans tests/ci/. tests/e2e/ est réservé et vide, voir son README EC03
.forgejo/workflows/ Chaîne d'intégration et de livraison EC03
docs/ Fiches de décision, manuels d'exploitation, journal EC02
docs/data/ Architecture data : médaillon, pipeline ETL, règles d'imputation EC05

Documentation par épreuve

Un document d'entrée par épreuve. Chacun dit ce qui tourne, où c'est dans le dépôt, comment le vérifier, et ce qui n'est pas livré.

Épreuve Document d'entrée Pour aller plus loin
EC02 — management docs/RAPPORT-EC02.md docs/journal.md, docs/BACKLOG.md, docs/adr/
EC03 — intégration continue docs/EC03-INTEGRATION-CONTINUE.md .forgejo/workflows/, tests/ci/, docs/runbooks/ci.md
EC04 — sécurisation docs/RAPPORT-EC04-SECURISATION.md infra/ansible/, infra/terraform/, docs/runbooks/
EC05 — chaîne de données docs/EC05-CHAINE-DE-DONNEES.md docs/data/etl-pipeline.md, docs/GLOSSAIRE.md, docs/POSTGRESQL.md
EC06 — modèle et prévision docs/EC06-MODELE-ET-PREVISION.md docs/adr/0013-prevision-h1-avec-reference-publiee.md, services/inference/

La recette, qui traverse les épreuves, est dans docs/RECETTE.md : vingt-huit exigences éprouvées en jouant, avec leur verdict daté et ce que la vérification n'a pas couvert.

Démarrer

git clone ssh://git@10.105.200.41:2222/g2/enervision.git
cd enervision
cp infra/compose/.env.example infra/compose/.env   # à compléter, jamais commité
docker compose -f infra/compose/docker-compose.yml up -d

Noms d'hôte

Caddy sert les services du projet sur le port 443, séparés par nom d'hôte. Aucun de ces noms n'est dans un DNS : ajouter cette ligne dans /etc/hosts (Linux, macOS) ou C:\Windows\System32\drivers\etc\hosts sur chaque poste.

10.105.200.41  forge.g2.enervision app.g2.enervision grafana.g2.enervision
Nom Sert
forge.g2.enervision la forge Forgejo
app.g2.enervision le tableau de bord, et l'API sous /api
grafana.g2.enervision Grafana (supervision métier)

Le certificat est délivré par l'autorité interne de Caddy : le navigateur avertit au premier accès, curl demande -k. Manuel : docs/runbooks/caddy.md.

Conventions

Branches : <prenom>/<numéro de l'issue>-<sujet>, par exemple justine/5-api-authentification. Messages de commit : <zone>: <ce qui change>, par exemple collector: borne l'imputation à 30 minutes. Un ticket par unité de travail, fermé avec sa preuve en commentaire.

Le détail est dans docs/CONVENTIONS.md.