Couple of problems here:
forgetracker.tracker_main.TrackerAdminController.set_custom_fields: right now this method just does a blind replace of the tracker's custom fields. It needs to be refactored to update tickets properly when a milestone field or it's milestone are deleted or updated. It also needs to sanitize milestone names.
SortableRepeatedField jQuery plugin: this plugin doesn't work properly when nested (when a SRF contains another SRF), as is the case in the custom fields admin UI. This results in invalid data being posted to the controller.
These problems were discovered during work on [#2699].
Diff:
forge:tv/2699 (not a typo)
Go to Admin -> Tools -> Tracker -> Field Management
Try adding, removing, and updating custom fields (especially of type 'milestone') and milestones. Try creating a new milestone, creating a ticket in that milestone, and then deleting or renaming the milestone. Check to make sure the ticket gets updated properly. Try to break stuff.
Renaming an actual field (not a milestone) does not update tickets. I found that at the end of my testing so I created a new ticket for it ([#3171]).
Related
Tickets: #3171