[DTP-Worker 20260730_085719] Auto exec · session 20260730_085719
CI / Contraintes NON-NÉGOCIABLES (CLAUDE.md) (push) Has been cancelled
CI / Validation JSON (schémas Faisabilité) (push) Has been cancelled
CI / Qualité documentaire (liens + 4Big) (push) Has been cancelled
CI / Publiciste · parser + schéma + generator (unittest) (push) Has been cancelled
CI / RBAC · 50 rôles + schéma (unittest) (push) Has been cancelled
CI / Faisabilité · générateur 4 volets + round-trip (unittest) (push) Has been cancelled
CI / RBAC · fixtures ERPNext (Role + Custom DocPerm) (push) Has been cancelled
CI / RBAC · plan User Permission (row-level) (push) Has been cancelled
CI / RBAC · Role Profile (bundles par portail) (push) Has been cancelled
CI / RBAC · run-book d'application unifié (agrégat 3 volets) (push) Has been cancelled
CI / Faisabilité · dossier bancable trilingue FR/EN/ES (push) Has been cancelled
CI / CRM · workflow vente ERPNext (lead → CONFOTUR) (push) Has been cancelled
CI / CRM · DocType porteur OTO Dossier Vente (push) Has been cancelled
CI / CRM · barème commissions vendeurs (push) Has been cancelled
CI / Fiscal · e-CF DGII (Compupar) (push) Has been cancelled
CI / Frontend · Workspaces 5 portails rôle (push) Has been cancelled
CI / Legal · DocType CONFOTUR Application (push) Has been cancelled
CI / QA · Audit 5D conformité (push) Has been cancelled
CI / SEO · mots-clés trilingues + schema.org + hreflang (push) Has been cancelled
CI / E2E baseline Playwright (manuel) (push) Has been cancelled
CI / Gate qualité (agrégat) (push) Has been cancelled
CI / Contraintes NON-NÉGOCIABLES (CLAUDE.md) (push) Has been cancelled
CI / Validation JSON (schémas Faisabilité) (push) Has been cancelled
CI / Qualité documentaire (liens + 4Big) (push) Has been cancelled
CI / Publiciste · parser + schéma + generator (unittest) (push) Has been cancelled
CI / RBAC · 50 rôles + schéma (unittest) (push) Has been cancelled
CI / Faisabilité · générateur 4 volets + round-trip (unittest) (push) Has been cancelled
CI / RBAC · fixtures ERPNext (Role + Custom DocPerm) (push) Has been cancelled
CI / RBAC · plan User Permission (row-level) (push) Has been cancelled
CI / RBAC · Role Profile (bundles par portail) (push) Has been cancelled
CI / RBAC · run-book d'application unifié (agrégat 3 volets) (push) Has been cancelled
CI / Faisabilité · dossier bancable trilingue FR/EN/ES (push) Has been cancelled
CI / CRM · workflow vente ERPNext (lead → CONFOTUR) (push) Has been cancelled
CI / CRM · DocType porteur OTO Dossier Vente (push) Has been cancelled
CI / CRM · barème commissions vendeurs (push) Has been cancelled
CI / Fiscal · e-CF DGII (Compupar) (push) Has been cancelled
CI / Frontend · Workspaces 5 portails rôle (push) Has been cancelled
CI / Legal · DocType CONFOTUR Application (push) Has been cancelled
CI / QA · Audit 5D conformité (push) Has been cancelled
CI / SEO · mots-clés trilingues + schema.org + hreflang (push) Has been cancelled
CI / E2E baseline Playwright (manuel) (push) Has been cancelled
CI / Gate qualité (agrégat) (push) Has been cancelled
This commit is contained in:
@@ -1,5 +1,60 @@
|
||||
# Activity Log · 2026-07-30 · Claude Code DTP
|
||||
|
||||
## Session `20260730_085719` (session 18)
|
||||
|
||||
**Tâche** : **Sprint 6 · SEO** — Générateur **SEO trilingue** (roadmap L60 :
|
||||
« Refactor mission `seo_autonome/` → **200+ mots-clés FR/EN/ES · schema.org ·
|
||||
hreflang** »). Premier volet Sprint 6 réalisable en repo — les volets OTOIA voice
|
||||
Amélie (pilote AEC) et chat OTOIA embarqué dépendent d'API externes / desk VPS
|
||||
(hors périmètre worker · #8).
|
||||
|
||||
**Décision d'architecture** : livrable de **second niveau** — la matière première
|
||||
est **`projets_master.json`**, la sortie canonique du **Publiciste** (dérivée de
|
||||
`data_room/PXX/`). Le générateur ne fabrique aucun fait de projet ; il **réutilise**
|
||||
(zéro duplication · #5) le validateur maison + les tokens de marque du Publiciste
|
||||
(`lib/validator.py`, `lib/branding.py`).
|
||||
|
||||
**Fichiers créés** — `05_deliverables_mvp/seo/` :
|
||||
- `seo_spec.json` (config site + **lexique éditorial générique** FR/EN/ES + org
|
||||
schema.org + cibles · zéro donnée projet, zéro chiffre)
|
||||
- `seolib/{__init__,deps,keywords,schemaorg,hreflang,builder}.py` (`deps` réutilise
|
||||
validateur + branding Publiciste ; `keywords`/`schemaorg`/`hreflang` purs et
|
||||
déterministes ; `builder` assemble bundle + manifeste)
|
||||
- `seo_gen.py` (CLI `build`/`validate` · **15 invariants**)
|
||||
- `seo.schema.json` (contrat de sortie draft-07)
|
||||
- `fixtures/projets_master.json` (test only · 9 projets P01..P09, noms sourcés
|
||||
`CLAUDE.md §Projets`, tous `en_developpement`, **zéro chiffre**)
|
||||
- `out/{seo_keywords,seo_schema_org,seo_hreflang,MANIFEST}.json` (hand-off) ·
|
||||
`tests/test_seo.py` (**36 tests** dont 8 injections négatives) · `README.md` ·
|
||||
`.gitignore`
|
||||
|
||||
**Fichiers modifiés** :
|
||||
- `.gitea/workflows/ci.yml` : job `seo-tests` + ajout au `gate`.
|
||||
|
||||
**Anti-invention (cœur · #6)** : un mot-clé = composition de tokens factuels
|
||||
(`projet:<code>.nom`/`.localisation`, sourçables) + lexique éditorial générique
|
||||
non chiffré (`lexicon:*`) ; un invariant vérifie que chaque mot-clé est sourcé et
|
||||
résoluble ; un mot-clé ne peut porter que les chiffres de son champ source
|
||||
(« 1069 Crisfer » passe ; un prix injecté est refusé). schema.org n'émet un prix
|
||||
que pour un projet `disponible` à typologie **sourcée** (USD · #10) — la fixture
|
||||
`en_developpement` produit donc **0 offre**, aucun chiffre inventé dans le hand-off.
|
||||
|
||||
**Résultat** : **258 mots-clés** (fr=87 · en=87 · es=84 · cible 200 dépassée) ·
|
||||
schema.org 10 nœuds (1 Organization + 9 Residence) · hreflang 10 pages (accueil +
|
||||
9 projets) × 4 alternates (FR/EN/ES + x-default).
|
||||
|
||||
**Vérifs** : 36/36 tests ; gate CI local vert (guard + JSON + docs + YAML) ;
|
||||
régression **377 tests verts** au total (341 → +36) ; build déterministe.
|
||||
|
||||
**Hors périmètre worker (VPS · #8)** : injection balises hreflang/JSON-LD dans
|
||||
`www/` + sitemap + Google Search Console + branchement sur la vraie sortie
|
||||
Publiciste (9 projets réels) → agent SEO / Frontend.
|
||||
|
||||
**Détail complet** : voir
|
||||
[`05_deliverables_mvp/daily_reports/2026-07-30-session18.md`](../05_deliverables_mvp/daily_reports/2026-07-30-session18.md).
|
||||
|
||||
**Auto-score 4Big** : 96/100.
|
||||
|
||||
## Session `20260730_082714` (session 17)
|
||||
|
||||
**Tâche** : **Sprint 5 · QA** — Générateur de l'**Audit 5D de conformité**
|
||||
|
||||
Reference in New Issue
Block a user