Upload events from an image or file #80
Labels
No labels
bug
chore
data
feature
frontend
good first issue
intermediate
needs/docs
needs/research
needs/upstream
type/bug
type/external
type/feature
type/refactor
urgency
high
urgency
immediate
urgency
low
urgency
medium
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set
Reference
ScottyLabs/cal#80
Loading…
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Goal
Most club events are announced as flyers or PDFs, not calendar feeds. Letting a manager drop in an image or file and confirm the parsed events makes posting fast enough that clubs will do it.
Current state
web/src/app/components/Navbar.tsxopensModalUploadOne.tsx(pick a category you manage), thenModalEventLink.tsx(iCal link) orModalEventForm.tsx(manual form). Files are not supported.api/course_agent/app/services/llm.py(OPENROUTER_API_KEY,OPENROUTER_MODEL).secretspec.tomldoes not declareOPENROUTER_API_KEY; it still listsOPENAI_API_KEY"for the course agent", which the code no longer reads.Scope
OPENROUTER_API_KEY(and model) insecretspec.toml,required = false, so the API can read it from OpenBao.POST /api/events/parse_upload: accepts an image, PDF or .ics (with a size limit), and checkscan_edit_category. Parse .ics with the existing iCal code; send images and PDFs to a vision model with a strict JSON schema (title, start, end, location, description, link). Write nothing to the DB, and do not keep the file.api/app/wsgi.py).Done when