In Fogbugz we have defined three global milestones. Well, actually we have only defined two and then there is the original default milestone called undecided so we end up with three in total. All other milestones are project specific.
Undecided - this is the default for all new cases. When a case is assigned to this milestone, it means that the Change Control Board (CCB) needs to decide what needs to be done. The CCB can basically descide that it's in- or out- of scope and either resolve it directly or prioritize it, assign it to somebody, and put it in either a project specific milestone or in one of the two follwing global ones.
Backlog (in scope) - This means that it's in the project's scope, it's prioritized, and it's and if it has an estimate it's ready to enter into one of the project's own milestones.
Parked (Out of scope) - This milestone is kind of a dump-category. Cases assigned to this milestone are candidates to be resolved as "Won't implement".
CCB members should subscribe to Undecided
Undecided should be emptied regularly by CCB (which in Fogbugz is implemented by using the --Primary contact-- notation of each project). As a member of a projects' CCB you should set up a filter on cases assigned to this milestone and take action as soon as you are notified.
Cases that are in the Backlog must enter a project specific milestone, but it should not be possible for a case to do so unless it has an estimate.
Everybody should subscribe to cases that are in the Backlog, assigned to themselves and which doesn't have an estimate.
The action on these cases are simple to give them a realistic estimate and add the necessary comments and background to the case - and potentially.