[DTP-Worker] Sprint 5 · Générateur Audit 5D conformité (QA · roadmap L58)

Audit de second niveau : lit les hand-off out/ des livrables (workflow vente,
Dossier Vente, commissions, e-CF DGII, CONFOTUR) et vérifie 17 contrôles en
5 dimensions (D1 Traçabilité/ISA 500 · D2 AML-UAF/Ley 155-17 · D3 Fiscal
e-CF/Ley 32-23 · D4 Intégrité/IFRS · D5 Gouvernance-SoD/ISA 315).

Anti-invention #6 : paramètre réglementaire non confirmé → A_CONFIRMER (open
item assigné au métier), jamais fabriqué. Verdict PASS_WITH_OPEN_ITEMS (13 PASS,
0 FAIL, 4 à confirmer). Réutilise validateur Publiciste + RoleResolver CRM +
roles_targeting CONFOTUR (zéro duplication).

37 tests · 15 invariants · build déterministe · régression 341 tests verts.
Job CI qa-audit-5d-tests + gate.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This commit is contained in:
Claude Code DTP Worker
2026-07-30 08:41:57 +00:00
parent 35a20247f8
commit c06e15c058
16 changed files with 1699 additions and 1 deletions
@@ -0,0 +1,27 @@
{
"generated_from": "audit_spec.json",
"audited_artifacts": [
"crm/commissions/out/commission_plan.json",
"crm/dossier_vente/out/doctype_oto_dossier_vente.json",
"crm/workflow_vente/out/workflow.json",
"fiscal/ecf_dgii/out/ecf_plan.json",
"legal/confotur/out/doctype_confotur_application.json"
],
"dimensions": [
"D1",
"D2",
"D3",
"D4",
"D5"
],
"controls_total": 17,
"verdict": "PASS_WITH_OPEN_ITEMS",
"open_items": [
"D1.1",
"D1.2",
"D1.3",
"D2.3"
],
"note_anti_invention": "Audit de second niveau : lit les hand-off out/ des livrables, ne fabrique aucun paramètre réglementaire (#6). A_CONFIRMER = open item à confirmer par le métier, jamais une valeur inventée.",
"hand_off_vps": "Confirmer les paramètres réglementaires (taux, RNC/ITBIS/TipoCambio, seuil UAF) + exécuter les tests E2E Playwright sur le desk réel → agents Direction/Compta/ONAPI-Legal (#8)."
}
@@ -0,0 +1,250 @@
{
"audit": "OTO QA · Audit 5D Conformité",
"version": "1.0",
"reference_cadre": "Audit qualité 5D du mandat DTP — 5 dimensions (Traçabilité ISA 500 · AML/UAF Ley 155-17 · Fiscal e-CF Ley 32-23/DGII · Intégrité IFRS · Gouvernance ISA 315). L'audit LIT les livrables commités (hand-off `out/`) ; il ne fabrique aucune donnée réglementaire (CLAUDE.md #6).",
"dimensions": [
{
"id": "D1",
"titre": "Traçabilité & anti-invention",
"reference": "ISA 500 — Éléments probants",
"controls_total": 4,
"pass": 1,
"fail": 0,
"a_confirmer": 3,
"statut": "PASS_WITH_OPEN_ITEMS"
},
{
"id": "D2",
"titre": "Conformité AML / UAF",
"reference": "Ley 155-17 — sujeto obligado immobilier · KYC",
"controls_total": 3,
"pass": 2,
"fail": 0,
"a_confirmer": 1,
"statut": "PASS_WITH_OPEN_ITEMS"
},
{
"id": "D3",
"titre": "Conformité fiscale e-CF",
"reference": "Ley 32-23 · DGII · Cardnet (CLAUDE.md #10)",
"controls_total": 3,
"pass": 3,
"fail": 0,
"a_confirmer": 0,
"statut": "PASS"
},
{
"id": "D4",
"titre": "Intégrité référentielle du reporting",
"reference": "IFRS — cohérence documentaire",
"controls_total": 4,
"pass": 4,
"fail": 0,
"a_confirmer": 0,
"statut": "PASS"
},
{
"id": "D5",
"titre": "Gouvernance & ségrégation des tâches",
"reference": "ISA 315 — contrôle interne (SoD)",
"controls_total": 3,
"pass": 3,
"fail": 0,
"a_confirmer": 0,
"statut": "PASS"
}
],
"controls": [
{
"id": "D1.1",
"dimension": "D1",
"titre": "Taux de commission non fabriqués",
"reference": "ISA 500",
"statut": "A_CONFIRMER",
"detail": "5/5 taux de commission à confirmer (aucun fabriqué · source null).",
"owner": "Direction"
},
{
"id": "D1.2",
"dimension": "D1",
"titre": "RNC / raison sociale émetteur non fabriqués",
"reference": "ISA 500",
"statut": "A_CONFIRMER",
"detail": "RNC + raison sociale émetteur à confirmer (aucun fabriqué).",
"owner": "Compta"
},
{
"id": "D1.3",
"dimension": "D1",
"titre": "ITBIS + TipoCambio non fabriqués",
"reference": "ISA 500",
"statut": "A_CONFIRMER",
"detail": "2 paramètre(s) à confirmer : ['ITBIS', 'TipoCambio']",
"owner": "Compta Fiscaliste eCF"
},
{
"id": "D1.4",
"dimension": "D1",
"titre": "CONFOTUR sans valeur par défaut fabriquée",
"reference": "ISA 500",
"statut": "PASS",
"detail": "aucun default sur les champs de donnée — référence d'autorité saisie au dépôt réel, pas fabriquée.",
"owner": null
},
{
"id": "D2.1",
"dimension": "D2",
"titre": "Ancrage KYC du client sur le Dossier Vente",
"reference": "Ley 155-17",
"statut": "PASS",
"detail": "identification prospect + client présente (ancrage KYC).",
"owner": null
},
{
"id": "D2.2",
"dimension": "D2",
"titre": "Pièce d'identité client au dossier CONFOTUR",
"reference": "Ley 155-17",
"statut": "PASS",
"detail": "pièce d'identité client suivie dans le dossier CONFOTUR.",
"owner": null
},
{
"id": "D2.3",
"dimension": "D2",
"titre": "Seuil de déclaration UAF non fabriqué",
"reference": "Ley 155-17",
"statut": "A_CONFIRMER",
"detail": "seuil de déclaration UAF (ROS/umbral efectivo) à confirmer par l'Oficial de Cumplimiento.",
"owner": "Oficial de Cumplimiento / UAF"
},
{
"id": "D3.1",
"dimension": "D3",
"titre": "e-CF libellé sur la devise réelle du Dossier",
"reference": "Ley 32-23",
"statut": "PASS",
"detail": "e-CF libellé sur le champ réel `devise` du Dossier Vente.",
"owner": null
},
{
"id": "D3.2",
"dimension": "D3",
"titre": "Émission e-CF uniquement sur état soumis",
"reference": "Ley 32-23",
"statut": "PASS",
"detail": "2 émission(s) e-CF déclenchée(s) sur état soumis (doc_status=1).",
"owner": null
},
{
"id": "D3.3",
"dimension": "D3",
"titre": "FormaPago par défaut cohérente Cardnet",
"reference": "CLAUDE.md #10",
"statut": "PASS",
"detail": "FormaPago par défaut = 3 (Tarjeta) — cohérent Cardnet #10.",
"owner": null
},
{
"id": "D4.1",
"dimension": "D4",
"titre": "États Dossier alignés sur le Workflow",
"reference": "IFRS",
"statut": "PASS",
"detail": "9 états alignés Dossier ↔ Workflow (source unique).",
"owner": null
},
{
"id": "D4.2",
"dimension": "D4",
"titre": "Base de commission = champ Currency réel",
"reference": "IFRS",
"statut": "PASS",
"detail": "toute base de commission pointe un champ Currency réel du Dossier.",
"owner": null
},
{
"id": "D4.3",
"dimension": "D4",
"titre": "CONFOTUR lié au DocType Dossier Vente réel",
"reference": "IFRS",
"statut": "PASS",
"detail": "CONFOTUR lié au DocType réel `OTO Dossier Vente`.",
"owner": null
},
{
"id": "D4.4",
"dimension": "D4",
"titre": "Valeurs d'état consommées définies par le Workflow",
"reference": "IFRS",
"statut": "PASS",
"detail": "3 valeurs d'état consommées, toutes définies par le workflow.",
"owner": null
},
{
"id": "D5.1",
"dimension": "D5",
"titre": "Tous les rôles acteurs présents au contrat RBAC",
"reference": "ISA 315",
"statut": "PASS",
"detail": "5 rôles acteurs + 3 rôles CONFOTUR tous présents au contrat RBAC (aucun inventé).",
"owner": null
},
{
"id": "D5.2",
"dimension": "D5",
"titre": "Ségrégation émission e-CF ↔ vente",
"reference": "ISA 315",
"statut": "PASS",
"detail": "émission e-CF portée par la Compta ['compta-fiscaliste-ecf'], distincte des rôles de vente soumettant le dossier — SoD respectée.",
"owner": null
},
{
"id": "D5.3",
"dimension": "D5",
"titre": "Permissions CONFOTUR conformes au RBAC",
"reference": "ISA 315",
"statut": "PASS",
"detail": "permissions du DocType CONFOTUR = cibles RBAC mot pour mot (3 rôles).",
"owner": null
}
],
"open_items": [
{
"control": "D1.1",
"dimension": "D1",
"detail": "5/5 taux de commission à confirmer (aucun fabriqué · source null).",
"owner": "Direction"
},
{
"control": "D1.2",
"dimension": "D1",
"detail": "RNC + raison sociale émetteur à confirmer (aucun fabriqué).",
"owner": "Compta"
},
{
"control": "D1.3",
"dimension": "D1",
"detail": "2 paramètre(s) à confirmer : ['ITBIS', 'TipoCambio']",
"owner": "Compta Fiscaliste eCF"
},
{
"control": "D2.3",
"dimension": "D2",
"detail": "seuil de déclaration UAF (ROS/umbral efectivo) à confirmer par l'Oficial de Cumplimiento.",
"owner": "Oficial de Cumplimiento / UAF"
}
],
"totals": {
"controls": 17,
"pass": 13,
"fail": 0,
"a_confirmer": 4
},
"verdict": "PASS_WITH_OPEN_ITEMS",
"notes": [
"Audit de second niveau : la matière première est le hand-off `out/` de chaque générateur (workflow vente, Dossier Vente, commissions, e-CF DGII, CONFOTUR).",
"Statut A_CONFIRMER ≠ échec : la structure est correcte, un paramètre réglementaire réel reste à confirmer par le métier propriétaire (open item).",
"Hors périmètre worker (#8) : confirmation des paramètres réglementaires (taux, RNC/ITBIS/TipoCambio, seuil UAF) + tests E2E Playwright sur le desk réel côté VPS."
]
}