Skip to content

Classes: content upload on the class page with automatic class association #88

Description

@shreekardittakavi

Spec: Doc Task Magnitude — "Within the class page we have 'Content Upload'. This content upload allows..." (the doc sentence is unfinished; scope confirmed from surrounding context: course materials uploaded against a class become context for that class).

Current state

classes/[runId]/page.tsx shows a read-only Linked notes card. Notes get a classId only when created elsewhere and associated after the fact. There is no upload affordance on the class page itself.

Scope

  • Upload control on the class detail page accepting the same types as notes/upload (png, jpeg, webp, gif, pdf).
  • Uploaded material is parsed through the existing note-generation pipeline and auto-associated to the class via note.classId — no second extraction path.
  • Multi-file upload with per-file progress and per-file failure, so one bad PDF does not sink the batch.
  • Uploaded content is embedded with class metadata so it joins the class's retrievable context.
  • Distinguish uploaded course material (lecture slides, problem sets, textbook chapters) from student-authored notes in the class view.

Depends on

  • Syllabus/class embedding with metadata, for the context half

Acceptance criteria

  • A user can upload course material from the class page and it appears linked to that class
  • Uploaded material is retrievable as context when generating quizzes or flashcards for that class
  • Per-file progress and failure states (AGENTS.md §1)
  • Uploaded material is visually distinct from authored notes

Metadata

Metadata

Assignees

No one assigned

    Labels

    FrontendNote TakingCurrently, Taskmaster is split into two teams. this is one of themSyllabus UploadCurrently, Taskmaster is split into two teams. this is one of themenhancementNew feature or request

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions