Most often, I find myself creating filters reactively. A ticket comes in and I need to filter those kinds of tickets out of the queue.
I've now experienced this more than once where a filter I've configured does not catch the tickets I made it for. So it's trial and error. Make a filter, wait till a ticket comes in that it should catch and hope for the best. If it doesn't catch it, change the filter criteria and then wait AGAIN for another ticket to come in that it SHOULD catch.
This is a painful and archaic way of working.
If filters would match tickets that are already in the queue then we could see in real-time what the filter criteria are matching. That way we can be sure that the filter we are creating is actually working the first time we create it.
You stated, "But Filters don't don't match existing tickets." Is this by design or is it just how the current code works? If this is by design, in what use case would this be preferable over matching ticket contents?