Resolve Resolution failed to set when close ticket
this is a bug when we try to close a ticket the resolve resolution fail to set.
Steps to Reproduce
When we close a ticket by using the resolve action, the ticket status will be set to closed. But the resolution will be set to empty, or fail to set in another word.
- close a ticket by using resolve action.
- select a resolution
- the ticket status is correctly changed to closed
- the ticket resolution is failed to set.
What's the problem
This issue is a result of the miss-understanding about how Trac Workflow Engine works. The trac XMLRPC api could set value for any field of a ticket. But trac workflow engine will make the final call for all fields related to workflow. The following fields are related to trac workflow:
- status
- resolution
The action field will trigger the workflow engine to execute. The resolve action will trigger the resolve operator, which is configured as set resolution.
How Trac Workflow Engine Works
- action is a mandatary field for ticket update.
- action will trigger the workflow engine.
- depends on whatever action, a certain workflow field will be used to udpate the actural ticket field.
- for resolve action, the related workflow field is named as action_resolve_resolve_resolution. Trac Workflow engine will look for value from this field and set it to the ticket's resolutiion field.
So when we customize the workflow, we need keep this in mind.
Tracking History
When | Who | What Done |
---|---|---|
2013-10-16 09:22 | Sean Chen |
commit r688b9db4, need using action_resolve_resolve_resolution to pass the resolution. -- 3.0 Hours, 100.0% Done |