Skip to content

Fix data course ID normalization#15

Open
tran-christian wants to merge 3 commits into
mainfrom
fix/course-id-normalization
Open

Fix data course ID normalization#15
tran-christian wants to merge 3 commits into
mainfrom
fix/course-id-normalization

Conversation

@tran-christian
Copy link
Copy Markdown
Contributor

Summary

  • Normalize OSCAR course IDs against static/courses.json before falling back to section-specific special-topic IDs.
  • Preserve canonical catalog names for availability data, including MGT-8813 / Financial Modeling, while keeping true section-coded courses like CS-8803-O31.
  • Refresh generated Summer/Fall 2026 data, data/catalog.json, and static/courses.json so all live OMSCS current-courses entries are represented.
  • Keep the catalog workflow update that reuses an active catalog PR instead of creating duplicate timestamped catalog PRs.

Root Cause

The OSCAR parser treated every 8803, 8813, and 8823 section as section-specific. That made Banner rows such as MGT 8813 O01 become MGT-8813-O01, which did not join with the canonical MGT-8813 static catalog entry and could degrade the displayed name to Special Topics.

Validation

  • node --import tsx --test oscar/parser.test.ts
  • Live OMSCS current-courses comparison: page count 75, missing static 0, missing data catalog 0
  • Local website schedule smoke test against this branch: Fall 2026 renders, searching MGT-8813 shows one Financial Modeling row, and no stale MGT-8813-O01 row appears.

@tran-christian tran-christian mentioned this pull request May 19, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant