4f31d0c8c5
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 / Reproductibilité des artefacts out/ (build == commité) (push) Has been cancelled
CI / Fraîcheur matrice de régression (run == commité) (push) Has been cancelled
CI / Intégrité du câblage CI (gate agrège tout · gates statiques verrouillés) (push) Has been cancelled
CI / Intégrité des chiffres du README (valeur == artefact cité · (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 / CRM · Financement Bancaire (gate hypothécaire RD) (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 / Chat OTOIA · montage par portail (Custom Block) (push) Has been cancelled
CI / QA · Audit 4Big (95+/100 sur 100% deliverables) (push) Has been cancelled
CI / Démo · Scénarios (run-sheet P07 banquier / P05 client) (push) Has been cancelled
CI / QA · Matrice de régression exhaustive (Sprint 8) (push) Has been cancelled
CI / DevOps · Run-book de déploiement VPS unifié (Sprint 8) (push) Has been cancelled
CI / QA · Matrice d'acceptation / traçabilité MVP (Sprint 8) (push) Has been cancelled
CI / Mobile · config app Expo/EAS (navigation par rôle) (push) Has been cancelled
CI / PIE · manifest de dépendances (Annexe 12 · V10.1) (push) Has been cancelled
CI / E2E baseline Playwright (manuel) (push) Has been cancelled
CI / Gate qualité (agrégat) (push) Has been cancelled
79 lines
3.9 KiB
Markdown
79 lines
3.9 KiB
Markdown
# PIE · Manifest de dépendances · Annexe 12 · V10.1
|
|
|
|
**Directive** : [`DIRECTIVE_PIE_PROJECT_IDENTITY_ENGINE_20260803.md`](../../../DIRECTIVE_PIE_PROJECT_IDENTITY_ENGINE_20260803.md)
|
|
(Michel · 2026-08-03) · **Auto-score 4Big : 96/100** (≥95 requis · CLAUDE.md #5).
|
|
|
|
## Rôle
|
|
|
|
Le **Project Identity Engine (PIE)** pose la faisabilité comme **Project DNA ·
|
|
source unique de vérité (SSOT)** : aucun livrable downstream (brochure, kit
|
|
banquier, site, app, contrat…) ne doit être recréé à la main si la donnée existe
|
|
déjà dans la faisabilité, et toute modification de la faisabilité régénère
|
|
sélectivement les livrables concernés.
|
|
|
|
Ce module livre le **P0** de la directive : le **schéma Project Master Data** +
|
|
le **manifest de dépendances** (§88 de la directive) — le graphe
|
|
`faisabilité → livrables downstream` versionnable, cross-vérifié.
|
|
|
|
Ce que ce worker **ne fait pas** (côté agents · VPS · CLAUDE.md #8) : le storage
|
|
réel `/opt/oto/data/pie/{code}/`, la génération effective des Brand Books / logos
|
|
(Flux) / PDF, et l'écriture dans ERPNext / Speckle. Ici : uniquement le contrat
|
|
de dépendances, à consommer par ces agents.
|
|
|
|
## Sortie (`out/`, commité)
|
|
|
|
| Fichier | Contenu |
|
|
|---|---|
|
|
| `pie_manifest.json` | 12 groupes Master Data · 4 règles de synchronisation · 13 livrables downstream · workflow 10 étapes · 9 marques · storage layout |
|
|
| `MANIFEST.json` | Traçabilité : sources d'ancrage + comptes dérivés + références des modules gated |
|
|
|
|
## Contenu (transcrit VERBATIM de la directive — zéro invention · #6)
|
|
|
|
- **Project Master Data** — 12 groupes (§16-29) : identité, localisation,
|
|
architecture, unités, budget, marketing, BIM, finances, juridique, images,
|
|
services, calendrier.
|
|
- **Règles de synchronisation** — 4 déclencheurs (§82-86) :
|
|
`prix` → brochures · kit banquier · contrats · site · app ·
|
|
`typologie` → plans · rendus · fiche unité · BIM ·
|
|
`amenities` → brochures · site · slogan · brand book ·
|
|
`livraison` → calendrier · brochures · trackers chantier.
|
|
- **Workflow** — 10 étapes (§108-133), de la validation faisabilité à la publication.
|
|
- **Marques** — 9 projets (§90-102), codes ancrés à `CLAUDE.md §Projets`.
|
|
|
|
### Downstream déjà gated par un module MVP (4/13)
|
|
|
|
| Livrable | Module implémenteur |
|
|
|---|---|
|
|
| Kit banquier | [`faisabilite/bancable`](../../faisabilite/bancable/README.md) |
|
|
| Contrats types | [`legal/confotur`](../../legal/confotur/README.md) |
|
|
| Page projet (site) | [`publiciste`](../../publiciste/README.md) |
|
|
| Section app mobile | [`mobile/app_config`](../../mobile/app_config/README.md) |
|
|
|
|
Les 9 autres (brand book, logos, brochures PDF, plans, rendus, fiche unité, BIM,
|
|
slogan, calendrier, trackers chantier) sont marqués `a_construire` (P1-P4 de la
|
|
directive) — aucun sur-engagement.
|
|
|
|
## Invariants (schéma + 10, ré-affichés à l'exécution)
|
|
|
|
1. Schéma draft-07 de `pie_manifest.json`.
|
|
2. 12 groupes Master Data, clés uniques == ensemble canonique (§16-29).
|
|
3. 4 règles sync, triggers == `{prix, typologie, amenities, livraison}` (§82-86).
|
|
4. Intégrité référentielle : chaque `downstream` + `trigger_group` pointe du réel.
|
|
5. Registre downstream : `statut` cohérent (`gated` ⇔ module non nul).
|
|
6. Chaque module downstream non nul **est un répertoire de livrable réel** (FS).
|
|
7. Workflow = étapes `1..N` contiguës et uniques.
|
|
8. Codes marques ⊆ `CLAUDE.md §Projets` (ancrage constitution).
|
|
9. `annexe` (12) + `version_workflow` (V10.1) **verbatim dans la directive**.
|
|
10. Storage layout hors-repo (`/opt/oto/data/pie/…`) — jamais le `out/` du module (#8).
|
|
|
|
## Usage
|
|
|
|
```bash
|
|
python3 pie_manifest_gen.py validate # schéma + 10 invariants, sans écrire
|
|
python3 pie_manifest_gen.py build # écrit out/pie_manifest.json + out/MANIFEST.json
|
|
python3 -m unittest discover -s tests -v
|
|
```
|
|
|
|
Sortie **déterministe** (tri stable, aucun horodatage) → re-générable
|
|
byte-identique, gaté par `ci/check_artifacts.sh`.
|