[DTP-Worker 20260805_071201] FIX de COUVERTURE doc : la fiche CRM omettait son 4e module livré crm/financement_bancaire (absent des 13 fiches agents) → sous-section dédiée + ligne de table AUTO-GATÉE par 3 gates indépendants de check_readme_claims (cellule Tests 35==source · job CI crm-financement-bancaire-tests==ci.yml · verbes CLI build|validate==subparsers, résolution par cible de lien crm/financement_bancaire∈auth) · trio pipeline + agrégat gaté « Total CRM 81 tests » laissés INTACTS (financement ne partage pas la source unique workflow_vente_spec → hors-trio, sinon faux sémantiquement + gate cassé) · Sprint 4·L52 lu dans acceptance_spec.json (autorité roadmap-globale, PAS le Sprint 5 agent-interne du README module) · 35 tests lu dans regression_plan · SIGNAL surfacé non tranché : README module « Sprint 5 » vs S4 acceptance (piège des 2 cadres de sprint, édition spec+regen coordonnée requise) · 0 édition d'autorité · 0 gate ajouté (#5) · 0 chiffre inventé (#6) · CI 33 PASS

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This commit is contained in:
Claude Code DTP Worker
2026-08-05 07:23:07 +00:00
parent caa3b90556
commit f73404a6a4
2 changed files with 73 additions and 1 deletions
+26 -1
View File
@@ -29,7 +29,32 @@ AVANT le Workflow** qui le cible.
doublons) : le nom du DocType, son champ d'état, ses valeurs de statut et son
caractère *submittable* sont **dérivés** de `workflow_vente_spec.json` (anti-dérive) ;
les rôles sont **résolus** depuis `rbac/rbac_50_roles.json` — jamais un nom Frappe
en dur. Total CRM : **81 tests** (25 + 31 + 25), tous gated dans le CI.
en dur. Total CRM : **81 tests** (25 + 31 + 25), tous gated dans le CI — c'est le
total du **trio pipeline** ; le module financement bancaire ci-dessous porte ses
**35 tests** à part (source distincte).
## Module CRM additionnel · financement bancaire hypothécaire (piloté par directive)
Un **quatrième** livrable CRM vit sous `05_deliverables_mvp/crm/` **hors du trio
pipeline** — piloté non par `workflow_vente_spec.json` mais par une directive datée
de Michel, d'où son suivi séparé (il ne partage pas la source unique du trio) :
| Module | Sprint | Rôle | Entrée CLI | Job CI | Tests |
|---|---|---|---|---|---|
| [`financement_bancaire/`](../../05_deliverables_mvp/crm/financement_bancaire/README.md) | 4 (roadmap L52) | Parcours **hypothécaire RD** : cœur métier du **gate check 4 conditions** — aucun document n'est transmis à la banque tant que apport initial (20 % résident · 30 % étranger · Ley 189-11) + documents exigés + autorisations signées + validation référente ne sont pas réunis ; fonctions **pures** sans I/O | `financement_bancaire_gen.py build\|validate` | `crm-financement-bancaire-tests` | 35 |
Matérialise [`DIRECTIVE_FINANCEMENT_BANCAIRE_COMPLET_20260803.md`](../../DIRECTIVE_FINANCEMENT_BANCAIRE_COMPLET_20260803.md)
(**Phase 1 · P0 · MVP** : contrat de données + cœur du gate + 6 sections + bannière
critique). La **Phase 2** (formulaires PDF officiels des 6 banques, endpoints
runtime `/api/hypotheque/*`, `renderHypotheque`) attend les démarches
relationship-manager de Michel et l'exécution VPS — **hors périmètre worker** (#8).
**Décision produit ouverte** — la condition #4 du gate teste encore une validation
**humaine** (`wag_validated_by`), alors que la couche `## PRÉCISION` de la directive
la supersède par un **audit IA signé** ; producteur d'audit hors dépôt → arbitrage
de séquencement, **surfacé non tranché** dans
[`OPEN_DECISIONS_REGISTER.md` D-02](../../05_deliverables_mvp/OPEN_DECISIONS_REGISTER.md)
(ne pas re-litiger · #5).
## Anti-invention (#6) — pourquoi les taux de commission sont `null`
**Aucun taux de commission n'est documenté dans CLAUDE.md.** Les taux du barème