Agree. An agent query is designed to return a single match to any note, preferring the original if present and otherwise a single alias. By comparison a query in
find() returns all matches - i.e. original and aliases (or all aliases in scope of the query).
To avoid the '-1' construct you can test $IsAlias. Not tested:
$Name + " (" + (find($ID(original) == $ID(original(that)) & $IsAlias).count) + ")"
The original is now out of scope as it evaluates as
false for $IsAlias. That said, you get the same result.