# workflow-state-machine

# WORKFLOW STATE MACHINE

stateDiagram-v2 [*] --> DRAFT: Create Request DRAFT --> SUBMITTED: Submit for
Review DRAFT --> [*]: Abandon SUBMITTED --> IN_REVIEW: Route to
Dept Approvers SUBMITTED --> [*]: Withdraw IN_REVIEW --> APPROVED: All Depts
Approve IN_REVIEW --> REJECTED: Any Dept
Rejects IN_REVIEW --> PENDING_RESUBMISSION: Request
Changes PENDING_RESUBMISSION --> SUBMITTED: Resubmit with
Changes PENDING_RESUBMISSION --> [*]: Withdraw APPROVED --> REVOKED: License
Revocation APPROVED --> [*]: Expired REJECTED --> DRAFT: Appeal or
Reapply REJECTED --> [*]: Withdrawn REVOKED --> [*]: End note right of DRAFT Local Draft Applicant can edit No blockchain record end note note right of SUBMITTED Submitted to System Hash recorded on chain Locked from editing end note note right of IN_REVIEW Multi-Dept Approval Parallel workflows Can be sequential end note note right of PENDING_RESUBMISSION Waiting for changes Applicant notified Time limited window end note note right of APPROVED License Granted ERC-721 NFT minted Verifiable on chain end note note right of REJECTED Request Denied Reason recorded Can appeal (future) end note note right of REVOKED License Cancelled NFT burned Audit trail kept end note