I am practically beside myself at this point. I'm trying to exclude posts with a certain category from feeds (primarily) and the home page (would be nice but less necessary) when a certain GET variable is set. Also tried this with a tag. The tag__not_in and category__not_in functionality appears to be simply NOT WORKING. $query->set('cat', '-[id]') also fails with the exact same symptoms.
What happens is when I use any of the three methods I've tried, many posts disappear even though I only have ONE post that meets the exclusion criteria. I've checked that I'm using the right category id. I've disabled and deleted all other plugins that would touch categories and such, and commented out my other functions, and nothing works.
I have a ticket on trac about this: http://trac.wordpress.org/ticket/7798
As far as I can tell I've found a bug. Does anyone know different or can help me out? I'm on the verge of hacking a method of exclusion into the several related files in my theme, which is NOT the right or ideal way to do this.