Commit Graph

14 Commits

Author SHA1 Message Date
6ab2aec57e Update content 2025-12-02 15:55:32 +08:00
5e8d901a18 security: remove .autograde from student repo
- Grading scripts are now fetched from tests repo at runtime
- Students cannot modify grading scripts to cheat
- Workflow fetches scripts from private tests repo
2025-12-02 15:17:54 +08:00
3dc343684d fix: enforce integer scores matching rubric scoring_guide
- Prompt now explicitly requires integer scores (0/1/2/3/4)
- Code rounds any decimal scores to nearest integer
- Prevents LLM from giving 2.5, 3.5 etc.
2025-12-02 14:36:33 +08:00
c25bcfddd0 fix: improve LLM prompt to use actual rubric score ranges
Previous prompt had hardcoded 0-3 score examples which misled LLM.
Now prompt instructs LLM to read max_score from rubric for each criterion.
2025-12-02 14:21:42 +08:00
38b6d5498d fix: calculate total from criteria scores instead of trusting LLM
LLM sometimes returns inconsistent total values. Now we always
compute total = sum(criteria.score) for accuracy.
2025-12-02 14:19:16 +08:00
8237131242 feat: add commit SHA marker at top-right corner of each page 2025-12-02 14:08:08 +08:00
fd73c62d85 feat: add student info and watermark to PDF report
- Auto-fill student name/class from .student_info.json
- Add anti-cheating watermark with student ID and unique hash
- Pass commit SHA for watermark generation
- Read student info from workflow environment
2025-12-02 13:55:37 +08:00
92526feba2 feat: professional PDF report with cover page and proper Chinese fonts
- Cover page with course title, student info fields
- Proper A4 layout with margins for printing
- Chinese fonts support (Noto CJK, WenQuanYi)
- Structured sections: Reports → Grade details
- Professional styling suitable for archival
2025-12-02 13:08:01 +08:00
f54d84136c feat: generate PDF grade report and upload to student repo
- Add generate_pdf_report.py using weasyprint
- Install weasyprint dependencies in workflow
- Generate combined report with grades, REPORT.md, FRONTEND.md
- Upload PDF/Markdown report to student repo's reports/ directory
2025-12-02 12:48:34 +08:00
bf78d9074c feat: preserve LLM grading details (criteria, confidence, reasons)
- aggregate_final_grade.py now keeps criteria and confidence from LLM output
- create_minimal_metadata.py includes these in the uploaded metadata
2025-12-02 12:05:48 +08:00
fa984b79f2 fix: support final grade type and flexible repo name parsing
- Add GRADE_TYPE=final support for final_grade.json
- Fix assignment_id extraction for non-hw format (e.g. final-vibevault)
- Fix student_id extraction for xxx-stu_yyy format
- Change default language from python to java
2025-12-02 10:09:29 +08:00
183959f4a0 fix: handle list response when checking file existence 2025-12-02 10:01:40 +08:00
9de97bddf1 fix: allow --question to be a string instead of file path 2025-12-01 23:46:38 +08:00
d0a4992cd6 Initial commit 2025-12-01 22:12:02 +08:00