Spaces:
Runtime error
Runtime error
Commit History
-
Dashboard for all teachers (own-data scoped) + fix report IDOR (#3)
- ✨ Dashboard for all teachers (own-data scoped) + fix report IDOR (3ee2df64aaab2eaa6f2a5c50eca9cea903083a18)d2075b0 -
Admin: quiz-detail view (raw files + structured Q&A) + student raw answers (#2)
- ✨ Admin: quiz-detail view (raw files + structured Q&A) + student raw answers (d6c5e0578ed3f41b0c22530d24606c33631e9e03)108b5b1
-
Add database management: Supabase persistence, teacher profiles, admin dashboard (#1)
- ✨ Add database management: Supabase persistence, teacher profiles, admin dashboard (9f97e2888339dd0323b003479f8691cbcf0ea052) - 🐳 Bump frontend builder to node:22-slim for Vite 7 (>=20.19/22.12 required) (c7044b0c28cc90bebd5f45e00831a4cf5ca1accb) - 🛡️ Fail loud on misconfigured prod DB; Dockerfile migrate && serve (c43fd58ec8aff83b88ef376511e291a963d246a8)4c4a722
-
simplify the answer parsing tool selection
Yu Chen73c0cf0 -
make csv no required to have equal mark as correct
Yu Chen363b160
-
custom csv upload logic
Yu Chen0641d27 -
custom csv upload logic
Yu Chenea3a98c
-
rm logic for tool selection for qustion parsing
Yu Chen5aa8761 -
rebuild the pdf parsing logic
Yu Chen8d3145b -
fix the answer parsing not aligned logic
Yu Chen1ce0b71 -
Refactor to add answer grid & assoicate llm parsing
Yu Chenad5d4b6
-
Fix: Clarify default prompt — non-dash answers are wrong answers
chih.yikuan +1: Claude Opus 4.6 (1M context)Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>bb875d5 -
Simplify: send raw data to LLM, let user's prompt control interpretation
chih.yikuan +1: Claude Opus 4.6 (1M context)Remove all backend filtering logic (correct markers, teacher answer comparison). Now sends raw student answers + all questions + teacher answers (if any) directly into the prompt template. The user controls how data is interpreted via the prompt editor (e.g. "'-' means correct"). Default prompt includes data format instructions. Preview and generate endpoints both accept the user's prompt_template. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>34b22f3 -
Fix: Treat '-' and similar markers as correct answers in student data
chih.yikuan +1: Claude Opus 4.6 (1M context)Student answer data often uses '-', 'v', '✓' etc. to mark correct answers. filter_student_wrong_answers now skips these markers and only includes actual wrong answer text. Works with or without teacher answers uploaded. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>c99a18b -
Fix: Handle missing teacher answers — include all student answers instead
chih.yikuan +1: Claude Opus 4.6 (1M context)When 標準答案 is not uploaded, filter_student_wrong_answers now returns ALL student answers + ALL questions (instead of empty arrays), with a separate prompt template that asks the LLM to infer correctness. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>3efc9d0 -
Add final prompt preview tab with real student data substitution
chih.yikuan +1: Claude Opus 4.6 (1M context)DataPreviewModal now opens on "最終提示詞" tab first, showing the actual filled prompt for a selected student with {wrong_questions}, {wrong_answers} etc. replaced by real data. Users can switch students via dropdown to see each student's specific prompt. Textareas are resizable. Backend adds /preview-student-prompt endpoint. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>5722fbf -
Add prompt editor and data preview back to Step 2
chih.yikuan +1: Claude Opus 4.6 (1M context)Step 2 now has: student checkboxes → prompt editor (save/load) → "預覽分析資料" button → DataPreviewModal → "生成報告". Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>40aa09c -
Redesign Step 2: per-student report generation with wrong-answer filtering
chih.yikuan +1: Claude Opus 4.6 (1M context)Step 2 now shows a student checklist instead of prompt editor. Users select which students to generate reports for. Backend filters each student's wrong answers and only sends the relevant questions + wrong answers to the LLM, dramatically reducing prompt size. Reports generate sequentially with live progress in Step 3's tabbed viewer. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>f002ae5 -
Add data preview modal before report generation
chih.yikuan +1: Claude Opus 4.6 (1M context)Users can now review and edit parsed JSON data (questions, student answers, teacher answers) in a tabbed modal before generating the report. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>e1ed51d
-
Fix: Add prompt size check and auto-truncate students to prevent empty LLM responses
chih.yikuan +1: Claude Opus 4.6 (1M context)When exam data is too large for the model's context window, the report generator now automatically truncates student data (50% → 25%) instead of failing. Also switches to compact JSON serialization to save ~20-30% tokens, and dynamically adjusts max_completion_tokens based on available space. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>30ff567
-
Fix: Replace passlib with bcrypt directly to fix compatibility bug
chih.yikuan +1: Claude Opus 4.6passlib has a known issue with newer bcrypt versions causing ValueError on startup. Using bcrypt library directly avoids this entirely. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>cd0918a -
Add invite code gate page before login
chih.yikuan +1: Claude Opus 4.6Users must enter "taboola-npo-cz" to access the app. Code is saved in localStorage so it only needs to be entered once per browser. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>459bded -
Redesign ClassLens v2: 3-step exam analysis workflow
chih.yikuan +1: Claude Opus 4.6Replace ChatKit-based chat UI with a structured 3-step workflow: 1. Upload & parse exam files (questions, student answers, teacher answers) via GPT Vision 2. Edit analysis prompts with save/load/share functionality 3. Generate and export HTML reports (PDF/PNG) - Add JWT email/password auth (replace Google OAuth) - Add file processor with multi-format support (PDF, images, text files) - Add image-to-text description for visual exam content - Add model selector (GPT-5.4, 5.3 Instant, 4o, etc.) - Add per-zone file upload with inline parsed data preview - Remove ChatKit SDK, Google Sheets, email service dependencies - Remove .env from tracking (contains API keys) Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>bc45e54
-
Fix: Add explicit CORS headers and improve file serving for report-demo route
chih.yikuan6884131 -
Fix: Add test route and improve report-demo route with better error handling
chih.yikuan9fdcfbc -
Fix: Improve report-demo route with better path resolution and error handling
chih.yikuan8f19122 -
Add /report-demo route to serve HTML report template
chih.yikuana9ffafc -
fix: remove short_description field to pass validation
chih.yikuanbe3728b -
docs: update README.md with ClassLens content
chih.yikuan44cb615 -
fix: remove short_description to avoid length validation error
chih.yikuanf2d052a -
fix: shorten short_description to 18 chars
chih.yikuane308d4b -
fix: shorten short_description to 35 chars
chih.yikuan6a8eea4 -
fix: shorten short_description to meet HF Spaces 60 char limit
chih.yikuan3ff6b02 -
fix: configure static SDK to serve report-template.html
chih.yikuanf9d2cc6 -
fix: simplify README.md config per HF Spaces Docker SDK docs - remove app_file (not needed for Docker)
chih.yikuanbcb3863 -
fix: add app_file to README.md for Docker SDK
chih.yikuanaf4647d -
fix: recreate README.md with proper YAML frontmatter for HF Spaces
chih.yikuan6288c42 -
chore: remove README.md
chih.yikuanee9c668 -
fix: restore emoji and add short_description per HF Spaces docs
chih.yikuan74ad915 -
fix: add license field to README YAML metadata
chih.yikuan3581710 -
fix: ensure sdk_version is quoted string in README YAML
chih.yikuanb69875b -
fix: update README.md YAML frontmatter for HF Spaces
chih.yikuan- Add sdk_version field - Remove short_description (not required) - Ensure proper YAML format1dcf0f5 -
feat: add report-template.html static hosting
chih.yikuan- Add report-template.html to backend/static/ - Add /report-template.html route in main.py - Update Dockerfile to include report template in deployment - Accessible at /report-template.html on both local and HF Spaces55fb498
-
email-done
chih.yikuan5ee5085
-
🔧 Fix OAuth: auto-detect redirect_uri + sync all ClassLens updates
chih.yikuane5c2788 -
🚀 ExamInsight: AI-powered exam analysis for teachers
chih.yikuanFeatures: - Google Forms/Sheets integration - AI grading with GPT-4.1-mini - Beautiful HTML report generation (bilingual EN/中文) - Chart.js visualizations - Real-time tool call logging - Email reports via Gmail SMTP - Docker deployment for HF Spaces054d73a
-
Simplify ChatKit backend (#104)
b0fbfe1 -
Add unmanged sample with a minimal backend (#98)
* Move existing starter app to managed-chatkit * Add chatkit example * Update CI * Small fixes * Remove to_message_content * Simplify * Next -> Vite69f2236