Open nus-pe-bot opened 3 years ago
Thank you for pointing this out, we discussed this issue among the developers weeks ago, we had our special reason to keep this feature.
Changed the severity from high to low: As stated in the marking scheme, "A flaw that is unlikely to affect normal operations of the product. Appears only in very rare situations and causes a minor inconvenience only." Editing the saved data is not considered a normal operation, and even you edit the JSON file in this manner, it will not cause any bug in our module book except that YOU MAY THINK the task becomes meaningless.
Changed the Bug Type from FunctionalityBug to FeatureFlaw: “If your changes to the data file make its format invalid, ModuleBook3.5 will discard all data and start with an empty data file at the next run.” Change the start time later than the deadline does not make the data file's format invalid. In fact, we do not have the definition of invalid tasks, we only have the invalid format of each field of a task. It is just "you are suggested not to change the start time later than the deadline", it is not because "the start time later than the deadline is an invalid format". So the behavior of our module book is indeed consistent with the user guide, as there is nothing wrong with that special format. I think you may mean: we do restrict a user from editing a start time and deadline in the main program, why we do not have this restriction on editing JSON file, why there is such inconsistency? This clearly belongs to a feature flaw.
Why I reject this bug report: Firstly, there is no bug related to this issue, and most importantly, it even causes no inconvenience to a user. As we stated in UG, "Advanced users are welcome to update data directly by editing that data file." As an advanced user, you should clearly know the meaning of each entry in the JSON file. Given that, if you feel any inconvenience caused by a task with its start time later than its deadline appears in the task list, you should not change it in the first place.
Secondly, We prevent a new user from editing a start time later than the deadline by setting a restriction in our parser, just in case they are not familiar with the notations "a/" and "b/" and misuse them. For an advanced user, we decided to give you full authority to edit a task, you can make use of this feature to achieve your own purpose, as long as it is in the correct format.
Thirdly, a task with a later start time has its own value. You can make use of this feature to achieve your own purpose. Here are some examples:
--
Steps to Reproduce: Edit JSON start date of a task to be earlier than end date.
list
Expected: "If your changes to the data file makes its format invalid, ModuleBook3.5 willdiscard all data and start with an empty data file at the next run." from the UG. But it did not start with an empty data file
Actual: No errors thrown . Used saved data
Screenshots:
[original: nus-cs2103-AY2021S2/pe-interim#994] [original labels: severity.High type.FunctionalityBug]