The filters are processed sequentially. For one URL, it is possible, that multiple filters of the same filter type are processed.... provided that the filter in this chain allow this.
The behavior is controlled by the return value of a filter [1]. When a filter returns "filter_break", no other filter of the same type will be processed. So, if you arrange your filters such that the special case is in the filter chain before the revproxy call, and the filter for the special case returns "filter_break", the revproxy filter should not be called. Check the order of the registered postauth filters on your server with
lmap f [ns_server filters] {if {[lindex $f 2] ne "postauth"} continue; set f}
[1] https://naviserver.sourceforge.io/n/naviserver/files/ns_register.html#3