Files
oto-enterprise-os-dtp/05_deliverables_mvp/crm/financement_bancaire/out/MANIFEST.json
T
Claude Code DTP Worker 48276ee916 [DTP-Worker 20260806_031432] FIX générateur — crm/financement_bancaire MANIFEST.roles_rbac_utilises répétait ventes-conseiller (dup ungaté, liste per-slot vs ensemble distinct)
Défaut réel/reproductible (pas stale, byte-repro vert) : finlib/builder.py:89
faisait [roles_resolved[k] for k in sorted(roles_resolved)], itérant les 4 SLOTS
logiques de spec["roles"] — 2 slots (conseiller_wag ET validation_dossier) pointent
le même rôle ventes-conseiller → 4 entrées pour 3 rôles distincts. Preuve bug (pas
per-slot voulu) : la sortie drope la clé de slot (cle), donc le doublon ne porte
aucune info distinctive ; sémantique documentée README.md:54 « rôles RBAC utilisés »
+ ci/README.md:1100 « ensemble distinct » ; les 3 modules frères produisent tous un
ensemble distinct (confotur 3/3, commissions 4/4, workflow_vente 7/7) — financement
seul outlier 4/3.

Fix (aligné idiome commissions) : ensemble distinct trié par role_id via
sorted({rr["role_id"] for rr in roles_resolved.values()}). Artefact régénéré → 3/3
distinct. 0 gate ajouté (#5 — champ lu par AUCUN gate financement ni consommateur
externe ; convention distinctness déjà tenue par les frères). 0 chiffre inventé (#6).
run_ci 33 PASS · 0 FAIL · 0 SKIP (byte-repro vert avec nouvel artefact, 35 tests verts).

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-08-06 03:22:44 +00:00

34 lines
895 B
JSON

{
"generated_from": "financement_spec.json",
"source_directive": "DIRECTIVE_FINANCEMENT_BANCAIRE_COMPLET_20260803.md",
"rbac_source": "rbac_50_roles.json",
"source_version": "1.0.0",
"module": "financement_bancaire",
"titre": "Financement Bancaire — parcours hypothécaire immobilier RD",
"counts": {
"banques": 6,
"sections": 7,
"documents": 15,
"documents_requis_resident": 9,
"documents_requis_etranger": 13,
"autorisations": 4,
"gate_conditions": 4,
"banniere_lignes": 4,
"workflow_suivi_etapes": 6
},
"roles_rbac_utilises": [
{
"role_id": "compta-tresorier",
"erpnext_role_name": "OTO Compta Trésorier"
},
{
"role_id": "ventes-conseiller",
"erpnext_role_name": "OTO Ventes Conseiller"
},
{
"role_id": "ventes-directeur",
"erpnext_role_name": "OTO Ventes Directeur"
}
]
}