Unfortunately ?cat=-1
is a valid request, as is /tag/tagname/?cat=-1234
, which is just as valid as /tag/tagname/?category_name=catname
This is an unfortunate scenario where WordPress's flexibility is incredibly hard to handle.
The challenge with multi-taxonomy queries like this, is which is the canonical? /tag/tagname/?category_name=catname
or /category/catname/?tag=tagname
?
If the QV should just be excluded from the canonicalisation, the further question that's raised is "Does what the canonical is actually set to matter at all? Should it just be set to the homepage for a multi-taxonomy query if one should be ignored?"