Un bilan GES se conteste rarement sur son résultat et presque toujours sur sa méthode : quel facteur d’émission, pour quelle période, appliqué à quelle donnée d’activité. Quand ces trois éléments ne sont pas restituables, le chiffre ne vaut rien devant un donneur d’ordre ou un commissaire aux comptes.
La plupart des outils rendent un nombre et gardent la chaîne de calcul pour eux. L’entreprise se retrouve à défendre un résultat qu’elle ne peut pas reconstituer.
STRATA Scope calcule les scopes 1, 2 et 3 sur les facteurs officiels de la Base Empreinte de l’ADEME, et conserve la chaîne qui mène de la donnée d’activité au résultat.
02 Mon rôle
Formulation proposée, en attente de relecture. Ce bloc a été rédigé à partir de ce que le dépôt démontre. Tant qu’Adama ne l’a pas relu, il n’est pas donné comme sa parole. Les questions auxquelles lui seul peut répondre sont listées en fin de bloc.
Niveau de responsabilité par domaine. Deux valeurs seulement, responsable ou contributeur. Aucun pourcentage, aucune barre de niveau.
Architecture
responsable
Produit
responsable
Backend
responsable
Données
responsable
IA
contributeur
Frontend
responsable
Commercial
responsable
J’ai isolé le moteur de calcul dans un service Python à part, sans interface et sans base, pour qu’il reste testable ligne à ligne et rejouable sur un jeu de données connu.
J’ai fait le choix de garder la chaîne source, donnée, période, facteur, calcul, résultat, plutôt que de ne stocker que le résultat : c’est ce qui rend le chiffre défendable.
J’ai mis le service en ligne sur son propre sous-domaine, avec une route de santé publique qui est la seule surface que ce cockpit s’autorise à interroger.
J’ai refusé que le cockpit recalcule quoi que ce soit de son côté, et j’ai supprimé le moteur que j’y avais commencé.
CE QUE SEUL ADAMA PEUT TRANCHER
Quelle version de la Base Empreinte est effectivement chargée dans le produit aujourd’hui ?
Le périmètre couvert va-t-il jusqu’aux quinze catégories du scope 3, ou à un sous-ensemble ?
Le mot « certifiable » employé dans la documentation interne recouvre-t-il un référentiel précis, ou faut-il le retirer ?
03 Architecture et stack
Entrée
Données d’activité
Période déclarée
→
Référence
Facteurs Base Empreinte
Règles par scope
→
Moteur
Service de calcul isolé
Tests rejouables
→
Sortie
Résultat par scope
Chaîne de calcul conservée
Route de santé publique
Les données d’activité et la période déclarée entrent dans un service de calcul isolé, qui applique les facteurs de la Base Empreinte et les règles propres à chaque scope. Il ressort un résultat par scope accompagné de la chaîne de calcul qui y mène. Une route de santé publique permet à ce site de constater que le service répond.De la donnée d’activité au résultat défendable
TECHNOLOGIES RÉELLEMENT INSTALLÉES · LISTE SAISIE ET RELUE
FastAPIservice de calcul et route de santé publique
Pythonmoteur d’émissions, sans effet de bord
Next.jsinterface de saisie et de restitution
Supabaseorganisations, périodes et résultats conservés
04 Décisions
Le journal d’architecture ne sert aucune décision pour ce projet aujourd’hui. Rien n’est écrit ici à la place : les décisions vivent dans un registre, elles ne se recopient pas dans une fiche.
05 Preuves
Produit · strata-scope
STRATA Scope, le moteur d’empreinte carbone du groupe, répond en production sur son adresse publique.
Source
Adresse publique de STRATA Scope, Dépôt adama-diallo-rse/strata-scope
Méthode
Appel GET sur l'adresse publique du produit depuis le cockpit, code de retour conservé tel quel.
Relevé le
Produit · strata-scope
Le code de STRATA Scope est versionné dans un dépôt suivi par ce cockpit, dont le dernier commit est lisible publiquement.
Source
Dépôt adama-diallo-rse/strata-scope
Méthode
Lecture du dernier commit du dépôt via l'API publique de GitHub, à la même adresse que celle du journal des livraisons.
Relevé le
jamais observée
Produit · strata-scope
Ce cockpit conserve la trace datée de chaque interrogation de la route de santé de STRATA Scope, y compris de ses échecs et de leur nature.
Source
Table ecosystem_probes
Méthode
Comptage des tentatives de sonde enregistrées pour ce produit. Chaque ligne porte sa date, son état et, en cas d'échec, sa nature.
Relevé le
06 Compromis
Ce qui a été volontairement refusé, et ce que ce refus coûte.
Aucune estimation quand une donnée d’activité manque.
Un chiffre estimé se comporte exactement comme un chiffre mesuré dans un tableau. Personne, six mois plus tard, ne se souvient lequel était lequel.
Ce que ça coûte Des périmètres incomplets, visibles comme tels, là où un concurrent affiche un total plein.
Pas d’écriture depuis le cockpit vers ce produit.
Ce site lit un état de santé et rien d’autre. Une passerelle qui écrit devient une porte, et une porte se garde.
Ce que ça coûte Le cockpit ne peut afficher aucune statistique d’usage tant que le produit n’expose pas une route de lecture dédiée.
Aucun stockage du résultat sans sa chaîne de calcul.
Un résultat sans sa chaîne est un nombre qu’on ne peut plus défendre. Le conserver seul reviendrait à produire la dette qu’on prétend éviter.
Ce que ça coûte Plus de données stockées, un modèle plus lourd et des migrations plus délicates.
07 État
En production
Ouvert au public sur son sous-domaine, avec une route de santé interrogée par ce site. Le périmètre fonctionnel exact reste à confirmer par Adama, il n’est donc pas affirmé ici.
08 Suite
Exposer une route publique de statistiques agrégées, sans donnée client.
Publier la version de la Base Empreinte chargée, dans le produit et dans ce cockpit.
Sans date annoncée. Une date de livraison qui n’engage personne n’est pas une information.
LES ARBITRAGES
Pourquoi c’est construit comme ça.
Chaque décision structurante de ce projet est publiée avec les options écartées, le compromis accepté et ce qu’elle a changé dans le code.