Skip to content

server: ingest endpoints (create source, launch ingest, progress) with long-running handling #28

Description

@JArmandoAnaya

Context

Ingest is the first long-running operation the API exposes; the pattern established here
(launch → poll) is the one the UI and MCP reuse.

Deliverables

  • Register source (video upload / image upload — multipart; document size expectations),
    launch ingest with params (fps, target batch), poll progress, get result.
  • Ingest execution in a background task (FastAPI/anyio) with job state persisted via the
    kernel, so polling works across requests.
  • Upload writes stream to the blob path without buffering whole files in memory.

Acceptance criteria

  • e2e API test: upload small generated video → ingest at 5 fps → poll to completed →
    assets listed
  • Failure surfaces the kernel's structured per-file errors

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    apivisionset.server — REST API and OpenAPI contractm3M3 — Surfaces: API + CLI + MCP (0.0.1-alpha.3)

    Type

    No type

    Projects

    No projects

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions