[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:
Claude Code DTP Worker
2026-07-30 05:36:27 +00:00
parent 915fc5194a
commit 34f202af40
17 changed files with 1797 additions and 1 deletions
+20 -1
View File
@@ -180,10 +180,29 @@ jobs:
- name: Tests générateur bancable trilingue
run: python3 -m unittest discover -s tests -v
# --------------------------------------------------------------------------
# Générateur de workflow vente ERPNext (Sprint 4 · CRM natif) : le contrat
# pipeline workflow_vente_spec.json (lead → visite → devis → réservation →
# contrat → CONFOTUR) → fixtures Frappe Workflow + Workflow State + Workflow
# Action Master. Rôles résolus depuis rbac_50_roles.json (zéro duplication).
# Valide le schéma de sortie + 9 invariants de graphe (monotonie doc_status,
# atteignabilité, séparation des pouvoirs). stdlib pur, zéro pip.
# --------------------------------------------------------------------------
crm-workflow-vente-tests:
name: CRM · workflow vente ERPNext (lead → CONFOTUR)
runs-on: ubuntu-latest
defaults:
run:
working-directory: 05_deliverables_mvp/crm/workflow_vente
steps:
- uses: actions/checkout@v4
- name: Tests générateur workflow vente
run: python3 -m unittest discover -s tests -v
gate:
name: Gate qualité (agrégat)
runs-on: ubuntu-latest
needs: [constraints-guard, validate-json, check-docs, publiciste-tests, rbac-tests, faisabilite-gen-tests, rbac-fixtures-tests, rbac-userperm-tests, rbac-roleprofile-tests, rbac-applyplan-tests, bancable-tests]
needs: [constraints-guard, validate-json, check-docs, publiciste-tests, rbac-tests, faisabilite-gen-tests, rbac-fixtures-tests, rbac-userperm-tests, rbac-roleprofile-tests, rbac-applyplan-tests, bancable-tests, crm-workflow-vente-tests]
steps:
- name: Résultat
run: echo "✅ Gate qualité 4Big franchi — tous les checks verts."