Trac Workflow
This is my Trac Ticket Workflow. I will work on making a visualization to explain what is happening here (the complexity was too much for Trac’s workflow visualizer), but I will go ahead and post in the hopes that it is useful.
awaiting_evidence = reviewing,reopened,new,failed_testing,in_dev -> awaiting_evidence awaiting_evidence.name = Awaiting Evidence awaiting_evidence.operations = leave_status awaiting_evidence.permissions = TICKET_ADMIN failed_testing = testing -> failed_testing failed_testing.name = Proposed solution did not pass testing failed_testing.operations = del_owner failed_testing.permission = TICKET_APPEND impossible = new,reopened,reviewing,pending_others,failed_testing,in_dev -> impossible impossible.default = -1 impossible.name = Impossible to complete impossible.operations = leave_status impossible.permissions = TICKET_ADMIN in_dev = reviewing,failed_testing,pending_others,awaiting_evidence,new -> in_dev in_dev.name = In development in_dev.operations = set_owner_to_self in_dev.permission = TICKET_ADMIN leave_status = * -> * leave_status.default = 20 leave_status.name = Leave ticket status untouched leave_status.permission = TICKET_APPEND passed_testing = testing -> passed_testing passed_testing.name = Proposed solution passed testing passed_testing.operations = del_owner passed_testing.permission = TICKET_APPEND pending_others = new,reopened,reviewing,impossible,in_dev -> pending_others pending_others.name = Pending other department(s) for information/resolution pending_others.operations = leave_status pending_others.permissions = TICKET_ADMIN pending_push = passed_testing,in_dev -> pending_push pending_push.name = Pending push to production pending_push.operations = leave_status pending_push.permission = TICKET_ADMIN reassign.operations = set_owner reassign.permissions = TICKET_ADMIN reassign_reviewing = reviewing,in_dev -> * reassign_reviewing.name = Reassign reassign_reviewing.operations = set_owner reassign_reviewing.permissions = TICKET_ADMIN reassign_testing = testing -> testing reassign_testing.name = Reassign reassign_testing.operations = set_owner reassign_testing.permissions = TICKET_APPEND reopen = closed -> reopened reopen.name = Reopen closed ticket reopen.operations = del_resolution reopen.permissions = TICKET_CREATE resolve = new,reopened,in_dev,reviewing,impossible,pending_others,pending_push,testing,passed_testing,awaiting_evidence -> closed resolve.default = 19 resolve.name = Resolve ticket resolve.operations = set_resolution,set_owner_to_self resolve.permissions = TICKET_ADMIN review = new,reopened,impossible,pending_others,failed_testing,awaiting_evidence,pending_push -> reviewing review.name = Reviewing ticket review.operations = set_owner review.permissions = TICKET_ADMIN testing = new,reviewing,in_dev -> testing testing.name = Pending testing from issue reporter testing.operations = set_owner_to_reporter testing.permissions = TICKET_ADMIN0