Edgewall Software
Modify

Opened 17 years ago

Closed 16 years ago

Last modified 6 months ago

#6076 closed enhancement (wontfix)

Support for states and sub-states in ticket workflow

Reported by: stephan@… Owned by: Jonas Borgström
Priority: normal Milestone:
Component: ticket system Version: devel
Severity: minor Keywords: workflow
Cc: software@… Branch:
Release Notes:
API Changes:
Internal Changes:

Description

In our project, we're using an elaborate ticket workflow with more than a dozen states. Some of them can be considered sub-states of a more general state, e.g.

  • new
  • assigned
  • resolved
    • checked into subversion
    • installed on a test environment
    • confirmed by test team
    • installed on a production environment
    • confirmed by ticket reporter
  • closed

While the workflow needs to go strictly from one stage to the next, it would be nice to regard all the "resolved" sub-states as one in ticket reports and ticket queries.

This request could be supported in one of two ways:

  • Either a status name can be structured, e.g. "resolved/checked_in" and the custom query offers "resolved" as one checkbox for all variants.
  • Or the ticket workflow considers additional requirements that must be fulfilled for a status change to be applicable.
    • The sub-states are stored in another (custom) field, similar to "resolution".
    • The custom field's value is tested to see if an action is applicable.
    • An operation may modify the custom field.

Attachments (0)

Change History (2)

comment:1 by mala, 16 years ago

Cc: software@… added
Priority: lownormal

I agree,

We would like new states like "ready for test" / "tested and released".

However creating custom attributes will be a nice feature.

comment:2 by Eli Carter, 16 years ago

Resolution: wontfix
Status: newclosed

I think this is beyond the scope of what Trac core should cover.

However, you can completely replace the ConfigurableTicketWorkflow with your own ITicketActionController with a plugin. Instead of:

[ticket]
workflow=ConfigurableTicketWorkflow

write a plugin to implement what you want, say NestableTicketWorkflow, and change your configuration to:

[ticket]
workflow=NestableTicketWorkflow

You can even subclass ConfigurableTicketWorkflow to get started.

And of course, post it to http://trac-hacks.org for fame and fortune. ;)

Modify Ticket

Change Properties
Set your email in Preferences
Action
as closed The owner will remain Jonas Borgström.
The resolution will be deleted. Next status will be 'reopened'.
to The owner will be changed from Jonas Borgström to the specified user.

Add Comment


E-mail address and name can be saved in the Preferences .
 
Note: See TracTickets for help on using tickets.