[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"theme-db":3,"megamenu":22,"$fKnz2vuX4bZz1LbUTiuFsvSZ3e07l5_5fqNYp4Tzdhi8":92,"$fAYNcXUSC9huMrBg1rIE-ZS0JKYBTmvm28nfhwouTiTE":160,"header-db":174,"footer-db":187,"$f1md_2EPoBolNsNGF5KcJJsUVITp2YOnIdqDuF4WQrlk":203,"$f-nal29iNdcij68pwXsTbHZmRx_jWbrvlInD034mwZh0":261,"$f0nTqIMDbhUyfqrHbz1JgcWycm4yPtOtZCgKSP9LV4PU":262},{"theme":4},{"colors":5,"typography":13,"ui":17,"defaultColorMode":21},{"primary":6,"secondary":7,"background":8,"foreground":9,"muted":10,"headerBg":11,"footerBg":12,"topBarBg":9,"topBarText":11},"#4F46E5","#0D9488","#F9FAFB","#111827","#6B7280","#ffffff","#020617",{"fontFamily":14,"fontUrl":15,"baseFontSize":16},"Inter, system-ui, sans-serif","https:\u002F\u002Ffonts.googleapis.com\u002Fcss2?family=Inter:wght@400;500;600;700&family=Playfair+Display:ital,wght@0,400;0,700;0,800;0,900;1,400;1,700&display=swap","16px",{"borderRadius":18,"contentWidth":19,"shadow":20},"lg","7xl",true,"light",{"items":23},[24,35,43,51,59,68,76,84],{"id":25,"type":26,"label":27,"href":29,"icon":30,"description":30,"badge":30,"groupTitle":30,"style":30,"gridColumns":30,"cssClass":30,"psCategoryId":30,"showPsChildren":31,"position":32,"children":33,"psChildren":34},41,"link",{"fr":28},"Expertise","\u002Fexpertise",null,false,0,[],[],{"id":36,"type":26,"label":37,"href":39,"icon":30,"description":30,"badge":30,"groupTitle":30,"style":30,"gridColumns":30,"cssClass":30,"psCategoryId":30,"showPsChildren":31,"position":40,"children":41,"psChildren":42},42,{"fr":38},"Blog","\u002Fblog",1,[],[],{"id":44,"type":26,"label":45,"href":47,"icon":30,"description":30,"badge":30,"groupTitle":30,"style":30,"gridColumns":30,"cssClass":30,"psCategoryId":30,"showPsChildren":31,"position":48,"children":49,"psChildren":50},43,{"fr":46},"Modules PrestaShop","\u002Fmodules",2,[],[],{"id":52,"type":26,"label":53,"href":55,"icon":30,"description":30,"badge":30,"groupTitle":30,"style":30,"gridColumns":30,"cssClass":30,"psCategoryId":30,"showPsChildren":31,"position":56,"children":57,"psChildren":58},44,{"fr":54},"Outils IA","\u002Foutils-ia",3,[],[],{"id":60,"type":26,"label":61,"href":63,"icon":30,"description":30,"badge":30,"groupTitle":30,"style":64,"gridColumns":30,"cssClass":30,"psCategoryId":30,"showPsChildren":31,"position":65,"children":66,"psChildren":67},45,{"fr":62},"Offre Starter ✨","\u002Foffre-starter",{"highlight":20},4,[],[],{"id":69,"type":26,"label":70,"href":72,"icon":30,"description":30,"badge":30,"groupTitle":30,"style":30,"gridColumns":30,"cssClass":30,"psCategoryId":30,"showPsChildren":31,"position":73,"children":74,"psChildren":75},46,{"fr":71},"Academy","\u002Facademy",5,[],[],{"id":77,"type":26,"label":78,"href":80,"icon":30,"description":30,"badge":30,"groupTitle":30,"style":30,"gridColumns":30,"cssClass":30,"psCategoryId":30,"showPsChildren":31,"position":81,"children":82,"psChildren":83},47,{"fr":79},"À propos","\u002Fa-propos",6,[],[],{"id":85,"type":26,"label":86,"href":88,"icon":30,"description":30,"badge":30,"groupTitle":30,"style":30,"gridColumns":30,"cssClass":30,"psCategoryId":30,"showPsChildren":31,"position":89,"children":90,"psChildren":91},48,{"fr":87},"Contact","\u002Fcontact",7,[],[],{"columns":93},[94,106,136,152],{"title":95,"links":96},"Plateforme",[97,99,102,103],{"label":98,"href":63,"external":31},"Offre Starter (2 500 €)",{"label":100,"href":101,"external":31},"Devenir Ambassadeur","\u002Fambassadeur",{"label":46,"href":47,"external":31},{"label":104,"href":105,"external":20},"CodeMyShop.com","https:\u002F\u002Fcodemyshop.com",{"title":107,"links":108},"Le Synedre",[109,112,115,118,121,124,127,130,133],{"label":110,"href":111,"external":31},"L'histoire","\u002Fsynedre",{"label":113,"href":114,"external":31},"Constitution","\u002Fsynedre\u002Fconstitution",{"label":116,"href":117,"external":31},"L'équipe","\u002Fequipe",{"label":119,"href":120,"external":31},"Le réacteur en direct","\u002Freacteur",{"label":122,"href":123,"external":31},"Le Drill (entraînement)","\u002Fdrill",{"label":125,"href":126,"external":31},"Protocole de réunion","\u002Fsynedre\u002Freunion",{"label":128,"href":129,"external":31},"Les agents IA","\u002Fagents-ia",{"label":131,"href":132,"external":31},"La Conduite","\u002Fsynedre\u002Fconduite",{"label":134,"href":135,"external":31},"Charte plateforme","\u002Fsynedre\u002Fcharte",{"title":137,"links":138},"Ressources",[139,140,141,144,146,149],{"label":38,"href":39,"external":31},{"label":71,"href":72,"external":31},{"label":142,"href":143,"external":31},"Dictionnaire","\u002Fdictionnaire",{"label":145,"href":29,"external":31},"Expertise PrestaShop",{"label":147,"href":148,"external":31},"Flywheel","\u002Fflywheel",{"label":150,"href":151,"external":31},"Manifeste","\u002Fmanifeste",{"title":79,"links":153},[154,156,159],{"label":155,"href":80,"external":31},"Alexandre Carette",{"label":157,"href":158,"external":31},"Dossier de presse","\u002Fpresse",{"label":87,"href":88,"external":31},{"academy":161,"blog":162,"expertise":173},[],[163,167,170],{"title":164,"url":165,"type":166},"Agents IA et base de données : pourquoi les fichiers ne suffisent plus","\u002Fblog\u002Fstrategie\u002Fintelligence-artificielle\u002Fagents-ia-base-de-donnees-pas-fichiers","blog",{"title":168,"url":169,"type":166},"IA en entreprise : la France a 3 ans de retard — l'opportunité","\u002Fblog\u002Fstrategie\u002Fintelligence-artificielle\u002Fia-france-retard-opportunite",{"title":171,"url":172,"type":166},"Claude Code et entreprises AI-First — la France à la traîne","\u002Fblog\u002Fstrategie\u002Fintelligence-artificielle\u002Fclaude-code-ai-first-france-usa",[],{"header":175},{"logo":176,"topBar":181,"contactEmail":184,"features":185,"navBar":30},{"src":177,"alt":178,"text":155,"href":179,"class":180},"\u002Flogo-ac.svg","Alexandre Carette — Architecte E-commerce Souverain","\u002F","h-10 w-10",{"message":30,"showLanguages":31,"align":182,"languages":183},"left",[],"contact@alexandrecarette.fr",{"showSearch":31,"showWishlist":31,"showLogin":20,"showContact":31,"showCart":31,"stickyHeader":20,"headerLayout":186},"inline",{"footer":188},{"theme":189,"description":30,"hours":30,"logo":190,"contact":191,"social":192,"bottomBar":202},"dark",{"src":177,"href":179,"alt":155},{"email":30,"phone":30,"address":30,"cta":30},[193,196,199],{"platform":194,"href":195,"label":194},"linkedin","https:\u002F\u002Fwww.linkedin.com\u002Fin\u002Falexandre-carette\u002F",{"platform":197,"href":198,"label":197},"malt","https:\u002F\u002Fwww.malt.fr\u002Fprofile\u002Falexandrecarette",{"platform":200,"href":201,"label":200},"github","https:\u002F\u002Fgithub.com\u002Fprest4cafe",{"copyright":30},{"id":204,"title":205,"category":206,"subcategory":207,"slug":208,"coverImage":209,"thumbnailImage":210,"content":211,"faq":212,"metaDescription":258,"active":20,"datePublished":259,"dateUpdated":259,"readingTime":260,"mentor":30,"audioEnabled":31,"audioUrl":259,"author":30},91,"Bases de données et IA — vos pipelines de logs sont vides","strategie","intelligence-artificielle","intelligence-artificielle--bases-donnees-ia-pipelines-logs-vides","https:\u002F\u002Falexandrecarette.fr\u002Fblog-covers\u002Fcover-strategie--intelligence-artifi-1775635345.webp","https:\u002F\u002Falexandrecarette.fr\u002Fblog-covers\u002Fthumb-strategie--intelligence-artifi-1775635345.webp","\u003Cp class=\"lead\">Un manifeste récent affirme que \u003Cstrong>nos bases de données ne sont pas prêtes pour les agents IA\u003C\u002Fstrong>. La thèse fait son chemin sur LinkedIn, recueille des partages, des commentaires admiratifs. Et elle a raison sur un point — un seul. Mais sa solution est fausse, et je vais le démontrer en cinq sources et neuf commits. Pas avec un slide deck. Avec des \u003Ccode>INSERT\u003C\u002Fcode> et des \u003Ccode>git log\u003C\u002Fcode>.\u003C\u002Fp>\n\n\u003Cp>Ce matin, j'ai poussé neuf décisions d'agents IA dans une nouvelle table \u003Ccode>ps_ac_decisions\u003C\u002Fcode> sur une stack PrestaShop + MariaDB \u003Cem>standard\u003C\u002Fem>. Chaque décision contient le qui, le quoi, le pourquoi, les preuves, la validation et le résultat. Mon orchestrateur peut désormais répondre à la question \u003Cem>« qu'est-ce qui s'est passé sur l'item 121 ce matin ? »\u003C\u002Fem> en agrégeant cinq sources hétérogènes en une seule commande Python. Aucun nouveau type de SGBD. Aucune \u003Cem>« reasoning database »\u003C\u002Fem>. Juste de la discipline d'écriture sur ce que vous avez déjà.\u003C\u002Fp>\n\n\u003Cp>Cet article fait partie de notre dossier \u003Cstrong>stratégie › intelligence-artificielle\u003C\u002Fstrong>.\u003C\u002Fp>\n\n\u003Ch2>Les problématiques courantes du raisonnement absent en base\u003C\u002Fh2>\n\u003Cp class=\"article-nav-context\" style=\"font-size:0.9em;color:#64748b;margin:0.5em 0 1.5em;\">Cet article fait partie de notre dossier \u003Ca href=\"\u002Fblog\u002Fstrategie\u002F\" title=\"Tous nos articles Stratégie\">Stratégie\u003C\u002Fa> &rsaquo; \u003Ca href=\"\u002Fblog\u002Fstrategie\u002Fintelligence-artificielle\u002F\" title=\"Articles intelligence-artificielle\">intelligence-artificielle\u003C\u002Fa>.\u003C\u002Fp>\n\n\n\u003Ctable class=\"article-table\">\n  \u003Cthead>\n    \u003Ctr>\u003Cth>Problématique\u003C\u002Fth>\u003Cth>Cause principale\u003C\u002Fth>\u003Cth>Impact métier\u003C\u002Fth>\u003C\u002Ftr>\n  \u003C\u002Fthead>\n  \u003Ctbody>\n    \u003Ctr>\u003Ctd>Agent IA produit des recommandations génériques\u003C\u002Ftd>\u003Ctd>La base stocke des conclusions sans la causalité qui y a mené\u003C\u002Ftd>\u003Ctd>Agent hallucine des plans d'action plausibles mais creux, perte de confiance utilisateur\u003C\u002Ftd>\u003C\u002Ftr>\n    \u003Ctr>\u003Ctd>Impossible de répondre à \u003Cem>« pourquoi cette valeur ? »\u003C\u002Fem>\u003C\u002Ftd>\u003Ctd>Pas de provenance, pas d'historique de décision dans la donnée\u003C\u002Ftd>\u003Ctd>L'humain doit refaire l'enquête manuellement à chaque fois\u003C\u002Ftd>\u003C\u002Ftr>\n    \u003Ctr>\u003Ctd>Apprentissage cumulatif inexistant\u003C\u002Ftd>\u003Ctd>Aucune trace des erreurs passées et de leur résolution\u003C\u002Ftd>\u003Ctd>Le système répète les mêmes erreurs, dette technique invisible qui s'accumule\u003C\u002Ftd>\u003C\u002Ftr>\n    \u003Ctr>\u003Ctd>Audits de conformité impossibles\u003C\u002Ftd>\u003Ctd>Aucun lien entre une mutation de donnée et la décision qui l'a causée\u003C\u002Ftd>\u003Ctd>RGPD, AI Act, ISO 27001 deviennent des cases à cocher au lieu de vraies preuves\u003C\u002Ftd>\u003C\u002Ftr>\n  \u003C\u002Ftbody>\n\u003C\u002Ftable>\n\n\u003Ch2>Ce que le manifeste a raison de pointer\u003C\u002Fh2>\n\n\u003Cp>Soyons honnêtes : \u003Cstrong>il y a un vrai problème.\u003C\u002Fstrong> Une table relationnelle classique stocke des conclusions (\u003Ccode>score = 87\u003C\u002Fcode>) sans documenter le raisonnement qui y a mené, sans la provenance, sans l'historique décisionnel. Quand un agent IA lit cette ligne, il sait \u003Cem>quoi\u003C\u002Fem>, mais pas \u003Cem>pourquoi\u003C\u002Fem>, ni \u003Cem>quand ça a changé\u003C\u002Fem>, ni \u003Cem>qui l'a décidé\u003C\u002Fem>. Conséquence directe : l'agent hallucine des recommandations \u003Cem>plausibles\u003C\u002Fem> mais creuses, parce qu'il extrapole des patterns sans accéder à la causalité.\u003C\u002Fp>\n\n\u003Cp>Sur une boutique e-commerce ou un CRM, cette limite produit des situations absurdes. L'agent IA voit qu'une campagne SEA a un coût par clic à 12 €, mais ne peut pas remonter au choix de mots-clés trop larges qui en est la cause — parce que le choix n'a jamais été écrit nulle part. La conversation s'arrête à \u003Cem>« le CPC est élevé, baissez l'enchère »\u003C\u002Fem>, conseil générique qui peut aggraver le problème au lieu de le résoudre.\u003C\u002Fp>\n\n\u003Cp>Cette limite est réelle. Mais elle n'est \u003Cstrong>pas\u003C\u002Fstrong> un problème de SGBD.\u003C\u002Fp>\n\n\u003Ch2>Le piège du « nouveau type de base de données »\u003C\u002Fh2>\n\n\u003Cp>La tentation, quand on découvre cette limite, c'est de chercher une nouvelle techno qui la résoudrait nativement. \u003Cem>« Il nous faut une reasoning database. »\u003C\u002Fem> Le terme est marketable, il sonne comme une rupture. Sauf que les briques techniques qu'il sous-entend existent depuis dix à quinze ans, et qu'elles sont déjà dans votre stack ou à un \u003Ccode>CREATE TABLE\u003C\u002Fcode> près.\u003C\u002Fp>\n\n\u003Cul>\n  \u003Cli>\u003Cstrong>JSONB Postgres\u003C\u002Fstrong> (disponible depuis 2014) : stockage de provenance, preuves, métadonnées arbitraires sans schéma rigide\u003C\u002Fli>\n  \u003Cli>\u003Cstrong>Datomic\u003C\u002Fstrong> (2012) : base immutable, temporelle, fact-based — sait répondre à \u003Cem>« et avant ? »\u003C\u002Fem> par construction\u003C\u002Fli>\n  \u003Cli>\u003Cstrong>Event sourcing + CQRS\u003C\u002Fstrong> (≈2010, architecturalement éprouvé) : toute mutation devient un événement gardé pour toujours\u003C\u002Fli>\n  \u003Cli>\u003Cstrong>Knowledge graphs\u003C\u002Fstrong> (Neo4j, RDF, depuis 2007) : représentation explicite des relations causales\u003C\u002Fli>\n\u003C\u002Ful>\n\n\u003Cp>Et le \u003Cstrong>Model Context Protocol (MCP)\u003C\u002Fstrong> d'Anthropic, souvent cité dans le débat, \u003Cstrong>n'est pas une \u003Cem>« reasoning database »\u003C\u002Fem>\u003C\u002Fstrong>. C'est un protocole de transport — il standardise la façon dont un agent accède à des ressources externes. Confondre les deux relève d'une lecture trop rapide. MCP transporte la donnée vers l'agent, il ne la pense pas pour vous.\u003C\u002Fp>\n\n\u003Cp>La vraie cause de l'inadaptation, ce n'est donc pas la technologie. C'est \u003Cstrong>l'absence d'une discipline d'écriture qui transforme chaque mutation en trace causale.\u003C\u002Fstrong> Vous pouvez ajouter cette discipline à PostgreSQL, à MariaDB, à SQLite. Vous pouvez la rater sur Datomic. C'est une question d'éthique d'ingénieur, pas d'architecture.\u003C\u002Fp>\n\n\u003Ch2>La preuve par cinq sources\u003C\u002Fh2>\n\n\u003Cp>Pour défendre ce point, je vais m'appuyer sur ma propre stack — \u003Cstrong>PrestaShop 8 headless + MariaDB + Nuxt 3 + une trentaine d'automates Python orchestrés par des agents IA\u003C\u002Fstrong>. Rien d'exotique. Rien que vous ne puissiez reproduire en quelques heures sur une stack équivalente.\u003C\u002Fp>\n\n\u003Cp>Ce matin, mon agent orchestrateur a clos huit items de dette technique en parallèle. Ces opérations ont été tracées dans \u003Cstrong>cinq silos distincts\u003C\u002Fstrong>, qui sont les cinq dimensions d'une véritable mémoire causale.\u003C\u002Fp>\n\n\u003Ch3>Source 1 — L'état courant\u003C\u002Fh3>\n\n\u003Cp>C'est la seule dimension que la majorité des stacks possèdent. Le tableau \u003Ccode>ps_ac_backlog\u003C\u002Fcode> contient un item, son statut, ses notes timestampées qui décrivent ce qui a été fait. Lecture brute. Aucune causalité. C'est le minimum vital. Indispensable, insuffisant.\u003C\u002Fp>\n\n\u003Ch3>Source 2 — Les décisions explicites\u003C\u002Fh3>\n\n\u003Cp>C'est la table que j'ai créée ce matin, en réaction directe au manifeste cité plus haut. Schéma minimal, du MariaDB 10 standard :\u003C\u002Fp>\n\n\u003Cp>Une décision contient l'agent qui a recommandé l'action, l'action elle-même, le sujet sur lequel elle porte, la raison (au moins 30 caractères, pour interdire les raisons creuses), les preuves (références à d'autres tables, commits, requêtes), un statut de validation, qui a validé, le résultat constaté, et trois clés de pont : un commit Git lié, un item de backlog lié, une cicatrice liée.\u003C\u002Fp>\n\n\u003Cp>Aucune extension. Aucun connecteur exotique. Ce qui rend cette table utile, ce ne sont pas ses colonnes — c'est le \u003Cstrong>contrat d'écriture imposé à tous les agents\u003C\u002Fstrong> qui mutent les autres tables. Chaque opération significative doit créer une décision \u003Cstrong>avant\u003C\u002Fstrong> la mutation, ou immédiatement après dans la même transaction logique. Sinon, l'opération est considérée comme une dette de log à colmater.\u003C\u002Fp>\n\n\u003Cp>J'ai gravé neuf décisions ce matin. La règle de validation impose une raison de 30 caractères minimum, un sujet non vide, et exige un validateur pour les statuts approuvés ou rejetés. Une cinquantaine de lignes de Python suffisent à enforcer cette discipline via une couche Active Record.\u003C\u002Fp>\n\n\u003Ch3>Source 3 — Les commits Git\u003C\u002Fh3>\n\n\u003Cp>Vos commits Git \u003Cstrong>sont déjà une reasoning database\u003C\u002Fstrong>. Si vous n'aviez gardé qu'une seule chose, ce serait celle-là. Chaque commit a un auteur, une date, un message, un hash, et un pont vers le code modifié. C'est immuable, c'est requêtable, c'est gratuit. Une commande \u003Ccode>git log --grep\u003C\u002Fcode> suffit à retrouver l'historique d'une décision technique.\u003C\u002Fp>\n\n\u003Cp>La condition pour que ça fonctionne : \u003Cstrong>discipline de message\u003C\u002Fstrong>. Mentionner le numéro d'item, expliquer le pourquoi, pas seulement le quoi. Si vos commits ressemblent à \u003Cem>« fix bug »\u003C\u002Fem> ou \u003Cem>« update »\u003C\u002Fem>, vous écrivez dans une reasoning database avec un crayon vide.\u003C\u002Fp>\n\n\u003Ch3>Source 4 — Les cicatrices\u003C\u002Fh3>\n\n\u003Cp>C'est le journal des erreurs passées. Chaque fois qu'un agent IA s'est trompé, qu'un humain l'a corrigé, et qu'on en a tiré une règle nouvelle, on grave une cicatrice : type d'erreur, gravité, description, agent concerné, \u003Cem>check ajouté\u003C\u002Fem> pour éviter la récidive. Quand un agent prépare une nouvelle action, son orchestrateur lui présente les cicatrices ouvertes les plus pertinentes — c'est ce qui empêche le système de répéter ses propres erreurs.\u003C\u002Fp>\n\n\u003Cp>Quatre-vingt-sept cicatrices gravées à ce jour sur cette stack. Aucune n'a nécessité une nouvelle techno DB. Elles vivent dans une table standard de neuf colonnes.\u003C\u002Fp>\n\n\u003Ch3>Source 5 — Les logs structurés des automates\u003C\u002Fh3>\n\n\u003Cp>Chaque script Python passe par un wrapper de logging qui capture, étape par étape, ce qui s'est passé : début, étapes nommées, durées, erreurs, compteurs métier. Les logs sont écrits en JSON Lines dans un dossier dédié par automate. Un automate qui ne logge pas est considéré comme \u003Cem>aveugle\u003C\u002Fem> et n'a pas le droit d'entrer en cron.\u003C\u002Fp>\n\n\u003Cp>C'est du Python \u003Ccode>with\u003C\u002Fcode> standard, écrivant en JSONL. Aucune base spécialisée. Et pourtant, vous pouvez répondre à \u003Cem>« combien de temps dure habituellement l'étape de génération IA, et quand a-t-elle dérivé ? »\u003C\u002Fem> en deux lignes de pandas.\u003C\u002Fp>\n\n\u003Ch2>Les solutions pour bâtir une mémoire causale sans nouveau SGBD\u003C\u002Fh2>\n\n\u003Ctable class=\"article-table\">\n  \u003Cthead>\n    \u003Ctr>\u003Cth>Solution\u003C\u002Fth>\u003Cth>Complexité\u003C\u002Fth>\u003Cth>Gain estimé\u003C\u002Fth>\u003C\u002Ftr>\n  \u003C\u002Fthead>\n  \u003Ctbody>\n    \u003Ctr>\u003Ctd>Créer une table décisions à 9 colonnes dans votre SGBD existant\u003C\u002Ftd>\u003Ctd>Faible\u003C\u002Ftd>\u003Ctd>80% de la promesse « reasoning DB » en un après-midi\u003C\u002Ftd>\u003C\u002Ftr>\n    \u003Ctr>\u003Ctd>Imposer un wrapper de log structuré JSONL par automate\u003C\u002Ftd>\u003Ctd>Faible\u003C\u002Ftd>\u003Ctd>Visibilité totale sur les exécutions, debug 5× plus rapide\u003C\u002Ftd>\u003C\u002Ftr>\n    \u003Ctr>\u003Ctd>Discipline de commits Git avec référence d'items\u003C\u002Ftd>\u003Ctd>Très faible\u003C\u002Ftd>\u003Ctd>Historique requêtable gratuit, audit RGPD facilité\u003C\u002Ftd>\u003C\u002Ftr>\n    \u003Ctr>\u003Ctd>Table cicatrices pour les erreurs résolues + checks ajoutés\u003C\u002Ftd>\u003Ctd>Moyenne\u003C\u002Ftd>\u003Ctd>Le système ne répète plus jamais ses propres erreurs\u003C\u002Ftd>\u003C\u002Ftr>\n    \u003Ctr>\u003Ctd>Index transverse Python qui croise les 5 sources sur un sujet\u003C\u002Ftd>\u003Ctd>Moyenne\u003C\u002Ftd>\u003Ctd>Réponse en une commande à \u003Cem>« qu'est-ce qui s'est passé sur X »\u003C\u002Fem>\u003C\u002Ftd>\u003C\u002Ftr>\n  \u003C\u002Ftbody>\n\u003C\u002Ftable>\n\n\u003Ch2>Le pont sémantique : agréger les cinq sources en une seule réponse\u003C\u002Fh2>\n\n\u003Cp>Avoir cinq sources, c'est avoir cinq silos. Le saut qualitatif vient quand on les \u003Cstrong>agrège dans une vue unique\u003C\u002Fstrong>, pour qu'un agent puisse demander \u003Cem>« qu'est-ce qui s'est passé sur X »\u003C\u002Fem> sans avoir à connaître la topologie de votre infra.\u003C\u002Fp>\n\n\u003Cp>J'ai construit ce matin un module Python d'environ 300 lignes qui croise les cinq sources pour un sujet donné. L'API tient en une ligne : un appel à \u003Ccode>ReasoningView().about_backlog_item(121)\u003C\u002Fcode> retourne l'état courant en base, les décisions explicites, les commits Git pertinents, les cicatrices liées et les derniers événements de logs si le sujet est un automate. Une seule commande, cinq sources, zéro déplacement de données.\u003C\u002Fp>\n\n\u003Cp>\u003Cstrong>Pas une vue SQL\u003C\u002Fstrong>, parce que les sources sont hétérogènes (DB + git + filesystem) et que dispatcher en Python est plus simple à maintenir. C'est ce que la communauté appelle parfois \u003Cem>« reasoning layer »\u003C\u002Fem>. Mais ce n'est pas une couche de stockage, c'est une couche d'\u003Cstrong>indexation transverse\u003C\u002Fstrong>. La distinction est cruciale.\u003C\u002Fp>\n\n\u003Cp>Pour aller plus loin sur le rôle des agents IA dans une stack sans le confort d'un nouveau type de base, lisez aussi notre article \u003Ca href=\"\u002Fblog\u002Fstrategie\u002Fintelligence-artificielle\u002Fagents-ia-base-de-donnees-pas-fichiers\">Agents IA : pourquoi ils doivent vivre dans une base de données, pas dans des fichiers\u003C\u002Fa>, et notre analyse du cocon \u003Ca href=\"\u002Fblog\u002Fstrategie\u002Fintelligence-artificielle\u002Fcadre-cognitif-synedre-methode-pensee\">Donner une méthode de pensée à chaque agent IA\u003C\u002Fa>.\u003C\u002Fp>\n\n\u003Cblockquote class=\"expert-quote\">\n  \u003Cp>« L'écriture en partie double n'est pas une technique comptable, c'est une discipline de pensée : tout mouvement laisse deux traces, sinon il n'a pas eu lieu. »\u003C\u002Fp>\n  \u003Cfooter>— \u003Ca href=\"https:\u002F\u002Farchive.org\u002Fdetails\u002Fsummadearithmeti00paci\" target=\"_blank\" rel=\"noopener noreferrer\">Luca Pacioli\u003C\u002Fa>, \u003Ccite>Summa de arithmetica, geometria, proportioni et proportionalita\u003C\u002Fcite> (1494)\u003C\u002Ffooter>\n\u003C\u002Fblockquote>\n\n\u003Ch2>Pourquoi ce n'est pas trivial — et pourquoi c'est faisable\u003C\u002Fh2>\n\n\u003Cp>J'entends d'avance l'objection : \u003Cem>« Tout ça suppose une discipline qu'aucune équipe ne tient. »\u003C\u002Fem> C'est en partie vrai. La discipline d'écriture coûte cher en début de projet. Personne n'aime ajouter cinq lignes de log à un script qui marche déjà. Personne n'aime expliquer le \u003Cem>pourquoi\u003C\u002Fem> dans un message de commit alors que le diff parle de lui-même.\u003C\u002Fp>\n\n\u003Cp>Mais le coût de l'absence est beaucoup plus élevé, et il devient visible exactement au moment où vous essayez d'introduire des agents IA. Vous découvrez alors que votre base de \u003Ca href=\"\u002Fblog\u002Fstrategie\u002Fpositionnement\u002Frecuperer-donnees-forum-prestashop-souverainete\" title=\"J'ai récupéré 11 ans de mes données du forum PrestaShop\">données\u003C\u002Fa> est un cimetière de conclusions, et vous croyez à tort que c'est la base qui est en cause. Vous commencez à chercher Datomic, des graphes, MCP, des LLM avec contextes infinis. Vous reportez le vrai problème, qui est culturel.\u003C\u002Fp>\n\n\u003Cp>La bonne nouvelle : \u003Cstrong>vous pouvez démarrer petit.\u003C\u002Fstrong> Une seule table de décisions à neuf colonnes. Une seule règle : \u003Cem>« toute mutation significative crée une décision dans la même transaction logique. »\u003C\u002Fem> Un seul helper Python d'une cinquantaine de lignes pour enforcer la discipline. Vous gagnez la majeure partie de la promesse \u003Cem>« reasoning database »\u003C\u002Fem> en un après-midi. Le reste viendra avec l'usage.\u003C\u002Fp>\n\n\u003Ch2>Conclusion\u003C\u002Fh2>\n\n\u003Cp>Le débat \u003Cem>« nos bases de données sont-elles prêtes pour l'IA ? »\u003C\u002Fem> est mal posé. Votre base de données est probablement déjà capable de tout ce dont vous avez besoin — il lui manque simplement les colonnes que vous n'avez pas encore créées et les \u003Ccode>INSERT\u003C\u002Fcode> que vous n'avez pas encore écrits.\u003C\u002Fp>\n\n\u003Cp>Le futur de l'IA d'entreprise ne tient pas dans une nouvelle technologie de stockage. Il tient dans \u003Cstrong>ce que vos pipelines acceptent d'écrire dans les bases que vous avez déjà.\u003C\u002Fstrong> Une table de décisions. Un wrapper de log structuré. Une discipline de message Git. Un journal des cicatrices. Un index transverse en Python.\u003C\u002Fp>\n\n\u003Cp>Pacioli a inventé la comptabilité en partie double en 1494. Cinq cents ans plus tard, sa règle est toujours la même : \u003Cstrong>toute mutation laisse une trace causale, sinon elle n'a pas eu lieu.\u003C\u002Fstrong> Les agents IA d'aujourd'hui n'attendent pas une révolution technologique. Ils attendent que les ingénieurs d'aujourd'hui appliquent un principe d'il y a cinq siècles.\u003C\u002Fp>\n\n\u003Cp>Et la bonne nouvelle, c'est que ça commence par un \u003Ccode>CREATE TABLE\u003C\u002Fcode>.\u003C\u002Fp>\n\n\u003Cp>Vous souhaitez auditer votre stack contre cette grille en cinq sources et identifier les colonnes manquantes pour passer une équipe d'agents IA de prototype à production fiable ? Discutons de votre projet : \u003Ca href=\"mailto:contact@alexandrecarette.fr\">contact@alexandrecarette.fr\u003C\u002Fa>\u003C\u002Fp>\n\n\u003Cdiv class=\"article-sources\">\n  \u003Ch3>Sources et références\u003C\u002Fh3>\n  \u003Cul>\n    \u003Cli>\u003Ca href=\"https:\u002F\u002Fwww.postgresql.org\u002Fdocs\u002Fcurrent\u002Fdatatype-json.html\" target=\"_blank\" rel=\"noopener noreferrer\">PostgreSQL Documentation — JSON Types (jsonb)\u003C\u002Fa>\u003C\u002Fli>\n    \u003Cli>\u003Ca href=\"https:\u002F\u002Fdocs.datomic.com\u002Fcloud\u002Fwhatis\u002Fdata-model.html\" target=\"_blank\" rel=\"noopener noreferrer\">Datomic — Data Model (immutable, temporal facts)\u003C\u002Fa>\u003C\u002Fli>\n    \u003Cli>\u003Ca href=\"https:\u002F\u002Fmartinfowler.com\u002FeaaDev\u002FEventSourcing.html\" target=\"_blank\" rel=\"noopener noreferrer\">Martin Fowler — Event Sourcing pattern\u003C\u002Fa>\u003C\u002Fli>\n    \u003Cli>\u003Ca href=\"https:\u002F\u002Fmodelcontextprotocol.io\u002F\" target=\"_blank\" rel=\"noopener noreferrer\">Model Context Protocol — Specification (Anthropic)\u003C\u002Fa>\u003C\u002Fli>\n    \u003Cli>\u003Ca href=\"https:\u002F\u002Farchive.org\u002Fdetails\u002Fsummadearithmeti00paci\" target=\"_blank\" rel=\"noopener noreferrer\">Luca Pacioli — Summa de arithmetica (1494, source originale comptabilité en partie double)\u003C\u002Fa>\u003C\u002Fli>\n  \u003C\u002Ful>\n\u003C\u002Fdiv>\n\n\n\u003Cdiv class=\"articles-lies\" style=\"margin:2em 0;padding:1.5em;border:1px solid #e2e8f0;border-radius:12px;background:#f8fafc;\">\n\u003Ch3 style=\"margin:0 0 0.8em 0;font-size:1em;color:#334155;\">Articles dans le même univers\u003C\u002Fh3>\n\u003Cul style=\"margin:0;padding-left:1.2em;list-style:disc;\">\n\u003Cli>\u003Ca href=\"\u002Fblog\u002Fstrategie\u002Fintelligence-artificielle\u002Fagents-ia-base-de-donnees-pas-fichiers\">Agents IA et base de données : pourquoi les fichiers ne suffisent plus\u003C\u002Fa>\u003C\u002Fli>\n\u003Cli>\u003Ca href=\"\u002Fblog\u002Fstrategie\u002Fintelligence-artificielle\u002Fia-france-retard-opportunite\">IA en entreprise : la France a 3 ans de retard — l'opportunité\u003C\u002Fa>\u003C\u002Fli>\n\u003Cli>\u003Ca href=\"\u002Fblog\u002Fstrategie\u002Fintelligence-artificielle\u002Fclaude-code-ai-first-france-usa\">Claude Code et entreprises AI-First — la France à la traîne\u003C\u002Fa>\u003C\u002Fli>\n\u003Cli>\u003Ca href=\"\u002Fblog\u002Fstrategie\u002Fpositionnement\u002Frecuperer-donnees-forum-prestashop-souverainete\">J'ai récupéré 11 ans de mes données du forum PrestaShop\u003C\u002Fa>\u003C\u002Fli>\n\u003C\u002Ful>\n\u003C\u002Fdiv>",[213,216,219,222,225,228,231,234,237,240,243,246,249,252,255],{"q":214,"a":215},"Comment tracer les décisions d'un agent IA en base de données ?","En créant une table dédiée qui enregistre chaque décision avec ses métadonnées : qui (agent), quoi (action), pourquoi (raison), preuves (données source) et validation. Cette traçabilité permet de comprendre la chaîne de causalité et de déboguer en production sans reposer sur des logs éphémères.",{"q":217,"a":218},"Pourquoi les pipelines de logs des agents IA restent-ils vides ?","Les logs ont généralement une durée de vie courte et ne capturent que les exécutions en cours. Pour conserver une mémoire permanente des décisions IA, il faut passer par la base de données, où chaque choix devient une ligne interrogeable et auditée.",{"q":220,"a":221},"PrestaShop et MariaDB suffisent-ils pour déployer des agents IA ?","Oui. Une stack standard peut héberger des agents si l'architecture de la base est pensée pour cela. Ce n'est pas la technologie qui manque, c'est la structure : tables dédiées, schémas clairs, index sur les colonnes critiques.",{"q":223,"a":224},"Qu'est-ce qu'une table ps_ac_decisions ?","Une table qui enregistre chaque décision prise par un agent IA : qui a décidé, sur quels critères, avec quelles preuves, et quel a été le résultat validé. Elle devient la source de vérité pour auditer et améliorer le comportement des agents.",{"q":226,"a":227},"Comment documenter les preuves d'une décision IA ?","Stocker en base de données les données brutes qui ont mené à la décision : requête effectuée, résultat retourné, seuil de confiance, données filtrées. Cela permet une traçabilité complète et une analyse post-mortem fiable si quelque chose s'échappe.",{"q":229,"a":230},"Faut-il une base de données spécialisée pour l'IA ?","Non. Les bases relationnelles classiques (MariaDB, PostgreSQL) gèrent parfaitement les logs structurés et les décisions IA si le schéma est bien conçu. La vraie question n'est pas la technologie, c'est la discipline dans la modélisation.",{"q":232,"a":233},"Pourquoi enregistrer le 'pourquoi' des décisions IA ?","Comprendre la causalité permet de reproduire les succès, de corriger les biais et d'auditer en toute transparence. Sans le 'pourquoi', on a juste des résultats; avec lui, on a une machine que l'on peut améliorer.",{"q":235,"a":236},"Comment valider une décision d'agent IA en production ?","En adjoignant à chaque décision enregistrée un statut de validation : validée par humain, auto-validée par seuil, en attente, rejetée. Cette colonne devient un levier de feedback continu qui améliore l'agent à chaque cycle.",{"q":238,"a":239},"Quel est le lien entre base de données et agents autonomes ?","La base de données n'est pas juste un stockage : elle est le système nerveux de l'agent. Elle lui permet de mémoriser ses expériences, de consulter ses décisions passées et d'ajuster sa stratégie sur la base de preuves durables.",{"q":241,"a":242},"Comment éviter que les logs IA ne se perdent ?","En les persévérant en base de données dès leur génération, pas en logs éphémères. Une architecture qui pense DB-first garantit que chaque trace reste interrogeable longtemps après l'exécution.",{"q":244,"a":245},"Peut-on monitorer les décisions IA sur MariaDB ?","Absolument. Des requêtes simples sur la table des décisions peuvent révéler les tendances : quel agent décide le plus souvent, à quel taux de validation, quels types d'erreurs persistent. C'est du monitoring natif sans outil supplémentaire.",{"q":247,"a":248},"Comment intégrer les logs d'agents dans PrestaShop ?","Via un module qui écrit dans une table dédiée à chaque action IA significative. PrestaShop devient alors le berceau naturel des décisions, et l'API du module les expose pour audit ou amélioration continue.",{"q":250,"a":251},"Qu'est-ce qu'un pipeline de logs vide ?","Un système de logging qui fonctionne superficiellement mais ne capture pas ce qui compte vraiment : les décisions, les preuves, les validations. Les logs tournent mais disparaissent; les données importantes ne sont jamais persistées.",{"q":253,"a":254},"Comment auditer une décision IA a posteriori ?","En interrogeant la table des décisions avec le contexte complet : qui, quand, sur quoi, pourquoi, validation. Cela transforme l'audit de procédure opaque en enquête reproductible et transparent face à un client ou un régulateur.",{"q":256,"a":257},"Les agents IA ont-ils besoin de logs en temps réel ?","Les logs temps réel aident au débogage immédiat, mais ce qui pérennise la connaissance c'est la base de données. Une bonne architecture combine les deux : logs court terme pour la réactivité, DB long terme pour l'apprentissage et l'audit.","La vraie limite des bases de données face à l'IA n'est pas leur architecture, c'est l'absence de discipline d'écriture. Preuves en cinq sources standard.","",11,[],[263,275,288,299],{"id":264,"title":265,"category":206,"subcategory":207,"slug":266,"linkRewrite":267,"excerpt":268,"coverImage":269,"thumbnailImage":270,"nuxtUrl":271,"datePublished":272,"dateUpdated":273,"readingTime":260,"faqCount":274},104,"Service design IA : 3 agents auditent un thème e-commerce en direct","intelligence-artificielle--service-design-ia-3-agents-auditent-theme-ecommerce","strategie--intelligence-artificielle--service-design-ia-3-agents-auditent-theme-ecommerce","Comment 3 agents IA du Synedre — Itten, Coco, Eames — auditent un design system e-commerce. Cadres cognitifs, méthode et recommandations concrètes.","\u002Fblog-covers\u002Fcover-intelligence-artificielle--ser-1776116172.webp","\u002Fblog-covers\u002Fthumb-intelligence-artificielle--ser-1776116172.webp","\u002Fblog\u002Fstrategie\u002Fintelligence-artificielle\u002Fservice-design-ia-3-agents-auditent-theme-ecommerce","2026-04-13T21:00:04.000Z","2026-04-19T05:03:41.000Z",15,{"id":276,"title":277,"category":206,"subcategory":278,"slug":279,"linkRewrite":280,"excerpt":281,"coverImage":282,"thumbnailImage":283,"nuxtUrl":284,"datePublished":285,"dateUpdated":286,"readingTime":287,"faqCount":274},101,"J'ai arrêté de construire des sites — je construis une usine à navires","architecture","architecture--usine-a-navires-industrialized-vertical-software","strategie--architecture--usine-a-navires-industrialized-vertical-software","Monorepo PrestaShop Headless transformé en PaaS souverain single-tenant : EventBus, Constitution Industrielle, déploiement client en 120s.","https:\u002F\u002Falexandrecarette.fr\u002Fblog-covers\u002Fcover-strategie--architecture--usine-1775993620.webp","https:\u002F\u002Falexandrecarette.fr\u002Fblog-covers\u002Fthumb-strategie--architecture--usine-1775993620.webp","\u002Fblog\u002Fstrategie\u002Farchitecture\u002Fusine-a-navires-industrialized-vertical-software","2026-04-12T11:33:38.000Z","2026-04-13T08:02:52.000Z",12,{"id":289,"title":290,"category":206,"subcategory":207,"slug":291,"linkRewrite":292,"excerpt":293,"coverImage":294,"thumbnailImage":295,"nuxtUrl":296,"datePublished":297,"dateUpdated":298,"readingTime":287,"faqCount":274},93,"Dust, ChatGPT Enterprise, Synedre : trois IA d'entreprise comparées","intelligence-artificielle--dust-chatgpt-synedre-comparatif","strategie--intelligence-artificielle--dust-chatgpt-synedre-comparatif","Dust.tt, ChatGPT Enterprise, Synedre : trois familles d'IA d'entreprise comparées honnêtement. Quel choix pour une PME française en 2026 ?","https:\u002F\u002Falexandrecarette.fr\u002Fblog-covers\u002Fcover-strategie--intelligence-artifi-1775656906.webp","https:\u002F\u002Falexandrecarette.fr\u002Fblog-covers\u002Fthumb-strategie--intelligence-artifi-1775656906.webp","\u002Fblog\u002Fstrategie\u002Fintelligence-artificielle\u002Fdust-chatgpt-synedre-comparatif","2026-04-08T14:01:45.000Z","2026-04-09T05:02:19.000Z",{"id":204,"title":205,"category":206,"subcategory":207,"slug":208,"linkRewrite":300,"excerpt":258,"coverImage":209,"thumbnailImage":210,"nuxtUrl":301,"datePublished":302,"dateUpdated":303,"readingTime":260,"faqCount":32},"strategie--intelligence-artificielle--bases-donnees-ia-pipelines-logs-vides","\u002Fblog\u002Fstrategie\u002Fintelligence-artificielle\u002Fbases-donnees-ia-pipelines-logs-vides","2026-04-08T08:02:23.000Z","2026-04-08T08:02:31.000Z"]