Filters are a mechanism to stop tracing when returning results. They do not stop traversability to the controller. For example, let's assume you want to write a trace to find the next upstream protective device in an electrical network. You would do this by creating a CategoryComparison object to stop when a feature is found that is assigned the "Protective Device" category. If you entered this in Traversability.Barriers then the trace would be unable to find a subnetwork controller to determine which direction was upstream. The correct way to implement this is by entering this CategoryComparison into Barriers.