Team Services now allows work item states to be customized and you can change the workflow to your preference. This is explained in the previous post “Custom States for Work Items in Team Services with New Process Customization Experience” in detail. As explained there you can hide available default states and use your custom sates instead of them. But as of now state change from a custom state to Completed category state does not update the Closed Date and Closed By fields in Bug and User Story/PBI work items. For Task work item in custom state , changing to Completed category state, updates Closed Date but not the Closed By field.
Let’s further understand this issue with an example.
User story is introduced with below highlighted custom states and default available states also kept without hiding them (refer “Custom States for Work Items in Team Services with New Process Customization Experience” for more details).
History does not have information on Closed Date or Closed By fields update, which is understandable as they are not updated by this state change. But ideally it should have updated the Closed Date and Closed By with the correct values as happened in Default “In Progress” category state to “Completed” category state transition.
Behavior is same even if all the default states are hidden for the user story. A Bug work item has the same behavior. Task work item is little bit different from this, as it will always update Closed Date field with the correct value, regardless of whether the state change to Completed category state, is done from a default state or from a custom state.
When state is changed back to In Progress or other category state from Completed category state, Closed Date and Closed By fields get cleared, only if the target state is a default available state. If the target state is a custom state, then Closed Date and Closed By fields do not get cleared, for User Story,Bug and Task work items.
This is bit confusing situation and it could be accounted as a bug in Team Services or may be Closed Date and Closed By fields are deprecated, and the State Change Date is there as the alternative. But in Scrum process template PBI (Product Backlog Item) does not have State Change Date field even though Bug work item has it. There is no Closed By field in work items of Scrum template.
How to resolve this?
As of now no way to resolve this issue, but this can be fixed with new feature “Define business rules for work item types” coming into Team Services, hopefully soon.