
La checklist SEO d'un site construit par un agent
Les sites construits par agent échouent là où il n'y a rien à voir à l'écran, et survivent donc à toute revue visuelle.
Un site construit par un agent échoue en recherche d'une manière particulière. Rarement le texte, presque jamais le design. Ce sont les choses sans représentation visuelle, qui survivent donc à toute revue faite en regardant l'écran.
Des métadonnées qui héritent en silence
Dans un projet app-router, les métadonnées fusionnent en descendant l'arbre des routes. Une route enfant qui définit un titre mais pas d'objet openGraph hérite de tout l'openGraph du parent, y compris son url. Voir pourquoi les routes enfants expédient l'og:url du parent.
Le sitemap que personne n'a demandé
Personne ne demande de sitemap, donc personne n'en a. Pire qu'un sitemap absent : un sitemap généré qui liste des pages que le site marque aussi noindex. Voir le guide de Google.
Le contrôle qui l'attrape consiste à comparer les deux listes par programme. Chaque URL du sitemap doit renvoyer 200 sans noindex, et chaque page indexable doit être dans le sitemap.
Les dates, et le piège du build unique
Si les articles sont conditionnés à une date de publication, cette comparaison s'exécute au moment du build sur un site statique. Un article daté de demain n'apparaîtra pas demain, mais au prochain déploiement.
Deuxième piège : la comparaison se fait en UTC alors que la personne qui fixe la date pense dans son fuseau. Un article daté d'aujourd'hui, réglé le soir à l'ouest de Greenwich, est demain en UTC.
Images : les deux échecs sans erreur
- Une valeur de qualité absente de la liste autorisée fait renvoyer un 400 par l'optimiseur. L'image casse à l'exécution et le build est propre. Voir la référence du composant Image.
- L'optimiseur met en cache par chemin source, pas par contenu. Remplacez une image en gardant le nom de fichier et l'ancienne continue d'être servie, partiellement, ce qui ressemble à un bug CSS.
- Les images de héros sont la cause habituelle d'un site lent, et le plus grand élément visible est ce que mesure Largest Contentful Paint.
Des données structurées valides et fausses
Un agent produit volontiers du JSON-LD qui valide, car la validation vérifie la forme et non la véracité. Elle ne vérifie pas si la FAQPage correspond à du texte visible. L'introduction de Google est explicite : le balisage doit décrire le contenu visible.
Pages minces, générées vite
Ce qu'un agent fait de mieux est produire quarante variantes d'une page, et c'est exactement ce que la recherche sanctionne. Mesurez-les les unes contre les autres : retirez tous les noms propres puis comparez chaque paire.
Les robots, y compris ceux qui n'exécutent pas le JS
La sortie rendue côté serveur n'est pas optionnelle : les robots d'assistants n'exécutent pas le JavaScript. Voir ce qu'un robot IA reçoit et robots.txt et robots IA. Google rappelle que cela reste du SEO dans son guide d'optimisation IA.
Faites-en un contrôle, pas une mémoire
Chaque point ci-dessus est testable, donc aucun ne devrait dépendre de la mémoire de quelqu'un. Mettez-les dans un script qui tourne sur la sortie compilée. Si le site est déjà en ligne, commencez par pas indexé ou pas classé.
Deux des contrôles ci-dessus méritent leur propre page. La vitesse en est un, parce que les trois métriques sont jugées sur des visites réelles et non sur votre machine, et parce qu'un agent commet sur chacune un jeu d'erreurs précis et répétable: c'est les Core Web Vitals sur un site construit par agent. L'autre est l'environnement contre lequel les contrôles tournent, car un canonical lu dans un fichier local ne dit rien de celui que la production sert: la mise en production s'en charge, et l'article sur les hooks couvre la transformation de cette liste en barrières automatiques.

