I think much of the confusion is historical. Many applications of personal computers were made by people with no formal training in informatics. (see at end) They just started writing code at the top left and down to the end.
It is therefore not surprising that Excel makes the same errors, and so they creep into anything that needs to be compatible.
A well-designed spreadsheet should for each cell distinguish between
the formula (if there is one),
the value,
the type of the value,
the presentation or display of the value (which is always a character string),
the limitations on editing the formula or value.
Formulae should always use the value and its type. Thus my cells have a value that is a number, a type that is a number, but a presentation that does not look like a number. In editing a value, Numbers does revert to showing me a number, i.e. I cannot edit the hyphens.
The SUMIFS should use the value, but they do not. The comparison operator ">" should verify that both sides have the same type. In this case they are of the same type, therefore the implementation of SUMIFS is incorrect. The bug is not present in Numbers 2.x
Further, if a cell refers to one of these number cells with a formula like
= LEFT(A5,3)
that should be reported as an error because the formula tries to get the first three characters of a character string, but A5 contains a number. Something like
=LEFT(DISPLAY(A5),3)
would be acceptable, because it would explicitly refer to the displayed character string. Or, to keep things simple, one might admit implicit use of the display string in certain formulae like LEFT, MID, RIGHT etc. and that should be mentioned in the manual.
But most certainly I should not have to use VALUE inside the SUMIFS.
Robert.
Ignorance that persist:
C-type programmers use "to cast" as "to convert". But the meaning is very different: If I convert an integer to a floating point number, the value is the same but the internal representation changes. If I cast a variable to another type, the internal representation stays the same, a string of bits in memory, but it will be interpreted as of a different type.
Resolution and definition: the difference was first ignored, then it was realised there were actually two different measures, and now they are pixel density (resolution) and resolution (definition).
And so on. Not to speak of syntax.