Nouveautés

Les améliorations apportées à Appraise Paris, regroupées par semaine.

Semaine du 14 septembre 2026

v1.51.1
  • Seize fiches de plus : métiers et impôts de l'immobilier
v1.51.0
  • Préparer la mission, une section à la fois
  • La vacance des logements entre dans le dossier
  • Neuf notions de plus au glossaire
v1.50.2
  • Alerte en cas d'usage intensif de l'assistant
v1.50.1
  • L'étape ne change plus toute seule
v1.50.0
  • Le demandeur, en fiche complète
  • La mission complète dès l'étape ⓪, et le contrat avec
v1.49.0
  • « Préparez la mission » suit l'ordre d'une mission
v1.48.3
  • Une seule fenêtre de conversation
v1.48.2
  • L'écran de Bob se simplifie
v1.48.1
  • Bob ne lance plus l'entretien sur une question
v1.48.0
  • Bob devient l'assistant unique
  • Des pictogrammes à la place des emojis
v1.47.0
  • Les premiers pas, une étape à la fois
v1.46.0
  • Les prix des Notaires du Grand Paris, lus dans leurs publications
  • Le marché local du rapport porte le repère des Notaires
v1.45.0
  • On arrive directement en mode expert
  • Ulysse réunit le référentiel et le glossaire
  • Les conversations et les résultats prennent le nouveau design
v1.45.0
  • L'environnement, chiffré et sourcé
  • Le quartier plutôt que la commune
v1.44.1
  • Un rapport-exemple public
v1.44.0
  • L'application prend la forme d'un tableau de bord
v1.43.1
  • Correctif de chargement
v1.43.0
  • Registre des pièces reçues
  • Mode contentieux
v1.42.0
  • Votre cabinet, vos modèles, votre plume
  • Les réserves se lèvent avec un motif
  • Un vrai document Word
v1.41.0
  • Le client dépose ses pièces et signe sur une page à lui
  • Contrat d'expertise et devis, signés par lien
  • Calendrier de mission
  • Tableau de bord du cabinet
  • Ce qui a changé entre deux versions d'un dossier
v1.40.0
  • Le périmètre d'expertise se trace sur la carte
  • Un indice de tension du marché, sourcé
  • Les comparables retenus s'exportent avec leurs ajustements
v1.39.0
  • Ce que la lecture a lu se vérifie et se corrige avant le calcul
  • Les chiffres sont lus deux fois
  • Les diagnostics techniques entrent dans le rapport
  • Servitudes et immeubles par destination
  • Chaque estimation est conservée
v1.38.0
  • Les barèmes ne voyagent plus avec le code public
v1.37.1
  • Le tableau des comparables interrompait l'affichage du calcul
v1.37.0
  • Le moteur de valorisation calcule désormais sur le serveur
v1.36.2
  • Parité du moteur : le taux d'indexation des ventes voyage enfin vers le serveur
v1.36.1
  • Banc d'essai des lecteurs : réponses longues autorisées
v1.36.0
  • Comparables : le quartier pèse plus que la distance, et la liste s'arrête à 100

Semaine du 7 septembre 2026

v1.35.0
  • Pièces en ZIP et liens partagés
v1.34.9
  • Dossiers & clients : les dossiers sans client apparaissent
  • Après une mise en ligne, l'onglet déjà ouvert ne casse plus
v1.34.8
  • Méthode par comparaison : un seul montant en tête
v1.34.7
  • Comparables DVF : la période réelle, et une veille des millésimes
v1.34.6
  • Plus de dialogues « rechercher une adresse » pendant la lecture des pièces
v1.34.5
  • Le rendu des pages ne se fige plus en onglet d'arrière-plan
  • Annexes : deux dressings ne font pas une pièce de plus
v1.34.4
  • La pièce de vie compte, même nommée « Entrée Salon-cuisine »
v1.34.3
  • Le plan d'un dossier de diagnostics est enfin vu
v1.34.2
  • Le zonage PLU se lit dès l'adresse — et s'écrit dans le dossier
v1.34.1
  • Lecture des pièces : « Pas de JSON structuré » — cause et correctif
  • Les manques se proposent même quand la lecture échoue
v1.34.0
  • Parcours complet : une barre, un vocabulaire
v1.33.2
  • L'étape préalable se remplit dans l'accordéon
v1.33.1
  • Le menu « Plus » s'affiche enfin
  • Premiers pas : un accordéon, rien d'autre
v1.33.0
  • Dossiers & clients : deux vues, des listes qui se lisent
v1.32.1
  • Écran d'entrée : Ulysse s'efface, le bouton « Nouveau dossier » rejoint le titre
v1.32.0
  • Les cartes reviennent, sur fond IGN, et vivent dans le rapport
  • Plan de situation — le bien, les ventes retenues, les biens en vente.
  • Parcelle cadastrale — contour IGN sur orthophotographie, parcellaire en
  • Périmètre administratif — commune, ou arrondissement dans sa commune.
v1.31.0
  • Les extraits se retrouvent même quand le modèle ne les situe pas, et l'accès aux dossiers revient dans la barre
v1.30.1
  • Régression : tous les rapports sortaient en certificat
v1.30.0
  • Accepter ou refuser la mission, et trois formes de rapport
v1.29.0
  • Une étape ⓪ pour préparer la mission et la visite
v1.28.0
  • La doctrine de surface devient un choix de l'expert, et la conclusion dit enfin pourquoi
  • La méthode privilégiée est justifiée
  • La pièce principale a enfin sa définition
v1.27.1
  • Avenants, congés et contentieux : les trois pièces qui manquaient au dossier
v1.27.0
  • Les trente-quatre écarts partiels au manuel d'expertise sont comblés
v1.26.1
  • Dix versions livrées mais absentes du journal public
v1.26.0
  • Les extraits surlignés passent en annexe du rapport, et le scan est enfin localisable
  • Un document scanné n'est plus une page sans repère
v1.25.0
  • Chaque information lue est rattachée à sa page, avec l'extrait surligné
v1.24.0
  • La répartition entre méthodes se règle au curseur
  • Retirer un comparable se voit enfin
  • Le rapport montrait encore le montant que l'écran venait de retirer
  • Un seul nom pour la valeur de départ
  • Trois montants coexistaient sans qu'on sache lequel fait foi
v1.23.0
  • Conditions générales, et prix visibles dès l'accueil

Semaine du 31 août au 6 septembre 2026

v1.22.0
  • L'analyse de marché apporte trois fois plus de repères datés
v1.21.0
  • L'analyse de marché a un repli plutôt qu'un échec
v1.20.0
  • Analyse de marché : plus de place, moins d'artefacts
v1.19.1
  • Le lien de partage pointait vers un domaine qui ne le sert pas
v1.19.0
  • L'étape « Produisez le rapport » ne s'ouvre plus d'elle-même
  • Plus de questions hors sujet : un appartement n'a pas de terrain
v1.18.3
  • La fenêtre de lecture était vide pendant toute l'attente
v1.18.2
  • La vue guidée revient pour tout le monde
v1.18.1
  • La vue guidée revient d'un clic
v1.18.0
  • La lecture des documents a une source unique : le formulaire
v1.17.1
  • L'IA ne donne plus d'estimation de loyer ni de prix — et n'en donnait pas seulement pour l'affichage
v1.17.0
  • Un masque pour compléter les manques, en une fois
v1.16.0
  • La lecture des documents dit ce qu'elle fait, et le récapitulatif dit où compléter
v1.15.3
  • Les accordéons des premiers pas s'ouvraient sur un corps vide
v1.15.2
  • Le service d'analyse répondait 502 sur chaque appel — corrigé
  • Premiers pas : trois défauts d'interface
v1.15.1
  • Une seule navigation à la fois
v1.15.0
  • Les premiers pas s'ouvrent sur leurs formulaires
v1.14.0
  • Un nouvel expert sait par où commencer
v1.13.0
  • Le service d'analyse dit maintenant quand il est coupé, au lieu de faire attendre
  • Le système de design existe désormais comme document
v1.12.3
  • Le menu ne se construisait pas toujours, et se taisait
v1.12.2
  • Le menu s'ouvrait sans se voir
v1.12.1
  • Les écrans annexes passent dans un menu
v1.12.0
  • L'étape de vérification ne montre plus que ce qui concerne le dossier
v1.11.0
  • Les rapports se partagent par une adresse courte, servie par le site lui-même
v1.10.0
  • On voit enfin ce que la lecture des documents trouve, pendant qu'elle le trouve
v1.9.4
  • L'en-tête de l'outil se lit en deux rangées
v1.9.3
  • Un paiement ouvre enfin le bon accès, et crée le compte
v1.9.2
  • Les liens de souscription portent une campagne et une promotion
v1.9.1
  • Le pied de page mesurait 1 400 pixels
  • Réparé au passage : l'écran « Mon compte » était en erreur
v1.9.0
  • La formule Cabinet devient réelle : cinq experts, un écran pour les gérer

Semaine du 24 août 2026

v1.8.5
  • L'outil vouvoie partout
v1.8.4
  • Les boutons de souscription étaient morts en production
v1.8.3
  • L'outil d'expertise passe à Material 3, comme l'outil de rentabilité
  • Le menu d'avis de valeur automatisé est masqué
v1.8.2
  • La page des tarifs finit de rejoindre le reste du site
  • Trois passages retirés de la page des tarifs
v1.8.1
  • Les formules se souscrivent depuis la page des tarifs
v1.8.0
  • Toutes les pages du site portent enfin la même barre et le même pied
  • Le menu Solutions montre les solutions
v1.7.5
  • Les pages ne se présentent plus sous le nom du cabinet
v1.7.4
  • La charte atteint enfin l'outil d'expertise
v1.7.3
  • La page d'accueil mène par l'expertise, et les tarifs sont chiffrés
v1.7.2
  • Plus de contraste, et une typographie qui gradue son serrage
v1.7.1
  • Un accès demandé sur Expertisia ne repart plus signé du nom du cabinet
v1.7.0
  • La charte graphique s'applique enfin partout
v1.6.201
  • Le monorepo se découpe en dépôts autonomes — . Décidé après un conflit de fusion qui n'avait aucun rapport avec le travail en cours : rattraper deux semaines de retard sur un dépôt unique fait traverser l'histoire de tous les autres sites. Six dépôts sont produits — , (75/92/94, place pour le 93), , , , — avec leur historique (filtrage par chemin, pas de repartir à zéro : reste utilisable, et c'est la seule partie de l'opération qu'on ne peut pas rattraper après coup). Le script est ADDITIF : il ne touche pas au monorepo. L'élagage viendra quand les nouveaux dépôts auront tourné en production.
  • Trois dépendances invisibles, trouvées en construisant pour de vrai. (1) Les des sites calculaient leur racine en remontant de deux ou trois crans depuis : déplacés à la racine de leur dépôt, ils pointaient au-dessus. (2) lit — le journal des versions du réseau, affiché par tous les sites mais produit par le build d'Expertisia : il rejoint la charte, et il faudra republier celle-ci à chaque release pour que les sites restent à jour. (3) copie (politique de confidentialité imposée aux fournisseurs de modèles) depuis la racine : sa source devient la charte. Aucune des trois ne se voyait en lisant le code — seulement en lançant le build.
  • La vérification du script mesurait la version de Python, pas le découpage. Trois du dépôt n'ont jamais compilé sous Python 3.11 (antislash dans une expression f-string, licite depuis 3.12) : les compter comme des régressions aurait fait passer une propriété de l'interpréteur pour une casse. La vérification compare désormais avant/après et ne retient que ce qui compilait déjà, plus un contrôle structurel du câblage indépendant de l'interpréteur.
  • Deux sites construits de bout en bout dans leur nouveau dépôt : (287 pages, maillage et style générés) et , neuf garde-fous verts — dont celui qui compare à sa source, et qui a refusé le premier essai comme il devait.

Semaine du 17 août 2026

v1.6.200
  • Le journal de parité est prêt en base. est appliqué à (table + deux index). Il ne reste, pour que la phase 1b mesure enfin quelque chose, qu'à déployer : chaque expertise consignera alors sa comparaison client ⇄ serveur, et /admin › ⚖️ Parité moteur dira si la bascule est autorisée.
v1.6.199
  • Le garde-fou de la coupe, testé sur quatre sabotages : référence nue restante (→ en production, invisible en source et au ), drapeau renommé, moteur renommé, cas nominal. Une coupe qui « réussit » sans rien retirer est refusée par un plancher d'octets — c'est la panne du témoin 487742, appliquée à l'avance.
  • Ce que 1d ne protège pas, écrit noir sur blanc. Les barèmes (, , , ) restent dans le bundle : les curseurs de décote et le rendu les lisent directement. 1d protège la cascade — l'ordre d'assemblage, les pondérations, la méthode — pas les tables. Si ce sont les tables le moat, il faut une phase supplémentaire, inscrite en roadmap (1e) : c'est un arbitrage produit — latence et hors-ligne contre secret — pas une évidence technique.
v1.6.198
  • Fin du backend commun : chaque site du réseau est indépendant. Le plan maître désignait depuis six semaines un « socle commun » — auth centrale, portefeuille de crédits mutualisé par e-mail, SSO inter-domaines, quatre domaines routés par sur un projet Pages unique — assorti d'une règle « ne pas forker de stacks ». Il n'a jamais été déployé, et il n'a bloqué personne : trois façades sont sorties sans lui, puis renta.immo a encaissé sans lui. Le relevé qui a tranché : le réseau était déjà indépendant à 80 % sans que ce soit une décision — 75/92/94immo et dico n'ont aucune authentification, renta-app a sa propre base de comptes depuis fin juillet, chaque site a son projet Pages et sa chaîne de publication. Désormais c'en est une : son projet Pages, ses bases, ses comptes, sa facturation, ses garde-fous.
  • Les documents qui portaient l'architecture inverse ont été réécrits, pas annotés : (vision, statut, §0 devenu le compte rendu de l'abandon, séquence P0 supprimée), (le portefeuille reste valable par site : débit à la réussite, idempotence, journal append-only — seule la mutualisation tombe), , et , qui garde le raisonnement. Sans cette réécriture, la prochaine session repartait sur le socle : un plan périmé qu'on laisse en place se fait appliquer.
  • Ce qui reste légitimement commun, et qui n'est pas un backend : le dépôt et les fichiers source recopiés au build · le moteur de valorisation, à source unique (le forker donnerait deux moteurs à tenir en parité, sans outillage pour la mesurer) · **, instantané DVF daté lu par plusieurs sites — le dupliquer imposerait N chaînes de rafraîchissement et laisserait deux sites annoncer des comparables différents pour la même adresse. Ce qui couple, c'est ce qui s'exécute** ensemble et tombe ensemble.
  • Coût assumé : plus de compte unique ni de crédit transférable d'un site à l'autre. Le cross-sell repose sur le pied de page commun et les pages de présentation, pas sur une session partagée.
v1.6.197
  • La comparaison ne regardait qu'un cinquième du résultat. Elle ne portait que sur les nombres de premier niveau : , , , et tous les booléens y échappaient, alors qu'ils portent une part majeure du rapport. Elle est désormais récursive et intégrale, avec trois exceptions nommées et testées dans les deux sens : les comparables (une entrée que le serveur renvoie en écho — seul , qu'il calcule, est vérifié), les scores dépendants de l'horloge (tolérance d'un point : la récence pèse 2,5 points par mois, quelques secondes d'écart ne peuvent faire plus), et / que rend en — sans quoi deux moteurs d'accord sur « pas de valeur » se comptaient divergents.
  • La bascule 1c aurait faussé le rayon annoncé dans le rapport. Le moteur serveur pose , et sur l'objet tableau des comparables, et d'un tableau jette ses propriétés propres. Or le rapport lit pour libeller le périmètre de recherche : le jour de la bascule, un jeu élargi à 3 km ou à la commune se serait imprimé « rayon 1 km » — un chiffre faux dans un document fait pour être contesté. L'adoption du résultat serveur conserve donc le tableau du client, qui est la source de cette métadonnée. Trouvé en préparant la bascule, avant qu'elle ait lieu.
  • Deux garde-fous assertifs de plus au build, chacun testé en le sabotant. recalcule les 51 champs et 16 clés d'état réellement lus par le moteur et refuse le build si la liste transmise a dérivé — la commande était documentée en commentaire depuis 1.6.193, donc jamais lancée ; un champ oublié se serait lu à zéro côté serveur et aurait produit un écart de valeur silencieux. couvre la comparaison elle-même sur 15 cas (huit qui doivent être signalés, sept qui doivent être ignorés) : une comparaison cassée ne rend pas un résultat faux, elle rend « 0 écart » sur des moteurs divergents — donc une bascule autorisée à tort, le mode de panne le plus dangereux du chantier.
  • Le mode 1c est câblé ( : le serveur fait foi, repli client marqué et journalisé si l'appel échoue) mais laissé sur « ombre ». Il se bascule quand l'écran de parité l'autorise, pas avant.

Semaine du 3 août 2026

v1.6.196
  • Douze notions entrent au dictionnaire , issues de la veille hebdomadaire : , , , , , , , , , , , . Le lexique passe de 265 à 277 fiches. Chacune a été vérifiée absente des slugs, des synonymes et du corps des fiches existantes — beaucoup de notions sont déjà traitées à l'intérieur d'une fiche voisine sans avoir leur propre entrée, et les rajouter aurait fabriqué du doublon.
  • Cinquante-cinq liens réciproques posés dans la foulée : n'étant saisi que dans un sens, une fiche neuve serait restée atteignable seulement par l'index et la recherche. Le script d'ajout refuse de s'exécuter si un lien pointe vers un slug inexistant ou si une nouvelle fiche n'est citée par aucune autre — les deux contrôles ont été écrits avant les fiches, pas après.
  • Quatre notions sont datées par un texte de la semaine écoulée, ce qui est l'intérêt de les écrire maintenant : décret n° 2026-644 du 20 juillet (blocage des loyers à la relocation reconduit jusqu'au 31 juillet 2027, sans exception possible pour un logement classé F ou G), décret n° 2026-200 du 18 mars applicable aux permis déposés depuis le 1er juillet (seuils RE2020), décret du 27 juillet 2023 (liste des cas interdisant un complément de loyer, dont la classe F).
  • La page « décote énergétique » de 75.immo nomme la notion qu'elle mesure et donne l'ordre de grandeur français — environ −4 % par classe perdue sur un appartement, −8 % sur une maison (Notaires de France). Le classement mesure un écart *entre voies* à l'intérieur d'un arrondissement ; la valeur verte mesure un écart *entre logements comparables*. Les confondre reviendrait à additionner deux fois le même effet, la page le dit explicitement.
  • Les infobulles de l'app suivent : posé sur l'étiquette « Encadrement loyers (zone tendue) », qui décrivait un régime sans pouvoir l'expliquer, et quinze correspondances ajoutées à la table centrale pour les libellés dont le texte ne colle pas mot pour mot au terme du dictionnaire.
  • Signalé, non corrigé : l'app décrit et calcule le dispositif Jeanbrun comme une réduction d'impôt de 12 à 21 % plafonnée à 300 000 € — c'est le barème du Pinel, vraisemblablement laissé en place au moment du renommage. Le dispositif issu de la loi de finances pour 2026 repose sur un amortissement déduit des revenus fonciers, sans zonage. La fiche du dictionnaire décrit le régime réel ; le moteur reste inchangé dans cette version, la correction touchant à la fois le calcul de projection et l'info-bulle du sélecteur de régime.
v1.6.193
  • La liste des champs transmis au moteur (51 champs + 16 clés d'état) est déterministe et régénérable depuis le code du moteur. Un champ ajouté côté client et non transmis produirait un écart de valeur *silencieux* : la commande de régénération est documentée à côté de la liste.
  • renta.immo — la page Tarifs annonçait une fonction absente. « Comparaison de plusieurs biens » est désormais marquée *à venir*, comme les autres fonctions futures : elle n'existe pas encore dans l'outil.

Semaine du 27 juillet au 2 août 2026

v1.6.192
  • La tendance démographique de la commune entre dans la note . L'indicateur existait mais reposait sur une hypothèse en dur (+2 %) que rien ne renseignait : toutes les communes marquaient pareil, y compris celles qui se vident — un chiffre affiché sans source, contraire à la règle de traçabilité. Il s'appuie maintenant sur les populations municipales de l'INSEE (séries 1968-2023, API Melodi sans clé), avec deux horizons : 5 ans pour le mouvement récent, 10 ans pour distinguer le creux conjoncturel du déclin structurel.
  • Un déclin retire des points. Le barème plafonnait à 0 : une commune en recul n'était pas pénalisée, seulement non récompensée. Elle l'est désormais (jusqu'à −3), le maximum « Démographie » passant de 10 à 12. Une commune non mesurée reste neutre — non renseigné n'est pas synonyme de croissance.
v1.6.190
  • Un site, une identité. Les pages servies sur expertisia.immo portaient la marque du cabinet. Elles portent désormais celle du produit — titre, bandeau, métadonnées de partage. Le pied de page reste commun au réseau : éditeur, mentions légales et sites partenaires y sont les mêmes partout, c'est le seul élément qui a vocation à l'être.
  • Le renommage ne déborde sur aucun autre site : redirige vers 75.immo et vers dico.immo, chacun ayant son propre générateur depuis leur mise en ligne.
v1.6.189
  • Le corps de la page Fonctionnalités parle d'Expertisia, et non plus d'Appraise Paris : la vitrine décrit l'outil, le cabinet a son propre site. Le bandeau et le pied de page portent encore la marque partagée — elle vient de la coquille commune à toutes les pages générées, prix et lexique compris, et la changer là dépasse cette page.
v1.6.188
  • La page d'accueil dit d'abord *pourquoi*, ensuite *comment*. Le bloc « La rigueur d'un expert, la vitesse d'un logiciel » arrivait après le choix entre les deux modes de travail — on demandait de choisir avant d'avoir donné une raison de le faire. Il remonte juste sous le bandeau des sources officielles.
  • La section « Le projet » part sur renta.immo : elle décrit l'agrégation des données publiques et le parcours d'analyse d'un investissement — le sujet de renta, pas celui de l'outil d'expertise. Les attributs de traduction ont été retirés au passage, renta n'ayant pas de bascule de langue.
v1.6.187
  • Douze fonctionnalités rédigées pour la vitrine ne s'affichaient nulle part. Le générateur ne connaissait que sept sections ; toute autre étiquette était écartée sans un mot. Les sessions travaillant sur les sites voisins écrivaient donc dans le vide depuis des semaines. Une étiquette inconnue est désormais signalée au build, avec la marche à suivre.
  • La vitrine parle de l'outil, pas du réseau : les 266 fiches du dictionnaire et les 2 562 pages de prix appartiennent à des sites voisins, pas aux fonctions d'Expertisia. Les entrées qui les concernent sont réaffectées à , , et — reconnues, conservées, et disponibles pour que chaque site aille chercher les siennes.
v1.6.186
  • Intégration des sessions parallèles — renta.immo et verifplu.immo. La politique de confidentialité imposée aux fournisseurs d'IA est désormais définie une seule fois et importée par les deux chemins d'appel : deux définitions auraient fini par diverger, et un chemin qui l'oublie continue de fonctionner — c'est précisément ce qui rend l'oubli indétectable.
v1.6.185
  • Les sources officielles sont affichées . était renseigné sur 133 fiches et laissé invisible, ce qui contredisait les signaux de confiance revendiqués par le patron de page : une définition juridique qu'on ne peut pas remonter à son texte ne se vérifie pas. Ce sont des sources publiques françaises, donc citables — les citer est un argument. reste volontairement masqué : il pointe vers un glossaire anglophone concurrent, à qui rien n'oblige à céder de l'autorité.
  • 204 fiches mènent désormais à l'outil qui applique la notion . Une fiche ne sortait que vers d'autres fiches ; le seul renvoi au réseau vivait en pied de page, là où personne ne va. Rendement, cash-flow, financement, fiscalité et coûts → renta ; marché → 75 ; valeur et décotes → Expertisia ; urbanisme → verifplu ; mission d'expertise → le cabinet. Les familles sans prolongement honnête n'en ont pas : un renvoi forcé est une ferme de liens, et Google le sanctionne.
  • Quinze fiches n'étaient citées par aucune autre. n'est saisi que dans un sens — A renvoie à B sans que B renvoie à A —, si bien que ces quinze n'étaient atteignables que par l'index ou la recherche. La réciprocité se calcule à la lecture, pas dans les données : un lien rendu symétrique dans devrait ensuite être tenu à jour des deux côtés. Impasses restantes : 0.
  • La recherche ne vivait que sur l'accueil : depuis une fiche ou une famille, chercher un mot imposait de revenir à la racine. Elle est sur les 14 pages de famille, et un champ compact dans la barre y renvoie depuis les pages sans index à filtrer. Les cartes-livres intercalées dans la liste ne flottent plus au milieu de résultats sans rapport, l'index A-Z estompe les lettres sans résultat, et le nombre de résultats est annoncé aux lecteurs d'écran.
  • Une fiche pèse 14 Ko au lieu de 43. La feuille de style était inlinée sur chaque page — 31 Ko, soit 72 % du poids d'une fiche, re-téléchargés à chaque clic alors qu'un dictionnaire s'explore de terme en terme. Elle part dans , servie immuable, comme le build principal externalise son gros . Sur ces 31 Ko, ~12 Ko étaient morts : la charte Appraise dont les fiches s'étaient détachées en passant au patron « page de définition », et le premier design en vignettes (, , ). n'est plus importée du tout — sur 11,3 Ko, dico n'en consommait plus qu'une seule règle. Gzip : 12 → 5 Ko.
  • sortait doublement échappé — s'affichait tel quel sur les 266 fiches : recevait un titre déjà échappé et le repassait dans l'échappeur. Le contrat est désormais « texte brut en entrée, échappement une seule fois, ici ». L'alternative décrit l'image, plus la page : ni suffixe de marque ni promesse « définition, formule et exemple ».
  • « Mis à jour en juillet 2026 » était écrit en dur sur les 266 fiches et les 3 pages légales. La mention deviendra fausse au fil du temps sans que rien ne le signale : elle vient maintenant de la date de génération, qui alimente aussi le du balisage — une seule source pour ce que le lecteur voit et ce que le robot lit.
  • ne tournait pas sous Python 3.11 ( : backslash dans une f-string, toléré seulement à partir de 3.12). Et , posée sur 4 pages, n'était définie dans aucune feuille : elle s'affichait en corps de texte.
  • Balisage et robots : au sitemap · juste selon la nature de page (tout était , y compris l'accueil et les pages légales) · entier — il s'arrêtait à 60 des 266, décrivant un dictionnaire amputé alors que la page les liste tous · + · + sur les familles · ++ sur les fiches · page 404 utile (recherche et familles plutôt qu'un cul-de-sac, en ) · ( immuable, , ).
  • Documentation recalée : et annonçaient 143 fiches, 10 catégories, 157 URLs — la réalité est 266, 14 et 287. Leur « reste à faire » listait encore les 301 depuis et le repointage des infobulles, faits depuis. Il ne reste que le rattachement du domaine, qui appartient au propriétaire.
  • Deal Check — l'écran répond enfin à la question qu'il pose . L'outil s'appelle Deal Check et demande *ce deal tient-il ?* ; il n'y répondait nulle part en un coup d'œil. La cause n'était pas la quantité d'information mais son absence de hiérarchie : huit blocs de premier niveau et sept tableaux, tous de même poids visuel, donc aucun qui ressorte. L'écran est réorganisé en trois niveaux — verdict, lecture, preuve — dont un seul s'affiche d'emblée. Rien n'a été supprimé : la page du premier écran passe de 2 772 à 852 px (−69 %) à information constante.
  • Le verdict : une phrase plutôt qu'un score nu — un nombre sur 100 ne dit pas ce qu'il faut en faire — puis trois chiffres choisis et non les trois premiers venus : le cash-flow mensuel net (la seule question que se pose un acheteur), le rendement net-net (la seule mesure comparable d'un dossier à l'autre) et l'écart du prix aux ventes DVF du secteur, le seul des trois qu'aucun outil concurrent ne sait afficher. Trois pastilles de risque au maximum : au-delà, ce n'est plus un signal mais une liste. Aucun calcul n'a changé — tout est lu depuis le moteur existant.
  • En résidence principale, le verdict change de métrique et non de ton : coût net d'habiter, patrimoine projeté, prix vs marché. Ni DSCR ni encadrement — un bien qu'on habite ne produit pas de loyer, et lui appliquer des repères locatifs le noterait sur un critère qui ne le concerne pas.
  • Les 65 paramètres avancés deviennent des hypothèses : repliés sous un libellé qui les compte, marqués « modifié » dès qu'on y touche, et nommés dans un résumé — un compteur dit qu'on a dévié, il ne dit pas de quoi, et c'est ce « de quoi » qui rend un résultat reproductible par un tiers. Ils restent tous accessibles : un paramètre retiré serait une hypothèse cachée.
  • « Modifié » se mesure aux gestes de l'utilisateur, pas aux valeurs. Le remplissage automatique par l'adresse (loyer DHUP, taxe foncière, DPE) écrit les champs sans émettre d'événement : nos propres données ne sont donc jamais comptées comme ses arbitrages. Confondre les deux reviendrait à lui attribuer des choix qu'il n'a pas faits.
  • Le câblage suit désormais la façade. décidait de ce qui s'affiche ; le câblage de premier niveau, lui, enregistrait les écouteurs de tous les panneaux dès le chargement, quel que soit le domaine. Masquer un bouton n'empêche pas son code de tourner — et sur un domaine ouvert sans compte, cela interdit d'alléger l'artefact servi. Un prédicat est posé avant tout câblage (le bloc de détection de façade remonte en tête de script) et 30 blocs de câblage d'expertise sont enveloppés dans . Sur renta.immo, aucun écouteur d'expertise n'est plus enregistré. Un domaine non listé — appraiseparis, staging, préversions — sert tout, comme avant.
  • Vérifié sur les trois façades : sans façade, tout fonctionne ; sur , vaut faux et le Deal Check rend son verdict complet ; sur , l'expertise reste entière. Le moteur serveur se régénère à l'identique (86 451 caractères, marqueurs présents, témoin 487742) — le déplacement du bloc de façade n'a touché aucune borne d'extraction.
  • Le repli ne peut pas amputer un livrable. Le niveau 2 se replie par une classe, jamais par un style en ligne : l'export clone le tableau de bord, et un en ligne aurait été recopié dans le rapport publié — le destinataire aurait reçu une analyse tronquée sans que rien ne le signale. Le clone retire le repli et les boutons d'écran ; l'impression force les trois niveaux. Vérifié : le rapport généré niveau 2 replié contient bien les six blocs analyste et les onze tableaux de détail.
v1.6.184
  • Les documents déposés sont conservés avec le dossier . Ils étaient jusqu'ici lus puis jetés : rouvrir une expertise obligeait à tout redéposer, et le rapport n'était plus rattachable aux pièces qui l'avaient fondé. Un bouton *Pièces* les liste dans « Mes dossiers », avec téléchargement et suppression.
  • Conservation : les pièces vivent aussi longtemps que le dossier et disparaissent avec lui — supprimer un dossier efface désormais ses fichiers, faute de quoi des documents privés resteraient stockés sans que rien ne puisse plus les désigner. Aucune expiration automatique n'est appliquée : rien ne s'effacera dans le dos de l'utilisateur.
  • Cloisonnement : chaque accès à une pièce revérifie que le dossier parent appartient à la session. Connaître l'identifiant d'une pièce ne suffit jamais à la lire. Le propriétaire n'est stocké qu'une fois, sur le dossier — le dupliquer sur chaque fichier créerait une seconde vérité sur « à qui appartient ce document », donc une divergence possible, et sur des pièces privées une divergence de propriétaire est une fuite.
  • Limites : 20 Mo par pièce, 40 pièces par dossier. Le contenu est stocké hors base — une base relationnelle n'est pas un entrepôt de fichiers.
v1.6.183
  • Le dossier se crée dès la première adresse, plus à l'export . Jusqu'ici rien n'était enregistré tant que la valeur n'était pas calculée : une fermeture d'onglet emportait les pièces lues, les réponses au chat et toute la saisie — et les documents déposés n'avaient, littéralement, aucun endroit où être rattachés.
  • Enregistrement automatique à chaque étape franchie : changement d'étape, calcul de la valeur, déplacement d'un curseur d'ajustement, fin de lecture des documents. Les écritures sont groupées — une expertise touche des dizaines de champs, et écrire à chaque frappe saturerait la base sans rien apporter. Une dernière écriture part à la fermeture de l'onglet.
  • Le fil du chat fait partie du dossier. C'est là que l'expert précise ce qu'aucun document ne dit. Il est conservé avec les questions déjà tranchées, pour qu'une réouverture ne les repose pas.
  • Les dossiers en cours apparaissent dans « Mes dossiers » avec une pastille *Brouillon* — même liste, mais l'œil distingue immédiatement ce qui est abouti de ce qui reste à finir. Un dossier créé sans client rejoint les non classés ; choisir le client plus tard le reclasse au prochain enregistrement.
  • La sauvegarde de fond est silencieuse par construction : interrompre l'expert avec une erreur ferait plus de mal que l'oubli qu'elle prévient. L'échec reste visible en console, et l'enregistrement explicite — export, publication — le signale.
v1.6.182
  • Un dossier rouvert n'était pas le dossier signé. La sauvegarde ne conservait que les champs de formulaire — 187 identifiants —, et aucune position de curseur de décote. Or la règle du produit est « la décote appliquée = la position du curseur » : à la réouverture, les curseurs se repositionnaient sur des suggestions recalculées, donc sur une valeur différente de celle du rapport remis. Ce n'était pas une gêne d'ergonomie, c'était un rapport non reproductible.
  • Sont désormais enregistrés avec le dossier : les positions de curseurs et leurs justifications, les ventes comparables avec les retenues, les écartées et celles saisies à la main, l'analyse de marché déjà rédigée, et la provenance de chaque donnée extraite des documents. Rouvrir ne relance donc ni recherche web, ni lecture de pièces.
  • Le recalcul de réouverture jetait ce qui venait d'être restauré. Il repartait sur une nouvelle requête de ventes comparables et ramenait un jeu « toutes retenues », effaçant le tri de l'expert. La signature du jeu est maintenant enregistrée avec lui : elle autorise la réutilisation, et ne cesse de correspondre que si un paramètre du bien a réellement changé — auquel cas refaire la recherche est le comportement voulu.
  • Les curseurs restaurés sont tenus pour réglés par l'expert, y compris ceux qui suivaient une suggestion au moment de l'enregistrement. Ce qui a été signé prime sur ce que le moteur suggérerait aujourd'hui ; le bouton ↺ de chaque ligne permet de revenir à la suggestion courante.
v1.6.181
  • L'assistant redemandait le type de bien, la cave et le parking malgré les documents. La cause n'était pas la lecture des pièces mais son enregistrement : quand un document confirmait une valeur déjà présente à l'écran, la fonction d'application sortait immédiatement — sans noter que le fait était établi. Le fait n'était donc « documenté » nulle part, et la question repartait. Le défaut frappait exactement les champs à valeur par défaut — type de bien présélectionné, cave et parking à « non » —, c'est-à-dire ceux dont on se plaint qu'ils reviennent toujours. Une confirmation par document est désormais tracée comme telle.
  • Le tableau des ventes comparables n'affiche plus que les ventes retenues . Ce sont elles qui fabriquent la valeur : elles doivent se lire sans défiler. Les écartées passent dans un volet repliable — sur un secteur dense elles étaient dix fois plus nombreuses et repoussaient hors écran le tableau qui compte — et restent cochables pour être réintégrées.
  • La fenêtre d'export se ferme d'elle-même une fois les formats produits, après un bref instant pour lire la confirmation. En cas d'échec elle reste ouverte : refermer emporterait le message d'erreur.
  • L'analyse de marché ne s'affiche plus sous le lien de téléchargement. Générée pendant l'export, elle part directement dans le rapport ; l'afficher en pleine longueur sous le lien n'apprenait rien — le lecteur vient de demander un fichier, pas un aperçu de son contenu. Le bouton dédié conserve son aperçu, puisque c'est là qu'on relit avant d'intégrer.
v1.6.180
  • La question de relance est réécrite avant d'être cherchée . « Et selon IVS ? » ne contient presque rien d'interrogeable : trois mots dont deux vides, tout le sens étant dans les tours précédents que l'index ne voit pas. Elle est désormais reconstituée en une question autonome avant la recherche.
  • Deux garde-fous. La réécriture ne sert qu'à chercher : la question posée au modèle de réponse reste celle de l'utilisateur, mot pour mot — reformuler ce à quoi on répond serait répondre à côté. Et elle ne se déclenche que s'il y a un historique : une première question est autonome par construction, donc l'immense majorité des échanges ne paie aucune latence supplémentaire. Une réécriture vide, plus courte que l'original ou démesurée est écartée au profit de la question d'origine.
  • Modèle choisi sur le profil de la tâche, pas sur sa qualité générale. La réécriture est mécanique, jetable et bloquante — rien ne cherche tant qu'elle n'a pas répondu : le plus rapide gagne. La synthèse des extraits, elle, garde le modèle le plus nuancé, sa latence étant désormais absorbée par l'affichage au fil de l'eau.
v1.6.179
  • Le diagnostic de reclassement était enregistré mais invisible. Le panneau de suivi n'affiche qu'un seul sous-libellé — l'action prend le pas sur l'intention —, or le diagnostic y avait été rangé dans l'intention : il disparaissait dès qu'une action était en attente. Le sort du reclassement s'affiche maintenant dans la colonne principale, lisible sans survol : *appliqué*, *échec → ordre de fusion*, ou *non sollicité*.
v1.6.178
  • Une question sur une norme étrangère renvoyait des références à la Charte. Deux mécanismes s'y ajoutaient. Le nom du fichier est une colonne indexée du plein-texte : écrire « TEGoVA » faisait correspondre les 186 pages de ce document à égalité — un signal parfaitement plat, qui n'ordonne rien et noie les vrais indices. Et l'étage sémantique, saisi d'une question en français, rapproche naturellement les pages françaises : le référentiel français sortait donc en tête même quand la question désignait explicitement une norme anglophone.
  • La question qui nomme une norme restreint désormais la recherche à ce document . Les synonymes d'usage sont reconnus : un expert écrit « Red Book » ou « IVS » aussi souvent que « RICS ». Les mots ayant servi à cibler sortent de la recherche plein-texte, puisqu'ils y matchaient chaque page du document ciblé sans rien départager. Norme citée mais non ingérée : aucune restriction, mieux vaut répondre depuis ce qu'on a que ne rien trouver.
  • Consigne de périmètre à l'assistant : le référentiel structuré de l'application reflète la Charte française et ne doit pas servir à répondre au nom d'une autre norme. Si les extraits de la norme demandée ne couvrent pas le sujet, il doit le dire plutôt que de puiser ailleurs.
  • Le reclassement était invisible du moniteur — et pour cause : il s'exécute côté serveur et ne traverse pas le proxy IA. Un repli silencieux, clé absente ou réponse de forme inattendue, était donc strictement indétectable. La recherche inscrit maintenant sa propre ligne : document ciblé, nombre de candidats de chaque étage, et sort du reclassement — appliqué, en échec, ou non sollicité.
v1.6.177
  • L'étage de reclassement devient commutable, et change de modèle par défaut. Le reclasseur utilisé jusqu'ici est la variante « base » de son auteur, pas la variante multilingue — alors que notre corpus est aux deux tiers en anglais et que les questions arrivent en français. Sa longueur d'entrée n'est d'ailleurs pas documentée : forte présomption qu'elle plafonne bien en dessous d'une de nos pages, ce qui reproduirait un étage plus loin la troncature corrigée en 1.6.173. Le nouveau défaut annonce un contexte supérieur à la page la plus longue et une couverture de plus de cent langues.
  • Quatre implémentations derrière une constante — reclasseur hébergé, deux distants, ou aucun. La question « lequel classe le mieux nos questions » ne se tranche pas sur des fiches produit : elle se mesure, et changer de bras d'essai ne doit pas demander de réécrire quoi que ce soit.
  • Deux replis en cascade : si le reclasseur distant est indisponible, celui du binding prend le relais ; s'il échoue aussi, l'ordre de la fusion tient. Un reclassement est un tri, jamais un filtre — il ne doit en aucun cas faire disparaître un résultat.
  • Lecture de la réponse écrite tolérante aux variantes de forme (/, /, /) : la documentation du fournisseur n'étant pas lisible, mieux vaut accepter plusieurs formes que parier sur une seule.
v1.6.176
  • Les justifications d'ajustement s'écrivent dans le champ, sous les yeux de l'expert . Rien d'autre ne change : la valeur définitive est reprise à la fin, et l'expert reste libre de tout réécrire.
  • Lecture du flux extraite en une implémentation unique, partagée par toutes les surfaces qui diffusent. Trois copies du même découpage d'événements auraient divergé au premier correctif — c'est exactement le travers déjà évité côté serveur pour le journal de coût.
  • Ce qui n'est volontairement PAS diffusé, et pourquoi. L'assistant de collecte : ses réponses sont composées localement à partir des informations extraites, aucun modèle ne les rédige — il n'y a rien à diffuser. Les trois analyses de l'analyse guidée : elles sont produites en parallèle puis assemblées en un seul document, donc aucune n'a de destination où s'afficher progressivement. L'analyse de marché : sa réponse porte les sources citées dans le rapport, et la documentation ne garantit pas qu'elles survivent au découpage en flux — on ne troque pas une source traçable contre un confort d'affichage.
v1.6.175
  • La réindexation butait sur un plafond en cours de route, et la relancer n'y changeait rien. Le premier passage complet s'est arrêté à 500 vecteurs sur 662 : les lots du début passaient, tout ce qui suivait échouait — reprises unitaires comprises. Relancer ne servait à rien, puisque le même passage rebutait au même endroit après avoir reconsommé le début. La réindexation se fait désormais par tranches, chacune étant une invocation distincte avec ses propres limites, que l'interface enchaîne en affichant la progression.
  • Les échecs étaient comptés sans être expliqués. Un nombre seul oblige à deviner après coup : plafond de débit, texte refusé, index indisponible se ressemblent tous quand il ne reste qu'un compteur. Le premier message d'erreur remonte maintenant jusqu'à l'écran.
  • Le décompte de documents porte sur l'ensemble du périmètre et non sur la dernière tranche — il aurait sinon annoncé « 1 doc(s) » à la fin d'un corpus qui en compte trois.
v1.6.174
  • Une réindexation partielle ressemblait trait pour trait à une réindexation réussie. Un lot d'embeddings en échec était avalé sans un mot : même nombre de documents, aucune erreur, un index simplement amputé de quelques pages. Le compte-rendu affiche désormais le total visé à côté du réalisé, et signale explicitement l'écart. C'est le même travers que les défauts corrigés en 1.6.173 — ce qui ne se voit pas ne se corrige pas.
  • Reprise unitaire des lots en échec : un lot échoue presque toujours à cause d'un texte, pas des dix. Les reprendre un par un sauve les neuf autres, au lieu de perdre le lot entier. L'opération est manuelle et rare : la lenteur y est sans conséquence.
  • Lots d'embedding ramenés à dix textes, les textes étant désormais quatre fois plus longs.
v1.6.173
  • 70 % des pages de référentiel n'étaient vectorisées qu'en partie. La troncature avant embedding était fixée à 2 000 caractères, très en dessous de ce que le modèle accepte. Mesuré sur la base réelle : 467 chunks sur 662 dépassaient ce seuil, page moyenne à 2 210 caractères, la plus longue à 5 017. Le bas de ces pages n'existait donc pas dans l'index sémantique. Seuil porté à 8 000. Une réindexation est nécessaire pour que le correctif prenne effet — bouton *Réindexer* de l'onglet Admin.
  • La recherche hybride n'était pas une fusion, mais un empilement. Le plein-texte ne s'exécutait que « s'il restait de la place » après le sémantique : avec la limite par défaut, un étage sémantique complet l'empêchait de tourner. Une question à formulation exacte — *indemnité d'éviction*, *article 606* — pouvait ainsi être battue par des voisins approximatifs, et le terme littéral rester introuvable. Combiné au défaut ci-dessus, du contenu était inatteignable par les deux voies à la fois. Remplacé par une fusion réciproque : les deux étages tournent toujours, ramènent large, et le rang final dépend des deux sans qu'aucun ne puisse évincer l'autre.
  • Second tri des résultats par un modèle de reclassement. Là où deux vecteurs calculés séparément se ressemblent, un modèle qui lit la question et le passage ensemble tranche. Appliqué au tas fusionné, jamais à l'index entier. Repli silencieux sur l'ordre de la fusion en cas d'échec : un reclassement raté ne doit jamais faire disparaître un résultat.
  • Expansion de contexte aux pages voisines . Une règle de norme enjambe souvent un saut de page — la définition finit en bas d'une page, sa condition d'application commence en haut de la suivante. Le modèle reçoit maintenant la page retenue encadrée de ses voisines. La page citée reste celle du résultat : l'expansion nourrit la lecture, elle ne déplace pas la référence.
  • Réponses de l'assistant référentiel affichées au fil de l'eau . L'écran restait figé pendant toute la génération. Réservé aux surfaces conversationnelles : une extraction qui rend du JSON n'a rien à montrer avant d'être complète. Aucun garde-fou n'est affaibli — le refus « mode opposable », l'allowlist de modèles, le quota et le mur payant portent tous sur la requête et se prononcent avant le moindre appel modèle.
  • Comptabilité du coût préservée en flux. En streaming l'usage n'arrive qu'au dernier événement : le serveur dédouble le flux, laisse passer l'octet vers le client et retient le décompte pour l'écrire après coup. Journal et compteurs extraits en une seule fonction partagée par les deux chemins — deux copies auraient divergé au premier correctif, et une comptabilité qui diverge ne se remarque pas avant la facture.
  • Trois accès à la base économisés par requête : les résultats du plein-texte portent déjà leur texte, et les corps manquants se récupèrent en une requête au lieu d'une par résultat.
v1.6.172
  • L'assistant référentiel prend son propre modèle — il partageait celui du chat d'expertise, ce qui empêchait de faire évoluer l'un sans l'autre alors que les deux tâches n'ont rien de commun : l'un extrait des champs d'une phrase, l'autre synthétise des extraits normatifs. Depuis qu'il est facturé et que son volume reste faible — quelques questions par dossier —, la nuance prime sur la latence : un modèle qui confond ce que dit la Charte et ce que dit RICS coûte plus cher qu'une seconde d'attente.
  • Le mur payant reconnaît le nouveau modèle : sans cette mise à jour, l'assistant référentiel serait redevenu gratuit en silence. Vérifié sur les cinq familles — les deux chats sont gardés, extraction, analyse guidée et analyse de marché restent ouvertes.
v1.6.171
  • Le chat redemandait des faits que l'extraction ne cherchait pas. Balcon, loggia, combles, mezzanine et jouissance exclusive ne figuraient nulle part dans le schéma d'extraction : l'assistant les demandait donc systématiquement, alors qu'un titre de propriété ou un règlement de copropriété les désigne presque toujours. Le défaut n'était pas le questionnaire, c'était ce qu'on donnait à lire au modèle.
  • Consigne de recherche explicite ajoutée pour les annexes surfaciques : les chercher activement dans la désignation des lots du titre et du règlement, et sur les plans lorsqu'ils sont cotés. Avec un garde-fou : renseigner la surface quand elle est écrite ou calculable, jamais l'estimer. Même chose pour l'ascenseur, déductible des charges du règlement, d'un PV d'AG ou du DPE.
  • Jouissance exclusive détectée : lorsqu'un document précise qu'une annexe est une partie commune à usage privatif, l'information est extraite — elle conditionne le coefficient de pondération.
v1.6.170
  • L'assistant conversationnel et les référentiels deviennent des fonctions payantes . Les deux gardes sont posées dans les endpoints, pas dans l'interface : masquer un onglet n'empêche pas d'appeler une URL. Réponse 402 Paiement requis, distincte du 401 « non connecté », pour que l'interface propose l'abonnement au lieu de renvoyer vers une page de connexion.
  • Ce qui reste ouvert, et pourquoi : la lecture des documents, le moteur d'expertise et la rédaction du rapport. Ce sont eux qui produisent la valeur — la conversation n'est qu'une façon commode de la nourrir. L'assistant se reconnaît côté serveur à la famille de modèles qu'il demande, la seule qu'il utilise ; un client qui trafiquerait ce champ n'obtiendrait pas le chat mais un autre modèle, donc la triche ne rapporte rien.
v1.6.169
  • Le coefficient de pondération d'une annexe est cité avec sa source. La ligne du rapport indiquait sans dire d'où venait le 0,20. Elle précise désormais « ratio de référence de la Charte (6ᵉ éd., surfaces annexes) » lorsque c'est celui-là, et « coefficient de la catégorie retenue » lorsque l'expert a choisi une catégorie plus fine (loggia, toit-terrasse, balcon). Un lecteur qui conteste une pondération doit pouvoir remonter au référentiel, pas seulement constater un multiplicateur.
  • Précision méthodologique : le ratio de 0,20 de la Charte s'applique à une terrasse y compris en jouissance exclusive — cas courant en copropriété, où la surface est une partie commune à usage privatif. Ce n'est pas une valeur de pleine propriété à réduire ensuite : lui appliquer une décote supplémentaire pénaliserait deux fois le même fait.
v1.6.168
  • Le non-cumul est appliqué d'office : le curseur porte la décote NETTE . Les curseurs affichaient les valeurs pleines, et un bouton les remplaçait par les valeurs amorties. Le curseur ne montrait donc pas ce qui frappait la valeur — en contradiction directe avec la règle du produit : *la décote appliquée est la position du curseur*. Un expert doit pouvoir pointer l'écran, pas expliquer qu'il faut d'abord cliquer ailleurs.
  • La carte de corrélation devient une explication, plus une proposition : elle montre le passage du plein au net, facteur par facteur — « lumière −7 % gardée à 100 %, exposition −5 % → −2 % (×50 %) ». Le bouton « Appliquer » disparaît, il n'y a plus rien à appliquer.
  • Aucun double compte : la cascade ne ré-amortissait déjà pas (, « somme brute des valeurs nettes »). Le chiffre appliqué est identique à celui d'avant après un clic sur le bouton — il est simplement affiché au bon endroit dès le départ. Un bouton « Assumer le cumul intégral » subsiste pour l'expert qui veut cumuler en entier, et devra le justifier.
v1.6.167
  • Le cadre de la mission manquait au rapport Charte FR. La section existe — pièces reçues, pièces manquantes, visite, finalité, hypothèses et limitations saisies par l'expert — mais elle n'était listée que pour TEGoVA, RICS et USPAP. La section finale « hypothèses & réserves » supposait pourtant explicitement que « le cadre de la mission est en I » : il n'y était pas. Elle y est.
  • Le détail du calcul de surface pondérée était filtré hors du rapport. J'avais exclu les lignes commençant par « Valeur : » pour supprimer un doublon — c'était précisément la ligne qui montre , donc la traçabilité que la 1.6.153 avait ajoutée. Le calcul des annexes réapparaît, ligne par ligne.
  • Le bloc « Analyser la rentabilité de cet achat ? » quitte la façade expertise : le dashboard investisseur vit sur renta.immo.
v1.6.166
  • Le moniteur d'appels étiquetait mal. Le libellé d'action posé en 1.6.155 n'était jamais remis à zéro : un appel qui n'en posait pas héritait de celui du précédent. Une analyse de marché s'affichait donc comme « Extraction documentaire — 10 pièces ». Le libellé est désormais consommé par l'enregistrement, et chaque famille d'appel pose le sien — analyse de marché, reformulation de question, lecture d'une pièce, justification d'ajustement, analyse guidée. Un appel non étiqueté affiche ce qu'il est : rien, plutôt qu'une étiquette empruntée. Un moniteur qui se trompe est pire qu'un moniteur muet, parce qu'on le croit.
v1.6.165
  • L'export ne produisait plus rien — régression de la 1.6.156. Le choix des formats s'affichait sous le bouton au lieu d'une fenêtre, et le lien de partage était déclenché par un clic programmatique sur un bouton situé dans un conteneur masqué : un pari sur le navigateur, qui ne tenait pas. La publication est désormais une fonction appelée directement. Au passage, le garde-fou pré-export s'exécutait deux fois lorsqu'on demandait le lien — une fois par l'orchestrateur, une fois par l'ancien bouton.
  • Une vraie fenêtre modale : superposition centrée, fermeture par la croix, par le fond ou par Échap. Le panneau s'ouvrait auparavant en dessous du bouton, ce qui ne se voyait pas sur un écran déjà rempli.
  • Bouton « Analyse de marché » retiré de la barre d'action de l'expertise.
v1.6.164
  • Page Tarifs sur ExpertisIA : trois formules individuelles (découverte, expert indépendant, cabinet) et une formule professionnelle, institutionnelle ou collective assumée comme sur mesure — en volume comme en fonctionnalités. Un tarif public n'aurait de sens ni pour une collectivité traitant des centaines d'évaluations par an, ni pour un éditeur qui veut afficher une valeur dans son propre logiciel.
  • Ce qui se discute est écrit : volume, fonctions utiles aux équipes, référentiel imposé par le secteur, et surtout intégration au système d'information — accès applicatif, reprise des données, restitution dans les écrans du client, rapport à sa charte. Quatre publics nommés : services d'urbanisme et collectivités, courtiers et financeurs, éditeurs de logiciels notariaux et juridiques, promoteurs et aménageurs.
  • Un engagement figure sur la page : le moteur de valorisation est le même dans toutes les formules. Ce qui se paie, c'est le volume, l'intégration et l'accompagnement — jamais la qualité du calcul. Et dans toutes, l'IA ne donne jamais d'avis sur la valeur.
v1.6.163
  • La garde est côté serveur. La recherche inversée d'annonce est verrouillée dans l'endpoint lui-même : masquer un bouton n'a jamais empêché d'appeler une URL.
  • renta.immo : page Tarifs (gratuit vs abonnement, et la raison assumée de trois dossiers complets plutôt qu'une démonstration bridée), maquette d'écran sur l'accueil, et liste des quatorze indicateurs repliée — elle rassurait, mais quatorze lignes en pleine page repoussaient avant de convaincre.
  • verifplu.immo : page d'attente. Le domaine figurait déjà dans le pied des cinq autres sites, il ne pouvait pas renvoyer une erreur.
v1.6.162
  • Le tableau des ajustements donne le montant en euros . Il n'affichait que des pourcentages : un lecteur devait multiplier lui-même pour savoir ce qu'une ligne coûtait. Une colonne Impact (€) donne le montant, calculé sur la valeur brute qui sert de base à la cascade — parce que c'est le montant, pas le pourcentage, qui se discute avec un contradicteur.
  • Trois provenances au lieu de deux. La colonne Source opposait « Donnée objective » et « Appréciation expert ». Il manquait le cas devenu fréquent depuis la lecture des plans : « Relevé sur pièce » — un constat mesuré sur un document communiqué, qui n'est ni une donnée de saisie ni une appréciation, et qui se vérifie en rouvrant la pièce à la page indiquée.
  • Une limite écrite plutôt que tue : lorsque le plafond d'une famille s'applique (−45 % en commercialité), la somme des lignes peut excéder l'effet réellement retenu sur la valeur. La note sous le tableau le dit désormais, au lieu de laisser un lecteur attentif découvrir l'écart et douter du reste.
v1.6.161
  • Le motif de l'ajustement « Plan / Distribution » n'apparaissait nulle part. La 1.6.160 pré-positionnait le curseur à partir de la lecture du plan et calculait la justification de chaque point du barème — mais elle restait en mémoire, sans jamais être écrite. Un curseur déplacé et rien pour l'expliquer à un lecteur : exactement ce que le produit s'interdit. Le motif alimente désormais la colonne Justification du tableau « Ajustements appliqués » : « Relevé sur le plan communiqué : Chambre 2 : 7,2 m² — sous le seuil de décence de 9 m² → −5 % · Circulation : 14,1 % de la surface → −3 %. Barème fixe ; position du curseur validée par l'expert. »
  • Un texte rédigé par l'expert n'est jamais écrasé : la justification automatique ne s'écrit que sur un champ vide ou sur une précédente justification automatique.
v1.6.160
  • Vision — étage 3 : la lecture du plan alimente le curseur . Le curseur « Plan / Distribution » existait mais valait en dur, faute de données. Les constats de l'étage 2 le pré-positionnent désormais selon un barème fixe et lisible : chambre sous le seuil de décence −5 %, chambre petite −2 %, séjour réduit −2 %, cuisine non meublable −1 %, circulation excessive −3 %, mono-orienté −3 %, nord −2 % · traversant +3 %, plein sud +2 %. Le cumul est écrêté aux bornes du curseur, lues dans la configuration réelle et non recopiées.
  • Le principe reste intact : c'est une suggestion, pas une décote automatique. La valeur appliquée demeure la position du curseur, que l'expert déplace. Chaque point du barème voyage avec son motif écrit — « Chambre 2 : 7,2 m² — sous le seuil de décence de 9 m² → −5 % » : un curseur pré-positionné sans justification serait exactement le genre de valeur indéfendable que le produit cherche à éviter. À constats identiques, suggestion identique : l'ajustement est reproductible.
  • Fiches renforcées sur dico.immo — *Taux de capitalisation* et *Taux de capitalisation de sortie* : l'hypothèse de perpétuité que la formule dissimule, l'écart structurel entre taux d'entrée et taux de sortie (25 à 75 points de base), et surtout les ordres de grandeur français — 2,5 à 4 % pour un résidentiel parisien de qualité, là où la littérature anglo-saxonne évoque 5 à 10 % pour du commercial américain. Importer cette fourchette diviserait une valeur parisienne par deux.
v1.6.159
  • Vision — étage 2 : lecture du plan . Le modèle relève ce qui est écrit sur le plan : nom et surface de chaque pièce (cotée, ou calculée depuis les cotes), orientation si une flèche nord figure, ouverture sur deux façades, surface de circulation, et un score de lisibilité des cotes. Consigne explicite : *« n'estime pas une surface non cotée »* et *« tu mesures, tu ne juges pas »*.
  • La confrontation aux standards est faite par le moteur, pas par le modèle : chambre sous le seuil de décence de 9 m² (décret n° 2002-120), chambre sous les 11 m² attendus par le marché, séjour réduit, cuisine non meublable, circulation au-delà de 12 % de la surface, logement traversant ou mono-orienté, orientation nord. Le rapport affiche le relevé, les constats, et l'écart entre la somme des pièces et la surface retenue. Aucun euro ni pourcentage de décote à ce stade : l'ajustement restera au curseur de l'expert — une appréciation sortie d'un modèle de langage ne serait ni reproductible ni rattachable à une méthode.
  • Le monogramme « AP » subsistait sur les autres domaines : le nom affiché était bien corrigé en 1.6.157, mais le logo Appraise Paris restait à côté, contredisant le nom. Il est masqué hors appraiseparis.com, et le titre de l'onglet suit la marque.
  • Garde-fou d'initialisation : l'application est servie par un script externe depuis la 1.6.30. Si était déjà passé à son exécution, ni la façade ni la marque ne s'appliquaient. Les deux sont désormais appliquées immédiatement lorsque le document est déjà prêt.
v1.6.158
  • Vision — étage 1 : les pièces vues à l'intérieur d'un fichier comptent . Le classement des pièces reposait sur le seul nom de fichier : un plan d'implantation contenu dans un dossier de diagnostic technique était vu par le modèle mais la catégorie « Plans » restait comptée manquante. Même mécanisme que le bug DDT de la 1.6.152, un étage plus haut. Le modèle renseigne maintenant — type, fichier, page, détail — et le cadre de la mission en tient compte : la pièce est déclarée fournie, avec sa source citée.
  • Le rapport dit où la pièce a été reconnue : un bloc « Pièces reconnues dans les documents » liste chaque élément avec le fichier et la page où il a été vu (« Plans — dans NOUVEAU DDT.pdf, page 4 · plan coté, 3 pièces »). Une affirmation vérifiable, pas une case cochée.
  • Garde-fou d'écriture du prompt : « si tu n'as pas vu la pièce, ne la liste pas ». Une pièce inventée serait pire que la pièce manquante qu'elle prétend combler. Correspondance type → catégorie vérifiée sur 11 libellés.
v1.6.157
  • L'application porte la marque de son domaine : « renta.immo » sur app.renta.immo, « ExpertisIA » sur expertisia.immo, « Appraise Paris » ailleurs. L'en-tête affichait « Appraise Paris » quel que soit le site — de quoi croire qu'on s'était trompé de produit.
v1.6.156
  • Un seul export, plusieurs formats : le bouton ouvre un choix à cocher — fichier PDF, fichier Word, lien de partage — et produit en une passe tout ce qui est demandé. Le menu déroulant à trois entrées séparées disparaît.
  • La validation préalable ne se rejoue plus à chaque format. Chaque export étant auparavant un bouton distinct, demander le PDF après avoir généré le lien relançait toute la séquence de confirmations (validation, analyse de marché, multi-situations). Elle s'exécute désormais une fois pour l'ensemble des formats cochés.
  • Précision affichée dans la fenêtre : la génération ne rappelle aucun modèle. Elle met en forme un rapport déjà calculé — aucun crédit d'analyse n'est consommé, quel que soit le nombre de formats produits.
v1.6.155
  • Le moniteur IA dit ce qui a été fait, et plus seulement quel modèle a répondu. Chaque appel porte désormais son action réelle — « Extraction documentaire — 5 pièce(s) · PV d'AG, titre de propriété », « Notes de l'expert — relecture avant calcul », « Chat — texte libre », « Rédaction — justification d'un ajustement » — au lieu de la seule catégorie / , qui ne disait ni ce qui avait été traité, ni sur quoi. La route (passerelle utilisée) et l'état du cache étaient déjà captés à chaque appel sans jamais être affichés : ils apparaissent sous la ligne. Panneau admin uniquement, comme avant.
v1.6.154
  • Le chat ne redemande plus ce que les documents disent déjà. Les questions se répartissent maintenant en deux natures. Les faits documentables — type de bien, surface, pièces, étage, ascenseur, terrasse, cave, parking, DPE, loyer, occupation — ne sont plus posés dès lors que l'IA les a explicitement extraits d'une pièce : les reposer faisait perdre du temps et ouvrait la porte à un conflit entre la réponse et le document. Ils restent posés si le dossier est incomplet, en double vérification. Les questions subjectives, qu'aucun document ne contient, sont toujours posées.
  • Question « nuisances sonores » (rue passante, voie ferrée, bar, chantier) : le champ existait dans le moteur mais n'était jamais demandé. C'est précisément le genre d'information qu'aucune pièce ne porte et que seule la visite révèle.
  • Les notes libres de l'expert sont lues avant le calcul : hypothèses et limitations contiennent souvent des faits — « terrasse 12 m² côté cour », « pas de cave », « vue dégagée » — qui n'étaient recopiés dans le rapport que sous forme de texte, sans que le moteur les voie. Elles passent désormais par le même extracteur que le texte libre du chat, en priorité expert.
  • Comparables : les retenus d'abord. Le rapport listait l'intégralité des ventes remontées par la recherche, noyant la démonstration. Il affiche maintenant le panel retenu, et place les ventes écartées dans un bloc dépliable qui explique pourquoi elles le sont (surface, date, distance ou €/m² hors bornes). Elles restent consultables — c'est ce qui permet de vérifier qu'on n'a pas trié pour arriver au chiffre voulu.
v1.6.153
  • Une cave apparaissait dans le rapport alors qu'elle avait été explicitement niée. Ce n'était pas une hallucination : considérait qu'un champ valant était vide. Or sur un booléen — cave, parking, ascenseur — est la réponse « Non », donc une réponse explicite. Un document mentionnant une cave écrasait donc en silence le « non » de l'expert, sans même signaler de conflit. Sur un , seule une valeur absente compte désormais comme vide ; et une réponse donnée en conversation marque le champ comme saisi, de sorte qu'un document divergent lève un conflit arbitré au lieu d'écraser.
  • Surface pondérée globale — conformément à la Charte de l'expertise, 6ᵉ éd. (nov. 2025), p. 93 : les surfaces annexes sont pondérées et intégrées à la surface du bien, et la valeur au m² s'applique à cet ensemble. Les ajustements qualitatifs (état, DPE, étage, vue) portent donc sur la valeur totale, et non plus sur le seul corps principal — les annexes surfaciques étaient jusqu'ici sorties de la cascade puis ré-ajoutées non décotées.
  • Chaque annexe montre son calcul : , puis . Plus aucun montant d'annexe sans sa formule. Les annexes forfaitaires (parking, box, piscine, cave sans surface) restent hors surface pondérée et le disent : leur valeur de marché ne dépend pas du DPE du logement.
v1.6.152
  • Un document fourni était déclaré manquant. Le classement par nom de fichier ignorait le sigle DDT (dossier de diagnostic technique) : la pièce tombait dans « Autres », et le cadre de la mission affirmait ensuite que les diagnostics n'avaient pas été communiqués — donc que la valeur était donnée sous cette réserve. Un sigle non reconnu ne range pas seulement mal une pièce : il fait mentir le rapport. Reconnaissance élargie à DDT, audit énergétique, mesurage, EDD, état daté, appel de fonds, modificatif, origine de propriété, attestation, servitude, congé, préavis. Vérifié sur 12 noms de fichiers réels.
  • Section « Pièces et documents » en deux temps : d'abord les types de pièces communiquées avec leur nombre — ce qu'un lecteur veut savoir en premier, et ce qui conditionne la portée de l'expertise —, puis la liste des fichiers reçus, nom et extension conservés, pour que le dossier soit rapprochable pièce à pièce.
  • Fin de la redondance sur le référentiel. Il était énoncé trois fois : la ligne « Référentiel » du tableau, un encadré juste dessous qui répétait son nom et son édition — et qui, pour RICS et TEGoVA, ne disait rien d'autre —, puis une réserve en fin de valeur qui le répétait une troisième fois avec l'expression de la valeur. Le tableau gagne deux lignes, Conformité et Expression de la valeur, adaptées par norme et référant au référentiel sans le renommer ; les deux encadrés disparaissent. La déclaration de conformité formelle exigée par RICS et TEGoVA reste dans sa section dédiée.
v1.6.151
  • Régression : expertisia.immo n'affichait plus que le Deal Check. Le passage par posait un cookie de façade valable 30 minutes, qui prenait ensuite le pas sur le nom d'hôte — l'application servait donc la façade investisseur sur le domaine de l'expertise. Le mécanisme, conçu pour survivre à l'écran de connexion, débordait sur les visites suivantes.
  • La façade forcée devient à usage unique : le paramètre et le cookie sont lus une fois, puis le cookie est effacé immédiatement et la mémoire de session purgée. Le nom d'hôte redevient la règle dès la visite suivante. Aucune action n'est requise des utilisateurs déjà touchés : le simple rechargement nettoie l'état.
v1.6.150
  • Le pied de page commun était illisible : sur dico.immo et 75.immo, aucune règle CSS ne visait les liens du pied — ils héritaient du corps à 16 px et s'enchaînaient en ligne, sans respiration. Le module porte désormais son propre CSS , neutre en couleur, greffé sur les cinq chartes : nom du site et description sur deux lignes, tailles fixées, espacement réel.
  • La colonne Éditeur s'allège : elle ne portait plus seulement l'identité mais l'adresse complète et l'hébergeur, répétés sur chaque page. La loi demande que l'information soit accessible, pas qu'elle soit dupliquée partout : le pied garde raison sociale, SIRET et RCS, et renvoie aux mentions légales complètes — où adresse, hébergeur et directeur de publication figurent déjà.
  • L'adresse e-mail n'est plus un lien : écrite à l'envers dans le HTML et remise à l'endroit par le CSS. Un moissonneur lit une chaîne inversée, un lecteur lit l'adresse et peut la copier. Ce n'est pas inviolable, mais ça arrête les robots naïfs — l'essentiel du spam — et il n'y a plus de à suivre.
  • La landing ExpertisIA n'avait pas le pied commun : c'est une page écrite à la main, elle avait donc dérivé. l'injecte depuis la même source, entre marqueurs, en produisant les pour que la bascule FR/EN continue de fonctionner.
  • La maquette du hero montrait le dashboard investisseur, parti sur renta.immo. Elle montre désormais une expertise — valeur vénale, fourchette, comparables, décotes — ce que le produit vend.
v1.6.149
  • Un pied de page unique pour tout le réseau : éditeur, responsabilité, réseau et mentions légales viennent désormais de , une source unique. Chaque site garde son habillage, mais plus son propre texte : une adresse ou un avertissement corrigé l'est partout. Les sept entités du réseau y figurent, agence GIM.immo comprise, et un site ne se cite jamais lui-même. Contrepartie assumée : 75.immo conserve en plus l'attribution cartographique OpenStreetMap, qui est une obligation de licence propre à ce site.
  • Le réseau quitte les menus : un menu qui envoie ailleurs fait sortir. Les renvois croisés disparaissent des barres de navigation de 75.immo et dico.immo ; le réseau reste accessible, complet, en pied de page.
  • Landing ExpertisIA : la maquette montrait encore , le texte disait « Appraise Paris les agrège » et le pied affichait un dashboard d'expertise ainsi qu'une expertise commerciale à venir — tout cela a suivi l'éclatement. « Expertises » renvoie maintenant au cabinet.
v1.6.148
  • Connexion impossible sur expertisia.immo, sans issue : le widget anti-robot n'autorisait que les domaines historiques, donc il ne se chargeait pas sur le domaine de production d'ExpertisIA. Sans jeton, le formulaire refusait de partir, avec pour seul message « patientez une seconde puis réessayez » — faux, et sans fin. Un intercepte désormais l'échec du widget et affiche la cause réelle, le domaine concerné, le code d'erreur et l'adresse à contacter. La vérification elle-même n'est pas affaiblie : le jeton reste exigé et contrôlé côté serveur. ⚠️ Le déblocage définitif est une action propriétaire — ajouter le domaine à la liste du widget Turnstile.
  • L'écran de connexion prend la marque du domaine : « ExpertisIA » sur expertisia.immo, « renta.immo » sur renta.immo, « Appraise Paris » ailleurs — titre de l'onglet compris. Un écran « Appraise Paris » sur expertisia.immo laissait croire qu'on s'était trompé d'adresse.
v1.6.147
  • La façade se perdait à la connexion : l'écran de connexion consomme l'URL, donc un visiteur venu de renta.immo mais non connecté repartait sur la façade d'expertise. Le middleware pose désormais un cookie de 30 minutes (un nom de façade, aucun droit, aucune donnée personnelle) que l'application relit au démarrage.
v1.6.146
  • Le bandeau « staging » s'affichait sur expertisia.immo : la liste des domaines de production n'avait pas suivi l'éclatement du site et ne connaissait que . Tout autre domaine — donc le domaine de production d'ExpertisIA — déclenchait le bandeau rayé orange. Corrigé dans la landing et dans l'application ; est ajouté par anticipation. Ce n'était pas une redirection vers staging : le site servi était bien le bon.
  • « Ouvrir l'outil » ne menait nulle part depuis renta.immo : renta.immo est un site statique et n'héberge pas l'application, si bien que retombait sur la page d'accueil. Le domaine renvoie désormais vers l'application avec , qui ouvre la façade investisseur. Choix assumé de ne pas déployer une seconde copie de l'application : la session est portée par le domaine qui l'héberge, une copie obligerait à se reconnecter et ferait diverger deux déploiements.
  • La façade se lit maintenant depuis (domaine ou paramètre , mémorisé le temps de la session) au lieu du seul nom d'hôte. Rappel : c'est une segmentation produit, pas une frontière de sécurité — les droits réels restent portés par la session et les endpoints serveur.
v1.6.145
  • Landing recentrée sur ExpertisIA : la marque devient ExpertisIA, « IA » en majuscules. Fin du « un outil, trois métiers » : le dashboard investisseur part sur renta.immo, l'inspection est reportée, et l'annonce d'un outil d'évaluation de l'immobilier commercial est retirée.
  • Deux modes expliqués : le mode expert (parcours en cinq étapes, chaque curseur piloté, chaque décote chiffrée) et le mode chat (l'assistant interroge en langage courant, lit les documents déposés et en extrait les faits). Même moteur derrière les deux — seule la façon de le nourrir change.
  • Le rôle exact de l'IA, écrit noir sur blanc : elle ne donne jamais d'avis sur la valeur, parce qu'une valeur produite par un modèle de langage n'est ni reproductible ni rattachable à une méthode — donc indéfendable. Elle collecte (lit les documents et en extrait les faits), tient la cohérence (un fait énoncé une fois est repris partout) et surtout traque les incohérences — précisément ce qu'une partie adverse chercherait. Le garde-fou serveur qui refuse toute valeur issue du modèle est mentionné.
  • À qui la solution s'adresse et dans quels cas : experts en évaluation, notaires et avocats, gestionnaires et institutions — pour succession, divorce, donation, IFI, achat/vente, garantie bancaire et litige.
v1.6.144
  • Séparation des outils par domaine : l'application n'expose plus que les fonctions du domaine qui la sert. Expertisia.immo porte les outils d'expertise (Expertisia, AVM, mode expert, mes rapports) ; renta.immo portera le dashboard investisseur (Deal Check, quartier, actualités, sources). Une seule base de code, aucun fork : le filtrage se fait à l'ouverture selon le domaine, avec un garde-fou qui ramène tout mode hors façade vers le premier mode autorisé. Les domaines non listés — dont appraiseparis.com, staging et les préversions — conservent toutes les fonctions, donc rien ne change pour eux.
  • Précision : cette séparation est une segmentation produit, pas une frontière de sécurité — le code servi reste le même et les droits réels demeurent portés par la session et les endpoints serveur.
v1.6.143
  • Lexique migré vers dico.immo : les 136 fiches sont désormais publiées sur dico.immo, enrichies à 143 termes et refondues sur un patron de page de définition (encadré « L'essentiel », sommaire ancré, sections balisées, sources cliquables). Des redirections 301 ( → ) préservent l'intégralité des URLs — attention au changement de format, Appraise servait des fichiers sans barre finale, dico.immo sert des répertoires avec barre finale.
  • Retrait côté Appraise : entrée « Lexique » du menu et du pied des pages générées, liens de la landing, 137 entrées de sitemap, et génération au build. L'infobulle de l'app pointe vers dico.immo. Appraise se concentre sur l'expertise et la valorisation ; la donnée de marché vit sur 75.immo, le vocabulaire sur dico.immo.
v1.6.142
  • Retrait côté Appraise : entrée « Prix immobilier » du menu et du pied des pages générées, liens de la landing, sitemaps segmentés et génération au build. Le build ne produit plus ces 2 562 pages — il est d'autant plus court. Les renvois depuis les pages pointent vers 75.immo.

Semaine du 20 juillet 2026

v1.6.141
  • Marge de négociation observée, chiffrée en euros : chaque page de rue affiche désormais jusqu'à combien un quart des ventes se sont conclues sous le prix médian — l'écart médiane ↔ premier quartile — en pourcentage ET en euros sur un bien à la surface médiane (ex. « jusqu'à −7 %, ~55 000 € sur 62 m² »). Contrairement aux forfaits de la concurrence, c'est une marge réellement observée dans les transactions.
  • Calculatrice « combien de m² pour votre budget ? » : apport + mensualité + taux + durée → capacité d'emprunt puis surface achetable au prix médian (frais de notaire déduits), sur chaque page de rue, d'arrondissement et Paris. 100 % dans le navigateur, instantané.
  • Badges de provenance « Mesuré » / « Estimé » : les données affichées portent un badge distinguant la donnée officielle mesurée (DVF, ADEME, données bâtiment publiques…) du calcul estimé (rendement, estimation) — la traçabilité, rendue visible.
v1.6.140
  • Le « vrai » ratio d'activité : taux de rotation du parc : on rattache désormais à chaque rue son nombre total de logements (base données bâtiment publiques, 1,42 M de logements parisiens) pour calculer un taux de rotation = ventes 2021-2025 ÷ parc. C'est la mesure d'activité que réclamait la logique : contrairement au volume brut, elle ne récompense pas une rue simplement parce qu'elle est longue. Nouveau classement « Les rues où le parc se renouvelle le plus » (Paris + arrondissements), et une phrase de contexte sur chaque page de rue (« ~640 logements ; 6,1 % de rotation sur 5 ans »). Médiane parisienne ~11 % sur cinq ans (~2,3 %/an).
v1.6.139
  • Pages de rue réorganisées autour d'un vrai récit : l'enchaînement suit désormais une logique de lecture — ① le marché de la rue (texte, évolution, typologie, activité), ② situer la rue (positionnement + rues comparables), ③ la rue au quotidien, ④ louer. Fini le démarrage abrupt sur la performance énergétique.
  • Bloc unique « La rue au quotidien » : accès & commodités, cadre de vie, points d'attention et performance énergétique, jusque-là éparpillés en quatre cartes, sont réunis en un seul bloc en colonnes — plus compact et plus lisible.
  • Rendement locatif brut par typologie : l'ancienne phrase unique (une moyenne, en vide) devient un tableau studio / 2P / 3P / 4P+, en location vide ET meublée, calculé au loyer plafond majoré (la fourchette haute, celle que le bailleur vise) rapporté au prix d'achat DVF de la typologie — le tout dans un texte de présentation.
  • Carte de rue corrigée : les tracés débordaient du cadre (« un rectangle avec des rues qui dépassent »). La carte est désormais détourée proprement, et un encart repère l'arrondissement dans Paris pour situer d'un coup d'œil.
  • Bloc chiffres : la statistique de dispersion s'appelle enfin « Fourchette » (avec infobulle), cohérente avec les autres pages.
v1.6.138
  • « Les rues aux immeubles les plus hauts » — enfin les vraies tours : le classement mesurait la hauteur *médiane* (dominante) du bâti et plafonnait à R+11, alors que Paris compte des tours d'habitation de 30+ étages. Il retient désormais le plus haut immeuble bordant chaque voie — Front de Seine (15e), Olympiades (13e), Masséna ressortent à R+33/35. Le profil *dominant* de la rue (« bâti haussmannien R+6 ») reste, lui, affiché tel quel sur la page de rue : les deux mesures sont distinctes et complémentaires.
v1.6.137
  • Classement trafic clarifié (et honnête sur sa couverture) : « Les rues les plus circulées » laissait attendre les grandes avenues (Champs-Élysées, grands boulevards) et les carrefours mythiques (Étoile, Bastille, Concorde). Renommé « Les rues au trafic automobile le plus dense », avec une note qui explique enfin le résultat : la mesure vient des capteurs permanents de la Ville de Paris (couverture partielle), un débit élevé n'est pas synonyme d'avenue prestigieuse — les plus forts débits se concentrent sur les corridors rapides des quais de Seine — et les grands carrefours, qui ne sont pas des voies linéaires, ne peuvent pas y figurer. Les grands axes restent, eux, signalés « axe très circulé » sur leur propre page.
v1.6.136
  • Type de bien lu dans les documents — plus reposé dans le chat : quand un document établissait qu'il s'agissait d'un appartement ou d'une maison mais le formulait autrement (« Maison individuelle », « appartement en copropriété », « studio », « duplex », « T3 », « pavillon »…), la valeur était rejetée en silence (libellé absent du menu déroulant) sans marquer le champ comme connu — et l'assistant reposait la question déjà tranchée par la pièce fournie. Le type est désormais normalisé vers appartement/maison à l'extraction : détecté dans un document, il pré-remplit le champ et n'est plus redemandé. Un type non modélisé (immeuble entier, local, terrain) reste, lui, demandé.
v1.6.135
  • Profil du bâti par rue : chaque page de rue affiche le gabarit dominant des immeubles qui la bordent — R+6/7 haussmannien, R+3 faubourien, immeubles hauts ou récents — calculé sur les volumes bâtis de la Ville de Paris. Nouveau classement « Les rues au bâti le plus haut », Paris et par arrondissement.
  • Circulation apaisée et trafic : les pages de rue signalent les voies piétonnes, zones de rencontre et secteurs Paris Respire (atout de cadre de vie), et à l'inverse les axes circulés avec le trafic mesuré (comptages routiers Ville de Paris).
  • Pages « Prix immobilier » réorganisées : le hub Paris et les hubs d'arrondissement ouvrent maintenant sur un texte d'introduction puis un menu « Sur cette page » (collant), avant la carte. L'ordre des sections — repère cartographique, évolution, activité, typologie, classements, estimation — est désormais identique sur toutes les pages.
  • Classements d'activité renommés : « Les rues les plus actives » ne disait pas ce qu'il mesurait. Le classement au volume devient « Les rues où il se vend le plus de logements » ; celui rapporté à la longueur, « Les rues les plus actives au mètre de voie ». Deux lectures distinctes, deux titres explicites.
  • Numérotation des classements corrigée : sous le podium, le tableau complet repart bien de la 1ʳᵉ (les trois premières y sont reprises) au lieu de reprendre à la 4ᵉ position en affichant « 1 » — la lecture était trompeuse.
v1.6.133
  • Doublons dans les classements de Paris corrigés : une voie qui traverse plusieurs arrondissements (Boulevard Raspail : 6e, 7e, 14e) apparaissait autant de fois, avec la même valeur pour les données rattachées à son nom (arbres, DPE) — Boulevard Arago figurait deux fois avec ses 904 arbres. Désormais une seule entrée par voie, notée « Boulevard Arago (13e, 14e) », l'effectif cumulant les ventes de ses tronçons.
  • Podium et classement complet : tous les palmarès (Paris et arrondissements) ouvrent sur un podium des 3 premières — médaille, nom, valeur — suivi de la liste complète. Plus lisible qu'un simple tableau.
  • Texte d'introduction sur chaque classement : une phrase nomme les trois premières et rappelle la méthode, pour le référencement comme pour le lecteur.
v1.6.132
  • Classement « marché le plus actif au mètre » : le volume brut de ventes favorisait mécaniquement les longues artères (la Rue de Vaugirard, 4,4 km, gagne tout classement de volume). Un nouveau palmarès rapporte les ventes à la longueur de la voie — Paris et par arrondissement. Le classement au volume reste disponible en parallèle.
  • Classements de performance énergétique : les rues avec le plus et le moins de passoires (F ou G), Paris et par arrondissement. Mesurés en pourcentage — deux rues de même longueur peuvent compter un nombre très différent de logements, seul le pourcentage est comparable entre voies.
  • Garde-fou sur la densité : le tracé cartographique d'une voie est parfois fragmentaire (un boulevard remonté à 33 m au lieu de 1 400). Les densités qui en résultaient étaient absurdes (jusqu'à 209 ventes/100 m). Le classement écarte désormais les tracés trop courts pour être complets et les densités physiquement improbables.
v1.6.131
  • Cadre de vie : arbres et marché de quartier : 1 820 voies affichent leur nombre d'arbres d'alignement (« rue très arborée », essence dominante) et le marché découvert le plus proche avec ses jours. 100 702 arbres et 80 marchés rattachés, source Ville de Paris. Critères de fraîcheur et de vie de quartier de plus en plus recherchés.
  • Classements thématiques — Paris et par arrondissement : 42 nouvelles pages de palmarès sur des dimensions inédites — rendement locatif (les rues les plus rentables) et végétalisation (les plus arborées). « Meilleur rendement locatif Paris 11e », « rues les plus arborées de Paris » sont des recherches réelles que nous sommes seuls à pouvoir servir avec des données par voie.
  • Pipeline de données résilient : chaque source (Overpass, open data) peut désormais échouer sans faire perdre tout le run — la valeur précédente est conservée et l'échec signalé. Un plantage d'Overpass en fin de course faisait auparavant perdre les sources déjà récupérées.
v1.6.130
  • Rendement locatif brut par rue : chaque page de rue estime le rendement brut indicatif en croisant son prix médian et le loyer de référence du quartier. L'information n°1 de l'investisseur, et nous sommes les seuls à pouvoir la calculer par voie puisque nous avons déjà les deux données.
  • Caractère de la voie : le texte distingue désormais les rues de petites surfaces (studios, profil investissement) des rues familiales (grands logements), d'après la surface médiane des ventes.
  • Orientation et vue au sol : chaque page indique l'orientation dominante de la voie (donc l'exposition possible des façades, à titre indicatif) et propose un lien Google Street View pour voir la rue au niveau du sol.
v1.6.129
  • Sélection des comparables plafonnée à 12 : depuis l'internalisation de la base DVF (v1.6.104), une expertise à Paris retenait plus de cent ventes comparables. La base locale renvoie exhaustivement jusqu'à 600 ventes dans le rayon, et le filtrage par seuils cochait tout ce qui passait les bornes — un plancher existait (au moins 5), mais aucun plafond. Or une expertise par comparaison se justifie sur une douzaine de ventes proches, pas sur cent. Désormais, seules les 12 plus pertinentes (proximité, similarité de surface, récence) sont retenues par défaut ; les autres restent affichées et réactivables d'un clic. L'expert garde la main, et la médiane retenue gagne en précision comme en défendabilité.
v1.6.128
  • Accès direct aux grands pôles : le bloc transports indique désormais les destinations majeures atteignables sans changement depuis les lignes de la rue — La Défense, Châtelet-Les Halles, les grandes gares, les aéroports de Roissy et d'Orly. Table de correspondance stable, limitée aux liaisons certaines.
  • Performance énergétique par rue : 2 341 voies affichent la répartition de leurs étiquettes DPE (barre A→G aux couleurs officielles) et leur part de passoires énergétiques (F ou G), mise en perspective avec la moyenne parisienne (~20 %). Calculé sur 649 616 diagnostics rattachés par voie (source ADEME). Un enjeu de prix direct : les F et G sont décotés et voient leur location progressivement interdite. Aucun concurrent ne publie cette donnée par rue.
v1.6.127
  • Accès aux transports sur chaque page de rue : 2 238 voies affichent le nombre de stations de métro et RER à moins de 400 mètres, les lignes réellement desservies (avec leur couleur officielle), la grande gare éventuelle et le nombre d'établissements scolaires à 300 mètres. L'accessibilité est le premier critère de valeur à Paris — ici il est calculé, pas estimé : la Rue de Rivoli ressort à 15 stations et 8 lignes.
  • Gares de train sur les cartes : les grandes gares (Nord, Est, Lyon, Montparnasse, Saint-Lazare…) apparaissent désormais, avec un marqueur carré distinct des stations de métro — c'est le repère le plus fort de Paris.
v1.6.126
  • Points d'attention sur les pages de rue : 188 voies qui passent à moins de 40 mètres d'une infrastructure — métro aérien, cimetière, boulevard périphérique, voies ferrées de surface — le signalent désormais. Détection par proximité mesurée sur les données cartographiques ouvertes, contrôlée sur des cas connus (Rue du Repos borde le Père-Lachaise, Boulevard de la Chapelle longe le métro aérien de la ligne 2).
  • Formulé comme un repère, jamais comme un verdict : le bloc décrit ce qui est physiquement là (« à proximité : un cimetière »), pas ce qu'il faut en conclure. Une proximité détectée n'est pas une nuisance avérée — l'étage, l'orientation et l'exposition changent tout, et c'est précisément ce qu'une expertise sur place tranche. Le texte le dit, et relie le point d'attention à la valeur : nuisance avérée = décote, exposition favorable = plus-value.
v1.6.125
  • Les classements deviennent de vraies pages : « les rues les plus chères du 18e » répond à une recherche à part entière, mais restait un simple bloc au milieu du hub. 60 pages créées (3 classements × 20 arrondissements), portées à 20 rues au lieu de 10, avec un commentaire rédigé — écart au médian de l'arrondissement, amplitude du classement, ce que le chiffre ne dit pas. Environ 800 mots chacune.
  • Le hub n'affiche plus que les 5 premières de chaque classement, avec un lien vers la page complète. Il publiait auparavant le même tableau que ces nouvelles pages : les deux se seraient disputé la même recherche.
  • Carte d'arrondissement à la même hauteur que celle de Paris, pour une lecture cohérente d'une page à l'autre.
  • Classements d'évolution volontairement absents à l'échelle de l'arrondissement : seules 3 voies du 1er et 9 du 8e réunissent l'historique nécessaire. Un palmarès de trois lignes n'en est pas un — ils restent au niveau parisien, où l'échantillon le permet.
v1.6.124
  • Arrondissements voisins faussement nommés : la carte du 18e annonçait le 14e, le 4e et le 12e sur son bord inférieur — ils sont à l'opposé de Paris. Tous les arrondissements étaient projetés sur le cadre dans leur direction, sans vérifier qu'ils touchaient réellement. Seuls les limitrophes sont désormais nommés. Une étiquette fausse se lit comme une information : elle est pire qu'une étiquette absente.
  • Arrondissements voisins désormais nommés : leurs noms n'apparaissaient pas, leur centre tombant hors du cadre. Ils sont ramenés sur le bord, dans leur direction — c'est justement là qu'on cherche l'information. Et les stations retrouvent la priorité d'affichage sur les monuments, qui les évinçaient : 6 stations au lieu de 3.
  • Cartes d'arrondissement nettement plus lisibles : les voies sont découpées à la limite de l'arrondissement — celles qui se prolongent au-delà débordaient du sujet. Les arrondissements voisins sont nommés, pour savoir ce qu'il y a de l'autre côté de la limite.
  • Stations aux couleurs officielles de leur ligne (référentiel Île-de-France Mobilités) : un rond uniforme n'apprenait rien, « le 4 mauve » situe immédiatement. Les noms passent au premier plan — ils étaient dessinés avant les rues, donc masqués par le réseau viaire.
  • Monuments, musées, hôpitaux, universités et places comme repères : 519 lieux intégrés. Les plaques commémoratives sont volontairement exclues — 754 à Paris, elles auraient noyé les vrais points de repère.
v1.6.121
  • Vignette de localisation en pleine page : elle s'affichait à pleine largeur par-dessus la carte des rues, qu'elle masquait entièrement. Une règle de style plus générale l'emportait sur la sienne. Limite de l'arrondissement également renforcée — en tireté indigo — et voisins assombris pour que la frontière se lise.
  • Les cartes situent enfin : sur une page de rue, le tracé flottait sur un quadrillage anonyme. S'ajoutent désormais les stations de métro et RER nommées, les parcs, et le nom des grands axes alentour. Sur un hub d'arrondissement, la limite est tracée en tireté, les arrondissements voisins apparaissent en fond clair, et une vignette montre la position dans Paris. 448 stations et 104 parcs intégrés.
  • Noms de rue enfin accentués : 2 520 voies sur 2 562 s'affichaient sans le moindre accent ni trait d'union — « Rue des Pyrenees », « Rue Saint Maur », « Cité de l'Ermitage » amputée. La source fiscale les écrit ainsi ; OpenStreetMap les a correctement. La substitution n'a lieu que si l'adresse de la page reste rigoureusement identique — sans ce contrôle, une divergence de nommage aurait renommé des URL déjà en ligne. Vérifié : zéro adresse modifiée sur les 2 562 pages.
v1.6.119
  • Deux pages éditoriales sur l'expertise : et . Ce contenu existait, mais sous forme de section interne à la page d'accueil : une seule adresse ne peut pas se positionner sur des recherches différentes, ni être liée précisément depuis les pages de prix — il était écrit mais introuvable. Désormais deux vraies pages, liées depuis les 2 589 pages de prix, qui portent le trafic mais convertissent mal ; c'est là que la bascule se fait.
  • Second parcours pour les prescripteurs : notaires, avocats, experts-comptables et administrateurs de biens disposent d'un accès dédié depuis chaque page de rue. Une succession ou un partage n'appelle pas une estimation mais une valeur motivée — et ce public n'entre pas par le même chemin qu'un particulier.
  • « Faire expertiser ce bien » menait à un écran de connexion. Le bouton renvoyait vers l'outil, réservé aux comptes, alors que le visiteur venu d'un moteur est anonyme. Il ouvre désormais le formulaire de demande de la page consultée, déjà pré-rempli avec la voie.
  • Un « € » sur un nombre de ventes : le graphique d'activité affichait « 28 611 € » au lieu de « 28 611 ventes ». L'unité était codée en dur dans le composant, hérité des courbes de prix.
  • Carte remontée et recolorée : elle passe juste sous les chiffres clés, avant les courbes — on regarde d'abord *où*, ensuite *comment ça évolue*. Sa palette rejoint celle du site (indigo) ; l'ancienne empruntait un rouge grenat absent partout ailleurs.
v1.6.118
  • « Où se situe de la Rue Pernety » : le titre de la carte utilisait la préposition contractée là où il ne fallait que l'article. Corrigé sur les 2 349 pages concernées — « la Rue », « l'Avenue », « le Boulevard ».
  • Carte de situation sur chaque page de rue : le tracé de la voie ressort sur la trame des rues voisines. 2 349 pages sur 2 562 en disposent — la limite est la couverture OpenStreetMap, pas le rendu. Comme les autres cartes : SVG produit au build, sans tuile, sans librairie, sans appel réseau, lisible sans JavaScript.
  • Cadrage à emprise minimale : 23 % des voies parisiennes font moins de 150 mètres. Cadrées au plus juste, elles rempliraient l'image sans qu'on sache où l'on se trouve — une carte qui ne situe pas ne sert à rien. La fenêtre ne descend donc jamais sous ~600 mètres, et le ratio de l'image est respecté pour qu'aucune direction ne soit écrasée.
v1.6.116
  • Contours d'arrondissement invisibles : la simplification des tracés dégénérait sur les polygones fermés — l'algorithme mesure les écarts à la corde entre premier et dernier point, or sur un anneau ces deux points sont confondus. Chaque arrondissement se réduisait à , un point unique : la carte s'affichait vide, sans la moindre erreur au passage. Détecté à l'œil sur une capture, pas au contrôle automatique.
  • Axe de la courbe de prix illisible : deux graduations distinctes s'affichaient toutes deux « 11k » (9 635 et 10 900 €/m² arrondis au millier). La précision se déduit désormais de l'étendue affichée.
  • Deux totaux de ventes contradictoires sur le hub Paris : l'en-tête annonçait 138 825 ventes (celles des rues publiées) et la statistique juste en dessous 144 533 (toutes les ventes). Aligné sur le second — c'est le marché qui est décrit, pas la sélection affichée.
  • Cartes cliquables : le hub Paris reçoit une carte des 20 arrondissements colorés du plus abordable au plus cher, chacun cliquable ; chaque hub d'arrondissement reçoit la carte de ses rues, une voie = un lien vers sa page, avec infobulle (prix médian, ventes). 2 265 voies tracées, 91 % de nos pages couvertes. Rendu en SVG au build : aucune librairie, aucune tuile, aucun appel réseau — les infobulles reposent d'abord sur un mécanisme natif et fonctionnent sans JavaScript. Tracés © contributeurs OpenStreetMap (ODbL), contours Ville de Paris.
  • Demande d'expertise depuis une page de rue : c'était le trou du parcours — la page s'arrêtait à l'estimateur puis renvoyait vers l'outil, qui exige une session, alors que le visiteur venu d'un moteur de recherche est anonyme. Chaque page porte désormais un formulaire pré-rempli avec la voie et l'arrondissement (type de bien, surface, échéance, qualité du demandeur, contact). Formulaire HTML natif : il fonctionne sans JavaScript et réutilise le circuit de demande existant, sans nouvelle route ni nouveau stockage.
  • Développement des noms de voie mutualisé : la table d'abréviations (« BD » → « Boulevard ») vivait dans le seul générateur de pages, alors que la récupération des tracés doit rapprocher les noms OpenStreetMap des nôtres. Deux implémentations auraient divergé — elle rejoint la charte commune.
v1.6.114
  • Encadrement des loyers sur chaque page de rue : loyers de référence minoré et majoré en €/m², en location vide et en meublé, du studio au 4 pièces et plus, pour le quartier dont dépend la voie. C'est la seule des trois données demandées qui varie géographiquement — les 2 562 rues sont rattachées à l'un des 80 quartiers par un test point-dans-polygone sur leurs coordonnées réelles, et non par proximité de centroïde qui se serait trompée sur toutes les voies de bordure. Source : Ville de Paris, barème 2025.
  • Taxe foncière et indice de référence des loyers : encart de contexte reprenant le taux global sur le bâti voté pour 2025 (21,21 %), la TEOM (6,21 %) et le dernier IRL connu (148,37 au 2ᵉ trimestre 2026, +1,15 % sur un an). Présentés comme un contexte parisien commun et non comme une statistique de rue : Paris étant une seule commune, le taux est identique dans les vingt arrondissements. Aucun montant de taxe foncière en €/m² n'est publié — il dépend de la valeur locative cadastrale, propre à chaque logement et non publique ; l'afficher supposerait une base inventée.
  • Rafraîchissement mensuel automatique (, tâche planifiée le 3 de chaque mois) : les trois sources sont réinterrogées, et la republication n'a lieu que si les données ont réellement changé. Une source indisponible conserve la valeur précédente au lieu de vider la page. Les millésimes publiés sont journalisés. Les pages affichent la date de la donnée — barème, exercice, trimestre — jamais celle du contrôle : l'encadrement change une fois par an, la taxe foncière une fois par an, l'IRL quatre fois ; le passage mensuel est un filet, pas un rythme de publication.
v1.6.113
  • Un texte de marché sur chaque page : les pages étaient trop graphiques et pas assez rédigées. Chaque page de rue reçoit un commentaire — positionnement face à l'arrondissement et à Paris, lecture de la fourchette, typologie dominante, budget médian, dynamique — et chaque hub d'arrondissement le sien. Les formulations alternent selon la voie pour que 2 562 pages ne se répètent pas mot pour mot. Une page de rue passe de ~150 à ~385 mots de contenu rédigé, un hub à près de 2 000.
  • Méthodologie resserrée : le bloc explicatif détaillait les seuils exacts, les arbitrages retenus et les mesures qui les avaient motivés. Ces éléments intéressent l'éditeur, pas le lecteur — et renseignent la concurrence. Il ne conserve que ce qui engage : origine et période des ventes, nature des prix (actés, pas affichés), regroupement des ventes multi-lots, et les limites d'usage (ces pages décrivent un marché, pas un bien ; elles ne constituent pas une expertise). 303 → 194 mots.
  • Élision et genre des noms de voie : « Le marché de Avenue de Bouvines » devenait « Le marché de l'Avenue de Bouvines », « du Boulevard Voltaire », « de la Rue Fresnel ». La faute apparaissait sur plusieurs centaines de pages.
v1.6.112
  • Le nombre de ventes se lit maintenant comme une trajectoire : sur les hubs Paris et arrondissements, les barres laissent place à une courbe — la question posée est une trajectoire (« le marché ralentit-il ? »), pas une comparaison de niveaux. Ce que la courbe révèle à Paris : 30 734 ventes en 2021, pic à 33 436 en 2022, creux à 24 647 en 2024, rebond à 28 611 en 2025. Ce n'est pas une stagnation, c'est un cycle. *(Les pages de rue gardent les barres : 69 % d'entre elles font moins de 10 ventes par an, et une ligne y suggérerait une tendance là où il n'y a que du bruit.)*
  • Deux variations au lieu d'une, et on dit laquelle : la pastille « −10,5 % depuis 2021 » ne précisait pas qu'elle portait sur le prix médian. Elle le dit désormais, et une seconde pastille donne la variation du nombre de ventes — deux histoires différentes. Le 8e affiche ainsi −5,9 % de prix pour +6,0 % de ventes : les prix cèdent, l'activité repart. Décliné sur Paris et sur les 20 arrondissements.
  • Vignettes d'arrondissement de hauteur égale : le nombre de rues et le nombre de ventes passent sur deux lignes fixes. Sur une seule ligne, le repli dépendait de la longueur du texte et les 20 vignettes n'étaient pas alignées.
  • Étiquettes d'axe adaptées à l'échelle : le suffixe « k » était codé en dur pour des prix au m². Appliqué à un volume d'arrondissement (~280 ventes/an), il affichait « 0,3k ». L'échelle s'adapte désormais à l'ordre de grandeur.
v1.6.111
  • Plus-value LMNP : les amortissements sont désormais réintégrés à la reventecorrection de justesse, pas une nouveauté. Depuis la loi de finances 2025 (CGI art. 150 VB III, cessions ≥ 15/02/2025), les amortissements déduits en LMNP réel minorent le prix d'acquisition retenu pour la plus-value. L'outil l'ignorait : il surestimait donc la revente nette, le TRI et le ROI, d'autant plus que la détention était courte. Mesuré sur un bien à 300 000 € détenu 10 ans : l'outil annonçait 0 € d'impôt de plus-value, le calcul corrigé en donne 25 451 €. À 8 ans, 0 € devenait 16 264 €. Les trois formules de plus-value (horizon principal, projection année par année, scénario alternatif) sont corrigées.
  • Deux paramètres pour ne pas fausser les cas particuliers : une quote-part terrain (défaut 15 %, éditable — le terrain n'est pas amortissable, et l'augmenter réduit la réintégration) et une case « résidence services / logement social », que le texte exclut de la réintégration. Sans cette case, le calcul aurait pénalisé ces biens à tort.
  • Hypothèses affichées, y compris leur limite : la réintégration apparaît en ligne dédiée dans le détail de la plus-value, reliée à sa fiche de lexique. Le montant est estimé sur un amortissement du bâti sur 30 ans ; en pratique l'amortissement non déductible (il ne peut pas créer de déficit) est reporté, donc le montant réellement réintégrable est inférieur ou égal à l'estimation — l'écart va dans le sens de la prudence. Le suivi année par année reste un chantier distinct.

Semaine du 13 juillet 2026

v1.6.110
  • Correction d'un chiffre publié : l'entrée 1.6.108 annonçait « 129 termes » au lexique. Le compte réel est 136 — 7 fiches d'expertise (servitude, vices cachés, immeuble par destination, taux d'absorption, valeur locative cadastrale, adjudication sur saisie, amortissements LMNP) attendaient dans l'espace de travail et sont parties dans la même publication. Elles sont en ligne ; seul le décompte était faux.
v1.6.109
  • Documentation interne tenue à jour automatiquement (, lancé au build) : l'archive du livré de est désormais régénérée depuis le CHANGELOG entre marqueurs — les sections rédigées à la main survivent en dessous. Motif : la même information recopiée à deux endroits finit toujours désynchronisée, et elle l'était (un backlog prioritaire périmé à 3 items sur 4 fausse les priorités plus sûrement qu'une absence de roadmap).
  • Sondes de périmétion : des motifs cherchés dans le code signalent les chantiers listés « à faire » que le code contient déjà. Volontairement limitées à ce qui est décidable dans le code — une première sonde cherchait un nom de secret pour détecter le PDF serveur et répondait toujours, le code étant complet mais *gaté* : retirée. Une alarme qui se déclenche à tort fait ignorer toutes les autres.
  • Alerte de fraîcheur du carnet de bord : le build prévient quand une version part sans que ait bougé. Il n'est pas généré — une décision ne se déduit pas d'un diff. Le journal des versions sait dire *qu'*une médiane a été recalculée ; il ne dira jamais qu'elle était statistiquement fausse.
  • Carnet de bord enrichi : l'erreur de médiane de médianes, la troisième confirmation indépendante du taux d'indexation (−2,73 %/an mesuré sur les ventes brutes, contre −2,7 % retenu et −2,80 % appris), la récidive du slash final, et une section décrivant le dispositif lui-même et ses limites.
v1.6.108
  • Pages « prix immobilier » : méthodologie, graphiques partout et termes reliés au lexique
  • Bloc « Méthodologie » en pied de chaque page — source et période des ventes, règle de regroupement des mutations, exclusions, et surtout pourquoi ce nombre de rues : Paris compte ~6 000 voies mais seules 2 562 atteignent les 10 ventes sur 5 ans qui donnent un sens à un prix. Les trois seuils sont affichés parce qu'ils excluent — le lecteur doit pouvoir constater qu'une absence est un choix, pas un oubli. Une page de données sans sa méthode n'est pas vérifiable.
  • Graphiques sur les 27 pages qui n'en avaient aucun : les hubs (Paris + 20 arrondissements) et les 5 classements n'affichaient que des tableaux. Ajout de la courbe d'évolution, de l'activité du marché et du prix par typologie sur les hubs ; barres horizontales de classement sur les palmarès — l'écart entre le 1er et le 10e se voit, là où un tableau le laisse deviner. Plus aucune page sans graphique.
  • Médianes d'arrondissement recalculées sur les ventes réelles : elles étaient obtenues en moyennant les médianes des rues, ce qui n'a pas de sens statistique — la médiane n'est pas linéaire, une rue à 400 ventes y pesait autant qu'une rue à 10, et les rues sous le seuil de publication étaient absentes du calcul. Nouveau module : agrégats calculés sur les 144 533 ventes individuelles, enchaîné automatiquement après chaque rafraîchissement des données. Effet de bord utile : la baisse mesurée sur Paris (−10,5 % de 2021 à 2025, soit −2,73 %/an) recoupe une troisième fois le taux d'indexation temporelle retenu par le moteur (−2,7 %/an, et −2,80 %/an par le modèle hédonique).
  • Liens du lexique sans slash final : les infobulles pointaient vers , alors que les fiches sont des fichiers plats. Chaque infobulle déclenchait une redirection — et un 404 sur les fiches nouvellement créées. Même famille d'erreur que le slash des pages de rue corrigé plus tôt : sur cet hébergement, un répertoire prend le slash, un fichier ne le prend pas.
  • Lexique — 2 fiches ajoutées : surface médiane et fourchette interquartile (P25-P75), toutes deux affichées sur chaque page sans être définies nulle part. La fiche médiane DVF est élargie : la notion vaut à toute échelle (rue, arrondissement, commune), pas seulement la commune. 136 termes (mes 2 fiches, plus 7 entrées d'expertise — servitude, vices cachés, immeuble par destination, taux d'absorption, valeur locative cadastrale, adjudication sur saisie, amortissements LMNP — qui attendaient dans l'arbre de travail et sont publiées avec). Choix assumé de ne PAS créer d'entrée « prix médian » séparée : elle ferait doublon avec « médiane DVF » et les deux se cannibaliseraient en référencement.
v1.6.106
  • Pages « prix immobilier » étendues à tout Paris — 2 562 rues : les 3 arrondissements de la cohorte 1 passent aux 20, soit 2 589 pages (2 562 rues + 20 hubs d'arrondissement + hub Paris + classements). Chaque arrondissement conserve le classement complet de ses rues et son propre sitemap, pour continuer à lire le taux d'indexation cohorte par cohorte.
  • Densité éditoriale des pages de rue : trois blocs ajoutés — prix par typologie (studio → 5 pièces et plus, avec l'écart au prix de la rue), activité du marché (volume de ventes par année) et situer cette rue (rue *vs* arrondissement *vs* Paris). Motif : 804 rues (31 %) n'atteignaient pas le seuil de 20 ventes ouvrant droit à la courbe de prix et se résumaient donc à quatre chiffres. Le graphique de volume, lui, s'affiche partout — compter des ventes reste fiable là où une médiane annuelle ne l'est plus. Une page type passe de ~11 Ko à ~26 Ko de contenu réel.
  • Arrondissement affiché systématiquement : « Rue Fresnel (16e) », dans le titre comme dans les classements, l'index et les rues comparables. Plusieurs voies parisiennes portent le même nom, et un visiteur arrivant par un moteur de recherche n'avait aucun repère.
  • Pages SEO orphelines — maillage corrigé : les pages générées n'étaient atteignables que par le sitemap, jamais par un lien du site. Or un sitemap sert à *découvrir* une page, pas à lui transmettre de l'autorité : sans lien entrant, une page reste indexable mais ne se positionne pas. Ajout d'entrées dans la navigation, la page d'accueil, les hubs et des liens entre rues voisines.
  • Soft 404 supprimé : toute URL inconnue renvoyait la page d'accueil en HTTP 200 — avec 2 562 pages publiées, chaque adresse erronée ou devinée créait ainsi un doublon de l'accueil. Ajout d'une page 404 (rendue publique, sans quoi la plateforme ne peut pas la servir). Les URL inconnues renvoient désormais un vrai 404.
  • Adresses de pages alignées sur les noms affichés : certaines rues avaient une adresse abrégée sans rapport avec leur nom affiché (« Boulevard Voltaire »). Corrigé avant toute indexation — donc sans redirection à maintenir.
  • Le build s'arrête si le générateur de pages échoue : un plantage du générateur passait inaperçu et le build republiait les pages du run précédent en affichant « ✓ ». Une panne silencieuse qui publie des données périmées est pire qu'une panne bruyante. Le build échoue désormais franchement.
  • Garde-fou de journal des versions : le build refuse de démarrer si la version en tête du CHANGELOG a déjà été publiée telle quelle. Motif : quatre déploiements successifs sont sortis sous le numéro 1.6.105 sans qu'aucun ne soit consigné — donc invisibles sur la page « Nouveautés ».
v1.6.105
  • Pages publiques « prix immobilier » rue par rue — cohorte 1 (Paris 15e, 18e, 16e) : 701 pages générées au build depuis les ventes réelles — 691 pages de rue, 3 hubs d'arrondissement (avec le classement complet de leurs rues) et 5 classements Paris (rues les plus chères · les moins chères · les plus actives · plus fortes baisses · celles qui résistent). Chaque page porte de la donnée propre — prix médian, fourchette P25-P75, volume de ventes, surface médiane, évolution annuelle — et non un gabarit avec un nom substitué. Règles éditoriales appliquées : une rue n'a de page qu'à partir de 10 ventes sur 5 ans, n'affiche une courbe qu'à partir de 20, et n'entre dans un classement de variation qu'avec ≥10 ventes en 2021 *et* en 2025 — seuil mesuré, en deçà duquel les variations sont du bruit de composition (on relevait des −68 % et +110 % sur des rues à 4 ventes/an). L'effectif de chaque rue est affiché dans les classements. Déploiement par cohortes d'arrondissements avec sitemaps segmentés, pour lire le taux d'indexation cohorte par cohorte plutôt que de publier à l'aveugle.
  • Charte graphique des pages générées mutualisée : le CSS, l'en-tête, la navigation et le pied de page vivaient dans le générateur du lexique et étaient donc inaccessibles aux autres. Ils deviennent source unique — modifier la charte met désormais à jour toutes les pages générées (lexique + prix) au prochain build. Refonte vérifiée non régressive au bit près : les 127 fiches de lexique sortent avec une empreinte identique.
  • Ouverture des pages SEO à l'indexation : ajout de et des sitemaps à la liste des chemins publics. Sans cela, le robot d'indexation n'aurait vu qu'un écran de connexion sur l'intégralité des pages — panne silencieuse et indiagnosticable depuis les outils Google.
  • Calibration hédonique hors-ligne des coefficients : un modèle entraîné sur 144 357 ventes parisiennes confirme indépendamment la tendance retenue pour l'indexation temporelle (−2,80 %/an appris, contre −2,7 %/an mesuré par ailleurs). Il établit aussi que la seule localisation fait varier le prix de 42 % à surface et date identiques — effet déjà capté par le choix des comparables, donc à ne surtout pas doubler d'un coefficient. Outil d'analyse uniquement : il ne tourne pas en production et ne modifie pas le moteur.
v1.6.104
  • Nettoyage DVF — les mutations multi-lignes sont RECOMPOSÉES, plus supprimées : à Paris, un appartement se vend presque toujours avec sa cave ⇒ 3 lignes pour 1 vente, soit 45,6 % du gisement. Les écarter (règle courante) détruirait la moitié des données et biaiserait l'échantillon vers les biens sans annexe, systématiquement plus petits. Le pipeline regroupe par mutation, somme les surfaces d'habitation et ne divise qu'une fois ; il écarte les ventes en bloc (2+ logements), les mutations mixtes commerciales, les dépendances vendues seules, et filtre sur le €/m² (et non sur le prix absolu, qui laisse passer viagers et démembrements).
v1.6.103
  • Marge de négociation — d'un forfait arbitraire à une table sourcée et datée : les annonces (prix demandés) étaient converties en base de valeur par une décote de −4 % en dur, identique partout et sans référence. Elle devient une table datée (T1 2026), sourcée et modulée par la tension du marché : 3,2 % en zone tendue · 5,4 % en zone moyenne · 8,0 % en zone détendue, réutilisant le zonage déjà en place (comme les forfaits parking/cave/piscine). Sources convergentes sur le national ≈ 5 % (Baromètre LPI-IAD 5,4 %, réseau Laforêt 5,1 %, Observatoire Interkab 5,3 %) ; la dispersion géographique justifie la modulation (Lyon 2,8 %, Paris 3,2-3,8 % ↔ Strasbourg 8,0 %, Nantes 12,7 %). L'ancien forfait sous-décotait fortement en marché détendu (−4 % au lieu de −8 %), donc surévaluait. Le taux réellement appliqué est mémorisé et cité tel quel partout où il s'affiche (plus de « −4 % » écrit en dur dans les textes). Table à recaler comme les tables Notaires/IRL.
v1.6.102
  • Expertise — comparables enfin indexés à la date de valeur (correction de justesse) : le tableau des comparables affichait un prix indexé (colonne « €/m² / idx ») alors que le moteur calculait la valeur sur le prix BRUT — l'interface annonçait une chose, le calcul en faisait une autre. Chaque comparable est désormais ramené aux conditions de marché de la date de valeur via la tendance du secteur (observatoire local, sinon indice Notaires-INSEE, borné ±15 %/an), comme l'exige la méthode par comparaison (Charte §2.1). Impact mesuré sur les ventes DVF parisiennes 2021-2025 (marché à −2,7 %/an) : une vente de 18 mois surévaluait d'environ 4 %, une vente de 4 ans d'environ 13 % — l'écart étant maximal lorsque l'expert élargit la profondeur historique, c'est-à-dire précisément quand les comparables se raréfient. Garde-fous : ajustement borné à ±25 %, dates aberrantes ou futures ignorées, absence de date ou d'indice ⇒ coefficient neutre (comportement strictement inchangé). L'affichage lit maintenant la valeur réellement retenue par le moteur, au lieu d'un second calcul divergent.
v1.6.101
  • Collecte — le chat ne repose plus les questions déjà présentes dans vos documents : le prompt d'extraction résout désormais en priorité le type de bien (appartement/maison, quasi toujours déductible), et remplit cave / parking dès qu'un document les rattache explicitement au lot évalué (titre, règlement, bail, annonce) — jamais déduits du seul immeuble (garde-fou anti-« cave fantôme » conservé). Ces champs remontés des documents font sauter la question correspondante dans la conversation Bob/Ulysse ; on ne redemande que ce qui n'a pas été trouvé.
  • Bob — ouverture orientée « documents d'abord » : Bob invite désormais à déposer les documents en premier (« je remplis tout ce qu'ils contiennent et ne demande que ce qui manque ») plutôt que d'enchaîner les questions manuelles — flux plus rapide et moins de saisie.
  • « Nouveau dossier » — repartir d'un bien vierge en un clic : bouton ↺ Nouveau dossier sur chaque écran (Deal Check, Expertisia, avis de valeur Ulysse) qui efface toutes les données du bien en cours (adresse, caractéristiques, documents extraits, comparables, conversation) et restaure l'écran courant — fini le risque de mélanger deux biens. Un bandeau d'adresse rappelle en permanence le dossier en cours. La persistance avis de valeur → expertise (même bien) reste, elle, intacte : on ne perd rien en passant de l'un à l'autre.
v1.6.100
  • Coûts — frais de notaire calculés sur le prix net vendeur : nouveau champ *Honoraires d'agence à charge acquéreur* dans le bloc Acquisition. Renseigné, il assoit les droits de mutation sur le prix net vendeur (prix FAI − honoraires), et non sur le prix affiché — plus juste, car c'est l'assiette réelle quand les honoraires sont à la charge de l'acquéreur. Défaut 0 → comportement strictement inchangé. Le tableau Financement affiche alors une ligne *Prix net vendeur*.
  • Lexique — 4 nouvelles fiches (veille hebdo) : *prix net vendeur*, *origine de propriété*, *état hypothécaire*, *dossier de diagnostic technique (DDT)*. Le lexique passe à 127 termes, avec liens réciproques (maillage interne) depuis les fiches liées. Ces définitions alimentent automatiquement les infobulles de l'app.

Semaine du 6 juillet 2026

v1.6.99
  • Extraction — vigilance renforcée « lot & Carrez » : le prompt distingue désormais explicitement les TROIS nombres à ne pas confondre — (n° du lot évalué), (quote-part en millièmes), (nombre total de lots de l'immeuble) — avec consigne de ne jamais déduire l'un de l'autre. Carrez : recopier le chiffre exact du document, jamais une somme de pièces recalculée. Cible les erreurs signalées sur ces champs.
  • Rapport — nuisances constatées dans les « inconvénients du bien » : les nuisances relevées par l'analyse documentaire (vis-à-vis, voie ferrée…) apparaissent maintenant dans la section « − Points faibles » de l'appréciation générale — elles étaient extraites mais n'atterrissaient sur aucun rapport.
v1.6.98
  • Benchmark — filtre des modèles inadaptés : la liste écarte désormais les modèles de génération d'images (ex. : sortie image + 32k de contexte → « maximum context length exceeded ») et les modèles au contexte trop court (< 100k) pour tenir un lot d'images. Ne restent que des modèles capables d'extraire du texte d'un dossier scanné. de sortie ramené à 4000 (l'extraction JSON est courte) → plus de marge de contexte.
v1.6.96
  • Extraction — fin de la redondance / : le schéma demandait au modèle deux champs pour la même notion (nb d'étages de l'immeuble) → source de confusion/erreurs. On ne garde plus que **** (le plus pertinent) ; il alimente le champ « Étages total » du moteur (les deux champs de formulaire restent synchronisés). Moins d'ambiguïté = extraction plus fiable.
  • Chat — question « appartement / maison » esquivable : elle propose désormais « passer » (défaut : appartement) au lieu d'être une étape obligatoire.
v1.6.95
  • Benchmark — tableau lisible + notation « vérité terrain » : le tableau comparatif tient dans la largeur (largeurs de colonnes fixes, cellules qui passent à la ligne au lieu de déborder, colonne « CHAMP » figée/sticky). Nouveau bouton 🎯 Valeurs attendues : tu saisis la bonne valeur par champ → chaque modèle est noté contre la vérité terrain (vert = exact / rouge = faux) avec un score vs attendu par modèle, pour repérer les champs sensibles.
v1.6.93
  • Navigation Expertisia ↔ AVM — le chat ne « traîne » plus d'un menu à l'autre : après avoir ouvert Ulysse dans AVM puis être revenu sur Expertisia, c'était le chat Ulysse qui s'affichait au lieu de l'écran de choix (Mode expert / Bob) — il fallait recliquer « Changer de mode ». Désormais l'entrée dans un menu affiche le bon écran selon la persona de la session active : Expertisia → écran de choix (sauf si une session Bob est en cours → son chat) ; AVM → Ulysse. Chaque menu conserve sa propre session (revenir sur AVM rouvre le chat Ulysse ; une session Bob en cours n'est plus perdue en naviguant).
v1.6.91
  • Benchmark extraction — alerte « dossier trop volumineux » + garde-fou méthodo : quand les pièces déposées dépassent le plafond 27 Mo, l'info de préparation devient une alerte rouge explicite (« X pages écartées, sélection arbitraire → comparaison peu fiable, teste 1 document à la fois ») avec un résumé par document (fini le pavé listant chaque page). Rappel ajouté dans la zone de dépôt : 1 document à la fois (idéalement un scan). Évite de bencher sur un sous-ensemble tronqué et un coût ×11 modèles inutile.
v1.6.90
  • Benchmark extraction — plus de blocage en « Préparation » : le rendu des scans en images affiche sa progression (« 🖼 fichier : rendu page X/Y… ») au lieu d'un écran figé ; garde-fou timeout 180 s sur la préparation (un scan trop lourd / un rendu qui coince renvoie une erreur claire au lieu de bloquer) ; le bouton se réactive toujours (try/finally) et l'échec d'un mode n'empêche plus les autres modèles de tourner.
v1.6.87
  • Page-outil (interne, auth requise) : compare côte à côte ce que l'API renvoie pour plusieurs URL d'annonces (SeLoger / Bien'ici / Leboncoin…). Tableau par champ (localisation, caractéristiques, prix & charges, copropriété), taux de couverture par portail, liste des champs bruts exposés par l'API (surlignés si déjà exploités) et réponses brutes dépliables. URL pré-remplies + éditables, relance à la volée, export JSON. Sert à décider quels portails sont exploitables et à affiner le mapping. Non listée, .
v1.6.86
  • Diagnostic import d'annonce (interne) : le proxy de recherche par URL peut renvoyer, en mode (auth requise), la réponse brute du fournisseur + des sondes détaillées (, , chaînes tronquées) pour auditer précisément ce que remonte chaque portail (SeLoger / Bien'ici / Leboncoin). Outil de mise au point du mapping — sans impact utilisateur.
v1.6.85
  • Import d'annonce par URL — mapping corrigé (cause de « aucune information ») : les coordonnées du bien sont désormais lues dans le champ (au pluriel) et la commune / code postal / INSEE dans l'objet imbriqué, conformément au schéma réel du fournisseur d'annonces — l'ancien code cherchait / (inexistants) → aucune position → rien ne remontait. Corrige aussi les charges de copropriété , l'ascenseur, le nombre de lots et l'année de construction. Le diagnostic cible maintenant les vrais conteneurs (, , présence de la description) pour vérifier ce que renvoie l'endpoint (non documenté par le fournisseur).
  • Recherche par URL recentrée sur le Deal Check : l'import d'une annonce par lien est retiré du chat (AVM / Bob) et de l'expertise, et conservé uniquement dans « 📋 Coller une annonce » (Deal Check) — là où le pré-remplissage rapide (prix, surface, loyer, taxe foncière) a le plus de valeur. Les garde-fous du chat (relance sur réponse floue, plafond IA, sortie « on tourne en rond ») restent en place.
v1.6.84
  • Import d'annonce : lecture de la description : lors d'un import par lien, l'app ne se limite plus aux quelques champs structurés renvoyés par l'API — elle analyse le texte de l'annonce (description + caractéristiques) pour remplir automatiquement ascenseur, parking, terrasse/balcon, étage, exposition, occupation (loué/libre), nombre de chambres, nombre de lots de copropriété… C'est là que se trouvent ces informations. Résultat : l'assistant ne repose plus les questions déjà répondues par l'annonce et va droit à ce qui manque réellement (souvent l'état, non publié dans les annonces). Un récap « 📝 Lu dans la description : … » liste ce qui a été récupéré. Vaut pour le chat (AVM / Bob) ; le prix affiché reste indicatif.
  • Localisation par le secteur : si une annonce ne fournit ni adresse ni coordonnées, l'app triangule la position à partir des repères de la description (station de métro/RER, quartier, arrondissement) — suffisant pour lancer les données de secteur (DVF, loyers, risques).
v1.6.83
  • Import d'annonce : localisation fiabilisée : correction du cas « adresse introuvable / ». L'adresse est maintenant extraite proprement même quand le portail renvoie des champs structurés (ville/rue imbriquées), et si l'annonce ne publie pas la rue exacte (cas fréquent, pour protéger le vendeur), le bien est localisé par ses coordonnées — géocodage inverse → rue ou quartier — largement suffisant pour les données de secteur (DVF, loyers, risques). Étage, type de bien et DPE aussi mieux reconnus. Vaut pour l'import depuis « 📋 Coller une annonce » (Deal Check) et depuis le chat (AVM / Bob).
  • Assistant plus robuste face aux réponses imprévues : si une réponse n'est pas comprise, l'assistant reformule une fois puis passe à la suite (il n'est jamais bloqué) ; s'il tourne en rond, il propose une sortie (voir le résultat, coller un lien d'annonce, ou saisir à la main) ; l'interprétation IA du texte libre est plafonnée par session pour éviter toute consommation inutile. Une saisie manuelle reste accessible à tout moment.
v1.6.82
  • Import d'annonce par lien dans le chat (AVM / Ulysse & Bob) : dans l'assistant interactif, collez directement le lien d'une annonce dans la conversation — l'application récupère le bien (type, surface, pièces, étage, DPE, loyer) et son adresse, pré-remplit le dossier, géocode l'adresse (données publiques : DVF, loyers, DPE ADEME, risques) puis enchaîne sur les questions restantes. Le prix affiché de l'annonce est repris à titre indicatif — l'estimation reste calculée indépendamment par le moteur. Prolonge l'import par URL déjà présent côté « 📋 Coller une annonce » (Deal Check).
v1.6.81
  • Import d'annonce par URL (recherche inversée, beta) : dans « 📋 Coller une annonce », on peut désormais coller le lien d'une annonce en vente ; l'application récupère automatiquement le bien (prix, surface, pièces, DPE) et son adresse — l'adresse déclenche alors les données publiques (DVF, loyers, DPE ADEME, risques). L'extraction par texte reste disponible. Récupération via une API dédiée (clé côté serveur) ; valeurs toujours à vérifier.
v1.6.80
  • Menu « AVM » dédié (avis de valeur automatisé) : la fonctionnalité Ulysse (avis de valeur rapide) devient un menu de premier niveau à part entière, placé entre « Deal Check » et « Expertisia ». Un clic sur AVM ouvre directement l'assistant Ulysse (sans écran de choix). Fonctionnement strictement identique par ailleurs ; la carte Ulysse est retirée du hub Expertisia (qui garde Bob + mode expert). Réservé au compte propriétaire, comme auparavant.
v1.6.79
  • Confidentialité IA — non-réutilisation des données garantie côté serveur : le proxy d'accès aux modèles impose désormais, sur CHAQUE requête (et non plus seulement la lecture de documents), le refus de collecte/entraînement par les fournisseurs — les données transmises aux modèles ne peuvent pas être réutilisées pour entraîner ou améliorer leurs modèles. Auparavant ce refus n'était posé que par certains appels ; il est maintenant appliqué de manière centralisée et inviolable (aucun appel ne peut l'« oublier »).
v1.6.78
  • Recherche d'annonces en vente : volontaire, plus automatique : la recherche des biens comparables actuellement en vente (payante) ne se déclenche plus toute seule au lancement d'une expertise (Bob, Ulysse, mode expert). Elle devient une action explicite : un bouton « 🔍 Rechercher les annonces » à lancer si vous la jugez utile. La valeur s'appuie d'abord sur les ventes DVF ; les annonces ajoutées comptent pour 10 % du prix de base par défaut, ajustable au curseur ensuite.
v1.6.77
  • Annexes surfaciques valorisées au prix retenu (décoté) : la terrasse, le balcon et le jardin sont désormais valorisés au €/m² retenu du bien (après décotes), et non plus sur la médiane brute du quartier — pour rester cohérent avec la valeur du corps du bien (une terrasse d'un logement décoté suit cette décote). Le parking, la cave et la piscine restent des valeurs de marché forfaitaires (indépendantes de l'état/DPE). Le détail affiché indique le prix au m² retenu utilisé, et la valeur reste éditable.
v1.6.76
  • Détail des annexes enfin affiché : le détail de la valeur des annexes (surface × coefficient × €/m², plus parking/cave/piscine) ne s'affichait pas dans le cas le plus courant (biens avec comparables DVF) — la décomposition n'était calculée que dans un cas de repli. Corrigé : le détail apparaît désormais systématiquement sous la ligne ⑧′.
  • Extraction documentaire plus reproductible : ajout d'une graine fixe et de aux appels de lecture des documents (déjà en température 0) pour limiter les variations d'un passage à l'autre sur les mêmes pièces. La lecture par IA garde une part de variabilité inhérente, mais elle est réduite.
v1.6.75
  • Annexes désormais demandées dans le chat (Bob & Ulysse) : l'assistant pose maintenant trois questions — terrasse/balcon/jardin (m²), cave/cellier, parking/box — car ces éléments (déterminants de valeur) ne figurent quasiment jamais dans un DPE ou un PV d'AG ; ils n'étaient donc pas captés si l'on répondait aux questions sans joindre de plan. Résultat : la valeur des annexes apparaît désormais de façon fiable. Questions esquivables, et automatiquement sautées si un document les a déjà renseignées.
v1.6.74
  • Détail des annexes dans la valeur : la ligne ⑧′ décompose désormais chaque annexe surfacique — surface × coefficient → m² pondérés × €/m² du quartier = valeur (ex. « Terrasse : 14 m² × 0,5 = 7 m² pond. × 8 500 €/m² = +59 500 € ») — et sépare parking / cave / piscine (valeurs de marché forfaitaires). On voit enfin à quoi correspond chaque euro.
  • Rayon des comparables resserré en grande ville : dans les secteurs très denses (comparables regroupés à moins de ~1,1 km), le rayon de recherche des ventes DVF passe par défaut de 2 km à 1,2 km — pour rester dans le même micro-marché (un rayon large mélangeait des quartiers hétérogènes). Toujours ajustable par l'expert.
  • security.txt : ajout du fichier (RFC 9116) pour la divulgation responsable de vulnérabilités.
v1.6.73
  • Décotes corrélées — plus claires (décote individuelle + non-cumul explicite) : chaque décote reste désormais individuelle et pleine par défaut (le curseur = exactement ce qui s'applique). Quand plusieurs facteurs visent le même défaut sous-jacent (luminosité + vis-à-vis, ou au rez-de-chaussée étage + lumière + vis-à-vis), une carte dédiée les met en avant et propose d'appliquer le non-cumul d'un clic : les curseurs concernés se déplacent alors visiblement sur leur valeur amortie (le plus sévère à 100 %, les suivants à 50 % puis 30 %), réversible. Fini l'ancienne case à cocher « corrélations » et l'amortissement invisible.
  • Valeur des annexes éditable : la ligne ⑧′ (terrasse / cave / parking, hors décote) affiche la valeur calculée sur la médiane du quartier et permet de la modifier directement (surcharge par l'expert, avec retour à la valeur calculée en un clic) — utile quand on connaît un prix de marché (place de parking, box…).
v1.6.72
  • Décotes corrélées — « ce que vous voyez est ce qui s'applique » : pour les facteurs corrélés (vis-à-vis / luminosité / exposition, et au rez-de-chaussée le trio étage + luminosité + vis-à-vis), l'amortissement dégressif du non-cumul (le plus sévère à 100 %, les suivants à 50 % puis 30 %) est désormais calculé au moment de la suggestion. Les curseurs affichent donc directement la décote nette retenue, et elle s'applique telle quelle — fini le ré-amortissement invisible qui obligeait à sur-régler les curseurs à la main. Le principe de non-cumul (Charte, on ne recompte pas deux fois le même défaut) reste appliqué une seule fois ; l'expert peut toujours le désactiver pour un mode brut additif.
v1.6.71
  • Ulysse — retour à l'extraction complète : l'allègement du prompt d'Ulysse (v1.6.69) réduisait la quantité d'informations lues dans les documents, ce qui faisait surestimer la valeur (moins d'éléments → moins de décotes appliquées). Ulysse repasse à l'analyse documentaire complète, comme Bob et le mode expert.
  • Adresse déjà extraite n'est plus redemandée : quand l'adresse est lue dans un document, la collecte attend désormais sa localisation avant d'enchaîner — l'assistant ne repose plus la question de l'adresse alors qu'il vient de l'extraire.
  • Proposition de documents en fin de questions : si vous démarrez par les questions sans joindre de pièces, l'assistant propose désormais, à la fin, de m'envoyer des documents pour fiabiliser l'estimation (ou de passer directement au résultat).
  • Ligne « Annexes » détaillée dans la valeur : l'étape ⑧′ (terrasse / cave / parking, hors décote) affiche désormais le détail par annexe et sa source (valorisation sur la médiane brute du quartier, non décotée), avec un rappel pour ajuster les surfaces d'annexes.
v1.6.70
  • Règle d'évaluation — pas de surcote d'exposition au rez-de-chaussée : pour un appartement en rez-de-chaussée, l'exposition/orientation ne peut plus générer de surcote (l'ensoleillement y est limité par le bâti et le vis-à-vis). Une orientation favorable (sud, traversant) est ramenée à un effet neutre ; une orientation défavorable (nord/est) conserve sa décote. Appliqué de façon cohérente au coefficient du moteur ET à la décote suggérée à l'expert. Ne concerne que les appartements dont l'étage est explicitement le rez-de-chaussée (un étage non renseigné n'est pas affecté), pas les maisons.
v1.6.69
  • DPE confirmé à la source officielle (ADEME) : lorsqu'un document porte le numéro ADEME du DPE (13 caractères), l'application interroge l'observatoire officiel et retient la classe énergie, le GES et la consommation qui font foi — y compris à partir d'un DPE scanné (le numéro est désormais lu par la vision, plus seulement dans le texte). L'étiquette officielle corrige au besoin la classe lue dans les documents (sauf si l'expert l'a saisie à la main), avec la mention « Confirmé ADEME — n° … ».
  • Ulysse (avis de valeur rapide) va à l'essentiel : en mode avis de valeur, l'analyse des documents ne collecte plus que les déterminants de la valeur (surface, pièces, étage, ascenseur, état, DPE, exposition/luminosité/vue/vis-à-vis, annexes, standing, occupation…) et ignore le détail copropriété / juridique / administratif (tantièmes, syndic, fonds de travaux, cadastre, baux détaillés…), réservé à l'expertise complète (Bob). Plus rapide et plus ciblé.
  • Liste des documents à demander au client (mode expert) : la zone de dépôt affiche désormais un dépliant « 📋 Liste complète à demander au client », organisée par catégorie (propriété, surfaces, cadastre, diagnostics, copropriété, location, fiscalité, urbanisme, travaux, mission) et priorisée (essentiel / recommandé) — pour ne rien oublier avant une expertise.
v1.6.68
  • Correctif d'affichage (back-office Admin) : dans les tableaux d'administration (Utilisateurs, Formules, Abonnements, Référentiels) et le CRM, le texte secondaire en ligne (e-mails, compteurs d'usage, rôle, abonnement, dates) réutilisait par erreur la classe — réservée aux encadrés d'information verts — ce qui plaquait un rectangle vert et une barre indigo décalés derrière ces libellés. Introduction d'une classe (texte gris discret) pour l'usage en ligne ; les encadrés restent inchangés. Cosmétique, aucune incidence fonctionnelle.
v1.6.67
  • Lecture des documents en direct : quand vous déposez vos pièces (DPE, bail, PV d'AG, plan, photos…), l'assistant affiche désormais les informations trouvées au fur et à mesure de l'analyse — dans le fil du chat (Bob & Ulysse), où le récapitulatif se construit sous vos yeux et devient la synthèse finale, et via une fenêtre interactive en expertise manuelle. On voit ce qui est lu, et on corrige d'un mot si une valeur est fausse.
  • Analyse documentaire plus rapide et plus complète : refonte de l'envoi des pièces. Les documents « texte » (PDF numériques) ne consomment plus le budget réservé à la lecture d'images ; un dossier qui partait auparavant en 5 envois successifs (plus lents, et avec des pertes d'informations) tient le plus souvent en un seul — tout le contexte est analysé d'un coup, ce qui recoupe mieux les pièces entre elles. Sur un dossier vraiment volumineux, seules les pièces lourdes restantes sont renvoyées, sans jamais écraser une information déjà lue : la fusion est arbitrée (un désaccord entre deux documents est signalé, pas tranché en silence) et indépendante de l'ordre des fichiers.
  • Champs supplémentaires reconnus dans les documents : le nom du cabinet de syndic (lu en en-tête des PV d'AG, appels de charges ou état daté), avec pré-identification dans la base publique des entreprises (SIREN, adresse) pour confirmation d'un clic ; la source de la surface (attestation Carrez, mesurée sur place, d'après plans, déclarative — traçabilité exigée par les normes) ; le coût de reconstruction à neuf (usage assurance) ; et le dépôt de garantie (bail).
v1.6.66
  • Effet de ciseau fiscal (onglet Rentabilité) : nouveau bloc qui met en évidence le décalage entre l'impôt et la trésorerie au régime réel. Comme le capital remboursé n'est pas déductible, en fin de prêt les intérêts fondent, le bénéfice foncier imposable gonfle alors que la mensualité continue de vider la trésorerie — on peut payer de l'impôt sur un revenu déjà parti à la banque. L'outil affiche l'année de croisement (impôt > cash-flow net), l'année où la trésorerie bascule en négatif à cause de l'impôt, et l'impôt/cash-flow en fin d'horizon. Affiché uniquement au réel avec crédit. Purement analytique : aucun changement du moteur de calcul.
  • Indice de tension du marché A/B/C (onglet Quartier) : un nouvel indicateur situe la commune sur une échelle de type A bis / A / B1 / B2 / C (très tendu → détendu) en croisant les signaux déjà mesurés — zone tendue (TLV), rotation du marché (DVF) et tension des loyers (€/m²). Il éclaire d'un coup d'œil la liquidité, la vacance et la compression des rendements. Indicatif et clairement étiqueté comme tel (à ne pas confondre avec le zonage A/B/C officiel de l'arrêté, dataset dédié à câbler ultérieurement).
  • Lexique enrichi (120 fiches) : deux nouvelles fiches issues de la veille hebdomadaire — « Revenu fiscal sans trésorerie (effet de ciseau) » (fiscalité) et « Zonage A/B/C (tension locative) » (marché), reliées aux nouveaux outils.

Semaine du 29 juin au 5 juillet 2026

v1.6.65
  • Export / publication — VRAIE cause corrigée : la génération du rapport plantait (« Cannot access … before initialization ») dès qu'un document était joint au dossier — une fonction interne (, liste des pièces) utilisait l'échappement HTML déclaré plus bas dans le code (zone morte temporelle). Déclaration remontée en tête → publication & export réparés, y compris avec pièces jointes. *(Le passage à Terser en 1.6.64 n'était pas la cause mais reste un gain : bundle plus léger.)*
v1.6.64
  • Correctif majeur — export/publication réparé : l'obfuscateur du build introduisait une erreur de zone morte temporelle (« Cannot access '_0x…' before initialization ») qui cassait la génération du rapport sur certains dossiers en prod (invisible en développement). Remplacé par Terser (minifieur standard, sans ce défaut) : la publication et l'export fonctionnent à nouveau, et le bundle est même plus léger (773 Ko vs 1,32 Mo). Le moteur de valorisation sensible reste côté serveur.
v1.6.63
  • Publication — plus d'échec silencieux : les boutons « Publier & partager » (Expertise et Deal Check) sont désormais protégés : si une étape échoue, un message d'erreur explicite s'affiche (au lieu de « rien ne se passe »). Le sélecteur de norme du rapport a aussi un repli (/charte) si l'élément n'est pas encore présent. Diagnostic + robustesse.
v1.6.62
  • Expertise — le curseur = ce qui s'applique (fini les décotes « d'office ») : chaque ajustement appliqué à la valeur est désormais exactement la position de son curseur, pré-positionné sur la suggestion (référentiel / IA) du dossier et librement ajustable par l'expert. Plus aucune décote appliquée « automatiquement » hors du curseur visible, et comportement identique en mode Expert et Bob. La coche ✓ devient un simple repère « revu » (piste d'audit) qui n'affecte plus la valeur. Corrélations toujours activées par défaut. Le rapport liste tous les ajustements réellement appliqués (cohérent avec l'écran).
v1.6.61
  • Expertise — « Valeurs brutes des méthodes » réagencé : la méthode ① Comparaison passe en pleine largeur, écran partagé — infos DVF & ventes comparables à gauche, carte des comparables à droite (au lieu d'une carte reléguée tout en bas). Les méthodes ② Capitalisation, ③ Coût de remplacement et Biens en vente restent en boxes (style conservé). Nouveau bouton « + Ajouter une méthode » pour afficher les méthodes complémentaires selon le bien.
v1.6.60
  • Expertise — annexes sorties de la valeur brute : la valeur brute (base de la chaîne de décotes) = corps principal seul (médiane du secteur × surface habitable). Les annexes (terrasse, balcon, cave, parking…) sont désormais valorisées sur la médiane brute et ajoutées APRÈS les décotes — elles ne sont plus décotées par l'état / le DPE / l'étage de l'intérieur, ce qui faussait la chaîne des prix.
  • Expertise — valorisation terrasse revue : ratios par catégorie (terrasse plain-pied 0,25 · grande terrasse 0,15 · balcon 0,15 · loggia 0,30 · toit-terrasse/rooftop 0,35) ; repli abaissé de 0,30 à 0,20. Calcul sur le prix/m² brut du secteur (et non plus sur la valeur déjà ajustée).
  • Expertise — abattement de finalité rétabli : l'abattement selon la finalité (valeur banque −15 % · IFI −30 % · succession −20 % · partage −10 %) s'applique désormais bien à la valeur retenue (il était perdu). Sans effet pour une valeur vénale/achat.
  • Expertise — détail « comparaison » épuré : on n'affiche plus la chaîne de coefficients intermédiaires (×état/×étage/×DPE) qui n'est pas celle produisant la valeur retenue ; le détail montre la médiane brute, puis renvoie aux ajustements & décotes qui font réellement la valeur.
  • UI — coins arrondis harmonisés : échelle unique (contrôles 8 px · conteneurs 12 px · bascules rondes) au lieu de rayons disparates (4/5/6/8/10/12/14 px).
v1.6.59
  • Deal Check — cartes d'en-tête cliquables + définitions : les 3 cartes du haut (Score, Coût habiter/mois ou Cash-flow, Multiple/Rendement) ont désormais une infobulle de définition et sont cliquables — un clic déplie « Détail des calculs » et défile vers la section détaillée correspondante.
  • Résidence principale — libellé « Coût habiter/mois » clarifié : sous-titre dynamique (« Acheter coûte moins que louer » quand c'est négatif, au lieu de « Surcoût vs location » toujours affiché) + définition au survol (négatif = acheter revient moins cher que louer).
  • Résidence principale — alertes réévaluées : masquage des alertes purement locatives (DSCR, cash-flow, levier, loyer vs marché, IRR) qui n'ont pas de sens pour un occupant ; ajout de repères pertinents (coût habiter vs louer, mensualité).
  • Deal Check — « Rapport d'analyse » remonté : sorti de l'accordéon « Détail des calculs », il s'affiche en bandeau permanent juste sous les 6 blocs d'analyse.
  • Deal Check — 3 boîtes du bas masquées (Résidence principale / Localisation / Comparables DVF), le temps de retravailler cet affichage.
  • Expertise — un seul glisser-déposer pour les documents : la grille des 8 catégories est remplacée par une zone de dépôt unique ; les pièces sont classées automatiquement (nom de fichier + IA) et les photos toujours embarquées dans le rapport.
v1.6.58
  • Assistant Doctrine — coût par question fortement réduit : au lieu d'injecter tout le lexique (118 fiches ≈ 16 K tokens) à chaque question — ~80 % du coût — l'assistant ne joint désormais que les termes reconnus dans la question (+ quelques termes liés pour le contexte), via un appariement sur les termes et synonymes. Réponses aussi précises (toujours ancrées sur le référentiel + les PDF), pour ~4× moins cher par question. Modèle inchangé.
  • Étanchéité Deal Check → Expertise (sens inverse) : le parcours Expertise ne reprend plus les valeurs saisies dans le Deal Check (surface, loyer, charges, TF, nb pièces, étage, extérieur, parking, cave, ascenseur, exposition, bruit, vis-à-vis, côté). Seules les données issues de l'adresse / des API publiques (type de bien, DPE ADEME, loyer marché DHUP) restent pré-remplies. Combiné au sens Expertise → Deal Check déjà coupé (1.6.56), les deux modules sont totalement indépendants. La restauration d'un rapport enregistré n'est pas affectée (les champs sont restaurés depuis le rapport lui-même).
v1.6.57
  • Deal Check — interface plus compacte : refonte de la mise en page pour scroller moins.
v1.6.56
  • Expertise ⇄ Deal Check — étanchéité : l'expertise ne déverse plus automatiquement ses données (surface, loyer, charges, taxe foncière, étage, exposition…) dans le Deal Check à chaque calcul/recalcul. On peut désormais travailler en parallèle sur une expertise et sur un Deal Check sans que l'un écrase les chiffres de l'autre (fini les « mauvais comptages »). L'import se fait uniquement à la demande, via le bouton « Passer au Deal Check » en bas du résultat d'expertise — qui reprend alors la valeur retenue live + le qualitatif.
v1.6.55
  • Deal Check — « Acheter vs Louer » : lignes à « — » corrigées : *Appréciation attendue*, *Coût économique achat annuel* et *Écart économique achat − location* affichaient « — » (et « Années pour amortir : non rentable » à tort). Cause : le taux d'appréciation équivalent était utilisé avant d'être calculé (ordre des lignes) → NaN en cascade. Il est désormais calculé en amont du tableau.
  • « Mes rapports » — glitch visuel corrigé : barres verticales bleues parasites, « ( » sur les badges et pastille résiduelle sur les sous-titres vides. Cause : la liste réutilisait la classe d'encart (fond + barre latérale + marges) pour de simples libellés/badges *inline*. Remplacé par des styles inline propres (type de client, badges Expertise/Investisseur, « v… »).
v1.6.54
  • Rapport — justification cohérente des décotes corrélées : quand un facteur de décote est corrélé à d'autres (non-cumul), sa justification parle désormais de l'ajustement NET (et non plus de la décote brute) et explique la corrélation et le facteur de pondération (ex. « décote de référence −8 %, 2ᵉ facteur du groupe, pondérée à 50 % → net −4 %, pour éviter le double compte »). Fini l'écart entre la colonne « Ajust. net » et le texte de justification.
  • Extraction documentaire — qualité privilégiée : le modèle d'analyse des documents repasse en priorité sur la variante la plus fiable en lecture (repli sur la variante rapide) — meilleure extraction des informations depuis les pièces, quitte à quelques secondes de plus.
  • Rapport — liste de pièces explicite : la section « Pièces et documents » liste désormais chaque document par son nom (avec la date quand elle figure dans le nom, ex. PV d'AG 2023-06 / 2024-07 / 2025-07), au lieu d'un simple « Autres documents (10) ».
  • Rapport — nom du demandeur / mandant : le client rattaché (CRM) apparaît désormais dans la section Mission du rapport (« Demandeur / Mandant »).
  • Assistant Doctrine — meilleure lisibilité + sources : les réponses sont mises en forme (titres, listes, paragraphes) et une ligne « Sources » affiche les références citées avec leur numéro de page (ex. « [Charte, p. 42] »), issues de la recherche dans les PDF de référence (aperçu au survol).
  • Expertise — encart « Synthèse analyste » (jaune) retiré : redondant et mal placé (la valeur et la fourchette figurent déjà dans les résultats).
v1.6.53
  • Corrections « Bien » plus compact : suppression des cartes (fond/bordure/ombre) autour de chaque section — remplacées par un simple filet séparateur — pour gagner de la hauteur et voir davantage de champs d'un coup d'œil.
v1.6.52
  • Valorisation des zones hors DVF (Alsace-Moselle, Mayotte) : là où la base DVF n'existe pas (livre foncier), l'outil fournit désormais une valeur INDICATIVE fondée sur les annonces en vente décotées de 4 % (négociation), contextualisée par la tendance du marché du secteur (observatoire local, repli indice Notaires-INSEE). La valeur est clairement signalée « indicative / non opposable », avec une réserve chiffrée (nombre d'annonces, base €/m², tendance) à l'écran et dans le rapport, invitant à confirmer via la base notariale locale. Objectif : ne jamais rester sans donnée, tout en restant honnête sur la fiabilité.
  • Comparables — filtre par périmètre de commune : nouveau critère dans le panneau ⚙️ des comparables — Toutes (rayon) · Même commune · Commune + limitrophes — pour restreindre les ventes retenues à la commune du bien ou à son environnement immédiat (meilleure comparabilité locale). Les comparables hors périmètre sont décochés et étiquetés (rien n'est supprimé, l'expert peut les réintégrer).
v1.6.51
  • Comparables DVF — prix au m² bien visible : le tableau des ventes comparables est désormais ouvert par défaut et le €/m² de chaque vente est mis en avant (gras + libellé), en plus du prix indexé à la date de valeur.
  • Rayon 1 km privilégié en zone dense : dans les secteurs à forte densité de ventes (grandes villes), la recherche reste sur 1 km plutôt que d'élargir à 2 km dès que quelques comparables suffisent (meilleure comparabilité locale) ; l'élargissement automatique ne joue plus que là où la donnée est réellement rare.
  • Corrections « Bien » — deux écrans sans accordéon : les caractéristiques du bien sont réparties sur deux écrans (① *Localisation · Bâti & surfaces · État/énergie* → ② *Annexes · Surfaces utiles · Diagnostics*), toutes sections ouvertes (fini les blocs à déplier) ; on scrolle puis « Suivant ». Le sous-menu Corrections passe à *Bien → Bien (suite) → Immeuble → Occupation*.
v1.6.50
  • Expertise — « partie haute » repliable : le bloc du haut (localisation + badges de données + dépôt de documents) se replie automatiquement dès qu'on quitte l'étape ② Fichiers (Corrections, Calcul, Export) pour dégager l'écran — il ne restait affiché en permanence jusque-là. Il se déplie sur ② Fichiers et reste repliable/affichable à la main via son en-tête (l'adresse reste visible en résumé une fois replié). Le mode expert s'ouvre désormais directement sur ② Fichiers après localisation.
v1.6.49
  • Expertise — étape « Corrections » clarifiée : le sous-menu Bien → Immeuble → Occupation est désormais bien visible (sous-stepper numéroté), et le bouton « Suivant » enchaîne les trois écrans (bien, puis immeuble, puis occupation) avant de passer au Calcul — au lieu de sauter directement au calcul.
  • Expertise — suppression d'un encart superflu : la boîte « Astuce » qui réapparaissait sous le tableau de bord (et n'avait plus lieu d'être une fois l'analyse faite) est retirée ; le guidage d'étape suffit.
v1.6.48
  • Message d'erreur d'analyse plus précis : en cas d'échec de l'analyse des documents, la cause exacte (ex. délai dépassé, quota, indisponibilité) est désormais affichée, au lieu d'un message générique — pour diagnostiquer plus vite.
v1.6.47
  • Renforcement de la sécurité des comptes : protection anti-robot / anti-martèlement sur la connexion (limitation des demandes de lien), journal des connexions côté administrateur (nouvel onglet « 🛡️ Connexions » : liens envoyés, connexions, blocages, échecs — sans adresse IP en clair, conforme RGPD) et durcissements internes de l'administration.
  • Conformité RGPD — purge automatique : les liens de connexion expirés/utilisés et les journaux anciens sont désormais purgés automatiquement (limitation de conservation des données), en cohérence avec la politique de confidentialité.
  • Robustesse d'affichage : durcissement de l'affichage des informations extraites des documents (échappement systématique).
v1.6.46
  • Export PDF / Word à nouveau fiable : l'export tombait sur une pop-up d'impression parfois bloquée par le navigateur après l'ouverture de la fenêtre de vérification. L'impression passe désormais par un cadre interne (plus de pop-up bloquée), le bouton réagit immédiatement.
  • Cartes du rapport plus nettes et à la bonne échelle : le plan de situation est désormais cadré serré sur le bien et ses comparables (zoom plafonné, comme à l'écran) au lieu d'un cadrage trop large — carte plus lisible, plus nette, moins de libellés de régions.
  • Fenêtre de vérification avant export — contrôles renforcés : la fenêtre impose maintenant (1) de préciser l'état d'occupation (obligatoire, modifiable — relance le calcul si besoin), (2) de vérifier et valider les écarts détectés entre les données du dossier et les documents fournis (ex. classe DPE, loyer), (3) d'acter les charges de copropriété et la taxe foncière estimées (aucun justificatif reçu) — désormais signalées « (estimation) » dans le rapport.
  • Décotes — corrélations désormais optionnelles : un interrupteur « Appliquer les corrélations entre décotes » (activé par défaut) permet à l'expert de choisir le non-cumul des facteurs liés (lumière, vis-à-vis, RDC…) ou d'appliquer les décotes en brut (additif). Le mode retenu est mentionné dans le rapport.
  • Analyse de marché — texte resserré : le générateur d'analyse de marché a été recadré sur la doctrine (offre/demande, prix, liquidité, segmentation/perspectives) avec des règles anti-redite — fini les répétitions de sources et les chiffres déjà présents dans les tableaux du rapport.
  • Biens en vente — pondération par défaut à 10 % : dans la méthode par comparaison, les annonces en cours (prix demandés) pèsent désormais 10 % par défaut face aux ventes réalisées (DVF), le curseur restant ajustable par l'expert.
v1.6.45
  • Fenêtre de vérification avant export : un export (PDF, Word ou « Publier ») ouvre désormais une fenêtre de contrôle demandant de (1) confirmer que toutes les données saisies et celles extraites automatiquement ont été vérifiées et validées, (2) inclure ou non une analyse de marché (rédigée à la volée si demandée et absente), (3) inclure ou non le bloc « Valeurs selon la situation » avec, le cas échéant, l'âge de l'usufruitier (barème art. 669 CGI). L'export ne part qu'après confirmation explicite.
  • Rapport restauré (« Modifier la saisie ») désormais pré-rempli : depuis le lien « Modifier la saisie » d'un rapport publié, le mode expert s'ouvre maintenant avec le formulaire peuplé (et non plus un écran vide) ; l'adresse géocodée et l'état « calculé » sont restaurés avec la saisie, et le calcul est relancé automatiquement.
  • Supervision IA — administrateur : un moniteur en direct (réservé à l'administrateur) affiche, à chaque exécution d'IA, le modèle, les jetons (entrée/sortie), le coût et le temps de réponse, avec le cumul de la session.
  • Journal d'utilisation IA — administrateur : nouvel onglet d'administration « 📊 Log IA » récapitulant les appels (utilisateur, modèle, jetons, coût, latence, état) avec synthèse par période et par modèle. Journal léger et sans adresse IP (choix RGPD).
v1.6.44
  • Rapport publié — bouton « ✏️ Modifier la saisie » réservé à l'auteur : la page du rapport partagé (lien court ) affiche désormais, en haut, un lien « Modifier la saisie » qui rouvre le mode expert avec la saisie de ce rapport pour la corriger avant de re-partager. Réservé à l'auteur connecté : le lien restaure la saisie via le CRM, dont l'accès est scopé côté serveur à l'e-mail de session — un autre compte ou un visiteur non connecté ne peut rien restaurer (lien sans effet). Le rapport est sauvegardé au CRM à la publication pour porter ce lien ; sans connexion CRM, pas de lien.
v1.6.43
  • Expertise — lot d'ajustements (décotes, comparables, CRM, rapport)
v1.6.42
  • Rapport — ordre des chapitres (préambules avant les chiffres) : réorganisation conforme à la pratique FR/RICS.
v1.6.41
  • Rapport — présentation & lisibilité (suite réconciliation A.3)
v1.6.40
  • Expertise — réconciliation des ajustements : le panneau de décotes devient la source UNIQUE (fin du double-comptage A.3). Jusqu'ici le moteur appliquait ses coefficients qualitatifs (état/étage/vue/DPE/localisation) à la comparaison et le panneau proposait les mêmes décotes, et le rapport affichait deux tables (dont une « Coefficients d'ajustement appliqués » qui pouvait lister des coefs en fait non appliqués à la valeur en branche DVF). Désormais
v1.6.39
  • Expertise — export & génération de lien visibles dès le calcul : depuis la refonte en wizard, le bloc « Générer le rapport » (Export PDF / Word / Publier & partager le lien) n'apparaissait qu'à l'étape ⑤ Export, donnant l'impression qu'il avait disparu. Il s'affiche désormais directement sous les résultats, dès que la valeur est calculée (étape ④ Calcul) — comme avant la refonte.
v1.6.38
  • Expertise — cohérence de la valeur retenue (héritage de prix) : la valeur du titre, celle des « Valeurs selon la situation » et celle reprise dans le Deal Check sont désormais la même — la valeur retenue. Auparavant, tant qu'aucun ajustement n'était validé, le multi-situations et le Deal Check héritaient de la base brute non décotée (différente du titre).
  • Ajustements répercutés partout : déplacer un curseur de décote met maintenant à jour en direct non seulement la valeur retenue, mais aussi le bloc « Valeurs selon la situation » et le Deal Check (qui restaient figés à la valeur d'avant ajustement).
  • Barème dégressif visible par curseur : pour une décote corrélée (anti-cumul des défauts liés), le coefficient dégressif retenu (1ʳᵉ à 100 % · 2ᵉ à 50 % · 3ᵉ+ à 30 %) et la décote nette réellement appliquée s'affichent désormais à côté du curseur (et plus seulement dans le tooltip et le rapport).
v1.6.37
  • Balcon / terrasse extraits par l'IA — pondération corrigée : une terrasse ou un balcon détecté dans les documents était valorisé avec un forfait unique (0,30) au lieu de son coefficient réel — un balcon étroit (coef 0,00) était donc survalorisé. L'IA classe désormais l'annexe (balcon utile / balcon étroit / terrasse petite ou grande / loggia) et la surface entre dans la surface utile pondérée avec le bon coefficient (toujours ajustable par l'expert).
  • Critère « environnement / ambiance » suggéré depuis l'adresse : l'environnement immédiat (rue calme / boulevard passant / voie ferrée) est désormais pré-suggéré à partir des nuisances géolocalisées détectées autour du bien (voie ferrée/rapide, métro aérien, vie nocturne, zones industrielles/ICPE). Suggestion validable et modifiable.
  • Pondération des sources clarifiée : le curseur « DVF officiel ↔ Annonces » est renommé « Pondération des sources — méthode comparaison » et précise qu'il ne s'agit pas de la pondération entre méthodes (comparaison / capitalisation / coût), laquelle s'affiche sous la valeur retenue.
  • Définition normative repliée : la box rappelant la définition de la valeur vénale passe en accordéon replié à l'écran (moins de bruit visuel ; définition conservée dans le rapport).
v1.6.36
  • Expertise — ajustements auto alignés sur le référentiel : une décote suggérée automatiquement ne sort plus de la fourchette documentée du référentiel (l'outil ne se contredit plus en signalant « hors fourchette » sa propre suggestion). Exemples corrigés : *vis-à-vis modéré* −3 % → −5 % (plancher), *DPE F* −12 % → −10 % (plafond). Les valeurs déjà dans la fourchette sont inchangées ; un déplacement manuel du curseur par l'expert reste libre (et reste signalé s'il sort de la fourchette).
v1.6.35
  • Expertise — case « Valeur opposable » réalignée : à l'étape ① Mission, la case à cocher et son texte étaient poussés à droite de l'encadré jaune (héritage d'un style de champ standard). La case est de nouveau à gauche, suivie de son libellé.
v1.6.34
  • Expertise — « Valeurs selon la situation » corrigée : la nue-propriété et l'usufruit affichaient par erreur la même valeur. Elles sont désormais complémentaires (leur somme = la valeur en pleine propriété), et un nouveau champ « âge de l'usufruitier » (optionnel) applique le barème exact de l'article 669 du CGI (recalcul en direct) ; sans âge, un forfait clair 40 / 60 est indiqué. La table présente toutes les situations à titre indicatif : valeur libre, assiette IFI (si résidence principale), succession, démembrement (nue-propriété / usufruit), vente forcée et valeur occupée / louée.
v1.6.33
  • Expertise — boutons d'export rétablis : suite à la refonte en wizard, les boutons de génération du rapport (PDF / Word / Publier) avaient disparu à l'étape ⑤. Corrigé.
  • Expertise — écran de résultats clarifié : (1) les valeurs des méthodes sont désormais étiquetées « Valeurs brutes (avant ajustement) » avec une invite explicite à procéder aux ajustements ci-dessous ; (2) le « Rappel du Référentiel des ajustements » (accordéon replié) est remonté juste avant les curseurs d'ajustement ; (3) suppression du doublon de sélecteur de norme (la box « Référentiel normatif » faisait double emploi avec le « Cadre de la mission » — un seul réglage subsiste).
  • Cadre de la mission ↔ pièces du dossier : le cadre de la mission affiche désormais une checklist des pièces attendues (Titre, DPE, PV d'AG, Bail, Taxe foncière, Plans) marquées ✓ fournie / ✗ manquante / — non pertinente, mise à jour à chaque ajout de document.
  • Carte du rapport fidèle à l'écran (en français) : le plan de situation du rapport reprend désormais les mêmes points que la carte à l'écran — ventes récentes (DVF) et biens en vente — avec une légende identique en français, et un garde-fou évitant une carte cassée quand les points sont nombreux.
  • Barre de progression (étapes) bien fixée en haut pendant le défilement.
v1.6.32
  • Expertise — étape ③ Corrections allégée (sections repliables) : dans le sous-onglet « Bien », les sections avancées (Annexes & extérieurs, Surface utile pondérée, Diagnostics techniques) sont désormais repliées par défaut ; l'essentiel (Localisation, Bâti & surfaces, État/énergie) reste ouvert. Chaque titre de section se déplie/replie d'un clic → on voit l'important d'abord, on déroule le fin au besoin. Purement visuel : replier une section ne change aucune valeur ni le calcul.
v1.6.31
  • Expertise (mode expert) — parcours clarifié (assistant 5 étapes à sens unique) : le flux d'expertise devient un vrai wizard linéaire — ① Mission → ② Documents → ③ Corrections → ④ Calcul → ⑤ Export. Une seule navigation : le fil d'étapes en haut et les boutons Précédent / Suivant sont désormais synchronisés (fini les deux systèmes qui se contredisaient), chaque étape tient sur un écran focalisé (on ne scrolle plus dans un formulaire géant), un bandeau rappelle ce que fait l'étape en cours, et les étapes Calcul et Export sont enfin de vrais écrans. Surtout, le calcul ne se déclenche plus tout seul pendant la saisie : il est lancé explicitement par « Calculer la valeur » ; après coup, toute modification affiche un badge « ↻ Résultats à mettre à jour » invitant à recalculer (calcul délibéré et horodatable — cohérent avec le mode opposable).
v1.6.30
  • Chargement de l'app plus rapide : le moteur JavaScript de l'outil est désormais servi dans un fichier séparé mis en cache (nom versionné par contenu), au lieu d'être ré-embarqué dans la page à chaque chargement — et l'empaquetage est allégé (~−30 % de poids réseau, exécution plus rapide). Concrètement, après la première visite, l'essentiel ne se re-télécharge plus tant qu'il n'a pas changé, et une mise à jour qui ne touche pas le moteur est instantanée à charger. Aucun changement fonctionnel ni visuel.
  • Sauvegarde des données renforcée (interne) : sauvegarde quotidienne hors-site (Dropbox) de la base (comptes, dossiers, abonnements) et des rapports publiés, en plus de la sauvegarde du code — avec procédure de restauration documentée. Sans impact visible sur l'app.

Semaine du 22 juin 2026

v1.6.29
  • Provenance des données (collecte tracée) : chaque donnée renseignée par collecte assistée par IA à partir des documents fournis est désormais rattachée à sa source. Le rapport peut afficher une section « Provenance des données » (donnée → valeur → source), et l'app un volet déroulant équivalent — pour une expertise vérifiable champ par champ.
  • Valeurs selon la situation (multi-situations) : à partir d'une seule saisie et de la valeur vénale déjà calculée, le rapport décline les valeurs du bien selon la finalité — valeur libre/vénale de référence, IFI (abattement RP −30 %), succession (RP −20 %), nue-propriété / usufruit (forfait, avec rappel que l'art. 669 CGI exige l'âge de l'usufruitier), vente forcée / liquidation, valeur occupée — toutes dérivées de la même base pour rester cohérentes. Estimations indicatives réutilisant les coefficients déjà présents dans le moteur (aucun coefficient inventé) ; à valider par un sachant.
  • « Deal Check » (ex-tableau de bord investisseur) : le volet investisseur est renommé Deal Check — il répond à une question simple, *ce deal tient-il la route ?* (rentabilité, cash-flow, dette, fiscalité, patrimoine → verdict actionnable). Renommage d'appellation uniquement : calculs, données et rapports inchangés.
  • Positionnement « défendabilité » : la copie du rapport et de l'app valorise désormais ce qui distingue une expertise d'une estimation automatique — une valeur défendable (comparables identifiés, ajustements explicités) qui tient face à un contradicteur, là où un estimateur automatisé livre un chiffre sans pouvoir le justifier.
  • Couverture hors base DVF (Alsace-Moselle & Mayotte) : pour un bien situé en Moselle (57), Bas-Rhin (67), Haut-Rhin (68) — *livre foncier* — ou à Mayotte (976), le rapport signale honnêtement que ces territoires sont hors base DVF et que les comparables sont à compléter manuellement / via la base notariale locale (au lieu d'un silence trompeur).
  • Lexique enrichi : nouvelles entrées opposabilité / valeur opposable, valeur défendable / défendabilité, valeurs multi-situations et Deal Check (définition, pourquoi c'est important, exemple « ELI5 », renvois croisés).
v1.6.28
  • Rapport investisseur (PDF) augmenté IA : depuis le dashboard investisseur, génère un rapport structuré (PDF / Word / lien publié) sur le modèle du rapport d'expertise — synthèse, chiffres clés, le bien & l'opération, plan de financement, rentabilité & TRI, trésorerie, patrimoine & projection, fiscalité & plus-value, scénarios & analyse de risque, recommandations, notation /100. Trois apports IA en surcouche : synthèse d'analyste, recommandations chiffrées (l'impact de chaque levier — prix, durée, apport, régime fiscal… — est recalculé par le moteur, jamais inventé), analyse de risque & stress. Le rapport reste toujours générable sans IA (repli sur les chiffres du moteur). Classable dans « Mes rapports » et soumis aux quotas de rapports.
  • Référentiels — recherche sémantique : l'assistant « Référentiels » retrouve désormais les passages pertinents de tes PDF par le sens, et plus seulement par mots-clés exacts (embeddings multilingues + index vectoriel), en complément de la recherche plein-texte (repli automatique si besoin). Plus besoin d'employer les mêmes termes que le document. Les nouveaux PDF sont indexés automatiquement ; un bouton « ↻ Réindexer (sémantique) » (Admin → Référentiels) recalcule l'index pour les PDF déjà déposés.
  • Quotas d'usage + remises (back-office, admin) : chaque formule peut plafonner l'usage mensuel par notion (rapports / expertises / analyses IA), avec un plafond hebdomadaire dérivé (mensuel ÷ 4,33). Blocage dur au-delà : l'IA (côté serveur) et la génération de rapports (PDF / Word / publication) sont refusées, et le bouton « Calculer » est grisé avec un message. Le comptage des expertises est corrigé : 1 par bien analysé (les recalculs/ajustements du même bien ne comptent plus). L'admin voit l'usage vs plafond (mois + semaine) par compte et peut appliquer une remise manuelle (% ou €, avec motif et durée) sur un abonnement. Le compte administrateur et les comptes sans formule restent illimités.
v1.6.25
  • « Référentiels » (ex-Doctrine) — interrogez vos PDF de référence : l'assistant est renommé et peut désormais s'appuyer sur vos documents de référence (Charte, RICS, EVS, USPAP…). L'administrateur dépose les PDF dans *Admin → Référentiels* : le texte est extrait (par page) et indexé en recherche plein-texte. L'assistant cherche alors dans ces documents en plus du référentiel intégré, et cite le document et la page. Les PDF restent réservés à l'admin (usage privé, non republiés).
v1.6.24
  • « Mes rapports » (ex-Clients) : l'onglet est renommé, doté d'une recherche (par client, adresse ou rapport — insensible à la casse et aux accents), et accepte désormais aussi les rapports issus du dashboard investisseur. Un bouton « 💾 Enregistrer dans Mes rapports » classe un dossier d'investissement (rattaché à un client), repérable par un badge « Investisseur » et réouvrable — « Ouvrir » / « Dupliquer pour MAJ » rebasculent sur le dashboard investisseur avec recalcul.
v1.6.23
  • Paramètres d'expertise à deux niveaux (cabinet + rapport) : dans l'onglet Paramètres, l'expert règle désormais ses valeurs par défaut de cabinet pour le taux de capitalisation, la pondération des méthodes et la pondération des annexes (appartement et maison) — en plus du vétustomètre déjà présent. Ces défauts s'appliquent automatiquement à chaque nouveau rapport, tout en restant surchargeables au cas par cas dans le rapport. Héritage : *valeur saisie dans le rapport > défaut du cabinet > barème d'origine*. Réglages persistants (par navigateur). Aucun impact sur un dossier tant qu'aucun défaut n'est posé (valeur de référence inchangée).
v1.6.22
  • Surface utile pondérée des annexes (appartement / maison) : le calcul de valeur intègre désormais une vraie pondération des annexes par coefficient, différenciée appartement / maison et modifiable par l'expert. À la saisie, on choisit la catégorie — appartement : terrasse (petite/grande), balcon (utile/étroit), loggia, parties mansardées, mezzanine, jardin… ; maison : sous-sols (selon hauteur sous plafond et accès garage), combles (selon aménagement), garage, niveaux mixtes… — et le coefficient se pré-remplit (éditable). Le rapport affiche un tableau « Surface utile pondérée » (surface réelle × coefficient = surface pondérée, avec total). Les forfaits (parking/box, piscine) restent valorisés séparément. Compatibilité totale : un dossier existant garde exactement sa valeur tant qu'aucune catégorie n'est choisie.
v1.6.21
  • Réglage « Intelligence artificielle » réservé à l'administrateur : le bloc de configuration du modèle / clé API (onglet Paramètres) n'est désormais visible que pour un compte administrateur (masquage *fail-closed* basé sur la session). Sans incidence en production, où la clé est de toute façon sécurisée côté serveur.
  • Onglets épurés : la barre « Localiser le bien » est aussi masquée dans Paramètres (en plus de Clients/Admin), et le bloc « En attente d'une adresse » ne s'affiche plus dans les onglets Clients et Admin où il n'a pas lieu d'être.
v1.6.20
  • Barre « Localiser le bien » masquée hors contexte : dans les onglets Clients (CRM) et Admin, la barre de recherche d'adresse — sans objet à cet endroit — n'est plus affichée (comme déjà dans l'assistant Expertisia).
  • CRM clients & dossiers : nouvel espace « Clients » pour l'expert. Créez un client société (raison sociale, SIREN) ou particulier (contact, e-mail, téléphone, adresse), classez-y vos rapports, archivez-les et dupliquez un rapport pour mise à jour — la duplication rouvre le dossier dans le Mode expert avec toutes les saisies, prêt à recalculer (lignée conservée). À l'étape Export, un sélecteur « Client » rattache le rapport généré (PDF, Word ou lien publié) au bon dossier ; on peut aussi partir d'un client et lancer un « Nouveau rapport » déjà rattaché. Espace privé par compte (chaque expert ne voit que ses propres clients), stockage serveur.
v1.6.18
  • Rapports — un gabarit dédié et conforme par référentiel : au-delà de citer la bonne norme (v1.6.17), le rapport adopte désormais l'organisation propre à chaque standard — là où deux gabarits seulement servaient les quatre normes (d'où l'impression d'un rapport identique quel que soit le référentiel). Charte : plan d'expertise français numéroté I→X (mission, pièces, identification, environnement, description, situation locative, marché, méthodes, appréciation, conclusion) + hypothèses & réserves + attestation et déclaration d'indépendance. TEGoVA (EVS) : statut & indépendance de l'évaluateur, base de valeur, hypothèses & hypothèses spéciales (deux listes distinctes), section durabilité/ESG dédiée, déclaration de conformité EVS — avec le bon terme « valeur de marché » (et non plus « valeur vénale »). RICS (Red Book / IVS) : statut & indépendance, base de valeur en tête, clause d'incertitude matérielle (si applicable), ESG, déclaration de conformité + page de signature/qualifications. USPAP : lettre de mission, destination & destinataire (Intended Use / Intended User), Highest & Best Use placé avant les méthodes, hypothèses extraordinaires & conditions hypothétiques, attestation reprenant les énoncés requis. Chaque rapport ne cite qu'un seul référentiel, de bout en bout.
v1.6.17
  • Rapport — référentiel unique et cohérent : un rapport ne devait citer qu'un seul référentiel, mais des mentions en dur de la Charte (réserve finale de conformité, « Synthèse pondérée §III.2 ») ou de l'USPAP (page de garde + titre du gabarit international) fuyaient sous les autres normes — un rapport RICS s'affichait par exemple sous bannière « USPAP », un rapport TEGoVA citait la Charte. Désormais le référentiel choisi (Charte / RICS / TEGoVA / USPAP) est la seule et unique référence de bout en bout : page de garde, terme de valeur (« valeur vénale » pour la Charte, « valeur de marché » sinon), demande du mandant, usage prévu, clause de conformité et organisme cité s'alignent tous sur la norme retenue.
  • Cartes nettes à l'export PDF : les cartes (plan de situation, vue satellite, périmètre) sont générées en haute densité à l'écran mais étaient ré-échantillonnées par le moteur de rendu PDF côté serveur (densité 1×) → rendu flou / pixelisé à l'export, surtout la vue satellite. Le PDF est désormais rastérisé en : les cartes y sont aussi nettes qu'à l'écran.
  • Analyse autonome (Ulysse) — accès restreint : la porte « Ulysse » (analyse 100 % IA exploratoire) repasse en accès restreint le temps des réglages. Le Mode expert (saisie manuelle) et Bob (expertise assistée par le chat) restent inchangés et disponibles pour tous.
v1.6.16
  • DPE ADEME — fin du « warn » permanent : la confirmation DPE basculait en « warn » dès qu'il y avait plusieurs DPE à l'adresse sans surface pour trancher — donc systématiquement pour un immeuble (ex. 59 logements) au moment de la recherche, alors qu'un DPE est bien trouvé. La pastille affiche désormais « ok » (l'unité précise est affinée ensuite via la surface). Et les étiquettes de données auto (parcelle / PLU / bâtiment) sont ramenées à la même taille que les confirmations (la Parcelle ne se distingue que par la couleur et le gras).
v1.6.15
  • Mode expert — interface resserrée : (1) la barre d'étapes (① Scope → ⑤ Export) devient collante en haut au défilement ; (2) le bloc « Générer le rapport » passe de 6 à 3 boutons — les exports (PDF / Word / Publier) sont regroupés sous un menu « 📄 Exporter ▾ », et les deux boutons Ulysse (avis + analyse) fusionnent en un seul « 🪄 Ulysse » (l'analyse autonome complète, qui contient déjà sa propre fourchette) ; (3) les « Données récupérées automatiquement » (parcelle / PLU / année / niveaux / hauteur / logements / usage) ne sont plus une grosse box mais des étiquettes affichées juste après les confirmations (BAN, Loyers DHUP, Géorisques…), avec une pastille « Parcelle » plus marquée.
v1.6.14
  • Tendance des prix (24 mois) — quartier réparé + Paris/Lyon/Marseille cohérent : (1) le niveau « quartier » utilisait une emprise géographique au-dessus de la limite de l'API DVF (0,02°) → la requête était rejetée et affichait « données insuffisantes » partout ; ramenée sous la limite (~1 km), elle renvoie de nouveau des données. (2) Pour Paris, Lyon et Marseille, le niveau « ville » interrogeait la commune-mère (ex. 75056), qui ne contient aucune vente DVF (les ventes sont codées par arrondissement) → d'où un trompeur « ville : données insuffisantes » alors que l'arrondissement avait des données. Cette ligne est désormais masquée pour ces trois villes (l'arrondissement fait référence).
v1.6.13
  • Salutation d'ouverture de l'agent (Bob / Ulysse) : en cliquant sur Bob ou Ulysse dans le hub, le chat s'ouvre directement dans le bon mode et l'agent se présente — « Bonjour, je suis Bob / Ulysse… » — en proposant deux entrées : commencer par une série de questions, ou m'envoyer directement les documents (avec la liste des pièces utiles et un bouton pour les joindre).
  • Analyse complémentaire Ulysse en Mode expert : un bouton à l'étape Export lance l'analyse 100 % autonome d'Ulysse à partir du dossier déjà saisi (texte + sa propre fourchette), en complément de la valeur du moteur. (En mode Bob, le récapitulatif propose déjà Bob / Ulysse / les deux.)
v1.6.12
  • Expertisia devient un hub à 3 portes d'entrée : à l'ouverture de l'onglet Expertisia, un écran de choix propose 🛠️ Mode expert (le dashboard d'expertise complet, en saisie manuelle — méthodes, décotes, comparables, rapport), 🤖 Bob (expertise assistée par le chat : l'agent interroge, lit les documents et remplit le dossier ; la valeur reste celle du moteur, Bob l'explique), et 🪄 Ulysse (analyse 100 % IA autonome à partir du seul dossier, exploratoire). Le menu du haut est simplifié en Investisseur · Expertisia · Paramètres (le dashboard d'expertise passe sous « Mode expert »). L'agent guidé est renommé Bob ; l'autonome reste Ulysse.
v1.6.11
  • Analyses IA — variation rétablie entre deux lancements : les appels IA transitent par une passerelle dont le cache renvoyait, pour une entrée identique, toujours la même réponse. L'analyse autonome (Ulysse) ne recevant que le dossier brut (inchangé d'un lancement à l'autre), sa requête était byte-pour-byte identique → réponse figée malgré la température. L'analyse guidée variait, elle, car son entrée (valeur moteur, décotes, annonces recalculées) change à chaque calcul. Correctif : seuls les appels strictement déterministes (température 0, ex. extraction documentaire) sont désormais mis en cache ; toute analyse à température > 0 saute le cache et est régénérée à chaque appel.
v1.6.10
  • Dashboard Expertise — bloc rapport resserré : « Générer le rapport d'expertise » gagne en hauteur — norme + langue + boutons Export PDF / Word / Publier sur une seule ligne, et « Analyse de marché » + l'avis de valeur IA sur une même ligne. L'encart vert « Analyser la rentabilité de cet achat » (passage au dashboard d'investissement) est déplacé sous le bloc de génération du rapport. L'avis de valeur IA indépendant est renommé « Avis Ulysse » (cohérent avec l'agent autonome) et passe au bleu.
v1.6.9
  • Choix de l'analyse directement dans le chat Expertisia : au récapitulatif (avant lancement), on choisit en un clic entre 🧠 Expertisia (guidée), 🪄 Ulysse (autonome) ou ⚖️ Les deux — le choix se fait dans la conversation, plus après coup. L'analyse demandée est produite directement (les deux s'affichent côte à côte si choisi) ; le sélecteur reste dispo pour basculer ensuite. Au passage, le parcours conversationnel applique désormais le même filtre de comparabilité que le dashboard manuel (sélection des comparables cohérente entre les deux modes).
v1.6.8
  • Filtre de comparabilité des comparables (DVF + annonces) : les ventes DVF et les annonces en vente sont passées au même crible — surface (resserrée en ville, élargie en zone rurale), prix/m² aberrants (méthode robuste IQR + garde-fou anti faux-positif), distance, ancienneté, et — selon la donnée disponible — annexes (DVF) et écart de DPE (annonces). Les comparables hors critères sont décochés et étiquetés avec la raison (jamais supprimés : l'expert voit tout et peut ré-inclure d'un clic). Un panneau réglable (curseurs surface / distance / ancienneté / écart DPE + interrupteurs « écrêter les €/m² aberrants » et « inclure les ventes avec annexe ») permet d'ajuster en direct, avec un bouton « ↺ Auto ». Le €/m² de base (ventes et annonces) se recalcule sur les seuls comparables retenus.
v1.6.7
  • Ulysse — prompt d'analyse autonome enrichi : l'analyse 100 % IA passe d'une consigne minimale à un cadrage complet, sans rien retirer à son indépendance (toujours aucune valeur moteur, aucun barème). Ajouts : rôle d'expert métropole + Outre-mer ; lecture hiérarchisée des sources (officiel > expert > photos) ; signalement de toute incohérence à faire valider par l'expert ; méthode explicite (comparaison principale + rendement modéré, coût de remplacement pour l'atypique, sans biais) ; grille de 10 points obligatoires (dont décotes/surcotes détaillées, qualité et sécurité du quartier, risques, données manquantes) ; et un verdict de valeur en tête au format fixe. Réponse plus longue autorisée et dossier transmis plus complet.
v1.6.6
  • Ulysse — analyse autonome (100 % IA) + sélecteur d'analyse dans Expertisia : à la fin de l'entretien, un sélecteur permet de lancer l'analyse Guidée (Expertisia, violet) — encadrée par le référentiel et ancrée à la valeur du moteur, celle qui va au rapport —, l'analyse Autonome (Ulysse, bleu) — 100 % IA à partir du seul dossier brut, sans référentiel, sans barème ni ancre : Ulysse forme librement son raisonnement et sa propre fourchette —, ou les deux côte à côte (2 colonnes) pour comparer. L'analyse autonome est exploratoire et hors rapport. (À distinguer de l'« Avis Expertisia », qui reçoit la valeur moteur comme point de comparaison ; Ulysse, lui, part de zéro.)
v1.6.4
  • Page publique « Nouveautés » : nouveau journal des versions, accessible depuis le menu et le pied de page (landing + Fonctionnalités). Les améliorations y sont regroupées par semaine (un bloc par semaine) et la page se met à jour automatiquement à chaque nouvelle version. Le contenu est assaini automatiquement : aucun détail technique interne ni nom de fournisseur n'y apparaît.

Semaine du 15 juin 2026

v1.6.3
  • Vétustomètre éditable — barème par défaut (Paramètres) : nouvel éditeur dans Paramètres → Expertise pour ajuster les poids et durées de vie des 19 lots techniques (gros œuvre, toiture, plomberie…) qui pilotent la décote de vétusté de la méthode du coût. Sauvegardé localement, appliqué à toutes les expertises. Bouton « ↺ Barème d'origine ».
  • Override du vétustomètre par rapport : dans le parcours Expertise, possibilité d'ajuster le vétustomètre uniquement pour ce rapport (bien atypique, gros œuvre repris…). L'override est conservé avec le dossier (réédition) et figé dans le rapport publié. Priorité : override-rapport > défaut Paramètres > barème d'origine. Recalcul en direct.
v1.6.2
  • Curseurs de vétusté (décotes) : « État intérieur » → renommé « État / vétusté du bien » (maison + appart). Nouveau curseur « État / vétusté immeuble / copro » (appartement uniquement) — suggéré automatiquement depuis l'état des parties communes + l'âge du bâti (données bâtiment publiques/saisie). Pour éviter le double-compte, « Copropriété / Charges » est recentré sur le volet financier (procédures/travaux votés). Texte conforme + recalcul live inclus.
v1.6.0
  • Recoupement — style architectural ↔ année : le rapport croise le « type d'immeuble » déclaré (Haussmann, 1930, etc.) avec l'année de construction (saisie / données bâtiment publiques / DPE) et signale une incohérence (ex. « haussmannien » mais bâti 1985).
  • Bien atypique : nouveau champ (loft, bien d'exception, sans réel comparable) → fourchette de valeur élargie (± 15 %) au lieu de ± 8 %, + réserve méthodologique au rapport (comparaison moins fiable, privilégier le coût de remplacement). Recalcul en direct.
v1.5.5
  • Assistant doctrine — point d'entrée fiable dans le header : ajout d'un bouton « ⚖️ Doctrine » (à côté de Glossaire) qui ouvre le même chat. Le bouton flottant en bas à droite peut être masqué par certains bloqueurs de pub/extensions (qui le prennent pour un widget de chat) ; le bouton du header, lui, est toujours accessible. Icône du flottant passée en ⚖️ (distincte du 📖 Glossaire).
v1.5.4
  • Assistant doctrine — le panneau se refermait aussitôt : sur certains appareils (trackpad/tactile), un seul tap émet 2 événements → le bouton flottant ouvrait puis refermait le chat instantanément. Ajout d'un anti-double-déclenchement (350 ms) + . Le panneau reste ouvert.
v1.5.3
  • Assistant doctrine — bouton flottant + chat séparé : un bouton flottant (en bas à droite) ouvre un mini-chat dédié aux questions professionnelles & définitions, répondant uniquement à partir des référentiels de l'application (NORMES, REFERENTIEL, décotes documentées, hiérarchie des sources, règles de non-cumul) + les 105 fiches du lexique. Même source que le moteur → réponses cohérentes avec les calculs ; cite la règle/fourchette et signale « non couvert » plutôt que d'inventer. Masqué dans le mode Expertisia (évite le chevauchement).
v1.5.2
  • Boutons d'export refaits (étape Export) : style unifié et propre (pilules cohérentes) au lieu de couleurs disparates. Le menu déroulant « Format » est remplacé par des boutons explicites : 📄 Export PDF, 📝 Export Word / Google Doc, 🔗 Publier & partager.
  • Lien de partage visible immédiatement : il s'affiche désormais juste sous les boutons et la vue défile dessus (avant il apparaissait en bas de page → on croyait le bouton inactif).
v1.4.8
  • Analyse de marché RÉDIGÉE avec recherche web temps réel (rapport) : bouton « Analyse de marché rédigée (web, à jour) » à l'étape Export → génère un texte macro (France) + micro (marché local), à jour et sourcé, via recherche web. S'ajoute en tête de la section « Marché local » du rapport, au-dessus des tableaux/graphiques. À titre indicatif ; ne donne pas de valeur du bien. Purgée au changement de bien.
  • Carte satellite de la parcelle dans le rapport : la parcelle cadastrale s'affiche désormais en vue satellite (contour IGN jaune bien visible) au lieu du plan classique.
  • Cartes du rapport uniformisées : périmètre administratif, plan de situation (comparables) et parcelle satellite ont le même format (640×340) et sont en pleine largeur, empilées (fini le côte-à-côte de tailles différentes).
v1.4.7
  • Refonte UX du formulaire « Caractéristiques du bien » (étape ③ Corrections) : les 4 grilles désordonnées (colonnes jamais alignées) sont remplacées par 5 cartes thématiques (📍 Localisation, 🏗️ Bâti & surfaces, ⚡ État/énergie/ambiance, 🌿 Annexes/extérieurs/vues, 🛡️ Diagnostics) et une grille unique alignée (colonnes qui se superposent d'une carte à l'autre). Layout plus dense → moins de scroll.
  • Badge « IA » des champs pré-remplis sorti du flux : il se place dans le coin haut-droit (gouttière réservée) au lieu de s'empiler sous l'input — les rangées ne sont plus décalées en hauteur, et il ne chevauche plus les labels longs. Inputs conservés pleine largeur.
v1.4.6
  • Justifications de décote/surcote sans IA — textes conformes stockés en dur : chaque facteur a un modèle de justification conforme (Charte) ; le % est inséré dynamiquement et se met à jour quand on bouge le curseur. Plus d'appel IA systématique. L'expert peut éditer librement (sa saisie n'est jamais écrasée) ; bouton « 📝 Conforme » pour réinsérer le modèle, « ✨ IA » reste disponible en option. Les justifications alimentent automatiquement le tableau du rapport.
  • Scope of Work pré-rempli par norme, sans IA : au changement de norme (Charte / RICS / TEGoVA / USPAP), les hypothèses et réserves se remplissent avec un texte conforme au vocabulaire et au contexte (visite, pièces manquantes, occupation, DPE) — FR pour Charte/TEGoVA, EN pour RICS/USPAP. Bouton « 📝 Conforme » par champ ; « ✨ IA » optionnel. Saisie expert préservée.
v1.4.5
  • Correctif régression — génération du rapport & lien court : (graphique d'étude de marché, ajouté en 1.4.2) appelait , une fonction locale à → qui faisait échouer toute la génération du rapport (export Word/PDF et publication du lien partageable). Remplacé par un échappement local. Vérifié : et réussissent à nouveau.
v1.4.4
  • Dashboard expertise — accueil fusionné en deux colonnes : un seul encadré « Dashboard — Expertise valeur de marché », puis 📍 Localiser le bien (gauche) et 📎 Charger des documents (droite). La barre de localisation est relogée dans la colonne gauche en mode expertise (et remise en place globale pour le dashboard investisseur).
  • Zone d'upload de documents dès l'accueil : dropzone (glisser-déposer ou parcourir) + liste des pièces attendues (titre de propriété, DPE, PV d'AG, règlement de copro, bail, taxe foncière, plans, photos). Les documents alimentent l'analyse IA qui pré-remplit les champs des écrans suivants.
v1.4.3
  • Paris / Lyon / Marseille — double tracé sur la carte du préambule : l'arrondissement (cyan) est désormais délimité au sein de la commune mère (gris) sur la carte du périmètre administratif (rapport). récupère les deux contours ; accepte plusieurs tracés.
  • Carte de la parcelle cadastrale dans le rapport : ajoutée à côté du plan de situation des comparables (contour IGN + repère du bien + référence/contenance).
v1.4.2
  • Rapport — étude de marché en tête de la section « Marché local » : cartes d'indicateurs (prix médian €/m², évolution sur 24 mois, volume de ventes, loyer de marché, rendement brut indicatif, coût du crédit) + graphique d'évolution des prix (médianes trimestrielles €/m² par périmètre : quartier / arrondissement / ville), en SVG imprimable.
  • Tendance locale stockée dans le flux expertise : est désormais alimenté après le calcul → le graphique du rapport et l'indexation des comparables fonctionnent partout, DOM inclus (Guadeloupe…), même sans passer par le dashboard.
v1.4.1
  • Expertisia plus rapide : l'extrait du texte des documents envoyé à l'agent à chaque tour est ramené de 18 k à 8 k caractères (latence réduite).
  • Expertisia — fin de la course upload/réponse : si l'on joint des documents pendant qu'une réponse est en cours, l'upload attend la fin du tour (plus d'appels IA concurrents, plus de tour « avalé »).
v1.4.0
  • Carte du périmètre administratif dans le préambule du rapport : commune délimitée — ou arrondissement pour Paris/Lyon/Marseille — avec le repère du bien. Source geo.api.gouv.fr (commune & arrondissements, y compris Outre-mer). Intégrée au bloc « Contexte socio-économique & marché ».
  • Helpers carte génériques : overlay GeoJSON sur carte statique le fournisseur cartographique ( / ).
v1.3.3
  • Badge de similarité sur chaque vente comparable DVF : Faible / Moyen / Élevé (+ score /100), depuis le score de comparabilité existant (distance · surface · typologie · récence).
  • Prix au m² indexé à la date de valeur affiché à côté du prix brut (ligne « → idx »), via le taux d'évolution du marché local (tendance 3 ans si dispo, sinon évolution départementale Notaires, borné ±15 %/an). Indicatif.
v1.3.2
  • Champs masqués selon le type de bien : pour une maison, les champs de copropriété restants (n° de lot, tantièmes, destination du lot, Carrez du lot, étage/étage total, ascenseur) sont désormais masqués (complète les sections copro déjà masquées). Pour un appartement, terrain et piscine sont masqués. Moins de bruit, formulaire adapté au bien.
v1.3.1
  • Préambule — Contexte socio-économique & marché dans le rapport : revenus médians de la commune (INSEE Filosofi), marché DVF local (médiane + volume), tendance des prix sur 3 ans, loyer de marché (DHUP) et coût du crédit (macro, BdF/BCE). Branché sur des données déjà chargées à la recherche d'adresse, dans les deux formats de rapport.
  • Recoupement des sources (contrôle de cohérence) : confronte la saisie de l'expert ↔ données bâtiment publiquesDPE (ADEME) ↔ cadastre pour la surface, l'année de construction et les matériaux (murs/toiture), avec alerte ⚠ sur les écarts. Au rapport.
  • Roadmap : style architectural via Street View + IA vision noté (chantier séparé).
v1.3.0
  • Taux de capitalisation éditable : champ « Taux de capitalisation (%) » (override de la méthode revenu), modifiable en direct après calcul → la valeur se met à jour sans nouvelle recherche. Vide = taux dérivé des comparables du quartier.
  • Pondération des méthodes en live : les poids Comparaison / Capitalisation / Coût (déjà présents) sont désormais modifiables après calcul avec recalcul immédiat, et mieux mis en avant (utile pour les biens atypiques : basculer le poids vers le coût).
  • Diagnostics → décote suggérée : un diagnostic signalant un problème (amiante avec travaux, plomb positif, électricité/gaz vétuste, zone à risques, termites) pré-suggère une décote sur le curseur « Risques techniques », que l'expert valide/ajuste. Ajout d'un champ Termites / parasites (saisie + extraction documentaire), pertinent en Outre-mer.
v1.2.1
  • Profondeur historique des comparables DVF : sélecteur « Historique » (Auto / 1 / 2 / 3 / 5 / 8 ans) à côté du rayon, dans le panneau des ventes comparables (expertise + Expertisia). Le choix de l'expert fixe la plage d'années et désactive le repli automatique d'année ; « Auto » conserve le comportement par défaut (récent + repli si insuffisant).
v1.1.5
  • Valeur à neuf (reconstruction / assurance) — appartements : la ligne n'est plus affichée pour un appartement (rapport + dashboard) — la reconstruction se gère à l'échelle de l'immeuble/copro, une valeur par lot n'a pas de sens. Conservée pour les maisons.
v1.1.4
  • Diagnostics techniques extraits des documents : amiante, plomb (CREP), électricité, gaz et état des risques (ERP) sont désormais lus dans le DDT/dossier de diagnostics et pré-remplis dans les champs (informatifs, aucune décote automatique). Vaut pour l'expertise manuelle ET Expertisia (même moteur d'extraction documentaire). Les travaux & entretien copro étaient déjà extraits.
  • Alignement du formulaire d'expertise : le badge « 📄 IA » devient un chip compact (fini les barres pleine largeur), et les champs d'une même rangée s'alignent malgré des intitulés sur 1 ou 2 lignes.
v1.1.3
  • Extras investisseur masqués (temporaire) : « Meilleurs deals potentiels », « Et si vous aviez placé votre apport ailleurs ? » et « Louer ce bien et investir la différence ? » sont masqués le temps de les fiabiliser. Code conservé, reprise notée en roadmap (non prioritaire).
  • Expertisia — un seul indicateur « Analyse en cours » : en mode chat, seule la barre de progression subsiste (suppression du statut texte + du placeholder résultat + du libellé du bouton qui faisaient doublon).
  • Non-cumul RDC — robustesse : le cluster RDC ne se déclenche plus sur un champ étage vide (lecture de la valeur brute : vide ≠ 0). Un vrai RDC (étage 0) regroupe toujours étage + luminosité + vis-à-vis.
  • Cache : en-tête → les déploiements sont pris en compte immédiatement (fini le JS périmé en cache après une mise à jour).
v1.1.2
  • Non-cumul — cluster RDC : au rez-de-chaussée, étage + luminosité + vis-à-vis sont regroupés dans UN seul cluster dégressif (100 / 50 / 30 %) car ils procèdent du même défaut (plain-pied sur rue, sombre, exposé). Aux étages courants, règles habituelles inchangées (lumière/ouverture, intimité séparés). Appliqué au calcul réel, au récap Expertisia et au brief IA.
  • Horizon de détention : champ rendu visible dans les « Paramètres essentiels » (défaut 10 ans). Sa modification recalcule à la volée toute la performance (IRR, ROI, cash multiple, patrimoine projeté, coût réel, stratégie de sortie).
  • « Repères marché & contexte » — box unique : fusion des valeurs à jour (taux crédit, loyer DHUP, taxe foncière) avec le micro (médiane DVF & liquidité, rendement de marché, tendance des prix sur 3 ans) et le macro (effet de levier cap rate vs taux), en cards uniformes. Suppression de la bande séparée → lecture plus claire.
v1.1.1
  • Annonces en vente — pertinence géographique (renforcé) : extraction robuste des coordonnées de chaque annonce (plusieurs structures possibles du fournisseur), filtrage strict « dans le rayon OU même code postal / arrondissement », rejet de tout ce qui n'est pas vérifiable en zone. Vivier de candidats élargi (jusqu'à 60) puis filtré ; rayon de l'expertise resserré à 2 km + transmission du code postal cible. Champ renvoyé (compteurs, sans donnée personnelle) pour tracer ce que fournit la source.
  • Récap Expertisia — non-cumul des facteurs corrélés : la liste « ⚖️ Éléments qui influenceront la valeur » applique désormais l'amortissement par clusters dégressifs (100 / 50 / 30 %), cohérente avec le tableau de justification et le récit de l'évaluateur ; valeurs amorties + effet net affichés.
v1.1.0
  • Carte de localisation (dashboard) : politique de referrer corrigée — l'image statique servie par un token restreint par domaine s'affiche à nouveau (les autres cartes utilisaient déjà ).
  • KPIs « Comparables DVF » : « Ton prix/m² » et « Écart vs médiane » affichent « — » tant qu'aucun prix d'achat n'est saisi (fini le « 0 €/m² » / « −100 % » trompeur).
  • Recherche de deals déclenchée par un bouton (suppression de l'appel automatique au chargement), descendue dans les accordéons et repliée par défaut ; placeholder explicite avant recherche.
  • Repères marché intégrés à la box « Paramètres essentiels » (taux crédit, loyer de marché, taxe foncière) au lieu d'une box séparée.
  • « Louer ce bien et investir la différence ? » (box « apport ailleurs ») : calcul de l'épargne mensuelle dégagée si l'on louait le même bien (coût de détention − loyer de marché) + projection comparative achat vs placement à 15 / 20 / 30 ans (apport + épargne capitalisés à 3 / 5 / 8 %, face au patrimoine net si revente).
  • Bandeau de contexte macro + micro (sous les cartes résumé) : macro — coût du crédit (sources officielles) et effet de levier (cap rate vs taux) ; micro — médiane DVF & liquidité, loyer de marché & rendement, zonage, tendance des prix locale sur 3 ans.
  • Expertisia — exploitation des documents joints : le texte des pièces est désormais conservé et fourni à l'agent conversationnel, qui peut y rechercher l'adresse et les informations de base au lieu de les redemander en boucle (corrige « il ne récupère pas les infos des documents et continue de les demander »).

Semaine du 8 juin 2026

v1.0.0
  • Données expert : pondération expert des méthodes (override normalisé) ; diagnostics (amiante, plomb/CREP, électricité, gaz, ERP).
  • Expertisia : citations des sources dans l'analyse (FR + EN) ; sauvegarde de dossiers nommés (enregistrer / charger / supprimer).
  • Performance : Chart.js en ; (BAN, DVF, Cerema, ADEME, tuiles carto) ; 30 j sur .
  • Sécurité / IP : endpoint moteur ajouté à la liste du middleware ; garde-fous + smoke-test bloquant un déploiement de moteur invalide.
  • Versionnage : numéro de version visible discrètement dans l'en-tête de l'app (ce changelog).
  • Page publique « Guide des fonctionnalités » (, FR) : inventaire par thème orienté bénéfices (valeur, jamais le mécanisme), maillée au lexique, indexable (sitemap, canonical).
  • Navigation : « Inspection » regroupée sous le menu Solutions ; Fonctionnalités ajouté au menu principal ; maillage interne landing ↔ guide ↔ lexique (les 3 dashboards renvoient au guide et inversement).