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!
Reminder about open issues
- [PATCH] Allow wiki syntax in labels for custom fields
- 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, ...
- Make the state transition dependant on group membership in addition to the boiled down group permissions in workflows
- 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
- Provide per-type resolution lists
- Workflow action with non-ascii letters fails to change owner properly
- Custom Query: Column with last status change
- subversion hook scripts do not respect the trac workflow
- 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 macro could read files from the repository
- Render workflow based on user or group permissions
- Ticket workflow should support negated permissions
User interface guidelines
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_owneroperation, or needs to be clarified.
- Actions should be selectable based on the ticket type (different Workflows for different tickets)
Look into the AdvancedTicketWorkflowPlugin's
- 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.
may_set_owneroperations that overrides, or replaces, the global