Edgewall Software

Version 2 (modified by Ryan J Ollos, 8 years ago) ( diff )

Moved content from TracWorkflow@55.

Ideas and suggestions for Trac's Ticket Workflow

This page collects ideas and suggestions for enhancing the ticket workflow.

If you have a small nice idea but don't feel like starting a discussion on the MailingList or creating a new ticket, this is the place!

Text box for duplicate when a bug is a duplicate
Provide Possibility to 'freeze' a Milestone
tickets linked to multiple versions
[PATCH] Ticket std/custom fields improvements - sql based values, order by, labels, value evals, ...
Timeline shows incomplete information about status changes for customized workflow
Multiple Milestone Dates
Enterprise workflow enhancements for request info
[patch] Workflow tweak: handle "not-state" transition specifications
Enhancement for trac-post-commit-hook.py for Enterprise Workflow
different types of ticket need different workflows
Wiki page and milestone deletes aren't shown in time line
Different workflows when viewing own tickets/others tickets
Workflow actions not translated
Custom Query: Column with last status change
Implement a set_field workflow action
Log unknown attributes in ticket workflow
Default values of ticket workflow fields should be configured in the [ticket-workflow] section
Workflow graph should account for user/group permissions
Ticket workflow should support negated permissions
Add set_owner_default attribute to specify default value of set_owner in ticket-workflow



User interface guidelines

Workflow Actions

(this content was copied from the TracWorkflow page and should be cleaned up)

If you have a response to the comments below, create an enhancement ticket, and replace the description below with a link to the ticket.

  • the "operation" could be on the nodes, possible operations are:
    • preops: automatic, before entering the state/activity
    • postops: automatic, when leaving the state/activity
    • actions: can be chosen by the owner in the list at the bottom, and/or drop-down/pop-up together with the default actions of leaving the node on one of the arrows.

This appears to add complexity without adding functionality; please provide a detailed example where these additions allow something currently impossible to implement.

  • operations could be anything: sum up the time used for the activity, or just write some statistical fields like

A workflow plugin can add an arbitrary workflow operation, so this is already possible.

  • set_actor should be an operation allowing to set the owner, e.g. as a "preop":
    • either to a role, a person
    • entered fix at define time, or at run time, e.g. out of a field, or select.

This is either duplicating the existing set_owner operation, or needs to be clarified.

  • Actions should be selectable based on the ticket type (different Workflows for different tickets)

Look into the AdvancedTicketWorkflowPlugin's triage operation.

  • I'd wish to have an option to perform automatic status changes. In my case, I do not want to start with "new", but with "assigned". So tickets in state "new" should automatically go into state "assigned". Or is there already a way to do this and I just missed it?

Have a look at TicketCreationStatusPlugin and TicketConditionalCreationStatusPlugin

  • I added a 'testing' state. A tester can close the ticket or reject it. I'd like the transition from testing to rejected to set the owner to the person that put the ticket in 'testing'. The AdvancedTicketWorkflowPlugin is close with set_owner_to_field, but we need something like set_field_to_owner.

See for example ITicketChangeListener. This will allow you to write a plugin that will suit your needs.

  • I'd like to track the time a ticket is in each state, adding up 'disjoints' intervals in the same state.

You could do a query on the ticket table and the ticket changes table and find out transitions between individual states and the time the ticket had been in each of the available states.

See also:

Note: See TracWiki for help on using the wiki.