Spaces:
Paused
Paused
Commit History
-
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: Add .dockerignore and optimize Dockerfile to reduce image size
chih.yikuan +1: Claude Opus 4.6 (1M context)The Space was stuck in BUILDING due to 194MB node_modules being included in the Docker build context. Added .dockerignore and switched to selective COPY for frontend source files. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>b17eeed
-
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 -
Fix: Change SDK from static to docker and add Dockerfile at root
chih.yikuan4d7cfb5 -
Add /report-demo route to serve HTML report template
chih.yikuana9ffafc -
docs: replace README.md with ClassLens content
chih.yikuanfa8b54d -
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 -
docs: update README.md with ClassLens content instead of ChatKit templates
chih.yikuand439ceb -
docs: update README.md with ClassLens content
chih.yikuan2a21b93 -
fix: configure static SDK to serve report-template.html
chih.yikuanf9d2cc6 -
Update readme
Verified signatureUpdate readmeef4b129 -
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 -
update readme
Verified signatureupdate readmefd85e2c -
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 -
chore: exclude binary files from HF Spaces deployment
chih.yikuan1e7029d -
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