34f202af40
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>
34 lines
1.5 KiB
Markdown
34 lines
1.5 KiB
Markdown
# Activity Log · 2026-07-30 · Claude Code DTP
|
|
|
|
## Session `20260730_052701` (session 11)
|
|
|
|
**Tâche** : Sprint 4 · CRM — Générateur de workflow vente ERPNext
|
|
(`lead → visite → devis → réservation → contrat → CONFOTUR`).
|
|
|
|
**Fichiers créés** — `05_deliverables_mvp/crm/workflow_vente/` :
|
|
- `workflow_vente_spec.json` (contrat pipeline · 9 états / 11 transitions)
|
|
- `wflib/{__init__,rbac,erpnext,builder}.py` (résolution RBAC + connaissance
|
|
Frappe + assemblage déterministe)
|
|
- `workflow_vente_gen.py` (CLI `build`/`validate` · 9 invariants de graphe)
|
|
- `workflow.schema.json` (contrat de sortie draft-07)
|
|
- `out/{workflow,workflow_state,workflow_action_master,MANIFEST}.json` (hand-off)
|
|
- `tests/test_workflow_vente.py` (25 tests) · `README.md` · `.gitignore`
|
|
|
|
**Fichiers modifiés** :
|
|
- `.gitea/workflows/ci.yml` : job `crm-workflow-vente-tests` + ajout au `gate`.
|
|
|
|
**Réutilisation (zéro duplication · #6)** : rôles résolus depuis
|
|
`rbac/rbac_50_roles.json` (jamais de nom Frappe en dur) + validateur maison
|
|
Publiciste.
|
|
|
|
**Vérifs** : 25/25 tests ; gate CI local vert (guard + JSON + docs + YAML) ;
|
|
régression **146 tests verts** au total.
|
|
|
|
**Hors périmètre worker (VPS)** : création DocType `OTO Dossier Vente` + import
|
|
fixtures (`bench migrate`) → agent ERPNext Backend (#8).
|
|
|
|
**Détail complet** : voir
|
|
[`05_deliverables_mvp/daily_reports/2026-07-30-session11.md`](../05_deliverables_mvp/daily_reports/2026-07-30-session11.md).
|
|
|
|
**Auto-score 4Big** : 96/100.
|