[DTP-Worker 20260803_183728] README indexe la classe d'artefacts DIRECTIVE_*.md → édition doc RÉELLE (pas signal-only)
Sondes préalables 0 dérive : (1) docstring-vs-CODE 22 générateurs + helpers = fidèles aux fichiers réellement écrits/clés lues, aucun phantom ; (2) 4 directives non-auditées (ARCHIVES_DEBLOCAGE/PLANPOINT_STYLE/RENDUS_EXISTANTS/UNBLOCK_NOW) = opérationnelles/inventaire/UI/autorisation, PAS des couples directive→module byte-gaté, rien à gater. Gap RÉEL : les 8 DIRECTIVE_*.md racine (input-specs formels datés de Michel, cross-linkés depuis crm/financement_bancaire · mobile/app_config · pie/manifest + fiches AGENT) étaient ABSENTS de l'index du README racine — qui se présente pourtant comme « Point d'entrée … indexe les artefacts » (grep DIRECTIVE README.md = 0). Classe entière invisible depuis le point d'entrée. Édition README.md : ligne de navigation (ancre intra-doc, strippée par check_docs → sûr) + nouvelle section « ## Directives Michel (input-specs datés) » cadrant la nature snapshot (spec=authority comme daily_reports) + exclusion guard_constraints, listant les 8 en 2 groupes honnêtes : pilotent-un-module-byte-gaté (FINANCEMENT/MOBILE_STORES/PIE) vs contexte/inventaire/workflow/gouvernance (V10/ARCHIVES/RENDUS/PLANPOINT/UNBLOCK, pas de module 1:1, runtime hors #8). Discipline : AUCUN compte agrégé en dur (pas de scalaire qui dérive #6) — l'énumération EST la liste ; tous liens vers fichiers existants (check_docs HARD) ; groupement vérifié sémantiquement (V10 sans module 1:1 → contexte, pas faux-lié). 0 module créé · 0 gate ajouté (#5) · 0 chiffre inventé (#6) · 0 commande VPS (#8). run_ci.sh --static 7/7 PASS (check-docs liens OK + check-readme-claims vert). Baseline complet 32 PASS. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This commit is contained in:
@@ -1556,3 +1556,55 @@ de fiche** qui mérite l'arbitrage explicite de Michel, pas une réécriture de
|
|||||||
étendue au **2e couple** (mobile) = **CLEAN** + **1 signal de continuité produit** surfacé à
|
étendue au **2e couple** (mobile) = **CLEAN** + **1 signal de continuité produit** surfacé à
|
||||||
Michel (bundle id `com.otov7.app` immuable ↔ App Store #32). Zéro module créé · zéro gate
|
Michel (bundle id `com.otov7.app` immuable ↔ App Store #32). Zéro module créé · zéro gate
|
||||||
ajouté (#5) · zéro chiffre inventé (#6) · aucune commande VPS (#8) · aucun `git clean` <!-- ci-allow : mention de l'interdit absolu, jamais exécuté -->.
|
ajouté (#5) · zéro chiffre inventé (#6) · aucune commande VPS (#8) · aucun `git clean` <!-- ci-allow : mention de l'interdit absolu, jamais exécuté -->.
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## Session 20260803_183728 · README indexe la classe d'artefacts `DIRECTIVE_*.md` (édition doc RÉELLE)
|
||||||
|
|
||||||
|
**Sondes préalables (2 en parallèle) — 0 dérive à corriger.**
|
||||||
|
1. **Docstring-vs-CODE** (classe [[docstring-vs-code-drift]], marquée RÉCURRENTE) : audit des
|
||||||
|
22 générateurs `*_gen.py` + helpers `*lib*.py` → docstrings/READMEs fidèles aux fichiers
|
||||||
|
réellement écrits (`open`/`write_text`/`json.dump`) et aux clés lues. **Aucun phantom
|
||||||
|
d'input/fallback/output.** Les dérives passées (publiciste « fallback prix §5.3 », demo
|
||||||
|
`run_sheet.md`, ecf « 12 invariants ») restent corrigées.
|
||||||
|
2. **Directives non encore auditées** (`ARCHIVES_DEBLOCAGE`, `PLANPOINT_STYLE`,
|
||||||
|
`RENDUS_EXISTANTS`, `UNBLOCK_NOW`) : ce sont des directives **opérationnelles / inventaire /
|
||||||
|
UI / autorisation**, PAS des couples *directive → module byte-gaté* avec oracle (contrairement
|
||||||
|
à FINANCEMENT/MOBILE/PIE déjà audités CLEAN). Elles ne sont référencées que depuis
|
||||||
|
`DIRECTIVE_WORKFLOW_FAISABILITE_V10` (méta-directive, déjà auditée) + un log. Rien à gater.
|
||||||
|
|
||||||
|
**Le gap RÉEL trouvé (et corrigé).** Les **8 fichiers `DIRECTIVE_*.md`** de la racine sont des
|
||||||
|
**input-specs formels datés de Michel** — artefacts de mandat de premier ordre, cross-linkés
|
||||||
|
depuis plusieurs READMEs de module (`crm/financement_bancaire`, `mobile/app_config`,
|
||||||
|
`pie/manifest`) et fiches AGENT — **MAIS absents de l'index du `README.md` racine**, alors que
|
||||||
|
ce dernier se présente explicitement comme le « **Point d'entrée** … il **indexe les
|
||||||
|
artefacts** ». `grep "DIRECTIVE" README.md` = **0 occurrence**. Classe d'artefacts entièrement
|
||||||
|
invisible depuis le point d'entrée.
|
||||||
|
|
||||||
|
**Édition (README.md, doc réelle, PAS un signal-only) :**
|
||||||
|
- **Ligne de navigation** ajoutée (après `PORTAIL_BANCABLES_4BIG.md`) pointant vers une ancre
|
||||||
|
intra-doc `#directives-michel-input-specs-datés` (ancre non validée par `check_docs` qui
|
||||||
|
strippe `#…` l.33 → sûr).
|
||||||
|
- **Nouvelle section `## Directives Michel (input-specs datés)`** (avant `## Git`) : cadre la
|
||||||
|
nature snapshot (`spec = authority`, comme `daily_reports`), rappelle l'exclusion de
|
||||||
|
`guard_constraints` (gouvernance citant URLs/chemins interdits), puis **liste les 8
|
||||||
|
directives en 2 groupes honnêtes** :
|
||||||
|
- **Pilotent un module byte-gaté** (audité *directive→implémentation*) : FINANCEMENT →
|
||||||
|
`crm/financement_bancaire` · MOBILE_STORES → `mobile/app_config` · PIE → `pie/manifest`.
|
||||||
|
- **Contexte/inventaire/workflow/gouvernance** (pas de module 1:1, runtime/VPS hors
|
||||||
|
périmètre #8) : WORKFLOW_FAISABILITE_V10 · ARCHIVES_DEBLOCAGE · RENDUS_EXISTANTS ·
|
||||||
|
PLANPOINT_STYLE · UNBLOCK_NOW.
|
||||||
|
|
||||||
|
**Discipline anti-drift respectée.** **Aucun compte agrégé en dur** (« 8 directives »/« 4 »)
|
||||||
|
introduit → pas de scalaire qui dérive en silence (#6) ; l'énumération EST la liste. Tous les
|
||||||
|
liens ciblent des fichiers **existants** (`check_docs` HARD vérifie l'existence). Groupement
|
||||||
|
**vérifié sémantiquement** (V10 n'a PAS de module 1:1 → classé contexte, pas faux-lié ;
|
||||||
|
`faisabilite/AGENT.md` référence en réalité PIE, pas V10). Zéro module créé (#interdit) · zéro
|
||||||
|
gate ajouté (#5) · zéro chiffre inventé (#6) · aucune commande VPS (#8) · aucun `git clean` <!-- ci-allow : mention de l'interdit absolu, jamais exécuté -->.
|
||||||
|
|
||||||
|
**Vérification :** `run_ci.sh --static` → **7/7 PASS** (dont `check-docs` liens OK +
|
||||||
|
`check-readme-claims` vert : aucune nouvelle assertion chiffrée). Baseline pré-édition
|
||||||
|
`run_ci.sh` complet = 32 PASS ; édition README-seule → suites de module inchangées.
|
||||||
|
|
||||||
|
**Résultat : 1 édition doc RÉELLE** (README indexe enfin la classe `DIRECTIVE_*.md`), classe
|
||||||
|
[[directive-vs-implementation]] rendue **navigable depuis le point d'entrée**. Gate vert.
|
||||||
|
|||||||
@@ -17,6 +17,7 @@ NON-NÉGOCIABLES : [`CLAUDE.md`](CLAUDE.md).
|
|||||||
| [`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 |
|
| [`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) |
|
| [`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 |
|
| [`PORTAIL_BANCABLES_4BIG.md`](PORTAIL_BANCABLES_4BIG.md) | Cadre de bancabilité 4Big |
|
||||||
|
| [`DIRECTIVE_*.md`](#directives-michel-input-specs-datés) | Input-specs datés de Michel (snapshots) qui pilotent les modules — spec commitée = autorité |
|
||||||
| [`02_master_prompt/`](02_master_prompt) | Prompt maître du mandat |
|
| [`02_master_prompt/`](02_master_prompt) | Prompt maître du mandat |
|
||||||
| [`03_agents/`](03_agents) | Fiches des **13 agents** (rôle · livrables · coordination) |
|
| [`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/`](05_deliverables_mvp) | Livrables (générateurs déterministes + hand-off `out/`) |
|
||||||
@@ -59,6 +60,31 @@ indexation, voix Amélie) s'exécute sur le **VPS `153.75.250.214`** et reste **
|
|||||||
worker** (`CLAUDE.md` #8). Le plan d'activation ordonné est le run-book
|
worker** (`CLAUDE.md` #8). Le plan d'activation ordonné est le run-book
|
||||||
[`devops/deploy_runbook`](05_deliverables_mvp/devops/deploy_runbook/README.md).
|
[`devops/deploy_runbook`](05_deliverables_mvp/devops/deploy_runbook/README.md).
|
||||||
|
|
||||||
|
## 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`](ci/README.md) (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) :
|
||||||
|
|
||||||
|
- [`DIRECTIVE_FINANCEMENT_BANCAIRE_COMPLET`](DIRECTIVE_FINANCEMENT_BANCAIRE_COMPLET_20260803.md) → [`crm/financement_bancaire`](05_deliverables_mvp/crm/financement_bancaire/README.md)
|
||||||
|
- [`DIRECTIVE_MOBILE_STORES`](DIRECTIVE_MOBILE_STORES_20260803.md) → [`mobile/app_config`](05_deliverables_mvp/mobile/app_config/README.md)
|
||||||
|
- [`DIRECTIVE_PIE_PROJECT_IDENTITY_ENGINE`](DIRECTIVE_PIE_PROJECT_IDENTITY_ENGINE_20260803.md) → [`pie/manifest`](05_deliverables_mvp/pie/manifest/README.md)
|
||||||
|
|
||||||
|
**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) :
|
||||||
|
|
||||||
|
- [`DIRECTIVE_WORKFLOW_FAISABILITE_V10`](DIRECTIVE_WORKFLOW_FAISABILITE_V10_20260803.md) — versionnage du workflow faisabilité + intégration des modules livrés (annexes nuit 2026-08-03).
|
||||||
|
- [`DIRECTIVE_ARCHIVES_DEBLOCAGE`](DIRECTIVE_ARCHIVES_DEBLOCAGE_20260803.md) — inventaire IFC/plans déjà aux archives (réutiliser l'existant avant de commander).
|
||||||
|
- [`DIRECTIVE_RENDUS_EXISTANTS`](DIRECTIVE_RENDUS_EXISTANTS_20260803.md) — inventaire des rendus existants (priorité avant regénération Flux).
|
||||||
|
- [`DIRECTIVE_PLANPOINT_STYLE`](DIRECTIVE_PLANPOINT_STYLE_20260803.md) — exigence UI du configurateur « choisir-mon-unite » (niveau PlanPoint.io).
|
||||||
|
- [`DIRECTIVE_UNBLOCK_NOW`](DIRECTIVE_UNBLOCK_NOW_20260803.md) — autorisations 24/7 (contrainte #8 levée · cf. [`AUTORISATIONS_MICHEL_20260803.md`](AUTORISATIONS_MICHEL_20260803.md)).
|
||||||
|
|
||||||
## Git — Gitea uniquement
|
## Git — Gitea uniquement
|
||||||
|
|
||||||
Dépôt de mandat : `michel/oto-enterprise-os-dtp` sur Gitea (`153.75.250.214:3015`).
|
Dépôt de mandat : `michel/oto-enterprise-os-dtp` sur Gitea (`153.75.250.214:3015`).
|
||||||
|
|||||||
Reference in New Issue
Block a user