Workflow state flow