D’où vient LaReunion.ai
Trois noms, trois mois sans git, un fil rouge coupé en plein été et plusieurs bonnes idées jetées en route. L’histoire du projet avec ses dates, ses virages et les raisons de chacun.

La base de données qui fait tourner ce site s’appelle encore lareunion2050. Le code a vécu tout l’été dans un dossier nommé reunionos. Et le produit s’appelle LaReunion.ai depuis le 5 septembre 2026. Trois noms pour une seule chose, et les trois sont toujours quelque part dans la machine : on ne renomme pas une base de données pour faire joli.
Voici comment on en est arrivé là, avec les dates.
Trois mois sans git
Le premier fichier de code est daté du 3 juin 2026 : src/Database.php, src/Http.php, et un chargeur de classes de quinze lignes. Pas de Composer, pas de bundler, pas de framework. C’est une règle qui tient toujours : le site que vous lisez n’a aucune étape de compilation.
Le premier commit git, lui, date du 3 septembre 2026 à 21 h 39. Un seul commit, 701 fichiers, 63 004 lignes. Trois mois de travail versés d’un coup, comme on vide un carton dans une armoire.
Ce n’est pas un oubli, c’est une engueulade. Ce 3 septembre, on avait lancé un audit du code — six enquêteurs et six critiques, chacun tenu de citer un fichier et une ligne pour chaque reproche. Le rapport est sorti avec six points bloquants. Le cinquième listait, entre autres joyeusetés, « pas de git ». Le dernier des cinq documents de chantier est horodaté 21 h 34 ; le premier commit, 21 h 39. Cinq minutes.
Conséquence pour qui lit cette histoire : l’historique git ne raconte pas ce projet. Juin, juillet et août n’y figurent pas. Ce qui suit est daté par les fichiers eux-mêmes et par les documents écrits à l’époque.
Le fil rouge qu’on a coupé
Le document fondateur, écrit le 16 juin, s’ouvre sur une question unique : « Où, comment et à quelles conditions bâtir 50 000 logements à La Réunion d’ici 2050 ? » L’outil était pensé pour un usage institutionnel précis, le foncier public. Tout le reste — les risques, l’énergie, la mobilité — n’était là que pour servir cette question-là.
Le 15 août, on a coupé le fil rouge. Le copilote de l’application répondait bien, mais ses instructions lui demandaient d’aider un établissement foncier à décider et de viser les 50 000 logements : quelle que soit la question, le foncier tirait la réponse à lui. Aujourd’hui, la première ligne de ses instructions dit qu’il est « LE spécialiste du territoire réunionnais SUR TOUS SES ASPECTS » et énumère douze domaines, du logement au trafic en temps réel. Le sigle de l’établissement foncier n’apparaît plus une seule fois dans le fichier.
On y a gagné le copilote tel qu’il est. Il s’appelle Zarboutan — le pilier, celui qui soutient — et il ne choisit plus votre sujet à votre place.
Ce qu’on a jeté
Un projet se juge aussi à sa poubelle — et à son étagère des « pas maintenant ». Quatre pièces sérieuses y sont passées, chacune après mesure.
Le solveur d’inondation maison. Écrit, porté sur carte graphique, validé sur tous les cas d’école — puis mis en défaut par le vrai relief réunionnais dès qu’on y met de la pluie. Trois garde-fous ont été posés dans le programme, qui refusent de publier un résultat suspect plutôt que de livrer une carte plausible et fausse ; le détail du dérapage et des gardes est dans le billet des méthodes. Le solveur, lui, garde un usage : servir d’oracle de contre-expertise là où il est valide — domaines courts, terrains peu accidentés. Les calculs de production doivent passer à un solveur extérieur, et celui qu’on a retenu bute encore sur notre relief fin. C’est un problème ouvert, pas une case cochée.
Un générateur de pluie cyclonique calé sept fois, puis abandonné : selon un seul de ses réglages, l’intensité variait d’un facteur 40, et au-delà d’un certain seuil le signe s’inversait — la pluie aurait diminué quand le vent monte.
JEPA, une famille de modèles d’intelligence artificielle très commentée, écartée comme porte d’entrée. Enquête complète le 17 septembre, licences lues dans les fichiers et pas sur la vignette du dépôt. Deux refus : les plus intéressantes de ces licences interdisent l’usage commercial, et sur nos imagettes de toits, un encodeur JEPA gelé ne fait « ni mieux ni moins bien » qu’un DINOv2 gelé — tous autour de 40 % — pendant que nos bêtes règles de géométrie montent à 88 %. Avec une réserve qu’il faut dire tout de suite : ces 88 %, la géométrie les obtient sur une étiquette que la géométrie a elle-même fabriquée. Aucun chiffre de cet essai ne mesure la vraie typologie d’un bâtiment. JEPA n’est donc pas à la poubelle, il est au rang d’option.
WebGPU, la nouvelle interface graphique des navigateurs. Refusée le 13 septembre pour une raison désagréable : une fois les trois boucles de redessin inutiles supprimées, la carte graphique travaillait 0 milliseconde. Le goulot n’était pas là. Acheter une voiture plus rapide ne raccourcit pas un embouteillage.
Trois fois où la machine a menti poliment
C’est la partie la plus utile de l’histoire, parce qu’aucune de ces pannes n’a produit le moindre message d’erreur.
Le 31 août, toutes les géométries historiques de la base étaient détruites. Les contours des bâtiments, des communes, des écoles, des routes : du binaire passé dans une connexion texte, chaque octet un peu trop élevé remplacé par le caractère « je ne sais pas lire ça ». 420 373 bâtiments sur 420 373. Une table écrite le même jour en texte, elle, était intacte — la faute était à l’insertion, pas à la base. Symptôme côté visiteur : cliquer sur un bâtiment ne faisait plus rien — parce que le clic sélectionnait 213 261 bâtiments d’un coup et étouffait le serveur. La leçon est écrite depuis dans nos scripts d’import : une géométrie corrompue ne rend pas faux, elle fait correspondre tout. Le contrôle qui la repère tient en une ligne de SQL, et celui qui tranche en une deuxième, qui compare la taille du binaire à celle qu’un polygone de ce nombre de points devrait peser. Honnêteté : il n’est posé que dans deux de nos quarante-trois scripts d’ingestion. Les autres restent à équiper.
Notre carte de l’île avait perdu le piton des Neiges. Le modèle de terrain construit à partir de nos dalles laser plafonnait à 2 894 mètres, soit 176 mètres sous le vrai sommet — et à six kilomètres de sa position. La cause : nos 1 691 dalles suivent le littoral urbanisé, parce qu’elles avaient été téléchargées pour reconstruire des toits. Tout l’intérieur manquait, les cirques compris. Et l’absence est invisible : une dalle absente se lit exactement comme de la mer à zéro mètre. Le relief de l’île est depuis construit sur le modèle d’altitude national de l’IGN.
Le 4 septembre, on a fait tester le site par une intelligence artificielle extérieure, à qui on interdisait de lire le disque : elle ne pouvait qu’appeler les adresses publiques, comme n’importe qui. Douze défauts au premier passage, une quarantaine au bout de trois. Le meilleur : la requête la plus banale qui soit répondait « tout va bien » avec un contenu de zéro octet. Le plus humiliant : un taux de couverture des toitures annoncé dix points trop haut, faute d’avoir relu la définition d’une colonne — l’aveu complet est dans le billet des méthodes.
Ce qu’on refuse de publier
Le 4 septembre a aussi servi à écrire ce qu’on ne mettrait pas en ligne, et pourquoi. Le nuage de points laser brut reste sur la station : on publie les résultats — toitures, hauteur de végétation, câbles — et la méthode pour les refaire. Les transcriptions intégrales de radio et le texte complet des articles de presse ne sortent pas : l’exception légale de fouille de textes couvre l’analyse, pas la remise à disposition. Les coordonnées des dirigeants d’entreprise non plus, ni les plaques d’immatriculation des bus. Ce qu’on publie de ces matières-là, ce sont des dérivés : des indicateurs par commune, des résumés, des scores.
Et le dépôt de code n’est nulle part sur internet, pas même en privé. Sauvegardé sur un autre disque, point.
Ce que ça vise maintenant
Trois couches empilées, et dans cet ordre. Voir : la carte et ses 94 couches (comptées dans le catalogue, pas recopiées d’un document), le relief, le temps réel. Comprendre : les tableaux de bord et le copilote. Savoir : les documents sourcés reliés à la géographie — les 712 règles de PLU des 24 communes en sont l’exemple le plus abouti.
S’y ajoute un public auquel on ne pensait pas en juin : les agents conversationnels eux-mêmes. La règle qui gouverne ce chantier a été écrite le 21 août, elle tient en cinq mots, et elle a son billet à elle. Ce qui compte pour cette histoire-ci, c’est la date : ce lecteur-là n’était nulle part dans le document de juin, et il pèse aujourd’hui autant que l’autre. Le manifeste llms.txt lui est ouvert ; l’application et les API, non — un appel sans clé repart en 401.
Le reste est du travail ordinaire : la bêta est privée, sur liste d’attente, et chaque chiffre affiché doit pouvoir dire d’où il vient — comme les 29 857 établissements dont l’existence est prouvée, sur 147 922 recensés ou le rejeu de Garance. La doctrine du produit tient en une ligne, écrite le 5 septembre, et c’est celle qu’on relit quand on est tenté de mieux vendre :
Une absence de couverture reste une absence, une estimation reste une estimation, une simulation reste une simulation.