Open darkmoongreatsword opened 1 week ago
We designed advfilter with the intent on parsing the user's input as a double where possible and a String (lexicographically compared) if not. If it is not parsed as doubles, there can be edge cases where the String is not parsed as a number (even though it's possible) that result in undesired behaviours. Thus, advfilter does compare based on doubles first before Strings, which we believe is of greater value to the user, than to just compare as Strings only. Additionally, if the implementation had been to only parse the input as Strings, the user would see many unnecessary and unmatching/irrelevant values in the advfilter result, and less technical users may even consider this a large functionality flaw as it would slow them down (defeating the purpose of CLI-first) or distract them unnecessarily as they may be unaware of lexicographical comparisons of Strings. Thus, we believe that this implementation is a better match for our target users' profile. However, all that being said, we acknowledge that this behaviour could have been mentioned in the User Guide, and thus mark this as a Documentation bug.
Team chose [type.DocumentationBug
]
Originally [type.FeatureFlaw
]
Reason for disagreement: I would actually characterise this as a Functionality Bug. According to the CS2103T guidelines for bug reporting, if the actual functionality and the user guide differ, it can be considered a functionality bug.
It satisfies the following: User guide states that alphanumerical values like '223302B' are accepted as valid input. However, the actual functionality of the application rejects this valid input.
advfilter
is unable to tell if the input value should be interpreted as a string or a numerical value.When there is a mix of numerical values and alphabetical strings as tag values, suppose due to a company registering their staff with a mix of numbers and alphabetical characters,
advfilter
does not recognise that the user may wish to use a numerical value as a string to compare.Here, as a user, I am expecting that all 3 of the people added should be shown since I am comparing against the string '0'.