Summary
CriteriaConfig still declares an unused test_library field that conflicts with the grading config and is ignored everywhere. Config authors may think it matters, and validation silently accepts it.
Scope
- Delete the
test_library attribute from CriteriaConfig.
- Remove
test_library keys from all sample criteria files (e.g., docs/criteria_example.json, templates, demos).
- Ensure Pydantic config still uses
extra="forbid" so stale configs fail fast.
Impacted Files
- autograder/models/config/criteria.py
- docs/criteria_example.json and any other shipped criteria configs
Risks
- Downstream configs that still include the field will now raise validation errors; communicate via release notes.
Acceptance Criteria
CriteriaConfig loads without test_library.
- Tests covering criteria loading pass with updated fixtures.
References
- docs/roadmaps/TECHNICAL_DEBT_ROADMAP.md (Item 3)
Summary
CriteriaConfigstill declares an unusedtest_libraryfield that conflicts with the grading config and is ignored everywhere. Config authors may think it matters, and validation silently accepts it.Scope
test_libraryattribute fromCriteriaConfig.test_librarykeys from all sample criteria files (e.g., docs/criteria_example.json, templates, demos).extra="forbid"so stale configs fail fast.Impacted Files
Risks
Acceptance Criteria
CriteriaConfigloads withouttest_library.References