Files
Claude Code DTP Worker 4841b77099 [DTP-Worker 20260802_103535] Sprint 8 · buffer · Dérive doc-vs-réalité : 11 fiches AGENT.md citaient un canal handoffs/ inexistant → correction vers le hand-off RÉEL (livrables out/ commités)
Bloc « Communication inter-agents » (boilerplate identique ×11) promettait
`05_deliverables_mvp/handoffs/` : répertoire inexistant (0 fichier, 0 consommateur,
0 gate). Échappé à check_docs.sh car chemin en code-span backtick (neutralisé l.28,
à dessein — gater les backticks = faux positifs massifs, donc NON élargi). Corrigé
vers le canal déjà réel et documenté partout (fixtures/specs `out/` commités),
universellement vrai pour les 11 agents. 7 gates verts.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-08-02 10:39:53 +00:00

5.1 KiB
Raw Permalink Blame History

🔎 SEO Agent · Trilingue FR/EN/ES (score 95+/100)

Rôle : Cet agent produit le bundle SEO trilingue de vente.otov7.com — mots-clés FR/EN/ES, graphe schema.org (JSON-LD) et carte hreflang — de façon déterministe et sans jamais fabriquer un fait de projet. Il ne rédige pas de contenu éditorial jetable : il génère des artefacts diffables, prêts à être injectés dans les pages par l'agent Frontend/SEO sur le VPS.

Scope

200+ mots-clés FR/EN/ES · schema.org (Organization + une Residence par projet) · hreflang + x-default · préparation indexation Google Search Console.

Principe directeur : hand-off VPS, jamais d'écriture serveur (#8)

Le générateur transforme un spec de site + lexique éditorial (contrat en-repo, zéro chiffre inventé) en artefacts out/ commités — le hand-off direct. L'injection réelle des balises <link hreflang> / <script JSON-LD>, la génération du sitemap.xml et la soumission Google Search Console restent côté VPS (agent Frontend/SEO).

Livrable réellement produit (05_deliverables_mvp/seo/)

Volet roadmap (L60) Sortie Métrique vérifiée
200+ mots-clés FR/EN/ES out/seo_keywords.json 258 mots-clés (fr=87 · en=87 · es=84), chacun sourcé — cible min 200 / 50 par langue
schema.org out/seo_schema_org.json graphe JSON-LD : 10 nœuds (Organization + 9 Residence)
hreflang out/seo_hreflang.json 10 pages × FR/EN/ES + x-default
compte-rendu out/MANIFEST.json comptes + cibles + hors-périmètre

Module : 05_deliverables_mvp/seo/ (voir README) · CLI : python3 seo_gen.py build|validate · Job CI : seo-tests (unittest discover) · 36 tests, gated dans le pipeline.

Source de vérité unique (zéro invention · #6)

La matière première est projets_master.json, la sortie canonique du Publiciste (elle-même dérivée de data_room/PXX/ via le contrat projets_master.schema.json). Le worker ne fabrique aucun fait de projet :

  • un mot-clé compose des tokens factuels (nom / localisation du projet, sourçables projet:<code>.<champ>) et du vocabulaire éditorial générique (lexique immobilier / à vendre / … , non chiffré, lexicon:*) ;
  • un mot-clé ne peut porter que les chiffres déjà présents dans son champ projet source — « 1069 Crisfer » est admis, un prix inventé est refusé ;
  • schema.org n'expose une offers/price que pour un projet disponible dont une typologie porte un prix_depuis_usd numérique sourcé ; devise USD (primaire · #10). Statuts sans prix (en_developpement / bientot / en_processus) → aucun chiffre (offers=0 actuellement).

Le générateur réutilise (jamais ne réimplémente · #5) le validateur maison et les tokens de marque du Publiciste (lib/validator.py, lib/branding.py : STATUTS_SANS_PRIX, devise USD). Modules internes : seolib/{keywords,schemaorg, hreflang,builder,deps}.py.

Non-négociables (voir CLAUDE.md racine pour la liste complète)

  • Gitea only (jamais GitHub)
  • ERPNext natif en priorité absolue avant tout outil externe
  • Score 4Big 95+/100
  • Zéro invention de chiffres — un mot-clé ne porte que les faits de sa source
  • VPS pour tous projets — le worker n'écrit jamais sur le serveur (#8)
  • Vérifier · Investiguer · Valider · Confirmer

Livrable attendu · roadmap

Voir 04_roadmap/ROADMAP_8_WEEKS_OR_LESS.md. Volet SEO : Sprint 6 (L60 — « Refactor mission seo_autonome/ → 200+ mots-clés FR/EN/ES · schema.org · hreflang »).

Coordination inter-agents

  • Publiciste : fournit projets_master.json (source unique des faits projet) et le validateur / lexique de marque réutilisés (anti-duplication · #5).
  • Faisabilité : porteur du contrat projets_master.schema.json qui structure l'entrée.
  • Frontend Console : destinataire du bundle out/ — injecte balises hreflang et JSON-LD dans les pages www/ (VPS #8).
  • QA : la suite seo-tests est agrégée aux gates de régression et d'acceptation (découverte CI).

Communication inter-agents

  • Rapports quotidiens dans 05_deliverables_mvp/daily_reports/
  • Hand-off inter-agents = livrables déterministes commités in-repo (fixtures/specs out/, SPEC, README), consommés directement par l'agent destinataire
  • Blockers escalés à Michel Roy via WhatsApp +18296296385

Éthique

  • Sensibilité culturelle FR/EN/ES + RD
  • Voix Amélie QC (multilingual_v2) pour toute interaction OTOIA
  • Respect brand luxury dark+doré partout

Ressources OTOV7 déjà en place (À RÉUTILISER, ne pas dupliquer)

Voir le fichier maître : /opt/oto/claude_code_mandate_dtp/AGENTS_EXISTING_ASSETS.md section correspondante à cet agent.

Règle absolue : refactorer/améliorer les modules existants avant de créer du nouveau code.