# The task's process, as the customer sees and signs it (erp_platform.bpmn renders it at GET /process/bpmn).
# The shape of a module spec's `workflows:` (erp-method modules/crm, workflows.task), written from what this brick's
# use cases do. Calls, emails and meetings are logged facts with no lifecycle. Keys are the BPMN ids: frozen once signed.
version: 1
name: Activity
actors:
- { id: rep, name: Sales rep }
- { id: manager, name: Sales manager }
workflows:
- entity: task
states: [open, done, cancelled]
transitions:
- { key: log_task, from: none, to: open, by: rep, name: Set a task, effect: "listed on its owner's tasks (CRM-12)" }
- { key: reschedule_task, from: open, to: open, by: [rep, manager], name: Move the due date }
- { key: complete_task, from: open, to: done, by: [rep, manager], name: Complete }
- { key: cancel_task, from: open, to: cancelled, by: [rep, manager], name: Cancel }
- { key: reopen_task, from: [done, cancelled], to: open, by: [rep, manager], name: Reopen }