nusmodifications / nusmods

🏫 Official course planning platform for National University of Singapore.
https://nusmods.com
MIT License
558 stars 270 forks source link

Course Planner - Does not recognise prerequisite #3733

Closed somebodyelsedidthis closed 1 day ago

somebodyelsedidthis commented 3 weeks ago

Describe the bug

An NUSC course has a prerequisite of any NTW-coded course, but does not reflect the prerequisite being cleared despite an NTW-coded module being taken earlier in the course plan

To Reproduce

Steps to reproduce the behavior:

  1. Select any NTWxxxx course in Y1 in the course planner
  2. Select any NHSxxxx course in Y2 in the course planner
  3. See error

Expected behavior

The NHS course should not be yellow, and should reflect the prerequisite being cleared

Screenshots

image

Desktop (please complete the following information):

Additional context

There are various NTW coded modules, any of which can clear the prerequisite for any of the NHS modules.

frymash commented 3 weeks ago

This bug can also be reproduced for courses under the UTown College Programme (i.e. courses belonging to CAPT, RC4, and Tembusu College).

For these colleges, Junior Seminars (JS; UTC11%/UTC14%/UTC17%) are prereqs for Senior Seminars (SS; UTC21%/UTC24%/UTC27%/UTS21%/UTS24%/UTS27%). However, even if you insert a JS before a SS in the planner, the planner will not recognise that the SS' prereq has already been cleared.

In the pic below, UTC2400 in Y2S1 should be green and shouldn't display a prereq warning since UTC1402 was listed under Y1S1.

Screenshot 2024-06-13 at 2 48 54 PM



The steps to reproduce the bug are almost identical to the steps @somebodyelsedidthis wrote earlier:

  1. Select any JS in Y1 in the course planner
  2. Select any SS in Y2 in the course planner
  3. See error
kokrui commented 2 weeks ago

Thanks for opening this issue! My understanding is that this generally applies to any pre-requisites that are not an actual course, and instead "wildcards" like "any Courses beginning with XYZ" or "AB1234%". We'd be happy to help with and approve PRs that work on this!