Claude Code DTP Worker 1321983dc3 [DTP-Worker 20260805_131244] FIX régression gate constraints-guard : tree committé RED (32 PASS·1 FAIL) malgré « 33 PASS » annoncé par 127ef6f
Au démarrage ./run_ci.sh échouait sur constraints-guard : ligne 1206 de l'activity_log 2026-08-05 cite « aucun `git clean` » (#1) sans marqueur ; le `ci-allow` posé par la session précédente était sur la ligne 1207 (paragraphe hard-wrappé) alors que scan_forbidden fait grep -in LIGNE PAR LIGNE → l'escape doit être SUR la ligne fautive, une ligne voisine est inerte. 3e récurrence de la sous-classe `aucun git clean` mais 1re variante « marqueur mal placé » (les 2 précédentes = marqueur absent).

FIX (journal only, 0 prod, 0 artefact, 0 gate) : escape fusionné INLINE sur la ligne fautive + suppression du comment orphelin. Le journal-de-correction lui-même re-mord (il cite `git clean`) → escapé inline aussi. Vérif : grep -inE 'git +clean' filtré PROHIBITION+ci-allow = 0 hit résiduel ; ./run_ci.sh → 33 PASS · 0 FAIL · 0 SKIP (avec ce log inclus). Réflexe [[ci-gate-verification-method]] : re-jouer les gates sur le tree AVEC le nouveau log staged, pas seulement après l'édition de code.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-08-05 13:17:49 +00:00

OTO Enterprise OS · Digital Twin Platform (DTP)

Mandat de refactoring 8 semaines ou moins : unifier BIM (Blender/Bonsai/IFC/Speckle), ERPNext v15 natif, la Console Helios (luxury dark+doré) et les faisabilités 4 volets niveau 4Big, pilotés par l'agent orchestrateur OTOIA. Vision et contraintes NON-NÉGOCIABLES : CLAUDE.md.

Point d'entrée de ce dépôt de mandat. Il indexe les artefacts et rapporte l'état courant. Chaque chiffre ci-dessous est sourcé vers un artefact commité (anti-invention CLAUDE.md #6) ; ce README n'introduit aucune donnée nouvelle.

Navigation

Zone Contenu
CLAUDE.md Vision · 10 contraintes NON-NÉGOCIABLES · entités · projets · VPS
04_roadmap/ROADMAP_8_WEEKS_OR_LESS.md Plan 8 sprints · gains d'accélération (~47%) · métriques succès MVP
AGENTS_EXISTING_ASSETS.md Modules OTOV7 réutilisés par agent (source des refactorings)
PORTAIL_BANCABLES_4BIG.md Cadre de bancabilité 4Big
DIRECTIVE_*.md Input-specs datés de Michel (snapshots) qui pilotent les modules — spec commitée = autorité
02_master_prompt/ Prompt maître du mandat
03_agents/ Fiches des 13 agents (rôle · livrables · coordination)
05_deliverables_mvp/ Livrables (générateurs déterministes + hand-off out/)
05_deliverables_mvp/GAP_ANALYSIS_SPRINT1.md Audit d'assets + gap analysis (Sprint 1)
05_deliverables_mvp/OPEN_DECISIONS_REGISTER.md Punch-list launch-readiness : décisions produit ouvertes qui appartiennent à Michel (arbitrages de périmètre · dépendances hors dépôt) — sourcée, ne tranche pas
05_activity_log/ Journal de session horodaté
.gitea/workflows/ci.yml · ci/ Gate CI Gitea Actions + guards locaux
run_ci.sh Miroir local du gate : rejoue tout gate.needs (dérivé de ci.yml, sans liste en dur)
tests/ Baseline E2E Playwright

Les 13 agents

Faisabilité & 3D : bim · ifc_speckle · rendu · faisabilite · publiciste Plateforme : erpnext_backend · frontend_console · crm · onapi_legal · seo · mobile Transverses : devops · qa

État courant (sourcé)

  • Qualité 4Big : 24/24 modules gated à 100/100 (seuil 95 · CLAUDE.md #5), verdict PASS — source qa/audit_4big/out/quality_report.json.
  • Régression : 24 suites gated couvertes bijectivement vs CI. Le compte de tests agrégé faisant autorité vit dans qa/regression/out/regression_run.json, artefact commité et byte-gaté : ci/check_regression.sh régénère un run frais et exige l'identité byte-for-byte avec la baseline commitée (verdict PASS). Recensement déterministe des suites : qa/regression/out/regression_plan.json.
  • Recette roadmap : 15 promesses (8 livrables sprint + 7 métriques MVP), 15 in_repo prouvées (chacune traçant ses items hors-périmètre worker · #8 · ex. M5 « app publiée 2 stores »), verdict true — source qa/acceptance/out/acceptance_matrix.json.
  • Guards : ci/guard_constraints.sh + ci/check_docs.sh verts.
  • Décisions produit ouvertes : la CI dépôt verte n'implique pas zéro décision en attente. Les arbitrages de périmètre produit et les dépendances runtime hors dépôt (VPS · #8) qui appartiennent à Michel sont consolidés, sourcés file:line, dans 05_deliverables_mvp/OPEN_DECISIONS_REGISTER.md — le worker les surface, ne les tranche pas.

Périmètre worker (in-repo) vs VPS

Ce dépôt produit des générateurs déterministes et leurs hand-off out/, gatés en CI. Le déploiement réel (bench migrate, import fixtures, câblage nginx/systemd, builds stores, indexation, voix Amélie) s'exécute sur le VPS 153.75.250.214 et reste hors périmètre worker (CLAUDE.md #8). Le plan d'activation ordonné est le run-book devops/deploy_runbook.

Directives Michel (input-specs datés)

Les fichiers DIRECTIVE_*.md à la racine sont les input-specs formels et datés de Michel : des snapshots de gouvernance (au même titre que les daily_reports) qui pilotent les modules. Ce README n'y introduit aucune donnée ; la spec commitée du module reste l'autorité (spec = authority), les chiffres faisant foi via les artefacts byte-gatés. Ils sont exclus de ci/guard_constraints.sh (prose de gouvernance énumérant règles et autorisations, pouvant citer des URLs/chemins interdits ailleurs).

Pilotent un module byte-gaté (audité directive → implémentation, CLAUDE.md #5) :

Contexte · inventaire · workflow · gouvernance (pas de module byte-gaté dédié 1:1 ; exécution runtime/VPS hors périmètre worker · CLAUDE.md #8) :

Git — Gitea uniquement

Dépôt de mandat : michel/oto-enterprise-os-dtp sur Gitea (153.75.250.214:3015). JAMAIS GitHub / GitLab / Bitbucket (CLAUDE.md #2, garde ci/guard_constraints.sh).

S
Description
OTO Enterprise OS · Digital Twin Platform MVP · 8 semaines OU MOINS
Readme 8.1 MiB
Languages
Python 58.7%
Shell 40.5%
TypeScript 0.6%
Go Template 0.2%