Skip to content

app: annotation page — annotator embedded, job asset loading, save via API, next/previous navigation, skip marking, progress #56

Description

@JArmandoAnaya

Context

The integration moment: M4's engine meets M3's API, on the job contract ("next N pending
assets").

Deliverables

  • Page loads a job → fetches next pending assets + blob URLs + schema → feeds the
    annotator by props → persists annotation changes via bulk submit → marks per-asset
    progress (annotated/skipped) → next/previous navigation with prefetch of the next
    asset's image.
  • Save strategy: explicit save + save-on-navigate (decide autosave debounce policy,
    document it); unsaved-changes guard.
  • Job progress header (n of m, states) live-updated.

Acceptance criteria

  • Annotations created in the browser appear via the SDK/API in a test
  • Skip flow marks the asset and advances
  • Accept marks the asset accepted via the existing progress endpoint and the
    counter updates
  • Navigation never loses unsaved work (guard tested)

Design reference (2026-07-30 audit — see the design comment on #51)

The page's composition is fixed by the reference design:

Metadata

Metadata

Assignees

No one assigned

    Labels

    frontendannotator / ui-core / app packagesm5M5 — The app (0.0.1-alpha.5)

    Type

    No type

    Projects

    No projects

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions