diff --git a/05_activity_log/2026-07-30.md b/05_activity_log/2026-07-30.md index 5e7c31b..a7a2df2 100644 --- a/05_activity_log/2026-07-30.md +++ b/05_activity_log/2026-07-30.md @@ -1,5 +1,46 @@ # Activity Log · 2026-07-30 · Claude Code DTP +## Session `20260730_182824` (session 35) + +**Tâche** : **Sprint 8 · buffer L75 (corrections finales · doc)** — Aucun module +roadmap ne reste à créer ; la campagne stub→doc est close (13/13 agents documentés, +session 34). Constat en analysant le dépôt : **il n'existait aucun `README.md` +racine** — un humain (Michel) ouvrant le repo n'avait pas de point d'entrée / +navigation. Gap réel, honnête, à plus forte valeur qu'un énième polish d'AGENT.md. + +**Fichier créé** — `README.md` (racine) : index de navigation + état courant. +- **Navigation** : table vers `CLAUDE.md`, roadmap, `AGENTS_EXISTING_ASSETS.md`, + `PORTAIL_BANCABLES_4BIG.md`, `02_master_prompt/`, `03_agents/`, + `05_deliverables_mvp/`, gap analysis, `05_activity_log/`, CI Gitea + guards, + `tests/` — plus les **13 fiches agents** regroupées par famille (faisabilité/3D · + plateforme · transverses). +- **État courant SOURCÉ (anti-invention #6, zéro chiffre fabriqué)** : chaque nombre + renvoie à un artefact **commité** — + - **21/21 modules gated à 100/100** (seuil 95 · verdict PASS) ← + `qa/audit_4big/out/quality_report.json` ; + - **21 suites de régression** gatées ← `qa/regression/out/regression_plan.json` + (compte de tests agrégé délégué à `qa/regression run`, non commité par design) ; + - **15 promesses roadmap = 14 `in_repo` + 1 `out_of_scope`** (M5 « 2 stores » · + #8), verdict `true` ← `qa/acceptance/out/acceptance_matrix.json`. +- **Périmètre worker vs VPS** (#8) explicité (générateurs+hand-off en-repo · + déploiement réel hors périmètre · pointe le run-book `devops/deploy_runbook`). +- **Git Gitea uniquement** (#2) rappelé. + +**Anti-invention (#6)** : le README **n'introduit aucune donnée nouvelle** — tous +les chiffres sont des citations d'artefacts commités, vérifiés par lecture directe +(`audit_4big` totals `{modules:21,pass:21,min:100}` · `regression_plan` 21 suites · +`acceptance_matrix` 15 lignes = 14 `in_repo`/1 `out_of_scope`, verdict `true`) ; +13 agents = compte réel de `03_agents/`. + +**Vérifs** : `ci/check_docs.sh` vert (**0 lien interne cassé** — 20+ cibles du README +confirmées existantes, dont les 13 `03_agents/*/AGENT.md`) ; `ci/guard_constraints.sh` +vert (6 familles d'interdits · exit 0) ; README racine hors périmètre SOFT-check 4Big +(seuls `05_deliverables_mvp/*.md` scorés). + +**Hors périmètre worker (VPS · #8)** : néant (changement doc-only en-repo). + +**Auto-score 4Big** : 96/100. + ## Session `20260730_165818` (session 34) **Tâche** : **Sprint 8 · buffer L75 (corrections finales · doc)** — Aucun module diff --git a/README.md b/README.md new file mode 100644 index 0000000..4e1f83b --- /dev/null +++ b/README.md @@ -0,0 +1,62 @@ +# 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`](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`](CLAUDE.md) | Vision · 10 contraintes NON-NÉGOCIABLES · entités · projets · VPS | +| [`04_roadmap/ROADMAP_8_WEEKS_OR_LESS.md`](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`](AGENTS_EXISTING_ASSETS.md) | Modules OTOV7 réutilisés par agent (source des refactorings) | +| [`PORTAIL_BANCABLES_4BIG.md`](PORTAIL_BANCABLES_4BIG.md) | Cadre de bancabilité 4Big | +| [`02_master_prompt/`](02_master_prompt) | Prompt maître du mandat | +| [`03_agents/`](03_agents) | Fiches des **13 agents** (rôle · livrables · coordination) | +| [`05_deliverables_mvp/`](05_deliverables_mvp) | Livrables (générateurs déterministes + hand-off `out/`) | +| [`05_deliverables_mvp/GAP_ANALYSIS_SPRINT1.md`](05_deliverables_mvp/GAP_ANALYSIS_SPRINT1.md) | Audit d'assets + gap analysis (Sprint 1) | +| [`05_activity_log/`](05_activity_log) | Journal de session horodaté | +| [`.gitea/workflows/ci.yml`](.gitea/workflows/ci.yml) · [`ci/`](ci/README.md) | Gate CI Gitea Actions + guards locaux | +| [`tests/`](tests) | Baseline E2E Playwright | + +## Les 13 agents + +Faisabilité & 3D : [`bim`](03_agents/bim/AGENT.md) · [`ifc_speckle`](03_agents/ifc_speckle/AGENT.md) · +[`rendu`](03_agents/rendu/AGENT.md) · [`faisabilite`](03_agents/faisabilite/AGENT.md) · +[`publiciste`](03_agents/publiciste/AGENT.md) +Plateforme : [`erpnext_backend`](03_agents/erpnext_backend/AGENT.md) · +[`frontend_console`](03_agents/frontend_console/AGENT.md) · [`crm`](03_agents/crm/AGENT.md) · +[`onapi_legal`](03_agents/onapi_legal/AGENT.md) · [`seo`](03_agents/seo/AGENT.md) · +[`mobile`](03_agents/mobile/AGENT.md) +Transverses : [`devops`](03_agents/devops/AGENT.md) · [`qa`](03_agents/qa/AGENT.md) + +## État courant (sourcé) + +- **Qualité 4Big** : **21/21 modules gated à 100/100** (seuil 95 · `CLAUDE.md` #5), verdict `PASS` + — source [`qa/audit_4big/out/quality_report.json`](05_deliverables_mvp/qa/audit_4big/out/quality_report.json). +- **Régression** : **21 suites gated** couvertes bijectivement vs CI ; le compte de tests + agrégé faisant autorité est produit par `qa/regression run` (non commité par design) + — plan [`qa/regression/out/regression_plan.json`](05_deliverables_mvp/qa/regression/out/regression_plan.json). +- **Recette roadmap** : **15 promesses** (8 livrables sprint + 7 métriques MVP), **14 `in_repo` + prouvées + 1 `out_of_scope`** (M5 « app publiée 2 stores », hors périmètre worker · #8), + verdict `true` — source [`qa/acceptance/out/acceptance_matrix.json`](05_deliverables_mvp/qa/acceptance/out/acceptance_matrix.json). +- **Guards** : [`ci/guard_constraints.sh`](ci/README.md) + [`ci/check_docs.sh`](ci/README.md) verts. + +## 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`](05_deliverables_mvp/devops/deploy_runbook/README.md). + +## 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`).