Although we’ve answered your question in the ECOHELP ticket, I’m posting here as well since it’s such a odd answer and I’m sure the community would like to see it.
The cause is that ScriptRunner is installed on the affected sites. ScriptRunner defines an issueLinkType alias for the entityProperty issue.property[scriptrunner.issuelinks].types .
Therefore, when we search issueLinkType=foo , Jira actually searches for issueLinkType(Jira)=foo OR issueLinkType(ScriptRunner)=foo
Therefore, if somehow the ScriptRunner entity property has a different value (other than is blocked by ) equality checks always pass because Jira issueType matches, inequality checks always pass because the ScriptRunner entity property does not match isBlockedBy.