[DTP-Worker] Sprint 4 · Générateur workflow vente ERPNext (lead → CONFOTUR)
Contrat pipeline commercial CRM natif (lead → visite → devis → réservation → contrat → CONFOTUR) → fixtures Frappe/ERPNext v15 : Workflow (9 états / 11 transitions) + Workflow State + Workflow Action Master + MANIFEST. Rôles gardant états/transitions résolus depuis rbac_50_roles.json (réutilisation, zéro duplication · #6) : le contrat ne cite qu'un id de rôle, jamais un nom Frappe en dur. CLI build/validate refuse d'écrire si l'un des 9 invariants de graphe casse (monotonie doc_status, atteignabilité, séparation des pouvoirs sur les étapes engageant de l'argent / clôturant). 25 tests (stdlib pur + oracle jsonschema) · job CI crm-workflow-vente-tests ajouté au gate · 146 tests de régression verts au total. Application VPS (DocType porteur OTO Dossier Vente + bench migrate) = agent ERPNext Backend, hors périmètre worker. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This commit is contained in:
@@ -0,0 +1,48 @@
|
||||
{
|
||||
"generated_from": "workflow_vente_spec.json",
|
||||
"rbac_source": "rbac_50_roles.json",
|
||||
"source_version": "1.0.0",
|
||||
"workflow_name": "OTO Vente Pipeline",
|
||||
"document_type": "OTO Dossier Vente",
|
||||
"document_type_custom": true,
|
||||
"counts": {
|
||||
"states": 9,
|
||||
"transitions": 11,
|
||||
"workflow_state_masters": 9,
|
||||
"workflow_action_masters": 9,
|
||||
"terminal_states": 3
|
||||
},
|
||||
"custom_doctypes_a_confirmer": [
|
||||
"OTO Dossier Vente"
|
||||
],
|
||||
"roles_rbac_utilises": [
|
||||
{
|
||||
"role_id": "direction-cco",
|
||||
"erpnext_role_name": "OTO Direction Commerciale"
|
||||
},
|
||||
{
|
||||
"role_id": "ventes-chef-equipe",
|
||||
"erpnext_role_name": "OTO Ventes Chef Équipe"
|
||||
},
|
||||
{
|
||||
"role_id": "ventes-confotur",
|
||||
"erpnext_role_name": "OTO Ventes CONFOTUR"
|
||||
},
|
||||
{
|
||||
"role_id": "ventes-conseiller",
|
||||
"erpnext_role_name": "OTO Ventes Conseiller"
|
||||
},
|
||||
{
|
||||
"role_id": "ventes-contrats",
|
||||
"erpnext_role_name": "OTO Ventes Contrats"
|
||||
},
|
||||
{
|
||||
"role_id": "ventes-directeur",
|
||||
"erpnext_role_name": "OTO Ventes Directeur"
|
||||
},
|
||||
{
|
||||
"role_id": "ventes-reservations",
|
||||
"erpnext_role_name": "OTO Ventes Réservations"
|
||||
}
|
||||
]
|
||||
}
|
||||
Reference in New Issue
Block a user